Unit Data Schema - Omega War

Stage 1 research-scope review · staged cycle: unit-data-schema · page created 2026-06-13 · confirmed 2026-06-15

alignment_status: confirmed - Stage 3 canonical artifact written.
Current-cycle note: this Stage-1 hub is superseded for active working status by the per-topic unit-schema packet under research/unthinkable/_working/unit-data-schema/ and the topic pages linked from alignment/index.html. The canonical synthesis now lives at research/unthinkable/unit-data-schema.md. The legacy research/_working/preliminary-unit-data-schema.md path below is preserved as the original Stage-1 proposal, not the current routing surface.
This page proposes the scope, schema design questions, input sources, entities, assumptions, output paths, and post-approval route for the unit-data-schema cycle - the shared unit/division data schema for the tactical layer, the deck builder, and the campaign map. The cycle origin is the confirmed game-genre-map forward route confirm-unit-data-schema (genre-map §10 / E15). This page does not introduced no combat stats, prices, card counts, trait buff/debuff numbers, or balance. The Stage-3 schema synthesis is confirmed and remains amendable through later specs.

1. Proposed Cycle Summary

Purpose: draft the shared unit/division data schema for Omega War - the structured shape that every layer reads from. The schema is the substrate the tactical layer (units on the battlefield), the deck builder (decks/bands/card-rosters), and the campaign map (divisions, refit, persistence) all reference, so a single agreed shape prevents three divergent ad-hoc models.

Primary boundary: this cycle defines shape, not values. It enumerates entities, fields, enums, and relationships with a few illustrative filled rows for clarity. It does not assign combat stats, prices, exact card counts, trait buff/debuff numbers, or balance - all of which are explicitly deferred across the source files.

Immediate downstream use: a confirmed schema unblocks the tactical vertical-slice spec, the deck-builder spec, and the campaign-map persistence model by giving each a stable contract to build against.

1.1 Inputs already approved

1.2 Shape-not-values boundary

The proposed Stage-2 deliverable is a shape-not-values data spec: entities, fields, enums, and relationships, with a few illustrative filled rows. No combat stats, prices, exact counts, or balance. This is the UDQ2 default the user ratifies below.

Gate - UDQ1 Scope required

Approve this cycle scope - draft the shared unit/division data schema (shape, not values) from the inputs above - as the Stage-2 scope for unit-data-schema?

2. Schema Design Questions

These are the questions Stage 2 will answer when it drafts the schema shape. They are listed for scope agreement, not answered here.

IDQuestionExpected decision output
UDQ-aWhat is the entity set the schema must cover, and how do the entities relate?Entity list + relationship map (unit/card, equipment item, variant/upgrade, faction, deck, deployment band, card-roster, trait tag, division/To&E, command-post surface, wonder slot).
UDQ-bHow are fields and enums defined for each entity (names, allowed values, optionality)?Per-entity field tables with enum value sets and required/optional markers.
UDQ-cHow is the match-phase vs campaign era-band split represented?Two distinct fields - match-phase A/B/C and campaign era-band E0/E1/E2 - never conflated (arsenal §2/§4).
UDQ-dHow is the variant/upgrade model encoded?Encoding for the three §4A.1 variant/upgrade patterns.
UDQ-eHow are veterancy and trait-tag fields represented on a unit?In-battle veterancy field now; trait-tag field with deferred catalogue/numbers (Prototype).
UDQ-fHow are deck, deployment band, and card-roster modeled (deck × band × cards)?Relational shape for deck-as-roster, band A/B/C, and the per-deck card-roster.
UDQ-gHow are wonder-slot constraints expressed?Wonder-slot entity + the one-slot / anti-rush governance constraint as a shape.
UDQ-hWhat is the deferred-values policy?Explicit "shape only" markers; no stats/prices/counts/balance authored.

Gate - UDQ2 Deliverable Shape required

What shape should the Stage-2 working packet produce?

3. Input Sources / Evidence Coverage

