fix(skill): correct stale manifest version 0.1.0 to 0.2.0#72
Merged
Conversation
Tracks the agentnative-skill repo's already-shipped v0.2.0 release (tag `v0.2.0` at `2b10c84`, no commits ahead of main since). The site's `/skill.json` advertises the published skill bundle's metadata; its `version` field should track the skill repo's released VERSION, not lag behind. Was `0.1.0` since site launch; the skill repo moved to v0.2.0 alongside PR #67's deprecation of the SHA-pin surface but the site manifest was never bumped.
brettdavies
added a commit
that referenced
this pull request
May 3, 2026
## Summary Tracks the `agentnative-skill` repo's already-shipped v0.2.0 release (tag `v0.2.0` at `2b10c84`, no commits ahead of main since). Was `0.1.0` since site launch; the skill repo moved to v0.2.0 alongside PR #67's deprecation of the SHA-pin surface, but the site's manifest was never bumped. The skill bundle's `bin/check-update` reads its own local `VERSION`, not `/skill.json.version`, so this drift didn't break update detection. But `/skill.json` consumers reading the `version` field saw a stale value that didn't track the published skill state. ## Changelog ### Changed - Bump `src/data/skill.json.version` from `0.1.0` to `0.2.0` to match the published skill bundle. ## Type of Change - [x] `chore`: Maintenance tasks (dependencies, config, etc.) ## Related Issues/Stories - Story: Surface alignment between `/skill.json` and the published skill bundle. - Issue: n/a - Architecture: n/a - Related PRs: #67 (the PR that should have bumped this; missed it). ## Testing - [x] All tests passing **Test Summary:** - Pre-push hook: 200/200 unit + regression tests pass - `bun run lint` clean, `bun run build` clean ## Files Modified **Modified:** - `src/data/skill.json`: `version` 0.1.0 to 0.2.0 **Created:** None. **Renamed:** None. **Deleted:** None. ## Key Features n/a (1-line metadata bump). ## Benefits - `/skill.json.version` now tracks the published skill state, removing a silent drift. ## Breaking Changes - [x] No breaking changes. ## Deployment Notes - [x] No special deployment steps required. Will be cherry-picked into `release/2026-05-01-spec-vendoring-and-cleanup` (PR #68) so it ships in the same release as the SHA-pin cleanup arc that motivated the skill v0.2.0 release. ## Checklist - [x] Code follows project conventions and style guidelines - [x] Commit messages follow [Conventional Commits](https://www.conventionalcommits.org/) - [x] Self-review of code completed - [x] Tests added/updated and passing - [x] No new warnings or errors introduced - [x] Changes are backward compatible ## Additional Context The same root cause produced concern (1) on PR #68's review: shape-changing PRs (#67 dropped `source.commit` and `verify`) should bump `version` per RELEASES.md step 2. That step was missed, hence this catch-up commit.
This was referenced May 3, 2026
brettdavies
added a commit
that referenced
this pull request
May 3, 2026
## Summary First production release since the v0.1 launch (#60, 2026-04-30). Promotes **8 PRs** from `dev` to `main`/anc.dev. Two PRs from the post-launch batch (#61, #63) were verified as no-ops for `main` and skipped: both were pure docs reorganizations into `docs/research/` and `docs/design/`, neither of which lives on `main` (or should). The headline is **#64**: this site is now a downstream consumer of `brettdavies/agentnative` (the spec repo) via a vendored snapshot at `src/data/spec/`. Footer, OG card, and per-tool badges now read from three independent spec-version sources by design (vendored, scoring, manual reconciliation), preventing the conflation that would otherwise lie about at least one currency dimension. Trailing the headline, this release also clears the SHA-pin cleanup arc end-to-end: render side (#66), schema side (#69), and a fresh 96-tool rescore against brew-installed `anc v0.3.0` (#70). This is the first scoring pass where every tool's `anc.commit` is `null` by construction (no `.git/` in the brew cellar). ## Changelog ### Added - Vendored `agentnative` spec snapshot at `src/data/spec/` (`VERSION`, `CHANGELOG.md`, all 7 principles, `README.md`). Site is now a true downstream consumer of the canonical spec repo. - `scripts/sync-spec.sh`: manual remote-first vendoring with local-fallback. - `scripts/SYNCS.md`: single-page cross-repo sync map (CLI / spec / skill in, scorecards / Cloudflare out). ### Changed - Footer, per-tool badges, and OG card pull from three distinct spec-version sources (`SITE_SPEC_VERSION`, `scorecard.spec_version`, `anc`'s self-scorecard `spec_version`). Each tracks its own currency dimension. - `anc` is now brew-installed inside the scoring docker image (replaces the local-cargo-build-from-checkout path that produced wrong-SHA scorecards). - All 96 tool scorecards regenerated against brew-installed `anc v0.3.0` (#70). Supersedes the v0.2.0 baseline shipped at v0.1 launch. First scoring pass where every `anc.commit` is `null` by construction. ### Removed - Skill SHA-pin enforcement surface (`source.commit`, `verify` block) from `/skill.json` and the build validator. Update detection now uses the skill bundle's `bin/check-update` against `main` on GitHub. - `anc.commit` field from the scorecard schema documentation and invariant tests (#69). The field is no longer emitted by `agentnative-cli` or surfaced in any rendered scorecard. Pairs with the upstream cleanup in `agentnative-cli`. ### Fixed - Per-tool scorecard pages no longer link to an incorrect commit SHA on the `agentnative-cli` repo. - Per-tool reproduce-fence at `/score/<tool>.md` now tags as `bash` (was untagged). - Correct stale `src/data/skill.json.version` (`0.1.0` to `0.2.0`) to match the published `agentnative-skill` release (#72). The manifest was never bumped alongside #67's deprecation of the SHA-pin surface, so `/skill.json` consumers had been reading a stale value. ### Documentation - Release runbook now uses a triple-diff verification (main → release / release → dev / dev → main) plus a patch-id cherry sweep (#69). Catches both directions of drift: guarded paths leaking IN and real feature commits being missed OUT. - "Status-check context pitfall" subsection added to RELEASES.md (#71). Captures the exact-match rule for `required_status_checks[].context` and the `gh api .../check-runs` diagnostic for confirming real contexts after a first CI run. ## Type of Change - [x] `feat`: New feature (non-breaking change which adds functionality) The release is multi-typed (feat + fix + chore + docs) but `feat` headlines because spec vendoring is the largest user-facing surface. ## Related Issues/Stories - Story: First post-v0.1 release; clears the post-launch backlog of dev-side work plus the deep-check failure on the SHA-pin probe. - Issue: n/a - Architecture: `docs/solutions/best-practices/agentnative-version-model-2026-05-01.md` (cross-repo version model, dev-only) - Related PRs: #62, #64, #65, #66, #67, #69, #70, #71, #72 (all merged to dev between 2026-04-30 and 2026-05-03) ## Testing - [x] Unit tests added/updated - [x] All tests passing **Test Summary:** - 200 / 0 fail unit + regression tests pass on the release branch (pre-push hook verified) - `bun run build` clean: 111 pages, 97 scorecards, 96 badges - Staging at `agentnative-site-staging.brettdavies.workers.dev` already verified post-each-PR-merge: `/skill.json` has no `source.commit`/`verify`; per-tool scorecard pages render the `Anc build` row as version-only (no commit link) - Skill-distribution e2e probe (the test that motivated this release; see deep-check failure 2026-05-02 06:49 UTC) will go green on next deep-check after merge: the assertion that fails on `main` is removed by #67. ## Files Modified **Modified:** - `docs/DESIGN.md`: companion-artifacts section reframed shipped vs research split (#62) - `scripts/og/og.css`, `tests/e2e/flows.e2e.ts`: stale-ref cleanup (#62) - `src/build/util.mjs`: `SPEC_VERSION` + `SITE_SPEC_VERSION` exports (#64) - `src/build/shell.mjs`: footer reads `SITE_SPEC_VERSION` (#64) - `src/build/build.mjs`: badge generation reads scorecard `spec_version` (#64) - `src/build/scorecards-render.mjs`: `renderAncBuildHtml` / `renderAncBuildMarkdown` collapsed to version-only; SHA allowlist regex + repo URL constant removed (#66) - `src/build/skill.mjs`: `COMMIT_RE`, `verify` validation, "pinned at commit" prose, and `## Verify` markdown section all removed (#67) - `src/data/skill.json`: `source.commit` and `verify` object dropped (#67) - `docker/score/Dockerfile`: `brew install brettdavies/tap/agentnative` replaces `COPY docker/score/anc` (#66) - `docker/score/build.sh`, `docker/score/README.md`: drop cargo-build preamble + `ANC_CLI_ROOT` plumbing (#66) - `content/scorecard-schema.md`: `anc.commit` field documented as captured-but-unsurfaced (#66); subsequently removed from schema doc + invariants (#69) - `scripts/og/generate.ts`: reads `anc-v*.json`'s `spec_version` (#64) - `tests/build.test.ts`: three commit-render tests consolidated (#66); SHA-pin tests dropped (#67); `anc.commit` assertions removed (#69); spec-version coverage added (#64) - `tests/e2e/skill.e2e.ts`: pin-freshness checks dropped (#67) - `tests/regression.test.ts`: `source.commit` / `verify.expected` invariants dropped (#67) - `public/og-image.png`: OG asset regenerated (#64) - `RELEASES.md`: skill-release procedure no longer requires a manifest re-pin (#67); triple-diff verification added (#69); status-check context pitfall added (#71) - `scripts/SYNCS.md`: re-pin language scrubbed from the skill flow (#67) - `package.json`: version metadata updates from #64 - `scorecards/*.json`: 96 tool scorecards regenerated against `anc v0.3.0` (#70); 7 of them renamed to track upstream version bumps (act, anc, claude-code, flyctl, ollama, opencode, starship) **Created:** - `src/data/spec/VERSION`: pinned spec semver (#64) - `src/data/spec/CHANGELOG.md`: vendored copy of the spec repo's changelog (#64) - `src/data/spec/README.md`: vendoring workflow doc (#64) - `src/data/spec/principles/p1-...` through `p7-...`: 7 principle files vendored from the spec repo (#64) - `scripts/sync-spec.sh`: vendoring script (#64) - `scripts/SYNCS.md`: cross-repo sync map (#64) **Renamed:** - 7 scorecard files renamed in #70 to track upstream version bumps: `act-v0.2.87.json` → `act-v0.2.88.json`; `anc-v0.2.0.json` → `anc-v0.3.0.json`; `claude-code-v2.1.123.json` → `claude-code-v2.1.126.json`; `flyctl-v0.4.44.json` → `flyctl-v0.4.45.json`; `ollama-v0.22.0.json` → `ollama-v0.22.1.json`; `opencode-v1.14.30.json` → `opencode-v1.14.31.json`; `starship-v1.25.0.json` → `starship-v1.25.1.json`. **Deleted:** - None. ## Key Features - **Three-source spec versioning model.** Footer / per-tool badges / OG card each pull from a different spec-version source by design. Conflating them would lie about at least one currency dimension. Documented in `docs/solutions/best-practices/agentnative-version-model-2026-05-01.md` (dev-only). - **Brew-installed `anc` in the scoring image.** Install parity with every other registry tool, no more operator-state coupling, scorecards from this image will always emit `anc.commit: null` (no `.git/` in the brew cellar) by construction. - **End-to-end SHA-pin cleanup.** Render (#66), schema (#69), and rescore (#70) land together; the deep-check failure on the skill-distribution pin probe goes away by removing the assertion in #67. ## Benefits - **Honest version surfaces.** Each spec-version display tracks its own currency dimension; no more conflation. - **Schema-render coherence.** `/skill.json` shape now matches the documented update model (`bin/check-update` against `main`); per-tool scorecard pages no longer link incorrect SHAs. - **Dead-ceremony reduction.** Skill releases no longer think about a SHA bump that doesn't carry a contract. - **Release-runbook hardening.** Triple-diff and status-check pitfall both came from real-world misses; both are now permanent runbook entries. ## Breaking Changes - [x] No breaking changes for end users. `/skill.json` loses `source.commit` and the `verify` object. Agents that read these advisory fields will see them missing rather than wrong; consumers that don't read them are unaffected. `agentnative-cli`'s `src/skill_install/skill.json` fixture pulls from this repo's source-of-truth, so its `skill-fixture-drift` workflow will surface the shape change on its next PR. Coordinated CLI-side update should land in lockstep. ## Deployment Notes - [x] No special deployment steps required. After deploy: - `https://anc.dev/skill.json` will lose `source.commit` and the `verify` object. - Per-tool scorecard pages on `anc.dev` will no longer render commit links. - `anc.dev/score/anc` will display `anc v0.3.0` (was `v0.2.0`). - Footer / OG card / badges continue to display version labels (now from the vendored spec source). ## Skipped from this release (verified no-op for main) - **#61** `refactor(layout): split docs/design into shipped src/styles + research`. The "shipped" half (`src/styles/foundation.css`, `scripts/og/og.{css,html}`, etc.) was already on `main` via the v0.1 squash; the remaining changes were a rename into `docs/research/design/`, which is excluded from `main`. - **#63** `chore(docs): move docs/VOICE.md to docs/research/VOICE.md`. `docs/VOICE.md` never existed on `main`; the move target (`docs/research/VOICE.md`) is excluded from `main` (now blocked by `guard-main-docs.yml`'s extension to cover `docs/research/` and `docs/ideation/`). ## Checklist - [x] Code follows project conventions and style guidelines - [x] Commit messages follow [Conventional Commits](https://www.conventionalcommits.org/) - [x] Self-review of code completed - [x] Tests added/updated and passing - [x] No new warnings or errors introduced - [x] Changes are backward compatible ## Additional Context `docs/research/` and `docs/design/` are intentionally excluded from `main`. They hold research material that lives on `dev` only. The central reusable workflow at `brettdavies/.github/.github/workflows/guard-main-docs.yml` already enforces this for `docs/research/` and `docs/ideation/` alongside `docs/plans|brainstorms|solutions|reviews/`.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Tracks the
agentnative-skillrepo's already-shipped v0.2.0 release (tagv0.2.0at2b10c84, no commits ahead ofmain since). Was
0.1.0since site launch; the skill repo moved to v0.2.0 alongside PR #67's deprecation of the SHA-pinsurface, but the site's manifest was never bumped.
The skill bundle's
bin/check-updatereads its own localVERSION, not/skill.json.version, so this drift didn'tbreak update detection. But
/skill.jsonconsumers reading theversionfield saw a stale value that didn't track thepublished skill state.
Changelog
Fixed
src/data/skill.json.version(was0.1.0, bumped to0.2.0) to match the published skill bundle.Type of Change
fix: Bug fix (non-breaking change which fixes an issue)Note (added post-merge): Originally typed as
chore. Reclassified asfixbecause/skill.json.versionis apublic-endpoint field that agents observe; a stale value there is a correction, not internal maintenance. The dev-side
squash commit (
e5e9a5b) keeps the originalchore(skill):subject (forever-branch policy rules out history rewrites),but the GitHub PR record and the release-PR (#73) changelog category are corrected.
Related Issues/Stories
/skill.jsonand the published skill bundle.Testing
Test Summary:
bun run lintclean,bun run buildcleanFiles Modified
Modified:
src/data/skill.json:version0.1.0 to 0.2.0Created: None.
Renamed: None.
Deleted: None.
Key Features
n/a (1-line metadata bump).
Benefits
/skill.json.versionnow tracks the published skill state, removing a silent drift.Breaking Changes
Deployment Notes
Will be cherry-picked into
release/2026-05-01-spec-vendoring-and-cleanup(PR #68) so it ships in the same release asthe SHA-pin cleanup arc that motivated the skill v0.2.0 release.
Checklist
Additional Context
The same root cause produced concern (1) on PR #68's review: shape-changing PRs (#67 dropped
source.commitandverify) should bumpversionper RELEASES.md step 2. That step was missed, hence this catch-up commit.