Skip to content

ci: repo-governance - Add application validation workflow #238

Open

Description

@ashleyshaw

Current delivery and branch audit — 24 October 2026

This current snapshot supersedes conflicting earlier branch instructions and implementation-status claims below. Earlier dated notes remain historical evidence, not current acceptance. No status, hierarchy, native PR association or repository change is proposed by this description patch.

  • Outcome: Execute approved application build, lint and test validation without changing managed dependency workflows.
  • Recorded status: In Progress. Accepted whole-child completion is not established.
  • Verified implementation position: Current tests.yml implements Jest head/base comparison and the previously missing scripts/validation/compare-jest-failures.cjs now exists. package.json still has no lint command. Earlier missing-helper wording is historical. PR fix: netlify - Publish static metadata and repair CI checks #344 is merged, not unmerged; its metadata delivery is not application-CI acceptance.
  • Outstanding acceptance: Agree lint command/tooling with root configuration; demonstrate reliable comparison, build execution, discovery, fork-safe permissions and recorded baseline/head results.

Branch instructions

  • Repository: lightspeedwp/ThisOneTimeOnAcidCom
  • Implementing issue(s): this existing child; GitHub sync counterpart ci: repo-governance - Add application validation workflow #238 in the same repository. Linear GitHub-sync mapping retrieved; GitHub issue body/parent not independently re-read in this audit. Do not use a closing/development association until independently verified.
  • Parent epic context: native parent verified; coordination only. No implementation branch/file plan belongs to the epic itself.
  • Allowed closing target(s): none now. Whole-child acceptance and independent GitHub/Linear mapping/association review are required before proposing a closing target; never the parent.
  • Branch state: proposed new branch
  • Branch: ci/governance-application-validation
  • Base: develop, verified at 3f583002482d80ffd1910676bcf7c63e13989b20; refresh before separately authorised implementation
  • Naming policy: target instructions, contributor guide, validator, local branch guide, organisation strategy. Classification rationale: ci is the candidate code/documentation class; authorised prefix is checked independently of the Linear title. Exact proposed name passed node scripts/validate-branch-name.js --branch ci/governance-application-validation in this read-only audit. It is not created or approved for creation.
  • Pull request template: shared pr_ci.md — explicitly read/use its sections; do not add a repository-local copy
  • PR association safeguard: No parent identifier/link in a future branch name, PR title/body, coding prompt, development link or closing directive. Association/status automation settings remain unverified; do not assume “Related to” text or a hyperlink is harmless. Child references in this description are not proposed PR text.
  • Constraints: preserve unrelated work; do not create/switch/rename/delete branches, force-push, merge, deploy, change settings or close records under this draft. Shared locked configuration/templates require human review. Residual protected-file declarations remain relevant despite absent guard workflow; do not equate absent automated enforcement with permission. Workflow ownership conflicts require controller/owner resolution, not local edits to managed dependency workflows.
  • Conflicts or missing evidence: Exact lint ownership/command and workflow management boundary; current helper behaviour not executed.

Expected file changes

Plan status: provisional bounded proposal, not an approved or exhaustive implementation manifest; conditional rows are not permission to act.

Operation Path(s) Intended change Path evidence/revision Approval or dependency
Edit .github/workflows/tests.yml Retain delivered Jest comparison; make only approved application execution changes. Read current workflow; existing; 3f583002482d80ffd1910676bcf7c63e13989b20 Workflow ownership conflict and exact approval required; do not locally edit managed workflows
Create .github/workflows/application-validation.yml Add only still-missing approved build/lint execution if consolidation with tests.yml is rejected. Proposed destination from existing issue; absent in inventory; 3f583002482d80ffd1910676bcf7c63e13989b20 Conditional; choose one execution design, not duplicate jobs; controller/owner approval
Edit docs/TESTING.md Document actual CI execution and baseline/head commands. Existing testing guide, path verified; 3f583002482d80ffd1910676bcf7c63e13989b20 Separate implementation approval
Edit scripts/validation/compare-jest-failures.cjs Only repair a demonstrated remaining comparator defect. Existing helper, path verified; 3f583002482d80ffd1910676bcf7c63e13989b20 Conditional on fixture evidence; scripts/ protected
Edit scripts/validation/compare-jest-failures.test.js Extend negative and missing-report coverage for any comparator repair. Existing Node-test fixtures inspected; 3f583002482d80ffd1910676bcf7c63e13989b20 Conditional; do not assume Jest runs this Node-runner suite
  • Out of scope: Package/tooling redesign, managed dependency workflow edits, new required-check activation, deployment and unrelated PR scope.
  • Remaining discovery: Exact lint ownership/command and workflow management boundary; current helper behaviour not executed.
  • Scope-change gate: stop for revised exact scope and approval before adding materially different paths or operations. No unbounded “other files as needed”. Protected-file approval never overrides a prohibition on routine agent edits.