The schema is built from already-confirmed internal artifacts. No external research is required - this is a design-synthesis cycle over approved sources.

Source sectionWhat it supplies to the schema
arsenal-1945.md §4AUnit-category taxonomy - the accepted 12+4 card-class enum.
arsenal-1945.md §3Per-faction equipment tables - the equipment-item entity and its faction/category attributes.
arsenal-1945.md §4A.1Variant/upgrade model - the three variant/upgrade patterns.
arsenal-1945.md §4BZone dial + one-wonder-slot - zone/phase fields and the wonder-slot constraint.
divisions-1945.md §4 / DRQ2To&E → card-class proportions - the division/To&E entity and proportion fields.
proposed-divisions-and-decks-roster.md §6.1/§6.2/§6.3/§7.2/§8Deck/band/card-roster model, CP unlocks, and governance.
game-genre-map.md §3Veterancy (must-have), unit trait tags (Prototype), cover/suppression context.
glossary.mdTerm anchors: deck-as-roster, deployment band, unit trait tag, reward shelf, plausibility tier, era-band, refit culture.

Gate - UDQ3 Coverage required

Approve these input sources as the evidence base for the schema?

4. Entities to Model

Proposed entity set for the schema. Each row lists already-documented attributes and the gap Stage 2 must close. Attributes describe shape; no values are assigned here.

EntityAlready-documented attributesGap to close in Stage 2
unit / cardclass enum, faction, category, era-band, plausibility tier, zone, phase band, veterancy, transport, trait tags, framing note, source/reliabilityField names, enum value sets, optionality, and which attributes are shared vs per-faction.
equipment itemfaction, category, plausibility tier (arsenal §3)Relationship to unit/card; whether equipment is a separate entity or a unit attribute.
variant / upgradethree §4A.1 patternsHow each pattern is encoded as a shape (base + delta vs distinct rows).
factionidentity, roster ownershipField set; link to decks, units, equipment.
deckstatus, archetype, strength/weakness, refit culture, wonder slotField set; relationship to division and card-roster.
deployment band A/B/Cband identity (roster §6/§7)Representation as an enum/field on the card-roster relation.
card-roster (deck × band × cards)per-deck card listing across bandsThe relational join shape (deck × band × card).
trait tagshock / commando / militia / leader (Prototype)Field shape only; catalogue + buff/debuff numbers deferred.
division / To&Ecard-class proportions (divisions §4)How proportions map onto deck/card-roster as a shape.
command-post surfaceCP unlock model (roster §8)Representation of unlock gating as a shape.
wonder slotone-slot constraint, anti-rush governance (arsenal §4B, roster §8)Constraint expressed as a schema rule.

Gate - UDQ4 Entities required

Approve this entity set as the schema's modeling scope?

5. Assumptions and Constraints

Gate - UDQ5 Assumptions required

Accept these assumptions and constraints for the schema cycle?

6. Outputs, Paths, and Route

StagePathPurpose
Stage 2 working packet (superseded proposal)research/_working/preliminary-unit-data-schema.mdOriginal non-canonical schema draft path proposed by this Stage-1 hub. Current active topic packets live under research/unthinkable/_working/unit-data-schema/.
Stage 2 review pagealignment/unit-data-schema-omega-war.htmlConverts the working packet into approval gates (this page advances in place).
Stage 3 canonical artifactresearch/unthinkable/unit-data-schema.mdApproved unit/division data schema (shape, not values).
Stage 3 glossary updatesresearch/unthinkable/glossary.mdOnly if the Stage-2 artifact proposes and the user approves new terms.

Gate - UDQ6 Working Packet Path required

Approve the Stage-2 working packet path?

Gate - UDQ7 Canonical Path required

Approve the proposed Stage-3 canonical path?

Gate - UDQ8 Route After Approval required

After a confirmed schema, what should the next project route be?

7. Compile Approval YAML

Answer all required gates above, add optional section feedback, then compile and copy the YAML into the next execution message.