This was generated by AI during triage.
Why
SpecGit 1.10.1 runs a harness-currency gate during specgit issue. Generated assets are compared byte-for-byte with the CLI template, but this repository must retain six proven specializations in .github/workflows/specgit-accept.yml:
- no
workflow_dispatch
- global
specgit@1.10.1 installation
- 45-minute job timeout
- Node.js 22
- dependency-free parsing of
spec_git/policy.yaml
- a 40-minute polling deadline below the job timeout
specgit status --json confirms every generated asset is current except this intentionally specialized workflow, which is reported as asset_stale. Consequently a direct specgit issue exits before creating a delivery unless the workflow is temporarily replaced with template bytes.
The gate is bootstrap-only; specgit finish and the PR acceptance verdict remain functional.
Scope
Implement the smallest reversible repository-local solution:
- Add one bootstrap wrapper that snapshots the specialized workflow, refreshes the generated harness, runs
specgit issue with unchanged arguments, and restores the specialized bytes on success or failure.
- Preserve the wrapped command's exit code and diagnostic.
- Refuse to run when the relevant files contain pre-existing user changes that cannot be restored safely.
- Update the repository instructions so this wrapper is the only documented bootstrap entry point until SpecGit provides an acknowledged-specialization seam.
- File or link the upstream specialization request, but do not patch the globally installed CLI from this repository.
Out of scope: weakening spec_git/policy.yaml, dropping any specialization without independent CI evidence, or folding unrelated SpecGit integration defects into this delivery.
Acceptance
- One scripted command completes a new SpecGit bootstrap without manual file swapping.
- Before/after hashes of
.github/workflows/specgit-accept.yml are identical on both successful and forced-failure paths.
- No unrelated generated asset or user worktree change is modified.
- Existing
specgit finish --json acceptance behavior remains unchanged.
- Instructions document the wrapper and the six retained specializations.
Separate follow-ups
These are separate WHYs and are intentionally excluded from this issue.
Evidence
specgit 1.10.1
specgit status --json: only .github/workflows/specgit-accept.yml is stale
.github/workflows/specgit-accept.yml:3-15, :38-64, :82-95, :222-234, :306-307
AGENTS.md, SpecGit local-specializations section
- Commit
8b52b71aa4
Why
SpecGit 1.10.1 runs a harness-currency gate during
specgit issue. Generated assets are compared byte-for-byte with the CLI template, but this repository must retain six proven specializations in.github/workflows/specgit-accept.yml:workflow_dispatchspecgit@1.10.1installationspec_git/policy.yamlspecgit status --jsonconfirms every generated asset is current except this intentionally specialized workflow, which is reported asasset_stale. Consequently a directspecgit issueexits before creating a delivery unless the workflow is temporarily replaced with template bytes.The gate is bootstrap-only;
specgit finishand the PR acceptance verdict remain functional.Scope
Implement the smallest reversible repository-local solution:
specgit issuewith unchanged arguments, and restores the specialized bytes on success or failure.Out of scope: weakening
spec_git/policy.yaml, dropping any specialization without independent CI evidence, or folding unrelated SpecGit integration defects into this delivery.Acceptance
.github/workflows/specgit-accept.ymlare identical on both successful and forced-failure paths.specgit finish --jsonacceptance behavior remains unchanged.Separate follow-ups
maininstead ofdev.specgit.yamlThese are separate WHYs and are intentionally excluded from this issue.
Evidence
specgit 1.10.1specgit status --json: only.github/workflows/specgit-accept.ymlis stale.github/workflows/specgit-accept.yml:3-15,:38-64,:82-95,:222-234,:306-307AGENTS.md, SpecGit local-specializations section8b52b71aa4