Skip to content

fix(coverage-matrix): bump schema_version to 0.1 to match pre-release convention - #71

Merged
brettdavies merged 1 commit into
devfrom
feat/matrix-schema-version-0.1
May 31, 2026
Merged

fix(coverage-matrix): bump schema_version to 0.1 to match pre-release convention#71
brettdavies merged 1 commit into
devfrom
feat/matrix-schema-version-0.1

Conversation

@brettdavies

Copy link
Copy Markdown
Owner

Summary

Bumps the coverage/matrix.json schema_version from "1.0" to "0.1" so the matrix follows the same pre-release
0.x convention as every other version-bearing surface in the project (the anc crate at 0.5.0, the scorecard JSON
schema at 0.7, the vendored spec at 0.5.0). The 1.0 originated in v0.1.1 when the registry plus codegen first
landed; nothing publicly consumed the matrix at that time, so the version was effectively a stability claim the shape
has not earned yet.

Safe for the only consumer: agentnative-site/src/build/coverage.mjs validates that schema_version is present but
does NOT pin a specific value (no SUPPORTED_MATRIX_VERSIONS allowlist, unlike the scorecard's contract). The vendored
copy at agentnative-site/src/data/coverage-matrix.json will re-sync on the site's next coverage-matrix import.

Changelog

Changed

  • coverage/matrix.json schema_version is now "0.1" (was "1.0"). The shape evolves additively until first
    public release locks it; consumers should feature-detect new fields rather than pin to an exact value.

Documentation

  • CLAUDE.md § Coverage Matrix Artifact Lifecycle: updates the documented schema_version value and notes the
    pre-release-shape convention.

Type of Change

  • fix: Bug fix (non-breaking change which fixes an issue)

Related Issues/Stories

  • Story: n/a
  • Issue: n/a
  • Architecture: Aligns with the project's 0.x-while-unreleased version convention used by the CLI crate, scorecard
    JSON schema, vendored spec, and badge URL. Cherry-picked onto release/v0.5.0 after this PR merges.
  • Related PRs: n/a

Testing

  • All tests passing

Test Summary:

  • cargo test: 793 passed, 2 ignored.
  • cargo build --release: clean.
  • anc emit coverage-matrix --check: exit 0 (no drift between regenerated artifact and the new constant).

Files Modified

Modified:

  • src/principles/matrix.rs (constant change, 1 line).
  • coverage/matrix.json (regenerated against the new constant, single-field diff).
  • tests/integration.rs (literal expectation update, 1 line).
  • CLAUDE.md (cross-reference update).

Created:

  • None.

Renamed:

  • None.

Deleted:

  • None.

Breaking Changes

  • No breaking changes

The matrix has no public consumer pinning the prior value; the site validates the field's existence, not its value.

Deployment Notes

  • No special deployment steps required

The site's vendored copy at agentnative-site/src/data/coverage-matrix.json will need a re-sync at its convenience.
That is a site-side concern, not gating for this PR or the v0.5.0 release.

…-release convention

The matrix JSON shape started at `"1.0"` in v0.1.1, the first cut where
the registry → audits → matrix codegen landed. Every other version-bearing
surface in the project (the `anc` crate, the scorecard JSON schema, the
vendored spec) uses the project's pre-release `0.x` convention; the
matrix was the lone `1.0` outlier and read as a stability claim the
shape has not earned yet.

Bumps `src/principles/matrix.rs` `SCHEMA_VERSION` from `"1.0"` to
`"0.1"`, regenerates the committed `coverage/matrix.json` against the
new constant, updates the `CLAUDE.md` cross-reference, and adjusts the
integration test's literal expectation. Drift check (`anc emit
coverage-matrix --check`) passes; 793 tests still green.

Safe for the lone consumer (`agentnative-site/src/build/coverage.mjs`):
the site validates the field exists but does NOT pin a specific value
(no `SUPPORTED_MATRIX_VERSIONS` allowlist like the scorecard has). The
vendored copy at `agentnative-site/src/data/coverage-matrix.json` will
re-sync on the site's next coverage-matrix import.
@brettdavies
brettdavies merged commit 2de7328 into dev May 31, 2026
8 checks passed
@brettdavies
brettdavies deleted the feat/matrix-schema-version-0.1 branch May 31, 2026 07:17
brettdavies added a commit that referenced this pull request May 31, 2026
… convention (#71)

## Summary

Bumps the `coverage/matrix.json` `schema_version` from `"1.0"` to
`"0.1"` so the matrix follows the same pre-release
`0.x` convention as every other version-bearing surface in the project
(the `anc` crate at `0.5.0`, the scorecard JSON
schema at `0.7`, the vendored spec at `0.5.0`). The `1.0` originated in
v0.1.1 when the registry plus codegen first
landed; nothing publicly consumed the matrix at that time, so the
version was effectively a stability claim the shape
has not earned yet.

Safe for the only consumer: `agentnative-site/src/build/coverage.mjs`
validates that `schema_version` is present but
does NOT pin a specific value (no `SUPPORTED_MATRIX_VERSIONS` allowlist,
unlike the scorecard's contract). The vendored
copy at `agentnative-site/src/data/coverage-matrix.json` will re-sync on
the site's next coverage-matrix import.

## Changelog

### Changed

- `coverage/matrix.json` `schema_version` is now `"0.1"` (was `"1.0"`).
The shape evolves additively until first
public release locks it; consumers should feature-detect new fields
rather than pin to an exact value.

### Documentation

- `CLAUDE.md` § Coverage Matrix Artifact Lifecycle: updates the
documented `schema_version` value and notes the
  pre-release-shape convention.

## Type of Change

- [x] `fix`: Bug fix (non-breaking change which fixes an issue)

## Related Issues/Stories

- Story: n/a
- Issue: n/a
- Architecture: Aligns with the project's `0.x`-while-unreleased version
convention used by the CLI crate, scorecard
JSON schema, vendored spec, and badge URL. Cherry-picked onto
`release/v0.5.0` after this PR merges.
- Related PRs: n/a

## Testing

- [x] All tests passing

**Test Summary:**

- `cargo test`: 793 passed, 2 ignored.
- `cargo build --release`: clean.
- `anc emit coverage-matrix --check`: exit 0 (no drift between
regenerated artifact and the new constant).

## Files Modified

**Modified:**

- `src/principles/matrix.rs` (constant change, 1 line).
- `coverage/matrix.json` (regenerated against the new constant,
single-field diff).
- `tests/integration.rs` (literal expectation update, 1 line).
- `CLAUDE.md` (cross-reference update).

**Created:**

- None.

**Renamed:**

- None.

**Deleted:**

- None.

## Breaking Changes

- [x] No breaking changes

The matrix has no public consumer pinning the prior value; the site
validates the field's existence, not its value.

## Deployment Notes

- [x] No special deployment steps required

The site's vendored copy at
`agentnative-site/src/data/coverage-matrix.json` will need a re-sync at
its convenience.
That is a site-side concern, not gating for this PR or the v0.5.0
release.
brettdavies added a commit that referenced this pull request Jun 1, 2026
The original v0.5.0 CHANGELOG section was generated before the
hierarchical noun-verb consistent-naming fix (PR #73) was cherry-picked
onto the release branch. Regenerated to include the new bullet plus a
couple of others (#68, #69, #71 cherry-picks) that landed between the
first generation and now.

Side-effect: the section header date moves 2026-05-31 -> 2026-06-01
since git-cliff uses the regeneration date. The tag will publish today;
the new date matches the actual release date.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant