Repository navigation
Closed
Labels
gh-awGitHub Agentic Workflows integrationGitHub Agentic Workflows integrationsquadSquad triage inbox — Lead will assign to a memberSquad triage inbox — Lead will assign to a membersquad:agentic-workflows-devAssigned to agentic-workflows-dev (Agentic Workflows Engineer)Assigned to agentic-workflows-dev (Agentic Workflows Engineer)
Description
Problem
A clean private consumer install pinned to da7861de22483b83c0321ad534954e637a11dbdf exposes a first-install failure in the Squad Review workflow.
The review agent succeeds, but safe_outputs imports .squad-review-base/.github/workflows/shared/squad-review-guard.mjs from the base branch. On the installation PR, the untouched base branch intentionally does not contain Squad runtime files yet, so Node fails with ERR_MODULE_NOT_FOUND.
Reproduction evidence
- Backend install PR: https://github.com/octodemo/zava-social-backend-template-20260928092124/pull/1
- Backend failed run: https://github.com/octodemo/zava-social-backend-template-20260928092124/actions/runs/36502122445
- Frontend install PR: https://github.com/octodemo/zava-social-frontend-template-20260928092124/pull/1
- Frontend failed run: https://github.com/octodemo/zava-social-frontend-template-20260928092124/actions/runs/36502078635
- Source pin: da7861d
Both fixtures were clean repositories with untouched default branches. Strict compilation and install verification succeeded; failure occurs only in review safe-output binding.
Required behavior
- A first-install PR must not require the review guard to already exist on the base branch.
- Existing base-controlled exact-head review enforcement must remain fail-closed for established installs.
- The fix must preserve logical author/reviewer inequality, verdict/head binding, relay deduplication, and admin-override constraints.
- Canonical workflow, packaged copy, lockfiles, manifest/hashes, tests, and install verifier expectations must remain synchronized.
- Add a regression test that executes or realistically mutates the first-install missing-base-guard condition.
Acceptance evidence
- Targeted and full gh-aw contract tests pass.
- All eight workflows strict-compile in canonical and packaged layouts.
- A new immutable SHA is installed in the clean backend/frontend fixtures.
- The installation PR review no longer fails with
ERR_MODULE_NOT_FOUND. - Fixture runs remain private and cleanup remains run-owned.
Metadata
Metadata
Assignees
Labels
gh-awGitHub Agentic Workflows integrationGitHub Agentic Workflows integrationsquadSquad triage inbox — Lead will assign to a memberSquad triage inbox — Lead will assign to a membersquad:agentic-workflows-devAssigned to agentic-workflows-dev (Agentic Workflows Engineer)Assigned to agentic-workflows-dev (Agentic Workflows Engineer)
Activity
bradygaster commentedon Sep 29, 2026
Cross-fixture confirmation: backend head
edd6fbf0and frontend head9a898b51both completed the review agent and detection with correctSQUAD_REVIEW_HEAD, then failed identically insafe_outputswithERR_MODULE_NOT_FOUNDfor.squad-review-base/.github/workflows/shared/squad-review-guard.mjs. This isolates the defect to unconditional trusted-base guard module loading on a clean first install, not agent output or head propagation.fix(gh-aw): fail closed on missing installed review guard
bradygaster commentedon Sep 29, 2026
Reopened after #2104 merged because hosted acceptance remains: clean backend/frontend installation PRs must rerun at corrected SHA 60f2c45 and prove Squad Review safe_outputs no longer fails with ERR_MODULE_NOT_FOUND.
bradygaster commentedon Sep 29, 2026
Hosted reruns at corrected candidate
60f2c452f6284d442a5932843f3ee64bf86fb928prove the priorERR_MODULE_NOT_FOUNDdefect is fixed: first-installsafe_outputsnow loads the immutable workflow-source guard when the base guard and base manifest are absent.They also expose the next clean-install blocker. The guard requests committed
.squad-review.jsonfrom the installation PR head; because a clean installation PR does not yet contain that file, GitHub returns 404 andcommittedJsonpropagatesHttpError: Not Found.safe_outputsand the requiredSquad Review / reviewcheck therefore fail closed.Immutable evidence:
safe_outputs: https://github.com/octodemo/zava-social-frontend-template-20260928092124/actions/runs/36508592252/job/109216605506safe_outputs: https://github.com/octodemo/zava-social-queue-worker-template-20260928092124/actions/runs/36508563702/job/109216504631Both installation PRs remain unmerged. A new source fix must define a provenance-bound clean-first-install policy for missing
.squad-review.json, preserve fail-closed behavior for established installs, add compiled regressions, merge, and pass fresh hosted reruns before this issue can close.bradygaster commentedon Sep 29, 2026
Third independent reproduction now confirms the same blocker with a correctly scoped 8/17/1 installation PR (no
.vscode/settings.json):safe_outputs: https://github.com/octodemo/zava-social-backend-template-20260928092124/actions/runs/36508961483/job/109217558266The workflow-source guard loads successfully, then deterministically fails on the missing clean-install
.squad-review.json404. All three fixture PRs remain open and unmerged.fix(gh-aw): verify clean-install package bytes
fix(gh-aw): stabilize local install verification
fix(gh-aw): make first install a human trust boundary
fix(gh-aw): harden hosted strict compile fixture
fix(gh-aw): attest review from base context
22 remaining items
fix(gh-aw): pin compiler action resolution for reproducible digests
test(gh-aw): inject unresolved action pins deterministically
fix(gh-aw): verify native package source digest variants (#2111)
fix(gh-aw): make review guard first-install safe
fix(gh-aw): bind first-install review identity
bradygaster commentedon Sep 29, 2026
Reopened: final merged-SHA preflight passes; hosted bootstrap exposes two product blockers
Final source
59bedd0ba58247bff2fbb7b5412be877b40d2e14passes schema-v2 consumer preflight completely: 8 workflows / 17 runtime resources / 1 skill, both supported source provenance forms, all source-selected lock digests, and immutable gh-aw v0.89.21 setup/setup-cli pins.Fresh private hosted evidence used ordinary GitHub Actions only and zero reviewer credentials/secrets/environments:
Two blockers remain:
.gitignorecontainspackages/, which also ignores.github/aw/packages/bradygaster-squad-workflows-*.json. Documentedgit add -- .github/awsilently omitted required ownership metadata, so hosted verification failed closed withPackage ownership metadata is missing.materialize_bootstrap.All temporary default-branch installations were reverted and each original fixture tree restored exactly. Fresh audit PRs remain open/unmerged. Preserved PRs #3/#3/#9 and Dependabot branches were untouched. No Cast PR, research issue, native review verdict, or downstream lifecycle evidence is claimed yet.
bradygaster commentedon Sep 29, 2026
Hosted acceptance remains blocked on two isolated defects found after the merged
59bedd0consumer preflight passed:.github/aw/packages/*.jsonownership metadata can be omitted by broad consumerpackages/ignore rules. Acceptance requires exact manifest-allowlisted force staging plus staged-tree verification, then a fresh backend fixture run.materialize_bootstrap. Acceptance requires deterministic pre-agent assembly/validation, then fresh frontend and queue fixture runs.Both fixes are actively owned on separate branches. Keep this issue open until both merge and the backend/frontend/queue lifecycle evidence succeeds from one final immutable merged SHA. No new credential, App, token, secret, environment, external attestor, or external compute is authorized.
bradygaster commentedon Sep 30, 2026
Final immutable preflight and install-PR evidence (not hosted acceptance)
Source:
93aec83accb44e08c39e4a799f13b55208215a13, including merged #2118. This supersedes the earlierf67bee5apreflight.Proven: trusted source preflight; schema-v2 8 workflows / 17 runtime resources / 1 skill; both workflow-level and package-root provenance strict compile and digest verification; immutable gh-aw v0.89.21 setup/setup-cli pin
924af5fdc64061cfbf66fb584c8b07e2ac230c60; exactly the two documented diagnostic headers and the 8-success/2-warning summary. Both provenance compiles emitted byte-identical diagnostics. All three real consumer installs passed strict install and staged-index verification with exactly 46 required paths and no optional editor/maintenance extras. Backend ownership JSON was included despite its broadpackages/ignore rule. Enlistment tests: 85 passed; native review workflow/control tests: 17 passed.8bb53644ba0729e084a6f3030cb4f5413f350cbd8fcaef5532bbb0a7baa770c04fd6cd1065967aa7b5f611a9db1dbd425544d21bf55c8c240e26b2041213623adc5eaa8669d78bc994a8624f37d5d9521be606cf5095062faff701f0a77a5c417b928deaa96d37615a17a7265d16f9561fe0dc6e09efc538cd21b9fd9f0b597b497de00ac440aa492551caa8; 46-file inventory SHA-25643c2151f781f90a068b4173060952e207bbdc712a86f93f7783144f2195e1a9a.8654bc9f6ccef2249b023a8230f259f8e707f267; 46-file inventory SHA-2562c2c0fb5a8b221519d88735a278ccb79825534aafe318957efaee8b4a91c6424.c2d4a431edc8fe632ec937959c1f9e1ed2f97335; 46-file inventory SHA-25608c1e379f1634cfc53407ddde4f0c99aca17a55d218a16dab7c0f7363f966fec.Checks and runs at capture
Run links below identify exact run ID/attempt. All seven bootstrap jobs (
pre_activation,activation,agent,safe_outputs,detection,Materialize validated Squad bootstrap,conclusion) were skipped, not passed. The separatecopilot-pull-request-reviewerandgithub-advanced-securitychecks were still running; no completed review is claimed.Human boundary and preservation
No fixture PR was merged, no default branch was pushed, and no alternate bootstrap trigger was used. The original default SHA/tree/settings, all pre-existing branches (including Dependabot), preserved evidence PRs, and existing issues were verified unchanged. Preserved PRs: octodemo/zava-social-backend-template-20260928092124#3 and octodemo/zava-social-backend-template-20260928092124#8; octodemo/zava-social-frontend-template-20260928092124#3 and octodemo/zava-social-frontend-template-20260928092124#7; octodemo/zava-social-queue-worker-template-20260928092124#9 and octodemo/zava-social-queue-worker-template-20260928092124#13. Only one fresh installation branch and PR per fixture was added. No PAT, dedicated App, private key, custom token, new secret, reviewer environment, or external service was introduced.
Still unproven until an explicitly authorized human installation merge: hosted bootstrap ownership validation and deterministic materialization, Cast/research safe outputs, automatic native Squad Review
reviewjob and logical verdict, exact run/attempt relay and downstream cleanup, and queue negative/recovery/idempotency scenarios. Copilot PR review is not a substitute for that native Squad Review evidence. These install PRs do not establish end-to-end acceptance, and no acceptance issue is being closed or recommended for closure. Docs PR #2100 remains unchanged.fix(gh-aw): close review authorization gaps
fix: ignore CommonMark tab-indented commands
fix(gh-aw): harden hosted canary contracts (github#2120)
chore(release): promote dev to main (v1.1.0) (#2241)