Some checks failed
Build and publish policy-nexus image / build-and-push (push) Failing after 39s
T03 writes a rulings overlay and a readable conflict list. T04 starts relevance: five superseded, five live conflicts, estate and activity-core ADRs marked publish-after-prefix. The Coulomb estate map is now a published architecture document.
232 lines
9.9 KiB
JSON
232 lines
9.9 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"ruled_at": "2026-08-18",
|
|
"workplan": "POLICY-NEXUS-WP-0003",
|
|
"note": "T03/T04 overlay. Regenerating the ledger merges these fields onto inventory facts. Kind 1 on a shared front-matter id is also applied automatically.",
|
|
"rulings": [
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-008-multi-tenancy-model.md",
|
|
"proposed_disposition": "superseded",
|
|
"conflict_kinds": [6],
|
|
"successor": "netkingdom-tenancy-posture",
|
|
"review_notes": "Body and front-matter already say relocated to Tenancy Posture. Not a live duplicate claim. Who ruled: T04 from the document itself."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/standards/iam-profile_v0.1.md",
|
|
"proposed_disposition": "superseded",
|
|
"conflict_kinds": [3],
|
|
"successor": "net-kingdom/canon/standards/iam-profile_v0.3.md",
|
|
"review_notes": "Already superseded. Recorded successor still points at v0.2; v0.3 now supersedes v0.2. Who rules: the-custodian to update superseded_by."
|
|
},
|
|
{
|
|
"source_repo": "net-kingdom",
|
|
"source_path": "canon/standards/iam-profile_v0.2.md",
|
|
"proposed_disposition": "superseded",
|
|
"conflict_kinds": [1, 2, 6],
|
|
"successor": "net-kingdom/canon/standards/iam-profile_v0.3.md",
|
|
"review_notes": "v0.3 says it supersedes v0.2, but v0.2 is still status accepted and shares id netkingdom-iam-profile. Who rules: net-kingdom (status + unique id)."
|
|
},
|
|
{
|
|
"source_repo": "net-kingdom",
|
|
"source_path": "canon/standards/iam-profile_v0.3.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [1, 6],
|
|
"successor": "",
|
|
"review_notes": "Current IAM profile. Cannot publish until id is unique (e.g. netkingdom-iam-profile-v0.3). Who rules: net-kingdom."
|
|
},
|
|
{
|
|
"source_repo": "railiance-hosts",
|
|
"source_path": "docs/adr/ADR-002-repo-boundary-hosts-vs-bootstrap.md",
|
|
"proposed_disposition": "superseded",
|
|
"conflict_kinds": [2, 6],
|
|
"successor": "railiance-hosts/docs/adr/ADR-003-railiance-5repo-stack-architecture.md",
|
|
"review_notes": "Body is superseded by ADR-003. Byte-identical copy also lives in railiance-infra. Who rules: railiance-hosts/infra which copy is historical."
|
|
},
|
|
{
|
|
"source_repo": "railiance-infra",
|
|
"source_path": "docs/adr/ADR-002-repo-boundary-hosts-vs-bootstrap.md",
|
|
"proposed_disposition": "superseded",
|
|
"conflict_kinds": [2, 6],
|
|
"successor": "railiance-infra/docs/adr/ADR-003-railiance-5repo-stack-architecture.md",
|
|
"review_notes": "Identical to the railiance-hosts copy; both say superseded by ADR-003."
|
|
},
|
|
{
|
|
"source_repo": "railiance-hosts",
|
|
"source_path": "docs/adr/ADR-003-railiance-5repo-stack-architecture.md",
|
|
"proposed_disposition": "conflict",
|
|
"conflict_kinds": [6],
|
|
"successor": "",
|
|
"review_notes": "Accepted 5-repo stack ADR is byte-identical in railiance-hosts and railiance-infra. Two current copies of one decision. Who rules: those two repos, or railiance-master if the stack story moved."
|
|
},
|
|
{
|
|
"source_repo": "railiance-infra",
|
|
"source_path": "docs/adr/ADR-003-railiance-5repo-stack-architecture.md",
|
|
"proposed_disposition": "conflict",
|
|
"conflict_kinds": [6],
|
|
"successor": "",
|
|
"review_notes": "Identical accepted copy of the hosts ADR-003. Do not publish both."
|
|
},
|
|
{
|
|
"source_repo": "railiance-hosts",
|
|
"source_path": "docs/adr/ADR-004-forgejo-in-cluster-actions-runner.md",
|
|
"proposed_disposition": "conflict",
|
|
"conflict_kinds": [6],
|
|
"successor": "",
|
|
"review_notes": "Accepted Forgejo runner ADR is byte-identical in railiance-hosts and railiance-infra. Who rules: those two repos."
|
|
},
|
|
{
|
|
"source_repo": "railiance-infra",
|
|
"source_path": "docs/adr/ADR-004-forgejo-in-cluster-actions-runner.md",
|
|
"proposed_disposition": "conflict",
|
|
"conflict_kinds": [6],
|
|
"successor": "",
|
|
"review_notes": "Identical accepted copy of the hosts ADR-004. Do not publish both."
|
|
},
|
|
{
|
|
"source_repo": "coulomb-social",
|
|
"source_path": "docs/adr/ADR-0002-space-content-forgejo-markdown.md",
|
|
"proposed_disposition": "conflict",
|
|
"conflict_kinds": [2],
|
|
"successor": "coulomb-social/docs/adr/ADR-0003-page-centric-markdown-sor.md",
|
|
"review_notes": "Status is 'superseded in part' by ADR-0003/0004. Not a clean superseded or accepted. Who rules: coulomb-social."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-001-workplans-as-repo-artefacts.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [1],
|
|
"successor": "",
|
|
"review_notes": "Estate rule: workplans originate as repo files. Needs a unique publication id (e.g. CUST-ADR-001) before publish."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-002-custodian-agent-runtime-design.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [1],
|
|
"successor": "",
|
|
"review_notes": "Estate ADR. Prefix the publication id before publish."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-003-materialized-derived-state.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [1],
|
|
"successor": "",
|
|
"review_notes": "Estate ADR: hub is a derived read-model. Prefix the publication id before publish."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-004-connectivity-first-network-posture.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [1],
|
|
"successor": "",
|
|
"review_notes": "Estate ADR. Prefix the publication id before publish."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-005-cross-repo-workplans-project-repos.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [1],
|
|
"successor": "",
|
|
"review_notes": "Estate ADR. Prefix the publication id before publish."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-006-canon-federation-concept-ownership.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Estate ADR. Id ADR-006 is unique in front-matter today; still prefix for consistency."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-007-workplan-identity-and-repo-worker-topology.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Estate ADR. Prefix the publication id for consistency."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-010-hub-authority-and-local-cache-model.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Proposed estate ADR. Publish as proposed once prefixed and review metadata is added."
|
|
},
|
|
{
|
|
"source_repo": "the-custodian",
|
|
"source_path": "canon/architecture/adr-011-federated-namespaces-and-reconciliation-limits.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Proposed estate ADR. Publish as proposed once prefixed and review metadata is added."
|
|
},
|
|
{
|
|
"source_repo": "activity-core",
|
|
"source_path": "docs/adr/adr-001-event-bridge-architecture.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Cross-repo event bridge. Id ACT-ADR-001 is unique. Needs owner/revision/review front-matter."
|
|
},
|
|
{
|
|
"source_repo": "activity-core",
|
|
"source_path": "docs/adr/adr-002-definition-format.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Cross-repo definition format. Unique id. Needs owner/revision/review."
|
|
},
|
|
{
|
|
"source_repo": "activity-core",
|
|
"source_path": "docs/adr/adr-003-rule-instruction-model.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Cross-repo rule/instruction split. Unique id. Needs owner/revision/review."
|
|
},
|
|
{
|
|
"source_repo": "activity-core",
|
|
"source_path": "docs/adr/adr-004-producer-trust-boundary.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Cross-repo producer trust boundary. Unique id. Needs owner/revision/review."
|
|
},
|
|
{
|
|
"source_repo": "activity-core",
|
|
"source_path": "docs/adr/adr-005-ops-runs-vs-dev-work-records.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Cross-repo ops-run vs work-record split. Unique id. Needs owner/revision/review."
|
|
},
|
|
{
|
|
"source_repo": "railiance-platform",
|
|
"source_path": "docs/adr/ADR-0001-s3-platform-service-boundary.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Binds other repos on S3. Needs a unique publication id in front-matter."
|
|
},
|
|
{
|
|
"source_repo": "railiance-platform",
|
|
"source_path": "docs/adr/ADR-0002-placement-policy-ownership.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Proposed placement-policy ownership. Bindings are cross-repo. Needs a unique id."
|
|
},
|
|
{
|
|
"source_repo": "railiance-platform",
|
|
"source_path": "docs/adr/ADR-0003-decisions-live-in-the-repo.md",
|
|
"proposed_disposition": "publish",
|
|
"conflict_kinds": [],
|
|
"successor": "",
|
|
"review_notes": "Restates ADR-001 for this repo. Needs a unique publication id (front-matter has title but no id)."
|
|
}
|
|
]
|
|
}
|