Macro-4 Staging Workbench Naming Convention — R2-B2 (2026-06-19)
Macro-4 Staging Workbench Naming Convention — R2-B2 (2026-06-19)
Date: 2026-06-19 · Workstream: R2-B2-MACRO-4-STAGING-WORKBENCH-IO-CONTRACT-TD-ENTRY-GATE-2026-06-19 (Deliverable 9 of 90) · Editorial revision: rev1
Class: draft object naming convention · READ-ONLY · NON-ENACTING · NON-AUTHORIZING · CONVENTION-ONLY (no DDL) · NO write performed.
Metadata convention. Editorial revision (rev1) only. Storage revision/
content_lengthauthoritative at read time.
Convention, not schema. This proposes a naming discipline for disposable draft objects so they are unmistakable and never confused with production. It defines no table/column, writes no DDL, and creates no object.
0. Status and non-authorization
STATUS: PASS — engineering / design-only. A naming discipline that makes draft objects self-identifying and disposable-by-name. Engineering PASS ≠ authority PASS. Default: HOLD.
1. Purpose
Answer macro question 3 (in part) — how draft objects are named so a delete-fast can find and remove all of them, and nothing leaks into production.
2. Sources / evidence read
Pilot-slice staging IO contract §7 (distinct identity/tagging); FRESH existing object names (iu_core.iu_staging_*, unit_edit_draft) to avoid collision; operating-rules ("không hardcode"). Main process, no reader-agents.
3. Accepted baseline (carried)
Candidate results carry a clear STAGING marker (a staging run id + a "candidate" designation) so they can never be queried as, or read into, the production certification path; the exact mechanism is FUTURE_TECHNICAL_DESIGN_REQUIRED.
4. Evidence / analysis — proposed convention (conceptual)
| Element | Convention (proposed, not enacted) | Why |
|---|---|---|
| Surface prefix | a distinct disposable namespace/prefix (e.g. b2draft_* / a dedicated draft schema) never birth_registry, iu_core.*, public.unit_edit_draft |
unmistakable, collision-free vs FRESH production names |
| Run id | every draft run carries a unique staging run id | scopes the delete-fast unit |
| Candidate column tag | candidate inspect_* clearly marked "candidate" |
never confusable with production inspect_* |
| Evidence tag | staging evidence tagged STAGING | never read into a production decision |
5. Contract / requirement / matrix / result
The convention must guarantee: (a) one query can enumerate all objects of a draft run for disposal; (b) no draft name shadows or aliases a production object; (c) names are derived from a run id, not hardcoded. This is a requirement on a future build, not a built scheme.
6. Owner-gated future work
Choosing and applying the naming/tagging scheme is part of the staging build — Owner-gated future TD; forbidden now.
7. What remains unresolved
The concrete prefix/schema choice is FUTURE_TECHNICAL_DESIGN_REQUIRED; this file sets the properties, not the strings.
8. Ready for GPT/Codex review
Yes — Codex should confirm no proposed name collides with a FRESH production object and that no DDL is written.