Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@ The stable `scripts/core-contract.sh` wrapper and inactive resolver select this
generation together. This is a repo-only compatibility switch. It does not install
the resolver, select a live profile, or qualify a real forge.

The v2 registry also carries one complete, unselected evidence-identity correction.
It requires every passed evidence item to come from the exact selected execution;
incident mismatches remain valid only when all evidence is non-passing. The stable
wrapper still selects the prior v2 generation until a separate atomic cutover binds
the corrective generation's reviewed merge and publisher receipt.
The v2 registry also carries the selected evidence-identity correction. It requires
every passed evidence item to come from the exact selected execution; incident
mismatches remain valid only when all evidence is non-passing. The stable wrapper,
inactive resolver, Control closure, and scanner select it together. The prior
generation remains immutable and restorable.

## Inactive fake adapter contract matrix

Expand Down
17 changes: 9 additions & 8 deletions RESTORE.md
Original file line number Diff line number Diff line change
Expand Up @@ -295,9 +295,10 @@ descriptor-3 receipt, ordinary-call compatibility, cleanup, and byte-for-byte co
of the unchanged exports. It performs no install, activation, networked validation,
or target use.

`core/v2/` is the append-only inactive fake-forge generation selected by the stable
wrapper and inactive profile resolver. Restore its registry and complete generation
from one commit, then run:
`core/v2/` contains append-only inactive generations, including the unchanged
fake-forge generation. The stable wrapper and inactive profile resolver select the
evidence-identity correction. Restore the registry and both complete generations from
one commit, then run:

