feat(catalog): display spec 026 model rights record and revoked status (#622) - #626
Merged
Merged
Conversation
#622) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
enricopiovesan
enabled auto-merge (squash)
October 1, 2026 22:34
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
Implements registry#622 for spec
026-model-rights-compliance: the catalog now shows each model's full rights record and never presents a revoked version as active. The static generator (generate_catalog_pages.py) and the SPA (catalog/index.html) are kept in sync.ai.modelsentry:commercial_use/redistribution/derivativesbadges and the derived usage class (unrestricted/evaluation-only/conditional, the same projection as the index'smodel_usage).derivation: null.rights_changenote.unknown, never as permission.catalog/model-attribution.jsonstays a fallback for legacy string refs only (entry 124).gather_catalog_data.pyreadsrevoked.json.catalog-buildernow passesrevoked/revocationthrough. It whitelists output fields, so without this change the flag would never have reachedcatalog.json.revokedbadge that takes precedence overdeprecated(header, version history, package sidebar), with the revocation date and a "Do not run: (evidence)" note.Governing Spec
Project Item
Closes #622
Definition of Done
test_generate_catalog_pages.pycovers each status and usage class (8 new tests);test_gather_catalog_data.pycovers revoked entries (1 new test)Validation
python3 -m unittest scripts/ci/tests/test_generate_catalog_pages.py scripts/ci/tests/test_gather_catalog_data.py(cd capability-src/catalog-builder && cargo test): 20 tests, including the new pass-through testexamples/model-rights(one revoked and one active version) plus the realtext.detect-entities@1.1.1(a pre-026 reference):unknownrights and "not stated"bash scripts/ci/pre_pr_check.sh🤖 Generated with Claude Code