decisions/OPEN_DECISIONS_BRIEF_2026-07-20.md
This brief assembles the open decisions surfaced by the Ch 2-5 region-page slice, the quest-writing spike (docs/proposals/quest_spike/SPIKE_REPORT.md), and the page-pipeline review (docs/pipeline_review/PAGE_PIPELINE_REVIEW_2026-07-20.md), each already deep-dived and adversarially reviewed per the standing decision-analysis protocol. Twenty items are classified: five are genuine JOSH ratifications (cardinal canon or a game-feel dial), fifteen are DIRECTOR conventions executable under standing autonomy with a named veto surface. The JOSH section carries each item in full protocol form ordered by weight; the DIRECTOR section is a compact execute-on-landing table; a standing-flags appendix records the book-gated, next-session, and deferred residue as pointers only.
Counts: JOSH ratifications 5, DIRECTOR conventions 15.
The ruled meters-per-vertex (mpv) per region or area-of-interest is the single most consequential open item in the terrain chain. T99_Translation_Terrain marks it JOSH-RULES, tied to traversal pacing and area_bounds, and notes every other terrain number falls out of it — Z-scale, tile count, World-Partition cell count, and Gaea erosion budget all derive from the Step 3 formula meters_per_vertex = real_AOI_footprint_m / target_landscape_vertex_count (target = one 8,129-vertex Landscape actor or an N-tile World-Partition grid). Two non-ruled anchors exist: the flores page places a first-pass 2.0 m/vertex for highland corridors, tighter at the cave and caldera hero-sites, and the 2026-07-20 Liang Bua smoke run emitted native COP30 30.0 m/vertex (371x372 px over an ~11x11 km bbox, EPSG:32751, Z-scale 204.164) — an explicit SMOKE value, not a ruling. The page-pipeline review confirms 2.0 m is a placeholder and the tool used a different value, so this is unresolved, not implied.
A structural fact the doc must reconcile: it asserts one mpv per region, but the flores Zone Catalog already authors zones at wildly different scales and priorities — 40x40 m spring pockets and 60x45 m waterfall pools alongside an ~2.5 km stratovolcano corridor and an ~1.2 km caldera rim — and bali at a uniform 2.0 m over the island bbox computes to 72,500x43,500 px, past the 43,351 px heightmap import ceiling on both axes. Two engineering floors bound the number: source COP30 is 30 m native, so any mpv finer than 30 m is interpolation plus Gaea-synthesized erosion detail, not real DEM ground truth (you pay for sub-30 m detail via synthesis, not resampling); and a single 8,129 actor covers ~66 km2 at 1 m, ~264 km2 at 2 m, ~1,650 km2 at 5 m, and ~59,000 km2 at 30 m, so the number sets tile count and streaming cost directly. This is genuinely Josh's because the ratifiable value is a game-feel axis: does a real 10 km valley feel like a sprawling near-1:1 explorable traverse (low mpv, many tiles, huge memory) or a curated compressed pocket stitched by traversal (higher mpv, cheap, tight). The per-AOI field and tiering structure are already the director's; only the feel-number and the tier ladder are Josh's.
Ratify Option C. The one-word-ratifiable default is a per-AOI tiered ladder: 1 m/vertex at hero set-pieces (caves, ritual and boss pockets, waterfalls), 2 m/vertex at standard traversal and corridor ground, 5-10 m/vertex at coarse ambient and backdrop extents, stitched under World Partition, with the doc's one-mpv-per-region rule amended to one mpv per AOI record, where a region may be a single AOI (single value) when it is one contiguous hero extent. This is the clearly-constrained default because the zones are already authored small, curated, and disjoint, and because the uniform schemes provably bust the import ceiling on any island-scale AOI. The ladder values themselves stay Josh's feel dial: shift the whole ladder down a notch for a more sprawling near-1:1 explorable world at real tile and memory cost, up for tighter curated pockets and cheaper builds. The tier a zone gets keys off the existing build_priority and climactic_affordance fields, so no new taxonomy is minted. The director executes the per-AOI field, the stitch step, and the harness tooth on ratification; Josh's word is only on the three ladder numbers or a global up-or-down shift.
C sacrifices the doc's deliberately-ruled single-scalar model — Terrain made the one meters-per-vertex parameter per region a binding position precisely because every other number falls out of it, giving a clean deterministic one-knob pipeline; tiering reintroduces per-AOI records, a stitch step, a crack-or-pop risk at mismatched-resolution seams, and a per-zone tier judgment the single-number model avoided. A coherent uniform-B defender says: pick one honest number (2 m), scope each region's playable AOI to only the curated hero extents (which the small authored zone sizings already do, since the island backdrop is never entered), and get hero-density everywhere the player actually walks with zero seam complexity. That is a real alternative and is exactly why this stays Josh's ruling rather than an auto-apply; C's rebuttal is to tier only across genuinely-disjoint AOIs, never within one contiguous landscape, which neutralizes the seam artifact while still letting a 40 m spring pocket and a 2.5 km corridor each get an honest resolution.
To rule, say: D-MPV Option C — ratify the 1 m hero / 2 m standard / 5-10 m ambient ladder, or name a global up-or-down shift.
The materialized-argument bosses are a distinct combat class: an abstract proposition, bargain, or institution given fightable physical form, with no anthropomorphic or fauna morphology. T99_Translation_Combat names its win-condition kin REFUTE (counter with sourced truth, recitation, declare — Ch 15/18, Ch 69 the Architect where the school is the boss), but the early instances span wider verbs. The three named cases: the Polo's Vital-Force Theft (flores_island, CH02_B06, BE_0002_S2, verbs REFUSE and SENSE) — a soul-eater's bargain manifesting as an escalating offer that must be read and rejected, sensed through the waking vril-trace as hollow; the Tombo-Holes proverb-construct (flores_island, CH03_B07, BE_0003_S3, verbs DECODE and EXPOSE) — a manifestation of reversed words inverting each proverb Elder Bernardus speaks true, defeated by pairing each twist against his untwisted register and naming the twist before the community; and the Certification-Shadow apparatus (bali, CH04_B07-09, BE_0004, a MAIN boss, verbs PERCEIVE and STRIKE, three phases), already RULED a skin as bhuta-kala, the island's own out-of-balance chthonic demons in the Ogoh-ogoh register, staged on the wayang shadow-screen. The class's apex is the Ch-69 Architect, a hall made to hold the last of the argument, the declare-recitation of the 42 Negative Confessions answered by a lived life, the never-fights honorable-tempter.
This is decided now because the page-pipeline review found AssetGen is a verified blocker for this class: its generate-prompt requires a morphology value, and the staged materialized-argument bosses have no analog and no morphology anywhere on the page. The review added a director-safe asset_concept field with an asset_status concept-pending routing flag but explicitly deferred the LOOK as genuine creative canon for Josh or the quest-layer author. This brief supplies the missing shared visual language for the whole class so the slot fills once, not per boss. The §17.1 hard constraint on all options: the construct is never a culture's own sacred or revered being (Rangda held out and never villainized, real sacred script referenced not reproduced) — its flesh may only be the tradition's own condemned register (the polo witch-being, the leyak or bhuta-kala, the twisted-word forger) or a neutral abstraction, and the antagonist routes through the broker or institution, never the community.
Adopt A (Inscription-Made-Flesh) as the shared composable class grammar, and formalize C as the retained per-boss skin slot — an argument, bargain, or edict given flesh out of animate mark-substance, lit by the one ruled vril-polarity shimmer, wearing its region's own condemned-register idiom. Concretely: the AssetGen composable base-morphology is script or mark-substance plus the shimmer tell (one shader, one prompt template) which fills the asset_concept slot for the whole class at once; fold B's subtraction motif in as the shared weak-point tell, not the whole body, so every materialized argument carries a hollow or deleted core that is the read-and-strike target (the Polo's hollow gift, Tombo's cut-out meaning, the Certification-Shadow's excised performance), giving the class one recognizable where-do-I-hit-the-idea grammar; and each boss keeps, as per-boss creative freedom, its regional mark-idiom, its silhouette or effigy skin from the tradition's condemned register, its palette and polarity, and its animation signature. This absorbs the best of all three, unblocks AssetGen with a composable morphology, keeps the already-ruled bhuta-kala skin, and preserves the theft-hollow theme as the tell. It scales to the Ch-69 apex, which is the grammar's ceiling: a spare inscribed-architecture hall written from the 42 confessions, weapons quiet, the mark-substance dialed all the way down to grave restraint, so the class reads as one family from the Ch-2 soul-eater's lure-script to the Ch-69 hall. The care rule binds across the class: the mark-substance is always the forger's, inverted, or invented hand, never the authentic consecrated script or a revered being reproduced.
The class spans two poles a single grammar may fit neither well: the early folklore end (a Nage soul-eater, a bhuta-kala) wants pure C, authentic condemned-being morphology the player fears on sight, while the philosophical apex (the Architect who never fights, mode dialogue, a hall of restraint) wants near-formless architectural stillness. An inscription-substance grammar risks making the folklore bosses look like text-effects that cheapen their demonology skin, or making the Architect look like a generic glyph-monster when his whole power is quiet near-humanity. The answer is that the shared layer is deliberately thin — the vril-polarity shimmer plus a hollow-core tell plus mark-substance concentrated only at the strike-point — while the silhouette stays fully regional, so the folklore end still reads as its authentic condemned being and the Architect stays a spare inscribed hall. This is the real risk to watch in the first concept pass; if the thin shared layer cannot hold both poles legibly, the fallback is to let the shimmer and hollow-core tell alone be the shared grammar (pure C morphology) and accept the higher AssetGen cost. Because this is a feel and creative call at the heart of the class's identity, it is Josh's to ratify; the director then executes the composable-base-plus-regional-skin architecture and the asset_concept schema slot autonomously once the look is chosen.
To rule, say: D-MATARG-LOOK — inscription-made-flesh grammar plus regional condemned-register skin plus hollow-core tell, or name the fallback (shimmer-plus-hollow-core only, pure regional morphology).
The six-option voice wheel's framing and roster are already ratified canon, so this is not open-canon invention: HL_0039 (CVD §17.8, every dialogue moment surfaces six options), HL_0040 (all six written and voiced), HL_0068 (four biography options universal); the roster is named in T1_Integrity_Paths §6.1 (Truly Good, Truly Bad, Sympathetic, Detached, Curious, Defiant) and structured in CVD §10.1 (four biography options carrying texture, one Good, one Evil). What is genuinely open is the tone-to-fork-direction mapping and the selection-to-integrity delta, and both are the quest-layer face of two rulings already teed up and pending in docs/spine/SIX_OPTION_COLLAPSE_BRIEF.md: D-8.0, the biography-slot delta discipline (CVD §10.1 and §10.3 say biography options carry texture with no integrity shift; IPW §6.4 softly says do not add substantial new integrity shift; the brief recommends the CVD-literal zero-delta reading and notes CH_17 currently violates it in two cells, DEFIANT and CURIOUS); and O-8 §1, whether the spine models per-slot slot-to-outcome routing at six-option forks or that rides to the dialogue build. The Ch 2-5 spike hit exactly this: at CH03_B08 a six-option node appends to WS_018 with no spine fork, and at CH04_B09 the fork is four action-keyed combat_resolution options across three directions, not six tones. A side note: the CVD cross-cite is itself stale — IPW and Contracts cite CVD §13 voice system but the six-option framework is CVD §10 (§13 is the World Boss and MMO layer); the task pointer inherited the same mislabel.
Option A. Ratify D-8.0(i) — biography slots (Sympathetic, Detached, Curious, Defiant) carry zero integrity delta; only Truly Good and Truly Bad carry the fork's class delta, per CVD §10.1 and §10.3 — and O-8 Option D — per-slot tone-to-outcome routing rides to the dialogue build; the spine carries a dialogue_six_option fork only at deliberate maximum-weight beats (Ch 75 Father Encounter, CH_17). This is authority-hierarchy-dictated and auto-closes the quest-layer CG-16: the quest six-option node records its slot to WS_018 as a texture accumulator with no promoted spine fork, integrity motion lands only on Good and Evil, and the tone-to-durable-outcome collapse is a dialogue-build artifact. In the same pass, tighten IPW §6.4 in place to match CVD §10.3 and re-key CH_17's two illegal cells to approximately zero.
If the Ch 76-77 ending-content resolver actually reads pre-Ch-75 WS_018 entries — it is a declared consumer of the per-chapter array and the resolution function is unauthored — then the spine's 1-of-79 WS_018 coverage is a genuine hole and Option F (spine models per-slot routing) is right instead. The recommendation rests on the ending determination being scoped to Ch 75 (HL_0069 applies to Ch 75, IPW §6.6), which is strong but not certain; O-8 itself flags this as the one thing that could revive Option F on its merits.
To rule, say: CG-16a Option A — biography slots zero integrity delta, per-slot routing rides to the dialogue build, spine forks only at max-weight beats.
Two coupled problems on elevated-care routing, and this is a §17.1 Care Doctrine process call. First, the §6.8 high-care batch-audit list is a fixed chapter set — Ch 29 Sámi, Ch 42 Haiti, Ch 57 Australia, Ch 11, Ch 12, Ch 13, Ch 47-48, and Ch 50. CH_04 (Bali) is not on it, yet its spine carries the leyak, Rangda (revered-and-feared, never slain), and bhuta-kala with HL_0005 shaping and a live reveal ceiling. Under current routing, quest_type main_story_per_chapter routes to the standard quest track, which is Quest-Writer-agent-only (§6.4), with no batch cultural-authenticity audit and no author-in-loop, so elevated-care material is authored ungated. Second, a verified data contradiction: the CH_04 spine entry header carries author_in_loop_required TRUE (canonical_hard_line_flag FALSE, cultural_depiction_tier standard), but §6.5's quest-row author_in_loop_required is keyed to quest_type (TRUE only for canonical_hard_line per Decision 5A), so it drops to FALSE for main_story_per_chapter — the spine's high-touch signal is discarded at the quest-routing boundary. The spike drafts themselves diverge: CH_02 asserts TRUE from the spine header while CH_03 and CH_04 and CH_05 assert FALSE on the quest rows. FORK_CH04_A's care_band is open, so care_band cannot serve as the trigger either. §6.5 lists CG-26 as an explicitly open needs-ruling gap.
Route to Josh as a §17.1 policy call, with a recommended shape: adopt Option A, making the audit trigger content-driven. Honor the spine-entry author_in_loop_required at the quest boundary (fixing the discarded-signal bug), and add a cultural_attention flag fed by cultural_depiction_tier plus HL_0005 presence plus a live reveal_state, so elevated-care chapters outside the fixed eight are gated by their content, not their chapter number. The bug half (spine TRUE discarded at the quest boundary) is director-executable immediately once the policy is set; the policy half is Josh's: specifically what tier of gating elevated-care-outside-the-list receives (full author-in-loop, batch-audit-only, or agent-with-substrate) and how broad the trigger fires.
A content-driven trigger that fires on HL_0005 presence could sweep a large fraction of the culturally-grounded chapters into human-in-loop review, re-collapsing the two-track split whose entire purpose was to keep author load bounded across 77-plus chapters. If so, Option B's explicit curated list — accepting the lag and patching it at each Range Review — may be the more honest cost boundary. The recommendation assumes the elevated-care set is small enough that content-driven gating stays affordable, which needs a headcount check against the full arc before the trigger breadth is fixed.
To rule, say: CG-26 Option A — content-driven care gating; set the tier for elevated-care outside the fixed eight (full author-in-loop, batch-audit-only, or agent-with-substrate).
The WS_025 identity_hiding_status enum tops out at CONCEALMENT_WITH_HOSTILE_RECOGNITION. The design question, deferred to Josh at the D-1 consistency audit (commit 9b288b1, 2026-07-19): does the arc need a formal post-reveal terminal value on the concealment axis. The record lives across three places, not a standalone brief: OPUS_HANDBACK_POST_V3.md marks it RESOLVED 2026-07-15 (no new value); SPINE_LIVING_REVISION_LOG records the RECOGNIZED_AS_KIN extension DECLINED (a second value on one scalar) and, at batch-8, that the bare enum held inert across the whole Ch 66-to-Epilogue span with the terminal question riding to Josh. Decisive corpus usage: the value is set once at CH_08 as a bare-enum transition and held unchanged through Ch 77 and the Epilogue; CH_66 names the bare-enum discipline explicitly, with the within-threshold RECOGNIZED-AS-KIN and the Ch-76 father-recognition as felt texture, not an enum transition; Ch 77's sanctioned thesis reveal writes no world-facing transition; the Epilogue makes no new worldstate write at all. The reveal is a reveal-discipline event (HL_0043, Ch 77), never a worldstate transition, because it never goes world-facing — the protagonist is off-world Ch 66-to-77 and the Epilogue is the unseen-reader frame.
Confirm the resolved disposition: no new WS_025 enum value. The terminal state is CONCEALMENT_WITH_HOSTILE_RECOGNITION held inert Ch 8-to-Epilogue; the reveal is a reveal-discipline event (HL_0043), not a worldstate transition, and all kinship and father-recognition content is texture (per the bare-enum discipline named at CH_66 and the batch-8 enum-first normalization). Document the rationale in the registry note so the absence is a recorded decision, not a gap. This is presented as a JOSH ratification rather than a director apply because it was explicitly deferred to Josh as a design brief, and because a terminal state on the identity axis is a design call about the reveal mechanic (does the protagonist's concealment ever mechanically end) that sits on CVD §17.4 and §17.9 reveal-discipline canon — even though the corpus has already de-facto answered it and the recommendation is a low-friction confirm.
The item is arguably already-decided (resolved 2026-07-15, executed across 70 nodes, extension declined at batch-8), so routing it as a fresh JOSH call could read as re-litigating a closed question. The counter: it was re-surfaced by the D-1 audit as an open design brief precisely because the resolution lives scattered across a commit message, a handback line, and two revision-log entries rather than a ratified registry decision — a one-line Josh confirmation converts a de-facto disposition into canon and closes the only thing that could reopen it, a future decision to stage a world-facing reveal, which would be new canon.
To rule, say: WS_025-TERMINAL — confirm, no new enum value; the inert CONCEALMENT_WITH_HOSTILE_RECOGNITION is the terminal state.
✅ ALL FIFTEEN EXECUTED (director pass following the 2026-07-21 ruling batch): landed in
T1_Build_Pipeline_Contracts (§1.7 / §5.5 / §6.5 / §6.11 / §7.5) + IPW §6.7 + T99_AssetGen
§4.3 + the Region Page Template §13 stub, double-critic GO, veto surfaces recorded inline.
The CG-25 validator shipped as gate #18 ws_value_form (WARN) + docs/ws_value_form_sweep.md.
Execution record: docs/spine/DECISIONS_PENDING_JOSH.md banner (the 15-conventions block).
The table below is the historical spec, no longer a work order.
These fifteen are schema conventions with a clearly-best answer under existing ratified canon. Each is director-executable under standing autonomy the moment this brief lands, with the named veto surface preserved for Josh — a surface, not a blocking gate. Where a convention brushes a do-not-invent boundary (a new observed-enum member, a domain-extending token, a system-canon durability call), the veto column names the piece that routes to the flag rather than being auto-coined.
| Item | Recommended convention | Veto surface |
|---|---|---|
| D-POLY-BUDGETS | Multi-metric per-category-by-spec-class budget table; author the steam_deck_minimum simple tri/LOD/collision column first to unblock the Blender §4.3 Decimate target; triangle budgets bind only skinned non-Nanite classes (Creatures, Familiars), collision (always simple convex/capsule/box), and a memory-sanity prop cap; govern the static Nanite classes (Weapons, Vril Sites, Architecture) by draw-call/instance, material-slot, and VRAM/streaming-pool with the tri cell reading Nanite source-uncapped memory-governed; mark every number ILLUSTRATIVE-until-5090-benchmark. The four spec classes are already enum-locked canon in Contracts §1.7. | The doctrine call to drop triangle budgets as a static-geometry control (an engineering veto for Josh or the UE-build owner), plus eventual sign-off on the benchmarked numbers and confirmation the steam_deck floor is a real ship commitment. Neither blocks authoring the illustrative structure now. |
| CG-13 | Add quest_giver (a participant-ref FK reusing the CG-08 grammar, with a giverless or environment sentinel) plus a trigger_type observed-enum (giver_dialogue, origin_node_auto, environmental, pursuit, item_or_site); types giver and trigger facts already carried on the spine. | trigger_type stays an observed-enum ratified against the four spike chapters and extended only on attested demand (WS_009 discipline); a later chapter surfacing a new start-condition extends, never speculatively closes. |
| CG-14 | Add typed fail_state (none, reward_on_death, retry_with_bank, reroute) plus progression_guarantee (plays_through, branches_reroute, soft_gate_with_alt), wired to harness/check_no_dead_end.py and the WS_028 rerouted_paths contract; instruments the ratified no-dead-end and reward-on-death invariant. | The enum taxonomy of what counts as a legal non-dead-end (a marginal case like soft_gate_with_alt) instantiates existing multi-path canon rather than setting new policy; surface if a margin reads as a hidden value call. |
| CG-15 | Add a typed fork-option FK from a quest branch into the spine §10b fork-option (carrying direction, delta-class, mark_write); rule pre-lock direction a separate axis from path_bucket, which stays UNLOCKED pre-lock and never carries direction. | The three-parallel-bucket-vocabulary reconcile must be a real audit; if it finds a genuine third live axis, that piece rises to a ruling. |
| CG-16b | Scope the six-option wheel to dialogue moments (pre-verbal chapters carry Action or silence-form nodes per CVD §10.2 and IPW §6.2, spoken form switching on at protagonist speech ~Ch 3); set the player node to the literal protagonist token with CHAR_0001 as its persona row; confirm and document WS_018 as a system-level accumulator exempt from micro-fork-promotion; fix the stale CVD §13-to-§10 cite across IPW and Contracts. | Sub-part (i)'s childhood-arc feel: if early childhood is meant as pure authored close-third with no player agency until speech, Option C (no six-option nodes pre-verbal) is right instead. This one sub-part carries a feel component. |
| CG-17 | Add a non_lexical_vocalization dialogue_type plus a sensation_caption field and a subtitle_exempt boolean, keyed to a CG-08 creature or folklore ref; route the audio-tag-only, no-line generation convention to the §4/§6 direction-notes pass. Gives the reveal-as-sensation register its own gate-checkable, accessibility-correct home. | Downstream cost: ElevenLabs §4 and Cinematic §5 must both skip a line_text-less subtitle-exempt node. If the register proves rare, a lighter subtitle_exempt flag on scripted_response could carry it, at the cost of empty-line_text ambiguity. |
| CG-18 | Add an interiority_narration dialogue_type with a no_voice flag and full line_variant_array support, so CVD §15.1 close-third narration lands where it inherits biography-band and age-stage modulation; apply under autonomy but with visibility to Josh as a high-stakes convention (it fixes where the game's primary narrative voice is authored). | The architecture bet: if narration is later authored as continuous chapter prose over the beat graph rather than per-quest nodes, a separate channel (Option B) becomes the better home and the dialogue-dataset embedding turns into migration cost. |
| CG-20 | Rule the §13 scene-row coverage predicate as set-piece plus boss-phase plus dialogue-dense beats (by a checkable threshold), not per-objective, so the orphaned dialogue-dense caci beats get a bindable scene row without exploding scene count on transit or scaffold beats; pair with the pipeline-review AK ruling on boss-phase cinematic scope. | The AK boss-phase-cinematic-density sub-call touches authorial feel (full cinematic per boss phase versus resolution-only); it is within-vision (a density knob) so it stays DIRECTOR, surfaced as a preference not assumed. |
| CG-21 | Rule quest_type by spine role (a main-graph core or climax beat is main_story_per_chapter); the folklore or materialized-argument nature rides a secondary encounter-facet, never the primary quest_type; folklore quest_types stay for genuinely folklore-only side beats. | The secondary-facet field must land or the folklore character is dropped; it types a fact already present in the boss row, so it is instrumentation, not invention. |
| CG-22 | Adopt the typed region-page Section-13 seed stub (proposed_quest_type, suggested_questline_id, zone or site ref, and realized_beat_ref or an explicit region_ambient marker) as the §7 region-page seed contract, matching the pipeline-review AM item; types the page's own prose authority and closes the landing gap. | Seeds that fit no quest_type (pre-home-base trade SD_CH_04_04/05, pustaha-recovery) may demand a new quest_type member; that category-mint rides the observed-enum discipline and routes to the flag rather than force-fitting. |
| CG-23 | Rule the local-to-ws promotion criterion: a local.* write is promoted to a ws.* key iff it is read at a later chapter seam or appears in an End-state carry-forward block, else it stays chapter-local; twins the existing micro-fork-promotion rule and is seam-validator-checkable. Applied to the vril-floor it stays local as authored and surfaces the prose-versus-model mismatch. | Whether the permanent vril-floor raise (VS_CH03_001) is meant to be mechanically durable, and if so whether its home is a new Worldstate variable or the D-06 capability/mastery layer, is system canon and rides to Josh or the vril-system owner explicitly, not resolved by the criterion's default-to-local. |
| CG-24 | Compose same-key ws.* writes to an OBJECT variable by disjoint sub-field, keyed on the identity field (WS_019 by community_id, per the Josh-ratified D-COMBAT-TD R8 mark_write mapping: valence to accumulated_integrity_signal, persistence to recovery_state); two writes to the same scalar sub-field of the same identity are a spine authoring error flagged by a seam validator, never silently merged or overwritten. | A future same-sub-field double-valence has no defined precedence; the validator flags it and the honest fix is authoring (one valence source per sub-field), never a silent precedence rule — surfaced, not auto-resolved. |
| CG-25 | Rule head-token-in-domain under the observed-enum-pin discipline: a ws.* write value is legal iff its head resolves to a declared domain member (enum, written bare) or a named sub-field (object) of its WS_NNN variable; the descriptive tail is texture on a beat note; the plus prefix means append or accumulate and is legal only on object/ledger/cumulative variables (WS_008, 012, 018, 019, 026, 027); ship the WARN-to-ERROR value-form validator and run a one-time enum-first corpus sweep; extend a domain only on attested critic-verified demand. | A token that resolves to no domain member and implies new state (the standing example WS_009 record_released_public, reserved to Josh per O-5) asserts new canon on promotion; the rule must route such tokens to the flag, never silently coin them. |
| CG-27 | An in-beat familiar bond is a WS_012 state_write on its host beat (the familiar_bond quest_type reserved for dedicated bond questlines); add a WS_012 deferred or gated bond_status sub-field for gated encounters (the Sanur Octopus W4), splitting the current single token into clean sub-field writes; consistent with the CG-25 sub-field rule. | The ungating condition (what unlocks the Sanur Octopus later) is authored on the later resolving beat, not minted here; the bond_status field is a slot the spine fills. |
| CG-28 | Rule the chapter as the quest-ownership unit; each beat's region derives from its site_ref or zone_ref region-page FK; consumers union the region-page set of a chapter's beats (adopting the pipeline-review AO consumer rule); mints no new ownership concept, since the split is already expressed by existing beat-to-site-to-region FKs. | Pair the ruling with a validator asserting every excursion beat carries a region-resolvable anchor; a beat anchored only to a chapter cannot resolve its region. That is instrumentation, not a design call, so the item stays DIRECTOR. |
Pointers only — no re-analysis. These are tracked elsewhere and carry no decision for this brief.