policy-nexus/docs/adr-review/conflicts.md
tegwick d1f9ac6cd7
Some checks failed
Build and publish policy-nexus image / build-and-push (push) Failing after 39s
Record ADR conflicts and publish the estate arc42
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.
2026-08-18 22:27:05 +02:00

60 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ADR conflict pass (WP-0003-T03)
Kinds 14 and 6. Kind 5 waits on the estate arc42 chapter 9. Rulings
live in `rulings.json` and survive a ledger refresh.
## How kind 1 is treated
A shared **front-matter `id`** (`ADR-001` in four repos, `ADR-0001` in
three, `netkingdom-iam-profile` on two files) cannot appear twice in
`publication.json`. That is a prefix/rename packet, not a contradiction
of decisions. The ledger records kind `1` automatically. Disposition
stays `publish` or `unreviewed` unless another kind applies.
Bare `ADR-NNNN` in many filenames is expected. It is not kind 1.
## Kind 2 — status lie
| Source | What the files say | Who rules |
| --- | --- | --- |
| `net-kingdom/canon/standards/iam-profile_v0.2.md` | Front-matter `accepted`. v0.3 says it supersedes v0.2. | net-kingdom |
| `railiance-hosts` and `railiance-infra` `ADR-002` | Body **Status: Superseded by ADR-003**. No YAML `status`. | those repos |
| `coulomb-social/docs/adr/ADR-0002-…` | Status is **superseded in part** by ADR-0003/0004. | coulomb-social |
Mentions of “supersedes” meaning *this* ADR replaces an older one (flex-auth
0003, artifact-store 0001, glas-harness 001) are not status lies.
## Kind 3 — missing / stale successor
| Source | Gap | Who rules |
| --- | --- | --- |
| `the-custodian/canon/standards/iam-profile_v0.1.md` | `superseded_by` still names v0.2; current is v0.3. | the-custodian |
Custodian ADR-008 already names Tenancy Posture. No gap.
## Kind 4 — contradicting decisions
No pair of *accepted* ADRs was found that cannot both be true.
railiance-platform ADR-0003 restates custodian ADR-001 (hub is a read
model). That is alignment, not a clash.
## Kind 6 — duplicate current claim
| Sources | Claim | Who rules |
| --- | --- | --- |
| custodian ADR-008 vs Tenancy Posture | Multi-tenancy framework. ADR-008 is already superseded. T04: `superseded`. | already ruled in the source |
| iam-profile v0.2 and v0.3 | Same `id`, both `accepted`. T04: v0.2 `superseded`, v0.3 `publish` after id fix. | net-kingdom |
| railiance-hosts and railiance-infra ADR-002 | Identical superseded copies. | those repos (historical only) |
| railiance-hosts and railiance-infra ADR-003 | Identical **accepted** 5-repo stack ADR. **Conflict.** | those repos or railiance-master |
| railiance-hosts and railiance-infra ADR-004 | Identical **accepted** Forgejo runner ADR. **Conflict.** | those repos |
## Conflict rows that stay unpublished
Until the owner rules:
1. `railiance-hosts` / `railiance-infra` ADR-003
2. `railiance-hosts` / `railiance-infra` ADR-004
3. `coulomb-social` ADR-0002 (partial supersession)
Kind 5 (architecture miss) is not run yet. It starts when
`coulomb-estate_v0.1.md` chapter 9 exists.