Files
ARCADIA-Studio/harness/release-data-implementation.md
T

3.6 KiB

R6 implementation freeze — schema/source 4

Status: active implementation in isolated D:/CodexBuilds/Capella2-data-integration. State editing is accepted in main a8f451e; DATA includes its navigation fix and evidence. The full first-release goal remains incomplete.

Outcome and contract

Implement the complete data/interface contract in release-data-contract.md before accepting schema/source4 artifacts: nature/mechanism, bounded scalar types/defaults, field direction/storage, qualified scenario value paths, single specialization, identified interface-item allocations/protocols and binary reference associations. Use its exact types and validation rules. Existing PortContract and legacy resolution/split behavior are authoritative; the old R6 InOut paragraph is superseded by release-port-contract.md. R6 never creates a new InOut functional contract.

Retain three crates, Project and validated atomic Command/Document boundaries. Use data.rs shared helpers for effective fields, item ancestry, inherited interface allocations, carried field paths and value validation. Reference visitors own live references; no second model or mutation API. Inherited rows expose original identity. Scenario paths disambiguate reused records and stop at Reference storage.

Sequence and ownership

  1. Core owner freezes public shapes/helpers, implements typed data validation, reference/removal/transition maintenance and focused meaningful regressions.
  2. Source/migration owner preserves V1/V2/current3 inputs through an explicit4 reader; updates parser/source-project migration without flattening nesting, includes or comments. Frozen strict DTOs only for changed old payloads plus a closed old constructor catalog avoid cloning the whole metamodel.
  3. Desktop owner integrates typed forms, path pickers, readable nested dictionary and interface-allocation rows. Root integrates OpenAPI/spec and actual REST.
  4. Full tests/strict checks, source/JSON/HTTP roundtrips, invalid/stale transactions, Windows/Linux native authoring, compact UI and fresh independent review.

Separate files per owner; communicate model/helper signatures before dependent edits. Use a dedicated target for this worktree. No simultaneous Cargo mutations. Do not publish or accept intermediate4 files until both payload and dictionary slices are complete. R3 semantic reconciliation follows this shape/reference freeze.

Required evidence

  • Physical flow and Operation parameters use bounded reusable types and defaults.
  • Two parameters using one Record retain distinct value paths through calls/replies, reidentify/delete, graphical/source edits and initial transitions.
  • Two interfaces allocate one item with independent protocols/artifact links; removing one allocation retains the item and the other allocation, and Undo restores it.
  • Specialization/inherited fields and associations preserve ownership and identity; invalid cycles/defaults/paths/ranges reject atomically, incomplete drafts warn.
  • V1/V2/current3 migration preserves identities, typed ports, comments, includes and nested ownership; deterministic allocation IDs and unresolved legacy annotations have explicit diagnostics. GUI/source/REST save/reopen agree.

Alternatives: silent changes under schema3 rejected because existing saved3 projects are real compatibility inputs. Whole-model frozen DTO/validator duplication rejected in favor of strict changed-payload compatibility adapters. Generic JSON diff or opaque body replacement is not the R3 solution. Instance literals, unit conversion, expression execution and multiple inheritance remain explicitly outside this bounded contract; the release requirements for categories/filters are separate.