Files
ARCADIA-Studio/harness/scenario-text-union-20260923.md
T

72 lines
4.2 KiB
Markdown

# Saved Scenario and Text composition
Branch-specific source composition from root `5960563b23b3f28f83343c283b7c156bf248994a`
and Scenario/inspector `14e7e6aa46f59346c7a9a478fc9498fd0b496aaf`.
This is an unverified integration candidate, not a release or completed native gate.
Live integration/release ownership remains with the parent session and Gitea #27.
## Source decisions
The functional Scenario delta is `208268c..14e7e6a` under `crates/`: typed
activations, saved layout and source lifecycle, complete geometry, scoped
navigation and spacing, Details/Properties, arrangement picker and fixed
inspector actions. Applying that delta with three-way content reconciliation
avoids replaying historical work independently integrated by root. Root's
instructions, user specification, records, dependencies, vendor patch and
documentation are retained; old live ledgers are not imported. Attachments,
State bends, latest transition work, private source8 and resize are separate.
The lossless writer retains root's CompleteForEdit comparison authority and
Compact/CompactValues insertion templates. Scenario EditContext is threaded
through the same record/list writer and keys only Diagram.layout.Scenario rows
by their qualified identity. Authored layout none survives unrelated changes;
clearing a real payload removes it and retains comments. No global null default
was added to the comparison representation.
App admission preserves current TextWorkspace/source/allocation/navigation and
rename-scroll envelopes before shared boundary effects. Scenario spacing and
representation/visit checks also run before those effects. Scope input-owner
equality now includes Scenario representation and visit. Current source Tab and
selection behavior are retained, as are passive WorkDrag reveal exceptions.
Root intentionally removed the obsolete panel-focus mode and Canvas button.
This integration retains that always-active canvas policy. Saved Scenario
Details opens the current inspector and dismisses its outline without replacing
the view or camera. Peer tests formerly hiding/restoring panels now exercise
the visible inspector and retained selection/view/camera. F6/Tab logical
keyboard ownership and root's same-batch suppression remain unchanged.
Typed hit roles retain the root activation-priority rules and boundary paint.
The derived sequence helper remains available to root's production deletion
eligibility guard; peer's test-only gate is inappropriate with that caller.
Properties uses the corrected two-child outer column with its Scrollable at
child 1, preserving the Properties/Connections reconciliation fix.
## Verification to perform after compiler lease
Rustfmt parsing and Git whitespace/conflict-marker checks precede the source
commit. No compiler, tests or GUI have run for this candidate at this checkpoint.
New discriminating tests combine ordinary omitted/authored defaults with
Scenario row reorder, alias rename and layout clear, and retain a live saved
spacing gesture across stale Text commands and prior Scenario visit messages.
First compile/list core and desktop tests on the frozen candidate, inspect the
actual inventory, and resolve union-only API/literal failures. Run core
`scenario_layout`, `references::scenario_layout_tests`, default-omission and
source lifecycle checks; desktop Scenario/spacing/Details/navigation,
source_indentation, rename-scroll, source-input and canvas-focus tests; HTTP
Scenario layout transaction/export/restart checks. Then full workspace tests,
strict workspace/all-target lint and matching GUI build. Existing peer totals
are not additive acceptance targets.
Native combined acceptance must include saved view/picker/Details, lower-field
Apply/Revert and Properties/Connections return, spacing plus cancellation,
Text Tab/undo/edit/Apply and return, exact view/visit restoration, save/reopen,
and preserved active keyboard focus. No native or cross-platform claim follows
from source composition. Existing smaller-window and accessibility limits stay
in force until separately exercised.
Later attachment integration must adapt new EdgeRoute literals, notably core
scenario_layout tests. Later transition integration must retain Scenario's
architecture-destination exclusion while adding counterpart search/footer.