From 99bc1bb3356e462c80d30c249c254b05345b1d2d Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Mon, 13 Jul 2026 04:49:09 +0100 Subject: [PATCH] Remove fictional sync authority --- ...epiphany-repo-sync-request-family-smoke.rs | 4 +++- epiphany-core/src/bin/epiphany-work.rs | 5 +++-- .../closure_contracts/external_governance.rs | 10 ++++++---- .../external_governance_tests.rs | 5 +++-- ...onceptual-substitution-audit-2026-07-12.md | 7 +++++++ notes/fresh-workspace-handoff.md | 7 +++++++ state/ledgers.msgpack | Bin 477221 -> 477563 bytes state/map.yaml | 2 +- 8 files changed, 30 insertions(+), 10 deletions(-) diff --git a/epiphany-core/src/bin/epiphany-repo-sync-request-family-smoke.rs b/epiphany-core/src/bin/epiphany-repo-sync-request-family-smoke.rs index bf84e44f..d0dbb77a 100644 --- a/epiphany-core/src/bin/epiphany-repo-sync-request-family-smoke.rs +++ b/epiphany-core/src/bin/epiphany-repo-sync-request-family-smoke.rs @@ -198,7 +198,7 @@ fn run_smoke(args: Args) -> Result { require_text(&request_text, "safe_action_family = \"repo.sync_request\"")?; require_text(&request_text, "[request]")?; require_text(&request_text, "status = \"awaiting-upstream-main-proof\"")?; - require_text(&request_text, "requested_owner = \"Bifrost\"")?; + require_text(&request_text, "proof_owner = \"Bifrost\"")?; require_text( &request_text, "requested_effect = \"prove-published-commit-contained-by-upstream-main\"", @@ -252,6 +252,8 @@ fn run_smoke(args: Args) -> Result { require_text(&request_text, "credit_ledger_authorized = false")?; require_text(&request_text, "hands_action_authorized = false")?; require_text(&request_text, "cross_body_mutation_authorized = false")?; + require_text(&request_text, "bifrost_upstream_proof_required = true")?; + require_text(&request_text, "maintainer_review_receipt_required = true")?; require_text(&request_text, "private_state_exposed = false")?; let summary = json!({ diff --git a/epiphany-core/src/bin/epiphany-work.rs b/epiphany-core/src/bin/epiphany-work.rs index 1db7d24c..eb685849 100644 --- a/epiphany-core/src/bin/epiphany-work.rs +++ b/epiphany-core/src/bin/epiphany-work.rs @@ -4107,7 +4107,7 @@ fn derive_repo_sync_request_plan( "[request]".to_string(), format!("id = {}", toml_basic_string(&request_id)), "status = \"awaiting-upstream-main-proof\"".to_string(), - "requested_owner = \"Bifrost\"".to_string(), + "proof_owner = \"Bifrost\"".to_string(), "requested_effect = \"prove-published-commit-contained-by-upstream-main\"".to_string(), format!( "publication_request_ref = {}", @@ -4150,7 +4150,8 @@ fn derive_repo_sync_request_plan( "service_lifecycle_authority = false".to_string(), "cross_body_mutation_authorized = false".to_string(), "private_verse_rummaging = false".to_string(), - "operator_or_maintainer_authority_required = true".to_string(), + "bifrost_upstream_proof_required = true".to_string(), + "maintainer_review_receipt_required = true".to_string(), String::new(), "[verification]".to_string(), "asks = [".to_string(), diff --git a/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance.rs b/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance.rs index fe896d40..d69d599a 100644 --- a/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance.rs +++ b/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance.rs @@ -674,7 +674,7 @@ impl RepoSyncRequest { } pub(super) fn awaits_upstream_proof(&self) -> bool { self.request.status == "awaiting-upstream-main-proof" - && self.request.requested_owner == "Bifrost" + && self.request.proof_owner == "Bifrost" && self.request.requested_effect == "prove-published-commit-contained-by-upstream-main" && !self.request.publication_request_ref.is_empty() } @@ -715,13 +715,14 @@ impl RepoSyncRequest { && !a.service_lifecycle_authority && !a.cross_body_mutation_authorized && !a.private_verse_rummaging - && a.operator_or_maintainer_authority_required + && a.bifrost_upstream_proof_required + && a.maintainer_review_receipt_required } } #[derive(Debug, Deserialize)] struct RepoSyncRequestBody { status: String, - requested_owner: String, + proof_owner: String, requested_effect: String, publication_request_ref: String, } @@ -762,7 +763,8 @@ struct RepoSyncAuthority { service_lifecycle_authority: bool, cross_body_mutation_authorized: bool, private_verse_rummaging: bool, - operator_or_maintainer_authority_required: bool, + bifrost_upstream_proof_required: bool, + maintainer_review_receipt_required: bool, } pub(super) fn parse_repo_sync_request(text: &str) -> Result { toml::from_str(text).context("sync request is not valid typed TOML") diff --git a/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance_tests.rs b/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance_tests.rs index 2205e1e7..61584534 100644 --- a/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance_tests.rs +++ b/epiphany-core/src/bin/epiphany_work/closure_contracts/external_governance_tests.rs @@ -320,7 +320,7 @@ summary = "summary" private_state_exposed = false [request] status = "awaiting-upstream-main-proof" -requested_owner = "Bifrost" +proof_owner = "Bifrost" requested_effect = "prove-published-commit-contained-by-upstream-main" publication_request_ref = "publication" [antecedents] @@ -354,7 +354,8 @@ hands_action_authorized = false service_lifecycle_authority = false cross_body_mutation_authorized = false private_verse_rummaging = false -operator_or_maintainer_authority_required = true +bifrost_upstream_proof_required = true +maintainer_review_receipt_required = true "#; let request = parse_repo_sync_request(text).expect("fixture is typed TOML"); assert!(!request.has_authority_seals()); diff --git a/notes/conceptual-substitution-audit-2026-07-12.md b/notes/conceptual-substitution-audit-2026-07-12.md index 7a2eb08c..f881c9e0 100644 --- a/notes/conceptual-substitution-audit-2026-07-12.md +++ b/notes/conceptual-substitution-audit-2026-07-12.md @@ -1333,3 +1333,10 @@ unresolved rather than mechanically renamed. Operator authority and Maintainer policy consent may be genuinely different inputs, but the current field does not say whether either may execute, approve, or merely request synchronization. Map the actual sync consequence path before cutting it. + +The sync trace found no synchronization consequence path at all. The family is +a branch-local request for Bifrost to prove that an already-published commit is +contained by `origin/main`; it explicitly denies merge, push, and sync. The +operator half of the old OR seal was fictional. The contract now names Bifrost +as proof owner and independently requires the Maintainer review receipt. Actual +publication and push remain outside this request family. diff --git a/notes/fresh-workspace-handoff.md b/notes/fresh-workspace-handoff.md index 548b7d96..a9f7a1d4 100644 --- a/notes/fresh-workspace-handoff.md +++ b/notes/fresh-workspace-handoff.md @@ -475,3 +475,10 @@ owned instead of ownerless. The unresolved external-governance field is upstream sync's `operator_or_maintainer_authority_required`; trace its actual effect owner before deciding whether it is alternate human authority or another collapsed obligation. + +That trace is complete: `repo.sync_request` performs no sync effect. It asks +Bifrost for an upstream ancestry proof after publication and separately +requires Maintainer review evidence. The fictional operator-or-maintainer gate +is removed; the request still denies merge, push, sync, and Hands authority. +Next inspect composite owner labels in operator projections, starting with rows +that may be interpreted as decision or execution ownership. diff --git a/state/ledgers.msgpack b/state/ledgers.msgpack index 4ac97d6c2e80d0483277b79b27a86c4d399220f6..1b333b888cfef332584c54f3fdbb65ff5d66d626 100644 GIT binary patch delta 330 zcmYL@KTE@45XMcc2{?#|gMTO-xVV_XDwd3b;^HC>>LM@6g}l;19xwmQi=cPT{c2>LL@yXryl7DgYvFG$1XZ%>XPnGM4 zn!7A&iB?43XXX0SvwFVcueCbiQMaDGyStP9YgQ4)z?f4|lqR}o><_T8fF=e@%?UwU zNL2xbps}P(Mvs-%WMIVFB7+h$jZ6V#dL^9dgh>#}L_*>cawbXwxWbHvQkLkb39BAF zP>!rD@qtXHw6UUwH?S!Qx?GS8%$2w#`A1#=n?~d!)j3FC2ABVN#-YX$$c|B-2%vLV VXLE0>{yO(J>gQL_t8X{`^D`{GFCQEWon