```sh
bash scripts/test/portable-core-v2-fake-forge.test.sh
Expand All @@ -308,18 +309,18 @@ materialization in a caller-disposable repository. The package is not qualified
It grants no credential, network, publish, push, merge, or remote branch-write
capability. The switch does not install the resolver or select a live profile.

Restore the complete unselected v2 evidence-identity generation, its dedicated
ledger, and its focused test from the manifest, then run:
Restore the complete selected v2 evidence-identity generation, its dedicated ledger,
and its focused test from the manifest, then run:

```sh
bash scripts/test/portable-core-v2-evidence-identity.test.sh
```

This proof requires passed evidence to retain the exact selected performer,
binding, environment, capability, and metadata projection. It also proves that
all-non-passing incident mismatches remain preservable. The stable wrapper remains
on the prior generation until the separate atomic cutover; this step grants no
authority, qualification, credential, network, activation, or external effect.
all-non-passing incident mismatches remain preservable. Its selection is bound to
the reviewed generation merge and publisher receipt and grants no authority,
qualification, credential, network, activation, or external effect.

Restore every path in the manifest's inactive fake adapter matrix block, then run:

Expand Down
2 changes: 1 addition & 1 deletion control/v1/control-policy-set.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"body":{"activation_state":"inactive","core_contract":{"generation_id":"g-392d20099dfa99872764009b268c8871914b4dbc0da467ec346baa921818ae3e","package_ref":{"content_id":"core-contract-package.v2","media_type":"application/vnd.ystack.core-contract+json","sha256":"2742f9c097943bb140cc0f19feda1e3b653ce95e699c570f9e9fc48825137c6c"},"semantic_identity":"core.contracts.v2"},"fail_mode":"closed","policy_version":"v1","sections":[{"decision_ref":{"content_id":"control-decision.credential-policy","media_type":"application/vnd.ystack.control-decision+json","sha256":"3ced3c3795d81d92f87358c8098663011e30589391dd6383179d2bfcfd722a0e"},"policy_ref":{"content_id":"control-policy.credential-policy","media_type":"application/vnd.ystack.control-policy+json","sha256":"62a71718f965ca37d83c6a5cf88c3f2d953092b4c33a1b8c30e2feb2d8ab9a1e"},"section_id":"credential-policy"},{"decision_ref":{"content_id":"control-decision.duty-separation","media_type":"application/vnd.ystack.control-decision+json","sha256":"25a513104dc08de8e22727901555d0a3fb6008dd8b222f7a604ed50734d4e23e"},"policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"6a86ddbe4432dae9e6e3748295b4b1da7280aa7ca410515531d0059ba2e1d566"},"section_id":"duty-separation"},{"decision_ref":{"content_id":"control-decision.evidence-integrity","media_type":"application/vnd.ystack.control-decision+json","sha256":"109d5061bafc4b5e9fa0ef49ec00a9d806e8c085272b8b92f9fc48676226dc94"},"policy_ref":{"content_id":"control-policy.evidence-integrity","media_type":"application/vnd.ystack.control-policy+json","sha256":"e14bf8ccc36d391d4ccab5b64b931cda02e3369cf0bda4e34a4cd4c3b19da662"},"section_id":"evidence-integrity"},{"decision_ref":{"content_id":"control-decision.kill-switch","media_type":"application/vnd.ystack.control-decision+json","sha256":"61cf6af051efe6438bbf58e1db61aca916bb79c9eb54ff1896e3a7a48143a36a"},"policy_ref":{"content_id":"control-policy.kill-switch","media_type":"application/vnd.ystack.control-policy+json","sha256":"6cc216935f62d1a705c8fa4d7ec6fc076d71313b24b2b0fce5ba63243f1ffad2"},"section_id":"kill-switch"},{"decision_ref":{"content_id":"control-decision.risk-gates","media_type":"application/vnd.ystack.control-decision+json","sha256":"be42e1b8387ba51297e60d40043339886606faecaaf134a4fd1ea0fa15db30b3"},"policy_ref":{"content_id":"control-policy.risk-gates","media_type":"application/vnd.ystack.control-policy+json","sha256":"130c4fc32ddabbddc25b12df7c03ec1ad5bb4925915b4bd90375a0a573c7ef0b"},"section_id":"risk-gates"},{"decision_ref":{"content_id":"control-decision.sandbox","media_type":"application/vnd.ystack.control-decision+json","sha256":"c3e89800147d55f7c726ec66c82031915a4220d3eb7867e143f60d7026223bbd"},"policy_ref":{"content_id":"control-policy.sandbox","media_type":"application/vnd.ystack.control-policy+json","sha256":"4afb62e44fd3ad055d157ee23bfcf2917811b9ec05e4923eaa989d95d53c0a5e"},"section_id":"sandbox"}]},"id":"control-policy-set.v1","kind":"control_policy_set","schema_version":1}
{"body":{"activation_state":"inactive","core_contract":{"generation_id":"g-c83c940afd16550a4f8a4dbee2b9a6f37e429063d277962ba81c141ba5303b43","package_ref":{"content_id":"core-contract-package.v2","media_type":"application/vnd.ystack.core-contract+json","sha256":"eff044bdd6de0de71d5f8c5a58d889a122cd9efdf717b9f68713b47842fb0963"},"semantic_identity":"core.contracts.v2"},"fail_mode":"closed","policy_version":"v1","sections":[{"decision_ref":{"content_id":"control-decision.credential-policy","media_type":"application/vnd.ystack.control-decision+json","sha256":"73877276c868eae2da9dcedf8eb465b0526ce26a66506691b9cedbba15f00615"},"policy_ref":{"content_id":"control-policy.credential-policy","media_type":"application/vnd.ystack.control-policy+json","sha256":"2ba0ec54d11ab4e9d02993e9283c5f820c662a20cf33d2bff25b1393a5ee403d"},"section_id":"credential-policy"},{"decision_ref":{"content_id":"control-decision.duty-separation","media_type":"application/vnd.ystack.control-decision+json","sha256":"4c2297341d1d389f21ace62b58b83e27a6ed248f9bf13a10fa385c4f8474af99"},"policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"b2663c0c0ae3d1d2e95b2e5d5ade7e00b2893f242a1143e90fad74659f6a41f9"},"section_id":"duty-separation"},{"decision_ref":{"content_id":"control-decision.evidence-integrity","media_type":"application/vnd.ystack.control-decision+json","sha256":"03e9225face347f1a4990beb6812f0e839d777cfbc6b95997d8031c4ad85e879"},"policy_ref":{"content_id":"control-policy.evidence-integrity","media_type":"application/vnd.ystack.control-policy+json","sha256":"8e630c4aaee1cf1d97b3c04e96da6bb8408a0a46a2ce42bca2583767ee42f604"},"section_id":"evidence-integrity"},{"decision_ref":{"content_id":"control-decision.kill-switch","media_type":"application/vnd.ystack.control-decision+json","sha256":"f0e88e03633c28d4916fa3480c4a4d27bc815da05891dc3efd8bc9c08b544941"},"policy_ref":{"content_id":"control-policy.kill-switch","media_type":"application/vnd.ystack.control-policy+json","sha256":"b46eebfeb9de37eb0ebdb8fb297e0e200b537d0ca08dcf28eab7f91ef603e799"},"section_id":"kill-switch"},{"decision_ref":{"content_id":"control-decision.risk-gates","media_type":"application/vnd.ystack.control-decision+json","sha256":"8e13f844fad5280aedc21a7d4c9b4bcf43f8eb0b0dd41a32a5989ce1473e28d5"},"policy_ref":{"content_id":"control-policy.risk-gates","media_type":"application/vnd.ystack.control-policy+json","sha256":"3d8f0802777b4d7a63ded72643aca5cc8afd7613b76b5463291ca0ea63607a7e"},"section_id":"risk-gates"},{"decision_ref":{"content_id":"control-decision.sandbox","media_type":"application/vnd.ystack.control-decision+json","sha256":"c3e89800147d55f7c726ec66c82031915a4220d3eb7867e143f60d7026223bbd"},"policy_ref":{"content_id":"control-policy.sandbox","media_type":"application/vnd.ystack.control-policy+json","sha256":"4afb62e44fd3ad055d157ee23bfcf2917811b9ec05e4923eaa989d95d53c0a5e"},"section_id":"sandbox"}]},"id":"control-policy-set.v1","kind":"control_policy_set","schema_version":1}
2 changes: 1 addition & 1 deletion control/v1/credential-policy-decision.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"body":{"activation_state":"inactive","decision":"allow-observation-only-evaluation","dependencies":{"duty_separation":{"decision_ref":{"content_id":"control-decision.duty-separation","media_type":"application/vnd.ystack.control-decision+json","sha256":"25a513104dc08de8e22727901555d0a3fb6008dd8b222f7a604ed50734d4e23e"},"policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"6a86ddbe4432dae9e6e3748295b4b1da7280aa7ca410515531d0059ba2e1d566"}}},"evaluator":{"driver_ref":{"content_id":"control-evaluator-driver.credential-policy.v1","media_type":"text/x-shellscript","sha256":"5c9bab9d00754d63e4ead770489564db8122c53ab1bc8b6e92c27719265c18f7"},"program_ref":{"content_id":"control-evaluator-program.credential-policy.v1","media_type":"text/x-jq","sha256":"e91ff0b189ea1962baf4d83bfb4da9accbb48e74487c3d3d92417c313a89c8b8"}},"fail_mode":"closed","policy_ref":{"content_id":"control-policy.credential-policy","media_type":"application/vnd.ystack.control-policy+json","sha256":"62a71718f965ca37d83c6a5cf88c3f2d953092b4c33a1b8c30e2feb2d8ab9a1e"},"semantics":{"authority_effect":"none","claim_provenance":"unqualified-input-claim","input_contract":"control-policy-set+public-core-stage-run+duty-evaluation+credential-boundary-claim.v1","output_kind":"credential_policy_evaluation","output_schema_version":1,"qualification_effect":"none","reference_semantics":"identity-only","verdicts":["inconclusive","violated"]}},"id":"control-decision.credential-policy","kind":"credential_policy_decision","schema_version":1}
{"body":{"activation_state":"inactive","decision":"allow-observation-only-evaluation","dependencies":{"duty_separation":{"decision_ref":{"content_id":"control-decision.duty-separation","media_type":"application/vnd.ystack.control-decision+json","sha256":"4c2297341d1d389f21ace62b58b83e27a6ed248f9bf13a10fa385c4f8474af99"},"policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"b2663c0c0ae3d1d2e95b2e5d5ade7e00b2893f242a1143e90fad74659f6a41f9"}}},"evaluator":{"driver_ref":{"content_id":"control-evaluator-driver.credential-policy.v1","media_type":"text/x-shellscript","sha256":"5c9bab9d00754d63e4ead770489564db8122c53ab1bc8b6e92c27719265c18f7"},"program_ref":{"content_id":"control-evaluator-program.credential-policy.v1","media_type":"text/x-jq","sha256":"428ea96f23a18c6938421b9cc709d36ba83b34e2441347d5891a971f92d5ec77"}},"fail_mode":"closed","policy_ref":{"content_id":"control-policy.credential-policy","media_type":"application/vnd.ystack.control-policy+json","sha256":"2ba0ec54d11ab4e9d02993e9283c5f820c662a20cf33d2bff25b1393a5ee403d"},"semantics":{"authority_effect":"none","claim_provenance":"unqualified-input-claim","input_contract":"control-policy-set+public-core-stage-run+duty-evaluation+credential-boundary-claim.v1","output_kind":"credential_policy_evaluation","output_schema_version":1,"qualification_effect":"none","reference_semantics":"identity-only","verdicts":["inconclusive","violated"]}},"id":"control-decision.credential-policy","kind":"credential_policy_decision","schema_version":1}
8 changes: 4 additions & 4 deletions control/v1/credential-policy.jq
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,10 @@ def claim_ok:
def expected_core:
{semantic_identity:"core.contracts.v2",
generation_id_sha256:
"6f6acbbd0cf40ab3c913328d6c0070635424ffe920bcdb900fbd0718345d7137",
"84a153ba1d60f1763d5424c872256fc3337209678f4105cb0802958798bd19f5",
package_ref:{content_id:"core-contract-package.v2",
media_type:"application/vnd.ystack.core-contract+json",
sha256:"2742f9c097943bb140cc0f19feda1e3b653ce95e699c570f9e9fc48825137c6c"}};
sha256:"eff044bdd6de0de71d5f8c5a58d889a122cd9efdf717b9f68713b47842fb0963"}};

def expected_credential_classes:
[{credential_class:"model-inference",delivery:"brokered",
Expand All @@ -81,10 +81,10 @@ def policy_ok:
.duty_separation == {
decision_ref:{content_id:"control-decision.duty-separation",
media_type:"application/vnd.ystack.control-decision+json",
sha256:"25a513104dc08de8e22727901555d0a3fb6008dd8b222f7a604ed50734d4e23e"},
sha256:"4c2297341d1d389f21ace62b58b83e27a6ed248f9bf13a10fa385c4f8474af99"},
policy_ref:{content_id:"control-policy.duty-separation",
media_type:"application/vnd.ystack.control-policy+json",
sha256:"6a86ddbe4432dae9e6e3748295b4b1da7280aa7ca410515531d0059ba2e1d566"}} and
sha256:"b2663c0c0ae3d1d2e95b2e5d5ade7e00b2893f242a1143e90fad74659f6a41f9"}} and
.evaluation_mode == "observation-only" and .fail_mode == "closed" and
.policy_version == "v1" and
.protected_roles ==
Expand Down
2 changes: 1 addition & 1 deletion control/v1/credential-policy.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"body":{"activation_state":"inactive","claim_provenance":"unqualified-input-claim","core_contract":{"generation_id_sha256":"6f6acbbd0cf40ab3c913328d6c0070635424ffe920bcdb900fbd0718345d7137","package_ref":{"content_id":"core-contract-package.v2","media_type":"application/vnd.ystack.core-contract+json","sha256":"2742f9c097943bb140cc0f19feda1e3b653ce95e699c570f9e9fc48825137c6c"},"semantic_identity":"core.contracts.v2"},"credential_classes":[{"credential_class":"model-inference","delivery":"brokered","execution_kinds":["model"],"exposure":"none","roles":["producer","reviewer"],"scope":"single-stage"}],"credential_incompatible_permissions":["core.perm.candidate-repository.write.v2","core.perm.candidate.execute.v1"],"duty_separation":{"decision_ref":{"content_id":"control-decision.duty-separation","media_type":"application/vnd.ystack.control-decision+json","sha256":"25a513104dc08de8e22727901555d0a3fb6008dd8b222f7a604ed50734d4e23e"},"policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"6a86ddbe4432dae9e6e3748295b4b1da7280aa7ca410515531d0059ba2e1d566"}},"evaluation_mode":"observation-only","fail_mode":"closed","policy_version":"v1","protected_roles":["ci","execution","forge","identity","producer","publisher","reviewer","verifier"],"reference_semantics":"identity-only"},"id":"control-policy.credential-policy","kind":"credential_policy","schema_version":1}
{"body":{"activation_state":"inactive","claim_provenance":"unqualified-input-claim","core_contract":{"generation_id_sha256":"84a153ba1d60f1763d5424c872256fc3337209678f4105cb0802958798bd19f5","package_ref":{"content_id":"core-contract-package.v2","media_type":"application/vnd.ystack.core-contract+json","sha256":"eff044bdd6de0de71d5f8c5a58d889a122cd9efdf717b9f68713b47842fb0963"},"semantic_identity":"core.contracts.v2"},"credential_classes":[{"credential_class":"model-inference","delivery":"brokered","execution_kinds":["model"],"exposure":"none","roles":["producer","reviewer"],"scope":"single-stage"}],"credential_incompatible_permissions":["core.perm.candidate-repository.write.v2","core.perm.candidate.execute.v1"],"duty_separation":{"decision_ref":{"content_id":"control-decision.duty-separation","media_type":"application/vnd.ystack.control-decision+json","sha256":"4c2297341d1d389f21ace62b58b83e27a6ed248f9bf13a10fa385c4f8474af99"},"policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"b2663c0c0ae3d1d2e95b2e5d5ade7e00b2893f242a1143e90fad74659f6a41f9"}},"evaluation_mode":"observation-only","fail_mode":"closed","policy_version":"v1","protected_roles":["ci","execution","forge","identity","producer","publisher","reviewer","verifier"],"reference_semantics":"identity-only"},"id":"control-policy.credential-policy","kind":"credential_policy","schema_version":1}
2 changes: 1 addition & 1 deletion control/v1/duty-separation-decision.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"body":{"activation_state":"inactive","decision":"allow-observation-only-evaluation","evaluator":{"driver_ref":{"content_id":"control-evaluator-driver.duty-separation.v1","media_type":"text/x-shellscript","sha256":"146e73dc880d363e889f32140ac375997fb709e3101de32b8d9603f1f38ca0fa"},"policy_set_validator":{"driver_ref":{"content_id":"control-policy-set-validator-driver.v1","media_type":"text/x-shellscript","sha256":"cf173ad0eaa08244bf636e3937845e894b21f14291fc5e66753e8673bdd2bd2a"},"program_ref":{"content_id":"control-policy-set-validator-program.v1","media_type":"text/x-jq","sha256":"2be97550574ee4522fc0bd14780c92dee3c1b455f2c04b7763b0e437665a8d58"}},"program_ref":{"content_id":"control-evaluator-program.duty-separation.v1","media_type":"text/x-jq","sha256":"755b51ba0ed7d463309d9ab5d30243f60d2847f2370140c2bf3b3b45a63b2611"}},"fail_mode":"closed","policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"6a86ddbe4432dae9e6e3748295b4b1da7280aa7ca410515531d0059ba2e1d566"},"semantics":{"authority_effect":"none","input_contract":"control-policy-set+public-core-stage-run.v1","output_kind":"duty_separation_evaluation","output_schema_version":1,"reference_semantics":"identity-only","verdicts":["inconclusive","satisfied","violated"]}},"id":"control-decision.duty-separation","kind":"duty_separation_decision","schema_version":1}
{"body":{"activation_state":"inactive","decision":"allow-observation-only-evaluation","evaluator":{"driver_ref":{"content_id":"control-evaluator-driver.duty-separation.v1","media_type":"text/x-shellscript","sha256":"146e73dc880d363e889f32140ac375997fb709e3101de32b8d9603f1f38ca0fa"},"policy_set_validator":{"driver_ref":{"content_id":"control-policy-set-validator-driver.v1","media_type":"text/x-shellscript","sha256":"cf173ad0eaa08244bf636e3937845e894b21f14291fc5e66753e8673bdd2bd2a"},"program_ref":{"content_id":"control-policy-set-validator-program.v1","media_type":"text/x-jq","sha256":"2be97550574ee4522fc0bd14780c92dee3c1b455f2c04b7763b0e437665a8d58"}},"program_ref":{"content_id":"control-evaluator-program.duty-separation.v1","media_type":"text/x-jq","sha256":"b4e480748dd4fb7dec769b25f0f7649b0e5dc31f9de438bba690e9eab6ac236c"}},"fail_mode":"closed","policy_ref":{"content_id":"control-policy.duty-separation","media_type":"application/vnd.ystack.control-policy+json","sha256":"b2663c0c0ae3d1d2e95b2e5d5ade7e00b2893f242a1143e90fad74659f6a41f9"},"semantics":{"authority_effect":"none","input_contract":"control-policy-set+public-core-stage-run.v1","output_kind":"duty_separation_evaluation","output_schema_version":1,"reference_semantics":"identity-only","verdicts":["inconclusive","satisfied","violated"]}},"id":"control-decision.duty-separation","kind":"duty_separation_decision","schema_version":1}
Loading