Record Windows and Linux direct state editing acceptance
Rust checks / check (ubuntu-latest) (push) Canceled after 0s
Rust checks / check (windows-latest) (push) Canceled after 0s
Rust checks / check (ubuntu-latest) (push) Canceled after 0s
Rust checks / check (windows-latest) (push) Canceled after 0s
This commit is contained in:
+94
-169
@@ -1,188 +1,113 @@
|
||||
# First release — current engineering state
|
||||
|
||||
## Objective and current phase
|
||||
## Objective and phase
|
||||
|
||||
The first-release goal remains active and incomplete. Deliver Rust/Iced Operational
|
||||
Analysis and System Analysis/System Architecture for system engineers, equivalent
|
||||
graphical/textual/REST semantics, hierarchical diagrams and typed ports, modular
|
||||
source projects, artifact traceability, editable behavior, useful offline help,
|
||||
and Windows/Linux release evidence. Later Arcadia layers remain future releases.
|
||||
Authoritative objective: attachment
|
||||
`07aee762-7d27-4cbe-81c3-2e82c7170711/goal-objective.md`, reread 2026-09-06.
|
||||
PLAN.md, TASK_LEDGER.md and release-semantics-audit.md retain full release scope.
|
||||
The first-release goal remains active and incomplete. Deliver usable Rust/Iced
|
||||
Operational Analysis and System Analysis/System Architecture, equivalent graphical,
|
||||
textual and REST semantics, artifact traceability, directly editable behavior,
|
||||
offline guidance, and Windows/Linux release evidence. Later Arcadia layers remain
|
||||
future releases. The full authoritative objective was reread on 2026-09-06:
|
||||
attachment07aee762-7d27-4cbe-81c3-2e82c7170711/goal-objective.md.
|
||||
PLAN.md retains the entire release scope; no subsystem acceptance completes it.
|
||||
|
||||
The latest user-directed drawing/port/menu/source-tree milestone is accepted at
|
||||
`fef2e0d` plus tooltip-layer follow-up `ad7feb5`. It does not complete the release.
|
||||
Root now integrates direct state-machine editing in an isolated worktree. There
|
||||
is meaningful implementation, independent review and real runtime progress; no
|
||||
external blocker or disk blocker exists.
|
||||
Direct state-machine editing is accepted through production316dc55. The main
|
||||
checkout can fast-forward to this integration. R6 data/interface contracts are now
|
||||
being implemented in a separate checkout; they are not accepted or released.
|
||||
Meaningful implementation and runtime progress continues; no external blocker exists.
|
||||
|
||||
## Accepted foundations and evidence
|
||||
## Accepted foundations
|
||||
|
||||
- Typed OA/SA model, schema 3 ports, validated atomic commands and ordinary history
|
||||
are shared across three Rust crates. Typed contracts and migration are documented
|
||||
in release-port-contract.md, release-port-core.md and release-port-migration.md.
|
||||
Desktop typed authoring checkpoint `fa096ce` passed native creation, generation,
|
||||
undo/redo and persistence. Original Capella was operated in a disposable workspace;
|
||||
exact observed semantics/workflows: release-capella-workflow-benchmark.md.
|
||||
- Explorer/port discovery `d364d3c`: visible Add port, grouped roots, focused children,
|
||||
breadcrumbs, contextual search/paging and full-depth outline. Windows port/Standard
|
||||
exchange, 251-root paging, 12-level navigation and 1100x700 trials passed; rebuilt
|
||||
Linux save/reopen/font correction passed. See release-explorer-usability.md.
|
||||
- Editable routes `23535b4`, viewport fix `366ce44`, automatic labels `65fa9ab`:
|
||||
authored bends/labels, nested group movement, folding/restoration, undo/redo,
|
||||
save/reopen, SVG and minimum-size gestures passed native and independent review.
|
||||
See release-routing-verification.md and release-routing-linux.md. Dense optimized
|
||||
full solve measured119ms; arbitrary dense crossings remain possible.
|
||||
- Nested source and coupled hosted source/model checkpoint `4e8575b`: source3
|
||||
element nesting/includes, token/provenance-aware structural writes, exact model
|
||||
source history, retained drafts and safe Save All/recovery. Full422 Windows and
|
||||
425 Linux tests, strict checks and builds passed at that checkpoint. Actual REST
|
||||
import/comment-only revision/cross-file reparent/stale ETag/restart passed.
|
||||
Windows/Linux source and nested graphical edits, save/reopen and recovery were
|
||||
exercised. See release-source-integration.md. Experiments remain evidence only;
|
||||
do not adopt their independent parser/writer.
|
||||
- Core typed OA/SA semantics, validated atomic commands and ordinary history are
|
||||
shared by three Rust crates. Typed ports, explicit unresolved migration and
|
||||
original Capella observations: release-port-{contract,core,migration}.md and
|
||||
release-capella-workflow-benchmark.md.
|
||||
- Explorer/port discovery d364d3c: Add port on participants, grouped roots, focused
|
||||
children, breadcrumbs, contextual paging/search and full-depth outline. Actual
|
||||
Windows creation,251-root/12-level trials,1100x700 and Linux reopen/font fixes:
|
||||
release-explorer-usability.md.
|
||||
- Routing23535b4, viewport366ce44, labels65fa9ab: authored bends/labels, group
|
||||
movement, fold restoration, Undo/Redo, save/reopen and SVG, including minimum-size
|
||||
native trials. Dense full solve measured119ms; arbitrary crossings remain possible.
|
||||
See release-routing-verification.md and release-routing-linux.md.
|
||||
- Source4e8575b: nested lexical ownership/includes, provenance-aware token writes,
|
||||
exact accepted source/model history, retained drafts, Save All/recovery and coupled
|
||||
hosted source/model revisions. Windows/Linux native and actual REST restart,
|
||||
stale ETag, comment-only edit and cross-file reparent passed. Full422 Windows /
|
||||
425 Linux tests at that checkpoint. See release-source-integration.md.
|
||||
- Direct drawing fef2e0d plus tooltip ad7feb5: OA Interaction, SA Functional and
|
||||
Boundary Exchange by palette click-click or drag; compatible highlights, automatic
|
||||
function ports, four-side draggable anchors, contextual menus and source folders.
|
||||
Independent pointer/tooltip findings fixed and native retested. Windows193 desktop
|
||||
and Linux189+4 focused tests followed earlier full485/488 suites. Scoped native
|
||||
Windows/Linux acceptance: release-port-drawing.md and release-context-menus.md.
|
||||
|
||||
## Drawing acceptance — current main checkout
|
||||
## Newly accepted state workspace
|
||||
|
||||
`93fd32c` fixes candidate scaling without weakening validation; `35133de` supplies
|
||||
persisted four-side normalized port anchors. `fef2e0d` adds direct palette drawing,
|
||||
shared automatic labels, contextual menus and the source folder tree. OA Interaction,
|
||||
SA Functional Exchange and Boundary Exchange accept click-click or drag. Function
|
||||
cards create/reuse typed ports atomically. Compatible targets highlight; Standard
|
||||
and Flow contracts remain distinct. Pan retains source; Escape cancels.
|
||||
Production316dc55 includes typed machine views, shared persisted geometry, atomic
|
||||
region/symbol/state creation, group movement, direct transitions and reconnection,
|
||||
Internal rows, Local edges, typed detail forms, folding, placement and navigation.
|
||||
Architecture and Behavior view selections are separate. Drafts survive rejected
|
||||
source/model commits; passive camera events never apply a form.
|
||||
|
||||
Independent review reproduced batched-pointer click corruption and overview port
|
||||
mispicking. Ordered CursorMoved coordinates, explicit context epochs and nearest
|
||||
port glyph picking fix these, with production regressions. Native review then
|
||||
reproduced port-tooltip overprint: separate Frames still share an Iced GPU layer.
|
||||
The fix uses a passive second stacked Canvas (a real renderer layer). It preserves
|
||||
interactive child state/input and resets held-button suppression on context change,
|
||||
matching releases, Escape and focus loss. CursorLeft alone does not end suppression.
|
||||
Independent/native findings fixed: covered GPU shapes, pseudo-label/edge collision,
|
||||
selection-relayout drag displacement, missing typed form access, folded-content
|
||||
access, wrong-view placement Apply, and camera/tool leakage on machine navigation.
|
||||
An actual owner/view change resets gesture state and fits; returning to the same
|
||||
view preserves camera/tool. Exact evidence and limitations: release-state-editing.md.
|
||||
|
||||
Evidence is in release-port-drawing.md and release-context-menus.md. Exact native
|
||||
review report: `D:/CodexBuilds/Capella2-release1-01a06e2e/drawing-independent-native-review.md`.
|
||||
Windows independent trials passed Standard rejection/completion, automatic function
|
||||
ports, undo/redo, save/reopen and1100x700. Overprint was reproduced on9A7FF074 and
|
||||
closed on3F534C67 at1440x900 and1100x700. Root tested final1EEBDC3C: first port drag,
|
||||
menu outside dismissal, first repeated drag, direct FE, readable identity and Save.
|
||||
Saved trial: `ui-port-tooltip-final/project.arcadia`,41objects/26links/0checks.
|
||||
Verification: full551 Windows /554 Linux workspace tests and strict workspace
|
||||
Clippy at e0b2210. Final316dc55:241 desktop tests, strict all-target desktop Clippy,
|
||||
and desktop builds on each platform; five new navigation tests included. Two guide
|
||||
tests passed after help changes. Source/reST/API state contracts and actual HTTP
|
||||
rejection/revision/source/restart tests passed earlier in the integration.
|
||||
|
||||
Root operated actual Linux7AC5EEE: first FE drag, Right-to-Bottom port drag, Reset/
|
||||
Undo, repeated Bottom-to-Left drag, source-offscreen arrow pan and completion,
|
||||
Save All/reopen, persisted geometry and source-tree expansion/open. Saved trial:
|
||||
`ui-port-tooltip-linux/project.arcadia`,41objects/27links/0checks. Runtime log empty;
|
||||
Linux window closed normally, exec13766 exit0. Linux was inspected at1440x900;
|
||||
minimum-size acceptance is Windows, not a claim of Linux minimum-size testing.
|
||||
Root and independent Windows native trials covered1440x900 and1100x700 creation,
|
||||
nested movement, first-drag transition, endpoint/menu reconnect, invalid target,
|
||||
Escape, timed Internal, Local/EntryPoint, placement Apply, Undo/Redo and save/reopen.
|
||||
Linux native covered1440x900 creation, first transition/move, Undo/Redo, fold and
|
||||
saved collapsed reopen. Final316dc55 native on both platforms proved same-view
|
||||
camera/tool preservation and different-machine Fit/Select reset. Logs are empty.
|
||||
|
||||
Verification scopes: full485 Windows /488 Linux workspace tests preceded the last
|
||||
pointer/tooltip refinements. Latest main Windows193 desktop tests, strict desktop
|
||||
all-target Clippy and debug build passed. Latest Linux189 desktop tests, strict
|
||||
desktop Clippy and release build passed; four new tooltip lifecycle tests then
|
||||
passed separately. A142-test Linux result from a shared-worktree Cargo cache was
|
||||
identified and EXCLUDED; scoped package cleaning and explicit main recompilation
|
||||
established the valid189-test result. Use a distinct CARGO_TARGET_DIR per worktree.
|
||||
## Active R6 implementation and next actions
|
||||
|
||||
## Active isolated state integration
|
||||
Checkout D:/CodexBuilds/Capella2-data-integration; branch
|
||||
codex/data-contract-integration, base5ce3eef+plan2bf4c54+navigation9118218.
|
||||
Dedicated target D:/CodexBuilds/Capella2-data-target. Contract freeze is schema/source4
|
||||
with full data payload and dictionary slices together; existing typed ports remain.
|
||||
See release-data-implementation.md and release-data-contract.md in that checkout.
|
||||
|
||||
Worktree: `D:/CodexBuilds/Capella2-state-integration`, branch`codex/state-integration`.
|
||||
Target: `D:/CodexBuilds/Capella2-state-integration-target`. Main core is not yet changed.
|
||||
Ownership: data_core owns core model/data/validation/references/ports/transitions
|
||||
and non-source tests; state_architecture_review owns source/migration/persistence
|
||||
and their tests; drawing_correctness owns desktop. Root owns API/OpenAPI/reST,
|
||||
integration and native input. Do not edit workers' files or reset their changes.
|
||||
|
||||
- `e7a8163` integrates reviewed core state-context commit a63654f, preserving latest
|
||||
anchors and routing labels. State views skip semantic port layout after boundary
|
||||
snapping; both routing and label passes reserve actual internal-row headers.
|
||||
- `2459581` retains behavior drafts until Document commit succeeds.
|
||||
- `53cd096` adds typed state-context forms, placement membership choices and normative
|
||||
source/JSON/REST/OpenAPI contracts. Strict HTML generation passed. Two actual HTTP
|
||||
tests passed, including malformed/invalid rejection, revision/source atomicity and
|
||||
restart. Destination pickers permit intermediate invalid drafts so coordinated
|
||||
element/diagram retargeting is reachable; Apply remains strict.
|
||||
- `e5660b8` integrates App dirty/Close/Save/navigation/mutation guards. Exact prepared
|
||||
commands acknowledge drafts only after accepted source/model writes. Review found
|
||||
passive viewport events applying properties, queued source controls creating
|
||||
competing drafts and stale delete confirmations; all three fixes have App tests.
|
||||
Six App lifecycle tests passed, including typed source-writeback rejection/retry
|
||||
and one Undo. Clean detached buffers after Undo are intentional; reachable bundle
|
||||
and accepted Document are restored exactly.
|
||||
- Integrated baseline:514 Windows workspace tests (277core,199desktop,38server),
|
||||
strict workspace all-target Clippy passed. This baseline precedes direct gestures;
|
||||
there is no native state-gesture acceptance yet.
|
||||
1. Commit state evidence and fast-forward main from ad7feb5; coordinate Git index
|
||||
before carrying documentation into the active R6 checkout.
|
||||
2. Finish R6 core/source/desktop, integrate actual REST/schema/reST, independent
|
||||
semantic/correctness/UX review, Windows/Linux checks and real data authoring.
|
||||
3. Implement R3 typed semantic drift/reconciliation after R6 freezes. Current
|
||||
baselines/reconciliation only cover prose. Prefer historical typed-body snapshots
|
||||
and finite proposals; avoid a duplicate recursive semantic schema without evidence.
|
||||
4. Complete direct scenario/process gestures, persistent coverage/filters,
|
||||
Home/recent/recovery, hosted desktop ETag workflows and offline guidance.
|
||||
5. Fresh final requirements/domain/correctness/native UX/architecture review; full
|
||||
Windows/Linux/MSRV checks, real runtime, reproducible docs and release packaging.
|
||||
|
||||
Direct-state UI integration is now implemented (uncommitted): persisted canvas,
|
||||
creation within explicit regions, movement, direct transitions and endpoint
|
||||
reconnection, pan/zoom/Fit, typed detail forms, and contextual fold/unfold/hide.
|
||||
The old computed static state scene is removed. Source/model commands remain atomic.
|
||||
Independent review found removed typed-form access, unreachable folded contents,
|
||||
selection relayout altering drag deltas, fallback owner resetting the first drag,
|
||||
and same-size viewport events refitting the camera. Fixes preserve typed creation,
|
||||
use state-specific menus, window-space ordered gesture deltas, retained owner and
|
||||
actual-size resize checks. App tests also exposed Architecture placement leaking
|
||||
into Behavior selection; the two view selections are now separate.
|
||||
## Environment and native ownership
|
||||
|
||||
First direct-state Windows verification:231 desktop tests and strict desktop
|
||||
all-target Clippy passed, logs `D:/CodexBuilds/Capella2-state-direct-{tests,clippy}.log`.
|
||||
Native trial2A4B5C11 created a new SA StateMachine and dedicated view; it reproduced
|
||||
missing box fills/borders while text remained. Iced WGPU appends parent meshes after
|
||||
clipped children: the opaque parent background covered every node. The fix moves
|
||||
the content background into the clip and restricts the outer fill to the guidance
|
||||
strip. Native re-verification remains required. Saved reproduction is
|
||||
`ui-state-direct-01/project.arcadia`,42objects/25links/2 expected incomplete-machine
|
||||
checks. Trial window1442250 received normal close after verified Save; re-inventory.
|
||||
Root exclusively owns native input. Latest saved Windows trial is window1706782,
|
||||
ui-state-navigation-windows,49objects/28links/1 expected missing-owner warning.
|
||||
Linux navigation trial3148598 closed normally, exec46107 exit0; baseline Linux
|
||||
trial721472 also closed normally, exec72680 exit0. Independent Windows3672536 is
|
||||
saved at1100x700. Older root drawing windows are saved. Re-inventory before input.
|
||||
Protected user7210312/6228978 were absent; do not reset/save/close if they return.
|
||||
|
||||
Latest verification:551 Windows workspace tests (277core,236desktop,38server)
|
||||
and strict workspace all-target Clippy passed. A single let-and-return lint in the
|
||||
new label hit helper was fixed without changing behavior. Subsequent compact-toolbar
|
||||
changes passed desktop Clippy and build. Exact logs use `state-direct-workspace-*`
|
||||
and `state-compact-*` under D:/CodexBuilds.
|
||||
Evidence: D:/CodexBuilds/Capella2-release1-01a06e2e. State source checkout/target:
|
||||
D:/CodexBuilds/Capella2-state-integration and -target. Linux source/target:
|
||||
D:/CodexBuilds/Capella2-state-linux-review and -target. Use distinct Cargo targets
|
||||
per checkout; shared-cache results were previously caught and excluded.
|
||||
|
||||
Native82AE5A2C closed the missing-shapes bug; root directly created Region, Initial,
|
||||
State, first-drag Initial→State transition, selected without motion, moved/undid the
|
||||
state, created Internal Monitor communications with generated After30s Event,
|
||||
Undo/Redo of both, and Fold/Unfold via right-click. Saved trial46objects/27links/1
|
||||
remaining model check uses ui-state-direct-01/project.arcadia; its original empty
|
||||
machine fixture is preserved in baseline-before-editing. Minimum1100x700 exposed
|
||||
excessive toolbar height; latest build removes selected-action row and shortens
|
||||
state heading. Native recheck is pending, along with reconnection, nested composite,
|
||||
Linux state runtime and independent final runtime review.
|
||||
|
||||
Additional review/native fixes: Fold retains semantic selection; placement property
|
||||
Apply retains Behavior view without overwriting Architecture view. Initial names
|
||||
choose among12 deterministic route-aware positions, and label hit testing uses the
|
||||
same cached rectangle. This closes the observed rightward-line/name collision in
|
||||
code; native verification of this last refinement remains pending.
|
||||
|
||||
Root owns integration/native input; all workers have returned files. Every worktree
|
||||
uses its own Cargo target. Main remains ad7feb5; state work is isolated and not yet
|
||||
accepted into main. No release-completion claim.
|
||||
|
||||
## Exact next actions
|
||||
|
||||
1. Rebuild and verify the state rendering fix on the saved native reproduction;
|
||||
complete real state creation, connections, folding, form edit, Save/reopen and
|
||||
minimum-size trials. Commit only after reviewed behavior is demonstrated.
|
||||
2. Finish state-edit acceptance with explicit retained
|
||||
behavior view, creation in a region, movement, transition drawing/reconnection,
|
||||
guarded forms, discoverable missing placements, pan/zoom and contextual actions.
|
||||
Build/run/test native at default/minimum sizes; review/reproduce/fix findings.
|
||||
3. Continue direct scenario/process gestures, R3 semantic drift/reconciliation,
|
||||
R6 data contracts, persistent coverage/filters, Home/recent/recovery, hosted ETag
|
||||
workflows, offline guidance and normative contracts. All remain release work.
|
||||
4. Fresh final requirements/domain/correctness/native UX/architecture reviews;
|
||||
Windows/Linux/MSRV checks, actual runtime, docs and packages/checksums before
|
||||
completing the broad goal. V2 or a subsystem checkpoint is insufficient.
|
||||
|
||||
## Native safety and environment
|
||||
|
||||
Root owns native input. Final Windows1EEBDC3C window2100032/exec55548 is saved on
|
||||
its isolated41/26 trial. Earlier windows524634 and328292 are saved on the Standard
|
||||
and auto-port review fixtures. Re-inventory and inspect current dirty state before
|
||||
operating any window. Protected user7210312 and earlier6228978 were absent; root did
|
||||
not close them and makes no recovery claim. If either returns, do not save/reset/close.
|
||||
|
||||
Main Windows target `D:/CodexBuilds/Capella2-01a06e2e`; Rust1.98.1. Use `cargo test
|
||||
--locked --workspace`, `cargo clippy --locked --workspace --all-targets -- -D warnings`
|
||||
and `cargo build --locked -p oa-desktop -p oa-server`. WSL Ubuntu24.04 uses the
|
||||
existing target/linux-cargo.toml vendor config and its own linux-target; launch
|
||||
with WGPU_BACKEND=vulkan and the Mesa lvp ICD. Release evidence lives under
|
||||
`D:/CodexBuilds/Capella2-release1-01a06e2e`. No remote push or usage reset is authorized.
|
||||
Do not retry the previously rejected broad recursive target deletion.
|
||||
Windows: cargo test --locked --workspace; cargo clippy --locked --workspace
|
||||
--all-targets -- -D warnings; cargo build --locked -p oa-desktop -p oa-server.
|
||||
WSL Ubuntu24.04 uses target/linux-cargo.toml and Mesa software Vulkan for native
|
||||
WSLg. No remote push or usage reset authorized. No broad recursive target deletion.
|
||||
|
||||
Reference in New Issue
Block a user