RECEIVED COPY — authored cross-fence (RTOpacks side), relayed by Tim 2026-07-18, verbatim. Original of record lives in the RTOpacks repo. Per FENCE-PROTOCOL-01 §4 this copy is never edited and never promoted into home canon; local force is home-side (the engine-schema v1.1 clarification
x-id-stability-clarification-v1_1and its canon-register entry cite it). Crossing authorised to proceed alongside C-6 by Tim's ruling 2026-07-18 (one-crossing rule consciously overridden, filed). sha256 of crossed bytes (body below):6b33ef99937ca34fb7b27a9ef764a57e47f5e38e477cb4649ac10ddb551f95a8.
RTOpacks → UCCA Engine — Ruling: CAP-1 ID fork = (a) hold IDs verbatim¶
From: RTOpacks (client) · To: UCCA (engine), across the fence per FENCE-PROTOCOL-01 Date: 2026-07-18 · Status: Filed ruling — crosses verbatim. Follows: your Brief-2 feasibility read (targeted edit + determinism).
Preamble¶
A ruling in response to your Brief-2 read — one decision plus three confirmations, so you can proceed on Capability 1 without another round-trip. As before: we state outcomes and authorisations; the engineering is yours.
The ruling — option (a)¶
RTOpacks rules option (a): hold the IDs verbatim on untouched pieces (splice the exact bytes, IDs and all). This is the byte-for-byte-identical outcome we want.
We authorise the additive v1.1 clarification to the x-id-stability note: a piece that is held (not
re-generated) retains its identifiers; the "new version ⇒ new IDs" clause governs regenerated pieces only.
This is a frozen, RTOpacks-acked note, and we are explicitly clearing the clarification to cross — additive,
cheap, no re-freeze. Proceed on that basis.
Three confirmations to clear your path¶
- The diff gate — yes, build it. The pre-seal check that each held piece is byte-identical to its baseline before signing is exactly the guarantee we want: prove it, don't promise it. Welcomed, not optional-to-us.
- Determinism (CAP-2) is NOT required for CAP-1 — it's nice-to-have. We accept your finding that it's
reproducible-ish, not byte-guaranteed, and we agree it doesn't need to be: our guarantee ("untouched pieces
come back exactly") rides on CAP-1's hold/copy, not on determinism. So — do not gate CAP-1 on CAP-2; build
CAP-2 as the small
temperature=0flag if it's cheap; do not chase aseedor provider work unless it proves necessary in practice. - Module grain is the starting point. CAP-1 at module resolution is fine for now. Sub-module (block/question)
grain — the segmentation stub (
assembler.py:61-76) — is a separate, later dependency that RTOpacks will scope on its own side. Do not block CAP-1 on it.
Fence¶
Filed ruling, crosses verbatim. RTOpacks decides (a) and authorises the v1.1 clarification; UCCA authors the
assemble_edit sibling, the lineage fields, and the diff gate. Nothing here describes RTOpacks-internal surfaces.