diff --git a/.github/workflows/pr-title-lint.yml b/.github/workflows/pr-title-lint.yml index 191566d27..1f1a223d5 100644 --- a/.github/workflows/pr-title-lint.yml +++ b/.github/workflows/pr-title-lint.yml @@ -20,6 +20,7 @@ on: permissions: contents: read + pull-requests: read concurrency: group: pr-title-lint-${{ github.event.pull_request.number }} @@ -40,12 +41,41 @@ jobs: - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: python-version: "3.12" + - name: Collect PR commit messages + # This repo squashes with squash_merge_commit_message=COMMIT_MESSAGES, + # so these messages -- not the PR body -- become the squash commit body + # release-please reads for BREAKING CHANGE footers (#908). Written to a + # file rather than an argument: the messages are untrusted PR data and + # must never be shell-interpolated. + env: + GH_TOKEN: ${{ github.token }} + PR_NUMBER: ${{ github.event.pull_request.number }} + run: | + gh api --paginate \ + "repos/${GITHUB_REPOSITORY}/pulls/${PR_NUMBER}/commits" \ + --jq '.[].commit.message' > "${RUNNER_TEMP}/pr-commit-messages.txt" + - name: Validate PR title - # The checker reads the title from $GITHUB_EVENT_PATH (set automatically - # by the runner). It is stdlib-only, so no dependency install is needed. + # The checker reads the title and body from $GITHUB_EVENT_PATH (set + # automatically by the runner). It is stdlib-only, so no dependency + # install is needed. Body and commit messages are read only for + # `BREAKING CHANGE:` footers, which release-please copies into + # CHANGELOG.md along with the squashed title (#908); prose elsewhere is + # not inspected. run: | if [ ! -f tools/check_pr_title.py ]; then echo "::notice::tools/check_pr_title.py is not on the base ref yet; skipping (bootstrap for the PR that introduces the guard). Enforcement is active for every subsequent PR." exit 0 fi - python tools/check_pr_title.py + # The checker comes from the base ref, but this workflow file comes + # from the PR head, so on the PR that introduces --commit-messages-file + # the base copy does not accept it yet. Probe before passing it, the + # same bootstrap shape as the missing-file case above. Enforcement of + # commit-message footers is active from the next PR onward. + guard_args=() + if python tools/check_pr_title.py --help 2>/dev/null | grep -q -- '--commit-messages-file'; then + guard_args+=(--commit-messages-file "${RUNNER_TEMP}/pr-commit-messages.txt") + else + echo "::notice::base-ref tools/check_pr_title.py predates --commit-messages-file; title-only enforcement for this PR." + fi + python tools/check_pr_title.py "${guard_args[@]}" diff --git a/contracts/fixtures/concept-authority/concept-families-v1/invalid/native-with-authority.json b/contracts/fixtures/concept-authority/concept-families-v1/invalid/native-with-authority.json index ff03553ec..ffb1a74f7 100644 --- a/contracts/fixtures/concept-authority/concept-families-v1/invalid/native-with-authority.json +++ b/contracts/fixtures/concept-authority/concept-families-v1/invalid/native-with-authority.json @@ -6,7 +6,7 @@ "description": "SDL scenarios, compositions, modules, and authoring constructs.", "provenance": "native", "authority": "RAES", - "authority_reference": "https://raes.dev/concepts", + "authority_reference": "https://raesystem.github.io/rae/concepts", "extension_scope": "SDL-native scenario authoring constructs.", "relation_rules": [ "Must remain the scenario authoring layer." diff --git a/contracts/schema-publication/entries/artifact-requirement-v1.json b/contracts/schema-publication/entries/artifact-requirement-v1.json index 5edd4e8cb..aea8cd3af 100644 --- a/contracts/schema-publication/entries/artifact-requirement-v1.json +++ b/contracts/schema-publication/entries/artifact-requirement-v1.json @@ -2,9 +2,9 @@ "contract_id": "artifact-requirement-v1", "schema_path": "contracts/schemas/artifact-requirements/artifact-requirement-v1.json", "stability": "draft", - "content_hash": "2f287a0b78b61cb5045c9481a6f76e6b7d279caf084110d56f709c8e5fee7e23", + "content_hash": "bb4850500da9d100689a9a4e486f5922234cf3032e16788f9d2e7be755edb8ea", "last_change": { - "summary": "Published portable exact, constrained, and open Source artifact requirements with governed satisfaction routes for issue #920.", - "content_hash": "2f287a0b78b61cb5045c9481a6f76e6b7d279caf084110d56f709c8e5fee7e23" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "bb4850500da9d100689a9a4e486f5922234cf3032e16788f9d2e7be755edb8ea" } } diff --git a/contracts/schema-publication/entries/associated-artifact-manifest-v1.json b/contracts/schema-publication/entries/associated-artifact-manifest-v1.json index a9df6525e..5a2522362 100644 --- a/contracts/schema-publication/entries/associated-artifact-manifest-v1.json +++ b/contracts/schema-publication/entries/associated-artifact-manifest-v1.json @@ -2,9 +2,9 @@ "contract_id": "associated-artifact-manifest-v1", "schema_path": "contracts/schemas/associated-artifacts/associated-artifact-manifest-v1.json", "stability": "draft", - "content_hash": "6b9db0d57e9163a0554bc456b425924121438640e1bc052c722e6cd1f4f300f3", + "content_hash": "a82c0539e307342fad8a494e04571a1e50639615efd349ee8d3f7d96f9e71751", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "6b9db0d57e9163a0554bc456b425924121438640e1bc052c722e6cd1f4f300f3" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "a82c0539e307342fad8a494e04571a1e50639615efd349ee8d3f7d96f9e71751" } } diff --git a/contracts/schema-publication/entries/atlas-tactics-source-v1.json b/contracts/schema-publication/entries/atlas-tactics-source-v1.json index 82de74dfc..3724177dd 100644 --- a/contracts/schema-publication/entries/atlas-tactics-source-v1.json +++ b/contracts/schema-publication/entries/atlas-tactics-source-v1.json @@ -2,9 +2,9 @@ "contract_id": "atlas-tactics-source-v1", "schema_path": "contracts/schemas/concept-authority/atlas-tactics-source-v1.json", "stability": "draft", - "content_hash": "25303bd3579d95cb16dc97d45ccd6de9915fac21345cf7dea7f2b317b70612b9", + "content_hash": "e1aec25898402152581fe442453858dbe0e9398bb6ddb157273c4ce298f9ebee", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "25303bd3579d95cb16dc97d45ccd6de9915fac21345cf7dea7f2b317b70612b9" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "e1aec25898402152581fe442453858dbe0e9398bb6ddb157273c4ce298f9ebee" } } diff --git a/contracts/schema-publication/entries/attack-enterprise-tactics-source-v1.json b/contracts/schema-publication/entries/attack-enterprise-tactics-source-v1.json index b7bb79f4e..583ea6cee 100644 --- a/contracts/schema-publication/entries/attack-enterprise-tactics-source-v1.json +++ b/contracts/schema-publication/entries/attack-enterprise-tactics-source-v1.json @@ -2,9 +2,9 @@ "contract_id": "attack-enterprise-tactics-source-v1", "schema_path": "contracts/schemas/concept-authority/attack-enterprise-tactics-source-v1.json", "stability": "draft", - "content_hash": "20ee7e7ce46c59d46702bfb359dc924f19f0cbdd09ff6dc8b57aa9aaaf8be304", + "content_hash": "7c7dd670f04d92fd1c5f412087ce50c5aed0f4c66abbcf997d926688f46b0cae", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "20ee7e7ce46c59d46702bfb359dc924f19f0cbdd09ff6dc8b57aa9aaaf8be304" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "7c7dd670f04d92fd1c5f412087ce50c5aed0f4c66abbcf997d926688f46b0cae" } } diff --git a/contracts/schema-publication/entries/backend-manifest-v2.json b/contracts/schema-publication/entries/backend-manifest-v2.json index daeaca400..211859d2a 100644 --- a/contracts/schema-publication/entries/backend-manifest-v2.json +++ b/contracts/schema-publication/entries/backend-manifest-v2.json @@ -2,9 +2,9 @@ "contract_id": "backend-manifest-v2", "schema_path": "contracts/schemas/backend-manifest/backend-manifest-v2.json", "stability": "draft", - "content_hash": "8f140797bd697fb49969fcf61a50c6b658f9b7e002d46f3a63cd566109436e83", + "content_hash": "5408003b0a05176661342b87b9f17116b4f1a4fd687153a3813dce33f8dec064", "last_change": { - "summary": "Added portable artifact satisfaction capabilities and participant resource-budget support for issues #920 and #899.", - "content_hash": "8f140797bd697fb49969fcf61a50c6b658f9b7e002d46f3a63cd566109436e83" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "5408003b0a05176661342b87b9f17116b4f1a4fd687153a3813dce33f8dec064" } } diff --git a/contracts/schema-publication/entries/backend-profile-v1.json b/contracts/schema-publication/entries/backend-profile-v1.json index 73008ac5f..535ec921a 100644 --- a/contracts/schema-publication/entries/backend-profile-v1.json +++ b/contracts/schema-publication/entries/backend-profile-v1.json @@ -2,9 +2,9 @@ "contract_id": "backend-profile-v1", "schema_path": "contracts/schemas/profiles/backend-profile-v1.json", "stability": "draft", - "content_hash": "96ee9545d16749f1a3f2c80150950517cbe738ea21d7420befc62cffda73c157", + "content_hash": "3e878fa2f248992bcc9f404408979e2c1d39e4305ca7e39ea93d880354b2c789", "last_change": { - "summary": "Advertised portable artifact requirements and participant resource-budget contracts for issues #920 and #899.", - "content_hash": "96ee9545d16749f1a3f2c80150950517cbe738ea21d7420befc62cffda73c157" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "3e878fa2f248992bcc9f404408979e2c1d39e4305ca7e39ea93d880354b2c789" } } diff --git a/contracts/schema-publication/entries/behavioral-relations-v1.json b/contracts/schema-publication/entries/behavioral-relations-v1.json index 988b0b641..975f7acf6 100644 --- a/contracts/schema-publication/entries/behavioral-relations-v1.json +++ b/contracts/schema-publication/entries/behavioral-relations-v1.json @@ -2,9 +2,9 @@ "contract_id": "behavioral-relations-v1", "schema_path": "contracts/schemas/concept-authority/behavioral-relations-v1.json", "stability": "draft", - "content_hash": "e6486c4411ac0f63724558f0556b3fc2b1dc866045dcadfd5d1a88ecd7e3aa5e", + "content_hash": "c97938fe6cf5b96fb09db413661ad4acb6bc7cb90b4385e9ccd308cfa4dd0755", "last_change": { - "summary": "Added an immutable report locator for the revision-3 I/O-automata lineage used by exact-cut reactive information flow and I/O alternating refinement.", - "content_hash": "e6486c4411ac0f63724558f0556b3fc2b1dc866045dcadfd5d1a88ecd7e3aa5e" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "c97938fe6cf5b96fb09db413661ad4acb6bc7cb90b4385e9ccd308cfa4dd0755" } } diff --git a/contracts/schema-publication/entries/concept-families-v1.json b/contracts/schema-publication/entries/concept-families-v1.json index 776f75902..c42514ee4 100644 --- a/contracts/schema-publication/entries/concept-families-v1.json +++ b/contracts/schema-publication/entries/concept-families-v1.json @@ -2,9 +2,9 @@ "contract_id": "concept-families-v1", "schema_path": "contracts/schemas/concept-authority/concept-families-v1.json", "stability": "draft", - "content_hash": "196b00f05a7100ecda790a05114c6bb47423a5ad4bbc8cf693fd30c9acd6f945", + "content_hash": "1a949b8d328d488ca7b71ef16d5803b7c1f4168b75eab64540988b537ed55fb0", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "196b00f05a7100ecda790a05114c6bb47423a5ad4bbc8cf693fd30c9acd6f945" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "1a949b8d328d488ca7b71ef16d5803b7c1f4168b75eab64540988b537ed55fb0" } } diff --git a/contracts/schema-publication/entries/controlled-vocabularies-v1.json b/contracts/schema-publication/entries/controlled-vocabularies-v1.json index 17cbf12d0..db9c27121 100644 --- a/contracts/schema-publication/entries/controlled-vocabularies-v1.json +++ b/contracts/schema-publication/entries/controlled-vocabularies-v1.json @@ -2,9 +2,9 @@ "contract_id": "controlled-vocabularies-v1", "schema_path": "contracts/schemas/concept-authority/controlled-vocabularies-v1.json", "stability": "draft", - "content_hash": "d0f03584fef13caf5258ad0eb559782235feaeab27021fd2ecd5f2575d7b6a7e", + "content_hash": "5673ba3ec07eecfb0a1aa2715e3bb81cf288d40cff769dd7114a6dc639257a01", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "d0f03584fef13caf5258ad0eb559782235feaeab27021fd2ecd5f2575d7b6a7e" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "5673ba3ec07eecfb0a1aa2715e3bb81cf288d40cff769dd7114a6dc639257a01" } } diff --git a/contracts/schema-publication/entries/evaluation-history-event-stream-v1.json b/contracts/schema-publication/entries/evaluation-history-event-stream-v1.json index d8baea0f9..417e01566 100644 --- a/contracts/schema-publication/entries/evaluation-history-event-stream-v1.json +++ b/contracts/schema-publication/entries/evaluation-history-event-stream-v1.json @@ -2,9 +2,9 @@ "contract_id": "evaluation-history-event-stream-v1", "schema_path": "contracts/schemas/control-plane/evaluation-history-event-stream-v1.json", "stability": "draft", - "content_hash": "b55ce200b8ef69dd0fd5a892611e40c50b497ea424dcbbbd11aa35c7edf10970", + "content_hash": "800ebef43a7d79d1c76e959bb2563cd1fac8845199eea012bc8816522a0bed0c", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "b55ce200b8ef69dd0fd5a892611e40c50b497ea424dcbbbd11aa35c7edf10970" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "800ebef43a7d79d1c76e959bb2563cd1fac8845199eea012bc8816522a0bed0c" } } diff --git a/contracts/schema-publication/entries/evaluation-plan-v1.json b/contracts/schema-publication/entries/evaluation-plan-v1.json index ce74d113a..4bc6b5f87 100644 --- a/contracts/schema-publication/entries/evaluation-plan-v1.json +++ b/contracts/schema-publication/entries/evaluation-plan-v1.json @@ -2,9 +2,9 @@ "contract_id": "evaluation-plan-v1", "schema_path": "contracts/schemas/plans/evaluation-plan-v1.json", "stability": "draft", - "content_hash": "76211999362eed211814484ada9d12ab2c479871ed976ba9a51f1ec299d65410", + "content_hash": "6ab37890bed35b32d852f31f01b986c0d243f83bb986fd46e11ea1616efafcd5", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "76211999362eed211814484ada9d12ab2c479871ed976ba9a51f1ec299d65410" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "6ab37890bed35b32d852f31f01b986c0d243f83bb986fd46e11ea1616efafcd5" } } diff --git a/contracts/schema-publication/entries/evaluation-result-envelope-v1.json b/contracts/schema-publication/entries/evaluation-result-envelope-v1.json index 664b1e185..9689c595b 100644 --- a/contracts/schema-publication/entries/evaluation-result-envelope-v1.json +++ b/contracts/schema-publication/entries/evaluation-result-envelope-v1.json @@ -2,9 +2,9 @@ "contract_id": "evaluation-result-envelope-v1", "schema_path": "contracts/schemas/control-plane/evaluation-result-envelope-v1.json", "stability": "draft", - "content_hash": "8b312c6b6d1e72af53ffde3d0c33634ac86f84ad3fbd6c4fbcf5902bca544877", + "content_hash": "14badba5fe848dd3ce7a625d84c9ec42fec1f435debd74504414c2b799b4dbec", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "8b312c6b6d1e72af53ffde3d0c33634ac86f84ad3fbd6c4fbcf5902bca544877" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "14badba5fe848dd3ce7a625d84c9ec42fec1f435debd74504414c2b799b4dbec" } } diff --git a/contracts/schema-publication/entries/experiment-apparatus-context-v1.json b/contracts/schema-publication/entries/experiment-apparatus-context-v1.json index 73088fcdf..2593c5ff1 100644 --- a/contracts/schema-publication/entries/experiment-apparatus-context-v1.json +++ b/contracts/schema-publication/entries/experiment-apparatus-context-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-apparatus-context-v1", "schema_path": "contracts/schemas/experiment-core/experiment-apparatus-context-v1.json", "stability": "draft", - "content_hash": "8e174c238d93867603c4df93ba9bc2a736e4e9fa36c32088f2aa911557831204", + "content_hash": "9916e5582a8e79e8442abba25f30c4e2ac108e97d56f1da1b63a247d132c46d5", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "8e174c238d93867603c4df93ba9bc2a736e4e9fa36c32088f2aa911557831204" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "9916e5582a8e79e8442abba25f30c4e2ac108e97d56f1da1b63a247d132c46d5" } } diff --git a/contracts/schema-publication/entries/experiment-authoring-input-v1.json b/contracts/schema-publication/entries/experiment-authoring-input-v1.json index 9a663b06a..259edd470 100644 --- a/contracts/schema-publication/entries/experiment-authoring-input-v1.json +++ b/contracts/schema-publication/entries/experiment-authoring-input-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-authoring-input-v1", "schema_path": "contracts/schemas/experiment-core/experiment-authoring-input-v1.json", "stability": "draft", - "content_hash": "2ffe9d8c055458997b3f78159e7b54eb1ea05a3bf52ce3adaa64234220457cce", + "content_hash": "c80602d78f2f2bff4d516107bb323ee95c51c31773c89215fc998cc8fa603232", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "2ffe9d8c055458997b3f78159e7b54eb1ea05a3bf52ce3adaa64234220457cce" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "c80602d78f2f2bff4d516107bb323ee95c51c31773c89215fc998cc8fa603232" } } diff --git a/contracts/schema-publication/entries/experiment-binding-descriptors-v1.json b/contracts/schema-publication/entries/experiment-binding-descriptors-v1.json index 5368ea6a8..24a995a9e 100644 --- a/contracts/schema-publication/entries/experiment-binding-descriptors-v1.json +++ b/contracts/schema-publication/entries/experiment-binding-descriptors-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-binding-descriptors-v1", "schema_path": "contracts/schemas/experiment-core/experiment-binding-descriptors-v1.json", "stability": "draft", - "content_hash": "fe1e2308c9c101f1b115a5b673b369eab68431a5c3befc41cba9cf5169475f97", + "content_hash": "8f737f9be11d01bac0dbe9382e8b1057cc9dfaf60a36053250e8a568cba3ab7a", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "fe1e2308c9c101f1b115a5b673b369eab68431a5c3befc41cba9cf5169475f97" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "8f737f9be11d01bac0dbe9382e8b1057cc9dfaf60a36053250e8a568cba3ab7a" } } diff --git a/contracts/schema-publication/entries/experiment-capture-spec-v1.json b/contracts/schema-publication/entries/experiment-capture-spec-v1.json index 64d6a63f2..c2cd696a5 100644 --- a/contracts/schema-publication/entries/experiment-capture-spec-v1.json +++ b/contracts/schema-publication/entries/experiment-capture-spec-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-capture-spec-v1", "schema_path": "contracts/schemas/experiment-core/experiment-capture-spec-v1.json", "stability": "draft", - "content_hash": "59a5a2fc7c28eb5d27725916def11b11af919e13be7942ded83df30c05be833d", + "content_hash": "812f8314c76208d588b459cfc99637e9fba1c9f7519602c3b8ea6f7a62a4475c", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "59a5a2fc7c28eb5d27725916def11b11af919e13be7942ded83df30c05be833d" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "812f8314c76208d588b459cfc99637e9fba1c9f7519602c3b8ea6f7a62a4475c" } } diff --git a/contracts/schema-publication/entries/experiment-derived-measure-v1.json b/contracts/schema-publication/entries/experiment-derived-measure-v1.json index 6282a604a..79437b07f 100644 --- a/contracts/schema-publication/entries/experiment-derived-measure-v1.json +++ b/contracts/schema-publication/entries/experiment-derived-measure-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-derived-measure-v1", "schema_path": "contracts/schemas/experiment-core/experiment-derived-measure-v1.json", "stability": "draft", - "content_hash": "99668f7dd86d118944dc3c4c90998a042bbbf00fad0d34d0fb9e78c9a95e3e30", + "content_hash": "3ff95c83a82d4cb6c9a9200dcb51331dc7dc553c3914b7800c05ecf3ba9d4fa3", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "99668f7dd86d118944dc3c4c90998a042bbbf00fad0d34d0fb9e78c9a95e3e30" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "3ff95c83a82d4cb6c9a9200dcb51331dc7dc553c3914b7800c05ecf3ba9d4fa3" } } diff --git a/contracts/schema-publication/entries/experiment-evidence-record-v1.json b/contracts/schema-publication/entries/experiment-evidence-record-v1.json index cf1ef0b93..3a509ad0c 100644 --- a/contracts/schema-publication/entries/experiment-evidence-record-v1.json +++ b/contracts/schema-publication/entries/experiment-evidence-record-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-evidence-record-v1", "schema_path": "contracts/schemas/experiment-core/experiment-evidence-record-v1.json", "stability": "draft", - "content_hash": "3a41753ecb4c852af0dbf324794493597641a16e9ec564e642905e459e8da92f", + "content_hash": "a98b73cf0f590db45dabbef72606e53868482ae28d1bb0852a445ed4ecef762b", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "3a41753ecb4c852af0dbf324794493597641a16e9ec564e642905e459e8da92f" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "a98b73cf0f590db45dabbef72606e53868482ae28d1bb0852a445ed4ecef762b" } } diff --git a/contracts/schema-publication/entries/experiment-run-v1.json b/contracts/schema-publication/entries/experiment-run-v1.json index 1a7ddabdf..7a7fc7510 100644 --- a/contracts/schema-publication/entries/experiment-run-v1.json +++ b/contracts/schema-publication/entries/experiment-run-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-run-v1", "schema_path": "contracts/schemas/experiment-core/experiment-run-v1.json", "stability": "draft", - "content_hash": "f6e1c277a1a48e764cbbcf8433d666fa7bbd9bb1d38953f8b55b9c4a1a1d1180", + "content_hash": "c998b0253d760ec9714d8895f20b79c7786e10cfbed35441dabfffb0b988ac83", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "f6e1c277a1a48e764cbbcf8433d666fa7bbd9bb1d38953f8b55b9c4a1a1d1180" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "c998b0253d760ec9714d8895f20b79c7786e10cfbed35441dabfffb0b988ac83" } } diff --git a/contracts/schema-publication/entries/experiment-study-v1.json b/contracts/schema-publication/entries/experiment-study-v1.json index c0c26cdf8..32f01a89e 100644 --- a/contracts/schema-publication/entries/experiment-study-v1.json +++ b/contracts/schema-publication/entries/experiment-study-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-study-v1", "schema_path": "contracts/schemas/experiment-core/experiment-study-v1.json", "stability": "draft", - "content_hash": "e3968289f399d09a974dfb7ac04266d5e37f9ad68abaa73e49c3862c87f69a03", + "content_hash": "1accca3d930ce66005cd4a46400147271c111a287b2dd3760af91e403231f33a", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "e3968289f399d09a974dfb7ac04266d5e37f9ad68abaa73e49c3862c87f69a03" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "1accca3d930ce66005cd4a46400147271c111a287b2dd3760af91e403231f33a" } } diff --git a/contracts/schema-publication/entries/experiment-task-v1.json b/contracts/schema-publication/entries/experiment-task-v1.json index 57d65f4a2..2d9003f54 100644 --- a/contracts/schema-publication/entries/experiment-task-v1.json +++ b/contracts/schema-publication/entries/experiment-task-v1.json @@ -2,9 +2,9 @@ "contract_id": "experiment-task-v1", "schema_path": "contracts/schemas/experiment-core/experiment-task-v1.json", "stability": "draft", - "content_hash": "5f3745dde0403ecfd24c5e37cc8522ac5568c8b01fc235cfc8b1b337b2a5071e", + "content_hash": "328f94b60bb8d6cc607c6b095fbf93cf2fb555c949c9d98ec3b56ab1387c085f", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "5f3745dde0403ecfd24c5e37cc8522ac5568c8b01fc235cfc8b1b337b2a5071e" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "328f94b60bb8d6cc607c6b095fbf93cf2fb555c949c9d98ec3b56ab1387c085f" } } diff --git a/contracts/schema-publication/entries/exploit-path-analysis-evidence-v1.json b/contracts/schema-publication/entries/exploit-path-analysis-evidence-v1.json index e9b0500d6..9eed41065 100644 --- a/contracts/schema-publication/entries/exploit-path-analysis-evidence-v1.json +++ b/contracts/schema-publication/entries/exploit-path-analysis-evidence-v1.json @@ -2,9 +2,9 @@ "contract_id": "exploit-path-analysis-evidence-v1", "schema_path": "contracts/schemas/exploit-path-analysis/exploit-path-analysis-evidence-v1.json", "stability": "draft", - "content_hash": "d51c86c5f939fdc485bb5d1b2057d0069a5c976316e4f71c84eb85fa3ea6f77a", + "content_hash": "0c0c96288ea61dbfb8f05b9e6ab26af0e8cde30ec04869d160193d9618924970", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "d51c86c5f939fdc485bb5d1b2057d0069a5c976316e4f71c84eb85fa3ea6f77a" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "0c0c96288ea61dbfb8f05b9e6ab26af0e8cde30ec04869d160193d9618924970" } } diff --git a/contracts/schema-publication/entries/instantiated-scenario-snapshot-v1.json b/contracts/schema-publication/entries/instantiated-scenario-snapshot-v1.json index 1ec99433e..abf0a263a 100644 --- a/contracts/schema-publication/entries/instantiated-scenario-snapshot-v1.json +++ b/contracts/schema-publication/entries/instantiated-scenario-snapshot-v1.json @@ -2,9 +2,9 @@ "contract_id": "instantiated-scenario-snapshot-v1", "schema_path": "contracts/schemas/sdl/instantiated-scenario-snapshot-v1.json", "stability": "draft", - "content_hash": "871d7c3f4cbb86a50caf28ec04c957e2624f893c9956ab1ee80880a8e41e2608", + "content_hash": "de78a77ae1d67b7349e557d42ca5a8afad6d30f1003af5eb3009c5eb2783bf1d", "last_change": { - "summary": "Published portable artifact requirements and scoped participant resource budgets in immutable scenario snapshots for issues #920 and #899.", - "content_hash": "871d7c3f4cbb86a50caf28ec04c957e2624f893c9956ab1ee80880a8e41e2608" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "de78a77ae1d67b7349e557d42ca5a8afad6d30f1003af5eb3009c5eb2783bf1d" } } diff --git a/contracts/schema-publication/entries/instantiated-scenario-v1.json b/contracts/schema-publication/entries/instantiated-scenario-v1.json index 983a88cc5..ca5be2fd2 100644 --- a/contracts/schema-publication/entries/instantiated-scenario-v1.json +++ b/contracts/schema-publication/entries/instantiated-scenario-v1.json @@ -2,9 +2,9 @@ "contract_id": "instantiated-scenario-v1", "schema_path": "contracts/schemas/sdl/instantiated-scenario-v1.json", "stability": "draft", - "content_hash": "91fc70f7f34b378304d125aed4729a6d20048a2539ff00abc3729af2be7cfbfe", + "content_hash": "e48a8fae49b47e70ad14eb750f865d2211d03fccbf91e824a562cc62772cc3da", "last_change": { - "summary": "Published portable artifact requirements and scoped participant resource budgets in instantiated scenarios for issues #920 and #899.", - "content_hash": "91fc70f7f34b378304d125aed4729a6d20048a2539ff00abc3729af2be7cfbfe" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "e48a8fae49b47e70ad14eb750f865d2211d03fccbf91e824a562cc62772cc3da" } } diff --git a/contracts/schema-publication/entries/nist-csf-defensive-categories-source-v1.json b/contracts/schema-publication/entries/nist-csf-defensive-categories-source-v1.json index 0dd3f4687..5bcac908b 100644 --- a/contracts/schema-publication/entries/nist-csf-defensive-categories-source-v1.json +++ b/contracts/schema-publication/entries/nist-csf-defensive-categories-source-v1.json @@ -2,9 +2,9 @@ "contract_id": "nist-csf-defensive-categories-source-v1", "schema_path": "contracts/schemas/concept-authority/nist-csf-defensive-categories-source-v1.json", "stability": "draft", - "content_hash": "f5aa81e3c9c0cac489bc1ff89eb65a94b751d50f73c58baedb82371faf72c14f", + "content_hash": "93e71d0a86591f26ef8fe899aa5a476d4bdb4e948942ae704b61020ce4b326e7", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "f5aa81e3c9c0cac489bc1ff89eb65a94b751d50f73c58baedb82371faf72c14f" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "93e71d0a86591f26ef8fe899aa5a476d4bdb4e948942ae704b61020ce4b326e7" } } diff --git a/contracts/schema-publication/entries/operation-receipt-v1.json b/contracts/schema-publication/entries/operation-receipt-v1.json index e9581c6c6..39bb6a2f7 100644 --- a/contracts/schema-publication/entries/operation-receipt-v1.json +++ b/contracts/schema-publication/entries/operation-receipt-v1.json @@ -2,9 +2,9 @@ "contract_id": "operation-receipt-v1", "schema_path": "contracts/schemas/control-plane/operation-receipt-v1.json", "stability": "draft", - "content_hash": "195b33906287ca5b04fdf1820c48b79f25e6279311f7c79bfbe4c43f1aa7aeba", + "content_hash": "e1f5d43c0303e20df01920b4b2c00482518f6efe3a12c6a40576ea477c7663bc", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "195b33906287ca5b04fdf1820c48b79f25e6279311f7c79bfbe4c43f1aa7aeba" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "e1f5d43c0303e20df01920b4b2c00482518f6efe3a12c6a40576ea477c7663bc" } } diff --git a/contracts/schema-publication/entries/operation-status-v1.json b/contracts/schema-publication/entries/operation-status-v1.json index 5b4838f50..89348a02d 100644 --- a/contracts/schema-publication/entries/operation-status-v1.json +++ b/contracts/schema-publication/entries/operation-status-v1.json @@ -2,9 +2,9 @@ "contract_id": "operation-status-v1", "schema_path": "contracts/schemas/control-plane/operation-status-v1.json", "stability": "draft", - "content_hash": "407c2b148ea3e9490d5e9d0288f8ae1199d04be3f0ad5a2483d84e7ee0b6510a", + "content_hash": "af7ebde21bd81f5f9c1fffecb77b2a88d609a6215d6bc2e0bedc4c4c722821b3", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "407c2b148ea3e9490d5e9d0288f8ae1199d04be3f0ad5a2483d84e7ee0b6510a" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "af7ebde21bd81f5f9c1fffecb77b2a88d609a6215d6bc2e0bedc4c4c722821b3" } } diff --git a/contracts/schema-publication/entries/orchestration-plan-v1.json b/contracts/schema-publication/entries/orchestration-plan-v1.json index 81281e9e7..ae86db1c1 100644 --- a/contracts/schema-publication/entries/orchestration-plan-v1.json +++ b/contracts/schema-publication/entries/orchestration-plan-v1.json @@ -2,9 +2,9 @@ "contract_id": "orchestration-plan-v1", "schema_path": "contracts/schemas/plans/orchestration-plan-v1.json", "stability": "draft", - "content_hash": "b2fe219bb20fe8c30aa8e7cacced28e44671512a7f809d1ab5a1c980b0ab9fef", + "content_hash": "97116f459eba56d281a5c6ba33c7f632f8b683379bf4e1e3b9ab933f43b7e00a", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "b2fe219bb20fe8c30aa8e7cacced28e44671512a7f809d1ab5a1c980b0ab9fef" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "97116f459eba56d281a5c6ba33c7f632f8b683379bf4e1e3b9ab933f43b7e00a" } } diff --git a/contracts/schema-publication/entries/participant-behavior-history-event-stream-v1.json b/contracts/schema-publication/entries/participant-behavior-history-event-stream-v1.json index 40d4e8c5f..1ec9e9759 100644 --- a/contracts/schema-publication/entries/participant-behavior-history-event-stream-v1.json +++ b/contracts/schema-publication/entries/participant-behavior-history-event-stream-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-behavior-history-event-stream-v1", "schema_path": "contracts/schemas/control-plane/participant-behavior-history-event-stream-v1.json", "stability": "draft", - "content_hash": "46756a33b20550c709ecaacd41bb5621f291be9582c05b313b5076da0a9065f5", + "content_hash": "419b76bd47a8dc23c7d695247f74800bf5ce42d8697f2175a028e1c6cafd18b3", "last_change": { - "summary": "Extended v3 activity history with native resource measurements and policy-scoped budget identity for issue #899.", - "content_hash": "46756a33b20550c709ecaacd41bb5621f291be9582c05b313b5076da0a9065f5" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "419b76bd47a8dc23c7d695247f74800bf5ce42d8697f2175a028e1c6cafd18b3" } } diff --git a/contracts/schema-publication/entries/participant-configuration-result-v1.json b/contracts/schema-publication/entries/participant-configuration-result-v1.json index 1caf5f733..9eb010e71 100644 --- a/contracts/schema-publication/entries/participant-configuration-result-v1.json +++ b/contracts/schema-publication/entries/participant-configuration-result-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-configuration-result-v1", "schema_path": "contracts/schemas/participant-implementation-configuration/participant-configuration-result-v1.json", "stability": "draft", - "content_hash": "4a591f8bf253fc7caa2a30edc05a665f1ffa64c4764d3fb14f440fa559c03743", + "content_hash": "efb77c0b57d4c27518ffcb3af618d048cf829cb66f36a68a65a958b8033a5adb", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "4a591f8bf253fc7caa2a30edc05a665f1ffa64c4764d3fb14f440fa559c03743" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "efb77c0b57d4c27518ffcb3af618d048cf829cb66f36a68a65a958b8033a5adb" } } diff --git a/contracts/schema-publication/entries/participant-context-view-v1.json b/contracts/schema-publication/entries/participant-context-view-v1.json index e156fc656..bce228744 100644 --- a/contracts/schema-publication/entries/participant-context-view-v1.json +++ b/contracts/schema-publication/entries/participant-context-view-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-context-view-v1", "schema_path": "contracts/schemas/control-plane/participant-context-view-v1.json", "stability": "draft", - "content_hash": "9d7bfc3de15e89b20bd27e704feb7683806014cbb3fb0babf4f0193db2602ff4", + "content_hash": "40dea81dac51eff81d69768f06ec89a82d21031e408ea97167f7631269e51c01", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "9d7bfc3de15e89b20bd27e704feb7683806014cbb3fb0babf4f0193db2602ff4" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "40dea81dac51eff81d69768f06ec89a82d21031e408ea97167f7631269e51c01" } } diff --git a/contracts/schema-publication/entries/participant-control-occurrence-v1.json b/contracts/schema-publication/entries/participant-control-occurrence-v1.json index ce75ff2cd..84a772b45 100644 --- a/contracts/schema-publication/entries/participant-control-occurrence-v1.json +++ b/contracts/schema-publication/entries/participant-control-occurrence-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-control-occurrence-v1", "schema_path": "contracts/schemas/participant-runtime/participant-control-occurrence-v1.json", "stability": "draft", - "content_hash": "b9ead3b36df6c998df60f2b328ac3433f547d135fc9526d36b54e8c335a3489f", + "content_hash": "c0330853c6c668fa2ad22afafc968160a0d91776ccab3c4ae6a11ff4cf84d1d0", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "b9ead3b36df6c998df60f2b328ac3433f547d135fc9526d36b54e8c335a3489f" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "c0330853c6c668fa2ad22afafc968160a0d91776ccab3c4ae6a11ff4cf84d1d0" } } diff --git a/contracts/schema-publication/entries/participant-crossing-occurrence-v1.json b/contracts/schema-publication/entries/participant-crossing-occurrence-v1.json index 3fee72863..bc6950052 100644 --- a/contracts/schema-publication/entries/participant-crossing-occurrence-v1.json +++ b/contracts/schema-publication/entries/participant-crossing-occurrence-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-crossing-occurrence-v1", "schema_path": "contracts/schemas/participant-runtime/participant-crossing-occurrence-v1.json", "stability": "draft", - "content_hash": "34f79eaed648530dbf7b2c948a1cb8e33320caea5f1b0586776f8f28d2b38c10", + "content_hash": "61b5963daceb11e2fe21d47d4c174db1bbfbdfafa3cd96fe263c4f0c4a88d7ff", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "34f79eaed648530dbf7b2c948a1cb8e33320caea5f1b0586776f8f28d2b38c10" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "61b5963daceb11e2fe21d47d4c174db1bbfbdfafa3cd96fe263c4f0c4a88d7ff" } } diff --git a/contracts/schema-publication/entries/participant-decision-surface-v1.json b/contracts/schema-publication/entries/participant-decision-surface-v1.json index 9fddb8963..26f23d49e 100644 --- a/contracts/schema-publication/entries/participant-decision-surface-v1.json +++ b/contracts/schema-publication/entries/participant-decision-surface-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-decision-surface-v1", "schema_path": "contracts/schemas/control-plane/participant-decision-surface-v1.json", "stability": "draft", - "content_hash": "de312b4eaa535e16bbfa5d5d59081a6dd86ec41936d8c2c402cbe4ca62ff0748", + "content_hash": "5bb921281db72519b486ecc4dcd90e232c39b8bf664bbe73b0c768c07c968f6d", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "de312b4eaa535e16bbfa5d5d59081a6dd86ec41936d8c2c402cbe4ca62ff0748" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "5bb921281db72519b486ecc4dcd90e232c39b8bf664bbe73b0c768c07c968f6d" } } diff --git a/contracts/schema-publication/entries/participant-decision-surface-v2.json b/contracts/schema-publication/entries/participant-decision-surface-v2.json index c189873a3..525671436 100644 --- a/contracts/schema-publication/entries/participant-decision-surface-v2.json +++ b/contracts/schema-publication/entries/participant-decision-surface-v2.json @@ -2,9 +2,9 @@ "contract_id": "participant-decision-surface-v2", "schema_path": "contracts/schemas/control-plane/participant-decision-surface-v2.json", "stability": "draft", - "content_hash": "ec31e314da8d75c87924e2b4cf76945ef419eaf54d02d25ae7c2c20426c411f6", + "content_hash": "792bd595100d3bedcfae287391af40f6607d8d4792b434f72e28f5e74b89ea2d", "last_change": { - "summary": "Published decision-surface v2 with independent decision epochs and state cuts, participant-view and assurance separation, exact-cut exposure authorization, explicit memory scope and delivery state, and delivery-bound selection.", - "content_hash": "ec31e314da8d75c87924e2b4cf76945ef419eaf54d02d25ae7c2c20426c411f6" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "792bd595100d3bedcfae287391af40f6607d8d4792b434f72e28f5e74b89ea2d" } } diff --git a/contracts/schema-publication/entries/participant-episode-history-event-stream-v1.json b/contracts/schema-publication/entries/participant-episode-history-event-stream-v1.json index 6e5baf654..9c353d32c 100644 --- a/contracts/schema-publication/entries/participant-episode-history-event-stream-v1.json +++ b/contracts/schema-publication/entries/participant-episode-history-event-stream-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-episode-history-event-stream-v1", "schema_path": "contracts/schemas/control-plane/participant-episode-history-event-stream-v1.json", "stability": "draft", - "content_hash": "2ef1c837394083ef263bec41a46113e047f9d8a8ba1a75b09abb5e4e4e95c605", + "content_hash": "debb19e2d7f451e413fe16e23e2ee6f4eb37b04048f7e9409525db37af1bf2d1", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "2ef1c837394083ef263bec41a46113e047f9d8a8ba1a75b09abb5e4e4e95c605" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "debb19e2d7f451e413fe16e23e2ee6f4eb37b04048f7e9409525db37af1bf2d1" } } diff --git a/contracts/schema-publication/entries/participant-episode-state-envelope-v1.json b/contracts/schema-publication/entries/participant-episode-state-envelope-v1.json index 5ea70e5b3..c9219e4e3 100644 --- a/contracts/schema-publication/entries/participant-episode-state-envelope-v1.json +++ b/contracts/schema-publication/entries/participant-episode-state-envelope-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-episode-state-envelope-v1", "schema_path": "contracts/schemas/control-plane/participant-episode-state-envelope-v1.json", "stability": "draft", - "content_hash": "506a10360067ddd75e086c3e1c6cc031201dfb7ba163220d1ef2d7c53c78e3ed", + "content_hash": "63de32ef14bd0309cec32c3794e3a7c98ac926710e05e457e8f11f6612d89813", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "506a10360067ddd75e086c3e1c6cc031201dfb7ba163220d1ef2d7c53c78e3ed" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "63de32ef14bd0309cec32c3794e3a7c98ac926710e05e457e8f11f6612d89813" } } diff --git a/contracts/schema-publication/entries/participant-execution-binding-v1.json b/contracts/schema-publication/entries/participant-execution-binding-v1.json index 38cfb3932..5e0f0aae4 100644 --- a/contracts/schema-publication/entries/participant-execution-binding-v1.json +++ b/contracts/schema-publication/entries/participant-execution-binding-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-execution-binding-v1", "schema_path": "contracts/schemas/participant-runtime/participant-execution-binding-v1.json", "stability": "draft", - "content_hash": "fa935e3d933584be0f569db57f692a9f8dbff6877af5b711a3bdc9a5917bd105", + "content_hash": "94e19bb76d962427c4b1a5d86ee3c1eac2a732b1a4e78435a412331e51322bb6", "last_change": { - "summary": "Published the exact native participant action-to-target execution relation and finite execution bounds for issue #898 under the RAES schema identity.", - "content_hash": "fa935e3d933584be0f569db57f692a9f8dbff6877af5b711a3bdc9a5917bd105" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "94e19bb76d962427c4b1a5d86ee3c1eac2a732b1a4e78435a412331e51322bb6" } } diff --git a/contracts/schema-publication/entries/participant-execution-control-v1.json b/contracts/schema-publication/entries/participant-execution-control-v1.json index e7979f76c..1e852e1d0 100644 --- a/contracts/schema-publication/entries/participant-execution-control-v1.json +++ b/contracts/schema-publication/entries/participant-execution-control-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-execution-control-v1", "schema_path": "contracts/schemas/participant-runtime/participant-execution-control-v1.json", "stability": "draft", - "content_hash": "7aead7ff4a66d15a87fd4504e2fe5cb077f60e0667c274e7734d3b5ccc5357b8", + "content_hash": "bed3cf4d05f53154a3fb0de874a86ef7cc8da4750ed2a61e4d90784ad8e0222a", "last_change": { - "summary": "Published generation-fenced start, pause, resume, bounded drain, reset, and teardown requests for issue #898 under the RAES schema identity.", - "content_hash": "7aead7ff4a66d15a87fd4504e2fe5cb077f60e0667c274e7734d3b5ccc5357b8" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "bed3cf4d05f53154a3fb0de874a86ef7cc8da4750ed2a61e4d90784ad8e0222a" } } diff --git a/contracts/schema-publication/entries/participant-execution-service-state-v1.json b/contracts/schema-publication/entries/participant-execution-service-state-v1.json index 0e235dbe8..54916bd73 100644 --- a/contracts/schema-publication/entries/participant-execution-service-state-v1.json +++ b/contracts/schema-publication/entries/participant-execution-service-state-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-execution-service-state-v1", "schema_path": "contracts/schemas/participant-runtime/participant-execution-service-state-v1.json", "stability": "draft", - "content_hash": "9e1af40ed0e6c7be3766bb4219b23a3f5dd9f78d65d3faa82474f9b86299da46", + "content_hash": "9b3a688001e9ed6473121fa8e8861ca98a245218919233ce4bf75e0b1ef7fd16", "last_change": { - "summary": "Linked participant execution concurrency readback to authoritative resource-budget states for issue #899.", - "content_hash": "9e1af40ed0e6c7be3766bb4219b23a3f5dd9f78d65d3faa82474f9b86299da46" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "9b3a688001e9ed6473121fa8e8861ca98a245218919233ce4bf75e0b1ef7fd16" } } diff --git a/contracts/schema-publication/entries/participant-history-view-v1.json b/contracts/schema-publication/entries/participant-history-view-v1.json index 3959fee02..9b02a221a 100644 --- a/contracts/schema-publication/entries/participant-history-view-v1.json +++ b/contracts/schema-publication/entries/participant-history-view-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-history-view-v1", "schema_path": "contracts/schemas/control-plane/participant-history-view-v1.json", "stability": "draft", - "content_hash": "483731937b2dbee8c5bc081f4348398a280a6ef28044c17395dcf635ba99c7c4", + "content_hash": "2eb0de43e8e48b3f6f3eeb008c8f5d3be8b3cd585f4d28b1d7974c82c66a8bc9", "last_change": { - "summary": "Projected v3 native resource measurements and policy-scoped budget identity through history views for issue #899.", - "content_hash": "483731937b2dbee8c5bc081f4348398a280a6ef28044c17395dcf635ba99c7c4" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "2eb0de43e8e48b3f6f3eeb008c8f5d3be8b3cd585f4d28b1d7974c82c66a8bc9" } } diff --git a/contracts/schema-publication/entries/participant-implementation-manifest-v1.json b/contracts/schema-publication/entries/participant-implementation-manifest-v1.json index ec93082c0..32e5295a7 100644 --- a/contracts/schema-publication/entries/participant-implementation-manifest-v1.json +++ b/contracts/schema-publication/entries/participant-implementation-manifest-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-implementation-manifest-v1", "schema_path": "contracts/schemas/participant-implementation-manifest/participant-implementation-manifest-v1.json", "stability": "draft", - "content_hash": "ea14b7737f13e08900758135825095bf12672b99cf7dd2665b0c6049b0d47a40", + "content_hash": "b4ef963347b98da9a5542f3ebdaa612a5e9396f9d18d15aab6c7528b89b6318c", "last_change": { - "summary": "Allowed participant implementations to declare exact-cut participant-decision-surface-v2 capability.", - "content_hash": "ea14b7737f13e08900758135825095bf12672b99cf7dd2665b0c6049b0d47a40" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "b4ef963347b98da9a5542f3ebdaa612a5e9396f9d18d15aab6c7528b89b6318c" } } diff --git a/contracts/schema-publication/entries/participant-implementation-provenance-v1.json b/contracts/schema-publication/entries/participant-implementation-provenance-v1.json index a4d1007bc..b9ffb38ad 100644 --- a/contracts/schema-publication/entries/participant-implementation-provenance-v1.json +++ b/contracts/schema-publication/entries/participant-implementation-provenance-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-implementation-provenance-v1", "schema_path": "contracts/schemas/participant-implementation-provenance/participant-implementation-provenance-v1.json", "stability": "draft", - "content_hash": "76d081fc933ededd72648dbab37451b3ce638ed346cd6e0bee69a8fb94d445be", + "content_hash": "58a64bb2393f08a721dfd7bd429a277782a32d9131efdc89800823d5f19ba9e4", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "76d081fc933ededd72648dbab37451b3ce638ed346cd6e0bee69a8fb94d445be" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "58a64bb2393f08a721dfd7bd429a277782a32d9131efdc89800823d5f19ba9e4" } } diff --git a/contracts/schema-publication/entries/participant-joint-action-record-v1.json b/contracts/schema-publication/entries/participant-joint-action-record-v1.json index fc4fd0970..5fc077808 100644 --- a/contracts/schema-publication/entries/participant-joint-action-record-v1.json +++ b/contracts/schema-publication/entries/participant-joint-action-record-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-joint-action-record-v1", "schema_path": "contracts/schemas/participant-runtime/participant-joint-action-record-v1.json", "stability": "draft", - "content_hash": "0af0593bc1fde776db0835d0baff6cd0ae232051e74eac1b8a26f7d1a532c88e", + "content_hash": "7745b370e9d037e25c2cc8bfeb23e99a8a37a894754e02742e2e8421fcb5b8b3", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "0af0593bc1fde776db0835d0baff6cd0ae232051e74eac1b8a26f7d1a532c88e" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "7745b370e9d037e25c2cc8bfeb23e99a8a37a894754e02742e2e8421fcb5b8b3" } } diff --git a/contracts/schema-publication/entries/participant-lifecycle-event-v1.json b/contracts/schema-publication/entries/participant-lifecycle-event-v1.json index b998548de..a7ec4fea8 100644 --- a/contracts/schema-publication/entries/participant-lifecycle-event-v1.json +++ b/contracts/schema-publication/entries/participant-lifecycle-event-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-lifecycle-event-v1", "schema_path": "contracts/schemas/participant-runtime/participant-lifecycle-event-v1.json", "stability": "draft", - "content_hash": "3bdfd98d46e24c93a9659550f870c8e7c146255e627e74117ccf7b246dcb2afe", + "content_hash": "65840259111cd740022530b80c28a67be71f65d8d4c5ed298742ce13c3fd2b28", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "3bdfd98d46e24c93a9659550f870c8e7c146255e627e74117ccf7b246dcb2afe" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "65840259111cd740022530b80c28a67be71f65d8d4c5ed298742ce13c3fd2b28" } } diff --git a/contracts/schema-publication/entries/participant-observation-envelope-v1.json b/contracts/schema-publication/entries/participant-observation-envelope-v1.json index 4256b2210..4c11badef 100644 --- a/contracts/schema-publication/entries/participant-observation-envelope-v1.json +++ b/contracts/schema-publication/entries/participant-observation-envelope-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-observation-envelope-v1", "schema_path": "contracts/schemas/participant-runtime/participant-observation-envelope-v1.json", "stability": "draft", - "content_hash": "c5ad70819e897df97b60db1960e5eac3ac3e1435641e7013b5fd9ae259710823", + "content_hash": "735f292ec936892c59e164d477aae3be1117f3e09805dddc73feb6a021699f7f", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "c5ad70819e897df97b60db1960e5eac3ac3e1435641e7013b5fd9ae259710823" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "735f292ec936892c59e164d477aae3be1117f3e09805dddc73feb6a021699f7f" } } diff --git a/contracts/schema-publication/entries/participant-outcome-report-v1.json b/contracts/schema-publication/entries/participant-outcome-report-v1.json index f14249077..a62612fa2 100644 --- a/contracts/schema-publication/entries/participant-outcome-report-v1.json +++ b/contracts/schema-publication/entries/participant-outcome-report-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-outcome-report-v1", "schema_path": "contracts/schemas/participant-runtime/participant-outcome-report-v1.json", "stability": "draft", - "content_hash": "782a8d5117940d55d50802e4cd26b34d1740a1b2d1a0503b6240c16b6bc66da9", + "content_hash": "ae05f3898138241264f0a3deca8fabdd5d4336caf486fe58ad6efe0d6203dc93", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "782a8d5117940d55d50802e4cd26b34d1740a1b2d1a0503b6240c16b6bc66da9" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "ae05f3898138241264f0a3deca8fabdd5d4336caf486fe58ad6efe0d6203dc93" } } diff --git a/contracts/schema-publication/entries/participant-resource-budget-event-v1.json b/contracts/schema-publication/entries/participant-resource-budget-event-v1.json index ae0652722..f30992594 100644 --- a/contracts/schema-publication/entries/participant-resource-budget-event-v1.json +++ b/contracts/schema-publication/entries/participant-resource-budget-event-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-resource-budget-event-v1", "schema_path": "contracts/schemas/participant-runtime/participant-resource-budget-event-v1.json", "stability": "draft", - "content_hash": "b71b0880a3751dac2a51fa34621fdd1b8a1ff6e37ddd6c7a6c52b5ff3938d56b", + "content_hash": "c4e20416e89dd165993176df9e4c7615604335ccb6bab817607e0cb8c6e395ae", "last_change": { - "summary": "Published policy-scoped, transition-consistent resource evidence events with measured-use commits for issue #899.", - "content_hash": "b71b0880a3751dac2a51fa34621fdd1b8a1ff6e37ddd6c7a6c52b5ff3938d56b" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "c4e20416e89dd165993176df9e4c7615604335ccb6bab817607e0cb8c6e395ae" } } diff --git a/contracts/schema-publication/entries/participant-resource-budget-policy-v1.json b/contracts/schema-publication/entries/participant-resource-budget-policy-v1.json index ecec22e26..1116bb4e0 100644 --- a/contracts/schema-publication/entries/participant-resource-budget-policy-v1.json +++ b/contracts/schema-publication/entries/participant-resource-budget-policy-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-resource-budget-policy-v1", "schema_path": "contracts/schemas/participant-runtime/participant-resource-budget-policy-v1.json", "stability": "draft", - "content_hash": "40280cca88f0aa01c60861cea70aa5f6fff9ded2fd85473c45e339194317fe1d", + "content_hash": "0d3aa2919271d566df9b8d0bb9882cc56f78b4de298c38485c7775fbb34cd574", "last_change": { - "summary": "Published canonical participant resource-budget owners, typed demands, meters, reset policy, and fairness obligations for issue #899.", - "content_hash": "40280cca88f0aa01c60861cea70aa5f6fff9ded2fd85473c45e339194317fe1d" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "0d3aa2919271d566df9b8d0bb9882cc56f78b4de298c38485c7775fbb34cd574" } } diff --git a/contracts/schema-publication/entries/participant-resource-budget-state-v1.json b/contracts/schema-publication/entries/participant-resource-budget-state-v1.json index 0459cd56d..60fde9616 100644 --- a/contracts/schema-publication/entries/participant-resource-budget-state-v1.json +++ b/contracts/schema-publication/entries/participant-resource-budget-state-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-resource-budget-state-v1", "schema_path": "contracts/schemas/participant-runtime/participant-resource-budget-state-v1.json", "stability": "draft", - "content_hash": "6fddd2ea39a2df27846c35e8c88e9985d64e12b78151f4fc23978d0820d49d8d", + "content_hash": "a37fc7a7613582db22a7b3ae0c225e6643d6deab40fc22b97f389eeb28d23053", "last_change": { - "summary": "Published canonical policy-scoped budget state for generation-fenced reservations, measured use, and reconciliation for issue #899.", - "content_hash": "6fddd2ea39a2df27846c35e8c88e9985d64e12b78151f4fc23978d0820d49d8d" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "a37fc7a7613582db22a7b3ae0c225e6643d6deab40fc22b97f389eeb28d23053" } } diff --git a/contracts/schema-publication/entries/participant-resource-pool-capacity-v1.json b/contracts/schema-publication/entries/participant-resource-pool-capacity-v1.json index e44381acf..de92269cb 100644 --- a/contracts/schema-publication/entries/participant-resource-pool-capacity-v1.json +++ b/contracts/schema-publication/entries/participant-resource-pool-capacity-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-resource-pool-capacity-v1", "schema_path": "contracts/schemas/participant-runtime/participant-resource-pool-capacity-v1.json", "stability": "draft", - "content_hash": "754e61686f6eab224e3ce605ff403e67797182b6e613deccdbbeaa0ca9d60022", + "content_hash": "7509b853a84876116e1261d134e83c0747321f9bc598b4dc9168790780f57e3f", "last_change": { - "summary": "Published configuration-bound logical pool capacity, owner, meter, fairness, isolation, digest, and evidence claims for issue #899.", - "content_hash": "754e61686f6eab224e3ce605ff403e67797182b6e613deccdbbeaa0ca9d60022" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "7509b853a84876116e1261d134e83c0747321f9bc598b4dc9168790780f57e3f" } } diff --git a/contracts/schema-publication/entries/participant-shared-state-record-v1.json b/contracts/schema-publication/entries/participant-shared-state-record-v1.json index 858df1888..45d10b0e0 100644 --- a/contracts/schema-publication/entries/participant-shared-state-record-v1.json +++ b/contracts/schema-publication/entries/participant-shared-state-record-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-shared-state-record-v1", "schema_path": "contracts/schemas/participant-runtime/participant-shared-state-record-v1.json", "stability": "draft", - "content_hash": "525cb514917251807cb5c1cdf52dca0118663416e59f36da35045e8cfed8d31b", + "content_hash": "d66c4fd7c34abc68fdd48af3cfea9b7f576c0a62cd5275c0f7305be4100b8b53", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "525cb514917251807cb5c1cdf52dca0118663416e59f36da35045e8cfed8d31b" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "d66c4fd7c34abc68fdd48af3cfea9b7f576c0a62cd5275c0f7305be4100b8b53" } } diff --git a/contracts/schema-publication/entries/participant-status-view-v1.json b/contracts/schema-publication/entries/participant-status-view-v1.json index 49a0644df..715dd8222 100644 --- a/contracts/schema-publication/entries/participant-status-view-v1.json +++ b/contracts/schema-publication/entries/participant-status-view-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-status-view-v1", "schema_path": "contracts/schemas/control-plane/participant-status-view-v1.json", "stability": "draft", - "content_hash": "704e0997fa71fd8bc199f70034f769d301ccfd4d23a577dc676ae77fbae7758a", + "content_hash": "1550d4f8c8d438b5a9efa4e41c09663d1f586698084312b89a63500f4185b7a1", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "704e0997fa71fd8bc199f70034f769d301ccfd4d23a577dc676ae77fbae7758a" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "1550d4f8c8d438b5a9efa4e41c09663d1f586698084312b89a63500f4185b7a1" } } diff --git a/contracts/schema-publication/entries/participant-time-management-context-v1.json b/contracts/schema-publication/entries/participant-time-management-context-v1.json index 1ad013e64..9b9315adc 100644 --- a/contracts/schema-publication/entries/participant-time-management-context-v1.json +++ b/contracts/schema-publication/entries/participant-time-management-context-v1.json @@ -2,9 +2,9 @@ "contract_id": "participant-time-management-context-v1", "schema_path": "contracts/schemas/participant-runtime/participant-time-management-context-v1.json", "stability": "draft", - "content_hash": "f73a94028c86c301ea487b08ddf985b0badb03a91309e3028dfed05226614c3c", + "content_hash": "39389146e500fcbdde8518c4256e4825eb4592c3cb7cd59a006feb5304ad3d69", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "f73a94028c86c301ea487b08ddf985b0badb03a91309e3028dfed05226614c3c" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "39389146e500fcbdde8518c4256e4825eb4592c3cb7cd59a006feb5304ad3d69" } } diff --git a/contracts/schema-publication/entries/processor-manifest-v2.json b/contracts/schema-publication/entries/processor-manifest-v2.json index 6c781b15b..812942b94 100644 --- a/contracts/schema-publication/entries/processor-manifest-v2.json +++ b/contracts/schema-publication/entries/processor-manifest-v2.json @@ -2,9 +2,9 @@ "contract_id": "processor-manifest-v2", "schema_path": "contracts/schemas/processor-manifest/processor-manifest-v2.json", "stability": "draft", - "content_hash": "17335ec9416d0ec5d0e3d7bee409c6d1caabd6250f8cf4159243e4483ebd8897", + "content_hash": "35278440a89aee708a6527b5e66bc14c3ad200491ba121dd0b48bb9a03ce52d8", "last_change": { - "summary": "Authorized processor declarations for the participant resource-budget policy contract introduced by issue #899.", - "content_hash": "17335ec9416d0ec5d0e3d7bee409c6d1caabd6250f8cf4159243e4483ebd8897" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "35278440a89aee708a6527b5e66bc14c3ad200491ba121dd0b48bb9a03ce52d8" } } diff --git a/contracts/schema-publication/entries/proposition-truth-result-v1.json b/contracts/schema-publication/entries/proposition-truth-result-v1.json index 718f974a9..60181b4df 100644 --- a/contracts/schema-publication/entries/proposition-truth-result-v1.json +++ b/contracts/schema-publication/entries/proposition-truth-result-v1.json @@ -2,9 +2,9 @@ "contract_id": "proposition-truth-result-v1", "schema_path": "contracts/schemas/control-plane/proposition-truth-result-v1.json", "stability": "draft", - "content_hash": "36ead895c2f3be5c975077ccaf4e75e8026fd0a9243c5a67a894999e4f424ac2", + "content_hash": "25f6100c931dcd7e7eeace7f3900763cd9f283987be542f81d8b11beb601cae4", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "36ead895c2f3be5c975077ccaf4e75e8026fd0a9243c5a67a894999e4f424ac2" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "25f6100c931dcd7e7eeace7f3900763cd9f283987be542f81d8b11beb601cae4" } } diff --git a/contracts/schema-publication/entries/provisioning-plan-v1.json b/contracts/schema-publication/entries/provisioning-plan-v1.json index ac69cd29c..6ce732a2a 100644 --- a/contracts/schema-publication/entries/provisioning-plan-v1.json +++ b/contracts/schema-publication/entries/provisioning-plan-v1.json @@ -2,9 +2,9 @@ "contract_id": "provisioning-plan-v1", "schema_path": "contracts/schemas/plans/provisioning-plan-v1.json", "stability": "draft", - "content_hash": "70af50f87d61eb5337ca6658b5e9e9d227a99f38fc66dead05bca5122200f003", + "content_hash": "d4e85ac33f2f2add86c240c617a0d291404604cb3c8631dded6ea0ee766dd487", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "70af50f87d61eb5337ca6658b5e9e9d227a99f38fc66dead05bca5122200f003" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "d4e85ac33f2f2add86c240c617a0d291404604cb3c8631dded6ea0ee766dd487" } } diff --git a/contracts/schema-publication/entries/raes-semantic-invariants-v1.json b/contracts/schema-publication/entries/raes-semantic-invariants-v1.json index af9523d8e..760e91026 100644 --- a/contracts/schema-publication/entries/raes-semantic-invariants-v1.json +++ b/contracts/schema-publication/entries/raes-semantic-invariants-v1.json @@ -2,9 +2,9 @@ "contract_id": "raes-semantic-invariants-v1", "schema_path": "contracts/schemas/profiles/raes-semantic-invariants-v1.json", "stability": "draft", - "content_hash": "cfe89c457ff1ac21334768ab82b30ce2b1e28eb165bb64a91d1b222e05ece943", + "content_hash": "7af5c717c62c9780ea8b6042f0bb5642c04e2b84aee03ce1b3dca5f36823d14b", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "cfe89c457ff1ac21334768ab82b30ce2b1e28eb165bb64a91d1b222e05ece943" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "7af5c717c62c9780ea8b6042f0bb5642c04e2b84aee03ce1b3dca5f36823d14b" } } diff --git a/contracts/schema-publication/entries/random-stream-profile-v1.json b/contracts/schema-publication/entries/random-stream-profile-v1.json index 68416488c..77019219b 100644 --- a/contracts/schema-publication/entries/random-stream-profile-v1.json +++ b/contracts/schema-publication/entries/random-stream-profile-v1.json @@ -2,9 +2,9 @@ "contract_id": "random-stream-profile-v1", "schema_path": "contracts/schemas/profiles/random-stream-profile-v1.json", "stability": "draft", - "content_hash": "28f4a59b393157c1995a5043029c9b109cc512a7e84d64784835619fdff40a59", + "content_hash": "f594185a8db1f8320822089b90649fed6d4175285da232484bc225d2e60775c1", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "28f4a59b393157c1995a5043029c9b109cc512a7e84d64784835619fdff40a59" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "f594185a8db1f8320822089b90649fed6d4175285da232484bc225d2e60775c1" } } diff --git a/contracts/schema-publication/entries/random-stream-vector-v1.json b/contracts/schema-publication/entries/random-stream-vector-v1.json index 19249fae5..253f8d319 100644 --- a/contracts/schema-publication/entries/random-stream-vector-v1.json +++ b/contracts/schema-publication/entries/random-stream-vector-v1.json @@ -2,9 +2,9 @@ "contract_id": "random-stream-vector-v1", "schema_path": "contracts/schemas/profiles/random-stream-vector-v1.json", "stability": "draft", - "content_hash": "32d04d87018c3ac25a85a3a27e3d7f9cbe27ab37477380c7c8d786257d80e883", + "content_hash": "65e838472c5d1ac7a0eb2ffa4bfe6f3a756c77d776158c6dba8510e2edbc9001", "last_change": { - "summary": "Added the closed participant-occurrence stream-address variant to canonical random-stream vectors for issue #897.", - "content_hash": "32d04d87018c3ac25a85a3a27e3d7f9cbe27ab37477380c7c8d786257d80e883" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "65e838472c5d1ac7a0eb2ffa4bfe6f3a756c77d776158c6dba8510e2edbc9001" } } diff --git a/contracts/schema-publication/entries/realization-envelope-v1.json b/contracts/schema-publication/entries/realization-envelope-v1.json index 31c501348..a041ffecd 100644 --- a/contracts/schema-publication/entries/realization-envelope-v1.json +++ b/contracts/schema-publication/entries/realization-envelope-v1.json @@ -2,9 +2,9 @@ "contract_id": "realization-envelope-v1", "schema_path": "contracts/schemas/realization-envelope/realization-envelope-v1.json", "stability": "draft", - "content_hash": "124da1052563cc1457232da763919f02c23f935a86e21e49c1e0d7b781606253", + "content_hash": "1f54cfaf7288a61890972527dc44415924c8590a1d40795bea13f8cd0cf1e878", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "124da1052563cc1457232da763919f02c23f935a86e21e49c1e0d7b781606253" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "1f54cfaf7288a61890972527dc44415924c8590a1d40795bea13f8cd0cf1e878" } } diff --git a/contracts/schema-publication/entries/realized-time-model-v1.json b/contracts/schema-publication/entries/realized-time-model-v1.json index aa9e56952..f5be7d129 100644 --- a/contracts/schema-publication/entries/realized-time-model-v1.json +++ b/contracts/schema-publication/entries/realized-time-model-v1.json @@ -2,9 +2,9 @@ "contract_id": "realized-time-model-v1", "schema_path": "contracts/schemas/time/realized-time-model-v1.json", "stability": "draft", - "content_hash": "0034fe68c2981896e4c8e08743bd9e18ae20f9aa9bde91d92f1af1b2dc0537ba", + "content_hash": "3ce01b4927e0975c48d7398c013ab5624bf6d74dbc04b259d8a9529fd44cca48", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "0034fe68c2981896e4c8e08743bd9e18ae20f9aa9bde91d92f1af1b2dc0537ba" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "3ce01b4927e0975c48d7398c013ab5624bf6d74dbc04b259d8a9529fd44cca48" } } diff --git a/contracts/schema-publication/entries/reference-models-v1.json b/contracts/schema-publication/entries/reference-models-v1.json index d72f89056..943993c6a 100644 --- a/contracts/schema-publication/entries/reference-models-v1.json +++ b/contracts/schema-publication/entries/reference-models-v1.json @@ -2,9 +2,9 @@ "contract_id": "reference-models-v1", "schema_path": "contracts/schemas/concept-authority/reference-models-v1.json", "stability": "draft", - "content_hash": "e028dfbb74c458399eb3012b4abcb09bef09e047fc1dd74dd0f4dc1f20fa64f0", + "content_hash": "6b379f9203be74259f1905e3ff13c25bb3125a04eba9dcc6bafedea40d50e416", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "e028dfbb74c458399eb3012b4abcb09bef09e047fc1dd74dd0f4dc1f20fa64f0" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "6b379f9203be74259f1905e3ff13c25bb3125a04eba9dcc6bafedea40d50e416" } } diff --git a/contracts/schema-publication/entries/reusable-asset-trust-policy-v1.json b/contracts/schema-publication/entries/reusable-asset-trust-policy-v1.json index aacececf1..9eebdac93 100644 --- a/contracts/schema-publication/entries/reusable-asset-trust-policy-v1.json +++ b/contracts/schema-publication/entries/reusable-asset-trust-policy-v1.json @@ -2,9 +2,9 @@ "contract_id": "reusable-asset-trust-policy-v1", "schema_path": "contracts/schemas/asset-trust/reusable-asset-trust-policy-v1.json", "stability": "draft", - "content_hash": "855845de67295da833b426797dfbd60e13bafeaebc2b92e2a1c195748ccebeab", + "content_hash": "8283ffb71a4739e30c9a88ebb8ab90efa8854aa40b58e95e123bc83f54c858b5", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "855845de67295da833b426797dfbd60e13bafeaebc2b92e2a1c195748ccebeab" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "8283ffb71a4739e30c9a88ebb8ab90efa8854aa40b58e95e123bc83f54c858b5" } } diff --git a/contracts/schema-publication/entries/runtime-fact-binding-plane-v1.json b/contracts/schema-publication/entries/runtime-fact-binding-plane-v1.json index 7b17c4b15..41251a382 100644 --- a/contracts/schema-publication/entries/runtime-fact-binding-plane-v1.json +++ b/contracts/schema-publication/entries/runtime-fact-binding-plane-v1.json @@ -2,9 +2,9 @@ "contract_id": "runtime-fact-binding-plane-v1", "schema_path": "contracts/schemas/participant-runtime/runtime-fact-binding-plane-v1.json", "stability": "draft", - "content_hash": "4ebbf42cc283ad2419d0bbb8724f30e437bec1b1cf1058b4c580475eb83f1699", + "content_hash": "ee6c288abf762b601ca0b181a6df5797f172dcff2b7bd5713edfe06f7aedbb4a", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "4ebbf42cc283ad2419d0bbb8724f30e437bec1b1cf1058b4c580475eb83f1699" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "ee6c288abf762b601ca0b181a6df5797f172dcff2b7bd5713edfe06f7aedbb4a" } } diff --git a/contracts/schema-publication/entries/runtime-snapshot-v1.json b/contracts/schema-publication/entries/runtime-snapshot-v1.json index 7b7e432ad..4a9020172 100644 --- a/contracts/schema-publication/entries/runtime-snapshot-v1.json +++ b/contracts/schema-publication/entries/runtime-snapshot-v1.json @@ -2,9 +2,9 @@ "contract_id": "runtime-snapshot-v1", "schema_path": "contracts/schemas/snapshots/runtime-snapshot-v1.json", "stability": "draft", - "content_hash": "73b2b3eba4400777c380b1d532614d29c2eb83ec82da5fef127918768aa2f8d8", + "content_hash": "42201288da8990fe0214a5f02fb53de7d2500dca86f42663ffbddd6823f03ffa", "last_change": { - "summary": "Added artifact satisfaction evidence and participant resource-budget state and allocation evidence for issues #920 and #899.", - "content_hash": "73b2b3eba4400777c380b1d532614d29c2eb83ec82da5fef127918768aa2f8d8" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "42201288da8990fe0214a5f02fb53de7d2500dca86f42663ffbddd6823f03ffa" } } diff --git a/contracts/schema-publication/entries/scenario-instantiation-request-v1.json b/contracts/schema-publication/entries/scenario-instantiation-request-v1.json index a94c67f40..5df9437ab 100644 --- a/contracts/schema-publication/entries/scenario-instantiation-request-v1.json +++ b/contracts/schema-publication/entries/scenario-instantiation-request-v1.json @@ -2,9 +2,9 @@ "contract_id": "scenario-instantiation-request-v1", "schema_path": "contracts/schemas/sdl/scenario-instantiation-request-v1.json", "stability": "draft", - "content_hash": "54a8cdf1108003f61b79b9d9c0f0a7321a4078a55cf81f604c6882dd420b6616", + "content_hash": "f008fbdab7624d288c38fe9e142d24eb55c34cc390032cab35cb0c30344d9e04", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "54a8cdf1108003f61b79b9d9c0f0a7321a4078a55cf81f604c6882dd420b6616" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "f008fbdab7624d288c38fe9e142d24eb55c34cc390032cab35cb0c30344d9e04" } } diff --git a/contracts/schema-publication/entries/scenario-satisfiability-evidence-v1.json b/contracts/schema-publication/entries/scenario-satisfiability-evidence-v1.json index abc441202..07c65390a 100644 --- a/contracts/schema-publication/entries/scenario-satisfiability-evidence-v1.json +++ b/contracts/schema-publication/entries/scenario-satisfiability-evidence-v1.json @@ -2,9 +2,9 @@ "contract_id": "scenario-satisfiability-evidence-v1", "schema_path": "contracts/schemas/satisfiability/scenario-satisfiability-evidence-v1.json", "stability": "draft", - "content_hash": "3ebaa6f78e03ebbdf06052cfc85abc4f1f40746ce0ea7a8eccc96637e1fcdace", + "content_hash": "51e4814898fd1457cb999020332554596f715540ecbd22078e1936ad5468daf0", "last_change": { - "summary": "Carried portable artifact requirements and scoped participant resource budgets through satisfiability evidence for issues #920 and #899.", - "content_hash": "3ebaa6f78e03ebbdf06052cfc85abc4f1f40746ce0ea7a8eccc96637e1fcdace" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "51e4814898fd1457cb999020332554596f715540ecbd22078e1936ad5468daf0" } } diff --git a/contracts/schema-publication/entries/scheduler-isolation-proof-v1.json b/contracts/schema-publication/entries/scheduler-isolation-proof-v1.json index 90d554bef..c6d484ef6 100644 --- a/contracts/schema-publication/entries/scheduler-isolation-proof-v1.json +++ b/contracts/schema-publication/entries/scheduler-isolation-proof-v1.json @@ -2,9 +2,9 @@ "contract_id": "scheduler-isolation-proof-v1", "schema_path": "contracts/schemas/control-plane/scheduler-isolation-proof-v1.json", "stability": "draft", - "content_hash": "ebf37a997518da860d7e023aef431a2d7eb5c1ea9888d88d015ed29ab1a3fd72", + "content_hash": "619f426ef06aca930f668b77820fa522475d73eb241a47423461f565a347f65d", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "ebf37a997518da860d7e023aef431a2d7eb5c1ea9888d88d015ed29ab1a3fd72" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "619f426ef06aca930f668b77820fa522475d73eb241a47423461f565a347f65d" } } diff --git a/contracts/schema-publication/entries/scientific-completeness-assessment-v1.json b/contracts/schema-publication/entries/scientific-completeness-assessment-v1.json index 87878c896..37090f666 100644 --- a/contracts/schema-publication/entries/scientific-completeness-assessment-v1.json +++ b/contracts/schema-publication/entries/scientific-completeness-assessment-v1.json @@ -2,9 +2,9 @@ "contract_id": "scientific-completeness-assessment-v1", "schema_path": "contracts/schemas/profiles/scientific-completeness-assessment-v1.json", "stability": "draft", - "content_hash": "77d73cf5f338802afd8d3d62552148d45e22af0eac562b8d2aaa86a7043ef1de", + "content_hash": "5db146299d691116e445bed420387e0a221801194c4deabbdd50f022ff7de5ac", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "77d73cf5f338802afd8d3d62552148d45e22af0eac562b8d2aaa86a7043ef1de" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "5db146299d691116e445bed420387e0a221801194c4deabbdd50f022ff7de5ac" } } diff --git a/contracts/schema-publication/entries/scientific-completeness-taxonomy-v1.json b/contracts/schema-publication/entries/scientific-completeness-taxonomy-v1.json index 0ed34d232..3d2b01e34 100644 --- a/contracts/schema-publication/entries/scientific-completeness-taxonomy-v1.json +++ b/contracts/schema-publication/entries/scientific-completeness-taxonomy-v1.json @@ -2,9 +2,9 @@ "contract_id": "scientific-completeness-taxonomy-v1", "schema_path": "contracts/schemas/profiles/scientific-completeness-taxonomy-v1.json", "stability": "draft", - "content_hash": "8236164dfb48091b5e3dd8ca187ea6ee4df07ad8da48bc6b84628c74c166b129", + "content_hash": "02fe8159e45d134c69b7d6b5bd05964bd87349d7bdfab7da14dd9974e444323b", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "8236164dfb48091b5e3dd8ca187ea6ee4df07ad8da48bc6b84628c74c166b129" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "02fe8159e45d134c69b7d6b5bd05964bd87349d7bdfab7da14dd9974e444323b" } } diff --git a/contracts/schema-publication/entries/sdl-authoring-input-v1.json b/contracts/schema-publication/entries/sdl-authoring-input-v1.json index 2bd64f743..629e7c8b6 100644 --- a/contracts/schema-publication/entries/sdl-authoring-input-v1.json +++ b/contracts/schema-publication/entries/sdl-authoring-input-v1.json @@ -2,9 +2,9 @@ "contract_id": "sdl-authoring-input-v1", "schema_path": "contracts/schemas/sdl/sdl-authoring-input-v1.json", "stability": "draft", - "content_hash": "d8e490195ae4fb192e559686d8089c8b13ac69d19fb1b8682192275f75f5623e", + "content_hash": "5009bed0bb0cbb633ad9fd5adf4af890a645df6e48f5ca1e2f8750a6db2a6c95", "last_change": { - "summary": "Published portable Source artifact authoring and scoped participant resource-budget policy for issues #920 and #899.", - "content_hash": "d8e490195ae4fb192e559686d8089c8b13ac69d19fb1b8682192275f75f5623e" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "5009bed0bb0cbb633ad9fd5adf4af890a645df6e48f5ca1e2f8750a6db2a6c95" } } diff --git a/contracts/schema-publication/entries/sdl-lineage-ledger-v1.json b/contracts/schema-publication/entries/sdl-lineage-ledger-v1.json index 7de4a7752..89059a08d 100644 --- a/contracts/schema-publication/entries/sdl-lineage-ledger-v1.json +++ b/contracts/schema-publication/entries/sdl-lineage-ledger-v1.json @@ -2,9 +2,9 @@ "contract_id": "sdl-lineage-ledger-v1", "schema_path": "contracts/schemas/provenance/sdl-lineage-ledger-v1.json", "stability": "draft", - "content_hash": "9cbb6dc73655256fb149d2fdabea9af41fae71d56852f0afa528f28ddfdeaf20", + "content_hash": "6cb6ee30ebe8e6744a750eedf04cd8eb53df0047a535e3575e77e71203bf7ca7", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "9cbb6dc73655256fb149d2fdabea9af41fae71d56852f0afa528f28ddfdeaf20" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "6cb6ee30ebe8e6744a750eedf04cd8eb53df0047a535e3575e77e71203bf7ca7" } } diff --git a/contracts/schema-publication/entries/semantic-profile-v1.json b/contracts/schema-publication/entries/semantic-profile-v1.json index 279ea9fbf..161fb31bb 100644 --- a/contracts/schema-publication/entries/semantic-profile-v1.json +++ b/contracts/schema-publication/entries/semantic-profile-v1.json @@ -2,9 +2,9 @@ "contract_id": "semantic-profile-v1", "schema_path": "contracts/schemas/profiles/semantic-profile-v1.json", "stability": "draft", - "content_hash": "a3d9fdfea509aad4ea13977457a6467771c33126d2a43cf553161065114d6b90", + "content_hash": "0c9cb1ea7a9e0aa061e2fd133b270f088dbf451520c02baf7133fa5568260568", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "a3d9fdfea509aad4ea13977457a6467771c33126d2a43cf553161065114d6b90" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "0c9cb1ea7a9e0aa061e2fd133b270f088dbf451520c02baf7133fa5568260568" } } diff --git a/contracts/schema-publication/entries/time-model-v1.json b/contracts/schema-publication/entries/time-model-v1.json index f710d0c46..9a21fd75b 100644 --- a/contracts/schema-publication/entries/time-model-v1.json +++ b/contracts/schema-publication/entries/time-model-v1.json @@ -2,9 +2,9 @@ "contract_id": "time-model-v1", "schema_path": "contracts/schemas/time/time-model-v1.json", "stability": "draft", - "content_hash": "14b9679439dd53c3a0e70f1518c3271ecef729032d2085f0b38707271204870a", + "content_hash": "09d8427a8ec52e44c9d078ba3de889b0fed8812ef0a509ab8a462668d3d6d8cd", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "14b9679439dd53c3a0e70f1518c3271ecef729032d2085f0b38707271204870a" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "09d8427a8ec52e44c9d078ba3de889b0fed8812ef0a509ab8a462668d3d6d8cd" } } diff --git a/contracts/schema-publication/entries/time-runtime-state-v1.json b/contracts/schema-publication/entries/time-runtime-state-v1.json index 76156d582..8cb25ff26 100644 --- a/contracts/schema-publication/entries/time-runtime-state-v1.json +++ b/contracts/schema-publication/entries/time-runtime-state-v1.json @@ -2,9 +2,9 @@ "contract_id": "time-runtime-state-v1", "schema_path": "contracts/schemas/time/time-runtime-state-v1.json", "stability": "draft", - "content_hash": "f5092734db63333c6ffd1120730bc5b3343c90fa2ae6056d2e9a51194e4bca1f", + "content_hash": "a5806e28394dc8722100f3cc6277e8f3ccbcc943724824f204fcfed1f2413bd3", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "f5092734db63333c6ffd1120730bc5b3343c90fa2ae6056d2e9a51194e4bca1f" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "a5806e28394dc8722100f3cc6277e8f3ccbcc943724824f204fcfed1f2413bd3" } } diff --git a/contracts/schema-publication/entries/trial-cleanup-plan-v1.json b/contracts/schema-publication/entries/trial-cleanup-plan-v1.json index ecd1cbd3d..f4737558a 100644 --- a/contracts/schema-publication/entries/trial-cleanup-plan-v1.json +++ b/contracts/schema-publication/entries/trial-cleanup-plan-v1.json @@ -2,9 +2,9 @@ "contract_id": "trial-cleanup-plan-v1", "schema_path": "contracts/schemas/plans/trial-cleanup-plan-v1.json", "stability": "draft", - "content_hash": "4d0ced18dc531cd5e5619bfe5558b49ad5856b5b94afc3d6ca40a4475aedc032", + "content_hash": "79f389e54ad2ba55824d5311db65b59ea9cf33e92271dafcdc89ccefac0f9cd3", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "4d0ced18dc531cd5e5619bfe5558b49ad5856b5b94afc3d6ca40a4475aedc032" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "79f389e54ad2ba55824d5311db65b59ea9cf33e92271dafcdc89ccefac0f9cd3" } } diff --git a/contracts/schema-publication/entries/trial-cleanup-receipt-v1.json b/contracts/schema-publication/entries/trial-cleanup-receipt-v1.json index a6a8455fb..082155360 100644 --- a/contracts/schema-publication/entries/trial-cleanup-receipt-v1.json +++ b/contracts/schema-publication/entries/trial-cleanup-receipt-v1.json @@ -2,9 +2,9 @@ "contract_id": "trial-cleanup-receipt-v1", "schema_path": "contracts/schemas/control-plane/trial-cleanup-receipt-v1.json", "stability": "draft", - "content_hash": "90462009caf9c41e35f764ac9be4e5777d7745994d7d04195ac6a08851a2d690", + "content_hash": "40bc6caaf772ef401160a6c61cee0da6b44a076eefd1d7e84af54736e1302e95", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "90462009caf9c41e35f764ac9be4e5777d7745994d7d04195ac6a08851a2d690" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "40bc6caaf772ef401160a6c61cee0da6b44a076eefd1d7e84af54736e1302e95" } } diff --git a/contracts/schema-publication/entries/uco-alignment-v1.json b/contracts/schema-publication/entries/uco-alignment-v1.json index b8c7ec027..765e396c0 100644 --- a/contracts/schema-publication/entries/uco-alignment-v1.json +++ b/contracts/schema-publication/entries/uco-alignment-v1.json @@ -2,9 +2,9 @@ "contract_id": "uco-alignment-v1", "schema_path": "contracts/schemas/concept-authority/uco-alignment-v1.json", "stability": "draft", - "content_hash": "dc84dac9987d237a7309a15289ee3572dc1096fa5c0ae6b06201e770a1de0086", + "content_hash": "84b03b7be0fcb301324d53389c39e44d61e4c59a20bd8a387db68ebafcc7ef98", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "dc84dac9987d237a7309a15289ee3572dc1096fa5c0ae6b06201e770a1de0086" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "84b03b7be0fcb301324d53389c39e44d61e4c59a20bd8a387db68ebafcc7ef98" } } diff --git a/contracts/schema-publication/entries/validation-basis-disclosure-v1.json b/contracts/schema-publication/entries/validation-basis-disclosure-v1.json index c975e47ad..36ecbc0d7 100644 --- a/contracts/schema-publication/entries/validation-basis-disclosure-v1.json +++ b/contracts/schema-publication/entries/validation-basis-disclosure-v1.json @@ -2,9 +2,9 @@ "contract_id": "validation-basis-disclosure-v1", "schema_path": "contracts/schemas/profiles/validation-basis-disclosure-v1.json", "stability": "draft", - "content_hash": "df23116b3c073e6db1c00ef2cbe419eb63af44a938095616ebfa799b39f59f69", + "content_hash": "cbd474c289d9519baf339ce22eea1613b41e9166ad3ac350f40e1955b434edd3", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "df23116b3c073e6db1c00ef2cbe419eb63af44a938095616ebfa799b39f59f69" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "cbd474c289d9519baf339ce22eea1613b41e9166ad3ac350f40e1955b434edd3" } } diff --git a/contracts/schema-publication/entries/validation-profile-catalog-v1.json b/contracts/schema-publication/entries/validation-profile-catalog-v1.json index 499f9c6a2..17ceec089 100644 --- a/contracts/schema-publication/entries/validation-profile-catalog-v1.json +++ b/contracts/schema-publication/entries/validation-profile-catalog-v1.json @@ -2,9 +2,9 @@ "contract_id": "validation-profile-catalog-v1", "schema_path": "contracts/schemas/profiles/validation-profile-catalog-v1.json", "stability": "draft", - "content_hash": "426679f49e406a66b4b5bd9dde39ba4f01afcb0360161cf6d489cf197c85cd17", + "content_hash": "235bd271397f4a8ab51422bfe8cb570610e0f82177a0197bb10e1f743c03349b", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "426679f49e406a66b4b5bd9dde39ba4f01afcb0360161cf6d489cf197c85cd17" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "235bd271397f4a8ab51422bfe8cb570610e0f82177a0197bb10e1f743c03349b" } } diff --git a/contracts/schema-publication/entries/workflow-cancellation-request-v1.json b/contracts/schema-publication/entries/workflow-cancellation-request-v1.json index c4a5d0ea8..8570b48a9 100644 --- a/contracts/schema-publication/entries/workflow-cancellation-request-v1.json +++ b/contracts/schema-publication/entries/workflow-cancellation-request-v1.json @@ -2,9 +2,9 @@ "contract_id": "workflow-cancellation-request-v1", "schema_path": "contracts/schemas/control-plane/workflow-cancellation-request-v1.json", "stability": "draft", - "content_hash": "32f9286d95c824af920799fcac005851a46d93b437ec3ece04da2a58b7641178", + "content_hash": "83d992309d63b159214f8580d58366ccd408b5720163771269a810cff40f955d", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "32f9286d95c824af920799fcac005851a46d93b437ec3ece04da2a58b7641178" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "83d992309d63b159214f8580d58366ccd408b5720163771269a810cff40f955d" } } diff --git a/contracts/schema-publication/entries/workflow-history-event-stream-v1.json b/contracts/schema-publication/entries/workflow-history-event-stream-v1.json index ed1a61c3c..1a4f128bd 100644 --- a/contracts/schema-publication/entries/workflow-history-event-stream-v1.json +++ b/contracts/schema-publication/entries/workflow-history-event-stream-v1.json @@ -2,9 +2,9 @@ "contract_id": "workflow-history-event-stream-v1", "schema_path": "contracts/schemas/control-plane/workflow-history-event-stream-v1.json", "stability": "draft", - "content_hash": "32f8eb4cd8800a93374f1f76e497b1b96f08e583f4aa2d34775e915c1112a68b", + "content_hash": "22737796b0903c109e718cdb2b14d1a05832019a121437c45f153a9a76caf916", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "32f8eb4cd8800a93374f1f76e497b1b96f08e583f4aa2d34775e915c1112a68b" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "22737796b0903c109e718cdb2b14d1a05832019a121437c45f153a9a76caf916" } } diff --git a/contracts/schema-publication/entries/workflow-result-envelope-v1.json b/contracts/schema-publication/entries/workflow-result-envelope-v1.json index 83ba17d87..ddcdd1341 100644 --- a/contracts/schema-publication/entries/workflow-result-envelope-v1.json +++ b/contracts/schema-publication/entries/workflow-result-envelope-v1.json @@ -2,9 +2,9 @@ "contract_id": "workflow-result-envelope-v1", "schema_path": "contracts/schemas/control-plane/workflow-result-envelope-v1.json", "stability": "draft", - "content_hash": "0a0db3f0da692b83f72a312eb75ffecc25fb74b56600c7ecb64a759f8a3b4c28", + "content_hash": "ca40953f53b3f13a0bcf1e6bf9d631c9a94544278cef6882b3fa140a35022612", "last_change": { - "summary": "Completed the RAES identity hard cut for published schema URIs, extension keywords, and identity-bearing contract values under #908; validation semantics are unchanged apart from the intentional breaking name migration.", - "content_hash": "0a0db3f0da692b83f72a312eb75ffecc25fb74b56600c7ecb64a759f8a3b4c28" + "summary": "Repointed the published schema namespace from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root for issue #908.", + "content_hash": "ca40953f53b3f13a0bcf1e6bf9d631c9a94544278cef6882b3fa140a35022612" } } diff --git a/contracts/schemas/artifact-requirements/artifact-requirement-v1.json b/contracts/schemas/artifact-requirements/artifact-requirement-v1.json index d90d89530..68f42cce2 100644 --- a/contracts/schemas/artifact-requirements/artifact-requirement-v1.json +++ b/contracts/schemas/artifact-requirements/artifact-requirement-v1.json @@ -1071,7 +1071,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/artifact-requirement-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/artifact-requirement-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published source-artifact requirement contract.", @@ -1136,6 +1136,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/asset-trust/reusable-asset-trust-policy-v1.json b/contracts/schemas/asset-trust/reusable-asset-trust-policy-v1.json index ecce95638..84d2ea593 100644 --- a/contracts/schemas/asset-trust/reusable-asset-trust-policy-v1.json +++ b/contracts/schemas/asset-trust/reusable-asset-trust-policy-v1.json @@ -312,7 +312,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/reusable-asset-trust-policy-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/reusable-asset-trust-policy-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Ecosystem trust/authenticity/integrity policy over reusable assets (GOV-913).\n\nA declarative, expectation-based policy: it declares, per asset family, the\nintegrity/authenticity/provenance/governance evidence the ecosystem requires,\nreferencing the existing RAES mechanisms that carry that evidence. It is not a\nper-asset trust record and it invents no cryptography. See\n``specs/authority/reusable-asset-trust-integrity.md`` (normative) and ADR-071.", diff --git a/contracts/schemas/associated-artifacts/associated-artifact-manifest-v1.json b/contracts/schemas/associated-artifacts/associated-artifact-manifest-v1.json index 484b750da..77c11a68a 100644 --- a/contracts/schemas/associated-artifacts/associated-artifact-manifest-v1.json +++ b/contracts/schemas/associated-artifacts/associated-artifact-manifest-v1.json @@ -327,7 +327,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/associated-artifact-manifest-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/associated-artifact-manifest-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -470,6 +470,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/backend-manifest/backend-manifest-v2.json b/contracts/schemas/backend-manifest/backend-manifest-v2.json index f1756ce67..a31627930 100644 --- a/contracts/schemas/backend-manifest/backend-manifest-v2.json +++ b/contracts/schemas/backend-manifest/backend-manifest-v2.json @@ -2214,7 +2214,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/backend-manifest-v2.json", + "$id": "https://raesystem.github.io/rae/schemas/backend-manifest-v2.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ diff --git a/contracts/schemas/concept-authority/atlas-tactics-source-v1.json b/contracts/schemas/concept-authority/atlas-tactics-source-v1.json index 863404d28..86f3d08e5 100644 --- a/contracts/schemas/concept-authority/atlas-tactics-source-v1.json +++ b/contracts/schemas/concept-authority/atlas-tactics-source-v1.json @@ -90,7 +90,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/atlas-tactics-source-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/atlas-tactics-source-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/concept-authority/attack-enterprise-tactics-source-v1.json b/contracts/schemas/concept-authority/attack-enterprise-tactics-source-v1.json index 7ddce7c3f..008fac2d1 100644 --- a/contracts/schemas/concept-authority/attack-enterprise-tactics-source-v1.json +++ b/contracts/schemas/concept-authority/attack-enterprise-tactics-source-v1.json @@ -46,7 +46,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/attack-enterprise-tactics-source-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/attack-enterprise-tactics-source-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/concept-authority/behavioral-relations-v1.json b/contracts/schemas/concept-authority/behavioral-relations-v1.json index 9abe216eb..dca1a0afa 100644 --- a/contracts/schemas/concept-authority/behavioral-relations-v1.json +++ b/contracts/schemas/concept-authority/behavioral-relations-v1.json @@ -699,7 +699,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/behavioral-relations-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/behavioral-relations-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { @@ -787,6 +787,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/concept-authority/concept-families-v1.json b/contracts/schemas/concept-authority/concept-families-v1.json index 7ed41c54f..2d58ac354 100644 --- a/contracts/schemas/concept-authority/concept-families-v1.json +++ b/contracts/schemas/concept-authority/concept-families-v1.json @@ -198,7 +198,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/concept-families-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/concept-families-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/concept-authority/controlled-vocabularies-v1.json b/contracts/schemas/concept-authority/controlled-vocabularies-v1.json index 15bf16b79..617df48ba 100644 --- a/contracts/schemas/concept-authority/controlled-vocabularies-v1.json +++ b/contracts/schemas/concept-authority/controlled-vocabularies-v1.json @@ -201,7 +201,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/controlled-vocabularies-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/controlled-vocabularies-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/concept-authority/nist-csf-defensive-categories-source-v1.json b/contracts/schemas/concept-authority/nist-csf-defensive-categories-source-v1.json index 6ea515e38..5de85e5df 100644 --- a/contracts/schemas/concept-authority/nist-csf-defensive-categories-source-v1.json +++ b/contracts/schemas/concept-authority/nist-csf-defensive-categories-source-v1.json @@ -44,7 +44,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/nist-csf-defensive-categories-source-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/nist-csf-defensive-categories-source-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/concept-authority/reference-models-v1.json b/contracts/schemas/concept-authority/reference-models-v1.json index 307e1938e..5fc8a7300 100644 --- a/contracts/schemas/concept-authority/reference-models-v1.json +++ b/contracts/schemas/concept-authority/reference-models-v1.json @@ -77,7 +77,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/reference-models-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/reference-models-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/concept-authority/uco-alignment-v1.json b/contracts/schemas/concept-authority/uco-alignment-v1.json index 168c0bb74..7a1a9951f 100644 --- a/contracts/schemas/concept-authority/uco-alignment-v1.json +++ b/contracts/schemas/concept-authority/uco-alignment-v1.json @@ -76,7 +76,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/uco-alignment-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/uco-alignment-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/control-plane/evaluation-history-event-stream-v1.json b/contracts/schemas/control-plane/evaluation-history-event-stream-v1.json index fe1927475..e2d9c33bf 100644 --- a/contracts/schemas/control-plane/evaluation-history-event-stream-v1.json +++ b/contracts/schemas/control-plane/evaluation-history-event-stream-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/evaluation-history-event-stream-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/evaluation-history-event-stream-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "items": { "additionalProperties": false, diff --git a/contracts/schemas/control-plane/evaluation-result-envelope-v1.json b/contracts/schemas/control-plane/evaluation-result-envelope-v1.json index 98b0b870d..72c5d0e01 100644 --- a/contracts/schemas/control-plane/evaluation-result-envelope-v1.json +++ b/contracts/schemas/control-plane/evaluation-result-envelope-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/evaluation-result-envelope-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/evaluation-result-envelope-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/control-plane/operation-receipt-v1.json b/contracts/schemas/control-plane/operation-receipt-v1.json index ac0a08dd2..43fdee56d 100644 --- a/contracts/schemas/control-plane/operation-receipt-v1.json +++ b/contracts/schemas/control-plane/operation-receipt-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/operation-receipt-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/operation-receipt-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/control-plane/operation-status-v1.json b/contracts/schemas/control-plane/operation-status-v1.json index 201a20fd8..45876f47f 100644 --- a/contracts/schemas/control-plane/operation-status-v1.json +++ b/contracts/schemas/control-plane/operation-status-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/operation-status-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/operation-status-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/control-plane/participant-behavior-history-event-stream-v1.json b/contracts/schemas/control-plane/participant-behavior-history-event-stream-v1.json index 738a1a1ce..cb9b19ff0 100644 --- a/contracts/schemas/control-plane/participant-behavior-history-event-stream-v1.json +++ b/contracts/schemas/control-plane/participant-behavior-history-event-stream-v1.json @@ -1253,7 +1253,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/participant-behavior-history-event-stream-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-behavior-history-event-stream-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "items": { "additionalProperties": false, @@ -1538,6 +1538,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/participant-context-view-v1.json b/contracts/schemas/control-plane/participant-context-view-v1.json index 144057f20..0352e28b3 100644 --- a/contracts/schemas/control-plane/participant-context-view-v1.json +++ b/contracts/schemas/control-plane/participant-context-view-v1.json @@ -236,7 +236,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-context-view-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-context-view-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -509,6 +509,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/participant-decision-surface-v1.json b/contracts/schemas/control-plane/participant-decision-surface-v1.json index 3ec952df3..dd08ef4d2 100644 --- a/contracts/schemas/control-plane/participant-decision-surface-v1.json +++ b/contracts/schemas/control-plane/participant-decision-surface-v1.json @@ -665,7 +665,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-decision-surface-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-decision-surface-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "One participant-local decision projection at one episode order point.", @@ -920,6 +920,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/participant-decision-surface-v2.json b/contracts/schemas/control-plane/participant-decision-surface-v2.json index 2f7b67c9a..bf9598395 100644 --- a/contracts/schemas/control-plane/participant-decision-surface-v2.json +++ b/contracts/schemas/control-plane/participant-decision-surface-v2.json @@ -1331,7 +1331,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-decision-surface-v2.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-decision-surface-v2.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -1477,6 +1477,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/participant-episode-history-event-stream-v1.json b/contracts/schemas/control-plane/participant-episode-history-event-stream-v1.json index dff63a2e9..e18d6880a 100644 --- a/contracts/schemas/control-plane/participant-episode-history-event-stream-v1.json +++ b/contracts/schemas/control-plane/participant-episode-history-event-stream-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-episode-history-event-stream-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-episode-history-event-stream-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "items": { "additionalProperties": false, diff --git a/contracts/schemas/control-plane/participant-episode-state-envelope-v1.json b/contracts/schemas/control-plane/participant-episode-state-envelope-v1.json index a2625ca4f..e818f430e 100644 --- a/contracts/schemas/control-plane/participant-episode-state-envelope-v1.json +++ b/contracts/schemas/control-plane/participant-episode-state-envelope-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-episode-state-envelope-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-episode-state-envelope-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/control-plane/participant-history-view-v1.json b/contracts/schemas/control-plane/participant-history-view-v1.json index 0f2e0f9b6..eb319a80b 100644 --- a/contracts/schemas/control-plane/participant-history-view-v1.json +++ b/contracts/schemas/control-plane/participant-history-view-v1.json @@ -1570,7 +1570,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/participant-history-view-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-history-view-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -1711,6 +1711,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/participant-status-view-v1.json b/contracts/schemas/control-plane/participant-status-view-v1.json index 9b4fd2852..9843ccdcb 100644 --- a/contracts/schemas/control-plane/participant-status-view-v1.json +++ b/contracts/schemas/control-plane/participant-status-view-v1.json @@ -78,7 +78,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-status-view-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-status-view-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "API-408 retrieval projection of one participant's episode status.", diff --git a/contracts/schemas/control-plane/proposition-truth-result-v1.json b/contracts/schemas/control-plane/proposition-truth-result-v1.json index 49df88839..2a6e24850 100644 --- a/contracts/schemas/control-plane/proposition-truth-result-v1.json +++ b/contracts/schemas/control-plane/proposition-truth-result-v1.json @@ -156,7 +156,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/proposition-truth-result-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/proposition-truth-result-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ diff --git a/contracts/schemas/control-plane/scheduler-isolation-proof-v1.json b/contracts/schemas/control-plane/scheduler-isolation-proof-v1.json index f6a5f3446..a0d65a45d 100644 --- a/contracts/schemas/control-plane/scheduler-isolation-proof-v1.json +++ b/contracts/schemas/control-plane/scheduler-isolation-proof-v1.json @@ -40,7 +40,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/scheduler-isolation-proof-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/scheduler-isolation-proof-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -256,6 +256,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/trial-cleanup-receipt-v1.json b/contracts/schemas/control-plane/trial-cleanup-receipt-v1.json index 732017860..a0669a310 100644 --- a/contracts/schemas/control-plane/trial-cleanup-receipt-v1.json +++ b/contracts/schemas/control-plane/trial-cleanup-receipt-v1.json @@ -90,7 +90,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/trial-cleanup-receipt-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/trial-cleanup-receipt-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -230,6 +230,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/control-plane/workflow-cancellation-request-v1.json b/contracts/schemas/control-plane/workflow-cancellation-request-v1.json index fac3f2d34..a6dca7bb0 100644 --- a/contracts/schemas/control-plane/workflow-cancellation-request-v1.json +++ b/contracts/schemas/control-plane/workflow-cancellation-request-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/workflow-cancellation-request-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/workflow-cancellation-request-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/control-plane/workflow-history-event-stream-v1.json b/contracts/schemas/control-plane/workflow-history-event-stream-v1.json index 267b00ff2..2276e6cc8 100644 --- a/contracts/schemas/control-plane/workflow-history-event-stream-v1.json +++ b/contracts/schemas/control-plane/workflow-history-event-stream-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/workflow-history-event-stream-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/workflow-history-event-stream-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "items": { "additionalProperties": false, diff --git a/contracts/schemas/control-plane/workflow-result-envelope-v1.json b/contracts/schemas/control-plane/workflow-result-envelope-v1.json index 20060ec53..308b2d33c 100644 --- a/contracts/schemas/control-plane/workflow-result-envelope-v1.json +++ b/contracts/schemas/control-plane/workflow-result-envelope-v1.json @@ -151,7 +151,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/workflow-result-envelope-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/workflow-result-envelope-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/experiment-core/experiment-apparatus-context-v1.json b/contracts/schemas/experiment-core/experiment-apparatus-context-v1.json index ae3191123..db0b21628 100644 --- a/contracts/schemas/experiment-core/experiment-apparatus-context-v1.json +++ b/contracts/schemas/experiment-core/experiment-apparatus-context-v1.json @@ -1127,7 +1127,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-apparatus-context-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-apparatus-context-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Run-scoped apparatus context for interpreting experiment evidence.", @@ -1348,6 +1348,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-authoring-input-v1.json b/contracts/schemas/experiment-core/experiment-authoring-input-v1.json index 983178618..eb892866e 100644 --- a/contracts/schemas/experiment-core/experiment-authoring-input-v1.json +++ b/contracts/schemas/experiment-core/experiment-authoring-input-v1.json @@ -2278,7 +2278,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-authoring-input-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-authoring-input-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -2479,6 +2479,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-binding-descriptors-v1.json b/contracts/schemas/experiment-core/experiment-binding-descriptors-v1.json index c44379a4a..aa3a44af6 100644 --- a/contracts/schemas/experiment-core/experiment-binding-descriptors-v1.json +++ b/contracts/schemas/experiment-core/experiment-binding-descriptors-v1.json @@ -323,7 +323,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-binding-descriptors-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-binding-descriptors-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Versioned, collision-free set of authoritative experiment bindings.", @@ -369,6 +369,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-capture-spec-v1.json b/contracts/schemas/experiment-core/experiment-capture-spec-v1.json index 7782100a3..45ceb1705 100644 --- a/contracts/schemas/experiment-core/experiment-capture-spec-v1.json +++ b/contracts/schemas/experiment-core/experiment-capture-spec-v1.json @@ -704,7 +704,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-capture-spec-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-capture-spec-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Declarative EXP-707 specification of what experiment evidence to capture.", @@ -810,6 +810,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-derived-measure-v1.json b/contracts/schemas/experiment-core/experiment-derived-measure-v1.json index d7d40ae63..6cb09d7f5 100644 --- a/contracts/schemas/experiment-core/experiment-derived-measure-v1.json +++ b/contracts/schemas/experiment-core/experiment-derived-measure-v1.json @@ -253,7 +253,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-derived-measure-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-derived-measure-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -462,6 +462,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-evidence-record-v1.json b/contracts/schemas/experiment-core/experiment-evidence-record-v1.json index 96a5aa434..fe95c1c7a 100644 --- a/contracts/schemas/experiment-core/experiment-evidence-record-v1.json +++ b/contracts/schemas/experiment-core/experiment-evidence-record-v1.json @@ -548,7 +548,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-evidence-record-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-evidence-record-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -750,6 +750,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-run-v1.json b/contracts/schemas/experiment-core/experiment-run-v1.json index 35f85621b..9beab7c07 100644 --- a/contracts/schemas/experiment-core/experiment-run-v1.json +++ b/contracts/schemas/experiment-core/experiment-run-v1.json @@ -4492,7 +4492,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-run-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-run-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -4886,6 +4886,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-study-v1.json b/contracts/schemas/experiment-core/experiment-study-v1.json index 36aa869c5..f941cbe71 100644 --- a/contracts/schemas/experiment-core/experiment-study-v1.json +++ b/contracts/schemas/experiment-core/experiment-study-v1.json @@ -1935,7 +1935,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-study-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-study-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "allOf": [ @@ -2295,6 +2295,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/experiment-core/experiment-task-v1.json b/contracts/schemas/experiment-core/experiment-task-v1.json index cf86adeaa..68fd9abb0 100644 --- a/contracts/schemas/experiment-core/experiment-task-v1.json +++ b/contracts/schemas/experiment-core/experiment-task-v1.json @@ -1843,7 +1843,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/experiment-task-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/experiment-task-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Experiment task contract that separates scenario material from protocol intent.", @@ -1977,6 +1977,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/exploit-path-analysis/exploit-path-analysis-evidence-v1.json b/contracts/schemas/exploit-path-analysis/exploit-path-analysis-evidence-v1.json index 29c973c38..f2036f9f5 100644 --- a/contracts/schemas/exploit-path-analysis/exploit-path-analysis-evidence-v1.json +++ b/contracts/schemas/exploit-path-analysis/exploit-path-analysis-evidence-v1.json @@ -758,7 +758,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/exploit-path-analysis-evidence-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/exploit-path-analysis-evidence-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Closed evidence envelope binding source, snapshot, graph, query, and result.", @@ -963,6 +963,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/participant-implementation-configuration/participant-configuration-result-v1.json b/contracts/schemas/participant-implementation-configuration/participant-configuration-result-v1.json index 11dbc8ee5..c36f29a3d 100644 --- a/contracts/schemas/participant-implementation-configuration/participant-configuration-result-v1.json +++ b/contracts/schemas/participant-implementation-configuration/participant-configuration-result-v1.json @@ -210,7 +210,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-configuration-result-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-configuration-result-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Portable result of one complete, atomic participant configuration validation.", @@ -277,6 +277,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/participant-implementation-manifest/participant-implementation-manifest-v1.json b/contracts/schemas/participant-implementation-manifest/participant-implementation-manifest-v1.json index c29a1a0af..0c9017368 100644 --- a/contracts/schemas/participant-implementation-manifest/participant-implementation-manifest-v1.json +++ b/contracts/schemas/participant-implementation-manifest/participant-implementation-manifest-v1.json @@ -302,7 +302,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-implementation-manifest-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-implementation-manifest-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/participant-implementation-provenance/participant-implementation-provenance-v1.json b/contracts/schemas/participant-implementation-provenance/participant-implementation-provenance-v1.json index 94bd627e8..550cfbf3d 100644 --- a/contracts/schemas/participant-implementation-provenance/participant-implementation-provenance-v1.json +++ b/contracts/schemas/participant-implementation-provenance/participant-implementation-provenance-v1.json @@ -221,7 +221,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-implementation-provenance-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-implementation-provenance-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/participant-runtime/participant-control-occurrence-v1.json b/contracts/schemas/participant-runtime/participant-control-occurrence-v1.json index dd42d1791..01a28bd07 100644 --- a/contracts/schemas/participant-runtime/participant-control-occurrence-v1.json +++ b/contracts/schemas/participant-runtime/participant-control-occurrence-v1.json @@ -1802,7 +1802,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-control-occurrence-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-control-occurrence-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Closed participant-runtime carrier for one API-409 control fact.", @@ -2213,6 +2213,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/participant-runtime/participant-crossing-occurrence-v1.json b/contracts/schemas/participant-runtime/participant-crossing-occurrence-v1.json index 59fbe30ce..6b1e31289 100644 --- a/contracts/schemas/participant-runtime/participant-crossing-occurrence-v1.json +++ b/contracts/schemas/participant-runtime/participant-crossing-occurrence-v1.json @@ -1786,7 +1786,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-crossing-occurrence-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-crossing-occurrence-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Closed participant-runtime carrier for one API-423 crossing fact.", @@ -2197,6 +2197,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/participant-runtime/participant-execution-binding-v1.json b/contracts/schemas/participant-runtime/participant-execution-binding-v1.json index 22a380bb6..92ac537a5 100644 --- a/contracts/schemas/participant-runtime/participant-execution-binding-v1.json +++ b/contracts/schemas/participant-runtime/participant-execution-binding-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-execution-binding-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-execution-binding-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Exact executable relation between one action and its native targets.", diff --git a/contracts/schemas/participant-runtime/participant-execution-control-v1.json b/contracts/schemas/participant-runtime/participant-execution-control-v1.json index 1fdf3ddb4..d516ad866 100644 --- a/contracts/schemas/participant-runtime/participant-execution-control-v1.json +++ b/contracts/schemas/participant-runtime/participant-execution-control-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-execution-control-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-execution-control-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Generation-fenced lifecycle mutation for one admitted execution scope.", diff --git a/contracts/schemas/participant-runtime/participant-execution-service-state-v1.json b/contracts/schemas/participant-runtime/participant-execution-service-state-v1.json index 478224add..028048940 100644 --- a/contracts/schemas/participant-runtime/participant-execution-service-state-v1.json +++ b/contracts/schemas/participant-runtime/participant-execution-service-state-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-execution-service-state-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-execution-service-state-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Typed health, readiness, lifecycle, capacity, and evidence readback.", diff --git a/contracts/schemas/participant-runtime/participant-joint-action-record-v1.json b/contracts/schemas/participant-runtime/participant-joint-action-record-v1.json index 8d586e4fe..5f98c8d6d 100644 --- a/contracts/schemas/participant-runtime/participant-joint-action-record-v1.json +++ b/contracts/schemas/participant-runtime/participant-joint-action-record-v1.json @@ -407,7 +407,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-joint-action-record-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-joint-action-record-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "RUN-308 joint action / concurrency record over behavior events.", diff --git a/contracts/schemas/participant-runtime/participant-lifecycle-event-v1.json b/contracts/schemas/participant-runtime/participant-lifecycle-event-v1.json index b52111554..6d2d31ec2 100644 --- a/contracts/schemas/participant-runtime/participant-lifecycle-event-v1.json +++ b/contracts/schemas/participant-runtime/participant-lifecycle-event-v1.json @@ -389,7 +389,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-lifecycle-event-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-lifecycle-event-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "RUN-306 lifecycle boundary record for one participant action event.", diff --git a/contracts/schemas/participant-runtime/participant-observation-envelope-v1.json b/contracts/schemas/participant-runtime/participant-observation-envelope-v1.json index 6ae742ac6..5add5f720 100644 --- a/contracts/schemas/participant-runtime/participant-observation-envelope-v1.json +++ b/contracts/schemas/participant-runtime/participant-observation-envelope-v1.json @@ -409,7 +409,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-observation-envelope-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-observation-envelope-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "SEM-210 participant-visible observation record with explicit guarantees.", diff --git a/contracts/schemas/participant-runtime/participant-outcome-report-v1.json b/contracts/schemas/participant-runtime/participant-outcome-report-v1.json index 42616cb74..b2b825025 100644 --- a/contracts/schemas/participant-runtime/participant-outcome-report-v1.json +++ b/contracts/schemas/participant-runtime/participant-outcome-report-v1.json @@ -413,7 +413,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-outcome-report-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-outcome-report-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "SEM-215 outcome interpretation report.\n\nThe carrier deliberately has no score, reward, or objective-success\nfield: reward and return remain ADR-054 step signals, and objective and\nevaluation results remain their own contract surfaces.", diff --git a/contracts/schemas/participant-runtime/participant-resource-budget-event-v1.json b/contracts/schemas/participant-runtime/participant-resource-budget-event-v1.json index 1dd418c76..33ddb7d4b 100644 --- a/contracts/schemas/participant-runtime/participant-resource-budget-event-v1.json +++ b/contracts/schemas/participant-runtime/participant-resource-budget-event-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-resource-budget-event-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-resource-budget-event-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/participant-runtime/participant-resource-budget-policy-v1.json b/contracts/schemas/participant-runtime/participant-resource-budget-policy-v1.json index d29cfd6bc..86e314f8b 100644 --- a/contracts/schemas/participant-runtime/participant-resource-budget-policy-v1.json +++ b/contracts/schemas/participant-runtime/participant-resource-budget-policy-v1.json @@ -244,7 +244,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-resource-budget-policy-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-resource-budget-policy-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/participant-runtime/participant-resource-budget-state-v1.json b/contracts/schemas/participant-runtime/participant-resource-budget-state-v1.json index 58279fbe2..e7aef6775 100644 --- a/contracts/schemas/participant-runtime/participant-resource-budget-state-v1.json +++ b/contracts/schemas/participant-runtime/participant-resource-budget-state-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-resource-budget-state-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-resource-budget-state-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/participant-runtime/participant-resource-pool-capacity-v1.json b/contracts/schemas/participant-runtime/participant-resource-pool-capacity-v1.json index b944f2903..1cb50db49 100644 --- a/contracts/schemas/participant-runtime/participant-resource-pool-capacity-v1.json +++ b/contracts/schemas/participant-runtime/participant-resource-pool-capacity-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/participant-resource-pool-capacity-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-resource-pool-capacity-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/participant-runtime/participant-shared-state-record-v1.json b/contracts/schemas/participant-runtime/participant-shared-state-record-v1.json index cf4e8a7d4..a662f373a 100644 --- a/contracts/schemas/participant-runtime/participant-shared-state-record-v1.json +++ b/contracts/schemas/participant-runtime/participant-shared-state-record-v1.json @@ -551,7 +551,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-shared-state-record-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-shared-state-record-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "anyOf": [ diff --git a/contracts/schemas/participant-runtime/participant-time-management-context-v1.json b/contracts/schemas/participant-runtime/participant-time-management-context-v1.json index f649a8232..74c822259 100644 --- a/contracts/schemas/participant-runtime/participant-time-management-context-v1.json +++ b/contracts/schemas/participant-runtime/participant-time-management-context-v1.json @@ -351,7 +351,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/participant-time-management-context-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/participant-time-management-context-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "RUN-308 time-management basis for concurrent or distributed runtime claims.", diff --git a/contracts/schemas/participant-runtime/runtime-fact-binding-plane-v1.json b/contracts/schemas/participant-runtime/runtime-fact-binding-plane-v1.json index 4aa007e56..cf2cce1db 100644 --- a/contracts/schemas/participant-runtime/runtime-fact-binding-plane-v1.json +++ b/contracts/schemas/participant-runtime/runtime-fact-binding-plane-v1.json @@ -685,7 +685,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/runtime-fact-binding-plane-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/runtime-fact-binding-plane-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { @@ -754,6 +754,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/plans/evaluation-plan-v1.json b/contracts/schemas/plans/evaluation-plan-v1.json index feeaa8543..8c157bbe4 100644 --- a/contracts/schemas/plans/evaluation-plan-v1.json +++ b/contracts/schemas/plans/evaluation-plan-v1.json @@ -73,7 +73,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/evaluation-plan-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/evaluation-plan-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/plans/orchestration-plan-v1.json b/contracts/schemas/plans/orchestration-plan-v1.json index 3ffbbacc3..42a613058 100644 --- a/contracts/schemas/plans/orchestration-plan-v1.json +++ b/contracts/schemas/plans/orchestration-plan-v1.json @@ -75,7 +75,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/orchestration-plan-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/orchestration-plan-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/plans/provisioning-plan-v1.json b/contracts/schemas/plans/provisioning-plan-v1.json index 476dbfe75..d66b6f338 100644 --- a/contracts/schemas/plans/provisioning-plan-v1.json +++ b/contracts/schemas/plans/provisioning-plan-v1.json @@ -117,7 +117,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/provisioning-plan-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/provisioning-plan-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/plans/trial-cleanup-plan-v1.json b/contracts/schemas/plans/trial-cleanup-plan-v1.json index a22ecba75..8b09fc554 100644 --- a/contracts/schemas/plans/trial-cleanup-plan-v1.json +++ b/contracts/schemas/plans/trial-cleanup-plan-v1.json @@ -263,7 +263,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/trial-cleanup-plan-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/trial-cleanup-plan-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Schedule-independent cleanup intent carried by one admitted trial entry.", @@ -350,6 +350,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/processor-manifest/processor-manifest-v2.json b/contracts/schemas/processor-manifest/processor-manifest-v2.json index 5aae39c9d..4581d8bc2 100644 --- a/contracts/schemas/processor-manifest/processor-manifest-v2.json +++ b/contracts/schemas/processor-manifest/processor-manifest-v2.json @@ -283,7 +283,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/processor-manifest-v2.json", + "$id": "https://raesystem.github.io/rae/schemas/processor-manifest-v2.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/profiles/backend-profile-v1.json b/contracts/schemas/profiles/backend-profile-v1.json index edad27274..c194da0f9 100644 --- a/contracts/schemas/profiles/backend-profile-v1.json +++ b/contracts/schemas/profiles/backend-profile-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/backend-profile-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/backend-profile-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published backend capability profile (closed-world).", diff --git a/contracts/schemas/profiles/raes-semantic-invariants-v1.json b/contracts/schemas/profiles/raes-semantic-invariants-v1.json index e0ef6bc52..746e92e08 100644 --- a/contracts/schemas/profiles/raes-semantic-invariants-v1.json +++ b/contracts/schemas/profiles/raes-semantic-invariants-v1.json @@ -100,7 +100,7 @@ "type": "boolean" }, "uri": { - "const": "https://raes.dev/schemas/semantic-invariants/v1", + "const": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1", "title": "Uri", "type": "string" } @@ -118,7 +118,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/semantic-invariants/v1", + "$id": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published shape for RAES semantic-invariant annotations.", @@ -156,7 +156,7 @@ "type": "string" }, "uri": { - "const": "https://raes.dev/schemas/semantic-invariants/v1", + "const": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1", "title": "Uri", "type": "string" } diff --git a/contracts/schemas/profiles/random-stream-profile-v1.json b/contracts/schemas/profiles/random-stream-profile-v1.json index 451389d81..5c867efc3 100644 --- a/contracts/schemas/profiles/random-stream-profile-v1.json +++ b/contracts/schemas/profiles/random-stream-profile-v1.json @@ -148,7 +148,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/random-stream-profile-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/random-stream-profile-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published random-stream profile: one closed, immutable compatibility unit.\n\nChanging any field mints a new ``profile_id`` (the EXP-718 preflight's \"One\nProfile And One Stateless API\" section). This model's JSON Schema is\ngenerated via ``schema_bundle()``, never hand-authored.", @@ -235,6 +235,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/profiles/random-stream-vector-v1.json b/contracts/schemas/profiles/random-stream-vector-v1.json index 02760cc79..8d50bdfe4 100644 --- a/contracts/schemas/profiles/random-stream-vector-v1.json +++ b/contracts/schemas/profiles/random-stream-vector-v1.json @@ -371,7 +371,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/random-stream-vector-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/random-stream-vector-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "One canonical cross-language conformance vector case.\n\nComputed independently of the reference engine (a throwaway script that\ncalls the ``blake3`` library directly), so the vector tests do not just\ntest the engine against itself.", @@ -458,6 +458,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/profiles/scientific-completeness-assessment-v1.json b/contracts/schemas/profiles/scientific-completeness-assessment-v1.json index 5848f2176..24b6f93c8 100644 --- a/contracts/schemas/profiles/scientific-completeness-assessment-v1.json +++ b/contracts/schemas/profiles/scientific-completeness-assessment-v1.json @@ -148,7 +148,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/scientific-completeness-assessment-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/scientific-completeness-assessment-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { @@ -233,6 +233,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/profiles/scientific-completeness-taxonomy-v1.json b/contracts/schemas/profiles/scientific-completeness-taxonomy-v1.json index 50ea27350..fe77f86fe 100644 --- a/contracts/schemas/profiles/scientific-completeness-taxonomy-v1.json +++ b/contracts/schemas/profiles/scientific-completeness-taxonomy-v1.json @@ -276,7 +276,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/scientific-completeness-taxonomy-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/scientific-completeness-taxonomy-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { @@ -358,6 +358,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/profiles/semantic-profile-v1.json b/contracts/schemas/profiles/semantic-profile-v1.json index e75ab9e8d..dff0034b7 100644 --- a/contracts/schemas/profiles/semantic-profile-v1.json +++ b/contracts/schemas/profiles/semantic-profile-v1.json @@ -92,7 +92,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/semantic-profile-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/semantic-profile-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/profiles/validation-basis-disclosure-v1.json b/contracts/schemas/profiles/validation-basis-disclosure-v1.json index e097c9507..a8121095f 100644 --- a/contracts/schemas/profiles/validation-basis-disclosure-v1.json +++ b/contracts/schemas/profiles/validation-basis-disclosure-v1.json @@ -552,7 +552,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/validation-basis-disclosure-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/validation-basis-disclosure-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published wrapper adding ``schema_version`` around the embeddable disclosure core.", @@ -579,6 +579,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/profiles/validation-profile-catalog-v1.json b/contracts/schemas/profiles/validation-profile-catalog-v1.json index 5483184c9..f55f71454 100644 --- a/contracts/schemas/profiles/validation-profile-catalog-v1.json +++ b/contracts/schemas/profiles/validation-profile-catalog-v1.json @@ -187,7 +187,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/validation-profile-catalog-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/validation-profile-catalog-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { @@ -280,6 +280,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/provenance/sdl-lineage-ledger-v1.json b/contracts/schemas/provenance/sdl-lineage-ledger-v1.json index ca1f1b73a..91ecbf71e 100644 --- a/contracts/schemas/provenance/sdl-lineage-ledger-v1.json +++ b/contracts/schemas/provenance/sdl-lineage-ledger-v1.json @@ -575,7 +575,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/sdl-lineage-ledger-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/sdl-lineage-ledger-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/realization-envelope/realization-envelope-v1.json b/contracts/schemas/realization-envelope/realization-envelope-v1.json index bb9e27d2e..af9a25f0d 100644 --- a/contracts/schemas/realization-envelope/realization-envelope-v1.json +++ b/contracts/schemas/realization-envelope/realization-envelope-v1.json @@ -761,7 +761,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/realization-envelope-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/realization-envelope-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published backend carrier: shared set expression plus truthful realization claims.", @@ -986,6 +986,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/satisfiability/scenario-satisfiability-evidence-v1.json b/contracts/schemas/satisfiability/scenario-satisfiability-evidence-v1.json index afe93d0b1..7ae257c77 100644 --- a/contracts/schemas/satisfiability/scenario-satisfiability-evidence-v1.json +++ b/contracts/schemas/satisfiability/scenario-satisfiability-evidence-v1.json @@ -22189,7 +22189,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/scenario-satisfiability-evidence-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/scenario-satisfiability-evidence-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Closed evidence envelope binding source, model, solver, and result.", @@ -22316,6 +22316,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/sdl/instantiated-scenario-snapshot-v1.json b/contracts/schemas/sdl/instantiated-scenario-snapshot-v1.json index e073b2fff..1117100b5 100644 --- a/contracts/schemas/sdl/instantiated-scenario-snapshot-v1.json +++ b/contracts/schemas/sdl/instantiated-scenario-snapshot-v1.json @@ -27251,7 +27251,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/instantiated-scenario-snapshot-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/instantiated-scenario-snapshot-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Sealed canonical envelope for one portable instantiated artifact.", @@ -27329,6 +27329,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/sdl/instantiated-scenario-v1.json b/contracts/schemas/sdl/instantiated-scenario-v1.json index f25c1f524..1011cab08 100644 --- a/contracts/schemas/sdl/instantiated-scenario-v1.json +++ b/contracts/schemas/sdl/instantiated-scenario-v1.json @@ -26608,7 +26608,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/instantiated-scenario-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/instantiated-scenario-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Scenario with all ``${var}`` references resolved to concrete values.\n\nUnlike the authoring-input contract, an instantiated scenario MUST NOT\ncontain any unresolved ``${name}`` substitution token in any string value,\nwhether a whole-string placeholder (``\"${os}\"``) or embedded\n(``\"host-${index}\"``). The invariant is enforced both by the model\nvalidator below and by the published ``instantiated-scenario-v1`` JSON\nSchema, which forbids the token in every string field. The schema is\nIf a resolved variable value itself introduces a literal ``${name}``\nsequence, the single-pass substitution step does not interpret it as a\nsecond substitution request; final model admission still treats the result\nas non-concrete and rejects the public instantiation.", @@ -27308,6 +27308,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/sdl/scenario-instantiation-request-v1.json b/contracts/schemas/sdl/scenario-instantiation-request-v1.json index 8d0ac84ed..040ef81fe 100644 --- a/contracts/schemas/sdl/scenario-instantiation-request-v1.json +++ b/contracts/schemas/sdl/scenario-instantiation-request-v1.json @@ -1,5 +1,5 @@ { - "$id": "https://raes.dev/schemas/scenario-instantiation-request-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/scenario-instantiation-request-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { diff --git a/contracts/schemas/sdl/sdl-authoring-input-v1.json b/contracts/schemas/sdl/sdl-authoring-input-v1.json index 4e7ce6440..761eca048 100644 --- a/contracts/schemas/sdl/sdl-authoring-input-v1.json +++ b/contracts/schemas/sdl/sdl-authoring-input-v1.json @@ -22376,7 +22376,7 @@ "type": "string" } }, - "$id": "https://raes.dev/schemas/sdl-authoring-input-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/sdl-authoring-input-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Normalized SDL authoring object.\n\nThis model applies after ``sdl-yaml/v1`` source-profile checks, structural\nkey canonicalization, shorthand expansion, enum normalization, and typed\nconstruction, but before module expansion and instantiation. Its JSON\nSchema does not validate YAML presentation details.", @@ -23145,7 +23145,7 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" }, "x-raes-source-profile": "sdl-yaml/v1", "x-raes-validates-raw-source": false diff --git a/contracts/schemas/snapshots/runtime-snapshot-v1.json b/contracts/schemas/snapshots/runtime-snapshot-v1.json index e0823ece6..7456389a9 100644 --- a/contracts/schemas/snapshots/runtime-snapshot-v1.json +++ b/contracts/schemas/snapshots/runtime-snapshot-v1.json @@ -8144,7 +8144,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/runtime-snapshot-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/runtime-snapshot-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Published envelope for a live runtime snapshot.\n\nParticipant episode surfaces (``participant_episode_results`` and\n``participant_episode_history``) are both keyed by the stable\n``participant_address`` of the participant the state/history belongs\nto. SEM-208 participant behavior history is keyed the same way and\nrecords action, observation, and state-transition events with compiled\nbehavior-contract addresses. The episode results map carries the\ncurrently-live episode state per participant; prior episodes survive only\nthrough append-only history streams and the ``previous_episode_id`` chain\non each state.", @@ -8362,6 +8362,6 @@ "id": "raes-semantic-invariants-v1", "keyword": "x-raes-invariants", "required": true, - "uri": "https://raes.dev/schemas/semantic-invariants/v1" + "uri": "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" } } diff --git a/contracts/schemas/time/realized-time-model-v1.json b/contracts/schemas/time/realized-time-model-v1.json index 3bb95ec5d..04e332c15 100644 --- a/contracts/schemas/time/realized-time-model-v1.json +++ b/contracts/schemas/time/realized-time-model-v1.json @@ -693,7 +693,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/realized-time-model-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/realized-time-model-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Run-scoped declaration/realization comparison and apparatus evidence.", diff --git a/contracts/schemas/time/time-model-v1.json b/contracts/schemas/time/time-model-v1.json index efe2990c9..67e202e0b 100644 --- a/contracts/schemas/time/time-model-v1.json +++ b/contracts/schemas/time/time-model-v1.json @@ -479,7 +479,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/time-model-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/time-model-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Canonical backend-neutral declaration compiled from authored SDL.", diff --git a/contracts/schemas/time/time-runtime-state-v1.json b/contracts/schemas/time/time-runtime-state-v1.json index 4f27ba57b..9afc47e10 100644 --- a/contracts/schemas/time/time-runtime-state-v1.json +++ b/contracts/schemas/time/time-runtime-state-v1.json @@ -175,7 +175,7 @@ "type": "object" } }, - "$id": "https://raes.dev/schemas/time-runtime-state-v1.json", + "$id": "https://raesystem.github.io/rae/schemas/time-runtime-state-v1.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "Typed observable state for all clocks governed by one declaration.", diff --git a/docs/decisions/adrs/adr-096-identity-cutover-and-historical-record-boundary.md b/docs/decisions/adrs/adr-096-identity-cutover-and-historical-record-boundary.md index b65e08de1..d3d56b216 100644 --- a/docs/decisions/adrs/adr-096-identity-cutover-and-historical-record-boundary.md +++ b/docs/decisions/adrs/adr-096-identity-cutover-and-historical-record-boundary.md @@ -135,3 +135,5 @@ validation, or evidence semantics beyond their identity-bearing values. | Date | Commit/PR | Summary | |---|---|---| | 2026-07-26 | #908 | Retained the existing SonarCloud project key as an exact, content-bound external-service designation; it is not a current RAES product identity or a general compatibility allowance. | +| 2026-07-27 | #908 | Corrected the canonical published-schema URI root. The root recorded above, `https://raes.dev/schemas/`, names a domain this project does not control, and neither did the retired-identity domain it replaced. The canonical root is now `https://raesystem.github.io/rae/schemas/`, which is bound to the repository's own GitHub organisation and is therefore uniquely ours to assign. `$id` remains an identifier and is not required to resolve, so no DNS or hosting obligation follows from it. | +| 2026-07-28 | #908 | Split the release-history boundary for bot-maintained files. A whole-file digest cannot hold for `CHANGELOG.md`, which release-please rewrites on every release by inserting each new section above the existing ones; the pin went stale at v2.0.0 and the gate was overridden rather than fixed. Such files are now classified `generated-release-history`, which pins the classified tail exactly and holds everything written above it to the live-tree rule of zero retired identity occurrences. Newly generated content therefore carries no historical exemption. | diff --git a/docs/decisions/adrs/adr-index.yaml b/docs/decisions/adrs/adr-index.yaml index 7c028c0e6..dfe9419f2 100644 --- a/docs/decisions/adrs/adr-index.yaml +++ b/docs/decisions/adrs/adr-index.yaml @@ -449,6 +449,12 @@ adrs: - date: 2026-07-26 ref: "#908" summary: "Retained the existing SonarCloud project key as an exact, content-bound external-service designation rather than a current RAES product identity." + - date: 2026-07-27 + ref: "#908" + summary: "Repointed the canonical published-schema URI root from the uncontrolled raes.dev domain to the repository-owned https://raesystem.github.io/rae/schemas/ root." + - date: 2026-07-28 + ref: "#908" + summary: "Added the generated-release-history record class so bot-maintained release notes pin their classified tail exactly while newly generated content is held to zero retired identity occurrences." - id: ADR-098 path: docs/decisions/adrs/adr-098-portable-artifact-requirement-satisfaction.md pin: cabc306d07b60b7d1c62cf85750a57025651e69f55946261e315d772644309e3 diff --git a/docs/migration/raes-rename.md b/docs/migration/raes-rename.md index 07fea0daf..104242cd6 100644 --- a/docs/migration/raes-rename.md +++ b/docs/migration/raes-rename.md @@ -13,7 +13,7 @@ does not retain public aliases or dual-name compatibility. | Python distribution and imports | `raes` and the owning `raes_*` packages | installed wheel and source-boundary tests | | CLI and MCP commands | `raes`, `raes-mcp` | CLI and MCP construction tests | | MCP server and tools | RAES server metadata and `raes_*` tool identifiers | advertised-tool and guidance tests | -| Published schema namespace | `https://raes.dev/schemas/` | generated parity and schema-publication checks | +| Published schema namespace | `https://raesystem.github.io/rae/schemas/` | generated parity and schema-publication checks | | Contract/profile identities | RAES contract, profile, annotation, and wire identifiers | contract models, fixtures, JSON Schema validation | | Module artifacts | `raes.lock.json`, `raes-trust.yaml`, `.raes/module-cache`, RAES OCI media types and labels | registry, digest, signature, archive, and CLI tests | | Runtime and evidence artifacts | RAES schema names, event/status values, evidence ids, and resource names | DTO, fixture, persistence, and backend tests | diff --git a/implementations/python/packages/raes_contracts/contracts/base.py b/implementations/python/packages/raes_contracts/contracts/base.py index 9c7fd631a..9ee5779dc 100644 --- a/implementations/python/packages/raes_contracts/contracts/base.py +++ b/implementations/python/packages/raes_contracts/contracts/base.py @@ -258,7 +258,7 @@ def _validate_claim_strength(self) -> BehavioralClaimBindingModel: ) -_RAES_SEMANTIC_INVARIANT_PROFILE_URI = "https://raes.dev/schemas/semantic-invariants/v1" +_RAES_SEMANTIC_INVARIANT_PROFILE_URI = "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" def _canonical_digest(digest: str | None) -> str | None: diff --git a/implementations/python/packages/raes_contracts/contracts/schema_constraints.py b/implementations/python/packages/raes_contracts/contracts/schema_constraints.py index 7278aea38..d3f0a77fc 100644 --- a/implementations/python/packages/raes_contracts/contracts/schema_constraints.py +++ b/implementations/python/packages/raes_contracts/contracts/schema_constraints.py @@ -270,7 +270,7 @@ def _attach_instantiation_invariants(contract_id: str, json_schema: dict[str, An def _schema_id_for_contract_id(contract_id: str) -> str: if contract_id == "raes-semantic-invariants-v1": return _RAES_SEMANTIC_INVARIANT_PROFILE_URI - return f"https://raes.dev/schemas/{contract_id}.json" + return f"https://raesystem.github.io/rae/schemas/{contract_id}.json" def _attach_json_schema_metadata(contract_id: str, json_schema: dict[str, Any]) -> None: @@ -350,7 +350,7 @@ class RaesSemanticInvariantProfileModel(ContractModel): schema_version: Literal[_RAES_SEMANTIC_INVARIANTS_SCHEMA_VERSION] profile_id: Literal["raes-semantic-invariants-v1"] - uri: Literal["https://raes.dev/schemas/semantic-invariants/v1"] + uri: Literal["https://raesystem.github.io/rae/schemas/semantic-invariants/v1"] keyword: Literal["x-raes-invariants"] invariant_entry_schema: Literal["#/$defs/RaesSemanticInvariantEntryModel"] profile_reference_schema: Literal["#/$defs/RaesSemanticInvariantProfileReferenceModel"] @@ -361,7 +361,7 @@ class RaesSemanticInvariantProfileReferenceModel(ContractModel): """Host-schema reference to the RAES semantic-invariant profile.""" id: Literal["raes-semantic-invariants-v1"] - uri: Literal["https://raes.dev/schemas/semantic-invariants/v1"] + uri: Literal["https://raesystem.github.io/rae/schemas/semantic-invariants/v1"] contract_id: NonEmptyString keyword: Literal["x-raes-invariants"] required: Literal[True] diff --git a/implementations/python/tests/test_concept_authority.py b/implementations/python/tests/test_concept_authority.py index 3192093be..9cb66884f 100644 --- a/implementations/python/tests/test_concept_authority.py +++ b/implementations/python/tests/test_concept_authority.py @@ -117,7 +117,7 @@ def test_native_family_rejects_authority_metadata(): description="SDL scenarios.", provenance=ConceptProvenanceCategory.NATIVE, authority="RAES", - authority_reference="https://raes.dev/concepts", + authority_reference="https://raesystem.github.io/rae/concepts", extension_scope="SDL-native scenario authoring constructs.", relation_rules=["Must remain the scenario authoring layer."], non_ambiguity_constraints=["Must not redefine adopted cyber-domain families."], diff --git a/implementations/python/tests/test_identity_cutover_policy.py b/implementations/python/tests/test_identity_cutover_policy.py index 9a5938a08..d8158ce83 100644 --- a/implementations/python/tests/test_identity_cutover_policy.py +++ b/implementations/python/tests/test_identity_cutover_policy.py @@ -59,18 +59,36 @@ def _binding(path: str, content: bytes, *, occurrences: int = 1) -> dict[str, ob } +def _generated_record( + path: str, + tail: bytes, + *, + occurrences: int = 1, +) -> dict[str, object]: + return { + "path": path, + "record_class": "generated-release-history", + "rationale": "Pins the classified tail of a bot-maintained release history.", + "occurrences": occurrences, + "content_sha256": hashlib.sha256(tail).hexdigest(), + "classified_suffix_bytes": len(tail), + } + + def _seed_repo( repo_root: Path, *, files: dict[str, str | bytes], records: list[dict[str, object]] | None = None, bindings: list[dict[str, object]] | None = None, + generated: list[dict[str, object]] | None = None, ) -> None: for relative_path, content in files.items(): _write(repo_root / relative_path, content) manifest = { - "schema_version": "historical-identity-records/v2", + "schema_version": "historical-identity-records/v3", "hash_algorithm": "sha256", + "generated_history_records": generated or [], "operational_bindings": bindings or [], "records": records or [], } @@ -332,6 +350,98 @@ def test_unsafe_operational_binding_path_fails_closed(tmp_path: Path) -> None: assert "identity-cutover-manifest-path" in _manifest_rule_ids(tmp_path) +_GENERATED_PATH = "CHANGELOG.md" +_GENERATED_TAIL = f"## [1.0.0]\n\n* retained {RETIRED_UPPER} release note\n".encode() +_GENERATED_HEAD = b"# Changelog\n\n## [2.0.0]\n\n* a released feature\n\n" + + +def _seed_generated_history(repo_root: Path, content: bytes, tail: bytes = _GENERATED_TAIL) -> None: + _seed_repo( + repo_root, + files={_GENERATED_PATH: content}, + generated=[_generated_record(_GENERATED_PATH, tail)], + ) + + +def test_generated_release_history_tolerates_new_sections_above_the_classified_tail(tmp_path: Path) -> None: + """A release bot prepending a section must not turn the gate red.""" + _seed_generated_history(tmp_path, _GENERATED_HEAD + _GENERATED_TAIL) + + assert evaluate_identity_cutover(tmp_path) == [] + + +def test_generated_release_history_rejects_retired_identity_in_generated_head(tmp_path: Path) -> None: + head = f"# Changelog\n\n## [2.0.0]\n\n* revive the {RETIRED_LOWER}-invariants profile\n\n".encode() + _seed_generated_history(tmp_path, head + _GENERATED_TAIL) + + assert "identity-cutover-generated-head" in _manifest_rule_ids(tmp_path) + + +def test_generated_release_history_rejects_edited_tail(tmp_path: Path) -> None: + edited_tail = _GENERATED_TAIL.replace(b"1.0.0", b"1.0.1") + _seed_generated_history(tmp_path, _GENERATED_HEAD + edited_tail) + + assert "identity-cutover-generated-content" in _manifest_rule_ids(tmp_path) + + +def test_generated_release_history_rejects_truncated_tail(tmp_path: Path) -> None: + _seed_generated_history(tmp_path, _GENERATED_TAIL[:4]) + + assert "identity-cutover-generated-content" in _manifest_rule_ids(tmp_path) + + +def test_generated_release_history_verifies_tail_occurrence_count(tmp_path: Path) -> None: + _seed_repo( + tmp_path, + files={_GENERATED_PATH: _GENERATED_HEAD + _GENERATED_TAIL}, + generated=[_generated_record(_GENERATED_PATH, _GENERATED_TAIL, occurrences=2)], + ) + + assert "identity-cutover-generated-count" in _manifest_rule_ids(tmp_path) + + +def test_generated_release_history_path_must_be_tracked(tmp_path: Path) -> None: + _seed_generated_history(tmp_path, _GENERATED_HEAD + _GENERATED_TAIL) + (tmp_path / _GENERATED_PATH).unlink() + _git(tmp_path, "rm", "--cached", "-q", _GENERATED_PATH) + + assert "identity-cutover-manifest-path" in _manifest_rule_ids(tmp_path) + + +def test_generated_release_history_rejects_non_positive_suffix_bytes(tmp_path: Path) -> None: + record = _generated_record(_GENERATED_PATH, _GENERATED_TAIL) + record["classified_suffix_bytes"] = 0 + _seed_repo( + tmp_path, + files={_GENERATED_PATH: _GENERATED_HEAD + _GENERATED_TAIL}, + generated=[record], + ) + + assert "identity-cutover-manifest" in _manifest_rule_ids(tmp_path) + + +def test_generated_release_history_rejects_duplicate_content_bound_path(tmp_path: Path) -> None: + content = _GENERATED_HEAD + _GENERATED_TAIL + _seed_repo( + tmp_path, + files={_GENERATED_PATH: content}, + records=[_record(_GENERATED_PATH, content, record_class="release-history")], + generated=[_generated_record(_GENERATED_PATH, _GENERATED_TAIL)], + ) + + assert "identity-cutover-manifest" in _manifest_rule_ids(tmp_path) + + +def test_repository_changelog_is_bound_as_generated_release_history() -> None: + """The real CHANGELOG must stay on the append-tolerant class, not a whole-file pin.""" + manifest = json.loads((REPO_ROOT / MANIFEST_PATH).read_text(encoding="utf-8")) + generated = {entry["path"] for entry in manifest["generated_history_records"]} + pinned = {entry["path"] for entry in manifest["records"]} + + assert "CHANGELOG.md" in generated + assert "CHANGELOG.md" not in pinned + + def test_identity_cutover_check_is_registered_in_canonical_policy_graph() -> None: noxfile_source = (REPO_ROOT / "noxfile.py").read_text(encoding="utf-8") assert '"tools/check_identity_cutover.py"' in noxfile_source diff --git a/implementations/python/tests/test_participant_backend_contracts.py b/implementations/python/tests/test_participant_backend_contracts.py index d772186ee..db8a66fcd 100644 --- a/implementations/python/tests/test_participant_backend_contracts.py +++ b/implementations/python/tests/test_participant_backend_contracts.py @@ -79,7 +79,7 @@ def test_participant_backend_contracts_are_published_closed_world(): assert contract_id in generated schema = generated[contract_id] assert schema["$schema"] == "https://json-schema.org/draft/2020-12/schema" - assert schema["$id"] == f"https://raes.dev/schemas/{contract_id}.json" + assert schema["$id"] == f"https://raesystem.github.io/rae/schemas/{contract_id}.json" assert schema["additionalProperties"] is False diff --git a/implementations/python/tests/test_pr_title_guard.py b/implementations/python/tests/test_pr_title_guard.py index a3f0bb721..109c50f9b 100644 --- a/implementations/python/tests/test_pr_title_guard.py +++ b/implementations/python/tests/test_pr_title_guard.py @@ -23,8 +23,10 @@ from tools.check_pr_title import ( # noqa: E402 BRANDED_PREFIXES, CONVENTIONAL_TYPES, + RETIRED_IDENTITY_PATTERN, RULE_AGENT_BRAND, RULE_CONVENTIONAL, + RULE_RETIRED_IDENTITY, RULE_SUBJECT_LOWERCASE, main, validate_pr_title, @@ -148,6 +150,124 @@ def test_cli_missing_title_fails_closed(tmp_path: Path) -> None: assert main(["--event-path", str(empty)]) != 0 +# --- Retired project naming in changelog-bound text (issue #908) --- + +_RETIRED_LOWER = "a" + "ces" +_RETIRED_UPPER = "A" + "CES" + + +@pytest.mark.parametrize( + "title", + [ + f"fix: drop the {_RETIRED_UPPER} compatibility shim", + f"feat: publish {_RETIRED_LOWER}-invariants v2", + f"refactor: rename {_RETIRED_LOWER}_boundaries", + ], +) +def test_retired_identity_in_title_is_rejected(title: str) -> None: + assert RULE_RETIRED_IDENTITY in _rule_ids(title) + + +@pytest.mark.parametrize( + "title", + [ + "fix: rework surfaces and interfaces in namespaces", + "refactor: replace traces with spans", + "feat: repoint schema namespace to raesystem.github.io", + ], +) +def test_words_containing_the_retired_token_are_not_matched(title: str) -> None: + """The rule is word-boundary anchored; 'surfaces' must not trip it.""" + assert RULE_RETIRED_IDENTITY not in _rule_ids(title) + + +def test_retired_identity_in_breaking_change_footer_is_rejected() -> None: + body = f"Some prose.\n\nBREAKING CHANGE: {_RETIRED_LOWER}-invariants is removed.\n" + violations = validate_pr_title("fix: tidy identifiers", body) + + assert RULE_RETIRED_IDENTITY in {v.rule_id for v in violations} + + +def test_retired_identity_in_body_prose_is_allowed() -> None: + """Explaining the retired name is legitimate; only footers reach the changelog.""" + body = f"This PR finishes migrating away from {_RETIRED_UPPER}. Historical records keep the name.\n" + + assert validate_pr_title("fix: tidy identifiers", body) == [] + + +def test_multiline_breaking_change_footer_is_checked_in_full() -> None: + body = f"BREAKING CHANGE: identifiers move.\nConsumers pinning {_RETIRED_LOWER}-invariants must update.\n" + violations = validate_pr_title("fix: tidy identifiers", body) + + assert RULE_RETIRED_IDENTITY in {v.rule_id for v in violations} + + +def test_retired_identity_reported_alongside_shape_violations() -> None: + """A malformed *and* retired-named title must report both, not just the shape.""" + rule_ids = _rule_ids(f"not-a-type: drop {_RETIRED_UPPER}") + + assert RULE_RETIRED_IDENTITY in rule_ids + assert RULE_CONVENTIONAL in rule_ids + + +def test_retired_identity_pattern_matches_the_identity_cutover_gate() -> None: + """The text pattern here must not drift from the bytes pattern in the gate. + + ``check_pr_title`` is stdlib-only and cannot import the gate (which pulls in + PyYAML), so equivalence is asserted rather than shared. + """ + from tools.check_identity_cutover import IDENTITY_PATTERN + + samples = [ + f"{_RETIRED_UPPER}", + f"{_RETIRED_LOWER}-invariants", + f"{_RETIRED_LOWER}_boundaries", + f"{_RETIRED_LOWER}.dev", + "surfaces", + "interfaces", + "namespaces", + "raes", + f"pl{_RETIRED_LOWER}", + f"drop the {_RETIRED_UPPER} shim", + ] + for sample in samples: + text_matches = RETIRED_IDENTITY_PATTERN.findall(sample) + byte_matches = [m.decode() for m in IDENTITY_PATTERN.findall(sample.encode())] + assert text_matches == byte_matches, sample + + +def test_cli_checks_commit_messages_file(tmp_path: Path) -> None: + """Squash uses COMMIT_MESSAGES, so commit footers are the changelog-bound text.""" + messages = tmp_path / "commits.txt" + messages.write_text( + f"fix: something\n\nBREAKING CHANGE: {_RETIRED_LOWER}-invariants is removed.\n", + encoding="utf-8", + ) + + assert main(["--title", "fix: a clean title", "--commit-messages-file", str(messages)]) == 1 + + +def test_cli_commit_messages_prose_is_allowed(tmp_path: Path) -> None: + messages = tmp_path / "commits.txt" + messages.write_text( + f"fix: something\n\nExplains the move away from {_RETIRED_UPPER} naming.\n", + encoding="utf-8", + ) + + assert main(["--title", "fix: a clean title", "--commit-messages-file", str(messages)]) == 0 + + +def test_cli_unreadable_commit_messages_file_fails_closed(tmp_path: Path) -> None: + missing = tmp_path / "absent.txt" + + assert main(["--title", "fix: a clean title", "--commit-messages-file", str(missing)]) == 2 + + +def test_body_is_optional() -> None: + assert validate_pr_title("fix: a clean title") == [] + assert validate_pr_title("fix: a clean title", None) == [] + + @pytest.mark.integration def test_cli_subprocess_runs_standalone(tmp_path: Path) -> None: # The CI workflow runs the checker as a bare stdlib script; prove it needs diff --git a/implementations/python/tests/test_runtime_contracts.py b/implementations/python/tests/test_runtime_contracts.py index 7bb484c4c..dd576598e 100644 --- a/implementations/python/tests/test_runtime_contracts.py +++ b/implementations/python/tests/test_runtime_contracts.py @@ -127,7 +127,7 @@ def test_closed_world_contract_models_for_runtime_envelopes(): for contract_id, schema in generated.items(): assert schema["$schema"] == "https://json-schema.org/draft/2020-12/schema" - assert schema["$id"].startswith("https://raes.dev/schemas/") + assert schema["$id"].startswith("https://raesystem.github.io/rae/schemas/") validate_raes_semantic_invariant_annotations(contract_id, schema) assert generated["raes-semantic-invariants-v1"]["additionalProperties"] is False @@ -175,7 +175,10 @@ def test_experiment_core_schemas_publish_closed_world_contracts(): run_schema = generated["experiment-run-v1"] study_schema = generated["experiment-study-v1"] - assert task_schema["x-raes-semantic-profile"]["uri"] == "https://raes.dev/schemas/semantic-invariants/v1" + assert ( + task_schema["x-raes-semantic-profile"]["uri"] + == "https://raesystem.github.io/rae/schemas/semantic-invariants/v1" + ) assert "apparatus-archival-times-rfc3339-valid" in _invariant_ids(apparatus_context_schema) assert run_schema["x-raes-semantic-profile"]["required"] is True assert study_schema["x-raes-semantic-profile"]["keyword"] == "x-raes-invariants" diff --git a/tools/check_identity_cutover.py b/tools/check_identity_cutover.py index f8fd894d6..e9a8e1407 100644 --- a/tools/check_identity_cutover.py +++ b/tools/check_identity_cutover.py @@ -23,7 +23,7 @@ ) MANIFEST_PATH = "tools/policy/historical_identity_records.json" -MANIFEST_SCHEMA = "historical-identity-records/v2" +MANIFEST_SCHEMA = "historical-identity-records/v3" MAX_MANIFEST_BYTES = 1_000_000 SHA256_RE = re.compile(r"^[0-9a-f]{64}$") IDENTITY_PATTERN = re.compile( @@ -43,6 +43,7 @@ "research-record", } OPERATIONAL_BINDING_CLASSES = {"external-service-project-key"} +GENERATED_HISTORY_CLASSES = {"generated-release-history"} RULE_LIVE = "identity-cutover-live-token" RULE_MANIFEST = "identity-cutover-manifest" @@ -51,6 +52,9 @@ RULE_HISTORICAL_COUNT = "identity-cutover-historical-count" RULE_OPERATIONAL_CONTENT = "identity-cutover-operational-content" RULE_OPERATIONAL_COUNT = "identity-cutover-operational-count" +RULE_GENERATED_CONTENT = "identity-cutover-generated-content" +RULE_GENERATED_COUNT = "identity-cutover-generated-count" +RULE_GENERATED_HEAD = "identity-cutover-generated-head" RULE_TRACKED_TREE = "identity-cutover-tracked-tree" @@ -72,13 +76,36 @@ class OperationalBinding: content_sha256: str +@dataclass(frozen=True) +class GeneratedHistoryRecord: + """A record whose immutable history is a suffix and whose head is machine-written. + + ``release-history`` pins a whole file, which cannot hold for a file a release + bot rewrites. release-please inserts each new release above the existing ones, + so the retired-identity exemption is bound to the classified tail while the + generated head is held to the stricter live-tree rule of zero occurrences. + """ + + path: str + record_class: str + rationale: str + occurrences: int + content_sha256: str + classified_suffix_bytes: int + + def _manifest_failure(message: str) -> PolicyFailure: return PolicyFailure(RULE_MANIFEST, message, MANIFEST_PATH) def _load_historical_records( repo_root: Path, -) -> tuple[dict[str, HistoricalRecord], dict[str, OperationalBinding], list[PolicyFailure]]: +) -> tuple[ + dict[str, HistoricalRecord], + dict[str, OperationalBinding], + dict[str, GeneratedHistoryRecord], + list[PolicyFailure], +]: try: payload = load_bounded_json_object( repo_root, @@ -86,7 +113,7 @@ def _load_historical_records( max_bytes=MAX_MANIFEST_BYTES, ) except (OSError, UnicodeDecodeError, ValueError) as exc: - return {}, {}, [_manifest_failure(str(exc))] + return {}, {}, {}, [_manifest_failure(str(exc))] failures: list[PolicyFailure] = [] if payload.get("schema_version") != MANIFEST_SCHEMA: @@ -96,11 +123,15 @@ def _load_historical_records( raw_records = payload.get("records") if not isinstance(raw_records, list): failures.append(_manifest_failure("records must be a list")) - return {}, {}, failures + return {}, {}, {}, failures raw_bindings = payload.get("operational_bindings") if not isinstance(raw_bindings, list): failures.append(_manifest_failure("operational_bindings must be a list")) - return {}, {}, failures + return {}, {}, {}, failures + raw_generated = payload.get("generated_history_records") + if not isinstance(raw_generated, list): + failures.append(_manifest_failure("generated_history_records must be a list")) + return {}, {}, {}, failures records: dict[str, HistoricalRecord] = {} expected_keys = { @@ -210,7 +241,79 @@ def _load_historical_records( occurrences=occurrences, content_sha256=content_sha256, ) - return records, bindings, failures + + generated: dict[str, GeneratedHistoryRecord] = {} + generated_keys = { + "path", + "record_class", + "rationale", + "occurrences", + "content_sha256", + "classified_suffix_bytes", + } + for index, raw_record in enumerate(raw_generated): + if not isinstance(raw_record, dict): + failures.append(_manifest_failure(f"generated_history_records[{index}] must be an object")) + continue + if set(raw_record) != generated_keys: + failures.append( + _manifest_failure(f"generated_history_records[{index}] must contain exactly {sorted(generated_keys)!r}") + ) + continue + path = raw_record.get("path") + record_class = raw_record.get("record_class") + rationale = raw_record.get("rationale") + occurrences = raw_record.get("occurrences") + content_sha256 = raw_record.get("content_sha256") + suffix_bytes = raw_record.get("classified_suffix_bytes") + if not isinstance(path, str) or not path: + failures.append(_manifest_failure(f"generated_history_records[{index}].path must be a non-empty string")) + continue + if path in records or path in bindings or path in generated: + failures.append(_manifest_failure(f"duplicate content-bound path {path!r}")) + continue + if safe_repo_path(repo_root, path) is None: + failures.append(PolicyFailure(RULE_MANIFEST_PATH, "generated history path is unsafe", path)) + continue + if record_class not in GENERATED_HISTORY_CLASSES: + failures.append( + _manifest_failure( + f"generated_history_records[{index}].record_class must be one of " + f"{sorted(GENERATED_HISTORY_CLASSES)!r}" + ) + ) + continue + if not isinstance(rationale, str) or not rationale.strip(): + failures.append(_manifest_failure(f"generated_history_records[{index}].rationale must be non-empty")) + continue + if isinstance(occurrences, bool) or not isinstance(occurrences, int) or occurrences < 1: + failures.append( + _manifest_failure(f"generated_history_records[{index}].occurrences must be a positive integer") + ) + continue + if not isinstance(content_sha256, str) or not SHA256_RE.fullmatch(content_sha256): + failures.append( + _manifest_failure( + f"generated_history_records[{index}].content_sha256 must be a lowercase sha256 digest" + ) + ) + continue + if isinstance(suffix_bytes, bool) or not isinstance(suffix_bytes, int) or suffix_bytes < 1: + failures.append( + _manifest_failure( + f"generated_history_records[{index}].classified_suffix_bytes must be a positive integer" + ) + ) + continue + generated[path] = GeneratedHistoryRecord( + path=path, + record_class=record_class, + rationale=rationale, + occurrences=occurrences, + content_sha256=content_sha256, + classified_suffix_bytes=suffix_bytes, + ) + return records, bindings, generated, failures def _tracked_paths(repo_root: Path) -> tuple[list[str], list[PolicyFailure]]: @@ -231,8 +334,72 @@ def _match_lines(content: bytes, matches: list[re.Match[bytes]]) -> list[int]: return [content.count(b"\n", 0, match.start()) + 1 for match in matches] +def _evaluate_generated_history( + record: GeneratedHistoryRecord, + content: bytes, + relative_path: str, +) -> list[PolicyFailure]: + """Pin the classified tail exactly and hold the generated head to zero occurrences.""" + boundary = len(content) - record.classified_suffix_bytes + if boundary < 0: + return [ + PolicyFailure( + RULE_GENERATED_CONTENT, + ( + f"generated history record is {len(content)} bytes, shorter than its classified " + f"suffix of {record.classified_suffix_bytes} bytes; the immutable tail was truncated" + ), + relative_path, + ) + ] + + head, suffix = content[:boundary], content[boundary:] + failures: list[PolicyFailure] = [] + + digest = hashlib.sha256(suffix).hexdigest() + if digest != record.content_sha256: + failures.append( + PolicyFailure( + RULE_GENERATED_CONTENT, + "generated history record tail no longer matches its classified digest", + relative_path, + ) + ) + + suffix_matches = list(IDENTITY_PATTERN.finditer(suffix)) + if len(suffix_matches) != record.occurrences: + failures.append( + PolicyFailure( + RULE_GENERATED_COUNT, + ( + f"generated history record declares {record.occurrences} occurrences in its " + f"classified tail but contains {len(suffix_matches)}" + ), + relative_path, + ) + ) + + head_matches = list(IDENTITY_PATTERN.finditer(head)) + if head_matches: + lines = _match_lines(content, head_matches) + displayed = ", ".join(str(line) for line in lines[:8]) + suffix_note = "" if len(lines) <= 8 else f", plus {len(lines) - 8} more" + failures.append( + PolicyFailure( + RULE_GENERATED_HEAD, + ( + f"contains {len(head_matches)} retired identity occurrence(s) outside the classified " + f"tail at line(s) {displayed}{suffix_note}; newly generated content carries no exemption" + ), + relative_path, + ) + ) + + return failures + + def evaluate_identity_cutover(repo_root: Path = REPO_ROOT) -> list[PolicyFailure]: - records, bindings, failures = _load_historical_records(repo_root) + records, bindings, generated, failures = _load_historical_records(repo_root) tracked_paths, tracked_failures = _tracked_paths(repo_root) failures.extend(tracked_failures) if failures: @@ -255,6 +422,14 @@ def evaluate_identity_cutover(repo_root: Path = REPO_ROOT) -> list[PolicyFailure binding_path, ) ) + for generated_path in sorted(generated.keys() - tracked): + failures.append( + PolicyFailure( + RULE_MANIFEST_PATH, + "generated history record is not a tracked file", + generated_path, + ) + ) for relative_path in tracked_paths: path = safe_repo_path(repo_root, relative_path) @@ -279,6 +454,11 @@ def evaluate_identity_cutover(repo_root: Path = REPO_ROOT) -> list[PolicyFailure ) continue + generated_record = generated.get(relative_path) + if generated_record is not None: + failures.extend(_evaluate_generated_history(generated_record, content, relative_path)) + continue + matches = list(IDENTITY_PATTERN.finditer(content)) record = records.get(relative_path) binding = bindings.get(relative_path) diff --git a/tools/check_pr_title.py b/tools/check_pr_title.py index e28cd79de..abd9838d7 100644 --- a/tools/check_pr_title.py +++ b/tools/check_pr_title.py @@ -15,6 +15,21 @@ * Enforce the Ground Control ``/implement`` Step 9 conventional title shape ``(): `` with a single allowed type. * Require the subject to start lowercase (``^[a-z].*$``). + * Reject retired project naming in the text that reaches ``CHANGELOG.md`` + (issue #908). A feature PR into ``dev`` is squash-merged, so its title + becomes the commit release-please reads, and any ``BREAKING CHANGE:`` + footer becomes a changelog entry. ``check_identity_cutover`` holds the + generated head of ``CHANGELOG.md`` to zero retired identity occurrences, + so without this rule a retired name in a title surfaces as a red release + PR days later instead of on the PR that introduced it. + + This repository squashes with ``squash_merge_commit_title=PR_TITLE`` and + ``squash_merge_commit_message=COMMIT_MESSAGES``, so the changelog-bound + text is the PR title plus the *commit messages* -- not the PR body. The + workflow supplies the commit messages via ``--commit-messages-file``; the + PR body is checked too, so the rule still holds if that setting changes. + Prose outside a breaking-change footer is never checked: discussing the + retired name is legitimate and does not reach the changelog. Security: the PR title is untrusted GitHub event data. The CLI reads it from ``$GITHUB_EVENT_PATH`` (parsed as JSON) or the ``PR_TITLE`` env var, never from @@ -62,10 +77,23 @@ #: Subject must start lowercase (matches the Step 9 rule). SUBJECT_PATTERN: str = r"^[a-z].*$" +#: Retired project naming, word-boundary anchored so ``surfaces``, +#: ``interfaces``, ``namespaces`` and friends do not match. This is the text +#: form of ``tools/check_identity_cutover.IDENTITY_PATTERN``; the two are held +#: equivalent by ``test_pr_title_guard`` rather than imported, because this +#: module is deliberately stdlib-only and the identity checker pulls in PyYAML. +RETIRED_IDENTITY_PATTERN: re.Pattern[str] = re.compile( + r"(? re.Pattern[str]: return re.compile(rf"^(?:{alternation})(?:\([^()\n]+\))?(?:!)?: (?P.+)$") +def _breaking_change_footers(body: str) -> list[str]: + """Return the ``BREAKING CHANGE:`` footer blocks release-please publishes. + + A footer runs from its marker to the next footer or the end of the body, so + a multi-line breaking-change description is checked in full. + """ + starts = [match.start() for match in BREAKING_CHANGE_FOOTER.finditer(body)] + if not starts: + return [] + bounds = starts + [len(body)] + return [body[bounds[index] : bounds[index + 1]] for index in range(len(starts))] + + +def _retired_identity_violations(title: str, body: str | None) -> list[TitleViolation]: + violations: list[TitleViolation] = [] + + title_matches = RETIRED_IDENTITY_PATTERN.findall(title) + if title_matches: + found = ", ".join(sorted(set(title_matches))) + violations.append( + TitleViolation( + RULE_RETIRED_IDENTITY, + "PR title must not contain retired project naming " + f"({found}). A feature PR into 'dev' is squash-merged, so this " + "title becomes the commit release-please writes into " + "CHANGELOG.md, where check_identity_cutover rejects it.", + ) + ) + + for footer in _breaking_change_footers(body or ""): + footer_matches = RETIRED_IDENTITY_PATTERN.findall(footer) + if not footer_matches: + continue + found = ", ".join(sorted(set(footer_matches))) + violations.append( + TitleViolation( + RULE_RETIRED_IDENTITY, + "BREAKING CHANGE footer must not contain retired project " + f"naming ({found}); release-please copies breaking-change " + "footers from the squashed commit messages into CHANGELOG.md. " + "Prose outside a footer is not checked.", + ) + ) + break + + return violations + + def validate_pr_title( title: str | None, + body: str | None = None, *, branded_prefixes: Sequence[str] = BRANDED_PREFIXES, types: Sequence[str] = CONVENTIONAL_TYPES, subject_pattern: str = SUBJECT_PATTERN, require_scope: bool = False, ) -> list[TitleViolation]: - """Validate ``title`` against the PR title policy and return violations. + """Validate ``title`` (and any changelog-bound part of ``body``) and return + violations. An empty list means the title is acceptable. """ @@ -127,6 +205,11 @@ def validate_pr_title( ) return violations + # Rule 4: retired project naming in changelog-bound text. Appended rather + # than returned so a title that is both malformed and retired-named reports + # both, and checked before the shape rules so it survives their early exit. + violations.extend(_retired_identity_violations(stripped, body)) + # Rule 2: conventional-commit shape with a single allowed type. match = _conventional_re(types).match(stripped) if match is None: @@ -162,14 +245,16 @@ def validate_pr_title( return violations -def _resolve_title(args: argparse.Namespace) -> str | None: - """Resolve the PR title without ever shell-interpolating untrusted data. +def _resolve_title(args: argparse.Namespace) -> tuple[str | None, str | None]: + """Resolve the PR title and body without shell-interpolating untrusted data. - Priority: explicit ``--title`` (local/testing) -> ``$GITHUB_EVENT_PATH`` - JSON (the CI path) -> ``PR_TITLE`` env var. + Priority: explicit ``--title``/``--body`` (local/testing) -> + ``$GITHUB_EVENT_PATH`` JSON (the CI path) -> ``PR_TITLE``/``PR_BODY`` env + vars. The body is optional everywhere; only its breaking-change footers are + inspected, and a missing body simply means there are none. """ if args.title is not None: - return args.title + return args.title, args.body event_path = args.event_path or os.environ.get("GITHUB_EVENT_PATH") if event_path: @@ -181,16 +266,18 @@ def _resolve_title(args: argparse.Namespace) -> str | None: f"pr-title-guard: could not read event JSON from {event_path}: {exc}", file=sys.stderr, ) - return None - title = (event.get("pull_request") or {}).get("title") + return None, None + pull_request = event.get("pull_request") or {} + title = pull_request.get("title") + body = pull_request.get("body") if title is None: print( "pr-title-guard: no pull_request.title in event payload.", file=sys.stderr, ) - return title + return title, (body if isinstance(body, str) else None) - return os.environ.get("PR_TITLE") + return os.environ.get("PR_TITLE"), os.environ.get("PR_BODY") def main(argv: Sequence[str] | None = None) -> int: @@ -202,6 +289,21 @@ def main(argv: Sequence[str] | None = None) -> int: default=None, help="PR title to validate directly (local/testing only).", ) + parser.add_argument( + "--body", + default=None, + help="PR body to validate alongside --title (local/testing only).", + ) + parser.add_argument( + "--commit-messages-file", + default=None, + help=( + "Path to a file holding the PR's commit messages. This repository " + "squashes with squash_merge_commit_message=COMMIT_MESSAGES, so " + "those messages -- not the PR body -- become the squash commit " + "body release-please reads for BREAKING CHANGE footers." + ), + ) parser.add_argument( "--event-path", default=None, @@ -209,7 +311,20 @@ def main(argv: Sequence[str] | None = None) -> int: ) args = parser.parse_args(argv) - title = _resolve_title(args) + title, body = _resolve_title(args) + if args.commit_messages_file: + try: + with open(args.commit_messages_file, encoding="utf-8") as handle: + commit_messages = handle.read() + except OSError as exc: + # Fail closed: the caller asked for commit messages to be checked. + print( + f"pr-title-guard: could not read commit messages from {args.commit_messages_file}: {exc}", + file=sys.stderr, + ) + return 2 + body = f"{body}\n\n{commit_messages}" if body else commit_messages + if title is None: # Fail closed: a pull_request event should always carry a title. print( @@ -218,7 +333,7 @@ def main(argv: Sequence[str] | None = None) -> int: ) return 2 - violations = validate_pr_title(title) + violations = validate_pr_title(title, body) if violations: print(f"pr-title-guard: rejected PR title: {title!r}", file=sys.stderr) for violation in violations: diff --git a/tools/policy/historical_identity_records.json b/tools/policy/historical_identity_records.json index c1a78b6ca..300127b0e 100644 --- a/tools/policy/historical_identity_records.json +++ b/tools/policy/historical_identity_records.json @@ -1,6 +1,16 @@ { - "schema_version": "historical-identity-records/v2", + "schema_version": "historical-identity-records/v3", "hash_algorithm": "sha256", + "generated_history_records": [ + { + "path": "CHANGELOG.md", + "record_class": "generated-release-history", + "rationale": "release-please rewrites this file on every release, inserting each new section above the existing ones, so a whole-file pin cannot hold. The classified tail carries the release notes published before the RAES identity cutover and is pinned exactly; everything release-please writes above it is held to the live-tree rule of zero retired identity occurrences.", + "occurrences": 297, + "content_sha256": "b3106e6e633e4045124ca19307c57c10efbfc87ccbb4048f415f0c4acbefcb3f", + "classified_suffix_bytes": 150639 + } + ], "operational_bindings": [ { "path": ".ground-control.yaml", @@ -18,13 +28,6 @@ } ], "records": [ - { - "path": "CHANGELOG.md", - "record_class": "release-history", - "rationale": "Preserves immutable release notes and links published before the RAES identity cutover.", - "occurrences": 297, - "content_sha256": "3a1154626ec846e91556113406701d22e69df203237c072adb2fa626ddc5c8f7" - }, { "path": "contracts/provenance/sdl-lineage-ledger-v1.json", "record_class": "provenance-record", @@ -499,7 +502,7 @@ "record_class": "historical-index", "rationale": "Indexes immutable pre-cutover ADR titles, paths, pins, and amendment summaries without making them current identity surf\u0061ces.", "occurrences": 4, - "content_sha256": "07647de85678b0bbc9b712a9af0ff61edddaa49955c44536a093f74a0898bba6" + "content_sha256": "bf67dc26ef70cd1ff977cc75caad187e76ec894267595d347c374abc0bb0647d" }, { "path": "docs/decisions/cage-2-replication-design.md",