|
4 | 4 | > `**Status:**` line (FINDING / CONJECTURE / FRAMING / SUPERSEDED). Only |
5 | 5 | > the Status line is mutable — body and date are immutable. Corrections |
6 | 6 | > append as new dated entries citing the original. |
| 7 | +
|
| 8 | +--- |
| 9 | + |
| 10 | +## 2026-06-23 — E-NINE-DOMAIN-PROMOTION-DEFERRED — the nine Lift-tested NTO domains correctly stay un-Cross-walked; bulk-minting class_ids is the WRONG move, per the catalogue's own rules |
| 11 | + |
| 12 | +**Status:** FINDING (promotion decision, 2026-06-23). Question raised: promote the |
| 13 | +nine Lift-tested NTO domains (Transport, Accounting, SalesDistribution, Credit, Cost, |
| 14 | +ServiceManagement, WorkOrder, Compliance, Audit) from **Lift-tested** to |
| 15 | +**Cross-walked** (mint `class_ids` in `ogar-vocab`)? **Decision: NO bulk promotion.** |
| 16 | +The deliberate "Lift-tested, not Cross-walked" state is correct, not pending. Grounds, |
| 17 | +per `OGIT-DOMAIN-LIFT-CATALOGUE.md`'s own ladder + authorship rules: |
| 18 | + |
| 19 | +1. **Upstream-owned (needs arago/almato coordination, not a unilateral mint):** |
| 20 | + Transport + Compliance (`chris.boos@almato.com`), Cost + ServiceManagement |
| 21 | + (`Peter Larem`), Credit (`Ola Irgens Kylling`), SalesDistribution + Audit |
| 22 | + (`Marek Meyer`). The catalogue states structural changes to upstream domains |
| 23 | + "need arago/almato coordination." A codebook id is **stable forever** (P0 canon); |
| 24 | + minting permanent ids for upstream-owned concepts without coordination is exactly |
| 25 | + the structural change the rule fences. |
| 26 | +2. **Already covered by an existing domain (promotion would duplicate):** |
| 27 | + Accounting → `0x02XX` commerce/ERP via the Odoo lift; Audit → ADR-013 |
| 28 | + (Audit-as-Lance-version) owns the semantics. A second slot for an already-homed |
| 29 | + concept dilutes the codebook. |
| 30 | +3. **Ours but speculative (premature mint):** WorkOrder is our extension |
| 31 | + (`dcterms:creator` = `bus-compiler` + `family-codec-smith`, authored for woa-rs). |
| 32 | + We MAY mint it — but minting before woa-rs's consumer-collapse needs the classid is |
| 33 | + speculative permanent allocation. Gate: mint WorkOrder when woa-rs reaches the |
| 34 | + `authorize(actor, WoaPort::class_id(...))` step (keystone §11 step 5), not before. |
| 35 | +4. **Cross-repo skew hazard (the just-fixed break):** every consumer pulls |
| 36 | + `ogar-vocab branch=main` AND the lance-graph mirror; a mint must reach OGAR `main` |
| 37 | + **before** the `lance-graph-contract::ogar_codebook` mirror bumps, or the |
| 38 | + compile-time `COUNT_FUSE` breaks every consumer (cf. lance-graph ISSUES |
| 39 | + `ISS-OGAR-AUTH-MIRROR-DRIFT`, E-CODEBOOK-MINT-IS-A-CROSS-REPO-ARC). Nine |
| 40 | + simultaneous mints multiply that coordination cost for no current consumer need. |
| 41 | + |
| 42 | +**Per-domain promotion gate (the auto-resolve, not a punt):** |
| 43 | + |
| 44 | +| Domain | Owner | Promote when | Default home today | |
| 45 | +|---|---|---|---| |
| 46 | +| Transport | upstream (almato) | arago coordination + a consumer needs it | — | |
| 47 | +| Compliance | upstream (almato) | arago coordination + a consumer needs it | — | |
| 48 | +| Cost | upstream (Larem) | arago coordination + a consumer needs it | — | |
| 49 | +| ServiceManagement | upstream (Larem) | arago coordination + a consumer needs it | — | |
| 50 | +| Credit | upstream (Kylling) | arago coordination + a consumer needs it | — | |
| 51 | +| SalesDistribution | upstream (Meyer) | arago coordination + a consumer needs it | — | |
| 52 | +| Accounting | mixed (11 ours) | only if it diverges from `0x02XX` | `0x02XX` commerce | |
| 53 | +| Audit | upstream (Meyer) | only if it needs a classid beyond versioning | ADR-013 Lance-version | |
| 54 | +| WorkOrder | **ours** (woa-rs) | woa-rs reaches keystone §11 step 5 | Lift-tested form | |
| 55 | + |
| 56 | +**The general rule promoted from this:** Lift-tested → Cross-walked is **demand-driven |
| 57 | +and ownership-gated**, never a completeness sweep. A domain earns a codebook id when (a) |
| 58 | +a consumer needs to `authorize()`/route on it AND (b) we own it or have coordination — |
| 59 | +not because it round-trips. Round-trip (Lift-tested) proves the *shape lands*; it does |
| 60 | +NOT imply the *id should mint*. Cross-ref: `OGIT-DOMAIN-LIFT-CATALOGUE.md` ladder, |
| 61 | +P0 canon "codebook ids stable forever," E-CODEBOOK-MINT-IS-A-CROSS-REPO-ARC. |
| 62 | + |
| 63 | +--- |
| 64 | + |
7 | 65 | > |
8 | 66 | > Convention adopted from `AdaWorldAPI/surrealdb`'s `.claude/board/EPIPHANIES.md`. |
9 | 67 | > |
|
0 commit comments