Evidence and handoff packet

  • Recipient and request: originating issue-management audit; read-only exact existing-record preview for approval, not a new intake or implicit specialist invocation.
  • Selected record: this existing child description, separate from the coordination parent; no writes performed.
  • Implementing targets and criteria: this child’s existing outcome and acceptance criteria remain in force. Execute approved application build, lint and test validation without changing managed dependency workflows. Outstanding gates: Agree lint command/tooling with root configuration; demonstrate reliable comparison, build execution, discovery, fork-safe permissions and recorded baseline/head results.
  • Sources checked: current Linear description/status/native parent/relations/explicit pullRequests and GitHub sync metadata; target instructions, contributor guide, validator, local branch guide, organisation strategy; the exact source paths/revisions above and current repository inventory. Shared template config checked at 47aee0722033f65d4d9d57429b410b518646b817. Some path evidence is inventory-only and is labelled as such; it is not full content/behaviour validation.
  • Branch/PR evidence: Current remote inventory includes historical epic/repo-governance-lightspeedwp/ThisOneTimeOnAcidCom#237 and broad governance/testing branches; scope/base/diff fit was not verified, so none is recommended for reuse. An open application-instrumentation pull request overlaps shared configuration; refresh its head, changed paths and scope before choosing a branch or editing shared files. No reuse is approved. No native linked PR was returned for this child; descriptive/historical references are not native associations.
  • Association and closing rationale: Linear GitHub-sync mapping retrieved; GitHub issue body/parent not independently re-read in this audit. Do not use a closing/development association until independently verified. No complete-child acceptance or closing target established. Linear GitHub documentation lookup identified the integration article but did not expose its detailed association content; current workspace linking/status rules remain unverified. No parent identifier/link in a future branch name, PR title/body, coding prompt, development link or closing directive. Association/status automation settings remain unverified; do not assume “Related to” text or a hyperlink is harmless. Child references in this description are not proposed PR text.
  • Unresolved points and exclusions: Exact lint ownership/command and workflow management boundary; current helper behaviour not executed. Package/tooling redesign, managed dependency workflow edits, new required-check activation, deployment and unrelated PR scope.
  • Approval state: draft only. Exact description-preview approval is still required; repository edits/branch actions/PRs/settings/native associations retain separate boundaries. Existing GitHub issue sync is active, so approved description changes may propagate externally; no duplicate GitHub body write is proposed.

CI Summary

Add .github/workflows/application-validation.yml, tailored to the repository’s React/TypeScript/Vite application. Run the approved application build, lint and test commands without copying the shared repository’s Node/governance assumptions. Preserve both centrally managed dependency workflows.

Linked Stories/Tasks/PRs/Epic

Parent: #237. No existing child or PR relationships proposed.

Milestones & Timeline

No dates or milestones assigned. Complete the listed dependencies before implementation.

Steps / Checklist

  • Task is clearly defined and actionable
  • Automation/scripts referenced if applicable
  • Documentation/changelog updated
  • PR uses correct branch prefix (ci/)
  • PR description updated with relevant details
  • Changelog entry prepared for PR (if applicable)
  • Labels/types match org standards

Acceptance Criteria

  • Solution implemented and documented
  • CI/CD passes and is stable
  • No regressions in build/deploy processes
  • Branch prefix is correct (ci/)
  • Branch deleted/merged
  • Approved package-manager/runtime policy is used
  • Checks discover the intended tests
  • Application build succeeds
  • Permissions and untrusted-PR handling are documented
  • Existing dependency workflows remain unchanged

Additional Context

Target: book repository. Reference: shared workflows.

Dependencies: verify the approved npm-only/Node 24 implementation; complete root lint/test configuration and required test discovery. The package-manager/runtime direction is decided; application validation remains outstanding.

The workflow filename is a proposal, not an existing file. Read target-repository instructions before implementation; template branch wording does not override those instructions.

Definition of Ready (DoR)

  • Build/CI goal and scope defined
  • Checklist prepared
  • Estimate added

Definition of Done (DoD)

  • Issue is fixed and tested
  • All checklist and acceptance criteria completed
  • Documentation/changelog updated if needed
  • Approved by at least one maintainer
  • PR uses correct branch prefix (ci/)
  • Branch deleted after merge
  • Linked issue(s) updated with latest status and closed after merge
  • The related epic should not be closed, instead updated with a comment to reflect the closed issue

The template’s future epic-comment requirement does not authorise posting a comment during creation.

Source-note references and scope

Implementation references: lint.yml and tests.yml.

Use these to adapt application validation only. #256 owns test configuration/discovery; this issue owns CI execution. Preserve the approved known baseline failure rather than reporting a fully passing suite. Do not copy shared scripts, check names or additional checks without verifying target consumers. New required checks retain their separate approval gate.

Current implementation and remaining acceptance — 19 October 2026

Reviewed against develop revision 4ecdb26d9655a48bf000a7c89da2f70383edce87. No tests, interface submissions, settings changes or metadata mutations were performed during this review. Merged changes are partial evidence, not automatic completion.

Delivered: #319 merged Jest head/base CI. The current package has no lint command, and the workflow references a comparison helper absent from this revision.

Unmerged evidence: #344, head ec7477a, contains candidate comparison repairs and successful checks. Its description conflicts with inspected changed-file evidence about retained ancillary changes; resolve that discrepancy before attributing delivery.

Remaining acceptance: verify approved application commands, intended discovery, reliable comparison, build/lint execution and fork-safe permissions. Preserve centrally managed dependency workflows. Record revision, environment, commands and results.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Fields

Priority

Medium

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions