From 419c78c07142961feff4f9ede46adf7d4bd014eb Mon Sep 17 00:00:00 2001 From: "sorokin.oleg.edu" Date: Sat, 12 Sep 2026 15:43:18 -0700 Subject: [PATCH] Record same-source Windows gates and port-policy falsifiers --- .gitattributes | 1 + harness/STATE.md | 6 +- .../independent-focus-review.md | 45 + .../manifest.json | 10 + .../obsolete-panel-focus-review.md | 21 + .../archive-manifest.json | 60 + .../clippy-83f53c7.inputs.json | 2670 +++++++++++++++++ .../clippy-83f53c7.log | 2 + .../clippy-83f53c7.result.json | 19 + .../full-4015498.inputs.json | 2670 +++++++++++++++++ .../full-4015498.log | 855 ++++++ .../full-4015498.result.json | 19 + .../full-83f53c7.inputs.json | 2670 +++++++++++++++++ .../full-83f53c7.log | 842 ++++++ .../full-83f53c7.result.json | 19 + .../gui-83f53c7.inputs.json | 2670 +++++++++++++++++ .../gui-83f53c7.log | 2 + .../gui-83f53c7.result.json | 17 + .../experiment.patch | 872 ++++++ .../falsifier-handoff.md | 50 + .../falsifiers.patch | 410 +++ .../falsifiers/build.json | 36 + .../falsifiers/build.log | 0 .../threshold-CapacityAware-259.9.arcadia | 471 +++ ...eshold-CapacityAware-259.9.projection.json | 409 +++ .../threshold-CapacityAware-259.9.routing.txt | 1094 +++++++ .../threshold-CapacityAware-260.1.arcadia | 471 +++ ...eshold-CapacityAware-260.1.projection.json | 409 +++ .../threshold-CapacityAware-260.1.routing.txt | 1098 +++++++ .../threshold-CapacityAware-260.arcadia | 471 +++ ...hreshold-CapacityAware-260.projection.json | 409 +++ .../threshold-CapacityAware-260.routing.txt | 1098 +++++++ .../threshold-Current-259.9.arcadia | 471 +++ .../threshold-Current-259.9.projection.json | 409 +++ .../threshold-Current-259.9.routing.txt | 1062 +++++++ .../threshold-Current-260.1.arcadia | 471 +++ .../threshold-Current-260.1.projection.json | 409 +++ .../threshold-Current-260.1.routing.txt | 1062 +++++++ .../threshold-Current-260.arcadia | 471 +++ .../threshold-Current-260.projection.json | 409 +++ .../threshold-Current-260.routing.txt | 1062 +++++++ ...eshold-SameSidesAdaptSpacing-259.9.arcadia | 471 +++ ...ameSidesAdaptSpacing-259.9.projection.json | 409 +++ ...ld-SameSidesAdaptSpacing-259.9.routing.txt | 1094 +++++++ ...eshold-SameSidesAdaptSpacing-260.1.arcadia | 471 +++ ...ameSidesAdaptSpacing-260.1.projection.json | 409 +++ ...ld-SameSidesAdaptSpacing-260.1.routing.txt | 1094 +++++++ ...hreshold-SameSidesAdaptSpacing-260.arcadia | 471 +++ ...-SameSidesAdaptSpacing-260.projection.json | 409 +++ ...hold-SameSidesAdaptSpacing-260.routing.txt | 1094 +++++++ .../falsifiers/case-1.json | 131 + .../falsifiers/case-1.log | 387 +++ .../obstacle-CapacityAware.arcadia | 250 ++ .../obstacle-CapacityAware.projection.json | 209 ++ .../obstacle-CapacityAware.routing.txt | 436 +++ .../case-2-geometry/obstacle-Current.arcadia | 250 ++ .../obstacle-Current.projection.json | 209 ++ .../obstacle-Current.routing.txt | 438 +++ .../obstacle-SameSidesAdaptSpacing.arcadia | 250 ++ ...acle-SameSidesAdaptSpacing.projection.json | 209 ++ ...obstacle-SameSidesAdaptSpacing.routing.txt | 438 +++ .../falsifiers/case-2.json | 59 + .../falsifiers/case-2.log | 70 + .../falsifiers/inputs.json | 1284 ++++++++ .../falsifiers/list.json | 18 + .../falsifiers/list.log | 2 + .../falsifiers/obstacle-comparison.png | Bin 0 -> 42737 bytes .../falsifiers/run.json | 199 ++ .../independent-review.md | 92 + .../resize-port-policy-20260912/manifest.json | 367 +++ .../policy-comparison.md | 83 + .../render-port-obstacle.py | 59 + .../run-policy-allocator.py | 55 + .../run-policy-gates.py | 97 + .../source-handoff.md | 56 + .../source/crates/oa-core/src/projection.rs | 599 ++++ .../projection/port_capacity_experiment.rs | 221 ++ .../oa-core/src/projection/port_layout.rs | 415 +++ .../oa-core/tests/experimental_port_policy.rs | 458 +++ .../experimental_port_policy_falsifiers.rs | 404 +++ .../standalone-port-falsifiers.py | 244 ++ .../windows/accepted-summary.json | 25 + .../windows/allocator-corrected.json | 35 + .../windows/allocator-corrected.log | 10 + .../windows/allocator.json | 43 + .../windows/allocator.log | 8 + .../windows/comparison.json | 38 + .../windows/comparison.log | 45 + .../windows/inputs.json | 154 + .../windows/port-anchors.json | 48 + .../windows/port-anchors.log | 21 + .../windows/summary.json | 136 + harness/release-canvas-followup-20260912.md | 43 +- ...elease-diagram-removal-windows-20260912.md | 2 + .../resize-port-policy-experiment-20260912.md | 93 + 95 files changed, 40328 insertions(+), 6 deletions(-) create mode 100644 harness/experiments/canvas-editing-followup-20260912/independent-focus-review.md create mode 100644 harness/experiments/canvas-editing-followup-20260912/obsolete-panel-focus-review.md create mode 100644 harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.inputs.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.log create mode 100644 harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.result.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/full-4015498.inputs.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/full-4015498.log create mode 100644 harness/experiments/diagram-removal-windows-20260912/full-4015498.result.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/full-83f53c7.inputs.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/full-83f53c7.log create mode 100644 harness/experiments/diagram-removal-windows-20260912/full-83f53c7.result.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.inputs.json create mode 100644 harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.log create mode 100644 harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.result.json create mode 100644 harness/experiments/resize-port-policy-20260912/experiment.patch create mode 100644 harness/experiments/resize-port-policy-20260912/falsifier-handoff.md create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers.patch create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/build.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/build.log create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-1.log create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.arcadia create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.projection.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.routing.txt create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/case-2.log create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/inputs.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/list.json create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/list.log create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/obstacle-comparison.png create mode 100644 harness/experiments/resize-port-policy-20260912/falsifiers/run.json create mode 100644 harness/experiments/resize-port-policy-20260912/independent-review.md create mode 100644 harness/experiments/resize-port-policy-20260912/manifest.json create mode 100644 harness/experiments/resize-port-policy-20260912/policy-comparison.md create mode 100644 harness/experiments/resize-port-policy-20260912/render-port-obstacle.py create mode 100644 harness/experiments/resize-port-policy-20260912/run-policy-allocator.py create mode 100644 harness/experiments/resize-port-policy-20260912/run-policy-gates.py create mode 100644 harness/experiments/resize-port-policy-20260912/source-handoff.md create mode 100644 harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection.rs create mode 100644 harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_capacity_experiment.rs create mode 100644 harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_layout.rs create mode 100644 harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy.rs create mode 100644 harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy_falsifiers.rs create mode 100644 harness/experiments/resize-port-policy-20260912/standalone-port-falsifiers.py create mode 100644 harness/experiments/resize-port-policy-20260912/windows/accepted-summary.json create mode 100644 harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.json create mode 100644 harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.log create mode 100644 harness/experiments/resize-port-policy-20260912/windows/allocator.json create mode 100644 harness/experiments/resize-port-policy-20260912/windows/allocator.log create mode 100644 harness/experiments/resize-port-policy-20260912/windows/comparison.json create mode 100644 harness/experiments/resize-port-policy-20260912/windows/comparison.log create mode 100644 harness/experiments/resize-port-policy-20260912/windows/inputs.json create mode 100644 harness/experiments/resize-port-policy-20260912/windows/port-anchors.json create mode 100644 harness/experiments/resize-port-policy-20260912/windows/port-anchors.log create mode 100644 harness/experiments/resize-port-policy-20260912/windows/summary.json create mode 100644 harness/resize-port-policy-experiment-20260912.md diff --git a/.gitattributes b/.gitattributes index e7da050a..443f218e 100644 --- a/.gitattributes +++ b/.gitattributes @@ -69,3 +69,4 @@ harness/experiments/diagram-removal-windows-20260912/** -text whitespace=-blank- harness/experiments/diagram-resize-foundation-20260912/** -text whitespace=-blank-at-eol,-blank-at-eof,cr-at-eol harness/experiments/delete-native-f7-20260912/** -text whitespace=-blank-at-eol,-blank-at-eof,cr-at-eol harness/experiments/canvas-editing-followup-20260912/** -text whitespace=-blank-at-eol,-blank-at-eof,cr-at-eol +harness/experiments/resize-port-policy-20260912/** -text whitespace=-blank-at-eol,-blank-at-eof,cr-at-eol diff --git a/harness/STATE.md b/harness/STATE.md index 6240b4cc..9fe93263 100644 --- a/harness/STATE.md +++ b/harness/STATE.md @@ -79,8 +79,10 @@ revealed lost canvas focus; reviewed correction **24bb248** requires its own gates. Its focused run subsequently passed 22 tests and failed the persisted state Save/Undo case. Combined candidate **e2c027e** fixes the state widget's positional focus-tree replacement and includes nested activations and redundant -canvas-control removal. Strict lint found two obsolete event variants; no passing -combined gate or native acceptance is claimed. The +canvas-control removal. Strict lint found two obsolete event variants, removed +by 4015498. Combined source **83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b** now passes +all 834 Windows desktop tests, strict all-target Clippy and the matching GUI build +with all 533 source inputs unchanged. Native acceptance remains pending. The [canvas follow-up evidence](release-canvas-followup-20260912.md) preserves exact failures, reviews and validated bound OA/SA evaluator fixtures. Complete direct manipulation, persistent process placement/lanes and coherent peer integration diff --git a/harness/experiments/canvas-editing-followup-20260912/independent-focus-review.md b/harness/experiments/canvas-editing-followup-20260912/independent-focus-review.md new file mode 100644 index 00000000..63bd4f06 --- /dev/null +++ b/harness/experiments/canvas-editing-followup-20260912/independent-focus-review.md @@ -0,0 +1,45 @@ +# Independent source review — canvas focus follow-up — 2026-09-12 + +Reviewed source: `40154983cc86ac0a45b062d7381124f262adbb3d` on `codex/behavior-authoring-20260910`; working tree was clean at start and end. Focus: `24bb248`, `e2c027e`, `b25065c`, `4015498`. No compiler, test runner, native application, tracked edits, or Gitea writes were performed by this reviewer. Root owns execution, integration and acceptance. + +Read local AGENTS/PROJECT_GOAL, relevant STATE and both requested release evidence notes; read current main/AGENTS.md through Gitea (blob `c8140593ef02025c96d900a87607590bf2b77eaf`, matching local instructions). The cached origin/HEAD points at an old branch and was not used as current default-branch authority. Read the user-authored issue bodies directly: #15 requires Delete to remove from model/diagram; #25 says Canvas mode should always be active without an activation button. + +## Findings + +No actionable blocking or high/medium source defect found in the bounded corrections. This is source-review approval of the design and regression targets, **not execution or native acceptance**. + +### Owner continuity is explicit and bounded + +- `crates/oa-desktop/src/diagram/focus.rs:69` separates logical owner identity (document, diagram, epoch) from revision. A revision change clears pointer continuity while keeping whichever real Iced widget already owns keyboard input. New document/diagram/epoch, a modal/draft boundary, a window focus loss and an outside press revoke the owner. +- `focus.rs:87` replaces only the wrapped canvas child when passive busy state begins, discarding held gestures while retaining the wrapper's actual focus state. `focus.rs:19` refuses new focus acquisition during suspension. `focus.rs:118` continues exposing a suspended existing owner to ordinary unfocus operations. `focus.rs:170` rejects keyboard/mouse dispatch during suspension. +- `crates/oa-desktop/src/app/diagram_removal.rs:20` keeps busy command admission disabled independently of the retained owner; the App busy guard also rejects authoring messages. There is no invented canvas-focus boolean restored after a save, so a clean Inspector can take real ownership without Save completion granting it back. +- Underlying architecture and state canvases independently reset gestures when their full revision context changes (`diagram.rs:580`, `behavior/state_canvas.rs:777`), supporting the wrapper's owner/gesture distinction. + +### State picker slot is structurally stable + +`crates/oa-desktop/src/behavior/state_view.rs:146` always creates an empty-or-populated Column, and `state_view.rs:181` keeps it ahead of the focus owner inside a fixed two-child parent. I checked the installed Iced 0.14.2 implementation: column! uses with_children/push, but it drops only children whose size hint includes Fixed(0). The empty Column uses Shrink, so it remains a child. Thus this is not the previously documented zero-width Row slot mistake. The incoming state header/control structure is fixed for an existing state-machine canvas. + +### Obsolete activation/panel mode removal is complete in production source + +The Canvas and Panels controls, event variants, state booleans, toggle methods, message whitelist branches, conditional sidebar/Inspector layout and active help guidance are removed together. Searching production desktop source found no remaining scenario/topology CanvasEvent::Focus, Camera::Focus, presentation.focused, topology.focused, Focus canvas or Restore panels path. Unrelated semantic-review Event::Focus is a different concept and correctly remains. + +`crates/oa-desktop/src/views.rs:230` now gives behavior workspaces the ordinary sidebar/main/Inspector structure. F6/Tab/control ownership remains via Viewport and Collect/Apply; deleting the old Event::Focus arm does not remove ToggleFocus, Traverse, ControlFocus or Leave. Pointer admission remains independent of initial keyboard ownership. + +## Evaluator adequacy and required execution boundary + +The updated evaluators are appropriate to the reported regressions and do not merely assert internal booleans: + +- `app/diagram_removal_tests.rs:581` checks the mounted real canvas or clean Inspector focus through actual edit/history and passive-save tasks, including F2 ownership. +- `:659` denies focus acquisition while busy and checks window-lost ownership; `:695` checks both pointer and programmatic Inspector ownership during passive Save; `:740` retires a held architecture drag and then requires a fresh drag to work. +- `:992` retains actual state placement Delete → Save → Undo → Shift+Delete and now checks focus at picker appearance, Save and picker removal. It verifies the real tree before the next shortcut and would expose the original positional-tree replacement. +- Scenario workspace tests at `:1457` and process layout tests at `:323` retain actual F6 entry/exit, Tab/Shift+Tab traversal, Enter/Space action, focus-ring rendering and Inspector text ownership. Removed-control assertions check IDs absent in the production tree, and direct-pointer workflows start with no keyboard owner. +- The shared Mounted runner constructs app.view(), runs UserInterface input, applies App tasks including widget operations, and carries the UI cache across rebuilds. It is meaningfully stronger than seeding a private focus field. + +**Acceptance hold — verification, not a newly discovered code defect:** the existing recorded focused gate is 22 passes plus a real state-focus failure at the earlier correction, and strict lint later failed on the two obsolete variants. Neither old result becomes passing because this source looks correct. Root must retain those failures and obtain the new full Windows test/lint results and matching native build checks before accepting this correction. + +The architecture held-drag and clean-Inspector busy tests do not directly exercise the persisted-state canvas during suspension. The common wrapper makes their transfer reasonable source evidence, but native state checks should include an in-progress drag, Save, release and a fresh drag if practical. This is a bounded coverage limitation, not evidence of a defect. + +Native acceptance should directly reproduce the original architecture click → Delete → Save → Undo → Save → Redo → Save → Undo → Shift+Delete sequence without an extra canvas click, and the state placement/picker sequence above. Verify exact saved Project/SourceBundle results, text ownership, window focus loss, and direct behavior editing plus retained F6/Tab at the required window size. Compilation, mounted rendering and this report cannot establish native event ordering or minimum-size usability. + +This review does not establish process/scenario revision/Save keyboard-owner continuity: those workspaces retain a different Viewport lifetime policy (`behavior/canvas_workspace/viewport.rs:82`). It also does not establish nested activation-bar rendering, general free placement/resizing, Details usability, or complete closure of #15/#25 beyond the bounded behaviors reviewed. + diff --git a/harness/experiments/canvas-editing-followup-20260912/manifest.json b/harness/experiments/canvas-editing-followup-20260912/manifest.json index e51f56db..4113ca84 100644 --- a/harness/experiments/canvas-editing-followup-20260912/manifest.json +++ b/harness/experiments/canvas-editing-followup-20260912/manifest.json @@ -128,5 +128,15 @@ "file": "bound-nested-fixture-r1-20260912/scenario-identities.tsv", "bytes": 891, "sha256": "fa9cd8bd17a0d16d70e72e76a670e060e64d92ca3bd4a5bd6b92a363393108b0" + }, + { + "file": "obsolete-panel-focus-review.md", + "bytes": 3024, + "sha256": "296c6ddd5bf16d53b6eec611fe4c04a9275f1a2670b262ba5c7e168040b6e077" + }, + { + "file": "independent-focus-review.md", + "bytes": 7050, + "sha256": "a3e17f387eebf1c15b508ad2afc4d91602192ce1bbe9eca84189e1599809b722" } ] diff --git a/harness/experiments/canvas-editing-followup-20260912/obsolete-panel-focus-review.md b/harness/experiments/canvas-editing-followup-20260912/obsolete-panel-focus-review.md new file mode 100644 index 00000000..57fcc6ff --- /dev/null +++ b/harness/experiments/canvas-editing-followup-20260912/obsolete-panel-focus-review.md @@ -0,0 +1,21 @@ +# Obsolete panel-focus cleanup — 2026-09-12 + +Owner: delegated focus_pending_regression worker; integration and runtime evaluation: root. + +Delivered commit: `07681f6694964843b81543c00cd007f252ea0558` (`Remove obsolete canvas panel focus mode`). Tracked worktree clean after commit. + +Branch: `codex/remove-obsolete-panel-focus-956atf-20260912`, based on `e2c027e54c6be0d051820374f669c52278d90f97`. Worktree: `.local/always-active-canvas-20260912`. The previous issue 25 contribution and branch remain preserved. This follow-up supersedes the earlier handoff's decision to retain independent panel mode plumbing: the strict root gate established that its production entry points were gone. + +## Finding and change + +After the Canvas and Focus canvas buttons were removed, process and scenario `CanvasEvent::Focus` had no production constructors. Their focused flags only selected a layout that hid the explorer and inspector; they never enabled canvas editing. Keeping test-only constructors hid the obsolete paths from ordinary tests while failing the strict non-test gate. + +Removed both presentation flags, panel-focus events and context arms, App dispatch/whitelist cases, and conditional panel layout. Removed the toolbar's now-unused one-way `canvas_workspace::Event::Focus` route. Existing F6 `ToggleFocus`, Tab `Traverse`, `ControlFocus`, and `Leave` remain intact, as do actual canvas focus ownership, text-field protection, and stale context guards. The normal canvas layout always includes its explorer and applicable inspector. Current guide instructions now describe clicking/F6 keyboard entry and the continuously available panels. + +Migrated pending invalid-draft preservation tests to surviving Zoom events and Details disclosure changes while retaining accepted-snapshot, raw-draft, and epoch assertions. Mounted stale-drag tests now click the real ZoomIn control instead of constructing the removed panel event. Scenario caller/back coverage now establishes distinct real tool and camera state, retaining caller tool/shelf/camera/scroll/source/history restoration assertions. Existing mounted keyboard ownership regressions were retained. + +## Verification and handoff + +Root reviewed the complete 12-file source diff and found no source blocker. Source-only rustfmt completed for changed Rust files with edition 2024 and skip_children=true. `git diff --check` passed. Production-source searches found no remaining obsolete Focus constructors, panel focused flags, toggle_focus methods, or removed-button instructions. + +No Cargo, compiler, native application, or Gitea operation was performed by this worker. Runtime acceptance and integration remain pending with root. Useful targeted test filters include `process_zoom_retains_rejected_draft_and_guards_selection`, `process_zoom_and_disclosures_preserve_rejected_raw_draft_and_accepted_source`, `behavior::topology::view::layout_tests`, and `behavior::scenario::workspace::tests`; the strict non-test gate must also rerun because it caught the original defect. diff --git a/harness/experiments/diagram-removal-windows-20260912/archive-manifest.json b/harness/experiments/diagram-removal-windows-20260912/archive-manifest.json index 151fad50..4c9fb311 100644 --- a/harness/experiments/diagram-removal-windows-20260912/archive-manifest.json +++ b/harness/experiments/diagram-removal-windows-20260912/archive-manifest.json @@ -213,5 +213,65 @@ "file": "clippy-e2c027e.result.json", "bytes": 379, "sha256": "296c4f96f1e1d08b4d447e03edce442a53d830101f867876fc1edd20882dccf9" + }, + { + "file": "full-4015498.log", + "bytes": 95719, + "sha256": "6168170419e354c28a551f75ce702b2fbd44b2ec197b2999693b1be82dc744ef" + }, + { + "file": "full-4015498.inputs.json", + "bytes": 99306, + "sha256": "72ebf9ebf1a715b377ecc2b6438d9a50d3d7d1d72424fcc517dff457c486df7f" + }, + { + "file": "full-4015498.result.json", + "bytes": 387, + "sha256": "d9ab3aed2613358f86222e12f38cee41363e5292b59aa6c37413e75dc486b953" + }, + { + "file": "full-83f53c7.log", + "bytes": 95079, + "sha256": "5d10262da23a15d1a01bbc0c36de643350769dd0029e36d7256851f666edd7df" + }, + { + "file": "full-83f53c7.inputs.json", + "bytes": 99306, + "sha256": "691ffd5a808839e5e2b7260afebde2607e3720e819ab30f88053c1ec51edb0bd" + }, + { + "file": "full-83f53c7.result.json", + "bytes": 385, + "sha256": "f1c5dde402ed671afe6ebc74b70c0b948f0832eb9c941a75994b65b7e8c31bf3" + }, + { + "file": "clippy-83f53c7.log", + "bytes": 155, + "sha256": "559782d369ac2415d1773fcd2c5c638ffa0000f50435eeb957d7b185eeb8b473" + }, + { + "file": "clippy-83f53c7.inputs.json", + "bytes": 99306, + "sha256": "691ffd5a808839e5e2b7260afebde2607e3720e819ab30f88053c1ec51edb0bd" + }, + { + "file": "clippy-83f53c7.result.json", + "bytes": 377, + "sha256": "6a4f27e3b0c8bce3afd15b6217f103d4d7dcee3d32cba4272bd6b554ffef11aa" + }, + { + "file": "gui-83f53c7.log", + "bytes": 155, + "sha256": "c54a55cd082f0e7ab4ee3e8378783bbdca40a240168a33bfec21a9ac6f05b2e0" + }, + { + "file": "gui-83f53c7.inputs.json", + "bytes": 99306, + "sha256": "691ffd5a808839e5e2b7260afebde2607e3720e819ab30f88053c1ec51edb0bd" + }, + { + "file": "gui-83f53c7.result.json", + "bytes": 351, + "sha256": "bdd88cf0817b2e51a89b9289f066bf59da01e2ace2bc5e4b625086e02ef7e3de" } ] diff --git a/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.inputs.json b/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.inputs.json new file mode 100644 index 00000000..d534a502 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.inputs.json @@ -0,0 +1,2670 @@ +{ + "source": "83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b", + "inputs": [ + { + "path": "Cargo.lock", + "bytes": 119973, + "sha256": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf" + }, + { + "path": "Cargo.toml", + "bytes": 400, + "sha256": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62" + }, + { + "path": "build/windows.manifest", + "bytes": 354, + "sha256": "9c19c5a02f858ece84c44839ad2b145d9c1d90442da0b15c87fd045f975974eb" + }, + { + "path": "build/windows.rc", + "bytes": 24, + "sha256": "a27385edcae0bcf96f55361056cb7be5f36d76fcddcaefd20647c91959563e1e" + }, + { + "path": "build/windows_manifest.rs", + "bytes": 1460, + "sha256": "168da2c42ecccfebc11ee3e1b455e653a68fe9c6d30a9842a8b9e7441d086c80" + }, + { + "path": "crates/oa-cli/Cargo.toml", + "bytes": 279, + "sha256": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde" + }, + { + "path": "crates/oa-cli/src/lib.rs", + "bytes": 15498, + "sha256": "97bebab63b4a611a1d36ad0c20fe452cbe1985fe3a6fbd39c954603da11410fc" + }, + { + "path": "crates/oa-cli/src/main.rs", + "bytes": 2984, + "sha256": "de964f9b6c59c0f31c080afbd3b31d442b07b1b44f6a187a248d3409c45d35fb" + }, + { + "path": "crates/oa-cli/tests/source_cli.rs", + "bytes": 16600, + "sha256": "a3a1b856c7a9fd3d80bc8074150a24fbb0ef0e9ddf736c7cea036725fc3dc2b8" + }, + { + "path": "crates/oa-core/Cargo.toml", + "bytes": 408, + "sha256": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f" + }, + { + "path": "crates/oa-core/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-core/examples/generate_demo.rs", + "bytes": 795, + "sha256": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661" + }, + { + "path": "crates/oa-core/examples/generate_release1.rs", + "bytes": 1798, + "sha256": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5" + }, + { + "path": "crates/oa-core/examples/release_dense_views.rs", + "bytes": 14664, + "sha256": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412" + }, + { + "path": "crates/oa-core/examples/routing_workshop.rs", + "bytes": 17248, + "sha256": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7" + }, + { + "path": "crates/oa-core/src/analysis_numeric.rs", + "bytes": 3735, + "sha256": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408" + }, + { + "path": "crates/oa-core/src/analysis_numeric/dimension.rs", + "bytes": 3045, + "sha256": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340" + }, + { + "path": "crates/oa-core/src/analysis_numeric/exact.rs", + "bytes": 17338, + "sha256": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d" + }, + { + "path": "crates/oa-core/src/analysis_numeric/fixtures/r7-literal-boundaries.json", + "bytes": 6085, + "sha256": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181" + }, + { + "path": "crates/oa-core/src/analysis_numeric/meter.rs", + "bytes": 7129, + "sha256": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4" + }, + { + "path": "crates/oa-core/src/analysis_numeric/quantity.rs", + "bytes": 12257, + "sha256": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee" + }, + { + "path": "crates/oa-core/src/analysis_numeric/tests.rs", + "bytes": 27486, + "sha256": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b" + }, + { + "path": "crates/oa-core/src/data.rs", + "bytes": 42696, + "sha256": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a" + }, + { + "path": "crates/oa-core/src/demo.rs", + "bytes": 20657, + "sha256": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c" + }, + { + "path": "crates/oa-core/src/language.rs", + "bytes": 99938, + "sha256": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765" + }, + { + "path": "crates/oa-core/src/language/semantic_source.rs", + "bytes": 7326, + "sha256": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29" + }, + { + "path": "crates/oa-core/src/language_nesting_tests.rs", + "bytes": 20639, + "sha256": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b" + }, + { + "path": "crates/oa-core/src/lib.rs", + "bytes": 549, + "sha256": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c" + }, + { + "path": "crates/oa-core/src/migration_v2/README.md", + "bytes": 1515, + "sha256": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9" + }, + { + "path": "crates/oa-core/src/migration_v2/adapter.rs", + "bytes": 9490, + "sha256": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5" + }, + { + "path": "crates/oa-core/src/migration_v2/mod.rs", + "bytes": 1158, + "sha256": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9" + }, + { + "path": "crates/oa-core/src/migration_v2/model.rs", + "bytes": 52059, + "sha256": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb" + }, + { + "path": "crates/oa-core/src/migration_v2/references.rs", + "bytes": 13369, + "sha256": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20" + }, + { + "path": "crates/oa-core/src/migration_v2/source.rs", + "bytes": 21946, + "sha256": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6" + }, + { + "path": "crates/oa-core/src/migration_v2/state_validation.rs", + "bytes": 15769, + "sha256": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0" + }, + { + "path": "crates/oa-core/src/migration_v2/transitions.rs", + "bytes": 704, + "sha256": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1" + }, + { + "path": "crates/oa-core/src/migration_v2/validation.rs", + "bytes": 98736, + "sha256": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780" + }, + { + "path": "crates/oa-core/src/migration_v3/README.md", + "bytes": 2128, + "sha256": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82" + }, + { + "path": "crates/oa-core/src/migration_v3/mod.rs", + "bytes": 23023, + "sha256": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722" + }, + { + "path": "crates/oa-core/src/migration_v4.rs", + "bytes": 4020, + "sha256": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70" + }, + { + "path": "crates/oa-core/src/model.rs", + "bytes": 66352, + "sha256": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb" + }, + { + "path": "crates/oa-core/src/operations.rs", + "bytes": 11405, + "sha256": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41" + }, + { + "path": "crates/oa-core/src/persistence.rs", + "bytes": 31774, + "sha256": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14" + }, + { + "path": "crates/oa-core/src/ports.rs", + "bytes": 45413, + "sha256": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80" + }, + { + "path": "crates/oa-core/src/projection.rs", + "bytes": 21374, + "sha256": "69ed12bace2cc5024e151752a174ab14034ac2d05eb741fcf13e9a27521c059b" + }, + { + "path": "crates/oa-core/src/projection/port_layout.rs", + "bytes": 13474, + "sha256": "a08d17d10a58bb8b206dd001b19b91d5aa3a9f743b298a4da57d503223c20079" + }, + { + "path": "crates/oa-core/src/projection/state.rs", + "bytes": 5233, + "sha256": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28" + }, + { + "path": "crates/oa-core/src/references.rs", + "bytes": 21957, + "sha256": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb" + }, + { + "path": "crates/oa-core/src/routing.rs", + "bytes": 50309, + "sha256": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080" + }, + { + "path": "crates/oa-core/src/semantic.rs", + "bytes": 540, + "sha256": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239" + }, + { + "path": "crates/oa-core/src/semantic/catalog.rs", + "bytes": 49407, + "sha256": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4" + }, + { + "path": "crates/oa-core/src/semantic/historical.rs", + "bytes": 15271, + "sha256": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb" + }, + { + "path": "crates/oa-core/src/semantic/linked.rs", + "bytes": 6035, + "sha256": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2" + }, + { + "path": "crates/oa-core/src/semantic/mutate.rs", + "bytes": 22683, + "sha256": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d" + }, + { + "path": "crates/oa-core/src/semantic/review.rs", + "bytes": 51116, + "sha256": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e" + }, + { + "path": "crates/oa-core/src/semantic/types.rs", + "bytes": 10405, + "sha256": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb" + }, + { + "path": "crates/oa-core/src/session.rs", + "bytes": 35237, + "sha256": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00" + }, + { + "path": "crates/oa-core/src/source_files.rs", + "bytes": 74803, + "sha256": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683" + }, + { + "path": "crates/oa-core/src/source_project.rs", + "bytes": 61843, + "sha256": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466" + }, + { + "path": "crates/oa-core/src/source_project/source_migration.rs", + "bytes": 4700, + "sha256": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95" + }, + { + "path": "crates/oa-core/src/source_project/source_structure.rs", + "bytes": 20225, + "sha256": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f" + }, + { + "path": "crates/oa-core/src/state_validation.rs", + "bytes": 15665, + "sha256": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18" + }, + { + "path": "crates/oa-core/src/topology_context.rs", + "bytes": 13734, + "sha256": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d" + }, + { + "path": "crates/oa-core/src/topology_context/analysis.rs", + "bytes": 20036, + "sha256": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65" + }, + { + "path": "crates/oa-core/src/topology_context/analysis_tests.rs", + "bytes": 5258, + "sha256": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56" + }, + { + "path": "crates/oa-core/src/transitions.rs", + "bytes": 51998, + "sha256": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d" + }, + { + "path": "crates/oa-core/src/transitions/communication.rs", + "bytes": 8634, + "sha256": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028" + }, + { + "path": "crates/oa-core/src/validation.rs", + "bytes": 112792, + "sha256": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e" + }, + { + "path": "crates/oa-core/src/validation/coverage.rs", + "bytes": 6478, + "sha256": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f" + }, + { + "path": "crates/oa-core/src/view_options.rs", + "bytes": 24481, + "sha256": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208" + }, + { + "path": "crates/oa-core/src/view_options_tests.rs", + "bytes": 21433, + "sha256": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208" + }, + { + "path": "crates/oa-core/tests/communication_boundary_scenarios.rs", + "bytes": 8816, + "sha256": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b" + }, + { + "path": "crates/oa-core/tests/communication_means.rs", + "bytes": 18102, + "sha256": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4" + }, + { + "path": "crates/oa-core/tests/coverage_diagnostics.rs", + "bytes": 20527, + "sha256": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.arcadia", + "bytes": 29220, + "sha256": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.json", + "bytes": 43990, + "sha256": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.arcadia", + "bytes": 2450, + "sha256": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.json", + "bytes": 8240, + "sha256": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.arcadia", + "bytes": 1222, + "sha256": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.json", + "bytes": 1734, + "sha256": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47" + }, + { + "path": "crates/oa-core/tests/language.rs", + "bytes": 56482, + "sha256": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e" + }, + { + "path": "crates/oa-core/tests/port_anchors.rs", + "bytes": 26893, + "sha256": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa" + }, + { + "path": "crates/oa-core/tests/port_migration.rs", + "bytes": 15620, + "sha256": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7" + }, + { + "path": "crates/oa-core/tests/port_source.rs", + "bytes": 4858, + "sha256": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12" + }, + { + "path": "crates/oa-core/tests/prepared_commands.rs", + "bytes": 9555, + "sha256": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b" + }, + { + "path": "crates/oa-core/tests/process_diagnostics.rs", + "bytes": 1104, + "sha256": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906" + }, + { + "path": "crates/oa-core/tests/r3_constructor_ack.rs", + "bytes": 24163, + "sha256": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0" + }, + { + "path": "crates/oa-core/tests/r3_migration.rs", + "bytes": 6590, + "sha256": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd" + }, + { + "path": "crates/oa-core/tests/r3_semantic.rs", + "bytes": 77473, + "sha256": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32" + }, + { + "path": "crates/oa-core/tests/r3_source.rs", + "bytes": 15311, + "sha256": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408" + }, + { + "path": "crates/oa-core/tests/r6_data.rs", + "bytes": 41437, + "sha256": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155" + }, + { + "path": "crates/oa-core/tests/r6_migration.rs", + "bytes": 9174, + "sha256": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1" + }, + { + "path": "crates/oa-core/tests/r6_source.rs", + "bytes": 9519, + "sha256": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6" + }, + { + "path": "crates/oa-core/tests/release1_teaching.rs", + "bytes": 10010, + "sha256": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2" + }, + { + "path": "crates/oa-core/tests/release_capabilities.rs", + "bytes": 19422, + "sha256": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30" + }, + { + "path": "crates/oa-core/tests/release_diagrams.rs", + "bytes": 7689, + "sha256": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d" + }, + { + "path": "crates/oa-core/tests/release_language_limits.rs", + "bytes": 5204, + "sha256": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806" + }, + { + "path": "crates/oa-core/tests/release_ports.rs", + "bytes": 32740, + "sha256": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1" + }, + { + "path": "crates/oa-core/tests/release_routing.rs", + "bytes": 23165, + "sha256": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462" + }, + { + "path": "crates/oa-core/tests/release_scenarios.rs", + "bytes": 41067, + "sha256": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f" + }, + { + "path": "crates/oa-core/tests/release_states.rs", + "bytes": 26873, + "sha256": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811" + }, + { + "path": "crates/oa-core/tests/release_topology.rs", + "bytes": 17643, + "sha256": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9" + }, + { + "path": "crates/oa-core/tests/review_regressions.rs", + "bytes": 21823, + "sha256": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1" + }, + { + "path": "crates/oa-core/tests/route_source.rs", + "bytes": 7270, + "sha256": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb" + }, + { + "path": "crates/oa-core/tests/routing_geometry.rs", + "bytes": 31890, + "sha256": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3" + }, + { + "path": "crates/oa-core/tests/routing_labels.rs", + "bytes": 5530, + "sha256": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6" + }, + { + "path": "crates/oa-core/tests/semantic_artifact_absence_oracle.rs", + "bytes": 4640, + "sha256": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a" + }, + { + "path": "crates/oa-core/tests/semantic_attachments_gui_oracle.rs", + "bytes": 14957, + "sha256": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970" + }, + { + "path": "crates/oa-core/tests/source6_view_contract.rs", + "bytes": 14307, + "sha256": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb" + }, + { + "path": "crates/oa-core/tests/source7_contract.rs", + "bytes": 43262, + "sha256": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f" + }, + { + "path": "crates/oa-core/tests/source_files.rs", + "bytes": 13168, + "sha256": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9" + }, + { + "path": "crates/oa-core/tests/source_identity_updates.rs", + "bytes": 5139, + "sha256": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c" + }, + { + "path": "crates/oa-core/tests/source_nested_updates.rs", + "bytes": 16892, + "sha256": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855" + }, + { + "path": "crates/oa-core/tests/source_project.rs", + "bytes": 45910, + "sha256": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942" + }, + { + "path": "crates/oa-core/tests/state_diagrams.rs", + "bytes": 23973, + "sha256": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5" + }, + { + "path": "crates/oa-core/tests/workflows.rs", + "bytes": 33426, + "sha256": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b" + }, + { + "path": "crates/oa-desktop/Cargo.toml", + "bytes": 842, + "sha256": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9" + }, + { + "path": "crates/oa-desktop/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-desktop/src/allocation_drag.rs", + "bytes": 29634, + "sha256": "6b93290627a8697dd529ecf12b6e99196a11783afff1ca7aaf75c6e2762f3d94" + }, + { + "path": "crates/oa-desktop/src/allocation_drag/tests.rs", + "bytes": 60311, + "sha256": "13b7d055a516c8a9f0bd13f03abe3b81423bde9d121c51778a129ff485f4f102" + }, + { + "path": "crates/oa-desktop/src/allocation_input.rs", + "bytes": 8391, + "sha256": "c7825c43383e81b7eb1b78bd902950c8a2206e0387d26002a80ddbe4dc2b6c73" + }, + { + "path": "crates/oa-desktop/src/app.rs", + "bytes": 220614, + "sha256": "99447bba4810135834663681447a03061a948db2661395b9b4c4924738a38f18" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag.rs", + "bytes": 24452, + "sha256": "218726dcd2e6809cb6f3660f575e586806360456e6b4fac61b9e361b411aeee9" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_full_tree_tests.rs", + "bytes": 28288, + "sha256": "ff4c3d07f885f242b71160c09e2c457c4a746073fd89030781da306730c5db44" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_tests.rs", + "bytes": 42677, + "sha256": "3c6908f8a677921245932252ab38806f16012becbbc082ac11e7871ff7bdeeb4" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring.rs", + "bytes": 27835, + "sha256": "37c7db33e99dd4adcc5a51f09ee4878af94fd32413359890a541690080885f65" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/palette.rs", + "bytes": 8887, + "sha256": "8f9937cb30b48b83759fd084a8a5990a2daa3920280f1210abe048560241985a" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/tests.rs", + "bytes": 14565, + "sha256": "174e184f1baf872c3be1cf70d9a7f4bc5569a9623000b3ab0e71e2b82e249cf5" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring_tests.rs", + "bytes": 18551, + "sha256": "ba913f7d7cbf586708d65c9f1db25b9b9ed7846f9d2e75a546b4ac69d8d19c6a" + }, + { + "path": "crates/oa-desktop/src/app/behavior_lifecycle_tests.rs", + "bytes": 13672, + "sha256": "f9a0b030faca5deaf3f55d9f5efcafdf1a7cb1a663001aa20a61baba4f92d080" + }, + { + "path": "crates/oa-desktop/src/app/behavior_removal_tests.rs", + "bytes": 23958, + "sha256": "ef09843a7daeb91afab0b76e83c5679351a1635a84a26d80a194dea744ea5874" + }, + { + "path": "crates/oa-desktop/src/app/checkpoints.rs", + "bytes": 29576, + "sha256": "55e5babdcabef767af3bc8be9cc3153b3f5cc0695701b890820ec0225643852e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_focus_tests.rs", + "bytes": 6047, + "sha256": "65f3f841e1295ae4878b3ae2cf45ff64003d42e26e450e9a1de1c36dbd771bd8" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal.rs", + "bytes": 8778, + "sha256": "addb51604f41d680b06586bb362362ee3c2603a334f33022ce9abc281295ac85" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal_tests.rs", + "bytes": 47336, + "sha256": "70f9eb53d8995a23a53535b3941fc0c0b81a340f9fbbb371f0d705cfa775bd9e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_selection_tests.rs", + "bytes": 5582, + "sha256": "4fa507adbc23db3a6eb202d809c695ec0ebd6181356930c4fa7528a9a0c7be57" + }, + { + "path": "crates/oa-desktop/src/app/hosted.rs", + "bytes": 25059, + "sha256": "2f7094c078e1d7cbccd6c0d310afa6c400a7e031f12918bbfce65ba62754e316" + }, + { + "path": "crates/oa-desktop/src/app/hosted/tests.rs", + "bytes": 30344, + "sha256": "fa118f64d04b400ccc01e4e67adaf3541975288882afa265a9e7f092cdbda232" + }, + { + "path": "crates/oa-desktop/src/app/process_canvas.rs", + "bytes": 31560, + "sha256": "7e05f4899a0b24df9ab355b6484e94997c7bc66c873342d975aed0b6a56acf04" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring.rs", + "bytes": 11250, + "sha256": "38e033e23e8135032f70117a376a5fe7bc68127c466559a35d7ec200932e3f77" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests.rs", + "bytes": 20067, + "sha256": "b96ddc6bff7f8fde97720e18a92070f891c1340348d2e19c7c9c5a7bda650ce8" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests/mounted.rs", + "bytes": 32805, + "sha256": "14a4914a1c86e50c395672dab8fe80d7af679a79c9082890b509fad7b7c543d9" + }, + { + "path": "crates/oa-desktop/src/app/repair_save_state_tests.rs", + "bytes": 10745, + "sha256": "5543dcba853bb1513acf824b860249729a6004747e7e320b46efe60ea19e2d83" + }, + { + "path": "crates/oa-desktop/src/app/review_navigation_tests.rs", + "bytes": 7049, + "sha256": "872fa91479dad5436e139ffcaece270323e9f5daeeb7a4d80c2c2534f48bc21b" + }, + { + "path": "crates/oa-desktop/src/app/save_as_tests.rs", + "bytes": 4113, + "sha256": "f8b915793f1a36fd152569c4781a4bdc17f4af404a8ceb373330053413087a1c" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram.rs", + "bytes": 10050, + "sha256": "9ae3d533a20963a2bd1d485d357ac04319f336cd9f4c16305aa2a67d833573a8" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram_tests.rs", + "bytes": 39957, + "sha256": "612e414b1a2cab12cbfd8fce23745559ff27577700694d53af67ad1f2883ee2c" + }, + { + "path": "crates/oa-desktop/src/app/transition_context_tests.rs", + "bytes": 11508, + "sha256": "47002fb025f3a2f8c53871f9509bfe8611a61db6fb0e1b3125eb6e875425cb1d" + }, + { + "path": "crates/oa-desktop/src/app/view_copy_tests.rs", + "bytes": 7846, + "sha256": "296821c51dcde568e7d717039aa26bfc1b56a9074aa16051007bb351b33a4d44" + }, + { + "path": "crates/oa-desktop/src/behavior.rs", + "bytes": 130007, + "sha256": "3089d88a8fa66ecaa2151f2f55a85c71de30e556457fcd52fdbd0ca1184b59d8" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace.rs", + "bytes": 7903, + "sha256": "b6e06b9d29f1a5677f99bebcb0e53a3795b4bcd957796a85fd800db4279aed03" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/control.rs", + "bytes": 7804, + "sha256": "2b8d97b8c0e3ff1b1a2c32187b1d0eb25edf39ba582b5fb3303bc880f674f7ba" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/focus.rs", + "bytes": 8901, + "sha256": "33447003980847033e40550f9926d8617fa61e2c3e73ec9c6121d1afed946c33" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/tests.rs", + "bytes": 27101, + "sha256": "b33361c6569354aa2df9b1ba1b60d68e4703800be80f815e0f0505064ea323c3" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/viewport.rs", + "bytes": 15164, + "sha256": "41ff9c50fa9fb89ab9fdb2d18dadc21585aafa1ee008cfcd1e0b731dce645eaf" + }, + { + "path": "crates/oa-desktop/src/behavior/contextual_source_tests.rs", + "bytes": 49518, + "sha256": "044bd412dc45ffe440b1e251993946942dc3759dcb2d5dfe71bd8d6ef61cbcc7" + }, + { + "path": "crates/oa-desktop/src/behavior/creation.rs", + "bytes": 28978, + "sha256": "33ae9aaf4ba90de9432870cc8e99708ef39e3638ae8283a9253c333785c91299" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/app_tests.rs", + "bytes": 13181, + "sha256": "e9c5bf2b07357b7a2f679ae0d8f6904c1c1461aaeb94fa0db478b54d4641ae3e" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/tests.rs", + "bytes": 22793, + "sha256": "a0d1daf9fb3920f7e6181a9802d84fbe056cbf0043b9e41dba5fdda687d9818a" + }, + { + "path": "crates/oa-desktop/src/behavior/form_session.rs", + "bytes": 3941, + "sha256": "f5027fb3a5a5599a182e7d1a10dba56dd66eb1f23a4ba4c4a1744c9a6a5b6e61" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario.rs", + "bytes": 154707, + "sha256": "ffac8821977488ecd1cd9084ad7c0c9fbf8de3d5031c5d4f5d033f0348d3e887" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/focus.rs", + "bytes": 9728, + "sha256": "73a9ea10ad7312086081b8688396a21ab4251c9faecc2df6d984b702f3963533" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace.rs", + "bytes": 24960, + "sha256": "5aec4cb2ceb00ab25900d919a5bec71ab96848b4f14504f51790e3fe8801d3bc" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace/tests.rs", + "bytes": 80542, + "sha256": "f2f6acd93ecf4e9ffee56abc1de28f71da8cb1353cdc3e67cf0c0cf7a619fec5" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation.rs", + "bytes": 14095, + "sha256": "77199dcb08ec8697f779d2560f6b716aed8d8f33965237a4934934954f4e805a" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation/tests.rs", + "bytes": 24665, + "sha256": "5b3f1d2144f405e492686731cc35d05f21b87ada60e426014e6b5f5e5f103298" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle.rs", + "bytes": 9324, + "sha256": "758d244c2e8de61f515d540baa4d967275f49720e0253c6c9159eb9acd71c859" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle/tests.rs", + "bytes": 15430, + "sha256": "01b576993b329810cd78a859b45ac52c66f5a14549065661dd1308196e0b724d" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_operation_tests.rs", + "bytes": 10087, + "sha256": "89fb71c690e07eac314f7a5e05862d5c1e2f9c21039673bf22c4ac894d21c977" + }, + { + "path": "crates/oa-desktop/src/behavior/source_draft.rs", + "bytes": 18031, + "sha256": "08190823090bd8b0305809099abadcc0de431175f7044f1d5abdceda52612ee1" + }, + { + "path": "crates/oa-desktop/src/behavior/state_canvas.rs", + "bytes": 96098, + "sha256": "5844d2abf4a3fe3bb07c707865ee3f8303d213b0fe1871765ac468c11e140da7" + }, + { + "path": "crates/oa-desktop/src/behavior/state_edit.rs", + "bytes": 35843, + "sha256": "4e67321ab0cf88e6200061873086841244c4d610ddd5f88d70c69ac0cc6bf270" + }, + { + "path": "crates/oa-desktop/src/behavior/state_menu.rs", + "bytes": 8530, + "sha256": "9d0a3c29516efa79553c559274848f12101330dbf93ffbbefab398cbc1906790" + }, + { + "path": "crates/oa-desktop/src/behavior/state_view.rs", + "bytes": 7637, + "sha256": "3d01c853663385fc1b760401bbebe3f691fcc289a779a8e63cd0733ff0c8007f" + }, + { + "path": "crates/oa-desktop/src/behavior/states.rs", + "bytes": 26986, + "sha256": "8986ed9492960e20f1254e9dfe3ff91d79ce9fef66f3bda738f9933278043954" + }, + { + "path": "crates/oa-desktop/src/behavior/topology.rs", + "bytes": 84224, + "sha256": "66c81c4d4f2613263f13ae90cea61895c1aeed1f6278880789ec56f8c42433e0" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual.rs", + "bytes": 28432, + "sha256": "5d0ac5b3e258fc70987a00ede1e603681d99746596f2fcc46ad2b3667d65203a" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual_routing.rs", + "bytes": 16731, + "sha256": "d914b0e82aa8d253fe64be2ef74443d1fd2e6cec26d1cf30620a57646e1d426c" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct.rs", + "bytes": 39059, + "sha256": "5cca649870f54abdd2eb098954bcc0a2a5ca456b7ee11b5f653edbdf2ed55905" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct_tests.rs", + "bytes": 51170, + "sha256": "edccfe3ce8b224065a3540aa53c6340f13db0cecd48ecc0a3904cd832a483964" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/layout_tests.rs", + "bytes": 37846, + "sha256": "f27203866e22aee80daad2811113341684b0cbd59885b36d64243c4317f29f84" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/view.rs", + "bytes": 22009, + "sha256": "29e29c2a0667baa429ae44dbb400e67c86f24f88959d5e7dd22894473bdd1f09" + }, + { + "path": "crates/oa-desktop/src/connection_edit.rs", + "bytes": 5301, + "sha256": "020581e077f82b43c936b623cc51733b02b88428df4e5f25df74b9705819fa37" + }, + { + "path": "crates/oa-desktop/src/connection_tool.rs", + "bytes": 27023, + "sha256": "649da93677d52dae495b0e19bc32f3122ab05a6d84de8402578ff5ce3f6ee1d3" + }, + { + "path": "crates/oa-desktop/src/context_menu.rs", + "bytes": 52955, + "sha256": "629354b34dc232763700251f2695b4d4e53d6251c0b1432ecc0dfe424f7dfeac" + }, + { + "path": "crates/oa-desktop/src/data_values.rs", + "bytes": 23877, + "sha256": "e1deb1cad551f0a9fdef9653aad257cfb36e6d9c0f93b6245061ec3fab8fd365" + }, + { + "path": "crates/oa-desktop/src/data_view.rs", + "bytes": 38871, + "sha256": "158b852be5d3db450aa5cda8b68a35bd96bddce1d8d053a7a23582095c06362d" + }, + { + "path": "crates/oa-desktop/src/diagram.rs", + "bytes": 111242, + "sha256": "e5260a39e19fc3df19bd16898ff1f0abd60ede7584f595c035b5e86a12ecef93" + }, + { + "path": "crates/oa-desktop/src/diagram/focus.rs", + "bytes": 9197, + "sha256": "b88a7c43123b08cf6228d8e32257f6ed7fe361f7278f427ec138e233e1ea6ccf" + }, + { + "path": "crates/oa-desktop/src/diagram/lifecycle_tests.rs", + "bytes": 9342, + "sha256": "03dd13106f3fdd06a26699bfdfba006fad086a0711cad2ba1aeb09a4e8f8656e" + }, + { + "path": "crates/oa-desktop/src/diagram/pointer_tests.rs", + "bytes": 11859, + "sha256": "ae68e091032fe2cf71559ff7e671b3b6d657ee8279330345f0c7a57edfa472ef" + }, + { + "path": "crates/oa-desktop/src/diagram/port_hit_tests.rs", + "bytes": 5650, + "sha256": "c3728f127711cb6d7f80a4670a798808b6e4239dd29c273445de81706ab6f39e" + }, + { + "path": "crates/oa-desktop/src/diagram/port_labels.rs", + "bytes": 13574, + "sha256": "6643f0cbde7a59d4772ae5284a488083e3b81f2fefabc43619d75738f474646f" + }, + { + "path": "crates/oa-desktop/src/diagram/view_options_tests.rs", + "bytes": 2815, + "sha256": "cf0c98a7715558baf17b59f67a80556f98ad30262b4434635e617c6601775433" + }, + { + "path": "crates/oa-desktop/src/diagram/work_drag.rs", + "bytes": 7059, + "sha256": "9757534a7ba47dc0df5d41c8d7366b1d90f3d50b24344580ff3c783667bf66f0" + }, + { + "path": "crates/oa-desktop/src/document.rs", + "bytes": 31807, + "sha256": "7c87280b5b8d112c34865253f8ba0f80d43bc9897771943b15dc7b5608eb17a4" + }, + { + "path": "crates/oa-desktop/src/document_save_as_tests.rs", + "bytes": 5781, + "sha256": "83dc243a25f4e97674ff0d86c794a490cc923e98f1f9fb05bb038f622f11e20b" + }, + { + "path": "crates/oa-desktop/src/explorer.rs", + "bytes": 14764, + "sha256": "fa01c59219564ba9ae5553abc2b6f94e9849f9148d5812ef99b40318fe5dcf9a" + }, + { + "path": "crates/oa-desktop/src/explorer_view.rs", + "bytes": 13773, + "sha256": "a720d7484bcc3a24729332a00e005d1cc6f5f945a9cc3965134e0024dffb581f" + }, + { + "path": "crates/oa-desktop/src/forms.rs", + "bytes": 105544, + "sha256": "ea124f479fcd2d3978ac3cb8eb81fec4a7aae5e4f4414c4bdd54849e954dedf9" + }, + { + "path": "crates/oa-desktop/src/forms/context_fields.rs", + "bytes": 10831, + "sha256": "eaacd474f6500dd344d5a8b63ccb1d1dd86fe2aea78ab708afa8a80d62ce69bf" + }, + { + "path": "crates/oa-desktop/src/forms/data_fields.rs", + "bytes": 49285, + "sha256": "a540a0d451bff56a96b1d28643b2e8c0649f3846350c25c5b154729c0538e77c" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields.rs", + "bytes": 27414, + "sha256": "e7100474cde18bdfe95562bcb3c055f29b4b15aa64788a578194464aebcd046e" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields/tests.rs", + "bytes": 33950, + "sha256": "16d3c308138c063f45986d53c621ad83c7dc2ce853edd31b7204e2939a382df9" + }, + { + "path": "crates/oa-desktop/src/forms/port_fields.rs", + "bytes": 30554, + "sha256": "3fe684d651d5be6203fd9db3979c772913e1af5ac1514e67be386ffd88dc8127" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser.rs", + "bytes": 12130, + "sha256": "b60af363be333af048859e51c28e8c989cb5c95d696cad16c8eec15f78d57a12" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/adapter.rs", + "bytes": 10447, + "sha256": "87ab4bc3bf27fd4b5a458791cf62c7ba8e44e9ebf846d8b851b8b6ffb454cd64" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/tests.rs", + "bytes": 27835, + "sha256": "8e98f8a3fcb814d4a201cc85b3db87a689fd3d2ce487f8a2fe312fc296f93377" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger.rs", + "bytes": 13336, + "sha256": "34d0acecfe6bed193970aa473cc3313984971264b86d7b362a6b84c23d013c0a" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger/focus.rs", + "bytes": 9923, + "sha256": "f1e79f4b03b2f9fd1cdc335054d4ae177dc9e759b6ea3d334b2bcca39b57191b" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/widget.rs", + "bytes": 33804, + "sha256": "d66cc17af7a48bb8598be683f084bb08fa7af7304f9636f0a1bea94c5cf6c727" + }, + { + "path": "crates/oa-desktop/src/forms/view_fields.rs", + "bytes": 24987, + "sha256": "5184d438f0dfd4e29f284ff048e19da73e71be1f24a6e9f123c7e922aecb85fa" + }, + { + "path": "crates/oa-desktop/src/guide.rs", + "bytes": 118110, + "sha256": "ab4b47050e6d57dccdcc264ee5752766bd5013fccdc35eeeb9c9037bb5eb9a67" + }, + { + "path": "crates/oa-desktop/src/highlight.rs", + "bytes": 2751, + "sha256": "da7c254fff7052e5fd9ec7469f473b91a819406028d7c304f6e22c4169561600" + }, + { + "path": "crates/oa-desktop/src/home.rs", + "bytes": 17587, + "sha256": "f03c1071334894f586a5a7c86026602a694db3c2faf902822e1dbe5156a859c2" + }, + { + "path": "crates/oa-desktop/src/home/tests.rs", + "bytes": 8167, + "sha256": "3b03ccfc97dfb75954e1e0ed568bb87a632295c07b96cedc05ed381f87b378f3" + }, + { + "path": "crates/oa-desktop/src/hosted/client.rs", + "bytes": 21912, + "sha256": "54b24b4b50f8d87d7c92946ea5a2cff4c98760e70555b3ce3d90be27115e95d4" + }, + { + "path": "crates/oa-desktop/src/hosted/client_tests.rs", + "bytes": 23009, + "sha256": "3ef70907ca75e098d631c41b90badd4cff1e1eb1b3c78e15a9f811c13ba8ffbe" + }, + { + "path": "crates/oa-desktop/src/hosted/mod.rs", + "bytes": 3744, + "sha256": "1b75e11c80fcb38fd20bb3487e3f88729fdac73e471c5ae64da28c249f77c63b" + }, + { + "path": "crates/oa-desktop/src/hosted/view.rs", + "bytes": 9281, + "sha256": "fc0c7b7ce3a5f05c49713df6661067751f81e810af11c614ca265ea9490e6463" + }, + { + "path": "crates/oa-desktop/src/main.rs", + "bytes": 1554, + "sha256": "5228743f361f9239e4584780bfa9b65d36207d0288624e1fb42b721146bcff1c" + }, + { + "path": "crates/oa-desktop/src/model_menu.rs", + "bytes": 36340, + "sha256": "d2f836661f43fa1bc8830b1e51cc736948b3d261796c3fa877df02ae15568c4b" + }, + { + "path": "crates/oa-desktop/src/navigation.rs", + "bytes": 8839, + "sha256": "71355a12e1b4791106426d83fe5ebf0b29bce8e1dc594f0655ab85695469669e" + }, + { + "path": "crates/oa-desktop/src/port_edit.rs", + "bytes": 7809, + "sha256": "70b99f577c4fdeda8780c8dc1ee7b1639fd77aaca06658f06d725139fb3efb6d" + }, + { + "path": "crates/oa-desktop/src/port_preview.rs", + "bytes": 35855, + "sha256": "069487c4ece737d52e8ae4a84dcfb132236aca6799e841c91c8e7244320cf871" + }, + { + "path": "crates/oa-desktop/src/port_workflow.rs", + "bytes": 40582, + "sha256": "ccc15f97c3272145a67bb5857b4faeaf7437561bd61912fa27ab26e8824146a0" + }, + { + "path": "crates/oa-desktop/src/recovery.rs", + "bytes": 21041, + "sha256": "57e22e5fbb0e994e64ae03e69450271fe9f04a951db1670c2a018abe99db4489" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/README.md", + "bytes": 1587, + "sha256": "a90002df1e087d2dac7be26926864243568a0de7c4103e4927435b34178e8016" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/profiles.json", + "bytes": 473, + "sha256": "2c12ae96b50e6da5d60ce2b7fa00204be71dfbe2fd51311fc337a0de6a4332ff" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-bundle.json", + "bytes": 80974, + "sha256": "12715995e6f7f35414aea53b3ad720b9b31873ffdeaf4444231db1a5ac3c463e" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-model.json", + "bytes": 86191, + "sha256": "5535a706df9ec21715e8b6a5aa6dbd79636ae461450aee61305559016167612b" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-bundle.json", + "bytes": 85286, + "sha256": "ea88890a33f47d67dfb06d6dbbcc179058cf28dad76ae7d615c00aaf30dbbbfe" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-model.json", + "bytes": 90629, + "sha256": "5bb8db0b6394276666323483f977ac3586f88554c81a148c6d508fca0ef4576f" + }, + { + "path": "crates/oa-desktop/src/recovery/source5.rs", + "bytes": 6956, + "sha256": "0f0a763f0c98c2c908d4c2b95d8a4c042b6a255ee1cc16260e5404669691f642" + }, + { + "path": "crates/oa-desktop/src/recovery/source5_tests.rs", + "bytes": 12146, + "sha256": "cfd17a742f1f27b523fce7cd9309f0a07a30413395f6c58659fb91d02834a7a3" + }, + { + "path": "crates/oa-desktop/src/recovery/source7_tests.rs", + "bytes": 18213, + "sha256": "7ee61de66c75bf949489ba51ddc9677e2b4efc68801cf27909c9b894bfdc9288" + }, + { + "path": "crates/oa-desktop/src/route_edit.rs", + "bytes": 2941, + "sha256": "457ae59c2761a43a8620b4d336a7cf0f54b965997110ecaf968756a88b6b0374" + }, + { + "path": "crates/oa-desktop/src/semantic_review.rs", + "bytes": 3432, + "sha256": "8dd1e93783d63a663c7e56c28775a5c389cfd7a6b562013d6a95c891afa21ed8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts.rs", + "bytes": 24201, + "sha256": "a79236a8150597ff808597e59cf4f1e9e61c74c4901d9c8cf42d3427bb52a9a8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_recovery_falsifier_tests.rs", + "bytes": 11034, + "sha256": "3f255d04e4bffa5a467b75e3cbf6f7149aa3269a02f2a89fbaa1db0e5df9ae62" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_tests.rs", + "bytes": 20798, + "sha256": "04d0dd2ac453705185663f705282aa4a3a31433466a5be305764248da1a03c32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_view.rs", + "bytes": 6447, + "sha256": "2100ff73565765d8293c84f6ce2d8e566610c1524c50e32ce3c37dc33b6686e4" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments.rs", + "bytes": 18160, + "sha256": "de0ec0c740895b160ff5b847332c087c3f1a48931583464069470cc61315ed59" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_tests.rs", + "bytes": 29389, + "sha256": "8b26be0324e0f33b1e7cf7af340350df8ed98963002d6da8589ee0e6f6900bea" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_view.rs", + "bytes": 3032, + "sha256": "932f231554d77c7cb119d33bb06b9879db5e12127aed187e67013e77b6458e78" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch.rs", + "bytes": 34485, + "sha256": "a462eb627ae19348072775cf8e60b17d62f6b682b74cc413906d493fba1f0b3c" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch_tests.rs", + "bytes": 27546, + "sha256": "b67c4d7dcabac710cf3d30730a8db323180a558a415e2d117c868cdfa4804619" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose.rs", + "bytes": 27155, + "sha256": "c6adcc9882dde65e9f04f6eda7f0c855c5cbb285cf421123029169112793ce9b" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose_diagnostic_tests.rs", + "bytes": 9809, + "sha256": "440daf8d43278ef981c620d1818d0daaed8fb83193b8e8ff67b2e42fbf882938" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructor_tests.rs", + "bytes": 54132, + "sha256": "85149521ad7df62918f6f2fab6da2b3346c342ab4bce7100de3f6206c1e81096" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructors.rs", + "bytes": 12258, + "sha256": "0982163439b06a42d9af1643530364109282e63f05b323a35a76d8241f3caa32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/history.rs", + "bytes": 3211, + "sha256": "df038c2464eab8093a983f3104f0d04ca8f602010a50e1d3eeb8e53f2309e201" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed.rs", + "bytes": 14175, + "sha256": "bdd6c0fdc7108056bc5d7433254503449eed2209813680e717ead24b9d0ce834" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows.rs", + "bytes": 13222, + "sha256": "4b7bf25806471ad22d89253b9af8000f5acff53b4cc0aa1c1a83138e7b270eca" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows_tests.rs", + "bytes": 30804, + "sha256": "1a3b09e7ed100411cdf8043f9a78defc664a873ee0201117709185c201a5c57f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_tests.rs", + "bytes": 31163, + "sha256": "9dc9b989e5a9d408427ca1baf86b2454f9dd3baf40a551c70ca2359dc18a1227" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind.rs", + "bytes": 789, + "sha256": "4ed19952ea511d1b3226564a138e3322f994371d6b49794c14bc3689d1393e7f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind_tests.rs", + "bytes": 23424, + "sha256": "5fcf9930e949aebeb12eab0327264f32a2388d62dbf098bd2365711e22623c52" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered.rs", + "bytes": 9705, + "sha256": "6a1ed894d1b9d0110bc784a75c49444f1d14f1f74620d701f22203b2d8d0a813" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered_tests.rs", + "bytes": 22383, + "sha256": "5c8ea3a69e3da3b94d13f50f12aa7dc53246ccba25ffcace9552a0eb76b0bf36" + }, + { + "path": "crates/oa-desktop/src/semantic_review/recovery.rs", + "bytes": 28769, + "sha256": "88e69044d90c481593bab7cc125f0401c05202fccdde07698cec9483947fe8be" + }, + { + "path": "crates/oa-desktop/src/semantic_review/row.rs", + "bytes": 38159, + "sha256": "b08fdc503c6c4d2ff99adac7e18c9baa861bf86155e00b55d1e492430980d0f2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/scalar.rs", + "bytes": 15153, + "sha256": "9ad202174934dd9a63fbf9cba43135aead571db60846c8b7b1d3019a11df26c2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/source7_tests.rs", + "bytes": 11665, + "sha256": "5e8221d77b068fa30c1571988448cb8829711735881d810f3d333cbc95d34a9f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/tests.rs", + "bytes": 32480, + "sha256": "077ec6501dfaab0b05ea3987943b204f08352952296d313555051d998ccd232e" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view.rs", + "bytes": 57626, + "sha256": "7cc7dd213ab01dadad5debaee868c30a1099466602869a799ebdf9b680e8eaf0" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view_reserved_artifact_tests.rs", + "bytes": 4737, + "sha256": "6c766b29c8664d15cb113d2cc71bba9b60ae4ccf7e44c9c5d3c41e1dc4b7ed90" + }, + { + "path": "crates/oa-desktop/src/source_navigation.rs", + "bytes": 3938, + "sha256": "c1da10882f35f8eb0675e68c642c9a209dde09679cded414cfb9903a4e49ec77" + }, + { + "path": "crates/oa-desktop/src/source_tree.rs", + "bytes": 21816, + "sha256": "4d55e0110a1eb128a5d26c28f3aae5853d79b7245812b7c82bd275f38440a5aa" + }, + { + "path": "crates/oa-desktop/src/source_workspace.rs", + "bytes": 15522, + "sha256": "30f63a6b8d65a38d66061f90d864b5746cbacc0fbd65abc028a8f3071c47d358" + }, + { + "path": "crates/oa-desktop/src/style.rs", + "bytes": 3015, + "sha256": "05d61bec16141612ccafa0988e8c4827f41754509efdb3b961eab69127ded896" + }, + { + "path": "crates/oa-desktop/src/tests.rs", + "bytes": 58557, + "sha256": "b017218195eea2c96aba12eba8a99a38945c8ca910a652e272d34883bdb98691" + }, + { + "path": "crates/oa-desktop/src/view_copy.rs", + "bytes": 9043, + "sha256": "5630f31c942e1226aafd67eabdace6a5c5494875bdc6f7f077019e8110ba41a9" + }, + { + "path": "crates/oa-desktop/src/views.rs", + "bytes": 50668, + "sha256": "9b53126d19b2ae34f170a1422c9f5ea5a833489274cbfa04546279058e289f9b" + }, + { + "path": "crates/oa-desktop/src/views/traceability.rs", + "bytes": 7501, + "sha256": "4c89dcf35c25e737d8cce4d543a5989ca104a5678e6cf40df47e457773d2ef94" + }, + { + "path": "crates/oa-desktop/src/workflow.rs", + "bytes": 82963, + "sha256": "d9e7b11a86fd3ec79d91f0c9bc9cebd5a2043cdaa7261622454fb7730ad8e060" + }, + { + "path": "crates/oa-desktop/src/workflow/communication.rs", + "bytes": 11084, + "sha256": "34d121ad97706012722e4bb6210072ecc3a5b4718b0ceab0c3d0f14d4cd780a1" + }, + { + "path": "crates/oa-desktop/src/workflow/recovery.rs", + "bytes": 9859, + "sha256": "0849b0f34dba5e8761be5fa05784d134ac74e4e9db395d6b9b7d6cff71e3f3dc" + }, + { + "path": "crates/oa-desktop/src/workflow/transition_tests.rs", + "bytes": 8553, + "sha256": "589b1b2dbadca74a52c2cfcfd4fe620bd4790abd113ac02182e91616c52d793c" + }, + { + "path": "crates/oa-server/Cargo.toml", + "bytes": 778, + "sha256": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982" + }, + { + "path": "crates/oa-server/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-server/src/error.rs", + "bytes": 5610, + "sha256": "93817f1502386e4662c96ee1c7d1c4afc4e33bda6fd64e46c86c8e1afd5a9368" + }, + { + "path": "crates/oa-server/src/lib.rs", + "bytes": 7743, + "sha256": "20bef350350ed6339588b23af684abf745f97916c7edf3853ee042abe687e664" + }, + { + "path": "crates/oa-server/src/main.rs", + "bytes": 4163, + "sha256": "d59a6a2b5c7034bd2e00a516d2d49abb16391bf0316c1c357ddafb9c82d2d1e3" + }, + { + "path": "crates/oa-server/src/preparation_http_tests.rs", + "bytes": 5523, + "sha256": "454b90d0055d35644c8d990cd7576ddf675a9b271ca07fe9b0efce25d8ddbc07" + }, + { + "path": "crates/oa-server/src/routes.rs", + "bytes": 46053, + "sha256": "3f9a0c22043dbf28f7a8e587d2fc3abf869f76f4d23a46fe0aeb9c4392454a4b" + }, + { + "path": "crates/oa-server/src/store.rs", + "bytes": 25524, + "sha256": "37dcfb845b7993d5bced2bcf25fedfcd2a9c20a748f9315afe6cca1f41f89ae5" + }, + { + "path": "crates/oa-server/src/store_preparation_gate.rs", + "bytes": 4440, + "sha256": "427c390da3c0281ba1fe115a93ea90800e3b45fce6bcb9185e71982ddd885fec" + }, + { + "path": "crates/oa-server/tests/http.rs", + "bytes": 71892, + "sha256": "50daa6a90e96ad6fe3c6a27df2eaebe486270599c203892d09769c547a194975" + }, + { + "path": "crates/oa-server/tests/http/communication_limits.rs", + "bytes": 5790, + "sha256": "ba5474dd8e494a0176fffb4548c8e3deb2081b15de33bfce82394c764e0a2c16" + }, + { + "path": "crates/oa-server/tests/http/data_contracts.rs", + "bytes": 25949, + "sha256": "8cd456db83f301baca380acf025a5a99db4edf7d8839537dfbd02c4307e10e6b" + }, + { + "path": "crates/oa-server/tests/http/port_anchors.rs", + "bytes": 15086, + "sha256": "7199d0a208ddad9e1518b6e3fb390d64da111716d7505ba5c995deae19ad1258" + }, + { + "path": "crates/oa-server/tests/http/semantic_transitions.rs", + "bytes": 22832, + "sha256": "856d1c9b633ffb581e3e631f4e5a607789a02181dbf060667f208a569bfa4920" + }, + { + "path": "crates/oa-server/tests/http/source6_views.rs", + "bytes": 13023, + "sha256": "867bccda0e030eeeb9976b4ceeb47b21ab5044d700278022d5fb495bbb64ca07" + }, + { + "path": "crates/oa-server/tests/http/source7_contracts.rs", + "bytes": 11000, + "sha256": "0e0a467186da7263c0754890aff69ebd0d92d36b5224e4865bb6854b18dab7e8" + }, + { + "path": "crates/oa-server/tests/http/source_projects.rs", + "bytes": 30907, + "sha256": "8ff580f317ec267d1cd72ae14d8638f74a77cdf99ca4c78f66f4290c2d77460a" + }, + { + "path": "crates/oa-server/tests/semantic_http_contract.py", + "bytes": 7251, + "sha256": "4737ff94f10761f94151a694414c5c62737e0391ec820bca132830652bc4cca2" + }, + { + "path": "crates/oa-server/tests/semantic_schema.py", + "bytes": 25111, + "sha256": "cacca116c42ffbc097f1419c0f89921fa0dfd3faa864d46820ff744cfe6967f9" + }, + { + "path": "crates/oa-server/tests/state_representation.rs", + "bytes": 12241, + "sha256": "6686c826f28248ae4b63ec3f2112e193d4a347724b87974483217fcfee49cd61" + }, + { + "path": "docs/acceptance.md", + "bytes": 3463, + "sha256": "32ed3e4fed63f5c464e0937221f401d71623b276dd70f083531ac6ccebbf9050" + }, + { + "path": "docs/api.html", + "bytes": 72515, + "sha256": "a06126cb741da57e9c06e83fc4137ccde0de05562673546bc9d405878f51ea07" + }, + { + "path": "docs/api.rst", + "bytes": 41929, + "sha256": "ca7d310138c3b4d429d80a1d03d1ac8d4a9296069e205da573034256d10438a7" + }, + { + "path": "docs/architecture.md", + "bytes": 10974, + "sha256": "a50bd1645222ef3e574fa07a6ab9aa213431ee8833c6c0158ad91ce0f799543c" + }, + { + "path": "docs/language.html", + "bytes": 175111, + "sha256": "67dcfa3477b48a0b07298ec81741840cc3ccff12c7d58164873d746d41d611c8" + }, + { + "path": "docs/language.rst", + "bytes": 134663, + "sha256": "12229dd7d52fbaba80fe599d499f29b535f4c37c7be0585664d17edf0466ba33" + }, + { + "path": "docs/linux-packaging.md", + "bytes": 8671, + "sha256": "41a1bb1095801df37a1411341c5791d55ea8c365739314d599a60269ac4bc7a0" + }, + { + "path": "docs/openapi.json", + "bytes": 346920, + "sha256": "bc5825a3182a4df5f6710a80262f4a09b4c15f0e4cda7ca74e1746ceca81a89b" + }, + { + "path": "docs/research-v2-architecture.md", + "bytes": 40445, + "sha256": "1b3809f2dabe6b1805dbf3d3f2625c471cd21356c7bd603916466a8c4ced8090" + }, + { + "path": "docs/research-v2-semantics.md", + "bytes": 31535, + "sha256": "b7ec3677300248926a88b84da3e7ffe52f5b73524c7712c927a0e951569db04f" + }, + { + "path": "docs/research-v2-service.md", + "bytes": 36209, + "sha256": "4828df5bc679e7c71f49b4b85c9e7dacbec52f46d416fed48af70e08886d4e4e" + }, + { + "path": "docs/research-v2-ui.md", + "bytes": 3245, + "sha256": "894e721b59a8ca85f0d95b6706ed5f130a0372def460cf33aeefc9e5e38cde0a" + }, + { + "path": "docs/scope.md", + "bytes": 16690, + "sha256": "a1d0cfbfc06fc8bc2bf0f71343aacc8853cbbbfc00a1fc9852ddf41c8245ffca" + }, + { + "path": "docs/server.md", + "bytes": 23361, + "sha256": "4eb24937d424ba8b384e1734e02a6f8e963ae11d2715889c92b14b39ff2e4a48" + }, + { + "path": "docs/source-cli.md", + "bytes": 3374, + "sha256": "34f12b72cc6d6ead4f47c7818c1897db592f8ad493c70776db2ab48c24d8f051" + }, + { + "path": "docs/v2-interface.md", + "bytes": 11807, + "sha256": "c7fbaf0ebd3fc9f6c11f818db2b0b9d68a33f580cfced22bde83ce08ae790bc7" + }, + { + "path": "docs/validation.md", + "bytes": 6505, + "sha256": "f46ea950ed1a54409aa07c4f9e90f39f8e2d00c1dd1b6cb805caa3993845967f" + }, + { + "path": "docs/windows-packaging.md", + "bytes": 10406, + "sha256": "2c852ff7041713ffbff3c951ac98df647c51fb70b0feba9000f7bfd5bc2703a8" + }, + { + "path": "examples/coastal-rescue.arcadia", + "bytes": 33107, + "sha256": "7e183ef9fd8154d3074303f1956cd0d9871c19e3ffc630d333b0bffbd6e30e17" + }, + { + "path": "examples/coastal-rescue.json", + "bytes": 49715, + "sha256": "242f0b031229a87af5c4ebe5d651defe59c191a6b7a69dc0a77f7e203411f195" + }, + { + "path": "examples/legacy-v1-coastal-rescue.arcadia", + "bytes": 3449, + "sha256": "4dbbbdf8bc7e6cb8e0a81dd678069dae585a9e5187c59bc3665e1fdab3f1a86a" + }, + { + "path": "examples/legacy-v1-coastal-rescue.oa.json", + "bytes": 5976, + "sha256": "fd0e9dedfb7adb922dc0575cc2b820d40344d639f1d8052bd70363aa59de9c24" + }, + { + "path": "examples/release1/README.md", + "bytes": 11137, + "sha256": "113cfb1cf38a98b51bff60442d86a35d636a3d80ef206bece7d53d0aae67f2d5" + }, + { + "path": "examples/release1/evidence/repair-check.md", + "bytes": 1419, + "sha256": "f4db17bdca4ecbb1bf0caef01b2da5f1f7f798ab3152b648ce6dd8696a6a68e5" + }, + { + "path": "examples/release1/expected-diagnostics.json", + "bytes": 288, + "sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e" + }, + { + "path": "examples/release1/model.json", + "bytes": 134520, + "sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727" + }, + { + "path": "examples/release1/model.rs", + "bytes": 28762, + "sha256": "15f30f6bde655808fe754665c26d560e36f2a9bad340f346b09137d0d05045f5" + }, + { + "path": "examples/release1/oa/activities/activity_oa_restore_work.arcadia", + "bytes": 1307, + "sha256": "83e73d0a013d5c3e1a4af0d9139ab0cfa362d25a846671fc2dac59181061a9d4" + }, + { + "path": "examples/release1/oa/behavior/process_oa_assessment_procedure.arcadia", + "bytes": 697, + "sha256": "172c32c044ef4b5bc58a1f4635cc81f48dabb4014479b47dce7b25fedf2dbd0d" + }, + { + "path": "examples/release1/oa/behavior/process_oa_field_procedure.arcadia", + "bytes": 1781, + "sha256": "d2552dc5383e2e91cb302a790364e197f663c2edc013a2ab1978789825c9c324" + }, + { + "path": "examples/release1/oa/behavior/process_oa_response.arcadia", + "bytes": 3225, + "sha256": "cf86f46fa5c5d70592ef43f1bc1cb4d968efd8add384ba88036bef6b88aa4abc" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_conversation.arcadia", + "bytes": 1795, + "sha256": "b25be524e98a35ebac5e4481b7609c027b32baf9605e8097f807560f94a77ca6" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_full_scenario.arcadia", + "bytes": 1261, + "sha256": "00a1edf2c9707a0eb62ac070c2d02467874f2c9c1f273cc6ddb53d6d65999a1c" + }, + { + "path": "examples/release1/oa/behavior/state_machine_oa_monitor.arcadia", + "bytes": 2022, + "sha256": "447c9ad1359f4a31ecf975ad07c0b08d8e7e03191fb0858e2fc56f377b223cd5" + }, + { + "path": "examples/release1/oa/capabilities.arcadia", + "bytes": 781, + "sha256": "fc8012e5554350b12e1cb80080f8feab80d933c9b33c0f2a7bb500cb7d609936" + }, + { + "path": "examples/release1/oa/model.arcadia", + "bytes": 661, + "sha256": "f7cf914766ea73ec53b85e32d117ea9a9dba52d3e038246863541ae7069b1a15" + }, + { + "path": "examples/release1/oa/participants.arcadia", + "bytes": 1834, + "sha256": "951764c14179f27c10e315acf2ea37d1fff54c77b8441e23addd239e8c715ce3" + }, + { + "path": "examples/release1/oa/types.arcadia", + "bytes": 788, + "sha256": "9d0396fb82dd5733edd8d1cf52f968ca84906927c704f9cf0944a7fae215cf49" + }, + { + "path": "examples/release1/project.arcadia", + "bytes": 1958, + "sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda" + }, + { + "path": "examples/release1/sa/behavior/process_sa_assessment_procedure.arcadia", + "bytes": 706, + "sha256": "73928ced61c06cbc08728d7956676a50fd4c05aa5b7f1ff4f29ce27a0b0f2088" + }, + { + "path": "examples/release1/sa/behavior/process_sa_field_procedure.arcadia", + "bytes": 1790, + "sha256": "886d462af83110cbfa55dd232a667ea1446761234471357cbb878794e98e8768" + }, + { + "path": "examples/release1/sa/behavior/process_sa_response.arcadia", + "bytes": 3234, + "sha256": "041785fc22842423822431bd5e6e8d16094ebd0716965e7c765fb8c1d7549e8a" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_conversation.arcadia", + "bytes": 2127, + "sha256": "97276f5757ee9aa12a0dbd9d3ccd58174b3091162bb8bcce357cec20a45f5d85" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_full_scenario.arcadia", + "bytes": 1256, + "sha256": "e12fc406b99d60a2f7768aaa0b25ba560e8605f0b8e37f3a7cdd3b8443562b74" + }, + { + "path": "examples/release1/sa/behavior/state_machine_sa_monitor.arcadia", + "bytes": 2022, + "sha256": "05ce29af99424c491c47fe2450dc6f5f8ce995511c01ec7e17bb5855be3c9736" + }, + { + "path": "examples/release1/sa/capabilities.arcadia", + "bytes": 781, + "sha256": "b6912fb3ece439912345fa71724acd462e716a1e5a88203a1058a5c3b2c20a4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_audit_thresholds.arcadia", + "bytes": 297, + "sha256": "e5a04325d52183956dca814dd90f4e56c96c6b7db0f4f202f203ecb49c3e0f4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_restore_work.arcadia", + "bytes": 2576, + "sha256": "fddeb67308051325041fee641fe758ddf43345b7c47b66d433616ad07fdccdd6" + }, + { + "path": "examples/release1/sa/model.arcadia", + "bytes": 661, + "sha256": "d431509251acb859fbb98733b6d18add952495e10a78703fbe8f31e40bc083c4" + }, + { + "path": "examples/release1/sa/participants.arcadia", + "bytes": 4012, + "sha256": "780d2eb08b217b67b55febb3d34846f727b8ee9018df6c5741748647e36b2ff8" + }, + { + "path": "examples/release1/sa/types.arcadia", + "bytes": 1227, + "sha256": "101fc0fbd99f1101514aa7b6da4f8e535aae0bb94c9e2b9e7e6c151135b28660" + }, + { + "path": "examples/release1/traceability.arcadia", + "bytes": 29506, + "sha256": "48a96f543456c9b5a5798fc795594e4119147fe45f11a6f109f141b7f514560f" + }, + { + "path": "examples/release1/transition-before.json", + "bytes": 35801, + "sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d" + }, + { + "path": "examples/release1/transition-request.json", + "bytes": 4276, + "sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a" + }, + { + "path": "examples/release1/views/diagram_oa_allocation_view.arcadia", + "bytes": 2176, + "sha256": "dfc0eb61e0e2aa5bda45524571fbfa3494f44ce19696f3e15e07438074a07bc7" + }, + { + "path": "examples/release1/views/diagram_sa_allocation_view.arcadia", + "bytes": 2173, + "sha256": "b78b43a26a82efb8fbd5374b09c329fa341f57b29f635d397b9ef8aede71d389" + }, + { + "path": "examples/release1/views/diagram_sa_capability_view.arcadia", + "bytes": 1620, + "sha256": "75e8dc9fb30f25d6f8fd3c6b595593ab4f98958a25798f961e336e0fac557649" + }, + { + "path": "examples/release1/views/diagram_sa_service_view.arcadia", + "bytes": 2209, + "sha256": "b08c84f3ea633e7c78dfdad3272f75415f6256cf3614b6d99bfd4f0269076c9b" + }, + { + "path": "examples/release1/views/diagram_sa_state_view.arcadia", + "bytes": 1931, + "sha256": "5f42f4c605e57b817d8400ed21f2b14bfc4e1592aebe941ff113767504c2b869" + }, + { + "path": "examples/routing-workshop.arcadia", + "bytes": 66431, + "sha256": "dc6b75da72884d399132ed9e300fa5a26b73d802bb526c9af986ae9eeb0a646a" + }, + { + "path": "examples/routing-workshop.json", + "bytes": 100281, + "sha256": "8592714f75b271133f21ce017d87896b6cf91ea0e4837f1c2ed453e21be26b14" + }, + { + "path": "examples/source-project/oa.arcadia", + "bytes": 2142, + "sha256": "5f60642f211b2d352a951092faeeb7503d4fb7f6f7fca99e810347231101d31c" + }, + { + "path": "examples/source-project/project.arcadia", + "bytes": 606, + "sha256": "787f6b67b179ffd221f7e5faf1a4edd74cfd116aa1e3b5e9ed9f22fbff612d8d" + }, + { + "path": "examples/source-project/sa/assurance.arcadia", + "bytes": 682, + "sha256": "ab76044836e4dcd42a82d316846ec87da2108939aa2037640c5bca1d2ecdee0f" + }, + { + "path": "examples/source-project/sa/participants.arcadia", + "bytes": 1231, + "sha256": "1abad579812e77877b45a3d8e3c3e9da734be2d04a0254cc730a5257ebd2dc88" + }, + { + "path": "examples/source-project/sa/reporting.arcadia", + "bytes": 2839, + "sha256": "f0b7443f728912ca163de39b6055876b533a77feaa3219b2d40a2dd65712e058" + }, + { + "path": "examples/source-project/views.arcadia", + "bytes": 3508, + "sha256": "e29ad3f406a6a50d2f0ae2ca2a53ee3b0c18222cd4098704a46d4f48b64ea17f" + }, + { + "path": "examples/text-first/README.md", + "bytes": 1367, + "sha256": "4ec8250d5ed556f1d496e8c85137e973e802ecb11df1a36488411e8cdc5a9f9e" + }, + { + "path": "examples/text-first/project.arcadia", + "bytes": 480, + "sha256": "f441535c623e0cf20e1875eb2cd33b587ed00e078c37af39cb36d89bb5edc19a" + }, + { + "path": "harness/fixtures/basic-editing/README.md", + "bytes": 12012, + "sha256": "3545d9695e7c62e0caa818efd7f4dc426f04876a3626e0f3b1bad606b258cb26" + }, + { + "path": "harness/fixtures/basic-editing/base/expected-baseline.json", + "bytes": 4524, + "sha256": "f239e728d650b0af32bb8f3dcaf6b27c99b9c5041132ac14e51756ea6563d978" + }, + { + "path": "harness/fixtures/basic-editing/base/project.arcadia", + "bytes": 3077, + "sha256": "045cb047d7bfbca72c3fb30db4c81a30ad463d3af7fc51604906ad7fa75a1ff8" + }, + { + "path": "harness/fixtures/basic-editing/base/rationale.arcadia", + "bytes": 57, + "sha256": "c01867c9dc0d40726853119fac3c6ad24a40d8d362a93a8b9d20df04ec2e273f" + }, + { + "path": "harness/fixtures/basic-editing/manifest.json", + "bytes": 447, + "sha256": "d23c21b02064ddb85e051e10e16ff089daba8d9910bb1a695dfabe2db3757734" + }, + { + "path": "harness/fixtures/behavior-creation/README.md", + "bytes": 5954, + "sha256": "9e5fc751424d12cfe76a84abb1da45b2d38947409179451bb90ffe7e7ddc8723" + }, + { + "path": "harness/fixtures/interface-operation-probe/README.md", + "bytes": 2604, + "sha256": "088f0bdb3375deb8f2c7e3b749ca8d210ea828ca4dece69b3871b674e3110175" + }, + { + "path": "harness/fixtures/interface-operation-probe/hashes.json", + "bytes": 977, + "sha256": "f6d3e8aa42f40f64ce2ecba7b9cf112eb9091f3cccde3a592b0434e834cf2a6a" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.arcadia", + "bytes": 4218, + "sha256": "c0fe9570684c0061efc4cad65e339fede6961b04ca90c6f324c787bd65e61226" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.json", + "bytes": 7835, + "sha256": "93187f7a1b476a44185725c6b15f2e1767482b6911ab1280144348d033eb51f0" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.arcadia", + "bytes": 4771, + "sha256": "02f85e39957ebe6d56336fa729a5c8b10f51865face9d3b2c9679200571fcfc7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.json", + "bytes": 8840, + "sha256": "756f9710336e6734ce3592ca774c6f104bba5a37c9e165540eb39326682393d1" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.arcadia", + "bytes": 8635, + "sha256": "ac5b629ba5596464f9f8a975b8bc2764e3007ceb7342de3f828d4b18e4f069b7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.json", + "bytes": 16160, + "sha256": "78a47c978dc667aa1c45af711f06aa2a0d3c581003013e30c3e02fb0faae2e64" + }, + { + "path": "harness/fixtures/interface-operation-probe/probe.rs", + "bytes": 11274, + "sha256": "72b1b443e25eb20420dec4477b0fb5ef5d1c705e3882c81df88dd578ab96a426" + }, + { + "path": "harness/fixtures/release1-native/README.md", + "bytes": 2564, + "sha256": "5f5ba040fd2df9261a29bcab3f9a7ae27c3683265411ad3dda0b467d5df8590e" + }, + { + "path": "harness/fixtures/release1-native/artifacts/README.md", + "bytes": 4155, + "sha256": "24200c84ccc2ef3e17c029744074e5cea785188f5549ac54e44cf89682643f81" + }, + { + "path": "harness/fixtures/release1-native/artifacts/generate-semantic-artifacts.rs", + "bytes": 9275, + "sha256": "444f360b78df52c5e42046f77b148781e0c9bddc2a09c0b7bd65c7a4f376cfe6" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.arcadia", + "bytes": 7768, + "sha256": "84b22e95c213018612e6e8a84cad68b35a8b495ff3515b0f978c5e7a3d196d79" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.json", + "bytes": 7330, + "sha256": "13a6f99ec2df1dd35ee8b2613f183918cd9537eda4a5da085ad52e65c033db59" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.arcadia", + "bytes": 1446, + "sha256": "1e0d662ba33071b122ad9206d2d559a8e748c9431eb3ac1b759bde3760ca877c" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.json", + "bytes": 2216, + "sha256": "fa6a2e3643c0f909b92407abec3edc897033162eeaa501f8d4616f79d41fa044" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.manifest.json", + "bytes": 567, + "sha256": "65cb70b0d697a055363ba01bf30bed7e412d43c9978a033549c378d117719ae7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.request.json", + "bytes": 3991, + "sha256": "ed905267263e7f8a0cd2dbe833196b30118b6a246815216932fae661ad650699" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.arcadia", + "bytes": 6837, + "sha256": "e50fc462ec22dbf98011929931dd2489430001c3e6433608685b9d88bceb9acb" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.json", + "bytes": 6433, + "sha256": "f27a7b38d59c7cefe58cb36783d3d4dd8d8ae1168d9aed1eb61d343c18758908" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.arcadia", + "bytes": 1807, + "sha256": "eba2aec39e6efb405eace4bc8ab0c5563907c26d449e71a4aa750df9f73233b4" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.json", + "bytes": 2673, + "sha256": "2ef777f19b94f08b5e5ca2ef727777897e1018f1426eee291408b3c69101f596" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.manifest.json", + "bytes": 519, + "sha256": "3af7232ed3056ca84dcaf0f266ead3faaa512a0dc0051c7ba68791c20dbae0cf" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.request.json", + "bytes": 1246, + "sha256": "8af21b00b62e620256fbf50e47c6c5836cdb6922d9549cc4b3d86bc03b008073" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.arcadia", + "bytes": 4200, + "sha256": "20bb30473830e44228958e78fb7480269cdcc0580c6c90c718da75f34ca5a43f" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.json", + "bytes": 4552, + "sha256": "44f4b05db49758dcf344788f57cecc0250fd029099b1c54e4e1e3e972f6cf039" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.arcadia", + "bytes": 1808, + "sha256": "b0fd031671c9f755756922ec5c40a0ce3f40164d22c3c389aec9fd0705344da7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.json", + "bytes": 2673, + "sha256": "1acf81e08c51c85aceb14a3efbc39ec680552a19c7824aab4611ac3cf71b9c6d" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.manifest.json", + "bytes": 610, + "sha256": "a07978f4b0a3ca83e5ae5f35e7b66b26473b24431fc90e5889d755f1816d52dd" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.request.json", + "bytes": 2352, + "sha256": "5ff844a038b0030adb5a83d13d81e60f30627543388f6199b6a0e026fc42ea58" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-native.md", + "bytes": 4075, + "sha256": "a51ffbc45b6c172cbfed3b16c249296e6a28d457fea57393dd958cdcfbafbca1" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts.hashes.json", + "bytes": 2367, + "sha256": "3ad8b7428b3ed7585a91e7f5d9d5f4880caccfd0b08dca25d05af523e62e0a10" + }, + { + "path": "harness/fixtures/release1-native/communication-means/README.md", + "bytes": 15091, + "sha256": "015c16010c212af283f9def118c6d263ba65a3bc6e81a750f180624ca69bb311" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/entry.arcadia", + "bytes": 6098, + "sha256": "a6976e7c21031e7cc3cb731e20c3075cf89cf85144dc8d3f52930f8521ea196f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/expected.json", + "bytes": 10480, + "sha256": "60c4419415c546f06c9972ac7bb0e530ada7b30a200b59e75ddda231a24f9a3d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "3c41459f2b0706a767988738bf8126f76540415bb5940d9c5db19cbe8c18182d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.request.json", + "bytes": 1331, + "sha256": "b16e673b29c96b5aed681389ff7669110abe552939e86dd0ec6011c9a45ed860" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.arcadia", + "bytes": 5239, + "sha256": "a511a4d817d9c5c80233bce83e84a7056b7dce7afd9fcc25696e333f8f4df055" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.json", + "bytes": 8424, + "sha256": "7140114926228b1c378c450535f7a70992c71a879a8d2270c49e8d5f04a2f484" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/entry.arcadia", + "bytes": 5710, + "sha256": "910e6dfe609467047ce629ec9c626f4e927cada74bfbfa164414a8fe6783ea87" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/expected.json", + "bytes": 9868, + "sha256": "567259e20c9f6278776e8fa99b8b2fdbbc9a883ad875c5d39dae1b53de3a2924" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "997f72fe9258012df66e88344cf39c1a2cebf2327f604056b67f7f2a8ebcfbfa" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.request.json", + "bytes": 1127, + "sha256": "cb3fe05859cfffec6f8846c19983dc462413bc0ea4f6e19204f09c259919c4b1" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/cm-reverse-scenario.arcadia", + "bytes": 8209, + "sha256": "ec826b9b84616507490ac30e4d57100dd6338dba2f7071e879a8fb58820a85c5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/expected.json", + "bytes": 19735, + "sha256": "ef07e4d2d3fc36004ff01739838281581d9a703c747611eacc01bb9cc672489f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/entry.arcadia", + "bytes": 9827, + "sha256": "86dd8a355f6c9dadfea56d06e5247c9b0f820819d7df17ef5690671c7c81324b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/expected.json", + "bytes": 21877, + "sha256": "980489ec2c483d4f9efada61358c1f29bafb2572fd5b804c656b91b8e9bb4f9a" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.arcadia", + "bytes": 7698, + "sha256": "1abc4c4cac37cfb06ed3b12a115f9e7e6a2d3affd34b25c355309e5ee465fa40" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.json", + "bytes": 13130, + "sha256": "a5cf4cb2ef390113dd752f4054d43fb789da2ca77799efb5782805ae8aa2dfd5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.arcadia", + "bytes": 5454, + "sha256": "b761c4c2af5f7064aaf1f887ffd6094eb6ae834b2c8057ecdbc4aa97c042066b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.json", + "bytes": 8852, + "sha256": "2536b000de361fb131787e32b466b9123d4e98abf00c099ad32f6cb8e7fb530b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/generate-communication-means.rs", + "bytes": 28035, + "sha256": "003521404b702332082e01f2be7676fda1dd7b5bcf220bb81d25120c8984c75d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/hashes.json", + "bytes": 3133, + "sha256": "39b4dc02fc8b074015c59354fd1c1061c25832fde25065c7151f36eb0455e6f6" + }, + { + "path": "harness/fixtures/release1-native/communication-means/manifest.json", + "bytes": 1237, + "sha256": "fb921f42f2c4a4f8a67d1266f17f8c7750b6a2619554b713aa92b17918f0c43e" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40-oracle.json", + "bytes": 26264, + "sha256": "74edca148583f42c269e51f135662f65ef1c9ea1c94516d63e2a5091967dc99b" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.arcadia", + "bytes": 28947, + "sha256": "00b87736b82c5afd33b311df7aebe9a6c8c51b6de66221181b5ea8bc8ca221a3" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.json", + "bytes": 54938, + "sha256": "5dd4f22453330cab3abc059881660190e689a22619853f77cf6d0b52735d97ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments-native.md", + "bytes": 2624, + "sha256": "28906924b05f75bbf432389517aef65f1df474d2f2bff79a3586564f7f7328ef" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.arcadia", + "bytes": 6795, + "sha256": "9d084dd75a0251d349cc31f9ee98df58d0bc76859dc3cb1503f242e2f759888a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.json", + "bytes": 9618, + "sha256": "f09be41afd85c18fd52fdf997e9b81c4b7cb2c41e78d167abcd14caea8110333" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.arcadia", + "bytes": 4990, + "sha256": "8740f27be99624013d9be876639c0411e1b8c14f0f9a843f43dc71d769efd79a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.hashes.json", + "bytes": 963, + "sha256": "00fc9e2c709bdcd9ee98012176cb0edb635c112153d963cd169bf4bf69a9e010" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.json", + "bytes": 8146, + "sha256": "9c188f2890630c7feec2be719a7104af9690da7ea836df18fa78da3ff2acfc1b" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.manifest.json", + "bytes": 1045, + "sha256": "46b40f221ffad614733b615208814ace63947e96b80bbfdec63853ccd4f4e8c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.request.json", + "bytes": 3075, + "sha256": "b57f656f0b9cf2c595e83150c683301909e20f15684d35d108d3c57ee0dc5909" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch-native.md", + "bytes": 2637, + "sha256": "dddca2b85f892b05881c75ef3cd62437396cc086a09909b621e02bad0cbe56ff" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.arcadia", + "bytes": 3134, + "sha256": "d3315bba762395205ae761e6e64029e8b4070c15a1299c6114075581db7b0974" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.json", + "bytes": 3927, + "sha256": "8f36119c7e893a4af374b13b85b1c2cb3df0196df8d06a551386628fc8b8646d" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.arcadia", + "bytes": 1787, + "sha256": "5e1f433e04621424edac43e53411624059e873f88dd531bfdb39093953485ed7" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.hashes.json", + "bytes": 933, + "sha256": "1bd87700b04e4f169ab5f8aceaa3b0c3ec3a1cc43e1bce135a1cee506fc75d38" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.json", + "bytes": 2816, + "sha256": "1972242d2a8677d004dc3af1081feb292de65fe26128d877dded8661f9906619" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.manifest.json", + "bytes": 647, + "sha256": "1e440efa02e2ccc27585d9a49c7864d53e3e3e7645ccb219f040e00d95331b8e" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.request.json", + "bytes": 2197, + "sha256": "71f23474614aab90398ce24f00f2cf61d6cb9a3a34faa3e12e0c8104e0a71073" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.arcadia", + "bytes": 15635, + "sha256": "e3ce0347746584f503b825a8b6bd23a7eebf0827940112ef8f36d500c1d0a043" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.json", + "bytes": 25736, + "sha256": "29736f2a619f7f2d0e795229f6e8c3645a1b4eca6292043cd604aa01b1ec9170" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.arcadia", + "bytes": 15631, + "sha256": "9ab573c92be66e3bae659dd826923ba6066979b1651edda7bd469056632cd77e" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.json", + "bytes": 25736, + "sha256": "828c990c6129692cd31c7f6ed0dd6c952f9cfffdd90bc80171df82d4d929afba" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.arcadia", + "bytes": 15617, + "sha256": "49214be2ca9c8bb6195c3b39737c053847021839f70f0bb2921d35a1fbd2ac83" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid-request.json", + "bytes": 2225, + "sha256": "8b02d4739b1be2c8a64da76423b4a6cae7d89c60f4d30723b94f1da3779cbcca" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid.txt", + "bytes": 78, + "sha256": "aa536e18bc65325163e9b645a4ad031ab599fcb05948dcf741b725d0f0c8b602" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.json", + "bytes": 25722, + "sha256": "995dd72f5c1f07f998233ae9847e337cb82de0c2a9053d3905be021d5f8124b9" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.manifest.json", + "bytes": 1059, + "sha256": "ad315359bfd68ce0d265976dc9e4ea6a502ebbb87d7339dd1af5ef27dd01e433" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-plan.json", + "bytes": 15016, + "sha256": "27bf316ad66ffa91f6323e75b0c280baf5caec298645793dea72c5d42aa3b782" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-request.json", + "bytes": 2225, + "sha256": "f4f6b5480ec8927033ea469ea82c1e8411cb6dba95d2da680f15bc193914c9b4" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.steps.md", + "bytes": 3897, + "sha256": "7d7e38d93641a5f22a2738baa4dbacc392eebb477a855cdce0641961980a19ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-plan.json", + "bytes": 18557, + "sha256": "74dd68ba686b8928054480f0bfed55aad91f6f1208803399dc9878e894f57ecb" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-request.json", + "bytes": 1508, + "sha256": "d19a53002a6bf95af3123a3ef9f78baaf7ce1085d4f06f0f4a9d5e5d5accbc0e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.arcadia", + "bytes": 6935, + "sha256": "90277f1780d43a6f0b2184bf00b87e7a4f3518d67c6f10d4793daafe1aabf493" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.json", + "bytes": 11286, + "sha256": "5a3c8494f6976c23b990c14b40760fb2f32ca9973caf6f31dab5632310663591" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous-request.json", + "bytes": 1379, + "sha256": "6a86fde194faa55f2d1bdb982571e0e711e5401b53a960e6acb8cf3e17f506c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.arcadia", + "bytes": 6195, + "sha256": "e7c30c5a5c3ba7209c8e223f02da55821d7af10a2f09844a7065ae6cd8f22aa5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-plan.json", + "bytes": 19156, + "sha256": "d1e5c2ed08e0aa6274a0421a39876d1ba99f4e441c7a0a68660a83b9e017da14" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-request.json", + "bytes": 2418, + "sha256": "433f723252598994dac7184da61f95344b528156cc5a0fba1a7864b2ec9f002b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.json", + "bytes": 10441, + "sha256": "9e4e2ce1c7879935ad0860a3ae720506c929a8422b51491b719d88af3fd3ff2d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.manifest.json", + "bytes": 1042, + "sha256": "87e8899c7d4e54faedeef32afb7592fb65278d1bd7390850ab198dcf62068329" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.arcadia", + "bytes": 6280, + "sha256": "6c77ed42bbf9f4ebe08bfa233197a4020e5587ce33747f7914430aa0c662d9a3" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.json", + "bytes": 10009, + "sha256": "1dd7ca2bcfc84ac23369c506302b39569d2ebc41e5a4edc99378a1fe01923b7e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous-request.json", + "bytes": 1390, + "sha256": "e0ea7aeb25687ae63c65128f1aab78273f14030d179d3fbea63fe91ab5430136" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.arcadia", + "bytes": 5529, + "sha256": "563c36162050c8564ffa25a85c726462ecdaebdb87659b3f3610506bfd5581e6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-plan.json", + "bytes": 18821, + "sha256": "f96c43fc58dbe48a044b628b31bb3f0b59171dad5b6982ec6c34a5597e474130" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-request.json", + "bytes": 2438, + "sha256": "d38fdb13612b07254edad80848f79c1e097d5f868c020feae9ba072aa697a50d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.json", + "bytes": 9153, + "sha256": "2ed0daed118f2df13dcad738dab174ad34d44a15921cf8097415e707978b0968" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.manifest.json", + "bytes": 1058, + "sha256": "c79bd12a85d8d4f25cc3ee43581b3e5e74ae9ad7e4de0c72764975ba2b89c279" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.arcadia", + "bytes": 5026, + "sha256": "98020e048ac01f285c6ad8c10ce22bef05e193b5ba0f5558be1fb26a7bf82620" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.json", + "bytes": 7851, + "sha256": "ea3783992488bc6ee944eb91a26ccf3dbc05a3909528fc32ec8023a76765cee6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous-request.json", + "bytes": 1379, + "sha256": "ea3cfd25f7a50481805956fb88ab851516dcd602dd6564502a0cc55f7de6a54f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.arcadia", + "bytes": 4295, + "sha256": "2b7c3694623bbea3e36dcc6f674d4adcd91e23c8e1005ded21e5a69648a048e5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-plan.json", + "bytes": 17912, + "sha256": "95a23bd334cffcaef0c3b1012b7555efd2a077ef6f9140d58020910ef8a76723" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-request.json", + "bytes": 2081, + "sha256": "1e2433ed5821bf65443f56cb27381ee935db81b1955d3a539b7952898312a410" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.json", + "bytes": 7012, + "sha256": "0033f8780c2ba69779b811bca792340c25a092f887e5811c6839f0a691d744f2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.manifest.json", + "bytes": 1046, + "sha256": "e3b4a60a56abee779ca8356605c968aa2d99256a3bd3c5601b14b5c5502a1a05" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.arcadia", + "bytes": 5467, + "sha256": "e265cab35097acc46f5123107c13bc35b9f71931ff650557fc1c85779141b327" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.json", + "bytes": 8482, + "sha256": "9b777828d3681138de6bbd08de8bf922bed92c27be60b103d8ff73ce7ddd0a48" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous-request.json", + "bytes": 1379, + "sha256": "7d124256730bf2feee772c7d0118b87eb288e8aaa9179d69ceb9259dbceb2c71" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.arcadia", + "bytes": 4727, + "sha256": "87a5a3665dab2dd6e595867dcebb1586e93dd067c85d6e24b1a4d3ff0ad6d4ba" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-plan.json", + "bytes": 18803, + "sha256": "1888ca51e0923866a9afea99cad069fe5d3f19f0a1b24328e20ac1b9f52d8bad" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-request.json", + "bytes": 2294, + "sha256": "5070a5b85feb1bc7b1fc648cd5d35ef26663492c8666dcd471950c06ec3a6052" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.json", + "bytes": 7641, + "sha256": "725b35e36640c81c70c7efea5c3304bf61b49ef9664194ca0d491782cc62191a" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.manifest.json", + "bytes": 1038, + "sha256": "1b43abf8fed3061c65a7b7cb103d31ea7ece333a2da83c645f8d228448c4dbb2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.arcadia", + "bytes": 5019, + "sha256": "65a6217f474b5085f37b511151185c2c08ff7a1998e924f1fe01f29c410f6ced" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.json", + "bytes": 7835, + "sha256": "8a53bb9b43eab5b6dca5e08deef20c14c96e134b9ee816a99b7960bb5255e008" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous-request.json", + "bytes": 1379, + "sha256": "c704f99245f00d5c3be0562d91931b4e7f1fb3fb36f41991eb76656ffbd6129f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.arcadia", + "bytes": 4279, + "sha256": "c59ec1233d5a9fbb8e386f6d9b13f398be21baf813ba215efb51bfc1bb98db36" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-plan.json", + "bytes": 17938, + "sha256": "30c5c3f614a74708763df612016483623792f4c65e2ed2fa662ac417cfb852eb" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-request.json", + "bytes": 2098, + "sha256": "3b6c35ef78133f0980cb6fb53fbc29c5d3c4deb5dc4be01c2c3384e221987b9b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.json", + "bytes": 6996, + "sha256": "c159c60403abcf8fefab7f19cbad9989488e8ccc20b82c57597b22a0ae254802" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.manifest.json", + "bytes": 1038, + "sha256": "af8a314a9b1d85a8f98affa5a6649f43d252851158798e1ad687bb1b6966b14f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.steps.md", + "bytes": 4549, + "sha256": "6004894e9d9f478b7fe1c3c3e0706dcc546d5df8557cff91b4cf26f8a4badf24" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/15000000-0000-4000-8000-000000000010.json", + "bytes": 1933, + "sha256": "71cca2a59f36b2a07d11dedbe9101226aa1a4a00d8ac244b5565202e56709f51" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/generate.py", + "bytes": 1496, + "sha256": "e44986c1d563499f25917441220b23883fc9cb0f89faf409873191f0212fbd2f" + }, + { + "path": "harness/fixtures/release1-native/state-actions.arcadia", + "bytes": 6224, + "sha256": "9cde82608110e56aa9e14c9e33eb38976f53aed74ab013145d411d5743a0ec26" + }, + { + "path": "harness/fixtures/rest-coverage/README.md", + "bytes": 1870, + "sha256": "df4a391312e0c8b20ccdcc850199443b08547be1b10b1f2447a067bf4bf544e6" + }, + { + "path": "harness/fixtures/rest-coverage/coverage-probe.json", + "bytes": 7951, + "sha256": "2d1ef7bdb5d7bf17b9fda33b1d1790d1d88289b3fd1e725f89b83a69771f9a43" + }, + { + "path": "harness/fixtures/rest-coverage/run-coverage-probe.ps1", + "bytes": 9381, + "sha256": "f24f19fca418b76a7249894a08c116e16b465a02f8f899d12b808ccfdd90a3bd" + }, + { + "path": "harness/fixtures/run-timed-bundle-oracle.ps1", + "bytes": 7466, + "sha256": "fab696486a574f9867c6e69a8a8b960e7e9722206441b9cc5f36d41f285f1a25" + }, + { + "path": "harness/fixtures/scenario-authoring/README.md", + "bytes": 14700, + "sha256": "6b651b180b76d10b00bc49d77a8f5e0b3ba0317446978f41b541f5bb23fedad8" + }, + { + "path": "harness/fixtures/scenario-authoring/base/expected-baseline.json", + "bytes": 38589, + "sha256": "abd8246c939ebb8a2162ef82e23d0fb322ee1a8b4d0d7c28a34037e42e86e841" + }, + { + "path": "harness/fixtures/scenario-authoring/base/project.arcadia", + "bytes": 19470, + "sha256": "9b1afbe96b0bf8fa613451b00929492f05a59b9eb2ca74c2c374a8b7bb7cba9e" + }, + { + "path": "harness/fixtures/scenario-authoring/base/rationale.arcadia", + "bytes": 86, + "sha256": "82df210f22f6aa336a3e7e00240977d671c7c3923db7bc58fb29e6d98b67ef49" + }, + { + "path": "harness/fixtures/source7-native/README.md", + "bytes": 7235, + "sha256": "7abccbc3da0980d1d099761d1a66d12c403a0f543954134537ecd4930d182b4b" + }, + { + "path": "harness/fixtures/source7-native/base/expected-baseline.json", + "bytes": 26428, + "sha256": "e2882a58f841f460f45d9d67db1606440e0d7997b9b29a784569ae48e4b23bfb" + }, + { + "path": "harness/fixtures/source7-native/base/project.arcadia", + "bytes": 13616, + "sha256": "5474d8ca05fd1375220dc0ad40d913631fde51159e9632bb9f290d1ecdab8dd7" + }, + { + "path": "harness/fixtures/source7-native/base/rationale.arcadia", + "bytes": 59, + "sha256": "e6a600e13036d4ad594a65380ed1b3d82d1772d583041bb0a624c9588a73047a" + }, + { + "path": "harness/fixtures/source7-native/manifest.json", + "bytes": 410, + "sha256": "6c57164a796234d83818d462d0a25f10e77062d405769e602ae2a7bec251e3b6" + }, + { + "path": "harness/fixtures/staged-source-authoring/README.md", + "bytes": 6876, + "sha256": "502be5e3bf9112447dc07b1a51fe0fa301754b47128a9b81877c185c6e797fee" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/notes.arcadia", + "bytes": 63, + "sha256": "ad9de02963c20d1f43856455a797deb05ca674659e45f2c4b96b52783024f8bd" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/project.arcadia", + "bytes": 593, + "sha256": "aa844950ec4fb86f262a257e1fc370a26557ea7978d8a4cab78265037660234c" + }, + { + "path": "rust-toolchain.toml", + "bytes": 66, + "sha256": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce" + } + ] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.log b/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.log new file mode 100644 index 00000000..922bf870 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.log @@ -0,0 +1,2 @@ + Checking oa-desktop v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\crates\oa-desktop) + Finished `dev` profile [unoptimized] target(s) in 1m 17s diff --git a/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.result.json b/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.result.json new file mode 100644 index 00000000..37f707e3 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/clippy-83f53c7.result.json @@ -0,0 +1,19 @@ +{ + "source": "83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b", + "start": "2026-09-12T22:31:23.471288+00:00", + "end": "2026-09-12T22:32:41.409152+00:00", + "exit": 0, + "command": [ + "cargo", + "clippy", + "--locked", + "-p", + "oa-desktop", + "--all-targets", + "--", + "-D", + "warnings" + ], + "inputs": "clippy-83f53c7.inputs.json", + "changed_inputs": [] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/full-4015498.inputs.json b/harness/experiments/diagram-removal-windows-20260912/full-4015498.inputs.json new file mode 100644 index 00000000..73e74640 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/full-4015498.inputs.json @@ -0,0 +1,2670 @@ +{ + "source": "40154983cc86ac0a45b062d7381124f262adbb3d", + "inputs": [ + { + "path": "Cargo.lock", + "bytes": 119973, + "sha256": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf" + }, + { + "path": "Cargo.toml", + "bytes": 400, + "sha256": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62" + }, + { + "path": "build/windows.manifest", + "bytes": 354, + "sha256": "9c19c5a02f858ece84c44839ad2b145d9c1d90442da0b15c87fd045f975974eb" + }, + { + "path": "build/windows.rc", + "bytes": 24, + "sha256": "a27385edcae0bcf96f55361056cb7be5f36d76fcddcaefd20647c91959563e1e" + }, + { + "path": "build/windows_manifest.rs", + "bytes": 1460, + "sha256": "168da2c42ecccfebc11ee3e1b455e653a68fe9c6d30a9842a8b9e7441d086c80" + }, + { + "path": "crates/oa-cli/Cargo.toml", + "bytes": 279, + "sha256": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde" + }, + { + "path": "crates/oa-cli/src/lib.rs", + "bytes": 15498, + "sha256": "97bebab63b4a611a1d36ad0c20fe452cbe1985fe3a6fbd39c954603da11410fc" + }, + { + "path": "crates/oa-cli/src/main.rs", + "bytes": 2984, + "sha256": "de964f9b6c59c0f31c080afbd3b31d442b07b1b44f6a187a248d3409c45d35fb" + }, + { + "path": "crates/oa-cli/tests/source_cli.rs", + "bytes": 16600, + "sha256": "a3a1b856c7a9fd3d80bc8074150a24fbb0ef0e9ddf736c7cea036725fc3dc2b8" + }, + { + "path": "crates/oa-core/Cargo.toml", + "bytes": 408, + "sha256": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f" + }, + { + "path": "crates/oa-core/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-core/examples/generate_demo.rs", + "bytes": 795, + "sha256": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661" + }, + { + "path": "crates/oa-core/examples/generate_release1.rs", + "bytes": 1798, + "sha256": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5" + }, + { + "path": "crates/oa-core/examples/release_dense_views.rs", + "bytes": 14664, + "sha256": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412" + }, + { + "path": "crates/oa-core/examples/routing_workshop.rs", + "bytes": 17248, + "sha256": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7" + }, + { + "path": "crates/oa-core/src/analysis_numeric.rs", + "bytes": 3735, + "sha256": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408" + }, + { + "path": "crates/oa-core/src/analysis_numeric/dimension.rs", + "bytes": 3045, + "sha256": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340" + }, + { + "path": "crates/oa-core/src/analysis_numeric/exact.rs", + "bytes": 17338, + "sha256": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d" + }, + { + "path": "crates/oa-core/src/analysis_numeric/fixtures/r7-literal-boundaries.json", + "bytes": 6085, + "sha256": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181" + }, + { + "path": "crates/oa-core/src/analysis_numeric/meter.rs", + "bytes": 7129, + "sha256": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4" + }, + { + "path": "crates/oa-core/src/analysis_numeric/quantity.rs", + "bytes": 12257, + "sha256": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee" + }, + { + "path": "crates/oa-core/src/analysis_numeric/tests.rs", + "bytes": 27486, + "sha256": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b" + }, + { + "path": "crates/oa-core/src/data.rs", + "bytes": 42696, + "sha256": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a" + }, + { + "path": "crates/oa-core/src/demo.rs", + "bytes": 20657, + "sha256": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c" + }, + { + "path": "crates/oa-core/src/language.rs", + "bytes": 99938, + "sha256": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765" + }, + { + "path": "crates/oa-core/src/language/semantic_source.rs", + "bytes": 7326, + "sha256": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29" + }, + { + "path": "crates/oa-core/src/language_nesting_tests.rs", + "bytes": 20639, + "sha256": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b" + }, + { + "path": "crates/oa-core/src/lib.rs", + "bytes": 549, + "sha256": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c" + }, + { + "path": "crates/oa-core/src/migration_v2/README.md", + "bytes": 1515, + "sha256": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9" + }, + { + "path": "crates/oa-core/src/migration_v2/adapter.rs", + "bytes": 9490, + "sha256": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5" + }, + { + "path": "crates/oa-core/src/migration_v2/mod.rs", + "bytes": 1158, + "sha256": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9" + }, + { + "path": "crates/oa-core/src/migration_v2/model.rs", + "bytes": 52059, + "sha256": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb" + }, + { + "path": "crates/oa-core/src/migration_v2/references.rs", + "bytes": 13369, + "sha256": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20" + }, + { + "path": "crates/oa-core/src/migration_v2/source.rs", + "bytes": 21946, + "sha256": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6" + }, + { + "path": "crates/oa-core/src/migration_v2/state_validation.rs", + "bytes": 15769, + "sha256": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0" + }, + { + "path": "crates/oa-core/src/migration_v2/transitions.rs", + "bytes": 704, + "sha256": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1" + }, + { + "path": "crates/oa-core/src/migration_v2/validation.rs", + "bytes": 98736, + "sha256": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780" + }, + { + "path": "crates/oa-core/src/migration_v3/README.md", + "bytes": 2128, + "sha256": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82" + }, + { + "path": "crates/oa-core/src/migration_v3/mod.rs", + "bytes": 23023, + "sha256": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722" + }, + { + "path": "crates/oa-core/src/migration_v4.rs", + "bytes": 4020, + "sha256": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70" + }, + { + "path": "crates/oa-core/src/model.rs", + "bytes": 66352, + "sha256": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb" + }, + { + "path": "crates/oa-core/src/operations.rs", + "bytes": 11405, + "sha256": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41" + }, + { + "path": "crates/oa-core/src/persistence.rs", + "bytes": 31774, + "sha256": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14" + }, + { + "path": "crates/oa-core/src/ports.rs", + "bytes": 45413, + "sha256": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80" + }, + { + "path": "crates/oa-core/src/projection.rs", + "bytes": 21374, + "sha256": "69ed12bace2cc5024e151752a174ab14034ac2d05eb741fcf13e9a27521c059b" + }, + { + "path": "crates/oa-core/src/projection/port_layout.rs", + "bytes": 13474, + "sha256": "a08d17d10a58bb8b206dd001b19b91d5aa3a9f743b298a4da57d503223c20079" + }, + { + "path": "crates/oa-core/src/projection/state.rs", + "bytes": 5233, + "sha256": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28" + }, + { + "path": "crates/oa-core/src/references.rs", + "bytes": 21957, + "sha256": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb" + }, + { + "path": "crates/oa-core/src/routing.rs", + "bytes": 50309, + "sha256": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080" + }, + { + "path": "crates/oa-core/src/semantic.rs", + "bytes": 540, + "sha256": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239" + }, + { + "path": "crates/oa-core/src/semantic/catalog.rs", + "bytes": 49407, + "sha256": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4" + }, + { + "path": "crates/oa-core/src/semantic/historical.rs", + "bytes": 15271, + "sha256": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb" + }, + { + "path": "crates/oa-core/src/semantic/linked.rs", + "bytes": 6035, + "sha256": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2" + }, + { + "path": "crates/oa-core/src/semantic/mutate.rs", + "bytes": 22683, + "sha256": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d" + }, + { + "path": "crates/oa-core/src/semantic/review.rs", + "bytes": 51116, + "sha256": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e" + }, + { + "path": "crates/oa-core/src/semantic/types.rs", + "bytes": 10405, + "sha256": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb" + }, + { + "path": "crates/oa-core/src/session.rs", + "bytes": 35237, + "sha256": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00" + }, + { + "path": "crates/oa-core/src/source_files.rs", + "bytes": 74803, + "sha256": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683" + }, + { + "path": "crates/oa-core/src/source_project.rs", + "bytes": 61843, + "sha256": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466" + }, + { + "path": "crates/oa-core/src/source_project/source_migration.rs", + "bytes": 4700, + "sha256": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95" + }, + { + "path": "crates/oa-core/src/source_project/source_structure.rs", + "bytes": 20225, + "sha256": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f" + }, + { + "path": "crates/oa-core/src/state_validation.rs", + "bytes": 15665, + "sha256": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18" + }, + { + "path": "crates/oa-core/src/topology_context.rs", + "bytes": 13734, + "sha256": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d" + }, + { + "path": "crates/oa-core/src/topology_context/analysis.rs", + "bytes": 20036, + "sha256": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65" + }, + { + "path": "crates/oa-core/src/topology_context/analysis_tests.rs", + "bytes": 5258, + "sha256": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56" + }, + { + "path": "crates/oa-core/src/transitions.rs", + "bytes": 51998, + "sha256": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d" + }, + { + "path": "crates/oa-core/src/transitions/communication.rs", + "bytes": 8634, + "sha256": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028" + }, + { + "path": "crates/oa-core/src/validation.rs", + "bytes": 112792, + "sha256": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e" + }, + { + "path": "crates/oa-core/src/validation/coverage.rs", + "bytes": 6478, + "sha256": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f" + }, + { + "path": "crates/oa-core/src/view_options.rs", + "bytes": 24481, + "sha256": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208" + }, + { + "path": "crates/oa-core/src/view_options_tests.rs", + "bytes": 21433, + "sha256": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208" + }, + { + "path": "crates/oa-core/tests/communication_boundary_scenarios.rs", + "bytes": 8816, + "sha256": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b" + }, + { + "path": "crates/oa-core/tests/communication_means.rs", + "bytes": 18102, + "sha256": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4" + }, + { + "path": "crates/oa-core/tests/coverage_diagnostics.rs", + "bytes": 20527, + "sha256": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.arcadia", + "bytes": 29220, + "sha256": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.json", + "bytes": 43990, + "sha256": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.arcadia", + "bytes": 2450, + "sha256": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.json", + "bytes": 8240, + "sha256": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.arcadia", + "bytes": 1222, + "sha256": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.json", + "bytes": 1734, + "sha256": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47" + }, + { + "path": "crates/oa-core/tests/language.rs", + "bytes": 56482, + "sha256": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e" + }, + { + "path": "crates/oa-core/tests/port_anchors.rs", + "bytes": 26893, + "sha256": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa" + }, + { + "path": "crates/oa-core/tests/port_migration.rs", + "bytes": 15620, + "sha256": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7" + }, + { + "path": "crates/oa-core/tests/port_source.rs", + "bytes": 4858, + "sha256": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12" + }, + { + "path": "crates/oa-core/tests/prepared_commands.rs", + "bytes": 9555, + "sha256": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b" + }, + { + "path": "crates/oa-core/tests/process_diagnostics.rs", + "bytes": 1104, + "sha256": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906" + }, + { + "path": "crates/oa-core/tests/r3_constructor_ack.rs", + "bytes": 24163, + "sha256": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0" + }, + { + "path": "crates/oa-core/tests/r3_migration.rs", + "bytes": 6590, + "sha256": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd" + }, + { + "path": "crates/oa-core/tests/r3_semantic.rs", + "bytes": 77473, + "sha256": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32" + }, + { + "path": "crates/oa-core/tests/r3_source.rs", + "bytes": 15311, + "sha256": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408" + }, + { + "path": "crates/oa-core/tests/r6_data.rs", + "bytes": 41437, + "sha256": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155" + }, + { + "path": "crates/oa-core/tests/r6_migration.rs", + "bytes": 9174, + "sha256": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1" + }, + { + "path": "crates/oa-core/tests/r6_source.rs", + "bytes": 9519, + "sha256": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6" + }, + { + "path": "crates/oa-core/tests/release1_teaching.rs", + "bytes": 10010, + "sha256": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2" + }, + { + "path": "crates/oa-core/tests/release_capabilities.rs", + "bytes": 19422, + "sha256": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30" + }, + { + "path": "crates/oa-core/tests/release_diagrams.rs", + "bytes": 7689, + "sha256": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d" + }, + { + "path": "crates/oa-core/tests/release_language_limits.rs", + "bytes": 5204, + "sha256": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806" + }, + { + "path": "crates/oa-core/tests/release_ports.rs", + "bytes": 32740, + "sha256": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1" + }, + { + "path": "crates/oa-core/tests/release_routing.rs", + "bytes": 23165, + "sha256": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462" + }, + { + "path": "crates/oa-core/tests/release_scenarios.rs", + "bytes": 41067, + "sha256": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f" + }, + { + "path": "crates/oa-core/tests/release_states.rs", + "bytes": 26873, + "sha256": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811" + }, + { + "path": "crates/oa-core/tests/release_topology.rs", + "bytes": 17643, + "sha256": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9" + }, + { + "path": "crates/oa-core/tests/review_regressions.rs", + "bytes": 21823, + "sha256": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1" + }, + { + "path": "crates/oa-core/tests/route_source.rs", + "bytes": 7270, + "sha256": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb" + }, + { + "path": "crates/oa-core/tests/routing_geometry.rs", + "bytes": 31890, + "sha256": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3" + }, + { + "path": "crates/oa-core/tests/routing_labels.rs", + "bytes": 5530, + "sha256": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6" + }, + { + "path": "crates/oa-core/tests/semantic_artifact_absence_oracle.rs", + "bytes": 4640, + "sha256": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a" + }, + { + "path": "crates/oa-core/tests/semantic_attachments_gui_oracle.rs", + "bytes": 14957, + "sha256": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970" + }, + { + "path": "crates/oa-core/tests/source6_view_contract.rs", + "bytes": 14307, + "sha256": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb" + }, + { + "path": "crates/oa-core/tests/source7_contract.rs", + "bytes": 43262, + "sha256": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f" + }, + { + "path": "crates/oa-core/tests/source_files.rs", + "bytes": 13168, + "sha256": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9" + }, + { + "path": "crates/oa-core/tests/source_identity_updates.rs", + "bytes": 5139, + "sha256": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c" + }, + { + "path": "crates/oa-core/tests/source_nested_updates.rs", + "bytes": 16892, + "sha256": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855" + }, + { + "path": "crates/oa-core/tests/source_project.rs", + "bytes": 45910, + "sha256": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942" + }, + { + "path": "crates/oa-core/tests/state_diagrams.rs", + "bytes": 23973, + "sha256": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5" + }, + { + "path": "crates/oa-core/tests/workflows.rs", + "bytes": 33426, + "sha256": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b" + }, + { + "path": "crates/oa-desktop/Cargo.toml", + "bytes": 842, + "sha256": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9" + }, + { + "path": "crates/oa-desktop/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-desktop/src/allocation_drag.rs", + "bytes": 29634, + "sha256": "6b93290627a8697dd529ecf12b6e99196a11783afff1ca7aaf75c6e2762f3d94" + }, + { + "path": "crates/oa-desktop/src/allocation_drag/tests.rs", + "bytes": 60311, + "sha256": "13b7d055a516c8a9f0bd13f03abe3b81423bde9d121c51778a129ff485f4f102" + }, + { + "path": "crates/oa-desktop/src/allocation_input.rs", + "bytes": 8391, + "sha256": "c7825c43383e81b7eb1b78bd902950c8a2206e0387d26002a80ddbe4dc2b6c73" + }, + { + "path": "crates/oa-desktop/src/app.rs", + "bytes": 220614, + "sha256": "99447bba4810135834663681447a03061a948db2661395b9b4c4924738a38f18" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag.rs", + "bytes": 24452, + "sha256": "218726dcd2e6809cb6f3660f575e586806360456e6b4fac61b9e361b411aeee9" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_full_tree_tests.rs", + "bytes": 28288, + "sha256": "ff4c3d07f885f242b71160c09e2c457c4a746073fd89030781da306730c5db44" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_tests.rs", + "bytes": 42677, + "sha256": "3c6908f8a677921245932252ab38806f16012becbbc082ac11e7871ff7bdeeb4" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring.rs", + "bytes": 27835, + "sha256": "37c7db33e99dd4adcc5a51f09ee4878af94fd32413359890a541690080885f65" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/palette.rs", + "bytes": 8887, + "sha256": "8f9937cb30b48b83759fd084a8a5990a2daa3920280f1210abe048560241985a" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/tests.rs", + "bytes": 14565, + "sha256": "174e184f1baf872c3be1cf70d9a7f4bc5569a9623000b3ab0e71e2b82e249cf5" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring_tests.rs", + "bytes": 18551, + "sha256": "ba913f7d7cbf586708d65c9f1db25b9b9ed7846f9d2e75a546b4ac69d8d19c6a" + }, + { + "path": "crates/oa-desktop/src/app/behavior_lifecycle_tests.rs", + "bytes": 13672, + "sha256": "f9a0b030faca5deaf3f55d9f5efcafdf1a7cb1a663001aa20a61baba4f92d080" + }, + { + "path": "crates/oa-desktop/src/app/behavior_removal_tests.rs", + "bytes": 23958, + "sha256": "ef09843a7daeb91afab0b76e83c5679351a1635a84a26d80a194dea744ea5874" + }, + { + "path": "crates/oa-desktop/src/app/checkpoints.rs", + "bytes": 29576, + "sha256": "55e5babdcabef767af3bc8be9cc3153b3f5cc0695701b890820ec0225643852e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_focus_tests.rs", + "bytes": 6047, + "sha256": "65f3f841e1295ae4878b3ae2cf45ff64003d42e26e450e9a1de1c36dbd771bd8" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal.rs", + "bytes": 8778, + "sha256": "addb51604f41d680b06586bb362362ee3c2603a334f33022ce9abc281295ac85" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal_tests.rs", + "bytes": 47336, + "sha256": "70f9eb53d8995a23a53535b3941fc0c0b81a340f9fbbb371f0d705cfa775bd9e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_selection_tests.rs", + "bytes": 5582, + "sha256": "4fa507adbc23db3a6eb202d809c695ec0ebd6181356930c4fa7528a9a0c7be57" + }, + { + "path": "crates/oa-desktop/src/app/hosted.rs", + "bytes": 25059, + "sha256": "2f7094c078e1d7cbccd6c0d310afa6c400a7e031f12918bbfce65ba62754e316" + }, + { + "path": "crates/oa-desktop/src/app/hosted/tests.rs", + "bytes": 30344, + "sha256": "fa118f64d04b400ccc01e4e67adaf3541975288882afa265a9e7f092cdbda232" + }, + { + "path": "crates/oa-desktop/src/app/process_canvas.rs", + "bytes": 31560, + "sha256": "7e05f4899a0b24df9ab355b6484e94997c7bc66c873342d975aed0b6a56acf04" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring.rs", + "bytes": 11250, + "sha256": "38e033e23e8135032f70117a376a5fe7bc68127c466559a35d7ec200932e3f77" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests.rs", + "bytes": 20067, + "sha256": "b96ddc6bff7f8fde97720e18a92070f891c1340348d2e19c7c9c5a7bda650ce8" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests/mounted.rs", + "bytes": 32805, + "sha256": "14a4914a1c86e50c395672dab8fe80d7af679a79c9082890b509fad7b7c543d9" + }, + { + "path": "crates/oa-desktop/src/app/repair_save_state_tests.rs", + "bytes": 10745, + "sha256": "5543dcba853bb1513acf824b860249729a6004747e7e320b46efe60ea19e2d83" + }, + { + "path": "crates/oa-desktop/src/app/review_navigation_tests.rs", + "bytes": 7049, + "sha256": "872fa91479dad5436e139ffcaece270323e9f5daeeb7a4d80c2c2534f48bc21b" + }, + { + "path": "crates/oa-desktop/src/app/save_as_tests.rs", + "bytes": 4113, + "sha256": "f8b915793f1a36fd152569c4781a4bdc17f4af404a8ceb373330053413087a1c" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram.rs", + "bytes": 10050, + "sha256": "9ae3d533a20963a2bd1d485d357ac04319f336cd9f4c16305aa2a67d833573a8" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram_tests.rs", + "bytes": 39957, + "sha256": "612e414b1a2cab12cbfd8fce23745559ff27577700694d53af67ad1f2883ee2c" + }, + { + "path": "crates/oa-desktop/src/app/transition_context_tests.rs", + "bytes": 11508, + "sha256": "47002fb025f3a2f8c53871f9509bfe8611a61db6fb0e1b3125eb6e875425cb1d" + }, + { + "path": "crates/oa-desktop/src/app/view_copy_tests.rs", + "bytes": 7846, + "sha256": "296821c51dcde568e7d717039aa26bfc1b56a9074aa16051007bb351b33a4d44" + }, + { + "path": "crates/oa-desktop/src/behavior.rs", + "bytes": 130007, + "sha256": "3089d88a8fa66ecaa2151f2f55a85c71de30e556457fcd52fdbd0ca1184b59d8" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace.rs", + "bytes": 7903, + "sha256": "b6e06b9d29f1a5677f99bebcb0e53a3795b4bcd957796a85fd800db4279aed03" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/control.rs", + "bytes": 7804, + "sha256": "2b8d97b8c0e3ff1b1a2c32187b1d0eb25edf39ba582b5fb3303bc880f674f7ba" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/focus.rs", + "bytes": 8901, + "sha256": "33447003980847033e40550f9926d8617fa61e2c3e73ec9c6121d1afed946c33" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/tests.rs", + "bytes": 27101, + "sha256": "b33361c6569354aa2df9b1ba1b60d68e4703800be80f815e0f0505064ea323c3" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/viewport.rs", + "bytes": 15164, + "sha256": "41ff9c50fa9fb89ab9fdb2d18dadc21585aafa1ee008cfcd1e0b731dce645eaf" + }, + { + "path": "crates/oa-desktop/src/behavior/contextual_source_tests.rs", + "bytes": 49518, + "sha256": "044bd412dc45ffe440b1e251993946942dc3759dcb2d5dfe71bd8d6ef61cbcc7" + }, + { + "path": "crates/oa-desktop/src/behavior/creation.rs", + "bytes": 28978, + "sha256": "33ae9aaf4ba90de9432870cc8e99708ef39e3638ae8283a9253c333785c91299" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/app_tests.rs", + "bytes": 13181, + "sha256": "e9c5bf2b07357b7a2f679ae0d8f6904c1c1461aaeb94fa0db478b54d4641ae3e" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/tests.rs", + "bytes": 22793, + "sha256": "a0d1daf9fb3920f7e6181a9802d84fbe056cbf0043b9e41dba5fdda687d9818a" + }, + { + "path": "crates/oa-desktop/src/behavior/form_session.rs", + "bytes": 3941, + "sha256": "f5027fb3a5a5599a182e7d1a10dba56dd66eb1f23a4ba4c4a1744c9a6a5b6e61" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario.rs", + "bytes": 153010, + "sha256": "1ced1d0346d341d69e5d115753482d7178629df034200bebd14f947b36c4b2f3" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/focus.rs", + "bytes": 9728, + "sha256": "73a9ea10ad7312086081b8688396a21ab4251c9faecc2df6d984b702f3963533" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace.rs", + "bytes": 24960, + "sha256": "5aec4cb2ceb00ab25900d919a5bec71ab96848b4f14504f51790e3fe8801d3bc" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace/tests.rs", + "bytes": 80542, + "sha256": "f2f6acd93ecf4e9ffee56abc1de28f71da8cb1353cdc3e67cf0c0cf7a619fec5" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation.rs", + "bytes": 14095, + "sha256": "77199dcb08ec8697f779d2560f6b716aed8d8f33965237a4934934954f4e805a" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation/tests.rs", + "bytes": 24665, + "sha256": "5b3f1d2144f405e492686731cc35d05f21b87ada60e426014e6b5f5e5f103298" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle.rs", + "bytes": 9324, + "sha256": "758d244c2e8de61f515d540baa4d967275f49720e0253c6c9159eb9acd71c859" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle/tests.rs", + "bytes": 15430, + "sha256": "01b576993b329810cd78a859b45ac52c66f5a14549065661dd1308196e0b724d" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_operation_tests.rs", + "bytes": 10087, + "sha256": "89fb71c690e07eac314f7a5e05862d5c1e2f9c21039673bf22c4ac894d21c977" + }, + { + "path": "crates/oa-desktop/src/behavior/source_draft.rs", + "bytes": 18031, + "sha256": "08190823090bd8b0305809099abadcc0de431175f7044f1d5abdceda52612ee1" + }, + { + "path": "crates/oa-desktop/src/behavior/state_canvas.rs", + "bytes": 96098, + "sha256": "5844d2abf4a3fe3bb07c707865ee3f8303d213b0fe1871765ac468c11e140da7" + }, + { + "path": "crates/oa-desktop/src/behavior/state_edit.rs", + "bytes": 35843, + "sha256": "4e67321ab0cf88e6200061873086841244c4d610ddd5f88d70c69ac0cc6bf270" + }, + { + "path": "crates/oa-desktop/src/behavior/state_menu.rs", + "bytes": 8530, + "sha256": "9d0a3c29516efa79553c559274848f12101330dbf93ffbbefab398cbc1906790" + }, + { + "path": "crates/oa-desktop/src/behavior/state_view.rs", + "bytes": 7637, + "sha256": "3d01c853663385fc1b760401bbebe3f691fcc289a779a8e63cd0733ff0c8007f" + }, + { + "path": "crates/oa-desktop/src/behavior/states.rs", + "bytes": 26986, + "sha256": "8986ed9492960e20f1254e9dfe3ff91d79ce9fef66f3bda738f9933278043954" + }, + { + "path": "crates/oa-desktop/src/behavior/topology.rs", + "bytes": 84224, + "sha256": "66c81c4d4f2613263f13ae90cea61895c1aeed1f6278880789ec56f8c42433e0" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual.rs", + "bytes": 28432, + "sha256": "5d0ac5b3e258fc70987a00ede1e603681d99746596f2fcc46ad2b3667d65203a" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual_routing.rs", + "bytes": 16731, + "sha256": "d914b0e82aa8d253fe64be2ef74443d1fd2e6cec26d1cf30620a57646e1d426c" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct.rs", + "bytes": 39059, + "sha256": "5cca649870f54abdd2eb098954bcc0a2a5ca456b7ee11b5f653edbdf2ed55905" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct_tests.rs", + "bytes": 51170, + "sha256": "edccfe3ce8b224065a3540aa53c6340f13db0cecd48ecc0a3904cd832a483964" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/layout_tests.rs", + "bytes": 37846, + "sha256": "f27203866e22aee80daad2811113341684b0cbd59885b36d64243c4317f29f84" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/view.rs", + "bytes": 22009, + "sha256": "29e29c2a0667baa429ae44dbb400e67c86f24f88959d5e7dd22894473bdd1f09" + }, + { + "path": "crates/oa-desktop/src/connection_edit.rs", + "bytes": 5301, + "sha256": "020581e077f82b43c936b623cc51733b02b88428df4e5f25df74b9705819fa37" + }, + { + "path": "crates/oa-desktop/src/connection_tool.rs", + "bytes": 27023, + "sha256": "649da93677d52dae495b0e19bc32f3122ab05a6d84de8402578ff5ce3f6ee1d3" + }, + { + "path": "crates/oa-desktop/src/context_menu.rs", + "bytes": 52955, + "sha256": "629354b34dc232763700251f2695b4d4e53d6251c0b1432ecc0dfe424f7dfeac" + }, + { + "path": "crates/oa-desktop/src/data_values.rs", + "bytes": 23877, + "sha256": "e1deb1cad551f0a9fdef9653aad257cfb36e6d9c0f93b6245061ec3fab8fd365" + }, + { + "path": "crates/oa-desktop/src/data_view.rs", + "bytes": 38871, + "sha256": "158b852be5d3db450aa5cda8b68a35bd96bddce1d8d053a7a23582095c06362d" + }, + { + "path": "crates/oa-desktop/src/diagram.rs", + "bytes": 111242, + "sha256": "e5260a39e19fc3df19bd16898ff1f0abd60ede7584f595c035b5e86a12ecef93" + }, + { + "path": "crates/oa-desktop/src/diagram/focus.rs", + "bytes": 9197, + "sha256": "b88a7c43123b08cf6228d8e32257f6ed7fe361f7278f427ec138e233e1ea6ccf" + }, + { + "path": "crates/oa-desktop/src/diagram/lifecycle_tests.rs", + "bytes": 9342, + "sha256": "03dd13106f3fdd06a26699bfdfba006fad086a0711cad2ba1aeb09a4e8f8656e" + }, + { + "path": "crates/oa-desktop/src/diagram/pointer_tests.rs", + "bytes": 11859, + "sha256": "ae68e091032fe2cf71559ff7e671b3b6d657ee8279330345f0c7a57edfa472ef" + }, + { + "path": "crates/oa-desktop/src/diagram/port_hit_tests.rs", + "bytes": 5650, + "sha256": "c3728f127711cb6d7f80a4670a798808b6e4239dd29c273445de81706ab6f39e" + }, + { + "path": "crates/oa-desktop/src/diagram/port_labels.rs", + "bytes": 13574, + "sha256": "6643f0cbde7a59d4772ae5284a488083e3b81f2fefabc43619d75738f474646f" + }, + { + "path": "crates/oa-desktop/src/diagram/view_options_tests.rs", + "bytes": 2815, + "sha256": "cf0c98a7715558baf17b59f67a80556f98ad30262b4434635e617c6601775433" + }, + { + "path": "crates/oa-desktop/src/diagram/work_drag.rs", + "bytes": 7059, + "sha256": "9757534a7ba47dc0df5d41c8d7366b1d90f3d50b24344580ff3c783667bf66f0" + }, + { + "path": "crates/oa-desktop/src/document.rs", + "bytes": 31807, + "sha256": "7c87280b5b8d112c34865253f8ba0f80d43bc9897771943b15dc7b5608eb17a4" + }, + { + "path": "crates/oa-desktop/src/document_save_as_tests.rs", + "bytes": 5781, + "sha256": "83dc243a25f4e97674ff0d86c794a490cc923e98f1f9fb05bb038f622f11e20b" + }, + { + "path": "crates/oa-desktop/src/explorer.rs", + "bytes": 14764, + "sha256": "fa01c59219564ba9ae5553abc2b6f94e9849f9148d5812ef99b40318fe5dcf9a" + }, + { + "path": "crates/oa-desktop/src/explorer_view.rs", + "bytes": 13773, + "sha256": "a720d7484bcc3a24729332a00e005d1cc6f5f945a9cc3965134e0024dffb581f" + }, + { + "path": "crates/oa-desktop/src/forms.rs", + "bytes": 105544, + "sha256": "ea124f479fcd2d3978ac3cb8eb81fec4a7aae5e4f4414c4bdd54849e954dedf9" + }, + { + "path": "crates/oa-desktop/src/forms/context_fields.rs", + "bytes": 10831, + "sha256": "eaacd474f6500dd344d5a8b63ccb1d1dd86fe2aea78ab708afa8a80d62ce69bf" + }, + { + "path": "crates/oa-desktop/src/forms/data_fields.rs", + "bytes": 49285, + "sha256": "a540a0d451bff56a96b1d28643b2e8c0649f3846350c25c5b154729c0538e77c" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields.rs", + "bytes": 27414, + "sha256": "e7100474cde18bdfe95562bcb3c055f29b4b15aa64788a578194464aebcd046e" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields/tests.rs", + "bytes": 33950, + "sha256": "16d3c308138c063f45986d53c621ad83c7dc2ce853edd31b7204e2939a382df9" + }, + { + "path": "crates/oa-desktop/src/forms/port_fields.rs", + "bytes": 30554, + "sha256": "3fe684d651d5be6203fd9db3979c772913e1af5ac1514e67be386ffd88dc8127" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser.rs", + "bytes": 12130, + "sha256": "b60af363be333af048859e51c28e8c989cb5c95d696cad16c8eec15f78d57a12" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/adapter.rs", + "bytes": 10447, + "sha256": "87ab4bc3bf27fd4b5a458791cf62c7ba8e44e9ebf846d8b851b8b6ffb454cd64" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/tests.rs", + "bytes": 27835, + "sha256": "8e98f8a3fcb814d4a201cc85b3db87a689fd3d2ce487f8a2fe312fc296f93377" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger.rs", + "bytes": 13336, + "sha256": "34d0acecfe6bed193970aa473cc3313984971264b86d7b362a6b84c23d013c0a" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger/focus.rs", + "bytes": 9923, + "sha256": "f1e79f4b03b2f9fd1cdc335054d4ae177dc9e759b6ea3d334b2bcca39b57191b" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/widget.rs", + "bytes": 33804, + "sha256": "d66cc17af7a48bb8598be683f084bb08fa7af7304f9636f0a1bea94c5cf6c727" + }, + { + "path": "crates/oa-desktop/src/forms/view_fields.rs", + "bytes": 24987, + "sha256": "5184d438f0dfd4e29f284ff048e19da73e71be1f24a6e9f123c7e922aecb85fa" + }, + { + "path": "crates/oa-desktop/src/guide.rs", + "bytes": 118110, + "sha256": "ab4b47050e6d57dccdcc264ee5752766bd5013fccdc35eeeb9c9037bb5eb9a67" + }, + { + "path": "crates/oa-desktop/src/highlight.rs", + "bytes": 2751, + "sha256": "da7c254fff7052e5fd9ec7469f473b91a819406028d7c304f6e22c4169561600" + }, + { + "path": "crates/oa-desktop/src/home.rs", + "bytes": 17587, + "sha256": "f03c1071334894f586a5a7c86026602a694db3c2faf902822e1dbe5156a859c2" + }, + { + "path": "crates/oa-desktop/src/home/tests.rs", + "bytes": 8167, + "sha256": "3b03ccfc97dfb75954e1e0ed568bb87a632295c07b96cedc05ed381f87b378f3" + }, + { + "path": "crates/oa-desktop/src/hosted/client.rs", + "bytes": 21912, + "sha256": "54b24b4b50f8d87d7c92946ea5a2cff4c98760e70555b3ce3d90be27115e95d4" + }, + { + "path": "crates/oa-desktop/src/hosted/client_tests.rs", + "bytes": 23009, + "sha256": "3ef70907ca75e098d631c41b90badd4cff1e1eb1b3c78e15a9f811c13ba8ffbe" + }, + { + "path": "crates/oa-desktop/src/hosted/mod.rs", + "bytes": 3744, + "sha256": "1b75e11c80fcb38fd20bb3487e3f88729fdac73e471c5ae64da28c249f77c63b" + }, + { + "path": "crates/oa-desktop/src/hosted/view.rs", + "bytes": 9281, + "sha256": "fc0c7b7ce3a5f05c49713df6661067751f81e810af11c614ca265ea9490e6463" + }, + { + "path": "crates/oa-desktop/src/main.rs", + "bytes": 1554, + "sha256": "5228743f361f9239e4584780bfa9b65d36207d0288624e1fb42b721146bcff1c" + }, + { + "path": "crates/oa-desktop/src/model_menu.rs", + "bytes": 36340, + "sha256": "d2f836661f43fa1bc8830b1e51cc736948b3d261796c3fa877df02ae15568c4b" + }, + { + "path": "crates/oa-desktop/src/navigation.rs", + "bytes": 8839, + "sha256": "71355a12e1b4791106426d83fe5ebf0b29bce8e1dc594f0655ab85695469669e" + }, + { + "path": "crates/oa-desktop/src/port_edit.rs", + "bytes": 7809, + "sha256": "70b99f577c4fdeda8780c8dc1ee7b1639fd77aaca06658f06d725139fb3efb6d" + }, + { + "path": "crates/oa-desktop/src/port_preview.rs", + "bytes": 35855, + "sha256": "069487c4ece737d52e8ae4a84dcfb132236aca6799e841c91c8e7244320cf871" + }, + { + "path": "crates/oa-desktop/src/port_workflow.rs", + "bytes": 40582, + "sha256": "ccc15f97c3272145a67bb5857b4faeaf7437561bd61912fa27ab26e8824146a0" + }, + { + "path": "crates/oa-desktop/src/recovery.rs", + "bytes": 21041, + "sha256": "57e22e5fbb0e994e64ae03e69450271fe9f04a951db1670c2a018abe99db4489" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/README.md", + "bytes": 1587, + "sha256": "a90002df1e087d2dac7be26926864243568a0de7c4103e4927435b34178e8016" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/profiles.json", + "bytes": 473, + "sha256": "2c12ae96b50e6da5d60ce2b7fa00204be71dfbe2fd51311fc337a0de6a4332ff" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-bundle.json", + "bytes": 80974, + "sha256": "12715995e6f7f35414aea53b3ad720b9b31873ffdeaf4444231db1a5ac3c463e" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-model.json", + "bytes": 86191, + "sha256": "5535a706df9ec21715e8b6a5aa6dbd79636ae461450aee61305559016167612b" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-bundle.json", + "bytes": 85286, + "sha256": "ea88890a33f47d67dfb06d6dbbcc179058cf28dad76ae7d615c00aaf30dbbbfe" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-model.json", + "bytes": 90629, + "sha256": "5bb8db0b6394276666323483f977ac3586f88554c81a148c6d508fca0ef4576f" + }, + { + "path": "crates/oa-desktop/src/recovery/source5.rs", + "bytes": 6956, + "sha256": "0f0a763f0c98c2c908d4c2b95d8a4c042b6a255ee1cc16260e5404669691f642" + }, + { + "path": "crates/oa-desktop/src/recovery/source5_tests.rs", + "bytes": 12146, + "sha256": "cfd17a742f1f27b523fce7cd9309f0a07a30413395f6c58659fb91d02834a7a3" + }, + { + "path": "crates/oa-desktop/src/recovery/source7_tests.rs", + "bytes": 18213, + "sha256": "7ee61de66c75bf949489ba51ddc9677e2b4efc68801cf27909c9b894bfdc9288" + }, + { + "path": "crates/oa-desktop/src/route_edit.rs", + "bytes": 2941, + "sha256": "457ae59c2761a43a8620b4d336a7cf0f54b965997110ecaf968756a88b6b0374" + }, + { + "path": "crates/oa-desktop/src/semantic_review.rs", + "bytes": 3432, + "sha256": "8dd1e93783d63a663c7e56c28775a5c389cfd7a6b562013d6a95c891afa21ed8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts.rs", + "bytes": 24201, + "sha256": "a79236a8150597ff808597e59cf4f1e9e61c74c4901d9c8cf42d3427bb52a9a8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_recovery_falsifier_tests.rs", + "bytes": 11034, + "sha256": "3f255d04e4bffa5a467b75e3cbf6f7149aa3269a02f2a89fbaa1db0e5df9ae62" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_tests.rs", + "bytes": 20798, + "sha256": "04d0dd2ac453705185663f705282aa4a3a31433466a5be305764248da1a03c32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_view.rs", + "bytes": 6447, + "sha256": "2100ff73565765d8293c84f6ce2d8e566610c1524c50e32ce3c37dc33b6686e4" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments.rs", + "bytes": 18160, + "sha256": "de0ec0c740895b160ff5b847332c087c3f1a48931583464069470cc61315ed59" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_tests.rs", + "bytes": 29389, + "sha256": "8b26be0324e0f33b1e7cf7af340350df8ed98963002d6da8589ee0e6f6900bea" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_view.rs", + "bytes": 3032, + "sha256": "932f231554d77c7cb119d33bb06b9879db5e12127aed187e67013e77b6458e78" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch.rs", + "bytes": 34485, + "sha256": "a462eb627ae19348072775cf8e60b17d62f6b682b74cc413906d493fba1f0b3c" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch_tests.rs", + "bytes": 27546, + "sha256": "b67c4d7dcabac710cf3d30730a8db323180a558a415e2d117c868cdfa4804619" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose.rs", + "bytes": 27155, + "sha256": "c6adcc9882dde65e9f04f6eda7f0c855c5cbb285cf421123029169112793ce9b" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose_diagnostic_tests.rs", + "bytes": 9809, + "sha256": "440daf8d43278ef981c620d1818d0daaed8fb83193b8e8ff67b2e42fbf882938" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructor_tests.rs", + "bytes": 54132, + "sha256": "85149521ad7df62918f6f2fab6da2b3346c342ab4bce7100de3f6206c1e81096" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructors.rs", + "bytes": 12258, + "sha256": "0982163439b06a42d9af1643530364109282e63f05b323a35a76d8241f3caa32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/history.rs", + "bytes": 3211, + "sha256": "df038c2464eab8093a983f3104f0d04ca8f602010a50e1d3eeb8e53f2309e201" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed.rs", + "bytes": 14175, + "sha256": "bdd6c0fdc7108056bc5d7433254503449eed2209813680e717ead24b9d0ce834" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows.rs", + "bytes": 13222, + "sha256": "4b7bf25806471ad22d89253b9af8000f5acff53b4cc0aa1c1a83138e7b270eca" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows_tests.rs", + "bytes": 30804, + "sha256": "1a3b09e7ed100411cdf8043f9a78defc664a873ee0201117709185c201a5c57f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_tests.rs", + "bytes": 31163, + "sha256": "9dc9b989e5a9d408427ca1baf86b2454f9dd3baf40a551c70ca2359dc18a1227" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind.rs", + "bytes": 789, + "sha256": "4ed19952ea511d1b3226564a138e3322f994371d6b49794c14bc3689d1393e7f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind_tests.rs", + "bytes": 23424, + "sha256": "5fcf9930e949aebeb12eab0327264f32a2388d62dbf098bd2365711e22623c52" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered.rs", + "bytes": 9705, + "sha256": "6a1ed894d1b9d0110bc784a75c49444f1d14f1f74620d701f22203b2d8d0a813" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered_tests.rs", + "bytes": 22383, + "sha256": "5c8ea3a69e3da3b94d13f50f12aa7dc53246ccba25ffcace9552a0eb76b0bf36" + }, + { + "path": "crates/oa-desktop/src/semantic_review/recovery.rs", + "bytes": 28769, + "sha256": "88e69044d90c481593bab7cc125f0401c05202fccdde07698cec9483947fe8be" + }, + { + "path": "crates/oa-desktop/src/semantic_review/row.rs", + "bytes": 38159, + "sha256": "b08fdc503c6c4d2ff99adac7e18c9baa861bf86155e00b55d1e492430980d0f2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/scalar.rs", + "bytes": 15153, + "sha256": "9ad202174934dd9a63fbf9cba43135aead571db60846c8b7b1d3019a11df26c2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/source7_tests.rs", + "bytes": 11665, + "sha256": "5e8221d77b068fa30c1571988448cb8829711735881d810f3d333cbc95d34a9f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/tests.rs", + "bytes": 32480, + "sha256": "077ec6501dfaab0b05ea3987943b204f08352952296d313555051d998ccd232e" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view.rs", + "bytes": 57626, + "sha256": "7cc7dd213ab01dadad5debaee868c30a1099466602869a799ebdf9b680e8eaf0" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view_reserved_artifact_tests.rs", + "bytes": 4737, + "sha256": "6c766b29c8664d15cb113d2cc71bba9b60ae4ccf7e44c9c5d3c41e1dc4b7ed90" + }, + { + "path": "crates/oa-desktop/src/source_navigation.rs", + "bytes": 3938, + "sha256": "c1da10882f35f8eb0675e68c642c9a209dde09679cded414cfb9903a4e49ec77" + }, + { + "path": "crates/oa-desktop/src/source_tree.rs", + "bytes": 21816, + "sha256": "4d55e0110a1eb128a5d26c28f3aae5853d79b7245812b7c82bd275f38440a5aa" + }, + { + "path": "crates/oa-desktop/src/source_workspace.rs", + "bytes": 15522, + "sha256": "30f63a6b8d65a38d66061f90d864b5746cbacc0fbd65abc028a8f3071c47d358" + }, + { + "path": "crates/oa-desktop/src/style.rs", + "bytes": 3015, + "sha256": "05d61bec16141612ccafa0988e8c4827f41754509efdb3b961eab69127ded896" + }, + { + "path": "crates/oa-desktop/src/tests.rs", + "bytes": 58557, + "sha256": "b017218195eea2c96aba12eba8a99a38945c8ca910a652e272d34883bdb98691" + }, + { + "path": "crates/oa-desktop/src/view_copy.rs", + "bytes": 9043, + "sha256": "5630f31c942e1226aafd67eabdace6a5c5494875bdc6f7f077019e8110ba41a9" + }, + { + "path": "crates/oa-desktop/src/views.rs", + "bytes": 50668, + "sha256": "9b53126d19b2ae34f170a1422c9f5ea5a833489274cbfa04546279058e289f9b" + }, + { + "path": "crates/oa-desktop/src/views/traceability.rs", + "bytes": 7501, + "sha256": "4c89dcf35c25e737d8cce4d543a5989ca104a5678e6cf40df47e457773d2ef94" + }, + { + "path": "crates/oa-desktop/src/workflow.rs", + "bytes": 82963, + "sha256": "d9e7b11a86fd3ec79d91f0c9bc9cebd5a2043cdaa7261622454fb7730ad8e060" + }, + { + "path": "crates/oa-desktop/src/workflow/communication.rs", + "bytes": 11084, + "sha256": "34d121ad97706012722e4bb6210072ecc3a5b4718b0ceab0c3d0f14d4cd780a1" + }, + { + "path": "crates/oa-desktop/src/workflow/recovery.rs", + "bytes": 9859, + "sha256": "0849b0f34dba5e8761be5fa05784d134ac74e4e9db395d6b9b7d6cff71e3f3dc" + }, + { + "path": "crates/oa-desktop/src/workflow/transition_tests.rs", + "bytes": 8553, + "sha256": "589b1b2dbadca74a52c2cfcfd4fe620bd4790abd113ac02182e91616c52d793c" + }, + { + "path": "crates/oa-server/Cargo.toml", + "bytes": 778, + "sha256": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982" + }, + { + "path": "crates/oa-server/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-server/src/error.rs", + "bytes": 5610, + "sha256": "93817f1502386e4662c96ee1c7d1c4afc4e33bda6fd64e46c86c8e1afd5a9368" + }, + { + "path": "crates/oa-server/src/lib.rs", + "bytes": 7743, + "sha256": "20bef350350ed6339588b23af684abf745f97916c7edf3853ee042abe687e664" + }, + { + "path": "crates/oa-server/src/main.rs", + "bytes": 4163, + "sha256": "d59a6a2b5c7034bd2e00a516d2d49abb16391bf0316c1c357ddafb9c82d2d1e3" + }, + { + "path": "crates/oa-server/src/preparation_http_tests.rs", + "bytes": 5523, + "sha256": "454b90d0055d35644c8d990cd7576ddf675a9b271ca07fe9b0efce25d8ddbc07" + }, + { + "path": "crates/oa-server/src/routes.rs", + "bytes": 46053, + "sha256": "3f9a0c22043dbf28f7a8e587d2fc3abf869f76f4d23a46fe0aeb9c4392454a4b" + }, + { + "path": "crates/oa-server/src/store.rs", + "bytes": 25524, + "sha256": "37dcfb845b7993d5bced2bcf25fedfcd2a9c20a748f9315afe6cca1f41f89ae5" + }, + { + "path": "crates/oa-server/src/store_preparation_gate.rs", + "bytes": 4440, + "sha256": "427c390da3c0281ba1fe115a93ea90800e3b45fce6bcb9185e71982ddd885fec" + }, + { + "path": "crates/oa-server/tests/http.rs", + "bytes": 71892, + "sha256": "50daa6a90e96ad6fe3c6a27df2eaebe486270599c203892d09769c547a194975" + }, + { + "path": "crates/oa-server/tests/http/communication_limits.rs", + "bytes": 5790, + "sha256": "ba5474dd8e494a0176fffb4548c8e3deb2081b15de33bfce82394c764e0a2c16" + }, + { + "path": "crates/oa-server/tests/http/data_contracts.rs", + "bytes": 25949, + "sha256": "8cd456db83f301baca380acf025a5a99db4edf7d8839537dfbd02c4307e10e6b" + }, + { + "path": "crates/oa-server/tests/http/port_anchors.rs", + "bytes": 15086, + "sha256": "7199d0a208ddad9e1518b6e3fb390d64da111716d7505ba5c995deae19ad1258" + }, + { + "path": "crates/oa-server/tests/http/semantic_transitions.rs", + "bytes": 22832, + "sha256": "856d1c9b633ffb581e3e631f4e5a607789a02181dbf060667f208a569bfa4920" + }, + { + "path": "crates/oa-server/tests/http/source6_views.rs", + "bytes": 13023, + "sha256": "867bccda0e030eeeb9976b4ceeb47b21ab5044d700278022d5fb495bbb64ca07" + }, + { + "path": "crates/oa-server/tests/http/source7_contracts.rs", + "bytes": 11000, + "sha256": "0e0a467186da7263c0754890aff69ebd0d92d36b5224e4865bb6854b18dab7e8" + }, + { + "path": "crates/oa-server/tests/http/source_projects.rs", + "bytes": 30907, + "sha256": "8ff580f317ec267d1cd72ae14d8638f74a77cdf99ca4c78f66f4290c2d77460a" + }, + { + "path": "crates/oa-server/tests/semantic_http_contract.py", + "bytes": 7251, + "sha256": "4737ff94f10761f94151a694414c5c62737e0391ec820bca132830652bc4cca2" + }, + { + "path": "crates/oa-server/tests/semantic_schema.py", + "bytes": 25111, + "sha256": "cacca116c42ffbc097f1419c0f89921fa0dfd3faa864d46820ff744cfe6967f9" + }, + { + "path": "crates/oa-server/tests/state_representation.rs", + "bytes": 12241, + "sha256": "6686c826f28248ae4b63ec3f2112e193d4a347724b87974483217fcfee49cd61" + }, + { + "path": "docs/acceptance.md", + "bytes": 3463, + "sha256": "32ed3e4fed63f5c464e0937221f401d71623b276dd70f083531ac6ccebbf9050" + }, + { + "path": "docs/api.html", + "bytes": 72515, + "sha256": "a06126cb741da57e9c06e83fc4137ccde0de05562673546bc9d405878f51ea07" + }, + { + "path": "docs/api.rst", + "bytes": 41929, + "sha256": "ca7d310138c3b4d429d80a1d03d1ac8d4a9296069e205da573034256d10438a7" + }, + { + "path": "docs/architecture.md", + "bytes": 10974, + "sha256": "a50bd1645222ef3e574fa07a6ab9aa213431ee8833c6c0158ad91ce0f799543c" + }, + { + "path": "docs/language.html", + "bytes": 175111, + "sha256": "67dcfa3477b48a0b07298ec81741840cc3ccff12c7d58164873d746d41d611c8" + }, + { + "path": "docs/language.rst", + "bytes": 134663, + "sha256": "12229dd7d52fbaba80fe599d499f29b535f4c37c7be0585664d17edf0466ba33" + }, + { + "path": "docs/linux-packaging.md", + "bytes": 8671, + "sha256": "41a1bb1095801df37a1411341c5791d55ea8c365739314d599a60269ac4bc7a0" + }, + { + "path": "docs/openapi.json", + "bytes": 346920, + "sha256": "bc5825a3182a4df5f6710a80262f4a09b4c15f0e4cda7ca74e1746ceca81a89b" + }, + { + "path": "docs/research-v2-architecture.md", + "bytes": 40445, + "sha256": "1b3809f2dabe6b1805dbf3d3f2625c471cd21356c7bd603916466a8c4ced8090" + }, + { + "path": "docs/research-v2-semantics.md", + "bytes": 31535, + "sha256": "b7ec3677300248926a88b84da3e7ffe52f5b73524c7712c927a0e951569db04f" + }, + { + "path": "docs/research-v2-service.md", + "bytes": 36209, + "sha256": "4828df5bc679e7c71f49b4b85c9e7dacbec52f46d416fed48af70e08886d4e4e" + }, + { + "path": "docs/research-v2-ui.md", + "bytes": 3245, + "sha256": "894e721b59a8ca85f0d95b6706ed5f130a0372def460cf33aeefc9e5e38cde0a" + }, + { + "path": "docs/scope.md", + "bytes": 16690, + "sha256": "a1d0cfbfc06fc8bc2bf0f71343aacc8853cbbbfc00a1fc9852ddf41c8245ffca" + }, + { + "path": "docs/server.md", + "bytes": 23361, + "sha256": "4eb24937d424ba8b384e1734e02a6f8e963ae11d2715889c92b14b39ff2e4a48" + }, + { + "path": "docs/source-cli.md", + "bytes": 3374, + "sha256": "34f12b72cc6d6ead4f47c7818c1897db592f8ad493c70776db2ab48c24d8f051" + }, + { + "path": "docs/v2-interface.md", + "bytes": 11807, + "sha256": "c7fbaf0ebd3fc9f6c11f818db2b0b9d68a33f580cfced22bde83ce08ae790bc7" + }, + { + "path": "docs/validation.md", + "bytes": 6505, + "sha256": "f46ea950ed1a54409aa07c4f9e90f39f8e2d00c1dd1b6cb805caa3993845967f" + }, + { + "path": "docs/windows-packaging.md", + "bytes": 10406, + "sha256": "2c852ff7041713ffbff3c951ac98df647c51fb70b0feba9000f7bfd5bc2703a8" + }, + { + "path": "examples/coastal-rescue.arcadia", + "bytes": 33107, + "sha256": "7e183ef9fd8154d3074303f1956cd0d9871c19e3ffc630d333b0bffbd6e30e17" + }, + { + "path": "examples/coastal-rescue.json", + "bytes": 49715, + "sha256": "242f0b031229a87af5c4ebe5d651defe59c191a6b7a69dc0a77f7e203411f195" + }, + { + "path": "examples/legacy-v1-coastal-rescue.arcadia", + "bytes": 3449, + "sha256": "4dbbbdf8bc7e6cb8e0a81dd678069dae585a9e5187c59bc3665e1fdab3f1a86a" + }, + { + "path": "examples/legacy-v1-coastal-rescue.oa.json", + "bytes": 5976, + "sha256": "fd0e9dedfb7adb922dc0575cc2b820d40344d639f1d8052bd70363aa59de9c24" + }, + { + "path": "examples/release1/README.md", + "bytes": 11137, + "sha256": "113cfb1cf38a98b51bff60442d86a35d636a3d80ef206bece7d53d0aae67f2d5" + }, + { + "path": "examples/release1/evidence/repair-check.md", + "bytes": 1419, + "sha256": "f4db17bdca4ecbb1bf0caef01b2da5f1f7f798ab3152b648ce6dd8696a6a68e5" + }, + { + "path": "examples/release1/expected-diagnostics.json", + "bytes": 288, + "sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e" + }, + { + "path": "examples/release1/model.json", + "bytes": 134520, + "sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727" + }, + { + "path": "examples/release1/model.rs", + "bytes": 28762, + "sha256": "15f30f6bde655808fe754665c26d560e36f2a9bad340f346b09137d0d05045f5" + }, + { + "path": "examples/release1/oa/activities/activity_oa_restore_work.arcadia", + "bytes": 1307, + "sha256": "83e73d0a013d5c3e1a4af0d9139ab0cfa362d25a846671fc2dac59181061a9d4" + }, + { + "path": "examples/release1/oa/behavior/process_oa_assessment_procedure.arcadia", + "bytes": 697, + "sha256": "172c32c044ef4b5bc58a1f4635cc81f48dabb4014479b47dce7b25fedf2dbd0d" + }, + { + "path": "examples/release1/oa/behavior/process_oa_field_procedure.arcadia", + "bytes": 1781, + "sha256": "d2552dc5383e2e91cb302a790364e197f663c2edc013a2ab1978789825c9c324" + }, + { + "path": "examples/release1/oa/behavior/process_oa_response.arcadia", + "bytes": 3225, + "sha256": "cf86f46fa5c5d70592ef43f1bc1cb4d968efd8add384ba88036bef6b88aa4abc" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_conversation.arcadia", + "bytes": 1795, + "sha256": "b25be524e98a35ebac5e4481b7609c027b32baf9605e8097f807560f94a77ca6" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_full_scenario.arcadia", + "bytes": 1261, + "sha256": "00a1edf2c9707a0eb62ac070c2d02467874f2c9c1f273cc6ddb53d6d65999a1c" + }, + { + "path": "examples/release1/oa/behavior/state_machine_oa_monitor.arcadia", + "bytes": 2022, + "sha256": "447c9ad1359f4a31ecf975ad07c0b08d8e7e03191fb0858e2fc56f377b223cd5" + }, + { + "path": "examples/release1/oa/capabilities.arcadia", + "bytes": 781, + "sha256": "fc8012e5554350b12e1cb80080f8feab80d933c9b33c0f2a7bb500cb7d609936" + }, + { + "path": "examples/release1/oa/model.arcadia", + "bytes": 661, + "sha256": "f7cf914766ea73ec53b85e32d117ea9a9dba52d3e038246863541ae7069b1a15" + }, + { + "path": "examples/release1/oa/participants.arcadia", + "bytes": 1834, + "sha256": "951764c14179f27c10e315acf2ea37d1fff54c77b8441e23addd239e8c715ce3" + }, + { + "path": "examples/release1/oa/types.arcadia", + "bytes": 788, + "sha256": "9d0396fb82dd5733edd8d1cf52f968ca84906927c704f9cf0944a7fae215cf49" + }, + { + "path": "examples/release1/project.arcadia", + "bytes": 1958, + "sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda" + }, + { + "path": "examples/release1/sa/behavior/process_sa_assessment_procedure.arcadia", + "bytes": 706, + "sha256": "73928ced61c06cbc08728d7956676a50fd4c05aa5b7f1ff4f29ce27a0b0f2088" + }, + { + "path": "examples/release1/sa/behavior/process_sa_field_procedure.arcadia", + "bytes": 1790, + "sha256": "886d462af83110cbfa55dd232a667ea1446761234471357cbb878794e98e8768" + }, + { + "path": "examples/release1/sa/behavior/process_sa_response.arcadia", + "bytes": 3234, + "sha256": "041785fc22842423822431bd5e6e8d16094ebd0716965e7c765fb8c1d7549e8a" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_conversation.arcadia", + "bytes": 2127, + "sha256": "97276f5757ee9aa12a0dbd9d3ccd58174b3091162bb8bcce357cec20a45f5d85" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_full_scenario.arcadia", + "bytes": 1256, + "sha256": "e12fc406b99d60a2f7768aaa0b25ba560e8605f0b8e37f3a7cdd3b8443562b74" + }, + { + "path": "examples/release1/sa/behavior/state_machine_sa_monitor.arcadia", + "bytes": 2022, + "sha256": "05ce29af99424c491c47fe2450dc6f5f8ce995511c01ec7e17bb5855be3c9736" + }, + { + "path": "examples/release1/sa/capabilities.arcadia", + "bytes": 781, + "sha256": "b6912fb3ece439912345fa71724acd462e716a1e5a88203a1058a5c3b2c20a4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_audit_thresholds.arcadia", + "bytes": 297, + "sha256": "e5a04325d52183956dca814dd90f4e56c96c6b7db0f4f202f203ecb49c3e0f4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_restore_work.arcadia", + "bytes": 2576, + "sha256": "fddeb67308051325041fee641fe758ddf43345b7c47b66d433616ad07fdccdd6" + }, + { + "path": "examples/release1/sa/model.arcadia", + "bytes": 661, + "sha256": "d431509251acb859fbb98733b6d18add952495e10a78703fbe8f31e40bc083c4" + }, + { + "path": "examples/release1/sa/participants.arcadia", + "bytes": 4012, + "sha256": "780d2eb08b217b67b55febb3d34846f727b8ee9018df6c5741748647e36b2ff8" + }, + { + "path": "examples/release1/sa/types.arcadia", + "bytes": 1227, + "sha256": "101fc0fbd99f1101514aa7b6da4f8e535aae0bb94c9e2b9e7e6c151135b28660" + }, + { + "path": "examples/release1/traceability.arcadia", + "bytes": 29506, + "sha256": "48a96f543456c9b5a5798fc795594e4119147fe45f11a6f109f141b7f514560f" + }, + { + "path": "examples/release1/transition-before.json", + "bytes": 35801, + "sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d" + }, + { + "path": "examples/release1/transition-request.json", + "bytes": 4276, + "sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a" + }, + { + "path": "examples/release1/views/diagram_oa_allocation_view.arcadia", + "bytes": 2176, + "sha256": "dfc0eb61e0e2aa5bda45524571fbfa3494f44ce19696f3e15e07438074a07bc7" + }, + { + "path": "examples/release1/views/diagram_sa_allocation_view.arcadia", + "bytes": 2173, + "sha256": "b78b43a26a82efb8fbd5374b09c329fa341f57b29f635d397b9ef8aede71d389" + }, + { + "path": "examples/release1/views/diagram_sa_capability_view.arcadia", + "bytes": 1620, + "sha256": "75e8dc9fb30f25d6f8fd3c6b595593ab4f98958a25798f961e336e0fac557649" + }, + { + "path": "examples/release1/views/diagram_sa_service_view.arcadia", + "bytes": 2209, + "sha256": "b08c84f3ea633e7c78dfdad3272f75415f6256cf3614b6d99bfd4f0269076c9b" + }, + { + "path": "examples/release1/views/diagram_sa_state_view.arcadia", + "bytes": 1931, + "sha256": "5f42f4c605e57b817d8400ed21f2b14bfc4e1592aebe941ff113767504c2b869" + }, + { + "path": "examples/routing-workshop.arcadia", + "bytes": 66431, + "sha256": "dc6b75da72884d399132ed9e300fa5a26b73d802bb526c9af986ae9eeb0a646a" + }, + { + "path": "examples/routing-workshop.json", + "bytes": 100281, + "sha256": "8592714f75b271133f21ce017d87896b6cf91ea0e4837f1c2ed453e21be26b14" + }, + { + "path": "examples/source-project/oa.arcadia", + "bytes": 2142, + "sha256": "5f60642f211b2d352a951092faeeb7503d4fb7f6f7fca99e810347231101d31c" + }, + { + "path": "examples/source-project/project.arcadia", + "bytes": 606, + "sha256": "787f6b67b179ffd221f7e5faf1a4edd74cfd116aa1e3b5e9ed9f22fbff612d8d" + }, + { + "path": "examples/source-project/sa/assurance.arcadia", + "bytes": 682, + "sha256": "ab76044836e4dcd42a82d316846ec87da2108939aa2037640c5bca1d2ecdee0f" + }, + { + "path": "examples/source-project/sa/participants.arcadia", + "bytes": 1231, + "sha256": "1abad579812e77877b45a3d8e3c3e9da734be2d04a0254cc730a5257ebd2dc88" + }, + { + "path": "examples/source-project/sa/reporting.arcadia", + "bytes": 2839, + "sha256": "f0b7443f728912ca163de39b6055876b533a77feaa3219b2d40a2dd65712e058" + }, + { + "path": "examples/source-project/views.arcadia", + "bytes": 3508, + "sha256": "e29ad3f406a6a50d2f0ae2ca2a53ee3b0c18222cd4098704a46d4f48b64ea17f" + }, + { + "path": "examples/text-first/README.md", + "bytes": 1367, + "sha256": "4ec8250d5ed556f1d496e8c85137e973e802ecb11df1a36488411e8cdc5a9f9e" + }, + { + "path": "examples/text-first/project.arcadia", + "bytes": 480, + "sha256": "f441535c623e0cf20e1875eb2cd33b587ed00e078c37af39cb36d89bb5edc19a" + }, + { + "path": "harness/fixtures/basic-editing/README.md", + "bytes": 12012, + "sha256": "3545d9695e7c62e0caa818efd7f4dc426f04876a3626e0f3b1bad606b258cb26" + }, + { + "path": "harness/fixtures/basic-editing/base/expected-baseline.json", + "bytes": 4524, + "sha256": "f239e728d650b0af32bb8f3dcaf6b27c99b9c5041132ac14e51756ea6563d978" + }, + { + "path": "harness/fixtures/basic-editing/base/project.arcadia", + "bytes": 3077, + "sha256": "045cb047d7bfbca72c3fb30db4c81a30ad463d3af7fc51604906ad7fa75a1ff8" + }, + { + "path": "harness/fixtures/basic-editing/base/rationale.arcadia", + "bytes": 57, + "sha256": "c01867c9dc0d40726853119fac3c6ad24a40d8d362a93a8b9d20df04ec2e273f" + }, + { + "path": "harness/fixtures/basic-editing/manifest.json", + "bytes": 447, + "sha256": "d23c21b02064ddb85e051e10e16ff089daba8d9910bb1a695dfabe2db3757734" + }, + { + "path": "harness/fixtures/behavior-creation/README.md", + "bytes": 5954, + "sha256": "9e5fc751424d12cfe76a84abb1da45b2d38947409179451bb90ffe7e7ddc8723" + }, + { + "path": "harness/fixtures/interface-operation-probe/README.md", + "bytes": 2604, + "sha256": "088f0bdb3375deb8f2c7e3b749ca8d210ea828ca4dece69b3871b674e3110175" + }, + { + "path": "harness/fixtures/interface-operation-probe/hashes.json", + "bytes": 977, + "sha256": "f6d3e8aa42f40f64ce2ecba7b9cf112eb9091f3cccde3a592b0434e834cf2a6a" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.arcadia", + "bytes": 4218, + "sha256": "c0fe9570684c0061efc4cad65e339fede6961b04ca90c6f324c787bd65e61226" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.json", + "bytes": 7835, + "sha256": "93187f7a1b476a44185725c6b15f2e1767482b6911ab1280144348d033eb51f0" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.arcadia", + "bytes": 4771, + "sha256": "02f85e39957ebe6d56336fa729a5c8b10f51865face9d3b2c9679200571fcfc7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.json", + "bytes": 8840, + "sha256": "756f9710336e6734ce3592ca774c6f104bba5a37c9e165540eb39326682393d1" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.arcadia", + "bytes": 8635, + "sha256": "ac5b629ba5596464f9f8a975b8bc2764e3007ceb7342de3f828d4b18e4f069b7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.json", + "bytes": 16160, + "sha256": "78a47c978dc667aa1c45af711f06aa2a0d3c581003013e30c3e02fb0faae2e64" + }, + { + "path": "harness/fixtures/interface-operation-probe/probe.rs", + "bytes": 11274, + "sha256": "72b1b443e25eb20420dec4477b0fb5ef5d1c705e3882c81df88dd578ab96a426" + }, + { + "path": "harness/fixtures/release1-native/README.md", + "bytes": 2564, + "sha256": "5f5ba040fd2df9261a29bcab3f9a7ae27c3683265411ad3dda0b467d5df8590e" + }, + { + "path": "harness/fixtures/release1-native/artifacts/README.md", + "bytes": 4155, + "sha256": "24200c84ccc2ef3e17c029744074e5cea785188f5549ac54e44cf89682643f81" + }, + { + "path": "harness/fixtures/release1-native/artifacts/generate-semantic-artifacts.rs", + "bytes": 9275, + "sha256": "444f360b78df52c5e42046f77b148781e0c9bddc2a09c0b7bd65c7a4f376cfe6" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.arcadia", + "bytes": 7768, + "sha256": "84b22e95c213018612e6e8a84cad68b35a8b495ff3515b0f978c5e7a3d196d79" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.json", + "bytes": 7330, + "sha256": "13a6f99ec2df1dd35ee8b2613f183918cd9537eda4a5da085ad52e65c033db59" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.arcadia", + "bytes": 1446, + "sha256": "1e0d662ba33071b122ad9206d2d559a8e748c9431eb3ac1b759bde3760ca877c" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.json", + "bytes": 2216, + "sha256": "fa6a2e3643c0f909b92407abec3edc897033162eeaa501f8d4616f79d41fa044" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.manifest.json", + "bytes": 567, + "sha256": "65cb70b0d697a055363ba01bf30bed7e412d43c9978a033549c378d117719ae7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.request.json", + "bytes": 3991, + "sha256": "ed905267263e7f8a0cd2dbe833196b30118b6a246815216932fae661ad650699" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.arcadia", + "bytes": 6837, + "sha256": "e50fc462ec22dbf98011929931dd2489430001c3e6433608685b9d88bceb9acb" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.json", + "bytes": 6433, + "sha256": "f27a7b38d59c7cefe58cb36783d3d4dd8d8ae1168d9aed1eb61d343c18758908" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.arcadia", + "bytes": 1807, + "sha256": "eba2aec39e6efb405eace4bc8ab0c5563907c26d449e71a4aa750df9f73233b4" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.json", + "bytes": 2673, + "sha256": "2ef777f19b94f08b5e5ca2ef727777897e1018f1426eee291408b3c69101f596" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.manifest.json", + "bytes": 519, + "sha256": "3af7232ed3056ca84dcaf0f266ead3faaa512a0dc0051c7ba68791c20dbae0cf" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.request.json", + "bytes": 1246, + "sha256": "8af21b00b62e620256fbf50e47c6c5836cdb6922d9549cc4b3d86bc03b008073" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.arcadia", + "bytes": 4200, + "sha256": "20bb30473830e44228958e78fb7480269cdcc0580c6c90c718da75f34ca5a43f" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.json", + "bytes": 4552, + "sha256": "44f4b05db49758dcf344788f57cecc0250fd029099b1c54e4e1e3e972f6cf039" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.arcadia", + "bytes": 1808, + "sha256": "b0fd031671c9f755756922ec5c40a0ce3f40164d22c3c389aec9fd0705344da7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.json", + "bytes": 2673, + "sha256": "1acf81e08c51c85aceb14a3efbc39ec680552a19c7824aab4611ac3cf71b9c6d" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.manifest.json", + "bytes": 610, + "sha256": "a07978f4b0a3ca83e5ae5f35e7b66b26473b24431fc90e5889d755f1816d52dd" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.request.json", + "bytes": 2352, + "sha256": "5ff844a038b0030adb5a83d13d81e60f30627543388f6199b6a0e026fc42ea58" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-native.md", + "bytes": 4075, + "sha256": "a51ffbc45b6c172cbfed3b16c249296e6a28d457fea57393dd958cdcfbafbca1" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts.hashes.json", + "bytes": 2367, + "sha256": "3ad8b7428b3ed7585a91e7f5d9d5f4880caccfd0b08dca25d05af523e62e0a10" + }, + { + "path": "harness/fixtures/release1-native/communication-means/README.md", + "bytes": 15091, + "sha256": "015c16010c212af283f9def118c6d263ba65a3bc6e81a750f180624ca69bb311" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/entry.arcadia", + "bytes": 6098, + "sha256": "a6976e7c21031e7cc3cb731e20c3075cf89cf85144dc8d3f52930f8521ea196f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/expected.json", + "bytes": 10480, + "sha256": "60c4419415c546f06c9972ac7bb0e530ada7b30a200b59e75ddda231a24f9a3d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "3c41459f2b0706a767988738bf8126f76540415bb5940d9c5db19cbe8c18182d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.request.json", + "bytes": 1331, + "sha256": "b16e673b29c96b5aed681389ff7669110abe552939e86dd0ec6011c9a45ed860" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.arcadia", + "bytes": 5239, + "sha256": "a511a4d817d9c5c80233bce83e84a7056b7dce7afd9fcc25696e333f8f4df055" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.json", + "bytes": 8424, + "sha256": "7140114926228b1c378c450535f7a70992c71a879a8d2270c49e8d5f04a2f484" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/entry.arcadia", + "bytes": 5710, + "sha256": "910e6dfe609467047ce629ec9c626f4e927cada74bfbfa164414a8fe6783ea87" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/expected.json", + "bytes": 9868, + "sha256": "567259e20c9f6278776e8fa99b8b2fdbbc9a883ad875c5d39dae1b53de3a2924" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "997f72fe9258012df66e88344cf39c1a2cebf2327f604056b67f7f2a8ebcfbfa" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.request.json", + "bytes": 1127, + "sha256": "cb3fe05859cfffec6f8846c19983dc462413bc0ea4f6e19204f09c259919c4b1" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/cm-reverse-scenario.arcadia", + "bytes": 8209, + "sha256": "ec826b9b84616507490ac30e4d57100dd6338dba2f7071e879a8fb58820a85c5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/expected.json", + "bytes": 19735, + "sha256": "ef07e4d2d3fc36004ff01739838281581d9a703c747611eacc01bb9cc672489f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/entry.arcadia", + "bytes": 9827, + "sha256": "86dd8a355f6c9dadfea56d06e5247c9b0f820819d7df17ef5690671c7c81324b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/expected.json", + "bytes": 21877, + "sha256": "980489ec2c483d4f9efada61358c1f29bafb2572fd5b804c656b91b8e9bb4f9a" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.arcadia", + "bytes": 7698, + "sha256": "1abc4c4cac37cfb06ed3b12a115f9e7e6a2d3affd34b25c355309e5ee465fa40" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.json", + "bytes": 13130, + "sha256": "a5cf4cb2ef390113dd752f4054d43fb789da2ca77799efb5782805ae8aa2dfd5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.arcadia", + "bytes": 5454, + "sha256": "b761c4c2af5f7064aaf1f887ffd6094eb6ae834b2c8057ecdbc4aa97c042066b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.json", + "bytes": 8852, + "sha256": "2536b000de361fb131787e32b466b9123d4e98abf00c099ad32f6cb8e7fb530b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/generate-communication-means.rs", + "bytes": 28035, + "sha256": "003521404b702332082e01f2be7676fda1dd7b5bcf220bb81d25120c8984c75d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/hashes.json", + "bytes": 3133, + "sha256": "39b4dc02fc8b074015c59354fd1c1061c25832fde25065c7151f36eb0455e6f6" + }, + { + "path": "harness/fixtures/release1-native/communication-means/manifest.json", + "bytes": 1237, + "sha256": "fb921f42f2c4a4f8a67d1266f17f8c7750b6a2619554b713aa92b17918f0c43e" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40-oracle.json", + "bytes": 26264, + "sha256": "74edca148583f42c269e51f135662f65ef1c9ea1c94516d63e2a5091967dc99b" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.arcadia", + "bytes": 28947, + "sha256": "00b87736b82c5afd33b311df7aebe9a6c8c51b6de66221181b5ea8bc8ca221a3" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.json", + "bytes": 54938, + "sha256": "5dd4f22453330cab3abc059881660190e689a22619853f77cf6d0b52735d97ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments-native.md", + "bytes": 2624, + "sha256": "28906924b05f75bbf432389517aef65f1df474d2f2bff79a3586564f7f7328ef" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.arcadia", + "bytes": 6795, + "sha256": "9d084dd75a0251d349cc31f9ee98df58d0bc76859dc3cb1503f242e2f759888a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.json", + "bytes": 9618, + "sha256": "f09be41afd85c18fd52fdf997e9b81c4b7cb2c41e78d167abcd14caea8110333" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.arcadia", + "bytes": 4990, + "sha256": "8740f27be99624013d9be876639c0411e1b8c14f0f9a843f43dc71d769efd79a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.hashes.json", + "bytes": 963, + "sha256": "00fc9e2c709bdcd9ee98012176cb0edb635c112153d963cd169bf4bf69a9e010" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.json", + "bytes": 8146, + "sha256": "9c188f2890630c7feec2be719a7104af9690da7ea836df18fa78da3ff2acfc1b" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.manifest.json", + "bytes": 1045, + "sha256": "46b40f221ffad614733b615208814ace63947e96b80bbfdec63853ccd4f4e8c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.request.json", + "bytes": 3075, + "sha256": "b57f656f0b9cf2c595e83150c683301909e20f15684d35d108d3c57ee0dc5909" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch-native.md", + "bytes": 2637, + "sha256": "dddca2b85f892b05881c75ef3cd62437396cc086a09909b621e02bad0cbe56ff" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.arcadia", + "bytes": 3134, + "sha256": "d3315bba762395205ae761e6e64029e8b4070c15a1299c6114075581db7b0974" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.json", + "bytes": 3927, + "sha256": "8f36119c7e893a4af374b13b85b1c2cb3df0196df8d06a551386628fc8b8646d" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.arcadia", + "bytes": 1787, + "sha256": "5e1f433e04621424edac43e53411624059e873f88dd531bfdb39093953485ed7" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.hashes.json", + "bytes": 933, + "sha256": "1bd87700b04e4f169ab5f8aceaa3b0c3ec3a1cc43e1bce135a1cee506fc75d38" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.json", + "bytes": 2816, + "sha256": "1972242d2a8677d004dc3af1081feb292de65fe26128d877dded8661f9906619" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.manifest.json", + "bytes": 647, + "sha256": "1e440efa02e2ccc27585d9a49c7864d53e3e3e7645ccb219f040e00d95331b8e" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.request.json", + "bytes": 2197, + "sha256": "71f23474614aab90398ce24f00f2cf61d6cb9a3a34faa3e12e0c8104e0a71073" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.arcadia", + "bytes": 15635, + "sha256": "e3ce0347746584f503b825a8b6bd23a7eebf0827940112ef8f36d500c1d0a043" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.json", + "bytes": 25736, + "sha256": "29736f2a619f7f2d0e795229f6e8c3645a1b4eca6292043cd604aa01b1ec9170" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.arcadia", + "bytes": 15631, + "sha256": "9ab573c92be66e3bae659dd826923ba6066979b1651edda7bd469056632cd77e" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.json", + "bytes": 25736, + "sha256": "828c990c6129692cd31c7f6ed0dd6c952f9cfffdd90bc80171df82d4d929afba" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.arcadia", + "bytes": 15617, + "sha256": "49214be2ca9c8bb6195c3b39737c053847021839f70f0bb2921d35a1fbd2ac83" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid-request.json", + "bytes": 2225, + "sha256": "8b02d4739b1be2c8a64da76423b4a6cae7d89c60f4d30723b94f1da3779cbcca" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid.txt", + "bytes": 78, + "sha256": "aa536e18bc65325163e9b645a4ad031ab599fcb05948dcf741b725d0f0c8b602" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.json", + "bytes": 25722, + "sha256": "995dd72f5c1f07f998233ae9847e337cb82de0c2a9053d3905be021d5f8124b9" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.manifest.json", + "bytes": 1059, + "sha256": "ad315359bfd68ce0d265976dc9e4ea6a502ebbb87d7339dd1af5ef27dd01e433" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-plan.json", + "bytes": 15016, + "sha256": "27bf316ad66ffa91f6323e75b0c280baf5caec298645793dea72c5d42aa3b782" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-request.json", + "bytes": 2225, + "sha256": "f4f6b5480ec8927033ea469ea82c1e8411cb6dba95d2da680f15bc193914c9b4" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.steps.md", + "bytes": 3897, + "sha256": "7d7e38d93641a5f22a2738baa4dbacc392eebb477a855cdce0641961980a19ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-plan.json", + "bytes": 18557, + "sha256": "74dd68ba686b8928054480f0bfed55aad91f6f1208803399dc9878e894f57ecb" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-request.json", + "bytes": 1508, + "sha256": "d19a53002a6bf95af3123a3ef9f78baaf7ce1085d4f06f0f4a9d5e5d5accbc0e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.arcadia", + "bytes": 6935, + "sha256": "90277f1780d43a6f0b2184bf00b87e7a4f3518d67c6f10d4793daafe1aabf493" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.json", + "bytes": 11286, + "sha256": "5a3c8494f6976c23b990c14b40760fb2f32ca9973caf6f31dab5632310663591" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous-request.json", + "bytes": 1379, + "sha256": "6a86fde194faa55f2d1bdb982571e0e711e5401b53a960e6acb8cf3e17f506c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.arcadia", + "bytes": 6195, + "sha256": "e7c30c5a5c3ba7209c8e223f02da55821d7af10a2f09844a7065ae6cd8f22aa5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-plan.json", + "bytes": 19156, + "sha256": "d1e5c2ed08e0aa6274a0421a39876d1ba99f4e441c7a0a68660a83b9e017da14" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-request.json", + "bytes": 2418, + "sha256": "433f723252598994dac7184da61f95344b528156cc5a0fba1a7864b2ec9f002b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.json", + "bytes": 10441, + "sha256": "9e4e2ce1c7879935ad0860a3ae720506c929a8422b51491b719d88af3fd3ff2d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.manifest.json", + "bytes": 1042, + "sha256": "87e8899c7d4e54faedeef32afb7592fb65278d1bd7390850ab198dcf62068329" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.arcadia", + "bytes": 6280, + "sha256": "6c77ed42bbf9f4ebe08bfa233197a4020e5587ce33747f7914430aa0c662d9a3" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.json", + "bytes": 10009, + "sha256": "1dd7ca2bcfc84ac23369c506302b39569d2ebc41e5a4edc99378a1fe01923b7e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous-request.json", + "bytes": 1390, + "sha256": "e0ea7aeb25687ae63c65128f1aab78273f14030d179d3fbea63fe91ab5430136" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.arcadia", + "bytes": 5529, + "sha256": "563c36162050c8564ffa25a85c726462ecdaebdb87659b3f3610506bfd5581e6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-plan.json", + "bytes": 18821, + "sha256": "f96c43fc58dbe48a044b628b31bb3f0b59171dad5b6982ec6c34a5597e474130" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-request.json", + "bytes": 2438, + "sha256": "d38fdb13612b07254edad80848f79c1e097d5f868c020feae9ba072aa697a50d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.json", + "bytes": 9153, + "sha256": "2ed0daed118f2df13dcad738dab174ad34d44a15921cf8097415e707978b0968" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.manifest.json", + "bytes": 1058, + "sha256": "c79bd12a85d8d4f25cc3ee43581b3e5e74ae9ad7e4de0c72764975ba2b89c279" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.arcadia", + "bytes": 5026, + "sha256": "98020e048ac01f285c6ad8c10ce22bef05e193b5ba0f5558be1fb26a7bf82620" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.json", + "bytes": 7851, + "sha256": "ea3783992488bc6ee944eb91a26ccf3dbc05a3909528fc32ec8023a76765cee6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous-request.json", + "bytes": 1379, + "sha256": "ea3cfd25f7a50481805956fb88ab851516dcd602dd6564502a0cc55f7de6a54f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.arcadia", + "bytes": 4295, + "sha256": "2b7c3694623bbea3e36dcc6f674d4adcd91e23c8e1005ded21e5a69648a048e5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-plan.json", + "bytes": 17912, + "sha256": "95a23bd334cffcaef0c3b1012b7555efd2a077ef6f9140d58020910ef8a76723" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-request.json", + "bytes": 2081, + "sha256": "1e2433ed5821bf65443f56cb27381ee935db81b1955d3a539b7952898312a410" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.json", + "bytes": 7012, + "sha256": "0033f8780c2ba69779b811bca792340c25a092f887e5811c6839f0a691d744f2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.manifest.json", + "bytes": 1046, + "sha256": "e3b4a60a56abee779ca8356605c968aa2d99256a3bd3c5601b14b5c5502a1a05" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.arcadia", + "bytes": 5467, + "sha256": "e265cab35097acc46f5123107c13bc35b9f71931ff650557fc1c85779141b327" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.json", + "bytes": 8482, + "sha256": "9b777828d3681138de6bbd08de8bf922bed92c27be60b103d8ff73ce7ddd0a48" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous-request.json", + "bytes": 1379, + "sha256": "7d124256730bf2feee772c7d0118b87eb288e8aaa9179d69ceb9259dbceb2c71" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.arcadia", + "bytes": 4727, + "sha256": "87a5a3665dab2dd6e595867dcebb1586e93dd067c85d6e24b1a4d3ff0ad6d4ba" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-plan.json", + "bytes": 18803, + "sha256": "1888ca51e0923866a9afea99cad069fe5d3f19f0a1b24328e20ac1b9f52d8bad" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-request.json", + "bytes": 2294, + "sha256": "5070a5b85feb1bc7b1fc648cd5d35ef26663492c8666dcd471950c06ec3a6052" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.json", + "bytes": 7641, + "sha256": "725b35e36640c81c70c7efea5c3304bf61b49ef9664194ca0d491782cc62191a" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.manifest.json", + "bytes": 1038, + "sha256": "1b43abf8fed3061c65a7b7cb103d31ea7ece333a2da83c645f8d228448c4dbb2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.arcadia", + "bytes": 5019, + "sha256": "65a6217f474b5085f37b511151185c2c08ff7a1998e924f1fe01f29c410f6ced" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.json", + "bytes": 7835, + "sha256": "8a53bb9b43eab5b6dca5e08deef20c14c96e134b9ee816a99b7960bb5255e008" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous-request.json", + "bytes": 1379, + "sha256": "c704f99245f00d5c3be0562d91931b4e7f1fb3fb36f41991eb76656ffbd6129f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.arcadia", + "bytes": 4279, + "sha256": "c59ec1233d5a9fbb8e386f6d9b13f398be21baf813ba215efb51bfc1bb98db36" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-plan.json", + "bytes": 17938, + "sha256": "30c5c3f614a74708763df612016483623792f4c65e2ed2fa662ac417cfb852eb" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-request.json", + "bytes": 2098, + "sha256": "3b6c35ef78133f0980cb6fb53fbc29c5d3c4deb5dc4be01c2c3384e221987b9b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.json", + "bytes": 6996, + "sha256": "c159c60403abcf8fefab7f19cbad9989488e8ccc20b82c57597b22a0ae254802" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.manifest.json", + "bytes": 1038, + "sha256": "af8a314a9b1d85a8f98affa5a6649f43d252851158798e1ad687bb1b6966b14f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.steps.md", + "bytes": 4549, + "sha256": "6004894e9d9f478b7fe1c3c3e0706dcc546d5df8557cff91b4cf26f8a4badf24" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/15000000-0000-4000-8000-000000000010.json", + "bytes": 1933, + "sha256": "71cca2a59f36b2a07d11dedbe9101226aa1a4a00d8ac244b5565202e56709f51" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/generate.py", + "bytes": 1496, + "sha256": "e44986c1d563499f25917441220b23883fc9cb0f89faf409873191f0212fbd2f" + }, + { + "path": "harness/fixtures/release1-native/state-actions.arcadia", + "bytes": 6224, + "sha256": "9cde82608110e56aa9e14c9e33eb38976f53aed74ab013145d411d5743a0ec26" + }, + { + "path": "harness/fixtures/rest-coverage/README.md", + "bytes": 1870, + "sha256": "df4a391312e0c8b20ccdcc850199443b08547be1b10b1f2447a067bf4bf544e6" + }, + { + "path": "harness/fixtures/rest-coverage/coverage-probe.json", + "bytes": 7951, + "sha256": "2d1ef7bdb5d7bf17b9fda33b1d1790d1d88289b3fd1e725f89b83a69771f9a43" + }, + { + "path": "harness/fixtures/rest-coverage/run-coverage-probe.ps1", + "bytes": 9381, + "sha256": "f24f19fca418b76a7249894a08c116e16b465a02f8f899d12b808ccfdd90a3bd" + }, + { + "path": "harness/fixtures/run-timed-bundle-oracle.ps1", + "bytes": 7466, + "sha256": "fab696486a574f9867c6e69a8a8b960e7e9722206441b9cc5f36d41f285f1a25" + }, + { + "path": "harness/fixtures/scenario-authoring/README.md", + "bytes": 14700, + "sha256": "6b651b180b76d10b00bc49d77a8f5e0b3ba0317446978f41b541f5bb23fedad8" + }, + { + "path": "harness/fixtures/scenario-authoring/base/expected-baseline.json", + "bytes": 38589, + "sha256": "abd8246c939ebb8a2162ef82e23d0fb322ee1a8b4d0d7c28a34037e42e86e841" + }, + { + "path": "harness/fixtures/scenario-authoring/base/project.arcadia", + "bytes": 19470, + "sha256": "9b1afbe96b0bf8fa613451b00929492f05a59b9eb2ca74c2c374a8b7bb7cba9e" + }, + { + "path": "harness/fixtures/scenario-authoring/base/rationale.arcadia", + "bytes": 86, + "sha256": "82df210f22f6aa336a3e7e00240977d671c7c3923db7bc58fb29e6d98b67ef49" + }, + { + "path": "harness/fixtures/source7-native/README.md", + "bytes": 7235, + "sha256": "7abccbc3da0980d1d099761d1a66d12c403a0f543954134537ecd4930d182b4b" + }, + { + "path": "harness/fixtures/source7-native/base/expected-baseline.json", + "bytes": 26428, + "sha256": "e2882a58f841f460f45d9d67db1606440e0d7997b9b29a784569ae48e4b23bfb" + }, + { + "path": "harness/fixtures/source7-native/base/project.arcadia", + "bytes": 13616, + "sha256": "5474d8ca05fd1375220dc0ad40d913631fde51159e9632bb9f290d1ecdab8dd7" + }, + { + "path": "harness/fixtures/source7-native/base/rationale.arcadia", + "bytes": 59, + "sha256": "e6a600e13036d4ad594a65380ed1b3d82d1772d583041bb0a624c9588a73047a" + }, + { + "path": "harness/fixtures/source7-native/manifest.json", + "bytes": 410, + "sha256": "6c57164a796234d83818d462d0a25f10e77062d405769e602ae2a7bec251e3b6" + }, + { + "path": "harness/fixtures/staged-source-authoring/README.md", + "bytes": 6876, + "sha256": "502be5e3bf9112447dc07b1a51fe0fa301754b47128a9b81877c185c6e797fee" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/notes.arcadia", + "bytes": 63, + "sha256": "ad9de02963c20d1f43856455a797deb05ca674659e45f2c4b96b52783024f8bd" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/project.arcadia", + "bytes": 593, + "sha256": "aa844950ec4fb86f262a257e1fc370a26557ea7978d8a4cab78265037660234c" + }, + { + "path": "rust-toolchain.toml", + "bytes": 66, + "sha256": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce" + } + ] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/full-4015498.log b/harness/experiments/diagram-removal-windows-20260912/full-4015498.log new file mode 100644 index 00000000..c172b6b8 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/full-4015498.log @@ -0,0 +1,855 @@ + Compiling oa-desktop v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\crates\oa-desktop) + Finished `test` profile [unoptimized] target(s) in 3m 58s + Running unittests src\main.rs (target\debug\deps\arcadia_studio-e358a5ed59b1de41.exe) + +running 834 tests +test allocation_drag::tests::allocation_artifact_and_manual_trace_cascades_are_named_and_refused ... ok +test allocation_drag::tests::cache_plan_uses_candidate_index_and_same_pixel_different_target_changes_preview ... ok +test allocation_drag::tests::collapsed_target_unfold_is_explicit_and_no_other_fold_changes ... ok +test allocation_drag::tests::direct_exit_revealing_another_role_performer_has_truthful_refusal ... ok +test allocation_drag::tests::explicit_different_performer_retains_advisory_role_warning ... ok +test allocation_drag::tests::folded_subtree_cannot_hide_new_collision ... ok +test allocation_drag::tests::geometry_refuses_new_overlap_bounds_and_invisible_headers_and_preserves_existing_overlap ... ok +test allocation_drag::tests::malformed_scope_wrong_projection_duplicate_placement_and_stable_id_collision_refuse ... ok +test allocation_drag::tests::mixed_p_x_y_refuses_semantic_and_arrange_instead_of_stretching_destination ... ok +test allocation_drag::tests::oa_communication_incompleteness_remains_advisory_without_collateral_loss ... ok +test allocation_drag::tests::oa_sa_incoming_between_outgoing_preserve_identity_source_history_and_other_views ... ok +test allocation_drag::tests::oa_sa_one_leaf_move_refuses_when_ancestor_regrouping_introduces_unrelated_overlap ... ok +test allocation_drag::tests::oa_sa_one_leaf_reassignment_and_outward_move_regroup_ancestors_without_moving_sibling ... ok +test allocation_drag::tests::oa_sa_populated_collapsed_target_accepts_room_and_refuses_collision_without_relocating_contents ... ok +test allocation_drag::tests::oa_sa_state_owned_action_and_availability_reject_reassignment_atomically ... ok +test allocation_drag::tests::oa_sa_unfolding_prior_hidden_overlap_refuses_even_when_insertion_does_not_collide ... ok +test allocation_drag::tests::own_deleted_allocation_routes_may_disappear_in_every_diagram_only ... ok +test allocation_drag::tests::role_only_same_effective_performer_is_semantic_noop_and_outgoing_refuses ... ok +test allocation_drag::tests::sa_port_and_deferred_exchange_allocation_cascade_refuses_and_retarget_is_invalid ... ok +test allocation_drag::tests::same_performer_readability_preserves_snapped_noop_and_allocation_identity ... ok +test allocation_drag::tests::scope_detects_first_child_allocation_and_role_transfer_and_finish_rejects_live_edits ... ok +test allocation_drag::tests::selected_header_visibility_allows_viewport_edge_but_refuses_clipping ... ok +test allocation_drag::tests::snapped_noop_returns_no_command_and_keeps_source_revision_and_redo ... ok +test allocation_drag::tests::source_budget_refusal_keeps_project_bundle_history_and_retry_identity_exact ... ok +test allocation_drag::tests::surviving_constraint_mutation_is_refused_even_when_core_candidate_is_valid ... ok +test allocation_drag::tests::target_presentation_requires_accepted_identity_and_selected_header_visibility ... ok +test allocation_drag::tests::toolbar_identity_allows_exact_incoming_placement_at_old_label_overlap ... ok +test allocation_drag::tests::uniform_folded_grandchild_and_unplaced_scope_moves_exactly_q_and_all_l_oa_sa ... ok +test allocation_drag::tests::uniform_role_only_and_mixed_direct_role_composites_same_target_do_not_allocate ... ok +test allocation_drag::tests::uniformly_unassigned_composite_creates_only_stable_leaf_allocations_including_unplaced ... ok +test allocation_drag::tests::unrequested_view_option_cleanup_is_not_whitelisted ... ok +test allocation_drag::tests::unresolved_role_leaf_can_arrange_or_accept_explicit_target_without_guessing ... ok +test app::allocation_drag::tests::actual_canvas_origin_change_cancels_held_work_before_any_legacy_release ... ok +test app::allocation_drag::tests::arrange_is_one_gesture_and_snapped_noop_preserves_redo_and_source ... ok +test app::allocation_drag::tests::candidate_semantics_are_cached_per_destination_with_stable_ids_and_own_index ... ok +test app::allocation_drag::tests::destination_identity_does_not_describe_blocked_or_outside_viewport_as_unallocation ... ok +test app::allocation_drag::tests::frozen_collapsed_target_uses_only_visible_header_and_port_edge_controls_occlude ... ok +test app::allocation_drag::tests::frozen_targets_use_half_open_semantic_priority_and_refuse_incomparable_overlap ... ok +test app::allocation_drag::tests::full_tree::actual_app_tree_dirty_description_retains_focus_and_middle_caret_for_next_key ... ok +test app::allocation_drag::tests::full_tree::actual_app_tree_dirty_name_retains_focus_and_middle_caret_for_next_key ... ok +test app::allocation_drag::tests::full_tree::actual_app_tree_exact_incoming_drag_keeps_destination_visible_and_canvas_stable ... ok +test app::allocation_drag::tests::full_tree::actual_keyboard_arrange_shortcut_consumes_once_escape_cancels_and_dirty_owner_refuses ... ok +test app::allocation_drag::tests::full_tree::actual_rendered_canvas_pixels_do_not_change_when_toolbar_feedback_text_changes ... ok +test app::allocation_drag::tests::full_tree::actual_toolbar_hover_inspects_last_full_name_without_authorizing_an_outside_drop ... ok +test app::allocation_drag::tests::modal_roundtrip_equal_fit_undo_resize_and_focus_retire_press_before_replay ... ok +test app::allocation_drag::tests::mounted_clean_stationary_selects_exact_work_without_revision_or_legacy_apply ... ok +test app::allocation_drag::tests::mounted_dirty_port_press_cannot_fall_through_to_applying_port_selection ... ok +test app::allocation_drag::tests::mounted_dirty_property_press_does_not_select_apply_or_destroy_draft ... ok +test app::allocation_drag::tests::mounted_oa_sa_ordered_incoming_between_outgoing_are_exact_single_history_steps ... ok +test app::allocation_drag::tests::mounted_role_only_outgoing_refusal_retains_placement_and_same_performer_creates_no_allocation ... ok +test app::allocation_drag::tests::mounted_uniform_parent_moves_hidden_placements_and_assigns_only_leaves ... ok +test app::allocation_drag::tests::oa_sa_clipped_selected_header_refuses_preview_release_and_retries_without_partial_source_or_history ... ok +test app::allocation_drag::tests::oa_sa_toolbar_identity_accepts_exact_receiver_and_collapsed_header_drag ... ok +test app::allocation_drag::tests::outside_release_is_cancel_and_does_not_remove_an_assignment ... ok +test app::allocation_drag::tests::pending_behavior_draft_refuses_actual_work_press_and_equal_document_replacement_retires_packet ... ok +test app::allocation_drag::tests::release_uses_ordered_native_position_before_later_motion_in_same_batch ... ok +test app::allocation_drag::tests::same_snapped_position_on_opposite_shared_border_rebuilds_semantics_even_if_layout_refuses ... ok +test app::allocation_drag::tests::source_and_modal_admission_reject_prebuilt_clean_press_without_selecting ... ok +test app::allocation_drag::tests::source_refusal_is_atomic_and_a_new_gesture_can_retry_against_live_revision ... ok +test app::allocation_drag::tests::stale_packets_do_not_cancel_a_newer_token_and_each_release_is_consumed_once ... ok +test app::allocation_drag::tests::toolbar_destination_names_transformed_target_whose_header_is_clipped ... ok +test app::allocation_drag::tests::toolbar_status_leaves_transformed_top_edge_work_header_readable ... ok +test app::architecture_authoring::tests::architecture_allocated_work_is_root_owned_and_one_exact_history_change ... ok +test app::architecture_authoring::tests::architecture_blank_names_and_escape_never_accept_placeholder_or_rename ... ok +test app::architecture_authoring::tests::architecture_captured_escape_does_not_cancel_other_controls_or_placement ... ok +test app::architecture_authoring::tests::architecture_f2_routes_selected_node_to_inline_rename_and_exact_undo ... ok +test app::architecture_authoring::tests::architecture_first_focused_input_escape_cancels_create_and_rename ... ok +test app::architecture_authoring::tests::architecture_invalid_click_cannot_poison_inline_or_checkpoint_geometry ... ok +test app::architecture_authoring::tests::architecture_stale_submit_keeps_create_and_rename_visible_and_exact ... ok +test app::architecture_authoring_tests::architecture_cancelled_gesture_cannot_commit_a_later_named_draft ... ok +test app::architecture_authoring_tests::architecture_canvas_left_click_uses_world_coordinate_once_at_zoom_and_pan ... ok +test app::architecture_authoring_tests::architecture_checkpoint_retains_exact_name_point_and_fresh_binding_without_commands ... ok +test app::architecture_authoring_tests::architecture_context_choices_are_small_and_system_is_singleton ... ok +test app::architecture_authoring_tests::architecture_contextual_allocation_creates_work_relation_and_node_in_one_undo ... ok +test app::architecture_authoring_tests::architecture_creation_names_before_commit_preserves_camera_and_undoes_once ... ok +test app::architecture_authoring_tests::architecture_existing_inventory_is_contextual_and_placement_never_implies_allocation ... ok +test app::architecture_authoring_tests::architecture_f2_rename_preserves_identity_placement_and_atomic_history ... ok +test app::architecture_authoring_tests::architecture_name_survives_rejected_click_resize_navigation_and_escape_is_explicit ... ok +test app::architecture_authoring_tests::architecture_rejected_submission_keeps_inline_name_visible_and_invalid_click_is_ignored ... ok +test app::architecture_authoring_tests::basic_transition_explicit_overview_focus_wins_over_an_already_populated_architecture ... ok +test app::behavior_lifecycle_tests::incomplete_behavior_form_is_dirty_close_save_retains_it_and_cancel_allows_switching ... ok +test app::behavior_lifecycle_tests::passive_behavior_canvas_events_do_not_apply_property_drafts ... ok +test app::behavior_lifecycle_tests::pending_behavior_blocks_navigation_property_edits_and_model_history ... ok +test app::behavior_lifecycle_tests::pending_behavior_blocks_source_creation_and_source_history_replay ... ok +test app::behavior_lifecycle_tests::save_prepares_behavior_before_opening_destination_and_cancel_keeps_one_undo ... ok +test app::behavior_lifecycle_tests::source_writeback_failure_keeps_typed_behavior_form_for_repair_and_one_undo ... ok +test app::behavior_removal_tests::mounted_behavior_clean_inspector_click_and_tab_own_delete_then_f6_returns_to_canvas ... ok +test app::behavior_removal_tests::mounted_behavior_clean_text_focus_and_modifiers_cannot_delete_selected_occurrence ... ok +test app::behavior_removal_tests::mounted_behavior_pan_and_stale_removal_intent_do_not_delete ... ok +test app::behavior_removal_tests::mounted_behavior_tab_and_f6_retire_same_batch_delete_and_window_focus ... ok +test app::behavior_removal_tests::mounted_process_delete_occurrence_or_link_preserves_reusable_work_and_source_history ... ok +test app::behavior_removal_tests::mounted_qualified_process_child_delete_refuses_outer_reference_and_shared_definition ... ok +test app::behavior_removal_tests::mounted_scenario_delete_message_or_participant_preserves_reusable_targets ... ok +test app::behavior_removal_tests::mounted_scenario_fragment_and_branch_delete_only_owned_occurrences ... ok +test app::behavior_removal_tests::mounted_scenario_use_delete_keeps_definition_and_second_use_and_rejects_owner_replay ... ok +test app::checkpoints::tests::checkpoint_completion_releases_the_writer_while_a_context_menu_is_open ... ok +test app::checkpoints::tests::checkpoint_inline_create_and_rename_restore_focus_without_changing_drafts_or_history ... ok +test app::checkpoints::tests::checkpoint_noninline_contexts_keep_other_focus_and_still_lint ... ok +test app::checkpoints::tests::discard_and_close_waits_for_the_late_checkpoint_then_retires_it ... ok +test app::checkpoints::tests::home_resume_keeps_state_view_while_explicit_architecture_remains_reachable ... ok +test app::checkpoints::tests::home_resume_retains_invalid_source_and_property_drafts ... ok +test app::checkpoints::tests::home_resume_returns_to_each_actual_workspace_without_model_edits ... ok +test app::checkpoints::tests::malformed_checkpoint_does_not_replace_the_current_model ... ok +test app::checkpoints::tests::recent_and_recovery_navigation_respect_unsaved_decision ... ok +test app::checkpoints::tests::restored_copy_keeps_raw_property_and_requires_save_without_local_or_hosted_binding ... ok +test app::checkpoints::tests::saving_an_older_snapshot_keeps_recovery_for_newer_unsaved_work ... ok +test app::checkpoints::tests::stale_write_completion_cannot_recover_a_discarded_document ... ok +test app::checkpoints::tests::walkthrough_request_keeps_unfinished_source_behind_the_normal_pending_guard ... ok +test app::data_paging_lifecycle_tests::paging_preserves_same_context_and_resets_on_layer_or_document_replacement ... ok +test app::diagram_focus_tests::mounted_f2_requires_canvas_focus_and_yields_to_clean_inspector ... ok +test app::diagram_removal_tests::captured_confirmation_rejects_selection_document_revision_and_placement_changes ... ok +test app::diagram_removal_tests::mounted_allocation_work_click_then_delete_without_redraw_removes_placement_once ... ok +test app::diagram_removal_tests::mounted_bend_delete_has_priority_and_semantic_edge_delete_is_confirmed ... ok +test app::diagram_removal_tests::mounted_clean_text_programmatic_focus_and_tab_remove_canvas_keyboard_ownership ... ok +test app::diagram_removal_tests::mounted_inspector_can_take_focus_during_passive_save ... ok +test app::diagram_removal_tests::mounted_oa_sa_delete_hides_exact_placement_and_round_trips_source_and_model ... ok +test app::diagram_removal_tests::mounted_passive_save_never_grants_canvas_focus_or_restores_window_lost_focus ... ok +test app::diagram_removal_tests::mounted_passive_save_retires_held_canvas_drag_but_allows_a_fresh_drag ... ok +test app::diagram_removal_tests::mounted_placement_properties_selection_supports_hide_and_model_delete ... ok +test app::diagram_removal_tests::mounted_programmatic_canvas_entry_needs_no_mouse_focus_boolean ... ok +test app::diagram_removal_tests::mounted_removal_intents_reject_stale_selection_revision_owner_and_document ... ok +test app::diagram_removal_tests::mounted_revision_and_history_preserve_the_actual_canvas_or_inspector_focus_owner ... ok +test app::diagram_removal_tests::mounted_shift_delete_captures_target_cancel_escape_and_confirmation_replay ... ok +test app::diagram_removal_tests::mounted_state_action_and_internal_rows_delete_relations_and_preserve_reused_work ... ok +test app::diagram_removal_tests::mounted_state_delete_uses_state_placement_and_preserves_architecture_placement ... ok +test app::diagram_removal_tests::mounted_window_modal_dirty_and_modifier_boundaries_retire_delete_focus ... ok +test app::diagram_selection_tests::changing_visible_view_follows_its_clean_inspector_without_a_model_edit ... ok +test app::diagram_selection_tests::diagram_switch_preserves_an_independent_semantic_inspection ... ok +test app::diagram_selection_tests::diagram_uuid_edit_follows_the_same_view_or_a_different_picker_target ... ok +test app::diagram_selection_tests::invalid_view_draft_blocks_the_switch_and_retains_raw_input ... ok +test app::diagram_selection_tests::stale_diagram_choice_never_applies_an_unrelated_valid_draft ... ok +test app::diagram_selection_tests::valid_pending_view_edit_applies_to_old_view_then_inspects_the_new_view ... ok +test app::direct_scenario_tests::direct_scenario_camera_details_and_real_resize_invalidate_only_pointer_context ... ok +test app::direct_scenario_tests::direct_scenario_creation_and_reorder_preserve_selection_and_each_undo_once ... ok +test app::direct_scenario_tests::direct_scenario_rejects_every_stale_context_and_preserves_property_drafts ... ok +test app::direct_scenario_tests::direct_scenario_source_failure_and_navigation_keep_form_until_success ... ok +test app::hosted::tests::hosted_actual_app_tasks_publish_edit_conflict_correct_credentials_reload_and_open ... ok +test app::hosted::tests::hosted_catalog_invalidation_follows_service_writes_and_observed_revision_changes ... ok +test app::hosted::tests::hosted_catalog_search_credentials_and_failed_refresh_never_mix_result_scopes ... ok +test app::hosted::tests::hosted_changed_bound_head_does_not_invalidate_another_services_empty_filter ... ok +test app::hosted::tests::hosted_conflict_fetches_review_without_adoption_and_reload_is_undoable ... ok +test app::hosted::tests::hosted_detached_drafts_and_recovery_remain_available_after_rejected_publish ... ok +test app::hosted::tests::hosted_failed_cross_service_publication_checks_and_reloads_its_own_resource ... ok +test app::hosted::tests::hosted_failed_or_cancelled_local_open_keeps_the_existing_document_and_destination ... ok +test app::hosted::tests::hosted_invalid_and_detached_source_drafts_never_start_network_writes ... ok +test app::hosted::tests::hosted_invalid_local_open_repair_saves_locally_and_never_replaces_old_resource ... ok +test app::hosted::tests::hosted_modal_blocks_underlying_edits_and_credentials_are_redacted ... ok +test app::hosted::tests::hosted_new_revision_invalidates_filtered_catalog_even_without_a_displayed_row ... ok +test app::hosted::tests::hosted_only_successful_source_save_as_changes_the_active_destination ... ok +test app::hosted::tests::hosted_open_waits_for_unsaved_guard_and_failed_open_preserves_current_document ... ok +test app::hosted::tests::hosted_publish_acknowledges_only_the_sent_snapshot_and_retains_undo ... ok +test app::hosted::tests::hosted_stale_completions_do_not_clear_current_busy_or_adopt_another_document ... ok +test app::hosted::tests::hosted_unknown_save_is_acknowledged_by_exact_readback_without_retry ... ok +test app::lint_tests::committed_check_cache_follows_edit_and_undo_while_drafts_stay_separate ... ok +test app::lint_tests::lint_coalesces_work_and_rejects_obsolete_results ... ok +test app::lint_tests::prior_document_lint_cannot_enter_reopened_model_or_block_next_checks ... ok +test app::port_view_tests::catalog_creation_follows_the_new_port_and_keeps_group_browsing_explicit ... ok +test app::port_view_tests::filtered_active_view_cannot_hide_a_created_port_when_eligible_owner_view_is_folded ... ok +test app::process_canvas::direct_process_dirty_source_blocks_canvas_creation_without_losing_text ... ok +test app::process_canvas::tests::direct_process_app_open_source_and_back_preserve_local_reference_identity ... ok +test app::process_canvas::tests::direct_process_app_same_owner_selection_preserves_tool_but_owner_change_resets_it ... ok +test app::process_canvas::tests::direct_process_app_save_details_resize_and_passive_geometry_keep_drafts_and_camera ... ok +test app::process_canvas::tests::direct_process_app_source_failure_retains_form_then_commits_once_and_selects_occurrence ... ok +test app::process_canvas::tests::direct_process_app_stale_context_dirty_source_and_properties_never_mutate ... ok +test app::process_canvas::tests::direct_process_append_empty_first_second_exchange_has_exact_source_history ... ok +test app::process_canvas::tests::process_zoom_retains_rejected_draft_and_guards_selection ... ok +test app::reference_authoring::tests::chooser_rejects_old_results_after_context_recovery_reload_or_modal_and_keeps_history_text_out ... ok +test app::reference_authoring::tests::inspector_reference_browse_is_read_only_then_one_scoped_value_applies_with_exact_undo_redo ... ok +test app::reference_authoring::tests::inspector_reference_retains_invalid_missing_and_incompatible_current_until_explicit_clear ... ok +test app::reference_authoring::tests::mounted::mounted_delayed_return_cannot_focus_under_review_and_fresh_modal_tab_owns_its_form ... ok +test app::reference_authoring::tests::mounted::mounted_form_tab_enters_in_both_directions_and_cycles_boundaries_without_losing_focus ... ok +test app::reference_authoring::tests::mounted::mounted_fresh_tab_reveals_offscreen_reference_and_return_reveals_it_again ... ok +test app::reference_authoring::tests::mounted::mounted_reference_choice_stages_literal_identity_and_delayed_focus_cannot_hit_replacement_field ... ok +test app::reference_authoring::tests::mounted::mounted_reference_trigger_tabs_to_root_popup_search_escape_and_exact_adjacent_fields ... ok +test app::reference_authoring::tests::mounted::mounted_reverse_review_required_rationale_remains_editable_beside_candidate_reference_form ... ok +test app::reference_authoring::tests::mounted::mounted_review_pointer_open_and_outside_dismissal_keep_background_input_inactive ... ok +test app::reference_authoring::tests::mounted::mounted_scrolled_reference_anchor_uses_window_geometry_for_pointer_and_keyboard ... ok +test app::reference_authoring::tests::reference_array_row_reorder_and_constructor_switch_invalidate_exact_old_field ... ok +test app::reference_authoring::tests::review_reference_cannot_reopen_or_write_a_banked_row_after_another_row_takes_focus ... ok +test app::reference_authoring::tests::review_reference_facets_groups_and_attachment_hosts_browse_without_replanning_and_reject_old_facet ... ok +test app::repair_save_state_tests::recovering_applied_repair_rebinds_rolled_back_disk_bytes_without_changing_model ... ok +test app::repair_save_state_tests::recovery_missing_entry_or_failed_reload_preserves_current_destination_save_authority ... ok +test app::repair_save_state_tests::repair_history_compares_to_new_disk_baseline_and_then_successful_save ... ok +test app::repair_save_state_tests::repair_to_previous_saved_bytes_requires_save_at_new_destination_and_guards_close ... ok +test app::repair_save_state_tests::valid_equal_content_at_distinct_destinations_stays_clean ... ok +test app::review_navigation_tests::rejected_semantic_source_writeback_retains_review_camera_and_original_navigation ... ok +test app::review_navigation_tests::review_already_showing_the_target_keeps_its_camera_and_query ... ok +test app::review_navigation_tests::semantic_name_take_selects_the_counterpart_view_in_both_directions_with_one_exact_history_entry ... ok +test app::review_navigation_tests::semantic_review_without_a_destination_view_clears_the_old_layer_canvas_without_creating_a_view ... ok +test app::save_as_tests::save_as_late_receipt_preserves_newer_raw_source_draft_and_destination ... ok +test app::save_as_tests::save_as_preflight_rejects_historical_collision_before_starting_io ... ok +test app::save_as_tests::save_as_receipt_then_one_undo_restores_meaning_and_saving_preserves_redo ... ok +test app::source_project_tests::closed_detached_file_keeps_first_save_conflict_then_can_be_reloaded_fresh ... ok +test app::source_project_tests::inactive_invalid_draft_blocks_graphical_changes_and_diagnostic_switches_files ... ok +test app::source_project_tests::json_export_and_rejected_save_as_preserve_source_location_history_and_bytes ... ok +test app::source_project_tests::missing_include_open_keeps_old_model_and_can_be_repaired_and_saved ... ok +test app::source_project_tests::recovery_after_first_save_failure_retains_target_then_retries_without_reentering_path ... ok +test app::source_project_tests::recovery_of_previous_save_as_target_does_not_redirect_current_project ... ok +test app::source_project_tests::recovery_open_finds_first_save_journal_without_an_entry_file ... ok +test app::source_project_tests::recovery_target_survives_edit_lint_apply_and_rejected_recovery_until_success ... ok +test app::source_project_tests::source3_native_open_preserves_report_comments_nesting_and_save_reopen ... ok +test app::source_project_tests::two_file_apply_graphical_edit_exact_undo_save_as_and_reopen ... ok +test app::state_diagram_tests::all_context_dimensions_reject_stale_selection_camera_and_model_messages ... ok +test app::state_diagram_tests::create_view_places_only_its_machine_and_restores_exact_source_in_one_undo ... ok +test app::state_diagram_tests::direct_create_connect_select_and_move_keep_semantic_identity_and_atomic_history ... ok +test app::state_diagram_tests::fallback_owner_first_selection_keeps_the_captured_context_for_its_first_move ... ok +test app::state_diagram_tests::pending_drafts_block_every_direct_mutation_and_passive_camera_preserves_inputs ... ok +test app::state_diagram_tests::real_view_tool_and_history_changes_invalidate_old_release_events ... ok +test app::state_diagram_tests::rejected_creation_keeps_source_and_selection_then_valid_owner_can_retry ... ok +test app::state_diagram_tests::same_size_viewport_after_revision_or_tool_epoch_does_not_refit_the_camera ... ok +test app::state_diagram_tests::shared_semantic_states_keep_architecture_and_behavior_placements_independent ... ok +test app::state_diagram_tests::state_diagram_routes_constructor_and_source_open_to_the_existing_workspace_without_edits ... ok +test app::state_diagram_tests::state_diagram_routes_picker_and_reveal_but_explicit_architecture_does_not_bounce ... ok +test app::state_diagram_tests::state_diagram_routes_preserve_selected_raw_properties_and_pending_behavior_guards ... ok +test app::state_diagram_tests::state_navigation_catalog_selection_across_layers_resets_camera_and_tool ... ok +test app::state_diagram_tests::state_navigation_catalog_selection_of_another_machine_resets_camera_and_tool ... ok +test app::state_diagram_tests::state_navigation_layer_change_resets_the_new_machine_at_the_same_viewport_size ... ok +test app::state_diagram_tests::state_navigation_return_to_the_same_view_preserves_camera_tool_and_fit_mode ... ok +test app::state_diagram_tests::state_navigation_root_event_and_same_layer_keep_the_current_camera_and_tool ... ok +test app::transition_context_tests::explicit_behavior_internal_and_process_roots_keep_their_workspace_without_creating_a_view ... ok +test app::transition_context_tests::explicit_destination_is_honored_and_ordinary_work_transition_still_places_in_architecture ... ok +test app::transition_context_tests::machine_and_typed_action_transitions_resolve_the_owner_and_reusing_that_context_retains_camera ... ok +test app::transition_context_tests::rejected_source_writeback_keeps_review_and_navigation_and_invalid_draft_still_blocks_start ... ok +test app::transition_context_tests::scenario_transition_focuses_requested_counterpart_and_preserves_unrelated_views_in_both_directions ... ok +test app::view_copy_tests::copying_architecture_keeps_architecture_even_with_a_retained_state_view ... ok +test app::view_copy_tests::copying_the_current_state_view_uses_its_own_identity_and_is_one_source_undo ... ok +test app::view_copy_tests::duplicate_rejection_preserves_an_incomplete_source_buffer ... ok +test app::view_copy_tests::duplicate_rejection_preserves_invalid_property_and_pending_behavior_drafts ... ok +test app::view_copy_tests::stale_copy_does_not_apply_an_unrelated_valid_property_draft ... ok +test behavior::canvas_workspace::tests::relative_camera_zoom_keeps_the_cursor_world_point_and_rejects_nonfinite_inputs ... ok +test behavior::canvas_workspace::tests::viewport_ordered_batch_uses_each_event_position_and_cancels_before_camera_motion ... ok +test behavior::contextual_source_tests::contextual_source_app_checkpoint_restores_inner_raw_draft_without_model_adoption ... ok +test behavior::contextual_source_tests::contextual_source_app_empty_actions_and_child_open_refuse_other_raw_editors ... ok +test behavior::contextual_source_tests::contextual_source_app_modal_escape_then_child_back_then_parent_cancel_preserve_accepted_source ... ok +test behavior::contextual_source_tests::contextual_source_back_remains_available_after_owner_deletion_and_with_dirty_editors ... ok +test behavior::contextual_source_tests::contextual_source_back_retains_parent_and_rejects_late_child_event ... ok +test behavior::contextual_source_tests::contextual_source_default_consumer_name_has_stable_alias_and_correlated_selection ... ok +test behavior::contextual_source_tests::contextual_source_deleted_owner_view_retains_draft_instead_of_panicking_or_using_fallback ... ok +test behavior::contextual_source_tests::contextual_source_empty_history_reports_no_change_and_success_requires_a_real_history_step ... ok +test behavior::contextual_source_tests::contextual_source_empty_palette_lifeline_cannot_open_a_previous_owner_or_layer ... ok +test behavior::contextual_source_tests::contextual_source_existing_choice_prunes_staged_dependency ... ok +test behavior::contextual_source_tests::contextual_source_failed_source_budget_preserves_both_drafts_and_accepted_bytes ... ok +test behavior::contextual_source_tests::contextual_source_incomplete_recovered_kind_reports_error_without_panicking ... ok +test behavior::contextual_source_tests::contextual_source_inserts_work_on_the_exact_guarded_link_and_refuses_exchange_identity_conflict ... ok +test behavior::contextual_source_tests::contextual_source_lifelines_stage_exact_separate_records_and_one_history_entry ... ok +test behavior::contextual_source_tests::contextual_source_machine_before_any_owner_creates_optional_view_atomically ... ok +test behavior::contextual_source_tests::contextual_source_mounted_small_editor_keeps_back_and_use_outside_field_scroll ... ok +test behavior::contextual_source_tests::contextual_source_nested_semantic_parent_is_explicit_and_revalidated ... ok +test behavior::contextual_source_tests::contextual_source_new_callee_lifeline_preserves_caller_bindings_as_an_explicit_warning ... ok +test behavior::contextual_source_tests::contextual_source_original_document_remains_bound_after_back_or_choosing_existing ... ok +test behavior::contextual_source_tests::contextual_source_owner_first_can_return_to_an_unnamed_machine_without_losing_source ... ok +test behavior::contextual_source_tests::contextual_source_recovery_keeps_inner_raw_fields_and_refuses_deleted_or_changed_owner ... ok +test behavior::contextual_source_tests::contextual_source_second_system_and_role_machine_owner_refuse_without_fallback ... ok +test behavior::contextual_source_tests::contextual_source_work_uses_reserved_contribution_and_link_ids_and_one_undo ... ok +test behavior::creation::app_tests::app_choosing_another_behavior_or_layer_cannot_commit_a_creation_draft ... ok +test behavior::creation::app_tests::app_creation_opens_the_actual_new_owner_instead_of_first_or_previously_active_behavior ... ok +test behavior::creation::app_tests::app_first_captured_escape_dismisses_file_or_pending_overlay_before_creation ... ok +test behavior::creation::app_tests::app_lesson_request_cancel_retains_creation_then_escape_discards_only_the_draft ... ok +test behavior::creation::app_tests::app_machine_behavior_submit_opens_its_opted_in_view_as_one_undoable_transaction ... ok +test behavior::creation::app_tests::app_new_never_auto_applies_valid_or_invalid_property_and_source_drafts ... ok +test behavior::creation::app_tests::app_recovered_rootless_sa_creation_retains_layer_ids_and_other_raw_drafts ... ok +test behavior::creation::app_tests::app_stale_layer_open_never_starts_or_replaces_a_draft ... ok +test behavior::creation::tests::all_four_viewpoints_are_explicit_and_survive_source_history_reopen ... ok +test behavior::creation::tests::cancel_and_illegal_family_layer_switches_never_create_model_objects ... ok +test behavior::creation::tests::corrupted_recovery_and_reserved_identity_collision_refuse_without_repairing_raw_values ... ok +test behavior::creation::tests::creation_selection_rejects_changed_scenario_body_and_post_creation_operations ... ok +test behavior::creation::tests::machine_requires_valid_owner_and_first_view_adds_no_region_or_state ... ok +test behavior::creation::tests::mounted_creation_keeps_actions_visible_and_renders_only_six_owner_candidates ... ok +test behavior::creation::tests::oa_process_and_sa_chain_keep_exact_names_root_ownership_and_one_history_entry ... ok +test behavior::creation::tests::optional_context_collapses_without_losing_authored_reference_or_raw_search ... ok +test behavior::creation::tests::owner_search_is_name_ordered_filtered_and_page_sized_not_a_catalog ... ok +test behavior::creation::tests::post_commit_selection_is_correlated_with_exact_created_behavior_and_view ... ok +test behavior::creation::tests::recovery_preserves_exact_raw_inputs_reserved_ids_and_revalidates_stale_owner ... ok +test behavior::creation::tests::rejected_source_transaction_keeps_draft_and_every_accepted_source_byte ... ok +test behavior::creation::tests::repeated_owner_names_remain_distinguishable_by_searchable_parent_context_and_alias ... ok +test behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand ... ok +test behavior::direct_canvas_tests::direct_bounds_change_during_held_drag_never_commits_old_slot ... ok +test behavior::direct_canvas_tests::direct_clicked_occurrence_capture_cancels_on_view_and_context_changes ... ok +test behavior::direct_canvas_tests::direct_context_escape_unfocus_and_pending_form_cancel_gestures ... ok +test behavior::direct_canvas_tests::direct_drag_and_click_click_use_ordered_sources_and_publish_once ... ok +test behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call ... ok +test behavior::direct_canvas_tests::direct_panned_canvas_maps_ordered_pointer_events_to_the_visible_slot ... ok +test behavior::direct_canvas_tests::direct_scroll_resize_and_bounds_changes_cancel_captured_slots ... ok +test behavior::direct_canvas_tests::direct_selected_handle_reorders_and_hits_keep_semantic_identity ... ok +test behavior::direct_canvas_tests::reused_exchange_messages_display_their_distinct_occurrence_names ... ok +test behavior::scenario::data_contract_tests::large_payload_has_one_editor_with_reachable_field_and_authored_pages ... ok +test behavior::scenario::data_contract_tests::recursive_browsing_up_and_root_keep_values_and_report_the_depth_limit ... ok +test behavior::scenario::data_contract_tests::recursive_value_focus_exposes_authored_leaf_and_phase_changes_retain_surviving_keys ... ok +test behavior::scenario::data_contract_tests::reply_call_picker_previews_the_same_value_reset_as_selecting_another_exchange ... ok +test behavior::scenario::data_contract_tests::scenario_form_commits_two_reused_record_values_and_correlated_reply_atomically ... ok +test behavior::scenario::direct_tests::direct_busy_save_keeps_details_current_and_camera_for_the_next_pointer_gesture ... ok +test behavior::scenario::direct_tests::direct_clicked_occurrence_rejects_stale_slots_and_retains_recoverable_drafts ... ok +test behavior::scenario::direct_tests::direct_clicked_occurrences_use_root_and_operand_slots_with_exact_source_history ... ok +test behavior::scenario::direct_tests::direct_exchange_compatibility_browsing_preserves_final_slot_validation ... ok +test behavior::scenario::direct_tests::direct_exchange_picker_is_bounded_and_browsing_keeps_pending_values ... ok +test behavior::scenario::direct_tests::direct_five_hundred_exchange_choice_render_probe ... ok +test behavior::scenario::direct_tests::direct_form_keeps_the_same_canvas_in_the_widget_tree ... ok +test behavior::scenario::direct_tests::direct_middle_pair_insertion_is_one_exact_source_and_model_undo ... ok +test behavior::scenario::direct_tests::direct_operand_pair_keeps_parent_sequence_and_cannot_reorder_across_operands ... ok +test behavior::scenario::direct_tests::direct_reply_choices_cache_keeps_typing_fast_and_revalidates_changed_contexts ... ok +test behavior::scenario::direct_tests::direct_reply_choices_validate_the_actual_slot_and_reorder_rejects_reverse_order ... ok +test behavior::scenario::direct_tests::direct_scenario_reference_navigation_blocks_pending_drafts_and_stale_contexts ... ok +test behavior::scenario::direct_tests::direct_scenario_reference_navigation_retains_each_exact_caller_without_history ... ok +test behavior::scenario::direct_tests::direct_scenario_reference_return_survives_rename_and_rejects_deleted_or_changed_use ... ok +test behavior::scenario::operation_tests::operation_gui_async_picker_uses_request_root_and_nested_directions_without_erasing_rejected_values ... ok +test behavior::scenario::operation_tests::operation_gui_selects_two_parameterless_allocations_without_inventing_refinement_and_reply_derives_call ... ok +test behavior::scenario::operation_tests::operation_gui_unresolved_and_disabled_selection_recovery_preserves_rejected_raw_values ... ok +test behavior::scenario::tests::fragment_operands_accept_paired_messages_through_normal_destination_picker ... ok +test behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent ... FAILED +test behavior::scenario::tests::invalid_lifecycle_edit_keeps_draft_and_timer_has_no_global_exchange ... ok +test behavior::scenario::tests::lifeline_picker_uses_core_viewpoint_contract ... ok +test behavior::scenario::tests::reverse_communication_canvas_choices_and_correlated_reply_share_core_direction ... ok +test behavior::scenario::tests::scenario_reuse_requires_explicit_compatible_bindings ... ok +test behavior::scenario::tests::tagged_scenario_commit_is_not_redirected_by_other_editor_events ... ok +test behavior::scenario::workspace::tests::new_scenario_form_resets_only_its_scroll_and_recovery_gets_a_fresh_session ... ok +test behavior::scenario::workspace::tests::production_empty_scenario_lifeline_tool_keeps_staged_source_inside_stable_canvas ... ok +test behavior::scenario::workspace::tests::production_scenario_camera_external_controls_bounds_and_retained_deltas_cancel_old_drags ... ok +test behavior::scenario::workspace::tests::production_scenario_canvas_keeps_bounds_draft_identity_and_camera_through_editing ... ok +test behavior::scenario::workspace::tests::production_scenario_canvas_pan_invalidates_a_pressed_creation_and_caller_restores_once ... ok +test behavior::scenario::workspace::tests::production_scenario_keyboard_enters_activates_draws_focus_and_returns_to_inspector ... ok +test behavior::scenario::workspace::tests::production_scenario_keyboard_reveals_and_activates_initially_offscreen_last_tool ... ok +test behavior::scenario::workspace::tests::production_scenario_retained_toolbar_intents_reject_chooser_dirty_and_picker_lifetimes ... ok +test behavior::scenario::workspace::tests::production_scenario_whole_glyph_drag_moves_one_occurrence_and_rejects_other_operand ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_chained_apply_rechecks_live_review_owner ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_missing_exact_target_leaves_other_inputs_untouched ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_returns_from_back_use_and_escape_after_initial_focus_is_consumed ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_saved_action_is_inert_on_replacement_child_review_and_changed_context ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_targets_the_name_and_rejects_stale_sessions_or_modals ... ok +test behavior::scenario::workspace::tests::scenario_workspace_choosing_tools_preserves_valid_and_invalid_pending_editors ... ok +test behavior::scenario::workspace::tests::scenario_workspace_fit_uses_measured_inner_viewport_and_rejects_nonfinite_inputs ... ok +test behavior::scenario::workspace::tests::scenario_workspace_open_and_back_restore_owner_and_mounted_camera_after_preselection ... ok +test behavior::scenario::workspace::tests::scenario_workspace_same_size_owner_and_document_changes_remeasure_fit_viewport ... ok +test behavior::scenario::workspace::tests::scenario_workspace_scaled_and_panned_scene_keeps_clicked_slots_and_message_endpoints ... ok +test behavior::scenario::workspace::tests::scenario_workspace_scaled_nested_occurrences_and_reorder_keep_exact_sequence_identity ... ok +test behavior::scenario::workspace::tests::scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_forms ... ok +test behavior::scenario_activation::tests::a_fragment_cannot_make_crossed_calls_an_unambiguous_caller_execution ... ok +test behavior::scenario_activation::tests::actual_canvas_pointer_selects_each_exposed_shoulder_under_zoom_and_pan ... ok +test behavior::scenario_activation::tests::alternative_and_parallel_operand_local_calls_do_not_nest_from_screen_order ... ok +test behavior::scenario_activation::tests::an_inactive_self_call_has_no_fabricated_parent_and_three_nested_calls_expose_three_columns ... ok +test behavior::scenario_activation::tests::call_uuid_order_does_not_choose_activation_columns_or_message_anchors ... ok +test behavior::scenario_activation::tests::inherited_execution_anchors_a_self_call_inside_an_operand_before_returning_after_the_fragment ... ok +test behavior::scenario_activation::tests::missing_reply_is_a_short_explicit_open_span_and_an_uncorrelated_reply_closes_nothing ... ok +test behavior::scenario_activation::tests::nested_calls_expose_both_bars_and_end_at_their_exact_replies_in_both_directions ... ok +test behavior::scenario_activation::tests::nested_correlations_returning_in_alternative_operands_remain_nested_before_the_fragment ... ok +test behavior::scenario_activation::tests::reentrant_call_uses_the_other_receiver_without_inventing_a_caller_execution ... ok +test behavior::scenario_activation::tests::self_call_receives_at_lower_loop_end_and_self_reply_returns_to_the_parent ... ok +test behavior::scenario_activation::tests::sequential_calls_reuse_column_and_crossed_replies_keep_their_correlations ... ok +test behavior::scenario_lifecycle::tests::alternative_death_does_not_kill_its_displayed_sibling ... ok +test behavior::scenario_lifecycle::tests::conditional_birth_does_not_infer_absence_in_siblings_or_ancestors ... ok +test behavior::scenario_lifecycle::tests::explicit_receiver_is_authoritative_even_with_missing_exchange ... ok +test behavior::scenario_lifecycle::tests::lifecycle_free_fragments_do_not_poison_other_lanes ... ok +test behavior::scenario_lifecycle::tests::loop_lifetime_is_local_and_warning_bearing_loops_remain_drawable ... ok +test behavior::scenario_lifecycle::tests::missing_geometry_is_reported_without_nonfinite_or_guessed_markers ... ok +test behavior::scenario_lifecycle::tests::optional_cleanup_inside_loop_does_not_claim_balanced_or_definite_exit ... ok +test behavior::scenario_lifecycle::tests::projection_retains_exact_authored_source_and_does_not_enter_history ... ok +test behavior::scenario_lifecycle::tests::root_lifetime_has_exact_birth_death_boundaries_without_source_mutation ... ok +test behavior::scenario_lifecycle::tests::scenario_use_is_opaque_and_never_imports_callee_lifecycle_events ... ok +test behavior::scenario_scroll::tests::direct_scenario_caller_restores_mounted_scroll_once_with_clamping_and_app_receipt ... ok +test behavior::scenario_scroll::tests::direct_scenario_restore_cannot_scroll_another_document_owner_or_process_view ... ok +test behavior::scenario_scroll::tests::direct_scroll_mounted_identity_resets_navigation_but_preserves_edits_before_first_report ... ok +test behavior::scenario_scroll::tests::direct_scroll_observer_reports_actual_initial_clamped_and_remounted_offsets_once ... ok +test behavior::scenario_scroll::tests::independent_process_owner_change_resets_actual_scroll_offsets ... ok +test behavior::state_canvas::tests::context_menu_keeps_window_anchor_and_explicit_placement_identity ... ok +test behavior::state_canvas::tests::context_tool_and_pending_form_changes_cancel_mutating_gestures ... ok +test behavior::state_canvas::tests::creation_uses_the_explicit_deepest_owner_and_never_a_fallback_ancestor ... ok +test behavior::state_canvas::tests::drag_uses_ordered_release_at_each_zoom_and_moves_descendants_in_one_undo ... ok +test behavior::state_canvas::tests::escape_and_view_switch_discard_the_armed_transition_source ... ok +test behavior::state_canvas::tests::internal_rows_and_pseudostate_hits_use_shared_persisted_geometry ... ok +test behavior::state_canvas::tests::ordered_stationary_click_does_not_move_on_later_motion_in_the_same_batch ... ok +test behavior::state_canvas::tests::pan_is_button_scoped_read_only_and_hover_does_not_reproject_the_scene ... ok +test behavior::state_canvas::tests::pseudostate_names_avoid_rightward_and_downward_routes_and_share_hit_bounds ... ok +test behavior::state_canvas::tests::relayout_does_not_turn_a_transition_click_into_a_drag_or_pan ... ok +test behavior::state_canvas::tests::selected_endpoint_reconnect_preserves_identity_and_requires_handle_motion ... ok +test behavior::state_canvas::tests::selection_relayout_does_not_move_nodes_or_change_drag_distance ... ok +test behavior::state_canvas::tests::stacked_symbol_names_avoid_each_other_and_are_independent_of_input_order ... ok +test behavior::state_canvas::tests::transition_supports_click_click_and_drag_without_coalesced_accidental_edges ... ok +test behavior::state_canvas::tests::typed_state_actions_are_named_selectable_rows_before_internal_transitions_and_regions ... ok +test behavior::state_canvas::tests::viewport_uses_full_canvas_coordinates_and_republishes_for_a_new_context ... ok +test behavior::state_edit::tests::an_empty_machine_has_an_explicit_visible_owner_for_first_region_creation ... ok +test behavior::state_edit::tests::connect_preserves_self_loops_and_rejects_hidden_or_incompatible_vertices ... ok +test behavior::state_edit::tests::creation_places_missing_ancestry_and_unfolds_existing_owners_atomically ... ok +test behavior::state_edit::tests::every_context_component_and_invalid_ownership_are_checked_before_planning ... ok +test behavior::state_edit::tests::placing_existing_content_and_moving_a_folded_group_preserve_other_views_and_semantics ... ok +test behavior::state_edit::tests::reconnect_preserves_the_complete_record_and_replaces_cardinality_in_place ... ok +test behavior::state_edit::tests::view_initializes_only_its_machine_in_one_source_and_model_history_entry ... ok +test behavior::states::tests::internal_choice_targets_self_and_edit_preserves_identity_and_description ... ok +test behavior::states::tests::invalid_pseudo_trigger_keeps_draft_and_does_not_create_orphan_event ... ok +test behavior::states::tests::selected_composite_owns_new_region_and_history_uses_selected_region ... ok +test behavior::states::tests::timeout_and_work_trigger_commit_together_roundtrip_and_undo ... ok +test behavior::tests::failed_document_commit_retains_typed_transition_and_time_event_for_repair ... ok +test behavior::tests::legacy_process_and_chain_keep_their_ordered_exchange_scene ... ok +test behavior::tests::one_behavior_form_survives_start_edit_and_unrelated_cancel_until_commit ... ok +test behavior::tests::recovery_preserves_distinct_qualified_value_paths_and_rejects_invalid_payload_atomically ... ok +test behavior::tests::recovery_retains_each_incomplete_behavior_form_without_executing_it ... ok +test behavior::tests::selecting_state_transition_keeps_its_behavior_context ... ok +test behavior::topology::contextual::tests::qualified_link_gui_deleted_transient_selection_does_not_seed_or_hide_retained_authored_endpoint ... ok +test behavior::topology::contextual::tests::qualified_link_gui_nested_preview_folds_only_the_exact_reference_instance ... ok +test behavior::topology::contextual::tests::qualified_link_gui_rejected_endpoint_keeps_exact_raw_intent_after_recovery ... ok +test behavior::topology::contextual::tests::qualified_link_gui_repeated_sources_remain_distinct_and_apply_has_exact_source_history ... ok +test behavior::topology::contextual::tests::qualified_link_gui_scope_paging_and_search_reach_tail_beyond_512_without_losing_endpoints ... ok +test behavior::topology::contextual_routing::tests::contextual_route_native_x_to_first_b_keeps_visible_arrow_above_background_and_clear_of_other_references ... ok +test behavior::topology::contextual_routing::tests::contextual_route_nested_visible_hidden_and_parallel_paths_keep_exact_addresses_and_legacy_routes ... ok +test behavior::topology::contextual_routing::tests::contextual_route_shared_anchor_preserves_selected_direct_reconnect_at_fit_and_full_scale ... ok +test behavior::topology::direct_tests::direct_process_append_preserves_existing_order_and_rejects_incompatible_exchange ... ok +test behavior::topology::direct_tests::direct_process_controls_allow_incomplete_work_and_preserve_branch_semantics ... ok +test behavior::topology::direct_tests::direct_process_empty_first_and_second_exchange_keep_the_same_interactive_renderer ... ok +test behavior::topology::direct_tests::direct_process_imported_order_is_projected_without_mutation_and_first_canvas_edit_is_atomic ... ok +test behavior::topology::direct_tests::direct_process_incompatible_imported_order_rejects_conversion_without_losing_draft ... ok +test behavior::topology::direct_tests::direct_process_nested_source_reopen_and_api_command_use_one_transaction ... ok +test behavior::topology::direct_tests::direct_process_oa_sa_repeated_occurrences_share_sources_and_split_one_guarded_link ... ok +test behavior::topology::direct_tests::direct_process_palette_preserves_fit_and_manual_camera ... ok +test behavior::topology::direct_tests::direct_process_production_click_click_drag_insert_and_camera_coordinates ... ok +test behavior::topology::direct_tests::direct_process_production_endpoint_and_peer_reorder_handles_publish_exact_identity ... ok +test behavior::topology::direct_tests::direct_process_production_stale_focus_scroll_bounds_and_pending_cancel ... ok +test behavior::topology::direct_tests::direct_process_readable_default_fit_expansion_and_bounded_choices ... ok +test behavior::topology::direct_tests::direct_process_real_picker_stays_bounded_and_search_keeps_selection ... ok +test behavior::topology::direct_tests::direct_process_reconnect_delete_and_reorder_preserve_other_paths_and_sources ... ok +test behavior::topology::direct_tests::direct_process_reuse_preview_is_local_expandable_and_recursive_sources_are_rejected ... ok +test behavior::topology::direct_tests::direct_process_scaled_control_and_link_gestures_use_visible_positions ... ok +test behavior::topology::direct_tests::direct_process_specific_parallel_link_and_incompatible_adjacency ... ok +test behavior::topology::direct_tests::direct_process_three_ordered_exchanges_preserve_outer_paths_on_insertion ... ok +test behavior::topology::tests::cycle_projection_terminates_and_retains_actual_links ... ok +test behavior::topology::tests::empty_process_can_start_through_normal_authoring_events ... ok +test behavior::topology::tests::fitting_a_branch_keeps_all_nodes_visible_and_selection_uses_scaled_coordinates ... ok +test behavior::topology::tests::guarded_branch_is_one_transaction_with_distinct_source_identities ... ok +test behavior::topology::tests::insertion_picker_only_offers_work_matching_adjacent_exchanges ... ok +test behavior::topology::tests::legacy_branch_insertion_replaces_only_the_selected_implied_link ... ok +test behavior::topology::tests::legacy_edit_preserves_order_and_new_work_in_one_undo ... ok +test behavior::topology::tests::long_engineering_identifiers_stay_inside_label_width ... ok +test behavior::topology::tests::process_camera_selection_ignores_independent_details_scroll ... ok +test behavior::topology::tests::process_fit_uses_measured_height_and_reports_minimum_without_changing_manual_zoom ... ok +test behavior::topology::tests::process_zoom_and_disclosures_preserve_rejected_raw_draft_and_accepted_source ... ok +test behavior::topology::tests::reusable_preview_preserves_identity_and_filters_recursive_sources ... ok +test behavior::topology::tests::stale_or_invalid_submit_preserves_inputs_and_creates_nothing ... ok +test behavior::topology::tests::unlinked_contributions_do_not_gain_fictional_edges ... ok +test behavior::topology::view::layout_tests::production_canvas_keyboard_and_delayed_tasks_respect_real_chooser_and_review_owners ... ok +test behavior::topology::view::layout_tests::production_process_caller_return_rejects_its_previous_camera_lifetime ... ok +test behavior::topology::view::layout_tests::production_process_camera_external_controls_bounds_and_retained_deltas_cancel_old_drags ... ok +test behavior::topology::view::layout_tests::production_process_canvas_focus_wheel_fit_and_stale_camera_are_presentation_only ... ok +test behavior::topology::view::layout_tests::production_process_canvas_scaled_path_creation_preserves_source_and_editor_bounds ... ok +test behavior::topology::view::layout_tests::production_process_form_replacement_resets_scroll_without_a_closed_render ... ok +test behavior::topology::view::layout_tests::production_process_keyboard_enters_activates_draws_focus_and_returns_to_inspector ... ok +test behavior::topology::view::layout_tests::production_process_keyboard_reveals_and_activates_initially_offscreen_last_tool ... ok +test behavior::topology::view::layout_tests::production_process_retained_toolbar_intents_reject_chooser_dirty_and_picker_lifetimes ... ok +test connection_edit::tests::cancel_navigation_revision_and_dirty_drafts_cannot_commit_a_stale_connection ... ok +test connection_edit::tests::visible_endpoint_drawing_commits_ports_and_exchange_once_with_exact_history ... ok +test connection_tool::tests::boundary_candidates_match_core_orientation_and_reject_same_owner_or_mixed_kind ... ok +test connection_tool::tests::boundary_feasibility_keeps_interface_warnings_and_final_carried_item_checks ... ok +test connection_tool::tests::boundary_feasibility_rejects_dangling_identity_in_a_malformed_element_map ... ok +test connection_tool::tests::direct_connections_share_exact_source_history_and_model_parity ... ok +test connection_tool::tests::explicit_function_ports_keep_owners_contracts_and_do_not_invent_carried_items ... ok +test connection_tool::tests::final_command_validation_rejects_invalid_models_without_mutation ... ok +test connection_tool::tests::function_cards_use_unique_reuse_and_atomic_generation_when_ambiguous ... ok +test connection_tool::tests::mismatched_port_owners_layers_and_contract_kinds_are_not_candidates ... ok +test connection_tool::tests::operational_communication_uses_participants_without_creating_ports ... ok +test connection_tool::tests::operational_interaction_targets_only_distinct_oa_activities ... ok +test context_menu::tests::a_new_context_token_cannot_reuse_the_previous_mouse_press_or_scroll ... ok +test context_menu::tests::actions_area_does_not_swallow_first_independent_click_after_overlay_consumed_its_release ... ok +test context_menu::tests::anchors_outside_the_window_and_nonfinite_input_stay_bounded ... ok +test context_menu::tests::clicking_disabled_or_dragging_off_an_action_never_executes_it ... ok +test context_menu::tests::coalesced_dismissal_release_does_not_swallow_the_next_independent_click ... ok +test context_menu::tests::empty_and_disabled_only_menus_still_capture_keys_and_escape_closes ... ok +test context_menu::tests::keyboard_skips_headers_separators_and_disabled_actions_and_invokes_once ... ok +test context_menu::tests::outside_dismissal_consumes_press_and_release_across_controlled_close ... ok +test context_menu::tests::reconstructed_overlay_uses_retained_layout_for_rows_and_hit_testing ... ok +test context_menu::tests::retained_overlay_layout_keeps_measured_width_and_scrollbar_after_reconstruction ... ok +test context_menu::tests::tall_menu_clamps_to_viewport_and_keyboard_wheel_and_scrollbar_reach_the_end ... ok +test data_values::tests::phase_choices_keep_reused_record_addresses_distinct ... ok +test data_values::tests::recursive_picker_starts_with_distinct_leaf_names_and_sorts_them ... ok +test data_values::tests::recursive_records_can_be_drilled_into_and_valid_imported_paths_resolve ... ok +test data_values::tests::reference_parameter_stops_descent_and_unspecified_direction_remains_visible ... ok +test data_values::tests::roots_and_one_hop_children_do_not_expand_unrelated_payload_branches ... ok +test data_view::tests::allocation_rows_edit_relationship_identity_and_remove_only_that_allocation ... ok +test data_view::tests::association_creation_is_a_separate_relation_with_editable_end_contracts ... ok +test data_view::tests::browsing_pages_preserves_invalid_numeric_draft_and_inherited_allocation_identity ... ok +test data_view::tests::contextual_data_actions_use_typed_defaults_and_one_undo ... ok +test data_view::tests::large_inherited_dictionary_has_bounded_widgets_and_every_original_field_is_reachable ... ok +test diagram::lifecycle_tests::menu_reset_and_draw_use_fresh_open_context ... ok +test diagram::lifecycle_tests::middle_and_arrow_panning_preserve_source_and_history ... ok +test diagram::lifecycle_tests::motion_after_release_must_not_move_clicked_port ... ok +test diagram::lifecycle_tests::motion_after_source_click_release_must_not_create_connection ... ok +test diagram::pointer_tests::coalesced_fe_ports_commit_once_through_app_and_source_history ... ok +test diagram::pointer_tests::coalesced_port_drag_commits_once_through_app_and_source_history ... ok +test diagram::pointer_tests::drag_from_already_selected_stationary_port_keeps_source_between_batches ... ok +test diagram::pointer_tests::menu_captured_motion_must_not_turn_following_click_into_old_port_drag ... ok +test diagram::pointer_tests::modal_and_stale_epoch_block_queued_connection_and_port_commits ... ok +test diagram::port_hit_tests::coincident_ports_keep_selection_then_use_stable_identity ... ok +test diagram::port_hit_tests::nearest_port_center_wins_on_all_borders_and_zoom_levels ... ok +test diagram::port_hit_tests::nested_owner_palette_selection_drag_and_context_menu_pick_the_same_port ... ok +test diagram::port_labels::tests::leaving_and_reentering_keeps_suppression_until_each_held_button_releases ... ok +test diagram::port_labels::tests::menu_epoch_clears_suppression_when_the_overlay_consumes_release ... ok +test diagram::port_labels::tests::outside_presses_do_not_suppress_and_cancel_or_focus_loss_clear_held_buttons ... ok +test diagram::port_labels::tests::passive_layer_leaves_port_drag_selection_and_commit_with_the_interactive_canvas ... ok +test diagram::tests::association_end_contracts_share_svg_geometry_and_select_without_moving_name_label ... ok +test diagram::tests::bend_gestures_use_screen_hit_radius_and_commit_one_undo_at_three_zooms ... ok +test diagram::tests::coincident_line_hit_retains_the_selected_connection ... ok +test diagram::tests::connection_gestures_pick_real_ports_and_commit_coalesced_drag_at_every_zoom ... ok +test diagram::tests::detached_label_selects_connection_and_occluding_card_owns_its_hit ... ok +test diagram::tests::dragging_a_child_previews_the_same_enclosure_and_ports_as_commit ... ok +test diagram::tests::fast_drags_commit_the_release_cursor_without_a_final_motion_event ... ok +test diagram::tests::implicit_port_click_selects_semantics_and_drag_preview_svg_share_anchors ... ok +test diagram::tests::route_cache_ignores_pan_zoom_and_cancelled_drag_cannot_commit ... ok +test diagram::tests::routed_svg_has_same_polyline_label_and_bounds_as_canvas_scene ... ok +test diagram::tests::svg_distinguishes_inferred_work_allocation_from_direct_allocation ... ok +test diagram::tests::svg_preserves_visible_exchange_labels_and_capability_stereotypes ... ok +test diagram::tests::typed_function_glyphs_and_unoriented_standard_connections_have_distinct_svg ... ok +test diagram::view_options_tests::communication_svg_uses_saved_visibility_labels_and_direction ... ok +test document::save_as_tests::save_as_preserves_explicit_source_entry_changes_in_history ... ok +test document::save_as_tests::save_as_rebases_uniform_history_without_an_undo_step_or_lost_redo ... ok +test document::save_as_tests::save_as_rejects_included_filename_collisions_in_past_and_future_without_mutation ... ok +test document::save_as_tests::save_as_rejects_stale_or_content_changing_receipt_atomically ... ok +test document::tests::accepted_history_keeps_the_latest_hundred_complete_snapshots ... ok +test document::tests::altered_compiled_model_or_index_is_rejected_without_mutation ... ok +test document::tests::asynchronous_save_marks_its_snapshot_without_cleaning_later_edits ... ok +test document::tests::byte_budget_trims_oldest_history_without_discarding_a_large_current ... ok +test document::tests::cached_view_index_tracks_accepted_creation_undo_and_redo ... ok +test document::tests::comment_and_semantic_history_restore_exact_bytes_and_branch_together ... ok +test document::tests::creation_selects_the_single_uuid_persisted_in_source ... ok +test document::tests::invalid_project_is_rejected_before_format_can_normalize_it ... ok +test document::tests::nested_cross_file_reparent_and_source_edit_share_exact_history ... ok +test document::tests::no_op_command_or_source_apply_preserves_history_revision_and_redo ... ok +test document::tests::omitted_id_stabilization_remains_dirty_until_exact_source_is_saved ... ok +test document::tests::recreated_equal_record_does_not_inherit_deleted_source_ownership ... ok +test document::tests::rejected_compile_command_and_writeback_preserve_state_and_redo ... ok +test explorer::tests::collapse_and_search_retain_context_without_changing_collapse_state ... ok +test explorer::tests::deep_containment_and_search_keep_the_full_path_without_recursion ... ok +test explorer::tests::equal_names_have_stable_alias_and_identity_tie_breakers ... ok +test explorer::tests::perspective_isolation_and_allocations_do_not_change_containment ... ok +test explorer::tests::prefix_names_cannot_separate_a_parent_from_its_children ... ok +test forms::data_fields::tests::defaults_distinguish_absent_empty_and_typed_literals_with_escaped_unicode ... ok +test forms::data_fields::tests::field_browser_pages_every_direct_field_without_flattening_other_records ... ok +test forms::data_fields::tests::independent_review_combined_take_type_informs_actual_default_form_in_both_directions ... ok +test forms::data_fields::tests::numeric_bound_drafts_keep_partial_and_full_precision_values_out_of_accepted_state ... ok +test forms::data_fields::tests::selecting_qualified_path_preserves_expression_typed_before_the_next_render ... ok +test forms::data_fields::tests::semantic_reference_choices_follow_selected_mechanism_and_revert_on_keep ... ok +test forms::data_fields::tests::supertype_picker_excludes_descendants_and_keeps_original_inherited_field_identity ... ok +test forms::history_fields::tests::history_absent_baseline_and_empty_history_use_explicit_facts_and_exact_document_history ... ok +test forms::history_fields::tests::history_clear_discards_inactive_invalid_constructors_before_reusing_the_same_row ... ok +test forms::history_fields::tests::history_compound_value_and_constructor_variants_are_editable_without_live_context ... ok +test forms::history_fields::tests::history_deleted_keys_and_observation_uuids_remain_exact_and_duplicate_history_rejects ... ok +test forms::history_fields::tests::history_every_descriptor_fact_choice_matches_actual_closed_types_and_source_contract ... ok +test forms::history_fields::tests::history_exact_strings_do_not_confuse_uuid_shaped_prose_or_literal_keys_with_references ... ok +test forms::history_fields::tests::history_invalid_numbers_survive_constructor_switch_reorder_removal_and_recovery ... ok +test forms::history_fields::tests::history_missing_semantic_field_can_be_added_and_removed_without_touching_prose_or_live_objects ... ok +test forms::history_fields::tests::history_nested_optional_number_events_switch_absent_present_and_recover_invalid_raw ... ok +test forms::history_fields::tests::history_nested_uuid_and_list_events_preserve_present_values_and_tagged_item_branches ... ok +test forms::history_fields::tests::history_optional_uuid_and_text_seed_absence_without_inventing_observations ... ok +test forms::history_fields::tests::history_primitive_type_choices_remain_visible_inside_the_tagged_union ... ok +test forms::history_fields::tests::history_retained_text_constructors_follow_exact_mode_without_changing_the_observation ... ok +test forms::port_fields::tests::all_demo_records_roundtrip_through_graphical_and_escaped_string_drafts ... ok +test forms::port_fields::tests::boundary_choices_honor_draft_direction_same_kind_and_direct_interface_items ... ok +test forms::port_fields::tests::contract_choices_follow_owner_and_never_offer_legacy_or_oa_typed_ports ... ok +test forms::port_fields::tests::failed_shape_keeps_incomplete_text_and_saved_contract_payloads ... ok +test forms::port_fields::tests::functional_endpoints_require_owner_direction_and_items_but_retain_bad_current_choice ... ok +test forms::port_fields::tests::interface_roles_offer_participants_and_component_ports_independent_of_orientation ... ok +test forms::port_fields::tests::port_allocation_choices_use_actual_owner_direction_and_ignore_edited_relation ... ok +test forms::port_fields::tests::standard_switch_retains_incompatible_orientation_until_explicit_repair ... ok +test forms::port_fields::tests::switching_function_direction_preserves_invalid_items_and_each_authored_payload ... ok +test forms::reference_chooser::tests::captured_choice_cannot_cross_document_revision_draft_record_or_array_path ... ok +test forms::reference_chooser::tests::catalog_search_disambiguates_repeated_names_containment_alias_and_exact_placement_identity ... ok +test forms::reference_chooser::tests::dismissal_swallows_matching_release_across_closed_rebuild_but_next_click_reaches_parent ... ok +test forms::reference_chooser::tests::empty_search_escape_tab_and_optional_clear_do_not_silently_choose_nil ... ok +test forms::reference_chooser::tests::historical_paths_never_open_and_only_explicit_choice_or_clear_is_a_write ... ok +test forms::reference_chooser::tests::mounted_clipboard_paste_and_ime_commit_preserve_whole_strings_without_selecting ... ok +test forms::reference_chooser::tests::mounted_filtered_row_click_uses_the_displayed_identity_and_scoped_write_intent ... ok +test forms::reference_chooser::tests::mounted_input_preserves_rapid_same_batch_typing_and_cursor_across_controlled_rebuilds ... ok +test forms::reference_chooser::tests::mounted_keyboard_pages_and_selects_only_the_highlighted_visible_candidate_once ... ok +test forms::reference_chooser::tests::mounted_overlay_clamps_at_three_field_positions_and_keeps_results_and_query_bounded ... ok +test forms::reference_chooser::tests::mounted_query_change_rejects_old_release_and_old_result_events_without_locking_popup ... ok +test forms::reference_chooser::tests::mounted_query_then_escape_in_one_batch_closes_and_relative_keys_keep_input_order ... ok +test forms::reference_chooser::tests::out_of_order_query_serials_cannot_restore_obsolete_results ... ok +test forms::tests::data_and_port_choices_are_typed_but_retain_invalid_current_values ... ok +test forms::tests::editing_allocation_offers_other_performers_without_counting_itself_twice ... ok +test forms::tests::moving_placement_and_changing_identity_is_one_lossless_undoable_edit ... ok +test forms::tests::parent_choices_reject_cycles_without_removing_clear_or_current_choice ... ok +test forms::tests::reply_and_reuse_forms_offer_semantically_compatible_references ... ok +test forms::tests::scenario_choices_respect_owner_and_exchange_layer ... ok +test forms::tests::semantic_port_group_choices_use_combined_owner_and_retain_invalid_transferred_items ... ok +test forms::tests::shared_perspective_change_keeps_payload_and_rejects_incompatible_dependencies ... ok +test forms::tests::state_observation_picker_keeps_work_lifelines_allocated_to_machine_owner ... ok +test forms::tests::state_placement_form_uses_draft_destination_membership_without_changing_other_views ... ok +test forms::tests::state_projection_form_keeps_string_variants_and_requires_a_typed_context ... ok +test forms::view_fields::tests::category_family_change_retains_members_until_explicit_correction ... ok +test forms::view_fields::tests::selective_view_property_apply_recovery_and_undo_preserve_semantics_and_empty_choices ... ok +test guide::tests::filtering_and_related_navigation_keep_selection_visible ... ok +test guide::tests::guide_topic_navigation_resets_only_article_and_same_topic_search_keeps_scroll ... ok +test guide::tests::search_finds_concepts_in_walkthroughs_and_api_reference ... ok +test home::tests::corrupt_future_and_oversized_history_are_preserved_with_usable_session_history ... ok +test home::tests::failed_metadata_replace_keeps_previous_history_and_reports_memory_only_entry ... ok +test home::tests::first_and_replaced_metadata_are_parseable_and_contain_no_model_bytes ... ok +test home::tests::forgotten_and_missing_files_never_change_the_model_or_other_entries ... ok +test home::tests::loading_missing_history_does_not_create_files_or_directories ... ok +test home::tests::malformed_entries_and_unknown_fields_never_become_open_requests ... ok +test home::tests::successful_local_history_is_bounded_ordered_deduplicated_and_durable ... ok +test home::tests::unavailable_location_can_reappear_on_refresh_without_losing_identity ... ok +test home::tests::walkthrough_uses_packaged_bundle_before_development_and_reports_missing_assets ... ok +test hosted::client::tests::hosted_endpoint_validation_redacts_secrets_and_preserves_proxy_paths ... ok +test hosted::client::tests::hosted_lost_publication_response_is_uncertain_without_retry ... ok +test hosted::client::tests::hosted_open_rejects_incoherent_envelopes_missing_etags_and_unstable_ids ... ok +test hosted::client::tests::hosted_oversized_local_bundle_is_rejected_before_network_admission ... ok +test hosted::client::tests::hosted_production_auth_proxy_prefix_and_located_rejection ... ok +test hosted::client::tests::hosted_production_roundtrip_preserves_comments_noops_and_conflicts ... ok +test hosted::client::tests::hosted_publication_race_keeps_receipt_identity_for_review ... ok +test hosted::client::tests::hosted_publication_retains_known_resource_after_failed_followup ... ok +test hosted::client::tests::hosted_put_preserves_an_opaque_etag_and_compiles_the_accepted_bundle ... ok +test hosted::client::tests::hosted_redirect_is_not_followed_or_retried_and_problem_tokens_are_redacted ... ok +test hosted::client::tests::hosted_response_limits_cover_declared_and_chunked_bodies ... ok +test hosted::client::tests::hosted_structured_mutation_failures_distinguish_precommit_rejections ... ok +test hosted::client::tests::hosted_timeout_and_disconnect_leave_mutation_outcomes_explicit ... ok +test model_menu::tests::add_bend_here_uses_context_point_and_one_source_aware_history_change ... ok +test model_menu::tests::late_menu_actions_do_not_dismiss_new_menu_or_cross_view_context ... ok +test model_menu::tests::menu_preserves_pending_properties_and_rejects_delayed_mutations ... ok +test model_menu::tests::pending_source_allows_file_navigation_but_disables_model_actions ... ok +test model_menu::tests::right_click_targets_actor_without_changing_selection_until_action ... ok +test model_menu::tests::show_from_explorer_places_unfolds_and_keeps_semantic_selection ... ok +test model_menu::tests::state_menu_folds_and_hides_only_its_captured_placement_and_rejects_stale_views ... ok +test model_menu::tests::state_menu_keeps_typed_creation_reachable_and_preserves_pending_properties ... ok +test navigation::tests::semantic_browser_finds_behavior_users_without_confusing_containment ... ok +test port_edit::tests::all_border_drags_commit_exact_preview_and_restore_automatic_anchors_in_history ... ok +test port_edit::tests::graphical_port_reparent_clears_old_anchors_in_the_same_history_operation ... ok +test port_preview::tests::functional_creation_identifies_new_and_reused_endpoints_and_owners ... ok +test port_preview::tests::legacy_split_discloses_endpoint_routing_item_origins_and_retained_evidence ... ok +test port_preview::tests::reused_boundary_shows_item_union_and_existing_allocating_facts ... ok +test port_preview::tests::synchronization_preview_exposes_contract_shrinkage_and_current_declaration_origin ... ok +test port_workflow::recovery_tests::port_recovery_retains_authored_contract_and_identity_but_rebuilds_preview ... ok +test port_workflow::tests::creating_typed_port_and_rejecting_stale_preview_preserve_drafts_and_identity ... ok +test port_workflow::tests::graphical_function_exchange_and_component_generation_commit_and_undo_whole_contracts ... ok +test port_workflow::tests::legacy_resolution_preserves_original_record_and_applies_as_one_undo ... ok +test port_workflow::tests::port_creation_keeps_owner_diagram_and_unfolds_in_the_same_undo ... ok +test port_workflow::tests::synchronization_uses_active_contract_instead_of_preserved_direction ... ok +test recovery::source5::tests::source5_fingerprint_preserves_historical_field_order_and_diagram_shape ... ok +test recovery::source5_tests::source4_checkpoint_remains_explicitly_unsupported_without_touching_disk ... ok +test recovery::source5_tests::source5_checkpoint_does_not_refresh_unrelated_clean_buffer_baseline ... ok +test recovery::source5_tests::source5_checkpoint_missing_identity_is_not_a_lossless_upgrade ... ok +test recovery::source5_tests::source5_checkpoint_old_diagram_property_shape_remains_editable ... ok +test recovery::source5_tests::source5_checkpoint_port_draft_replans_and_rejects_stale_base ... ok +test recovery::source5_tests::source5_checkpoint_preserves_dirty_invalid_text_and_baseline_exactly ... ok +test recovery::source5_tests::source5_checkpoint_preserves_distinct_unapplied_open_workspace ... ok +test recovery::source5_tests::source5_checkpoint_property_preserves_invalid_raw_input ... ok +test recovery::source5_tests::source5_checkpoint_upgrade_never_rewrites_checkpoint_or_origin ... ok +test recovery::source5_tests::source5_checkpoint_upgrades_only_header_and_clean_editor_baseline ... ok +test recovery::source5_tests::source5_checkpoint_workflow_rebinds_only_the_proven_old_revision ... ok +test recovery::source7_tests::source7_current_combined_contextual_and_operation_drafts_survive_without_execution ... ok +test recovery::source7_tests::source7_explicit_new_fields_cannot_enter_frozen_old_model_profiles ... ok +test recovery::source7_tests::source7_legacy_inactive_constructor_path_is_structural_but_raw_prose_is_not ... ok +test recovery::source7_tests::source7_legacy_profile_workflow_and_semantic_drafts_replan_with_exact_base ... ok +test recovery::source7_tests::source7_legacy_profiles_preserve_dirty_source_property_and_behavior_raw_fields ... ok +test recovery::source7_tests::source7_legacy_structural_intent_rejects_even_null_but_never_scans_raw_strings ... ok +test recovery::source7_tests::source7_legacy_view_selector_refuses_new_relation_kind_without_rewriting_checkpoint ... ok +test recovery::source7_tests::source7_recovers_nonempty_frozen_5_and_6_profiles_with_exact_historical_binding ... ok +test recovery::tests::altered_accepted_identity_and_unrecognized_raw_property_fields_reject ... ok +test recovery::tests::exact_source_and_unfinished_invalid_buffers_restore_without_model_overwrite ... ok +test recovery::tests::excess_retained_buffers_cannot_replace_the_last_recoverable_checkpoint ... ok +test recovery::tests::invalid_open_retains_distinct_accepted_model_and_repair_workspace ... ok +test recovery::tests::missing_includes_remain_reachable_repair_targets_without_fabricated_buffers ... ok +test recovery::tests::multiple_sessions_replace_only_their_own_checkpoint_and_corruption_is_retained ... ok +test recovery::tests::raw_invalid_property_number_survives_and_stays_rejected_until_repaired ... ok +test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_draft_cannot_target_an_unreserved_or_non_artifact_identity ... ok +test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_raw_variants_duplicate_addresses_and_unknown_fields_are_refused ... ok +test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_reservations_cannot_duplicate_or_claim_an_existing_identity_or_another_owner ... ok +test semantic_review::artifacts_recovery_falsifier_tests::legitimate_invalid_artifact_checkpoint_round_trips_and_prepares_only_after_explicit_repair ... ok +test semantic_review::artifacts_tests::artifact_candidate_is_a_complete_record_not_a_tombstone_or_unattached_creation_shortcut ... ok +test semantic_review::artifacts_tests::artifact_creation_and_identified_source_deletion_follow_core_metadata_and_history_boundary_both_directions ... ok +test semantic_review::artifacts_tests::artifact_gui_reserves_recovers_and_creates_only_after_all_seven_metadata_reviews_both_directions ... ok +test semantic_review::artifacts_tests::artifact_metadata_apply_and_exact_history_reset_are_one_source_preserving_undo_redo ... ok +test semantic_review::artifacts_tests::artifact_move_metadata_none_empty_and_invalid_raw_recovery_are_independent_both_directions ... ok +test semantic_review::artifacts_tests::artifact_moved_source_absence_deletes_but_destination_only_take_retains_both_directions ... ok +test semantic_review::attachments::tests::absent_attachment_payloads_migrate_v1_and_v2_and_source5_upgrade_requires_exact_legacy_base ... ok +test semantic_review::attachments::tests::addressed_attachment_candidates_equal_direct_core_oracle_both_directions ... ok +test semantic_review::attachments::tests::attachment_apply_is_one_exact_source_and_history_undo_redo ... ok +test semantic_review::attachments::tests::attachment_candidate_and_direct_record_keep_conflict_on_actual_slot_without_losing_drafts ... ok +test semantic_review::attachments::tests::attachment_pair_drafts_survive_family_switch_and_restore_without_mutating_model ... ok +test semantic_review::attachments::tests::functional_incident_source_requires_explicit_matching_port_review_in_one_atomic_candidate ... ok +test semantic_review::attachments::tests::parent_and_each_endpoint_candidate_preserve_other_fields_and_match_core_both_directions ... ok +test semantic_review::attachments::tests::raw_rejected_attachment_reference_survives_recovery_and_wrong_scope_is_rejected ... ok +test semantic_review::attachments::tests::source_only_absence_and_explicit_absent_endpoint_are_different ... ok +test semantic_review::attachments::tests::two_incident_endpoint_candidates_form_one_complete_record_and_recover_invalid_excluded_draft ... ok +test semantic_review::batch_tests::batch_apply_is_one_exact_source_and_history_undo_redo_roundtrip ... ok +test semantic_review::batch_tests::batch_candidate_conflict_keeps_both_raw_values_and_keep_is_a_real_constraint ... ok +test semantic_review::batch_tests::batch_complete_constructor_cannot_erase_another_rows_new_literal ... ok +test semantic_review::batch_tests::batch_constructor_retirement_conflicts_with_another_rows_kept_bound_in_both_orders ... ok +test semantic_review::batch_tests::batch_delayed_text_targets_its_original_row_and_facet_without_switching_focus ... ok +test semantic_review::batch_tests::batch_excluded_invalid_row_survives_focus_reopen_and_v2_recovery ... ok +test semantic_review::batch_tests::batch_first_equal_constructor_acknowledgement_allows_an_independent_bound ... ok +test semantic_review::batch_tests::batch_joint_bounds_use_one_candidate_and_match_an_independent_atomic_core_oracle ... ok +test semantic_review::batch_tests::batch_reverse_distinct_targets_work_and_reverse_convergence_is_explicit ... ok +test semantic_review::batch_tests::batch_v2_rejects_duplicate_included_sources_bad_addresses_and_stale_model ... ok +test semantic_review::batch_tests::category_family_and_members_are_independent_core_checked_facets_both_directions ... ok +test semantic_review::batch_tests::recovered_trace_picker_names_existing_trace_instead_of_deleted_reference ... ok +test semantic_review::batch_tests::rejected_direction_switch_at_row_limit_preserves_every_recoverable_draft ... ok +test semantic_review::compose::diagnostic_tests::distinct_review_conflict_keeps_trace_aliases_even_when_names_are_equal ... ok +test semantic_review::compose::diagnostic_tests::reserved_creation_conflict_uses_its_rows_seed_instead_of_a_deleted_reference ... ok +test semantic_review::compose::diagnostic_tests::same_review_presence_and_owner_conflict_names_both_facets_and_owners_and_retains_drafts ... ok +test semantic_review::compose::diagnostic_tests::typed_owner_display_does_not_reinterpret_uuid_shaped_artifact_text ... ok +test semantic_review::constructor_tests::closed_data_and_event_take_composition_matches_core_across_every_kind_pair_and_direction ... ok +test semantic_review::constructor_tests::data_group_candidates_cover_every_definition_and_companion_default_both_directions ... ok +test semantic_review::constructor_tests::data_group_retains_invalid_sibling_drafts_companion_default_and_variant_editor_buffers ... ok +test semantic_review::constructor_tests::exchange_constructor_takes_qualified_annotation_addresses_without_remapping_expression_text ... ok +test semantic_review::constructor_tests::existing_fragment_and_branch_group_candidates_edit_complete_owned_order_without_deletion ... ok +test semantic_review::constructor_tests::group_take_reference_payload_and_scalar_candidate_match_core_and_one_document_batch ... ok +test semantic_review::constructor_tests::historical_event_keep_retires_only_obsolete_branch_and_unchanged_kind_acknowledges_no_payload ... ok +test semantic_review::constructor_tests::historical_same_kind_take_preserves_target_only_literals_when_composed_with_candidate ... ok +test semantic_review::constructor_tests::occurrence_and_event_candidate_variants_cover_closed_families_without_touching_headers ... ok +test semantic_review::constructor_tests::outer_and_nested_constructor_candidates_require_explicit_resolution_and_retain_both_drafts ... ok +test semantic_review::constructor_tests::port_group_companions_typed_owner_context_and_direction_restrictions_are_explicit ... ok +test semantic_review::constructor_tests::reverse_existing_typed_port_reviews_keep_or_candidate_legacy_without_permitting_typed_oa_write ... ok +test semantic_review::constructor_tests::scenario_use_group_takes_typed_binding_references_and_preserves_source_text_both_directions ... ok +test semantic_review::keyed_rows_tests::annotation_address_browser_descends_qualified_fields_without_changing_rows ... ok +test semantic_review::keyed_rows_tests::annotation_observations_keep_uuid_shaped_expression_text_in_both_sides_and_history ... ok +test semantic_review::keyed_rows_tests::batch_keyed_rows_compare_exact_target_slots_and_retain_independent_values ... ok +test semantic_review::keyed_rows_tests::binding_choices_separate_reused_keys_from_local_lifelines ... ok +test semantic_review::keyed_rows_tests::binding_local_picker_follows_a_candidate_parent_before_the_review_is_valid ... ok +test semantic_review::keyed_rows_tests::binding_take_requires_local_correspondence_and_candidate_rejects_wrong_scenario ... ok +test semantic_review::keyed_rows_tests::independent_rows_keep_take_candidate_match_core_and_preserve_siblings_both_directions ... ok +test semantic_review::keyed_rows_tests::keyed_recovery_retains_raw_rows_and_staged_pairs_both_directions_without_applying ... ok +test semantic_review::keyed_rows_tests::keyed_row_drafts_retain_expression_local_and_presence_across_decisions_and_staging ... ok +test semantic_review::keyed_rows_tests::keyed_rows_distinguish_unpaired_source_from_explicit_absence_and_require_exact_reset ... ok +test semantic_review::keyed_rows_tests::multiple_new_rows_compose_in_empty_collections_using_destination_key_order ... ok +test semantic_review::keyed_rows_tests::row_review_apply_preserves_exact_source_and_semantic_history_through_undo_redo ... ok +test semantic_review::keyed_tests::deleted_member_source_observation_removes_only_mapped_membership_both_directions ... ok +test semantic_review::keyed_tests::exact_literal_new_rows_and_removals_commit_both_directions_without_default_loss ... ok +test semantic_review::keyed_tests::exact_reset_only_is_one_history_source_transaction_and_undo_redo_both_directions ... ok +test semantic_review::keyed_tests::function_port_members_use_existing_typed_choices_and_preserve_oa_legacy ... ok +test semantic_review::keyed_tests::historical_one_sided_pair_migration_requires_exact_reset_and_explicit_overlap_resolution ... ok +test semantic_review::keyed_tests::invalid_literal_removal_and_unselected_scalar_buffers_are_retained_and_repairable ... ok +test semantic_review::keyed_tests::member_identity_labels_and_new_tabs_preserve_exact_names_and_deleted_keys ... ok +test semantic_review::keyed_tests::reset_precedes_equal_constructor_candidate_and_preserves_independent_literal_draft ... ok +test semantic_review::keyed_tests::staging_removal_and_obsolete_reset_recovery_keep_other_decisions_and_raw_presence ... ok +test semantic_review::keyed_tests::stale_or_source_failed_reset_and_membership_apply_retain_exact_choices ... ok +test semantic_review::keyed_tests::unordered_members_keep_take_candidate_preserve_other_rows_both_directions ... ok +test semantic_review::keyed_tests::unsupported_independent_families_and_missing_identities_do_not_gain_edit_authority ... ok +test semantic_review::message_kind_tests::message_group_candidate_closed_kinds_are_core_validated_in_both_directions ... ok +test semantic_review::message_kind_tests::message_group_candidate_timer_switches_preserve_both_drafts_and_overlap_is_explicit ... ok +test semantic_review::message_kind_tests::message_group_initial_equal_take_acknowledges_only_kind_and_checks_authored_timer_agreement ... ok +test semantic_review::message_kind_tests::message_group_keep_historical_switch_retires_timer_and_completed_no_switch_rejects ... ok +test semantic_review::message_kind_tests::message_group_rejects_protected_edits_stale_plan_and_source_failure_without_losing_timer ... ok +test semantic_review::message_kind_tests::message_group_reply_and_reference_take_require_explicit_call_mapping_both_directions ... ok +test semantic_review::message_kind_tests::message_group_take_full_timer_and_scalar_candidate_are_one_source_history_change_both_directions ... ok +test semantic_review::message_kind_tests::message_group_timer_does_not_erase_exchange_without_its_own_selected_decision ... ok +test semantic_review::ordered_tests::ambiguous_order_preserves_local_member_and_requires_explicit_candidate_positions ... ok +test semantic_review::ordered_tests::historical_pair_restore_uses_exact_member_keys_and_never_zips_order_observations ... ok +test semantic_review::ordered_tests::order_take_preserves_destination_only_positions_and_order_alone_cannot_add_members ... ok +test semantic_review::ordered_tests::ordered_membership_choices_stage_exact_pairs_in_all_owner_shapes ... ok +test semantic_review::ordered_tests::ordered_presence_keep_take_candidate_remove_only_selected_entry_and_order_take_reorders_only ... ok +test semantic_review::ordered_tests::ordered_review_apply_is_exact_source_history_transaction_with_reopen_and_undo_redo ... ok +test semantic_review::ordered_tests::ordered_take_uses_unique_anchors_and_matches_core_with_unrelated_candidate_both_directions ... ok +test semantic_review::ordered_tests::raw_order_survives_membership_changes_decisions_and_recovery_until_explicit_reconcile ... ok +test semantic_review::ordered_tests::several_incoming_members_follow_source_order_despite_independent_identity_sorting ... ok +test semantic_review::recovery::tests::raw_scalar_and_closed_constructor_drafts_recover_against_exact_model_only ... ok +test semantic_review::recovery::tests::version_one_without_orders_restores_raw_intent_and_replans_without_execution ... ok +test semantic_review::source7_tests::contextual_incident_leaf_keep_allows_path_change_but_conflicts_with_changed_leaf_both_directions ... ok +test semantic_review::source7_tests::reverse_operation_omission_gui_requires_raw_rationale_and_matches_one_core_batch_after_recovery ... ok +test semantic_review::source7_tests::semantic_operation_virtual_none_candidate_uses_exact_allocation_and_preserves_accepted_bytes ... ok +test semantic_review::tests::candidate_mixed_with_reference_take_uses_typed_correspondence_not_text_guessing ... ok +test semantic_review::tests::deselected_invalid_candidate_is_retained_but_does_not_poison_another_selected_scalar ... ok +test semantic_review::tests::explicit_trace_selection_updates_only_that_history ... ok +test semantic_review::tests::first_equal_constructor_acknowledges_only_kind_and_allows_independent_leaves ... ok +test semantic_review::tests::independent_review_clear_bound_ignores_retained_invalid_other_facet ... ok +test semantic_review::tests::independent_review_keyed_fact_titles_keep_live_deleted_and_qualified_identity ... ok +test semantic_review::tests::inherited_annotation_impact_requires_exact_acceptance_and_edits_clear_approval ... ok +test semantic_review::tests::invalid_numeric_draft_and_protected_edits_retain_workflow_and_source ... ok +test semantic_review::tests::read_only_structured_facts_and_partial_rollup_are_honest ... ok +test semantic_review::tests::relation_candidates_preserve_endpoints_and_combine_selected_roles_and_bounds ... ok +test semantic_review::tests::scalar_keep_take_candidate_commit_exact_source_and_history_in_both_directions ... ok +test semantic_review::tests::scoped_literal_list_edits_preserve_unfinished_values_and_other_facet_buffers ... ok +test semantic_review::tests::stale_plan_and_source_writeback_failure_do_not_lose_decisions_or_history ... ok +test semantic_review::tests::state_kind_scalar_uses_typed_candidate_and_core_validation ... ok +test semantic_review::view::reserved_artifact_tests::reserved_artifact_facet_and_reference_labels_survive_recovery_without_calling_it_deleted ... ok +test source_navigation::tests::search_uses_utf8_columns_wraps_and_refreshes_after_edits ... ok +test source_tree::tests::active_scroll_offset_uses_the_visible_order_and_retains_ancestor_context ... ok +test source_tree::tests::collapsed_folders_retain_active_dirty_and_diagnostic_markers ... ok +test source_tree::tests::deep_paths_build_expand_and_drop_on_a_small_stack ... ok +test source_tree::tests::detached_buffers_keep_paths_and_only_clean_buffers_are_closable ... ok +test source_tree::tests::exact_unicode_spaces_and_file_folder_name_collisions_are_not_normalized ... ok +test source_tree::tests::folders_are_compact_and_sorted_before_files_without_losing_duplicate_basenames ... ok +test source_workspace::tests::draft_history_budget_covers_inactive_files_without_discarding_drafts ... ok +test source_workspace::tests::switching_retains_invalid_drafts_and_independent_history ... ok +test tests::actor_port_creation_updates_containment_and_locate_reveals_its_owner ... ok +test tests::adding_bend_between_close_ports_stays_outside_owner_clearance ... ok +test tests::behavior_and_data_authoring_do_not_place_nodes_in_unrelated_architecture_views ... ok +test tests::bidirectional_transition_ui_commits_once_and_preserves_other_diagrams ... ok +test tests::counterpart_creation_focuses_visible_target_and_reuse_keeps_views ... ok +test tests::creation_from_capabilities_routes_work_to_architecture_and_folded_allocation_inserts_below_existing_work ... ok +test tests::dragging_keeps_semantic_selection_and_same_node_remains_editable ... ok +test tests::escaped_string_mode_preserves_exact_control_characters ... ok +test tests::every_demo_record_has_a_lossless_graphical_draft ... ok +test tests::explicit_relationship_builder_never_mutates_on_preview ... ok +test tests::explorer_and_creation_selection_follow_their_own_placement ... ok +test tests::fit_adapts_to_canvas_returning_after_help_but_preserves_manual_navigation ... ok +test tests::fit_uses_measured_canvas_bounds_and_preserves_them_on_open ... ok +test tests::focused_explorer_follows_reparenting_without_changing_identity ... ok +test tests::graphical_rename_keeps_aliases_and_references_and_undo ... ok +test tests::identity_property_change_is_atomic_and_rewrites_all_live_references ... ok +test tests::invalid_numeric_draft_survives_navigation_save_and_help ... ok +test tests::invalid_save_and_continue_returns_to_repairable_draft ... ok +test tests::malformed_source_preserves_model_and_is_recoverable ... ok +test tests::manual_trace_requires_target_and_selection_normalizes_creation_kind ... ok +test tests::mission_capability_authoring_is_contextual_atomic_and_text_equivalent ... ok +test tests::modal_owns_background_commands_and_shortcuts ... ok +test tests::nested_allocation_insertion_reflows_sibling_subtrees_and_preserves_fold_state ... ok +test tests::opening_and_creating_models_preserve_the_actual_window_size_for_fit ... ok +test tests::opening_legacy_source_surfaces_report_without_modifying_original_bytes ... ok +test tests::pending_source_prevents_property_draft_collision_and_preserves_both_if_present ... ok +test tests::placement_identity_edit_then_drag_and_diagram_identity_then_arrange ... ok +test tests::placement_relocation_follows_cross_layer_traceability_view ... ok +test tests::property_enum_and_optional_reference_roundtrip ... ok +test tests::reopening_canvas_for_a_modal_preserves_viewport_after_route_edits ... ok +test tests::revealing_an_implicit_function_port_unfolds_its_visible_architecture_owner ... ok +test tests::routing_actions_are_atomic_guarded_and_fit_the_authored_detour ... ok +test tests::selecting_current_constructors_preserves_payloads ... ok +test tests::source_find_navigates_an_invalid_draft_without_applying_or_losing_it ... ok +test tests::source_navigation_waits_for_editor_layout_and_cancels_on_edit ... ok +test tests::system_only_models_open_the_populated_perspective ... ok +test tests::transition_resolutions_belong_to_the_effective_target_and_kind ... ok +test view_copy::tests::duplicate_retains_ports_routes_options_and_artifact_claims_with_exact_undo_redo ... ok +test view_copy::tests::duplicate_state_view_preserves_machine_nesting_and_collapse_with_unique_aliases ... ok +test view_copy::tests::missing_view_does_not_propose_an_empty_replacement ... ok +test views::traceability::tests::traceability_browsing_retains_invalid_property_draft_and_existing_select_guard ... ok +test views::traceability::tests::traceability_filter_reaches_artifacts_after_68_traces_and_searches_all_metadata ... ok +test workflow::communication::tests::communication_requires_two_explicit_ports_and_recovers_the_partial_choice ... ok +test workflow::port_authoring_tests::boundary_picker_matches_exact_commands_across_contracts_and_ownership ... ok +test workflow::port_authoring_tests::boundary_picker_recomputes_for_unoriented_reverse_endpoints_without_relaxing_contracts ... ok +test workflow::port_authoring_tests::duplicate_port_names_show_owner_contract_and_unique_alias ... ok +test workflow::port_authoring_tests::fresh_functions_are_actual_picker_targets_and_plan_enables_apply ... ok +test workflow::port_authoring_tests::generic_component_port_connection_keeps_its_endpoint_and_direction ... ok +test workflow::port_authoring_tests::ordinary_standard_connections_default_unoriented_and_new_roles_exclude_legacy ... ok +test workflow::recovery::tests::incomplete_relationship_and_trace_recover_raw_fields_and_reject_changed_model ... ok +test workflow::recovery::tests::transition_recovery_replans_typed_request_without_persisted_commands ... ok +test workflow::transition_tests::basic_transition_boundary_choice_is_required_without_an_inferred_system ... ok +test workflow::transition_tests::basic_transition_creates_overview_when_existing_views_cannot_show_result ... ok +test workflow::transition_tests::basic_transition_explicit_destination_appends_below_existing_bounds_and_is_one_source_edit ... ok +test workflow::transition_tests::basic_transition_invalid_explicit_destination_retains_choice_and_refuses ... ok +test workflow::transition_tests::basic_transition_reconcile_keeps_existing_selected_view_placement_and_route_exact ... ok +test workflow::transition_tests::basic_transition_skips_lowest_uuid_state_view_and_preserves_oa ... ok + +failures: + +---- behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent stdout ---- + +thread 'behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent' (2844) panicked at crates\oa-desktop\src\behavior\scenario.rs:3256:9: +assertion failed: scene.boxes.iter().any(|b| b.id == steps[0] && b.rect.width == 8.) +note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace + + +failures: + behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent + +test result: FAILED. 833 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 360.78s + +error: test failed, to rerun pass `-p oa-desktop --bin arcadia-studio` diff --git a/harness/experiments/diagram-removal-windows-20260912/full-4015498.result.json b/harness/experiments/diagram-removal-windows-20260912/full-4015498.result.json new file mode 100644 index 00000000..b2bad8e8 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/full-4015498.result.json @@ -0,0 +1,19 @@ +{ + "source": "40154983cc86ac0a45b062d7381124f262adbb3d", + "start": "2026-09-12T22:11:12.257944+00:00", + "end": "2026-09-12T22:21:12.488784+00:00", + "exit": 101, + "command": [ + "cargo", + "test", + "--locked", + "-p", + "oa-desktop", + "--bin", + "arcadia-studio", + "--", + "--test-threads=1" + ], + "inputs": "full-4015498.inputs.json", + "changed_inputs": [] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.inputs.json b/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.inputs.json new file mode 100644 index 00000000..d534a502 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.inputs.json @@ -0,0 +1,2670 @@ +{ + "source": "83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b", + "inputs": [ + { + "path": "Cargo.lock", + "bytes": 119973, + "sha256": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf" + }, + { + "path": "Cargo.toml", + "bytes": 400, + "sha256": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62" + }, + { + "path": "build/windows.manifest", + "bytes": 354, + "sha256": "9c19c5a02f858ece84c44839ad2b145d9c1d90442da0b15c87fd045f975974eb" + }, + { + "path": "build/windows.rc", + "bytes": 24, + "sha256": "a27385edcae0bcf96f55361056cb7be5f36d76fcddcaefd20647c91959563e1e" + }, + { + "path": "build/windows_manifest.rs", + "bytes": 1460, + "sha256": "168da2c42ecccfebc11ee3e1b455e653a68fe9c6d30a9842a8b9e7441d086c80" + }, + { + "path": "crates/oa-cli/Cargo.toml", + "bytes": 279, + "sha256": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde" + }, + { + "path": "crates/oa-cli/src/lib.rs", + "bytes": 15498, + "sha256": "97bebab63b4a611a1d36ad0c20fe452cbe1985fe3a6fbd39c954603da11410fc" + }, + { + "path": "crates/oa-cli/src/main.rs", + "bytes": 2984, + "sha256": "de964f9b6c59c0f31c080afbd3b31d442b07b1b44f6a187a248d3409c45d35fb" + }, + { + "path": "crates/oa-cli/tests/source_cli.rs", + "bytes": 16600, + "sha256": "a3a1b856c7a9fd3d80bc8074150a24fbb0ef0e9ddf736c7cea036725fc3dc2b8" + }, + { + "path": "crates/oa-core/Cargo.toml", + "bytes": 408, + "sha256": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f" + }, + { + "path": "crates/oa-core/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-core/examples/generate_demo.rs", + "bytes": 795, + "sha256": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661" + }, + { + "path": "crates/oa-core/examples/generate_release1.rs", + "bytes": 1798, + "sha256": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5" + }, + { + "path": "crates/oa-core/examples/release_dense_views.rs", + "bytes": 14664, + "sha256": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412" + }, + { + "path": "crates/oa-core/examples/routing_workshop.rs", + "bytes": 17248, + "sha256": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7" + }, + { + "path": "crates/oa-core/src/analysis_numeric.rs", + "bytes": 3735, + "sha256": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408" + }, + { + "path": "crates/oa-core/src/analysis_numeric/dimension.rs", + "bytes": 3045, + "sha256": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340" + }, + { + "path": "crates/oa-core/src/analysis_numeric/exact.rs", + "bytes": 17338, + "sha256": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d" + }, + { + "path": "crates/oa-core/src/analysis_numeric/fixtures/r7-literal-boundaries.json", + "bytes": 6085, + "sha256": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181" + }, + { + "path": "crates/oa-core/src/analysis_numeric/meter.rs", + "bytes": 7129, + "sha256": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4" + }, + { + "path": "crates/oa-core/src/analysis_numeric/quantity.rs", + "bytes": 12257, + "sha256": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee" + }, + { + "path": "crates/oa-core/src/analysis_numeric/tests.rs", + "bytes": 27486, + "sha256": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b" + }, + { + "path": "crates/oa-core/src/data.rs", + "bytes": 42696, + "sha256": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a" + }, + { + "path": "crates/oa-core/src/demo.rs", + "bytes": 20657, + "sha256": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c" + }, + { + "path": "crates/oa-core/src/language.rs", + "bytes": 99938, + "sha256": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765" + }, + { + "path": "crates/oa-core/src/language/semantic_source.rs", + "bytes": 7326, + "sha256": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29" + }, + { + "path": "crates/oa-core/src/language_nesting_tests.rs", + "bytes": 20639, + "sha256": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b" + }, + { + "path": "crates/oa-core/src/lib.rs", + "bytes": 549, + "sha256": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c" + }, + { + "path": "crates/oa-core/src/migration_v2/README.md", + "bytes": 1515, + "sha256": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9" + }, + { + "path": "crates/oa-core/src/migration_v2/adapter.rs", + "bytes": 9490, + "sha256": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5" + }, + { + "path": "crates/oa-core/src/migration_v2/mod.rs", + "bytes": 1158, + "sha256": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9" + }, + { + "path": "crates/oa-core/src/migration_v2/model.rs", + "bytes": 52059, + "sha256": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb" + }, + { + "path": "crates/oa-core/src/migration_v2/references.rs", + "bytes": 13369, + "sha256": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20" + }, + { + "path": "crates/oa-core/src/migration_v2/source.rs", + "bytes": 21946, + "sha256": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6" + }, + { + "path": "crates/oa-core/src/migration_v2/state_validation.rs", + "bytes": 15769, + "sha256": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0" + }, + { + "path": "crates/oa-core/src/migration_v2/transitions.rs", + "bytes": 704, + "sha256": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1" + }, + { + "path": "crates/oa-core/src/migration_v2/validation.rs", + "bytes": 98736, + "sha256": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780" + }, + { + "path": "crates/oa-core/src/migration_v3/README.md", + "bytes": 2128, + "sha256": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82" + }, + { + "path": "crates/oa-core/src/migration_v3/mod.rs", + "bytes": 23023, + "sha256": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722" + }, + { + "path": "crates/oa-core/src/migration_v4.rs", + "bytes": 4020, + "sha256": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70" + }, + { + "path": "crates/oa-core/src/model.rs", + "bytes": 66352, + "sha256": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb" + }, + { + "path": "crates/oa-core/src/operations.rs", + "bytes": 11405, + "sha256": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41" + }, + { + "path": "crates/oa-core/src/persistence.rs", + "bytes": 31774, + "sha256": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14" + }, + { + "path": "crates/oa-core/src/ports.rs", + "bytes": 45413, + "sha256": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80" + }, + { + "path": "crates/oa-core/src/projection.rs", + "bytes": 21374, + "sha256": "69ed12bace2cc5024e151752a174ab14034ac2d05eb741fcf13e9a27521c059b" + }, + { + "path": "crates/oa-core/src/projection/port_layout.rs", + "bytes": 13474, + "sha256": "a08d17d10a58bb8b206dd001b19b91d5aa3a9f743b298a4da57d503223c20079" + }, + { + "path": "crates/oa-core/src/projection/state.rs", + "bytes": 5233, + "sha256": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28" + }, + { + "path": "crates/oa-core/src/references.rs", + "bytes": 21957, + "sha256": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb" + }, + { + "path": "crates/oa-core/src/routing.rs", + "bytes": 50309, + "sha256": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080" + }, + { + "path": "crates/oa-core/src/semantic.rs", + "bytes": 540, + "sha256": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239" + }, + { + "path": "crates/oa-core/src/semantic/catalog.rs", + "bytes": 49407, + "sha256": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4" + }, + { + "path": "crates/oa-core/src/semantic/historical.rs", + "bytes": 15271, + "sha256": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb" + }, + { + "path": "crates/oa-core/src/semantic/linked.rs", + "bytes": 6035, + "sha256": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2" + }, + { + "path": "crates/oa-core/src/semantic/mutate.rs", + "bytes": 22683, + "sha256": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d" + }, + { + "path": "crates/oa-core/src/semantic/review.rs", + "bytes": 51116, + "sha256": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e" + }, + { + "path": "crates/oa-core/src/semantic/types.rs", + "bytes": 10405, + "sha256": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb" + }, + { + "path": "crates/oa-core/src/session.rs", + "bytes": 35237, + "sha256": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00" + }, + { + "path": "crates/oa-core/src/source_files.rs", + "bytes": 74803, + "sha256": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683" + }, + { + "path": "crates/oa-core/src/source_project.rs", + "bytes": 61843, + "sha256": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466" + }, + { + "path": "crates/oa-core/src/source_project/source_migration.rs", + "bytes": 4700, + "sha256": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95" + }, + { + "path": "crates/oa-core/src/source_project/source_structure.rs", + "bytes": 20225, + "sha256": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f" + }, + { + "path": "crates/oa-core/src/state_validation.rs", + "bytes": 15665, + "sha256": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18" + }, + { + "path": "crates/oa-core/src/topology_context.rs", + "bytes": 13734, + "sha256": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d" + }, + { + "path": "crates/oa-core/src/topology_context/analysis.rs", + "bytes": 20036, + "sha256": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65" + }, + { + "path": "crates/oa-core/src/topology_context/analysis_tests.rs", + "bytes": 5258, + "sha256": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56" + }, + { + "path": "crates/oa-core/src/transitions.rs", + "bytes": 51998, + "sha256": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d" + }, + { + "path": "crates/oa-core/src/transitions/communication.rs", + "bytes": 8634, + "sha256": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028" + }, + { + "path": "crates/oa-core/src/validation.rs", + "bytes": 112792, + "sha256": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e" + }, + { + "path": "crates/oa-core/src/validation/coverage.rs", + "bytes": 6478, + "sha256": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f" + }, + { + "path": "crates/oa-core/src/view_options.rs", + "bytes": 24481, + "sha256": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208" + }, + { + "path": "crates/oa-core/src/view_options_tests.rs", + "bytes": 21433, + "sha256": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208" + }, + { + "path": "crates/oa-core/tests/communication_boundary_scenarios.rs", + "bytes": 8816, + "sha256": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b" + }, + { + "path": "crates/oa-core/tests/communication_means.rs", + "bytes": 18102, + "sha256": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4" + }, + { + "path": "crates/oa-core/tests/coverage_diagnostics.rs", + "bytes": 20527, + "sha256": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.arcadia", + "bytes": 29220, + "sha256": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.json", + "bytes": 43990, + "sha256": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.arcadia", + "bytes": 2450, + "sha256": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.json", + "bytes": 8240, + "sha256": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.arcadia", + "bytes": 1222, + "sha256": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.json", + "bytes": 1734, + "sha256": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47" + }, + { + "path": "crates/oa-core/tests/language.rs", + "bytes": 56482, + "sha256": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e" + }, + { + "path": "crates/oa-core/tests/port_anchors.rs", + "bytes": 26893, + "sha256": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa" + }, + { + "path": "crates/oa-core/tests/port_migration.rs", + "bytes": 15620, + "sha256": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7" + }, + { + "path": "crates/oa-core/tests/port_source.rs", + "bytes": 4858, + "sha256": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12" + }, + { + "path": "crates/oa-core/tests/prepared_commands.rs", + "bytes": 9555, + "sha256": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b" + }, + { + "path": "crates/oa-core/tests/process_diagnostics.rs", + "bytes": 1104, + "sha256": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906" + }, + { + "path": "crates/oa-core/tests/r3_constructor_ack.rs", + "bytes": 24163, + "sha256": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0" + }, + { + "path": "crates/oa-core/tests/r3_migration.rs", + "bytes": 6590, + "sha256": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd" + }, + { + "path": "crates/oa-core/tests/r3_semantic.rs", + "bytes": 77473, + "sha256": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32" + }, + { + "path": "crates/oa-core/tests/r3_source.rs", + "bytes": 15311, + "sha256": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408" + }, + { + "path": "crates/oa-core/tests/r6_data.rs", + "bytes": 41437, + "sha256": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155" + }, + { + "path": "crates/oa-core/tests/r6_migration.rs", + "bytes": 9174, + "sha256": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1" + }, + { + "path": "crates/oa-core/tests/r6_source.rs", + "bytes": 9519, + "sha256": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6" + }, + { + "path": "crates/oa-core/tests/release1_teaching.rs", + "bytes": 10010, + "sha256": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2" + }, + { + "path": "crates/oa-core/tests/release_capabilities.rs", + "bytes": 19422, + "sha256": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30" + }, + { + "path": "crates/oa-core/tests/release_diagrams.rs", + "bytes": 7689, + "sha256": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d" + }, + { + "path": "crates/oa-core/tests/release_language_limits.rs", + "bytes": 5204, + "sha256": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806" + }, + { + "path": "crates/oa-core/tests/release_ports.rs", + "bytes": 32740, + "sha256": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1" + }, + { + "path": "crates/oa-core/tests/release_routing.rs", + "bytes": 23165, + "sha256": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462" + }, + { + "path": "crates/oa-core/tests/release_scenarios.rs", + "bytes": 41067, + "sha256": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f" + }, + { + "path": "crates/oa-core/tests/release_states.rs", + "bytes": 26873, + "sha256": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811" + }, + { + "path": "crates/oa-core/tests/release_topology.rs", + "bytes": 17643, + "sha256": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9" + }, + { + "path": "crates/oa-core/tests/review_regressions.rs", + "bytes": 21823, + "sha256": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1" + }, + { + "path": "crates/oa-core/tests/route_source.rs", + "bytes": 7270, + "sha256": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb" + }, + { + "path": "crates/oa-core/tests/routing_geometry.rs", + "bytes": 31890, + "sha256": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3" + }, + { + "path": "crates/oa-core/tests/routing_labels.rs", + "bytes": 5530, + "sha256": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6" + }, + { + "path": "crates/oa-core/tests/semantic_artifact_absence_oracle.rs", + "bytes": 4640, + "sha256": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a" + }, + { + "path": "crates/oa-core/tests/semantic_attachments_gui_oracle.rs", + "bytes": 14957, + "sha256": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970" + }, + { + "path": "crates/oa-core/tests/source6_view_contract.rs", + "bytes": 14307, + "sha256": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb" + }, + { + "path": "crates/oa-core/tests/source7_contract.rs", + "bytes": 43262, + "sha256": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f" + }, + { + "path": "crates/oa-core/tests/source_files.rs", + "bytes": 13168, + "sha256": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9" + }, + { + "path": "crates/oa-core/tests/source_identity_updates.rs", + "bytes": 5139, + "sha256": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c" + }, + { + "path": "crates/oa-core/tests/source_nested_updates.rs", + "bytes": 16892, + "sha256": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855" + }, + { + "path": "crates/oa-core/tests/source_project.rs", + "bytes": 45910, + "sha256": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942" + }, + { + "path": "crates/oa-core/tests/state_diagrams.rs", + "bytes": 23973, + "sha256": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5" + }, + { + "path": "crates/oa-core/tests/workflows.rs", + "bytes": 33426, + "sha256": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b" + }, + { + "path": "crates/oa-desktop/Cargo.toml", + "bytes": 842, + "sha256": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9" + }, + { + "path": "crates/oa-desktop/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-desktop/src/allocation_drag.rs", + "bytes": 29634, + "sha256": "6b93290627a8697dd529ecf12b6e99196a11783afff1ca7aaf75c6e2762f3d94" + }, + { + "path": "crates/oa-desktop/src/allocation_drag/tests.rs", + "bytes": 60311, + "sha256": "13b7d055a516c8a9f0bd13f03abe3b81423bde9d121c51778a129ff485f4f102" + }, + { + "path": "crates/oa-desktop/src/allocation_input.rs", + "bytes": 8391, + "sha256": "c7825c43383e81b7eb1b78bd902950c8a2206e0387d26002a80ddbe4dc2b6c73" + }, + { + "path": "crates/oa-desktop/src/app.rs", + "bytes": 220614, + "sha256": "99447bba4810135834663681447a03061a948db2661395b9b4c4924738a38f18" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag.rs", + "bytes": 24452, + "sha256": "218726dcd2e6809cb6f3660f575e586806360456e6b4fac61b9e361b411aeee9" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_full_tree_tests.rs", + "bytes": 28288, + "sha256": "ff4c3d07f885f242b71160c09e2c457c4a746073fd89030781da306730c5db44" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_tests.rs", + "bytes": 42677, + "sha256": "3c6908f8a677921245932252ab38806f16012becbbc082ac11e7871ff7bdeeb4" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring.rs", + "bytes": 27835, + "sha256": "37c7db33e99dd4adcc5a51f09ee4878af94fd32413359890a541690080885f65" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/palette.rs", + "bytes": 8887, + "sha256": "8f9937cb30b48b83759fd084a8a5990a2daa3920280f1210abe048560241985a" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/tests.rs", + "bytes": 14565, + "sha256": "174e184f1baf872c3be1cf70d9a7f4bc5569a9623000b3ab0e71e2b82e249cf5" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring_tests.rs", + "bytes": 18551, + "sha256": "ba913f7d7cbf586708d65c9f1db25b9b9ed7846f9d2e75a546b4ac69d8d19c6a" + }, + { + "path": "crates/oa-desktop/src/app/behavior_lifecycle_tests.rs", + "bytes": 13672, + "sha256": "f9a0b030faca5deaf3f55d9f5efcafdf1a7cb1a663001aa20a61baba4f92d080" + }, + { + "path": "crates/oa-desktop/src/app/behavior_removal_tests.rs", + "bytes": 23958, + "sha256": "ef09843a7daeb91afab0b76e83c5679351a1635a84a26d80a194dea744ea5874" + }, + { + "path": "crates/oa-desktop/src/app/checkpoints.rs", + "bytes": 29576, + "sha256": "55e5babdcabef767af3bc8be9cc3153b3f5cc0695701b890820ec0225643852e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_focus_tests.rs", + "bytes": 6047, + "sha256": "65f3f841e1295ae4878b3ae2cf45ff64003d42e26e450e9a1de1c36dbd771bd8" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal.rs", + "bytes": 8778, + "sha256": "addb51604f41d680b06586bb362362ee3c2603a334f33022ce9abc281295ac85" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal_tests.rs", + "bytes": 47336, + "sha256": "70f9eb53d8995a23a53535b3941fc0c0b81a340f9fbbb371f0d705cfa775bd9e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_selection_tests.rs", + "bytes": 5582, + "sha256": "4fa507adbc23db3a6eb202d809c695ec0ebd6181356930c4fa7528a9a0c7be57" + }, + { + "path": "crates/oa-desktop/src/app/hosted.rs", + "bytes": 25059, + "sha256": "2f7094c078e1d7cbccd6c0d310afa6c400a7e031f12918bbfce65ba62754e316" + }, + { + "path": "crates/oa-desktop/src/app/hosted/tests.rs", + "bytes": 30344, + "sha256": "fa118f64d04b400ccc01e4e67adaf3541975288882afa265a9e7f092cdbda232" + }, + { + "path": "crates/oa-desktop/src/app/process_canvas.rs", + "bytes": 31560, + "sha256": "7e05f4899a0b24df9ab355b6484e94997c7bc66c873342d975aed0b6a56acf04" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring.rs", + "bytes": 11250, + "sha256": "38e033e23e8135032f70117a376a5fe7bc68127c466559a35d7ec200932e3f77" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests.rs", + "bytes": 20067, + "sha256": "b96ddc6bff7f8fde97720e18a92070f891c1340348d2e19c7c9c5a7bda650ce8" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests/mounted.rs", + "bytes": 32805, + "sha256": "14a4914a1c86e50c395672dab8fe80d7af679a79c9082890b509fad7b7c543d9" + }, + { + "path": "crates/oa-desktop/src/app/repair_save_state_tests.rs", + "bytes": 10745, + "sha256": "5543dcba853bb1513acf824b860249729a6004747e7e320b46efe60ea19e2d83" + }, + { + "path": "crates/oa-desktop/src/app/review_navigation_tests.rs", + "bytes": 7049, + "sha256": "872fa91479dad5436e139ffcaece270323e9f5daeeb7a4d80c2c2534f48bc21b" + }, + { + "path": "crates/oa-desktop/src/app/save_as_tests.rs", + "bytes": 4113, + "sha256": "f8b915793f1a36fd152569c4781a4bdc17f4af404a8ceb373330053413087a1c" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram.rs", + "bytes": 10050, + "sha256": "9ae3d533a20963a2bd1d485d357ac04319f336cd9f4c16305aa2a67d833573a8" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram_tests.rs", + "bytes": 39957, + "sha256": "612e414b1a2cab12cbfd8fce23745559ff27577700694d53af67ad1f2883ee2c" + }, + { + "path": "crates/oa-desktop/src/app/transition_context_tests.rs", + "bytes": 11508, + "sha256": "47002fb025f3a2f8c53871f9509bfe8611a61db6fb0e1b3125eb6e875425cb1d" + }, + { + "path": "crates/oa-desktop/src/app/view_copy_tests.rs", + "bytes": 7846, + "sha256": "296821c51dcde568e7d717039aa26bfc1b56a9074aa16051007bb351b33a4d44" + }, + { + "path": "crates/oa-desktop/src/behavior.rs", + "bytes": 130007, + "sha256": "3089d88a8fa66ecaa2151f2f55a85c71de30e556457fcd52fdbd0ca1184b59d8" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace.rs", + "bytes": 7903, + "sha256": "b6e06b9d29f1a5677f99bebcb0e53a3795b4bcd957796a85fd800db4279aed03" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/control.rs", + "bytes": 7804, + "sha256": "2b8d97b8c0e3ff1b1a2c32187b1d0eb25edf39ba582b5fb3303bc880f674f7ba" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/focus.rs", + "bytes": 8901, + "sha256": "33447003980847033e40550f9926d8617fa61e2c3e73ec9c6121d1afed946c33" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/tests.rs", + "bytes": 27101, + "sha256": "b33361c6569354aa2df9b1ba1b60d68e4703800be80f815e0f0505064ea323c3" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/viewport.rs", + "bytes": 15164, + "sha256": "41ff9c50fa9fb89ab9fdb2d18dadc21585aafa1ee008cfcd1e0b731dce645eaf" + }, + { + "path": "crates/oa-desktop/src/behavior/contextual_source_tests.rs", + "bytes": 49518, + "sha256": "044bd412dc45ffe440b1e251993946942dc3759dcb2d5dfe71bd8d6ef61cbcc7" + }, + { + "path": "crates/oa-desktop/src/behavior/creation.rs", + "bytes": 28978, + "sha256": "33ae9aaf4ba90de9432870cc8e99708ef39e3638ae8283a9253c333785c91299" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/app_tests.rs", + "bytes": 13181, + "sha256": "e9c5bf2b07357b7a2f679ae0d8f6904c1c1461aaeb94fa0db478b54d4641ae3e" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/tests.rs", + "bytes": 22793, + "sha256": "a0d1daf9fb3920f7e6181a9802d84fbe056cbf0043b9e41dba5fdda687d9818a" + }, + { + "path": "crates/oa-desktop/src/behavior/form_session.rs", + "bytes": 3941, + "sha256": "f5027fb3a5a5599a182e7d1a10dba56dd66eb1f23a4ba4c4a1744c9a6a5b6e61" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario.rs", + "bytes": 154707, + "sha256": "ffac8821977488ecd1cd9084ad7c0c9fbf8de3d5031c5d4f5d033f0348d3e887" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/focus.rs", + "bytes": 9728, + "sha256": "73a9ea10ad7312086081b8688396a21ab4251c9faecc2df6d984b702f3963533" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace.rs", + "bytes": 24960, + "sha256": "5aec4cb2ceb00ab25900d919a5bec71ab96848b4f14504f51790e3fe8801d3bc" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace/tests.rs", + "bytes": 80542, + "sha256": "f2f6acd93ecf4e9ffee56abc1de28f71da8cb1353cdc3e67cf0c0cf7a619fec5" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation.rs", + "bytes": 14095, + "sha256": "77199dcb08ec8697f779d2560f6b716aed8d8f33965237a4934934954f4e805a" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation/tests.rs", + "bytes": 24665, + "sha256": "5b3f1d2144f405e492686731cc35d05f21b87ada60e426014e6b5f5e5f103298" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle.rs", + "bytes": 9324, + "sha256": "758d244c2e8de61f515d540baa4d967275f49720e0253c6c9159eb9acd71c859" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle/tests.rs", + "bytes": 15430, + "sha256": "01b576993b329810cd78a859b45ac52c66f5a14549065661dd1308196e0b724d" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_operation_tests.rs", + "bytes": 10087, + "sha256": "89fb71c690e07eac314f7a5e05862d5c1e2f9c21039673bf22c4ac894d21c977" + }, + { + "path": "crates/oa-desktop/src/behavior/source_draft.rs", + "bytes": 18031, + "sha256": "08190823090bd8b0305809099abadcc0de431175f7044f1d5abdceda52612ee1" + }, + { + "path": "crates/oa-desktop/src/behavior/state_canvas.rs", + "bytes": 96098, + "sha256": "5844d2abf4a3fe3bb07c707865ee3f8303d213b0fe1871765ac468c11e140da7" + }, + { + "path": "crates/oa-desktop/src/behavior/state_edit.rs", + "bytes": 35843, + "sha256": "4e67321ab0cf88e6200061873086841244c4d610ddd5f88d70c69ac0cc6bf270" + }, + { + "path": "crates/oa-desktop/src/behavior/state_menu.rs", + "bytes": 8530, + "sha256": "9d0a3c29516efa79553c559274848f12101330dbf93ffbbefab398cbc1906790" + }, + { + "path": "crates/oa-desktop/src/behavior/state_view.rs", + "bytes": 7637, + "sha256": "3d01c853663385fc1b760401bbebe3f691fcc289a779a8e63cd0733ff0c8007f" + }, + { + "path": "crates/oa-desktop/src/behavior/states.rs", + "bytes": 26986, + "sha256": "8986ed9492960e20f1254e9dfe3ff91d79ce9fef66f3bda738f9933278043954" + }, + { + "path": "crates/oa-desktop/src/behavior/topology.rs", + "bytes": 84224, + "sha256": "66c81c4d4f2613263f13ae90cea61895c1aeed1f6278880789ec56f8c42433e0" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual.rs", + "bytes": 28432, + "sha256": "5d0ac5b3e258fc70987a00ede1e603681d99746596f2fcc46ad2b3667d65203a" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual_routing.rs", + "bytes": 16731, + "sha256": "d914b0e82aa8d253fe64be2ef74443d1fd2e6cec26d1cf30620a57646e1d426c" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct.rs", + "bytes": 39059, + "sha256": "5cca649870f54abdd2eb098954bcc0a2a5ca456b7ee11b5f653edbdf2ed55905" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct_tests.rs", + "bytes": 51170, + "sha256": "edccfe3ce8b224065a3540aa53c6340f13db0cecd48ecc0a3904cd832a483964" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/layout_tests.rs", + "bytes": 37846, + "sha256": "f27203866e22aee80daad2811113341684b0cbd59885b36d64243c4317f29f84" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/view.rs", + "bytes": 22009, + "sha256": "29e29c2a0667baa429ae44dbb400e67c86f24f88959d5e7dd22894473bdd1f09" + }, + { + "path": "crates/oa-desktop/src/connection_edit.rs", + "bytes": 5301, + "sha256": "020581e077f82b43c936b623cc51733b02b88428df4e5f25df74b9705819fa37" + }, + { + "path": "crates/oa-desktop/src/connection_tool.rs", + "bytes": 27023, + "sha256": "649da93677d52dae495b0e19bc32f3122ab05a6d84de8402578ff5ce3f6ee1d3" + }, + { + "path": "crates/oa-desktop/src/context_menu.rs", + "bytes": 52955, + "sha256": "629354b34dc232763700251f2695b4d4e53d6251c0b1432ecc0dfe424f7dfeac" + }, + { + "path": "crates/oa-desktop/src/data_values.rs", + "bytes": 23877, + "sha256": "e1deb1cad551f0a9fdef9653aad257cfb36e6d9c0f93b6245061ec3fab8fd365" + }, + { + "path": "crates/oa-desktop/src/data_view.rs", + "bytes": 38871, + "sha256": "158b852be5d3db450aa5cda8b68a35bd96bddce1d8d053a7a23582095c06362d" + }, + { + "path": "crates/oa-desktop/src/diagram.rs", + "bytes": 111242, + "sha256": "e5260a39e19fc3df19bd16898ff1f0abd60ede7584f595c035b5e86a12ecef93" + }, + { + "path": "crates/oa-desktop/src/diagram/focus.rs", + "bytes": 9197, + "sha256": "b88a7c43123b08cf6228d8e32257f6ed7fe361f7278f427ec138e233e1ea6ccf" + }, + { + "path": "crates/oa-desktop/src/diagram/lifecycle_tests.rs", + "bytes": 9342, + "sha256": "03dd13106f3fdd06a26699bfdfba006fad086a0711cad2ba1aeb09a4e8f8656e" + }, + { + "path": "crates/oa-desktop/src/diagram/pointer_tests.rs", + "bytes": 11859, + "sha256": "ae68e091032fe2cf71559ff7e671b3b6d657ee8279330345f0c7a57edfa472ef" + }, + { + "path": "crates/oa-desktop/src/diagram/port_hit_tests.rs", + "bytes": 5650, + "sha256": "c3728f127711cb6d7f80a4670a798808b6e4239dd29c273445de81706ab6f39e" + }, + { + "path": "crates/oa-desktop/src/diagram/port_labels.rs", + "bytes": 13574, + "sha256": "6643f0cbde7a59d4772ae5284a488083e3b81f2fefabc43619d75738f474646f" + }, + { + "path": "crates/oa-desktop/src/diagram/view_options_tests.rs", + "bytes": 2815, + "sha256": "cf0c98a7715558baf17b59f67a80556f98ad30262b4434635e617c6601775433" + }, + { + "path": "crates/oa-desktop/src/diagram/work_drag.rs", + "bytes": 7059, + "sha256": "9757534a7ba47dc0df5d41c8d7366b1d90f3d50b24344580ff3c783667bf66f0" + }, + { + "path": "crates/oa-desktop/src/document.rs", + "bytes": 31807, + "sha256": "7c87280b5b8d112c34865253f8ba0f80d43bc9897771943b15dc7b5608eb17a4" + }, + { + "path": "crates/oa-desktop/src/document_save_as_tests.rs", + "bytes": 5781, + "sha256": "83dc243a25f4e97674ff0d86c794a490cc923e98f1f9fb05bb038f622f11e20b" + }, + { + "path": "crates/oa-desktop/src/explorer.rs", + "bytes": 14764, + "sha256": "fa01c59219564ba9ae5553abc2b6f94e9849f9148d5812ef99b40318fe5dcf9a" + }, + { + "path": "crates/oa-desktop/src/explorer_view.rs", + "bytes": 13773, + "sha256": "a720d7484bcc3a24729332a00e005d1cc6f5f945a9cc3965134e0024dffb581f" + }, + { + "path": "crates/oa-desktop/src/forms.rs", + "bytes": 105544, + "sha256": "ea124f479fcd2d3978ac3cb8eb81fec4a7aae5e4f4414c4bdd54849e954dedf9" + }, + { + "path": "crates/oa-desktop/src/forms/context_fields.rs", + "bytes": 10831, + "sha256": "eaacd474f6500dd344d5a8b63ccb1d1dd86fe2aea78ab708afa8a80d62ce69bf" + }, + { + "path": "crates/oa-desktop/src/forms/data_fields.rs", + "bytes": 49285, + "sha256": "a540a0d451bff56a96b1d28643b2e8c0649f3846350c25c5b154729c0538e77c" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields.rs", + "bytes": 27414, + "sha256": "e7100474cde18bdfe95562bcb3c055f29b4b15aa64788a578194464aebcd046e" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields/tests.rs", + "bytes": 33950, + "sha256": "16d3c308138c063f45986d53c621ad83c7dc2ce853edd31b7204e2939a382df9" + }, + { + "path": "crates/oa-desktop/src/forms/port_fields.rs", + "bytes": 30554, + "sha256": "3fe684d651d5be6203fd9db3979c772913e1af5ac1514e67be386ffd88dc8127" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser.rs", + "bytes": 12130, + "sha256": "b60af363be333af048859e51c28e8c989cb5c95d696cad16c8eec15f78d57a12" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/adapter.rs", + "bytes": 10447, + "sha256": "87ab4bc3bf27fd4b5a458791cf62c7ba8e44e9ebf846d8b851b8b6ffb454cd64" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/tests.rs", + "bytes": 27835, + "sha256": "8e98f8a3fcb814d4a201cc85b3db87a689fd3d2ce487f8a2fe312fc296f93377" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger.rs", + "bytes": 13336, + "sha256": "34d0acecfe6bed193970aa473cc3313984971264b86d7b362a6b84c23d013c0a" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger/focus.rs", + "bytes": 9923, + "sha256": "f1e79f4b03b2f9fd1cdc335054d4ae177dc9e759b6ea3d334b2bcca39b57191b" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/widget.rs", + "bytes": 33804, + "sha256": "d66cc17af7a48bb8598be683f084bb08fa7af7304f9636f0a1bea94c5cf6c727" + }, + { + "path": "crates/oa-desktop/src/forms/view_fields.rs", + "bytes": 24987, + "sha256": "5184d438f0dfd4e29f284ff048e19da73e71be1f24a6e9f123c7e922aecb85fa" + }, + { + "path": "crates/oa-desktop/src/guide.rs", + "bytes": 118110, + "sha256": "ab4b47050e6d57dccdcc264ee5752766bd5013fccdc35eeeb9c9037bb5eb9a67" + }, + { + "path": "crates/oa-desktop/src/highlight.rs", + "bytes": 2751, + "sha256": "da7c254fff7052e5fd9ec7469f473b91a819406028d7c304f6e22c4169561600" + }, + { + "path": "crates/oa-desktop/src/home.rs", + "bytes": 17587, + "sha256": "f03c1071334894f586a5a7c86026602a694db3c2faf902822e1dbe5156a859c2" + }, + { + "path": "crates/oa-desktop/src/home/tests.rs", + "bytes": 8167, + "sha256": "3b03ccfc97dfb75954e1e0ed568bb87a632295c07b96cedc05ed381f87b378f3" + }, + { + "path": "crates/oa-desktop/src/hosted/client.rs", + "bytes": 21912, + "sha256": "54b24b4b50f8d87d7c92946ea5a2cff4c98760e70555b3ce3d90be27115e95d4" + }, + { + "path": "crates/oa-desktop/src/hosted/client_tests.rs", + "bytes": 23009, + "sha256": "3ef70907ca75e098d631c41b90badd4cff1e1eb1b3c78e15a9f811c13ba8ffbe" + }, + { + "path": "crates/oa-desktop/src/hosted/mod.rs", + "bytes": 3744, + "sha256": "1b75e11c80fcb38fd20bb3487e3f88729fdac73e471c5ae64da28c249f77c63b" + }, + { + "path": "crates/oa-desktop/src/hosted/view.rs", + "bytes": 9281, + "sha256": "fc0c7b7ce3a5f05c49713df6661067751f81e810af11c614ca265ea9490e6463" + }, + { + "path": "crates/oa-desktop/src/main.rs", + "bytes": 1554, + "sha256": "5228743f361f9239e4584780bfa9b65d36207d0288624e1fb42b721146bcff1c" + }, + { + "path": "crates/oa-desktop/src/model_menu.rs", + "bytes": 36340, + "sha256": "d2f836661f43fa1bc8830b1e51cc736948b3d261796c3fa877df02ae15568c4b" + }, + { + "path": "crates/oa-desktop/src/navigation.rs", + "bytes": 8839, + "sha256": "71355a12e1b4791106426d83fe5ebf0b29bce8e1dc594f0655ab85695469669e" + }, + { + "path": "crates/oa-desktop/src/port_edit.rs", + "bytes": 7809, + "sha256": "70b99f577c4fdeda8780c8dc1ee7b1639fd77aaca06658f06d725139fb3efb6d" + }, + { + "path": "crates/oa-desktop/src/port_preview.rs", + "bytes": 35855, + "sha256": "069487c4ece737d52e8ae4a84dcfb132236aca6799e841c91c8e7244320cf871" + }, + { + "path": "crates/oa-desktop/src/port_workflow.rs", + "bytes": 40582, + "sha256": "ccc15f97c3272145a67bb5857b4faeaf7437561bd61912fa27ab26e8824146a0" + }, + { + "path": "crates/oa-desktop/src/recovery.rs", + "bytes": 21041, + "sha256": "57e22e5fbb0e994e64ae03e69450271fe9f04a951db1670c2a018abe99db4489" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/README.md", + "bytes": 1587, + "sha256": "a90002df1e087d2dac7be26926864243568a0de7c4103e4927435b34178e8016" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/profiles.json", + "bytes": 473, + "sha256": "2c12ae96b50e6da5d60ce2b7fa00204be71dfbe2fd51311fc337a0de6a4332ff" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-bundle.json", + "bytes": 80974, + "sha256": "12715995e6f7f35414aea53b3ad720b9b31873ffdeaf4444231db1a5ac3c463e" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-model.json", + "bytes": 86191, + "sha256": "5535a706df9ec21715e8b6a5aa6dbd79636ae461450aee61305559016167612b" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-bundle.json", + "bytes": 85286, + "sha256": "ea88890a33f47d67dfb06d6dbbcc179058cf28dad76ae7d615c00aaf30dbbbfe" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-model.json", + "bytes": 90629, + "sha256": "5bb8db0b6394276666323483f977ac3586f88554c81a148c6d508fca0ef4576f" + }, + { + "path": "crates/oa-desktop/src/recovery/source5.rs", + "bytes": 6956, + "sha256": "0f0a763f0c98c2c908d4c2b95d8a4c042b6a255ee1cc16260e5404669691f642" + }, + { + "path": "crates/oa-desktop/src/recovery/source5_tests.rs", + "bytes": 12146, + "sha256": "cfd17a742f1f27b523fce7cd9309f0a07a30413395f6c58659fb91d02834a7a3" + }, + { + "path": "crates/oa-desktop/src/recovery/source7_tests.rs", + "bytes": 18213, + "sha256": "7ee61de66c75bf949489ba51ddc9677e2b4efc68801cf27909c9b894bfdc9288" + }, + { + "path": "crates/oa-desktop/src/route_edit.rs", + "bytes": 2941, + "sha256": "457ae59c2761a43a8620b4d336a7cf0f54b965997110ecaf968756a88b6b0374" + }, + { + "path": "crates/oa-desktop/src/semantic_review.rs", + "bytes": 3432, + "sha256": "8dd1e93783d63a663c7e56c28775a5c389cfd7a6b562013d6a95c891afa21ed8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts.rs", + "bytes": 24201, + "sha256": "a79236a8150597ff808597e59cf4f1e9e61c74c4901d9c8cf42d3427bb52a9a8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_recovery_falsifier_tests.rs", + "bytes": 11034, + "sha256": "3f255d04e4bffa5a467b75e3cbf6f7149aa3269a02f2a89fbaa1db0e5df9ae62" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_tests.rs", + "bytes": 20798, + "sha256": "04d0dd2ac453705185663f705282aa4a3a31433466a5be305764248da1a03c32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_view.rs", + "bytes": 6447, + "sha256": "2100ff73565765d8293c84f6ce2d8e566610c1524c50e32ce3c37dc33b6686e4" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments.rs", + "bytes": 18160, + "sha256": "de0ec0c740895b160ff5b847332c087c3f1a48931583464069470cc61315ed59" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_tests.rs", + "bytes": 29389, + "sha256": "8b26be0324e0f33b1e7cf7af340350df8ed98963002d6da8589ee0e6f6900bea" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_view.rs", + "bytes": 3032, + "sha256": "932f231554d77c7cb119d33bb06b9879db5e12127aed187e67013e77b6458e78" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch.rs", + "bytes": 34485, + "sha256": "a462eb627ae19348072775cf8e60b17d62f6b682b74cc413906d493fba1f0b3c" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch_tests.rs", + "bytes": 27546, + "sha256": "b67c4d7dcabac710cf3d30730a8db323180a558a415e2d117c868cdfa4804619" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose.rs", + "bytes": 27155, + "sha256": "c6adcc9882dde65e9f04f6eda7f0c855c5cbb285cf421123029169112793ce9b" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose_diagnostic_tests.rs", + "bytes": 9809, + "sha256": "440daf8d43278ef981c620d1818d0daaed8fb83193b8e8ff67b2e42fbf882938" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructor_tests.rs", + "bytes": 54132, + "sha256": "85149521ad7df62918f6f2fab6da2b3346c342ab4bce7100de3f6206c1e81096" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructors.rs", + "bytes": 12258, + "sha256": "0982163439b06a42d9af1643530364109282e63f05b323a35a76d8241f3caa32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/history.rs", + "bytes": 3211, + "sha256": "df038c2464eab8093a983f3104f0d04ca8f602010a50e1d3eeb8e53f2309e201" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed.rs", + "bytes": 14175, + "sha256": "bdd6c0fdc7108056bc5d7433254503449eed2209813680e717ead24b9d0ce834" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows.rs", + "bytes": 13222, + "sha256": "4b7bf25806471ad22d89253b9af8000f5acff53b4cc0aa1c1a83138e7b270eca" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows_tests.rs", + "bytes": 30804, + "sha256": "1a3b09e7ed100411cdf8043f9a78defc664a873ee0201117709185c201a5c57f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_tests.rs", + "bytes": 31163, + "sha256": "9dc9b989e5a9d408427ca1baf86b2454f9dd3baf40a551c70ca2359dc18a1227" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind.rs", + "bytes": 789, + "sha256": "4ed19952ea511d1b3226564a138e3322f994371d6b49794c14bc3689d1393e7f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind_tests.rs", + "bytes": 23424, + "sha256": "5fcf9930e949aebeb12eab0327264f32a2388d62dbf098bd2365711e22623c52" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered.rs", + "bytes": 9705, + "sha256": "6a1ed894d1b9d0110bc784a75c49444f1d14f1f74620d701f22203b2d8d0a813" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered_tests.rs", + "bytes": 22383, + "sha256": "5c8ea3a69e3da3b94d13f50f12aa7dc53246ccba25ffcace9552a0eb76b0bf36" + }, + { + "path": "crates/oa-desktop/src/semantic_review/recovery.rs", + "bytes": 28769, + "sha256": "88e69044d90c481593bab7cc125f0401c05202fccdde07698cec9483947fe8be" + }, + { + "path": "crates/oa-desktop/src/semantic_review/row.rs", + "bytes": 38159, + "sha256": "b08fdc503c6c4d2ff99adac7e18c9baa861bf86155e00b55d1e492430980d0f2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/scalar.rs", + "bytes": 15153, + "sha256": "9ad202174934dd9a63fbf9cba43135aead571db60846c8b7b1d3019a11df26c2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/source7_tests.rs", + "bytes": 11665, + "sha256": "5e8221d77b068fa30c1571988448cb8829711735881d810f3d333cbc95d34a9f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/tests.rs", + "bytes": 32480, + "sha256": "077ec6501dfaab0b05ea3987943b204f08352952296d313555051d998ccd232e" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view.rs", + "bytes": 57626, + "sha256": "7cc7dd213ab01dadad5debaee868c30a1099466602869a799ebdf9b680e8eaf0" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view_reserved_artifact_tests.rs", + "bytes": 4737, + "sha256": "6c766b29c8664d15cb113d2cc71bba9b60ae4ccf7e44c9c5d3c41e1dc4b7ed90" + }, + { + "path": "crates/oa-desktop/src/source_navigation.rs", + "bytes": 3938, + "sha256": "c1da10882f35f8eb0675e68c642c9a209dde09679cded414cfb9903a4e49ec77" + }, + { + "path": "crates/oa-desktop/src/source_tree.rs", + "bytes": 21816, + "sha256": "4d55e0110a1eb128a5d26c28f3aae5853d79b7245812b7c82bd275f38440a5aa" + }, + { + "path": "crates/oa-desktop/src/source_workspace.rs", + "bytes": 15522, + "sha256": "30f63a6b8d65a38d66061f90d864b5746cbacc0fbd65abc028a8f3071c47d358" + }, + { + "path": "crates/oa-desktop/src/style.rs", + "bytes": 3015, + "sha256": "05d61bec16141612ccafa0988e8c4827f41754509efdb3b961eab69127ded896" + }, + { + "path": "crates/oa-desktop/src/tests.rs", + "bytes": 58557, + "sha256": "b017218195eea2c96aba12eba8a99a38945c8ca910a652e272d34883bdb98691" + }, + { + "path": "crates/oa-desktop/src/view_copy.rs", + "bytes": 9043, + "sha256": "5630f31c942e1226aafd67eabdace6a5c5494875bdc6f7f077019e8110ba41a9" + }, + { + "path": "crates/oa-desktop/src/views.rs", + "bytes": 50668, + "sha256": "9b53126d19b2ae34f170a1422c9f5ea5a833489274cbfa04546279058e289f9b" + }, + { + "path": "crates/oa-desktop/src/views/traceability.rs", + "bytes": 7501, + "sha256": "4c89dcf35c25e737d8cce4d543a5989ca104a5678e6cf40df47e457773d2ef94" + }, + { + "path": "crates/oa-desktop/src/workflow.rs", + "bytes": 82963, + "sha256": "d9e7b11a86fd3ec79d91f0c9bc9cebd5a2043cdaa7261622454fb7730ad8e060" + }, + { + "path": "crates/oa-desktop/src/workflow/communication.rs", + "bytes": 11084, + "sha256": "34d121ad97706012722e4bb6210072ecc3a5b4718b0ceab0c3d0f14d4cd780a1" + }, + { + "path": "crates/oa-desktop/src/workflow/recovery.rs", + "bytes": 9859, + "sha256": "0849b0f34dba5e8761be5fa05784d134ac74e4e9db395d6b9b7d6cff71e3f3dc" + }, + { + "path": "crates/oa-desktop/src/workflow/transition_tests.rs", + "bytes": 8553, + "sha256": "589b1b2dbadca74a52c2cfcfd4fe620bd4790abd113ac02182e91616c52d793c" + }, + { + "path": "crates/oa-server/Cargo.toml", + "bytes": 778, + "sha256": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982" + }, + { + "path": "crates/oa-server/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-server/src/error.rs", + "bytes": 5610, + "sha256": "93817f1502386e4662c96ee1c7d1c4afc4e33bda6fd64e46c86c8e1afd5a9368" + }, + { + "path": "crates/oa-server/src/lib.rs", + "bytes": 7743, + "sha256": "20bef350350ed6339588b23af684abf745f97916c7edf3853ee042abe687e664" + }, + { + "path": "crates/oa-server/src/main.rs", + "bytes": 4163, + "sha256": "d59a6a2b5c7034bd2e00a516d2d49abb16391bf0316c1c357ddafb9c82d2d1e3" + }, + { + "path": "crates/oa-server/src/preparation_http_tests.rs", + "bytes": 5523, + "sha256": "454b90d0055d35644c8d990cd7576ddf675a9b271ca07fe9b0efce25d8ddbc07" + }, + { + "path": "crates/oa-server/src/routes.rs", + "bytes": 46053, + "sha256": "3f9a0c22043dbf28f7a8e587d2fc3abf869f76f4d23a46fe0aeb9c4392454a4b" + }, + { + "path": "crates/oa-server/src/store.rs", + "bytes": 25524, + "sha256": "37dcfb845b7993d5bced2bcf25fedfcd2a9c20a748f9315afe6cca1f41f89ae5" + }, + { + "path": "crates/oa-server/src/store_preparation_gate.rs", + "bytes": 4440, + "sha256": "427c390da3c0281ba1fe115a93ea90800e3b45fce6bcb9185e71982ddd885fec" + }, + { + "path": "crates/oa-server/tests/http.rs", + "bytes": 71892, + "sha256": "50daa6a90e96ad6fe3c6a27df2eaebe486270599c203892d09769c547a194975" + }, + { + "path": "crates/oa-server/tests/http/communication_limits.rs", + "bytes": 5790, + "sha256": "ba5474dd8e494a0176fffb4548c8e3deb2081b15de33bfce82394c764e0a2c16" + }, + { + "path": "crates/oa-server/tests/http/data_contracts.rs", + "bytes": 25949, + "sha256": "8cd456db83f301baca380acf025a5a99db4edf7d8839537dfbd02c4307e10e6b" + }, + { + "path": "crates/oa-server/tests/http/port_anchors.rs", + "bytes": 15086, + "sha256": "7199d0a208ddad9e1518b6e3fb390d64da111716d7505ba5c995deae19ad1258" + }, + { + "path": "crates/oa-server/tests/http/semantic_transitions.rs", + "bytes": 22832, + "sha256": "856d1c9b633ffb581e3e631f4e5a607789a02181dbf060667f208a569bfa4920" + }, + { + "path": "crates/oa-server/tests/http/source6_views.rs", + "bytes": 13023, + "sha256": "867bccda0e030eeeb9976b4ceeb47b21ab5044d700278022d5fb495bbb64ca07" + }, + { + "path": "crates/oa-server/tests/http/source7_contracts.rs", + "bytes": 11000, + "sha256": "0e0a467186da7263c0754890aff69ebd0d92d36b5224e4865bb6854b18dab7e8" + }, + { + "path": "crates/oa-server/tests/http/source_projects.rs", + "bytes": 30907, + "sha256": "8ff580f317ec267d1cd72ae14d8638f74a77cdf99ca4c78f66f4290c2d77460a" + }, + { + "path": "crates/oa-server/tests/semantic_http_contract.py", + "bytes": 7251, + "sha256": "4737ff94f10761f94151a694414c5c62737e0391ec820bca132830652bc4cca2" + }, + { + "path": "crates/oa-server/tests/semantic_schema.py", + "bytes": 25111, + "sha256": "cacca116c42ffbc097f1419c0f89921fa0dfd3faa864d46820ff744cfe6967f9" + }, + { + "path": "crates/oa-server/tests/state_representation.rs", + "bytes": 12241, + "sha256": "6686c826f28248ae4b63ec3f2112e193d4a347724b87974483217fcfee49cd61" + }, + { + "path": "docs/acceptance.md", + "bytes": 3463, + "sha256": "32ed3e4fed63f5c464e0937221f401d71623b276dd70f083531ac6ccebbf9050" + }, + { + "path": "docs/api.html", + "bytes": 72515, + "sha256": "a06126cb741da57e9c06e83fc4137ccde0de05562673546bc9d405878f51ea07" + }, + { + "path": "docs/api.rst", + "bytes": 41929, + "sha256": "ca7d310138c3b4d429d80a1d03d1ac8d4a9296069e205da573034256d10438a7" + }, + { + "path": "docs/architecture.md", + "bytes": 10974, + "sha256": "a50bd1645222ef3e574fa07a6ab9aa213431ee8833c6c0158ad91ce0f799543c" + }, + { + "path": "docs/language.html", + "bytes": 175111, + "sha256": "67dcfa3477b48a0b07298ec81741840cc3ccff12c7d58164873d746d41d611c8" + }, + { + "path": "docs/language.rst", + "bytes": 134663, + "sha256": "12229dd7d52fbaba80fe599d499f29b535f4c37c7be0585664d17edf0466ba33" + }, + { + "path": "docs/linux-packaging.md", + "bytes": 8671, + "sha256": "41a1bb1095801df37a1411341c5791d55ea8c365739314d599a60269ac4bc7a0" + }, + { + "path": "docs/openapi.json", + "bytes": 346920, + "sha256": "bc5825a3182a4df5f6710a80262f4a09b4c15f0e4cda7ca74e1746ceca81a89b" + }, + { + "path": "docs/research-v2-architecture.md", + "bytes": 40445, + "sha256": "1b3809f2dabe6b1805dbf3d3f2625c471cd21356c7bd603916466a8c4ced8090" + }, + { + "path": "docs/research-v2-semantics.md", + "bytes": 31535, + "sha256": "b7ec3677300248926a88b84da3e7ffe52f5b73524c7712c927a0e951569db04f" + }, + { + "path": "docs/research-v2-service.md", + "bytes": 36209, + "sha256": "4828df5bc679e7c71f49b4b85c9e7dacbec52f46d416fed48af70e08886d4e4e" + }, + { + "path": "docs/research-v2-ui.md", + "bytes": 3245, + "sha256": "894e721b59a8ca85f0d95b6706ed5f130a0372def460cf33aeefc9e5e38cde0a" + }, + { + "path": "docs/scope.md", + "bytes": 16690, + "sha256": "a1d0cfbfc06fc8bc2bf0f71343aacc8853cbbbfc00a1fc9852ddf41c8245ffca" + }, + { + "path": "docs/server.md", + "bytes": 23361, + "sha256": "4eb24937d424ba8b384e1734e02a6f8e963ae11d2715889c92b14b39ff2e4a48" + }, + { + "path": "docs/source-cli.md", + "bytes": 3374, + "sha256": "34f12b72cc6d6ead4f47c7818c1897db592f8ad493c70776db2ab48c24d8f051" + }, + { + "path": "docs/v2-interface.md", + "bytes": 11807, + "sha256": "c7fbaf0ebd3fc9f6c11f818db2b0b9d68a33f580cfced22bde83ce08ae790bc7" + }, + { + "path": "docs/validation.md", + "bytes": 6505, + "sha256": "f46ea950ed1a54409aa07c4f9e90f39f8e2d00c1dd1b6cb805caa3993845967f" + }, + { + "path": "docs/windows-packaging.md", + "bytes": 10406, + "sha256": "2c852ff7041713ffbff3c951ac98df647c51fb70b0feba9000f7bfd5bc2703a8" + }, + { + "path": "examples/coastal-rescue.arcadia", + "bytes": 33107, + "sha256": "7e183ef9fd8154d3074303f1956cd0d9871c19e3ffc630d333b0bffbd6e30e17" + }, + { + "path": "examples/coastal-rescue.json", + "bytes": 49715, + "sha256": "242f0b031229a87af5c4ebe5d651defe59c191a6b7a69dc0a77f7e203411f195" + }, + { + "path": "examples/legacy-v1-coastal-rescue.arcadia", + "bytes": 3449, + "sha256": "4dbbbdf8bc7e6cb8e0a81dd678069dae585a9e5187c59bc3665e1fdab3f1a86a" + }, + { + "path": "examples/legacy-v1-coastal-rescue.oa.json", + "bytes": 5976, + "sha256": "fd0e9dedfb7adb922dc0575cc2b820d40344d639f1d8052bd70363aa59de9c24" + }, + { + "path": "examples/release1/README.md", + "bytes": 11137, + "sha256": "113cfb1cf38a98b51bff60442d86a35d636a3d80ef206bece7d53d0aae67f2d5" + }, + { + "path": "examples/release1/evidence/repair-check.md", + "bytes": 1419, + "sha256": "f4db17bdca4ecbb1bf0caef01b2da5f1f7f798ab3152b648ce6dd8696a6a68e5" + }, + { + "path": "examples/release1/expected-diagnostics.json", + "bytes": 288, + "sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e" + }, + { + "path": "examples/release1/model.json", + "bytes": 134520, + "sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727" + }, + { + "path": "examples/release1/model.rs", + "bytes": 28762, + "sha256": "15f30f6bde655808fe754665c26d560e36f2a9bad340f346b09137d0d05045f5" + }, + { + "path": "examples/release1/oa/activities/activity_oa_restore_work.arcadia", + "bytes": 1307, + "sha256": "83e73d0a013d5c3e1a4af0d9139ab0cfa362d25a846671fc2dac59181061a9d4" + }, + { + "path": "examples/release1/oa/behavior/process_oa_assessment_procedure.arcadia", + "bytes": 697, + "sha256": "172c32c044ef4b5bc58a1f4635cc81f48dabb4014479b47dce7b25fedf2dbd0d" + }, + { + "path": "examples/release1/oa/behavior/process_oa_field_procedure.arcadia", + "bytes": 1781, + "sha256": "d2552dc5383e2e91cb302a790364e197f663c2edc013a2ab1978789825c9c324" + }, + { + "path": "examples/release1/oa/behavior/process_oa_response.arcadia", + "bytes": 3225, + "sha256": "cf86f46fa5c5d70592ef43f1bc1cb4d968efd8add384ba88036bef6b88aa4abc" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_conversation.arcadia", + "bytes": 1795, + "sha256": "b25be524e98a35ebac5e4481b7609c027b32baf9605e8097f807560f94a77ca6" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_full_scenario.arcadia", + "bytes": 1261, + "sha256": "00a1edf2c9707a0eb62ac070c2d02467874f2c9c1f273cc6ddb53d6d65999a1c" + }, + { + "path": "examples/release1/oa/behavior/state_machine_oa_monitor.arcadia", + "bytes": 2022, + "sha256": "447c9ad1359f4a31ecf975ad07c0b08d8e7e03191fb0858e2fc56f377b223cd5" + }, + { + "path": "examples/release1/oa/capabilities.arcadia", + "bytes": 781, + "sha256": "fc8012e5554350b12e1cb80080f8feab80d933c9b33c0f2a7bb500cb7d609936" + }, + { + "path": "examples/release1/oa/model.arcadia", + "bytes": 661, + "sha256": "f7cf914766ea73ec53b85e32d117ea9a9dba52d3e038246863541ae7069b1a15" + }, + { + "path": "examples/release1/oa/participants.arcadia", + "bytes": 1834, + "sha256": "951764c14179f27c10e315acf2ea37d1fff54c77b8441e23addd239e8c715ce3" + }, + { + "path": "examples/release1/oa/types.arcadia", + "bytes": 788, + "sha256": "9d0396fb82dd5733edd8d1cf52f968ca84906927c704f9cf0944a7fae215cf49" + }, + { + "path": "examples/release1/project.arcadia", + "bytes": 1958, + "sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda" + }, + { + "path": "examples/release1/sa/behavior/process_sa_assessment_procedure.arcadia", + "bytes": 706, + "sha256": "73928ced61c06cbc08728d7956676a50fd4c05aa5b7f1ff4f29ce27a0b0f2088" + }, + { + "path": "examples/release1/sa/behavior/process_sa_field_procedure.arcadia", + "bytes": 1790, + "sha256": "886d462af83110cbfa55dd232a667ea1446761234471357cbb878794e98e8768" + }, + { + "path": "examples/release1/sa/behavior/process_sa_response.arcadia", + "bytes": 3234, + "sha256": "041785fc22842423822431bd5e6e8d16094ebd0716965e7c765fb8c1d7549e8a" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_conversation.arcadia", + "bytes": 2127, + "sha256": "97276f5757ee9aa12a0dbd9d3ccd58174b3091162bb8bcce357cec20a45f5d85" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_full_scenario.arcadia", + "bytes": 1256, + "sha256": "e12fc406b99d60a2f7768aaa0b25ba560e8605f0b8e37f3a7cdd3b8443562b74" + }, + { + "path": "examples/release1/sa/behavior/state_machine_sa_monitor.arcadia", + "bytes": 2022, + "sha256": "05ce29af99424c491c47fe2450dc6f5f8ce995511c01ec7e17bb5855be3c9736" + }, + { + "path": "examples/release1/sa/capabilities.arcadia", + "bytes": 781, + "sha256": "b6912fb3ece439912345fa71724acd462e716a1e5a88203a1058a5c3b2c20a4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_audit_thresholds.arcadia", + "bytes": 297, + "sha256": "e5a04325d52183956dca814dd90f4e56c96c6b7db0f4f202f203ecb49c3e0f4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_restore_work.arcadia", + "bytes": 2576, + "sha256": "fddeb67308051325041fee641fe758ddf43345b7c47b66d433616ad07fdccdd6" + }, + { + "path": "examples/release1/sa/model.arcadia", + "bytes": 661, + "sha256": "d431509251acb859fbb98733b6d18add952495e10a78703fbe8f31e40bc083c4" + }, + { + "path": "examples/release1/sa/participants.arcadia", + "bytes": 4012, + "sha256": "780d2eb08b217b67b55febb3d34846f727b8ee9018df6c5741748647e36b2ff8" + }, + { + "path": "examples/release1/sa/types.arcadia", + "bytes": 1227, + "sha256": "101fc0fbd99f1101514aa7b6da4f8e535aae0bb94c9e2b9e7e6c151135b28660" + }, + { + "path": "examples/release1/traceability.arcadia", + "bytes": 29506, + "sha256": "48a96f543456c9b5a5798fc795594e4119147fe45f11a6f109f141b7f514560f" + }, + { + "path": "examples/release1/transition-before.json", + "bytes": 35801, + "sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d" + }, + { + "path": "examples/release1/transition-request.json", + "bytes": 4276, + "sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a" + }, + { + "path": "examples/release1/views/diagram_oa_allocation_view.arcadia", + "bytes": 2176, + "sha256": "dfc0eb61e0e2aa5bda45524571fbfa3494f44ce19696f3e15e07438074a07bc7" + }, + { + "path": "examples/release1/views/diagram_sa_allocation_view.arcadia", + "bytes": 2173, + "sha256": "b78b43a26a82efb8fbd5374b09c329fa341f57b29f635d397b9ef8aede71d389" + }, + { + "path": "examples/release1/views/diagram_sa_capability_view.arcadia", + "bytes": 1620, + "sha256": "75e8dc9fb30f25d6f8fd3c6b595593ab4f98958a25798f961e336e0fac557649" + }, + { + "path": "examples/release1/views/diagram_sa_service_view.arcadia", + "bytes": 2209, + "sha256": "b08c84f3ea633e7c78dfdad3272f75415f6256cf3614b6d99bfd4f0269076c9b" + }, + { + "path": "examples/release1/views/diagram_sa_state_view.arcadia", + "bytes": 1931, + "sha256": "5f42f4c605e57b817d8400ed21f2b14bfc4e1592aebe941ff113767504c2b869" + }, + { + "path": "examples/routing-workshop.arcadia", + "bytes": 66431, + "sha256": "dc6b75da72884d399132ed9e300fa5a26b73d802bb526c9af986ae9eeb0a646a" + }, + { + "path": "examples/routing-workshop.json", + "bytes": 100281, + "sha256": "8592714f75b271133f21ce017d87896b6cf91ea0e4837f1c2ed453e21be26b14" + }, + { + "path": "examples/source-project/oa.arcadia", + "bytes": 2142, + "sha256": "5f60642f211b2d352a951092faeeb7503d4fb7f6f7fca99e810347231101d31c" + }, + { + "path": "examples/source-project/project.arcadia", + "bytes": 606, + "sha256": "787f6b67b179ffd221f7e5faf1a4edd74cfd116aa1e3b5e9ed9f22fbff612d8d" + }, + { + "path": "examples/source-project/sa/assurance.arcadia", + "bytes": 682, + "sha256": "ab76044836e4dcd42a82d316846ec87da2108939aa2037640c5bca1d2ecdee0f" + }, + { + "path": "examples/source-project/sa/participants.arcadia", + "bytes": 1231, + "sha256": "1abad579812e77877b45a3d8e3c3e9da734be2d04a0254cc730a5257ebd2dc88" + }, + { + "path": "examples/source-project/sa/reporting.arcadia", + "bytes": 2839, + "sha256": "f0b7443f728912ca163de39b6055876b533a77feaa3219b2d40a2dd65712e058" + }, + { + "path": "examples/source-project/views.arcadia", + "bytes": 3508, + "sha256": "e29ad3f406a6a50d2f0ae2ca2a53ee3b0c18222cd4098704a46d4f48b64ea17f" + }, + { + "path": "examples/text-first/README.md", + "bytes": 1367, + "sha256": "4ec8250d5ed556f1d496e8c85137e973e802ecb11df1a36488411e8cdc5a9f9e" + }, + { + "path": "examples/text-first/project.arcadia", + "bytes": 480, + "sha256": "f441535c623e0cf20e1875eb2cd33b587ed00e078c37af39cb36d89bb5edc19a" + }, + { + "path": "harness/fixtures/basic-editing/README.md", + "bytes": 12012, + "sha256": "3545d9695e7c62e0caa818efd7f4dc426f04876a3626e0f3b1bad606b258cb26" + }, + { + "path": "harness/fixtures/basic-editing/base/expected-baseline.json", + "bytes": 4524, + "sha256": "f239e728d650b0af32bb8f3dcaf6b27c99b9c5041132ac14e51756ea6563d978" + }, + { + "path": "harness/fixtures/basic-editing/base/project.arcadia", + "bytes": 3077, + "sha256": "045cb047d7bfbca72c3fb30db4c81a30ad463d3af7fc51604906ad7fa75a1ff8" + }, + { + "path": "harness/fixtures/basic-editing/base/rationale.arcadia", + "bytes": 57, + "sha256": "c01867c9dc0d40726853119fac3c6ad24a40d8d362a93a8b9d20df04ec2e273f" + }, + { + "path": "harness/fixtures/basic-editing/manifest.json", + "bytes": 447, + "sha256": "d23c21b02064ddb85e051e10e16ff089daba8d9910bb1a695dfabe2db3757734" + }, + { + "path": "harness/fixtures/behavior-creation/README.md", + "bytes": 5954, + "sha256": "9e5fc751424d12cfe76a84abb1da45b2d38947409179451bb90ffe7e7ddc8723" + }, + { + "path": "harness/fixtures/interface-operation-probe/README.md", + "bytes": 2604, + "sha256": "088f0bdb3375deb8f2c7e3b749ca8d210ea828ca4dece69b3871b674e3110175" + }, + { + "path": "harness/fixtures/interface-operation-probe/hashes.json", + "bytes": 977, + "sha256": "f6d3e8aa42f40f64ce2ecba7b9cf112eb9091f3cccde3a592b0434e834cf2a6a" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.arcadia", + "bytes": 4218, + "sha256": "c0fe9570684c0061efc4cad65e339fede6961b04ca90c6f324c787bd65e61226" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.json", + "bytes": 7835, + "sha256": "93187f7a1b476a44185725c6b15f2e1767482b6911ab1280144348d033eb51f0" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.arcadia", + "bytes": 4771, + "sha256": "02f85e39957ebe6d56336fa729a5c8b10f51865face9d3b2c9679200571fcfc7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.json", + "bytes": 8840, + "sha256": "756f9710336e6734ce3592ca774c6f104bba5a37c9e165540eb39326682393d1" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.arcadia", + "bytes": 8635, + "sha256": "ac5b629ba5596464f9f8a975b8bc2764e3007ceb7342de3f828d4b18e4f069b7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.json", + "bytes": 16160, + "sha256": "78a47c978dc667aa1c45af711f06aa2a0d3c581003013e30c3e02fb0faae2e64" + }, + { + "path": "harness/fixtures/interface-operation-probe/probe.rs", + "bytes": 11274, + "sha256": "72b1b443e25eb20420dec4477b0fb5ef5d1c705e3882c81df88dd578ab96a426" + }, + { + "path": "harness/fixtures/release1-native/README.md", + "bytes": 2564, + "sha256": "5f5ba040fd2df9261a29bcab3f9a7ae27c3683265411ad3dda0b467d5df8590e" + }, + { + "path": "harness/fixtures/release1-native/artifacts/README.md", + "bytes": 4155, + "sha256": "24200c84ccc2ef3e17c029744074e5cea785188f5549ac54e44cf89682643f81" + }, + { + "path": "harness/fixtures/release1-native/artifacts/generate-semantic-artifacts.rs", + "bytes": 9275, + "sha256": "444f360b78df52c5e42046f77b148781e0c9bddc2a09c0b7bd65c7a4f376cfe6" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.arcadia", + "bytes": 7768, + "sha256": "84b22e95c213018612e6e8a84cad68b35a8b495ff3515b0f978c5e7a3d196d79" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.json", + "bytes": 7330, + "sha256": "13a6f99ec2df1dd35ee8b2613f183918cd9537eda4a5da085ad52e65c033db59" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.arcadia", + "bytes": 1446, + "sha256": "1e0d662ba33071b122ad9206d2d559a8e748c9431eb3ac1b759bde3760ca877c" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.json", + "bytes": 2216, + "sha256": "fa6a2e3643c0f909b92407abec3edc897033162eeaa501f8d4616f79d41fa044" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.manifest.json", + "bytes": 567, + "sha256": "65cb70b0d697a055363ba01bf30bed7e412d43c9978a033549c378d117719ae7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.request.json", + "bytes": 3991, + "sha256": "ed905267263e7f8a0cd2dbe833196b30118b6a246815216932fae661ad650699" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.arcadia", + "bytes": 6837, + "sha256": "e50fc462ec22dbf98011929931dd2489430001c3e6433608685b9d88bceb9acb" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.json", + "bytes": 6433, + "sha256": "f27a7b38d59c7cefe58cb36783d3d4dd8d8ae1168d9aed1eb61d343c18758908" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.arcadia", + "bytes": 1807, + "sha256": "eba2aec39e6efb405eace4bc8ab0c5563907c26d449e71a4aa750df9f73233b4" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.json", + "bytes": 2673, + "sha256": "2ef777f19b94f08b5e5ca2ef727777897e1018f1426eee291408b3c69101f596" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.manifest.json", + "bytes": 519, + "sha256": "3af7232ed3056ca84dcaf0f266ead3faaa512a0dc0051c7ba68791c20dbae0cf" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.request.json", + "bytes": 1246, + "sha256": "8af21b00b62e620256fbf50e47c6c5836cdb6922d9549cc4b3d86bc03b008073" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.arcadia", + "bytes": 4200, + "sha256": "20bb30473830e44228958e78fb7480269cdcc0580c6c90c718da75f34ca5a43f" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.json", + "bytes": 4552, + "sha256": "44f4b05db49758dcf344788f57cecc0250fd029099b1c54e4e1e3e972f6cf039" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.arcadia", + "bytes": 1808, + "sha256": "b0fd031671c9f755756922ec5c40a0ce3f40164d22c3c389aec9fd0705344da7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.json", + "bytes": 2673, + "sha256": "1acf81e08c51c85aceb14a3efbc39ec680552a19c7824aab4611ac3cf71b9c6d" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.manifest.json", + "bytes": 610, + "sha256": "a07978f4b0a3ca83e5ae5f35e7b66b26473b24431fc90e5889d755f1816d52dd" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.request.json", + "bytes": 2352, + "sha256": "5ff844a038b0030adb5a83d13d81e60f30627543388f6199b6a0e026fc42ea58" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-native.md", + "bytes": 4075, + "sha256": "a51ffbc45b6c172cbfed3b16c249296e6a28d457fea57393dd958cdcfbafbca1" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts.hashes.json", + "bytes": 2367, + "sha256": "3ad8b7428b3ed7585a91e7f5d9d5f4880caccfd0b08dca25d05af523e62e0a10" + }, + { + "path": "harness/fixtures/release1-native/communication-means/README.md", + "bytes": 15091, + "sha256": "015c16010c212af283f9def118c6d263ba65a3bc6e81a750f180624ca69bb311" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/entry.arcadia", + "bytes": 6098, + "sha256": "a6976e7c21031e7cc3cb731e20c3075cf89cf85144dc8d3f52930f8521ea196f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/expected.json", + "bytes": 10480, + "sha256": "60c4419415c546f06c9972ac7bb0e530ada7b30a200b59e75ddda231a24f9a3d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "3c41459f2b0706a767988738bf8126f76540415bb5940d9c5db19cbe8c18182d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.request.json", + "bytes": 1331, + "sha256": "b16e673b29c96b5aed681389ff7669110abe552939e86dd0ec6011c9a45ed860" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.arcadia", + "bytes": 5239, + "sha256": "a511a4d817d9c5c80233bce83e84a7056b7dce7afd9fcc25696e333f8f4df055" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.json", + "bytes": 8424, + "sha256": "7140114926228b1c378c450535f7a70992c71a879a8d2270c49e8d5f04a2f484" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/entry.arcadia", + "bytes": 5710, + "sha256": "910e6dfe609467047ce629ec9c626f4e927cada74bfbfa164414a8fe6783ea87" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/expected.json", + "bytes": 9868, + "sha256": "567259e20c9f6278776e8fa99b8b2fdbbc9a883ad875c5d39dae1b53de3a2924" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "997f72fe9258012df66e88344cf39c1a2cebf2327f604056b67f7f2a8ebcfbfa" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.request.json", + "bytes": 1127, + "sha256": "cb3fe05859cfffec6f8846c19983dc462413bc0ea4f6e19204f09c259919c4b1" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/cm-reverse-scenario.arcadia", + "bytes": 8209, + "sha256": "ec826b9b84616507490ac30e4d57100dd6338dba2f7071e879a8fb58820a85c5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/expected.json", + "bytes": 19735, + "sha256": "ef07e4d2d3fc36004ff01739838281581d9a703c747611eacc01bb9cc672489f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/entry.arcadia", + "bytes": 9827, + "sha256": "86dd8a355f6c9dadfea56d06e5247c9b0f820819d7df17ef5690671c7c81324b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/expected.json", + "bytes": 21877, + "sha256": "980489ec2c483d4f9efada61358c1f29bafb2572fd5b804c656b91b8e9bb4f9a" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.arcadia", + "bytes": 7698, + "sha256": "1abc4c4cac37cfb06ed3b12a115f9e7e6a2d3affd34b25c355309e5ee465fa40" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.json", + "bytes": 13130, + "sha256": "a5cf4cb2ef390113dd752f4054d43fb789da2ca77799efb5782805ae8aa2dfd5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.arcadia", + "bytes": 5454, + "sha256": "b761c4c2af5f7064aaf1f887ffd6094eb6ae834b2c8057ecdbc4aa97c042066b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.json", + "bytes": 8852, + "sha256": "2536b000de361fb131787e32b466b9123d4e98abf00c099ad32f6cb8e7fb530b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/generate-communication-means.rs", + "bytes": 28035, + "sha256": "003521404b702332082e01f2be7676fda1dd7b5bcf220bb81d25120c8984c75d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/hashes.json", + "bytes": 3133, + "sha256": "39b4dc02fc8b074015c59354fd1c1061c25832fde25065c7151f36eb0455e6f6" + }, + { + "path": "harness/fixtures/release1-native/communication-means/manifest.json", + "bytes": 1237, + "sha256": "fb921f42f2c4a4f8a67d1266f17f8c7750b6a2619554b713aa92b17918f0c43e" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40-oracle.json", + "bytes": 26264, + "sha256": "74edca148583f42c269e51f135662f65ef1c9ea1c94516d63e2a5091967dc99b" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.arcadia", + "bytes": 28947, + "sha256": "00b87736b82c5afd33b311df7aebe9a6c8c51b6de66221181b5ea8bc8ca221a3" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.json", + "bytes": 54938, + "sha256": "5dd4f22453330cab3abc059881660190e689a22619853f77cf6d0b52735d97ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments-native.md", + "bytes": 2624, + "sha256": "28906924b05f75bbf432389517aef65f1df474d2f2bff79a3586564f7f7328ef" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.arcadia", + "bytes": 6795, + "sha256": "9d084dd75a0251d349cc31f9ee98df58d0bc76859dc3cb1503f242e2f759888a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.json", + "bytes": 9618, + "sha256": "f09be41afd85c18fd52fdf997e9b81c4b7cb2c41e78d167abcd14caea8110333" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.arcadia", + "bytes": 4990, + "sha256": "8740f27be99624013d9be876639c0411e1b8c14f0f9a843f43dc71d769efd79a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.hashes.json", + "bytes": 963, + "sha256": "00fc9e2c709bdcd9ee98012176cb0edb635c112153d963cd169bf4bf69a9e010" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.json", + "bytes": 8146, + "sha256": "9c188f2890630c7feec2be719a7104af9690da7ea836df18fa78da3ff2acfc1b" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.manifest.json", + "bytes": 1045, + "sha256": "46b40f221ffad614733b615208814ace63947e96b80bbfdec63853ccd4f4e8c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.request.json", + "bytes": 3075, + "sha256": "b57f656f0b9cf2c595e83150c683301909e20f15684d35d108d3c57ee0dc5909" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch-native.md", + "bytes": 2637, + "sha256": "dddca2b85f892b05881c75ef3cd62437396cc086a09909b621e02bad0cbe56ff" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.arcadia", + "bytes": 3134, + "sha256": "d3315bba762395205ae761e6e64029e8b4070c15a1299c6114075581db7b0974" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.json", + "bytes": 3927, + "sha256": "8f36119c7e893a4af374b13b85b1c2cb3df0196df8d06a551386628fc8b8646d" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.arcadia", + "bytes": 1787, + "sha256": "5e1f433e04621424edac43e53411624059e873f88dd531bfdb39093953485ed7" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.hashes.json", + "bytes": 933, + "sha256": "1bd87700b04e4f169ab5f8aceaa3b0c3ec3a1cc43e1bce135a1cee506fc75d38" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.json", + "bytes": 2816, + "sha256": "1972242d2a8677d004dc3af1081feb292de65fe26128d877dded8661f9906619" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.manifest.json", + "bytes": 647, + "sha256": "1e440efa02e2ccc27585d9a49c7864d53e3e3e7645ccb219f040e00d95331b8e" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.request.json", + "bytes": 2197, + "sha256": "71f23474614aab90398ce24f00f2cf61d6cb9a3a34faa3e12e0c8104e0a71073" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.arcadia", + "bytes": 15635, + "sha256": "e3ce0347746584f503b825a8b6bd23a7eebf0827940112ef8f36d500c1d0a043" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.json", + "bytes": 25736, + "sha256": "29736f2a619f7f2d0e795229f6e8c3645a1b4eca6292043cd604aa01b1ec9170" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.arcadia", + "bytes": 15631, + "sha256": "9ab573c92be66e3bae659dd826923ba6066979b1651edda7bd469056632cd77e" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.json", + "bytes": 25736, + "sha256": "828c990c6129692cd31c7f6ed0dd6c952f9cfffdd90bc80171df82d4d929afba" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.arcadia", + "bytes": 15617, + "sha256": "49214be2ca9c8bb6195c3b39737c053847021839f70f0bb2921d35a1fbd2ac83" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid-request.json", + "bytes": 2225, + "sha256": "8b02d4739b1be2c8a64da76423b4a6cae7d89c60f4d30723b94f1da3779cbcca" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid.txt", + "bytes": 78, + "sha256": "aa536e18bc65325163e9b645a4ad031ab599fcb05948dcf741b725d0f0c8b602" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.json", + "bytes": 25722, + "sha256": "995dd72f5c1f07f998233ae9847e337cb82de0c2a9053d3905be021d5f8124b9" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.manifest.json", + "bytes": 1059, + "sha256": "ad315359bfd68ce0d265976dc9e4ea6a502ebbb87d7339dd1af5ef27dd01e433" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-plan.json", + "bytes": 15016, + "sha256": "27bf316ad66ffa91f6323e75b0c280baf5caec298645793dea72c5d42aa3b782" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-request.json", + "bytes": 2225, + "sha256": "f4f6b5480ec8927033ea469ea82c1e8411cb6dba95d2da680f15bc193914c9b4" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.steps.md", + "bytes": 3897, + "sha256": "7d7e38d93641a5f22a2738baa4dbacc392eebb477a855cdce0641961980a19ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-plan.json", + "bytes": 18557, + "sha256": "74dd68ba686b8928054480f0bfed55aad91f6f1208803399dc9878e894f57ecb" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-request.json", + "bytes": 1508, + "sha256": "d19a53002a6bf95af3123a3ef9f78baaf7ce1085d4f06f0f4a9d5e5d5accbc0e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.arcadia", + "bytes": 6935, + "sha256": "90277f1780d43a6f0b2184bf00b87e7a4f3518d67c6f10d4793daafe1aabf493" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.json", + "bytes": 11286, + "sha256": "5a3c8494f6976c23b990c14b40760fb2f32ca9973caf6f31dab5632310663591" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous-request.json", + "bytes": 1379, + "sha256": "6a86fde194faa55f2d1bdb982571e0e711e5401b53a960e6acb8cf3e17f506c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.arcadia", + "bytes": 6195, + "sha256": "e7c30c5a5c3ba7209c8e223f02da55821d7af10a2f09844a7065ae6cd8f22aa5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-plan.json", + "bytes": 19156, + "sha256": "d1e5c2ed08e0aa6274a0421a39876d1ba99f4e441c7a0a68660a83b9e017da14" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-request.json", + "bytes": 2418, + "sha256": "433f723252598994dac7184da61f95344b528156cc5a0fba1a7864b2ec9f002b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.json", + "bytes": 10441, + "sha256": "9e4e2ce1c7879935ad0860a3ae720506c929a8422b51491b719d88af3fd3ff2d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.manifest.json", + "bytes": 1042, + "sha256": "87e8899c7d4e54faedeef32afb7592fb65278d1bd7390850ab198dcf62068329" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.arcadia", + "bytes": 6280, + "sha256": "6c77ed42bbf9f4ebe08bfa233197a4020e5587ce33747f7914430aa0c662d9a3" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.json", + "bytes": 10009, + "sha256": "1dd7ca2bcfc84ac23369c506302b39569d2ebc41e5a4edc99378a1fe01923b7e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous-request.json", + "bytes": 1390, + "sha256": "e0ea7aeb25687ae63c65128f1aab78273f14030d179d3fbea63fe91ab5430136" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.arcadia", + "bytes": 5529, + "sha256": "563c36162050c8564ffa25a85c726462ecdaebdb87659b3f3610506bfd5581e6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-plan.json", + "bytes": 18821, + "sha256": "f96c43fc58dbe48a044b628b31bb3f0b59171dad5b6982ec6c34a5597e474130" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-request.json", + "bytes": 2438, + "sha256": "d38fdb13612b07254edad80848f79c1e097d5f868c020feae9ba072aa697a50d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.json", + "bytes": 9153, + "sha256": "2ed0daed118f2df13dcad738dab174ad34d44a15921cf8097415e707978b0968" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.manifest.json", + "bytes": 1058, + "sha256": "c79bd12a85d8d4f25cc3ee43581b3e5e74ae9ad7e4de0c72764975ba2b89c279" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.arcadia", + "bytes": 5026, + "sha256": "98020e048ac01f285c6ad8c10ce22bef05e193b5ba0f5558be1fb26a7bf82620" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.json", + "bytes": 7851, + "sha256": "ea3783992488bc6ee944eb91a26ccf3dbc05a3909528fc32ec8023a76765cee6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous-request.json", + "bytes": 1379, + "sha256": "ea3cfd25f7a50481805956fb88ab851516dcd602dd6564502a0cc55f7de6a54f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.arcadia", + "bytes": 4295, + "sha256": "2b7c3694623bbea3e36dcc6f674d4adcd91e23c8e1005ded21e5a69648a048e5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-plan.json", + "bytes": 17912, + "sha256": "95a23bd334cffcaef0c3b1012b7555efd2a077ef6f9140d58020910ef8a76723" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-request.json", + "bytes": 2081, + "sha256": "1e2433ed5821bf65443f56cb27381ee935db81b1955d3a539b7952898312a410" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.json", + "bytes": 7012, + "sha256": "0033f8780c2ba69779b811bca792340c25a092f887e5811c6839f0a691d744f2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.manifest.json", + "bytes": 1046, + "sha256": "e3b4a60a56abee779ca8356605c968aa2d99256a3bd3c5601b14b5c5502a1a05" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.arcadia", + "bytes": 5467, + "sha256": "e265cab35097acc46f5123107c13bc35b9f71931ff650557fc1c85779141b327" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.json", + "bytes": 8482, + "sha256": "9b777828d3681138de6bbd08de8bf922bed92c27be60b103d8ff73ce7ddd0a48" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous-request.json", + "bytes": 1379, + "sha256": "7d124256730bf2feee772c7d0118b87eb288e8aaa9179d69ceb9259dbceb2c71" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.arcadia", + "bytes": 4727, + "sha256": "87a5a3665dab2dd6e595867dcebb1586e93dd067c85d6e24b1a4d3ff0ad6d4ba" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-plan.json", + "bytes": 18803, + "sha256": "1888ca51e0923866a9afea99cad069fe5d3f19f0a1b24328e20ac1b9f52d8bad" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-request.json", + "bytes": 2294, + "sha256": "5070a5b85feb1bc7b1fc648cd5d35ef26663492c8666dcd471950c06ec3a6052" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.json", + "bytes": 7641, + "sha256": "725b35e36640c81c70c7efea5c3304bf61b49ef9664194ca0d491782cc62191a" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.manifest.json", + "bytes": 1038, + "sha256": "1b43abf8fed3061c65a7b7cb103d31ea7ece333a2da83c645f8d228448c4dbb2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.arcadia", + "bytes": 5019, + "sha256": "65a6217f474b5085f37b511151185c2c08ff7a1998e924f1fe01f29c410f6ced" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.json", + "bytes": 7835, + "sha256": "8a53bb9b43eab5b6dca5e08deef20c14c96e134b9ee816a99b7960bb5255e008" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous-request.json", + "bytes": 1379, + "sha256": "c704f99245f00d5c3be0562d91931b4e7f1fb3fb36f41991eb76656ffbd6129f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.arcadia", + "bytes": 4279, + "sha256": "c59ec1233d5a9fbb8e386f6d9b13f398be21baf813ba215efb51bfc1bb98db36" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-plan.json", + "bytes": 17938, + "sha256": "30c5c3f614a74708763df612016483623792f4c65e2ed2fa662ac417cfb852eb" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-request.json", + "bytes": 2098, + "sha256": "3b6c35ef78133f0980cb6fb53fbc29c5d3c4deb5dc4be01c2c3384e221987b9b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.json", + "bytes": 6996, + "sha256": "c159c60403abcf8fefab7f19cbad9989488e8ccc20b82c57597b22a0ae254802" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.manifest.json", + "bytes": 1038, + "sha256": "af8a314a9b1d85a8f98affa5a6649f43d252851158798e1ad687bb1b6966b14f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.steps.md", + "bytes": 4549, + "sha256": "6004894e9d9f478b7fe1c3c3e0706dcc546d5df8557cff91b4cf26f8a4badf24" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/15000000-0000-4000-8000-000000000010.json", + "bytes": 1933, + "sha256": "71cca2a59f36b2a07d11dedbe9101226aa1a4a00d8ac244b5565202e56709f51" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/generate.py", + "bytes": 1496, + "sha256": "e44986c1d563499f25917441220b23883fc9cb0f89faf409873191f0212fbd2f" + }, + { + "path": "harness/fixtures/release1-native/state-actions.arcadia", + "bytes": 6224, + "sha256": "9cde82608110e56aa9e14c9e33eb38976f53aed74ab013145d411d5743a0ec26" + }, + { + "path": "harness/fixtures/rest-coverage/README.md", + "bytes": 1870, + "sha256": "df4a391312e0c8b20ccdcc850199443b08547be1b10b1f2447a067bf4bf544e6" + }, + { + "path": "harness/fixtures/rest-coverage/coverage-probe.json", + "bytes": 7951, + "sha256": "2d1ef7bdb5d7bf17b9fda33b1d1790d1d88289b3fd1e725f89b83a69771f9a43" + }, + { + "path": "harness/fixtures/rest-coverage/run-coverage-probe.ps1", + "bytes": 9381, + "sha256": "f24f19fca418b76a7249894a08c116e16b465a02f8f899d12b808ccfdd90a3bd" + }, + { + "path": "harness/fixtures/run-timed-bundle-oracle.ps1", + "bytes": 7466, + "sha256": "fab696486a574f9867c6e69a8a8b960e7e9722206441b9cc5f36d41f285f1a25" + }, + { + "path": "harness/fixtures/scenario-authoring/README.md", + "bytes": 14700, + "sha256": "6b651b180b76d10b00bc49d77a8f5e0b3ba0317446978f41b541f5bb23fedad8" + }, + { + "path": "harness/fixtures/scenario-authoring/base/expected-baseline.json", + "bytes": 38589, + "sha256": "abd8246c939ebb8a2162ef82e23d0fb322ee1a8b4d0d7c28a34037e42e86e841" + }, + { + "path": "harness/fixtures/scenario-authoring/base/project.arcadia", + "bytes": 19470, + "sha256": "9b1afbe96b0bf8fa613451b00929492f05a59b9eb2ca74c2c374a8b7bb7cba9e" + }, + { + "path": "harness/fixtures/scenario-authoring/base/rationale.arcadia", + "bytes": 86, + "sha256": "82df210f22f6aa336a3e7e00240977d671c7c3923db7bc58fb29e6d98b67ef49" + }, + { + "path": "harness/fixtures/source7-native/README.md", + "bytes": 7235, + "sha256": "7abccbc3da0980d1d099761d1a66d12c403a0f543954134537ecd4930d182b4b" + }, + { + "path": "harness/fixtures/source7-native/base/expected-baseline.json", + "bytes": 26428, + "sha256": "e2882a58f841f460f45d9d67db1606440e0d7997b9b29a784569ae48e4b23bfb" + }, + { + "path": "harness/fixtures/source7-native/base/project.arcadia", + "bytes": 13616, + "sha256": "5474d8ca05fd1375220dc0ad40d913631fde51159e9632bb9f290d1ecdab8dd7" + }, + { + "path": "harness/fixtures/source7-native/base/rationale.arcadia", + "bytes": 59, + "sha256": "e6a600e13036d4ad594a65380ed1b3d82d1772d583041bb0a624c9588a73047a" + }, + { + "path": "harness/fixtures/source7-native/manifest.json", + "bytes": 410, + "sha256": "6c57164a796234d83818d462d0a25f10e77062d405769e602ae2a7bec251e3b6" + }, + { + "path": "harness/fixtures/staged-source-authoring/README.md", + "bytes": 6876, + "sha256": "502be5e3bf9112447dc07b1a51fe0fa301754b47128a9b81877c185c6e797fee" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/notes.arcadia", + "bytes": 63, + "sha256": "ad9de02963c20d1f43856455a797deb05ca674659e45f2c4b96b52783024f8bd" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/project.arcadia", + "bytes": 593, + "sha256": "aa844950ec4fb86f262a257e1fc370a26557ea7978d8a4cab78265037660234c" + }, + { + "path": "rust-toolchain.toml", + "bytes": 66, + "sha256": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce" + } + ] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.log b/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.log new file mode 100644 index 00000000..8b1453df --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.log @@ -0,0 +1,842 @@ + Compiling oa-desktop v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\crates\oa-desktop) + Finished `test` profile [unoptimized] target(s) in 1m 05s + Running unittests src\main.rs (target\debug\deps\arcadia_studio-e358a5ed59b1de41.exe) + +running 834 tests +test allocation_drag::tests::allocation_artifact_and_manual_trace_cascades_are_named_and_refused ... ok +test allocation_drag::tests::cache_plan_uses_candidate_index_and_same_pixel_different_target_changes_preview ... ok +test allocation_drag::tests::collapsed_target_unfold_is_explicit_and_no_other_fold_changes ... ok +test allocation_drag::tests::direct_exit_revealing_another_role_performer_has_truthful_refusal ... ok +test allocation_drag::tests::explicit_different_performer_retains_advisory_role_warning ... ok +test allocation_drag::tests::folded_subtree_cannot_hide_new_collision ... ok +test allocation_drag::tests::geometry_refuses_new_overlap_bounds_and_invisible_headers_and_preserves_existing_overlap ... ok +test allocation_drag::tests::malformed_scope_wrong_projection_duplicate_placement_and_stable_id_collision_refuse ... ok +test allocation_drag::tests::mixed_p_x_y_refuses_semantic_and_arrange_instead_of_stretching_destination ... ok +test allocation_drag::tests::oa_communication_incompleteness_remains_advisory_without_collateral_loss ... ok +test allocation_drag::tests::oa_sa_incoming_between_outgoing_preserve_identity_source_history_and_other_views ... ok +test allocation_drag::tests::oa_sa_one_leaf_move_refuses_when_ancestor_regrouping_introduces_unrelated_overlap ... ok +test allocation_drag::tests::oa_sa_one_leaf_reassignment_and_outward_move_regroup_ancestors_without_moving_sibling ... ok +test allocation_drag::tests::oa_sa_populated_collapsed_target_accepts_room_and_refuses_collision_without_relocating_contents ... ok +test allocation_drag::tests::oa_sa_state_owned_action_and_availability_reject_reassignment_atomically ... ok +test allocation_drag::tests::oa_sa_unfolding_prior_hidden_overlap_refuses_even_when_insertion_does_not_collide ... ok +test allocation_drag::tests::own_deleted_allocation_routes_may_disappear_in_every_diagram_only ... ok +test allocation_drag::tests::role_only_same_effective_performer_is_semantic_noop_and_outgoing_refuses ... ok +test allocation_drag::tests::sa_port_and_deferred_exchange_allocation_cascade_refuses_and_retarget_is_invalid ... ok +test allocation_drag::tests::same_performer_readability_preserves_snapped_noop_and_allocation_identity ... ok +test allocation_drag::tests::scope_detects_first_child_allocation_and_role_transfer_and_finish_rejects_live_edits ... ok +test allocation_drag::tests::selected_header_visibility_allows_viewport_edge_but_refuses_clipping ... ok +test allocation_drag::tests::snapped_noop_returns_no_command_and_keeps_source_revision_and_redo ... ok +test allocation_drag::tests::source_budget_refusal_keeps_project_bundle_history_and_retry_identity_exact ... ok +test allocation_drag::tests::surviving_constraint_mutation_is_refused_even_when_core_candidate_is_valid ... ok +test allocation_drag::tests::target_presentation_requires_accepted_identity_and_selected_header_visibility ... ok +test allocation_drag::tests::toolbar_identity_allows_exact_incoming_placement_at_old_label_overlap ... ok +test allocation_drag::tests::uniform_folded_grandchild_and_unplaced_scope_moves_exactly_q_and_all_l_oa_sa ... ok +test allocation_drag::tests::uniform_role_only_and_mixed_direct_role_composites_same_target_do_not_allocate ... ok +test allocation_drag::tests::uniformly_unassigned_composite_creates_only_stable_leaf_allocations_including_unplaced ... ok +test allocation_drag::tests::unrequested_view_option_cleanup_is_not_whitelisted ... ok +test allocation_drag::tests::unresolved_role_leaf_can_arrange_or_accept_explicit_target_without_guessing ... ok +test app::allocation_drag::tests::actual_canvas_origin_change_cancels_held_work_before_any_legacy_release ... ok +test app::allocation_drag::tests::arrange_is_one_gesture_and_snapped_noop_preserves_redo_and_source ... ok +test app::allocation_drag::tests::candidate_semantics_are_cached_per_destination_with_stable_ids_and_own_index ... ok +test app::allocation_drag::tests::destination_identity_does_not_describe_blocked_or_outside_viewport_as_unallocation ... ok +test app::allocation_drag::tests::frozen_collapsed_target_uses_only_visible_header_and_port_edge_controls_occlude ... ok +test app::allocation_drag::tests::frozen_targets_use_half_open_semantic_priority_and_refuse_incomparable_overlap ... ok +test app::allocation_drag::tests::full_tree::actual_app_tree_dirty_description_retains_focus_and_middle_caret_for_next_key ... ok +test app::allocation_drag::tests::full_tree::actual_app_tree_dirty_name_retains_focus_and_middle_caret_for_next_key ... ok +test app::allocation_drag::tests::full_tree::actual_app_tree_exact_incoming_drag_keeps_destination_visible_and_canvas_stable ... ok +test app::allocation_drag::tests::full_tree::actual_keyboard_arrange_shortcut_consumes_once_escape_cancels_and_dirty_owner_refuses ... ok +test app::allocation_drag::tests::full_tree::actual_rendered_canvas_pixels_do_not_change_when_toolbar_feedback_text_changes ... ok +test app::allocation_drag::tests::full_tree::actual_toolbar_hover_inspects_last_full_name_without_authorizing_an_outside_drop ... ok +test app::allocation_drag::tests::modal_roundtrip_equal_fit_undo_resize_and_focus_retire_press_before_replay ... ok +test app::allocation_drag::tests::mounted_clean_stationary_selects_exact_work_without_revision_or_legacy_apply ... ok +test app::allocation_drag::tests::mounted_dirty_port_press_cannot_fall_through_to_applying_port_selection ... ok +test app::allocation_drag::tests::mounted_dirty_property_press_does_not_select_apply_or_destroy_draft ... ok +test app::allocation_drag::tests::mounted_oa_sa_ordered_incoming_between_outgoing_are_exact_single_history_steps ... ok +test app::allocation_drag::tests::mounted_role_only_outgoing_refusal_retains_placement_and_same_performer_creates_no_allocation ... ok +test app::allocation_drag::tests::mounted_uniform_parent_moves_hidden_placements_and_assigns_only_leaves ... ok +test app::allocation_drag::tests::oa_sa_clipped_selected_header_refuses_preview_release_and_retries_without_partial_source_or_history ... ok +test app::allocation_drag::tests::oa_sa_toolbar_identity_accepts_exact_receiver_and_collapsed_header_drag ... ok +test app::allocation_drag::tests::outside_release_is_cancel_and_does_not_remove_an_assignment ... ok +test app::allocation_drag::tests::pending_behavior_draft_refuses_actual_work_press_and_equal_document_replacement_retires_packet ... ok +test app::allocation_drag::tests::release_uses_ordered_native_position_before_later_motion_in_same_batch ... ok +test app::allocation_drag::tests::same_snapped_position_on_opposite_shared_border_rebuilds_semantics_even_if_layout_refuses ... ok +test app::allocation_drag::tests::source_and_modal_admission_reject_prebuilt_clean_press_without_selecting ... ok +test app::allocation_drag::tests::source_refusal_is_atomic_and_a_new_gesture_can_retry_against_live_revision ... ok +test app::allocation_drag::tests::stale_packets_do_not_cancel_a_newer_token_and_each_release_is_consumed_once ... ok +test app::allocation_drag::tests::toolbar_destination_names_transformed_target_whose_header_is_clipped ... ok +test app::allocation_drag::tests::toolbar_status_leaves_transformed_top_edge_work_header_readable ... ok +test app::architecture_authoring::tests::architecture_allocated_work_is_root_owned_and_one_exact_history_change ... ok +test app::architecture_authoring::tests::architecture_blank_names_and_escape_never_accept_placeholder_or_rename ... ok +test app::architecture_authoring::tests::architecture_captured_escape_does_not_cancel_other_controls_or_placement ... ok +test app::architecture_authoring::tests::architecture_f2_routes_selected_node_to_inline_rename_and_exact_undo ... ok +test app::architecture_authoring::tests::architecture_first_focused_input_escape_cancels_create_and_rename ... ok +test app::architecture_authoring::tests::architecture_invalid_click_cannot_poison_inline_or_checkpoint_geometry ... ok +test app::architecture_authoring::tests::architecture_stale_submit_keeps_create_and_rename_visible_and_exact ... ok +test app::architecture_authoring_tests::architecture_cancelled_gesture_cannot_commit_a_later_named_draft ... ok +test app::architecture_authoring_tests::architecture_canvas_left_click_uses_world_coordinate_once_at_zoom_and_pan ... ok +test app::architecture_authoring_tests::architecture_checkpoint_retains_exact_name_point_and_fresh_binding_without_commands ... ok +test app::architecture_authoring_tests::architecture_context_choices_are_small_and_system_is_singleton ... ok +test app::architecture_authoring_tests::architecture_contextual_allocation_creates_work_relation_and_node_in_one_undo ... ok +test app::architecture_authoring_tests::architecture_creation_names_before_commit_preserves_camera_and_undoes_once ... ok +test app::architecture_authoring_tests::architecture_existing_inventory_is_contextual_and_placement_never_implies_allocation ... ok +test app::architecture_authoring_tests::architecture_f2_rename_preserves_identity_placement_and_atomic_history ... ok +test app::architecture_authoring_tests::architecture_name_survives_rejected_click_resize_navigation_and_escape_is_explicit ... ok +test app::architecture_authoring_tests::architecture_rejected_submission_keeps_inline_name_visible_and_invalid_click_is_ignored ... ok +test app::architecture_authoring_tests::basic_transition_explicit_overview_focus_wins_over_an_already_populated_architecture ... ok +test app::behavior_lifecycle_tests::incomplete_behavior_form_is_dirty_close_save_retains_it_and_cancel_allows_switching ... ok +test app::behavior_lifecycle_tests::passive_behavior_canvas_events_do_not_apply_property_drafts ... ok +test app::behavior_lifecycle_tests::pending_behavior_blocks_navigation_property_edits_and_model_history ... ok +test app::behavior_lifecycle_tests::pending_behavior_blocks_source_creation_and_source_history_replay ... ok +test app::behavior_lifecycle_tests::save_prepares_behavior_before_opening_destination_and_cancel_keeps_one_undo ... ok +test app::behavior_lifecycle_tests::source_writeback_failure_keeps_typed_behavior_form_for_repair_and_one_undo ... ok +test app::behavior_removal_tests::mounted_behavior_clean_inspector_click_and_tab_own_delete_then_f6_returns_to_canvas ... ok +test app::behavior_removal_tests::mounted_behavior_clean_text_focus_and_modifiers_cannot_delete_selected_occurrence ... ok +test app::behavior_removal_tests::mounted_behavior_pan_and_stale_removal_intent_do_not_delete ... ok +test app::behavior_removal_tests::mounted_behavior_tab_and_f6_retire_same_batch_delete_and_window_focus ... ok +test app::behavior_removal_tests::mounted_process_delete_occurrence_or_link_preserves_reusable_work_and_source_history ... ok +test app::behavior_removal_tests::mounted_qualified_process_child_delete_refuses_outer_reference_and_shared_definition ... ok +test app::behavior_removal_tests::mounted_scenario_delete_message_or_participant_preserves_reusable_targets ... ok +test app::behavior_removal_tests::mounted_scenario_fragment_and_branch_delete_only_owned_occurrences ... ok +test app::behavior_removal_tests::mounted_scenario_use_delete_keeps_definition_and_second_use_and_rejects_owner_replay ... ok +test app::checkpoints::tests::checkpoint_completion_releases_the_writer_while_a_context_menu_is_open ... ok +test app::checkpoints::tests::checkpoint_inline_create_and_rename_restore_focus_without_changing_drafts_or_history ... ok +test app::checkpoints::tests::checkpoint_noninline_contexts_keep_other_focus_and_still_lint ... ok +test app::checkpoints::tests::discard_and_close_waits_for_the_late_checkpoint_then_retires_it ... ok +test app::checkpoints::tests::home_resume_keeps_state_view_while_explicit_architecture_remains_reachable ... ok +test app::checkpoints::tests::home_resume_retains_invalid_source_and_property_drafts ... ok +test app::checkpoints::tests::home_resume_returns_to_each_actual_workspace_without_model_edits ... ok +test app::checkpoints::tests::malformed_checkpoint_does_not_replace_the_current_model ... ok +test app::checkpoints::tests::recent_and_recovery_navigation_respect_unsaved_decision ... ok +test app::checkpoints::tests::restored_copy_keeps_raw_property_and_requires_save_without_local_or_hosted_binding ... ok +test app::checkpoints::tests::saving_an_older_snapshot_keeps_recovery_for_newer_unsaved_work ... ok +test app::checkpoints::tests::stale_write_completion_cannot_recover_a_discarded_document ... ok +test app::checkpoints::tests::walkthrough_request_keeps_unfinished_source_behind_the_normal_pending_guard ... ok +test app::data_paging_lifecycle_tests::paging_preserves_same_context_and_resets_on_layer_or_document_replacement ... ok +test app::diagram_focus_tests::mounted_f2_requires_canvas_focus_and_yields_to_clean_inspector ... ok +test app::diagram_removal_tests::captured_confirmation_rejects_selection_document_revision_and_placement_changes ... ok +test app::diagram_removal_tests::mounted_allocation_work_click_then_delete_without_redraw_removes_placement_once ... ok +test app::diagram_removal_tests::mounted_bend_delete_has_priority_and_semantic_edge_delete_is_confirmed ... ok +test app::diagram_removal_tests::mounted_clean_text_programmatic_focus_and_tab_remove_canvas_keyboard_ownership ... ok +test app::diagram_removal_tests::mounted_inspector_can_take_focus_during_passive_save ... ok +test app::diagram_removal_tests::mounted_oa_sa_delete_hides_exact_placement_and_round_trips_source_and_model ... ok +test app::diagram_removal_tests::mounted_passive_save_never_grants_canvas_focus_or_restores_window_lost_focus ... ok +test app::diagram_removal_tests::mounted_passive_save_retires_held_canvas_drag_but_allows_a_fresh_drag ... ok +test app::diagram_removal_tests::mounted_placement_properties_selection_supports_hide_and_model_delete ... ok +test app::diagram_removal_tests::mounted_programmatic_canvas_entry_needs_no_mouse_focus_boolean ... ok +test app::diagram_removal_tests::mounted_removal_intents_reject_stale_selection_revision_owner_and_document ... ok +test app::diagram_removal_tests::mounted_revision_and_history_preserve_the_actual_canvas_or_inspector_focus_owner ... ok +test app::diagram_removal_tests::mounted_shift_delete_captures_target_cancel_escape_and_confirmation_replay ... ok +test app::diagram_removal_tests::mounted_state_action_and_internal_rows_delete_relations_and_preserve_reused_work ... ok +test app::diagram_removal_tests::mounted_state_delete_uses_state_placement_and_preserves_architecture_placement ... ok +test app::diagram_removal_tests::mounted_window_modal_dirty_and_modifier_boundaries_retire_delete_focus ... ok +test app::diagram_selection_tests::changing_visible_view_follows_its_clean_inspector_without_a_model_edit ... ok +test app::diagram_selection_tests::diagram_switch_preserves_an_independent_semantic_inspection ... ok +test app::diagram_selection_tests::diagram_uuid_edit_follows_the_same_view_or_a_different_picker_target ... ok +test app::diagram_selection_tests::invalid_view_draft_blocks_the_switch_and_retains_raw_input ... ok +test app::diagram_selection_tests::stale_diagram_choice_never_applies_an_unrelated_valid_draft ... ok +test app::diagram_selection_tests::valid_pending_view_edit_applies_to_old_view_then_inspects_the_new_view ... ok +test app::direct_scenario_tests::direct_scenario_camera_details_and_real_resize_invalidate_only_pointer_context ... ok +test app::direct_scenario_tests::direct_scenario_creation_and_reorder_preserve_selection_and_each_undo_once ... ok +test app::direct_scenario_tests::direct_scenario_rejects_every_stale_context_and_preserves_property_drafts ... ok +test app::direct_scenario_tests::direct_scenario_source_failure_and_navigation_keep_form_until_success ... ok +test app::hosted::tests::hosted_actual_app_tasks_publish_edit_conflict_correct_credentials_reload_and_open ... ok +test app::hosted::tests::hosted_catalog_invalidation_follows_service_writes_and_observed_revision_changes ... ok +test app::hosted::tests::hosted_catalog_search_credentials_and_failed_refresh_never_mix_result_scopes ... ok +test app::hosted::tests::hosted_changed_bound_head_does_not_invalidate_another_services_empty_filter ... ok +test app::hosted::tests::hosted_conflict_fetches_review_without_adoption_and_reload_is_undoable ... ok +test app::hosted::tests::hosted_detached_drafts_and_recovery_remain_available_after_rejected_publish ... ok +test app::hosted::tests::hosted_failed_cross_service_publication_checks_and_reloads_its_own_resource ... ok +test app::hosted::tests::hosted_failed_or_cancelled_local_open_keeps_the_existing_document_and_destination ... ok +test app::hosted::tests::hosted_invalid_and_detached_source_drafts_never_start_network_writes ... ok +test app::hosted::tests::hosted_invalid_local_open_repair_saves_locally_and_never_replaces_old_resource ... ok +test app::hosted::tests::hosted_modal_blocks_underlying_edits_and_credentials_are_redacted ... ok +test app::hosted::tests::hosted_new_revision_invalidates_filtered_catalog_even_without_a_displayed_row ... ok +test app::hosted::tests::hosted_only_successful_source_save_as_changes_the_active_destination ... ok +test app::hosted::tests::hosted_open_waits_for_unsaved_guard_and_failed_open_preserves_current_document ... ok +test app::hosted::tests::hosted_publish_acknowledges_only_the_sent_snapshot_and_retains_undo ... ok +test app::hosted::tests::hosted_stale_completions_do_not_clear_current_busy_or_adopt_another_document ... ok +test app::hosted::tests::hosted_unknown_save_is_acknowledged_by_exact_readback_without_retry ... ok +test app::lint_tests::committed_check_cache_follows_edit_and_undo_while_drafts_stay_separate ... ok +test app::lint_tests::lint_coalesces_work_and_rejects_obsolete_results ... ok +test app::lint_tests::prior_document_lint_cannot_enter_reopened_model_or_block_next_checks ... ok +test app::port_view_tests::catalog_creation_follows_the_new_port_and_keeps_group_browsing_explicit ... ok +test app::port_view_tests::filtered_active_view_cannot_hide_a_created_port_when_eligible_owner_view_is_folded ... ok +test app::process_canvas::direct_process_dirty_source_blocks_canvas_creation_without_losing_text ... ok +test app::process_canvas::tests::direct_process_app_open_source_and_back_preserve_local_reference_identity ... ok +test app::process_canvas::tests::direct_process_app_same_owner_selection_preserves_tool_but_owner_change_resets_it ... ok +test app::process_canvas::tests::direct_process_app_save_details_resize_and_passive_geometry_keep_drafts_and_camera ... ok +test app::process_canvas::tests::direct_process_app_source_failure_retains_form_then_commits_once_and_selects_occurrence ... ok +test app::process_canvas::tests::direct_process_app_stale_context_dirty_source_and_properties_never_mutate ... ok +test app::process_canvas::tests::direct_process_append_empty_first_second_exchange_has_exact_source_history ... ok +test app::process_canvas::tests::process_zoom_retains_rejected_draft_and_guards_selection ... ok +test app::reference_authoring::tests::chooser_rejects_old_results_after_context_recovery_reload_or_modal_and_keeps_history_text_out ... ok +test app::reference_authoring::tests::inspector_reference_browse_is_read_only_then_one_scoped_value_applies_with_exact_undo_redo ... ok +test app::reference_authoring::tests::inspector_reference_retains_invalid_missing_and_incompatible_current_until_explicit_clear ... ok +test app::reference_authoring::tests::mounted::mounted_delayed_return_cannot_focus_under_review_and_fresh_modal_tab_owns_its_form ... ok +test app::reference_authoring::tests::mounted::mounted_form_tab_enters_in_both_directions_and_cycles_boundaries_without_losing_focus ... ok +test app::reference_authoring::tests::mounted::mounted_fresh_tab_reveals_offscreen_reference_and_return_reveals_it_again ... ok +test app::reference_authoring::tests::mounted::mounted_reference_choice_stages_literal_identity_and_delayed_focus_cannot_hit_replacement_field ... ok +test app::reference_authoring::tests::mounted::mounted_reference_trigger_tabs_to_root_popup_search_escape_and_exact_adjacent_fields ... ok +test app::reference_authoring::tests::mounted::mounted_reverse_review_required_rationale_remains_editable_beside_candidate_reference_form ... ok +test app::reference_authoring::tests::mounted::mounted_review_pointer_open_and_outside_dismissal_keep_background_input_inactive ... ok +test app::reference_authoring::tests::mounted::mounted_scrolled_reference_anchor_uses_window_geometry_for_pointer_and_keyboard ... ok +test app::reference_authoring::tests::reference_array_row_reorder_and_constructor_switch_invalidate_exact_old_field ... ok +test app::reference_authoring::tests::review_reference_cannot_reopen_or_write_a_banked_row_after_another_row_takes_focus ... ok +test app::reference_authoring::tests::review_reference_facets_groups_and_attachment_hosts_browse_without_replanning_and_reject_old_facet ... ok +test app::repair_save_state_tests::recovering_applied_repair_rebinds_rolled_back_disk_bytes_without_changing_model ... ok +test app::repair_save_state_tests::recovery_missing_entry_or_failed_reload_preserves_current_destination_save_authority ... ok +test app::repair_save_state_tests::repair_history_compares_to_new_disk_baseline_and_then_successful_save ... ok +test app::repair_save_state_tests::repair_to_previous_saved_bytes_requires_save_at_new_destination_and_guards_close ... ok +test app::repair_save_state_tests::valid_equal_content_at_distinct_destinations_stays_clean ... ok +test app::review_navigation_tests::rejected_semantic_source_writeback_retains_review_camera_and_original_navigation ... ok +test app::review_navigation_tests::review_already_showing_the_target_keeps_its_camera_and_query ... ok +test app::review_navigation_tests::semantic_name_take_selects_the_counterpart_view_in_both_directions_with_one_exact_history_entry ... ok +test app::review_navigation_tests::semantic_review_without_a_destination_view_clears_the_old_layer_canvas_without_creating_a_view ... ok +test app::save_as_tests::save_as_late_receipt_preserves_newer_raw_source_draft_and_destination ... ok +test app::save_as_tests::save_as_preflight_rejects_historical_collision_before_starting_io ... ok +test app::save_as_tests::save_as_receipt_then_one_undo_restores_meaning_and_saving_preserves_redo ... ok +test app::source_project_tests::closed_detached_file_keeps_first_save_conflict_then_can_be_reloaded_fresh ... ok +test app::source_project_tests::inactive_invalid_draft_blocks_graphical_changes_and_diagnostic_switches_files ... ok +test app::source_project_tests::json_export_and_rejected_save_as_preserve_source_location_history_and_bytes ... ok +test app::source_project_tests::missing_include_open_keeps_old_model_and_can_be_repaired_and_saved ... ok +test app::source_project_tests::recovery_after_first_save_failure_retains_target_then_retries_without_reentering_path ... ok +test app::source_project_tests::recovery_of_previous_save_as_target_does_not_redirect_current_project ... ok +test app::source_project_tests::recovery_open_finds_first_save_journal_without_an_entry_file ... ok +test app::source_project_tests::recovery_target_survives_edit_lint_apply_and_rejected_recovery_until_success ... ok +test app::source_project_tests::source3_native_open_preserves_report_comments_nesting_and_save_reopen ... ok +test app::source_project_tests::two_file_apply_graphical_edit_exact_undo_save_as_and_reopen ... ok +test app::state_diagram_tests::all_context_dimensions_reject_stale_selection_camera_and_model_messages ... ok +test app::state_diagram_tests::create_view_places_only_its_machine_and_restores_exact_source_in_one_undo ... ok +test app::state_diagram_tests::direct_create_connect_select_and_move_keep_semantic_identity_and_atomic_history ... ok +test app::state_diagram_tests::fallback_owner_first_selection_keeps_the_captured_context_for_its_first_move ... ok +test app::state_diagram_tests::pending_drafts_block_every_direct_mutation_and_passive_camera_preserves_inputs ... ok +test app::state_diagram_tests::real_view_tool_and_history_changes_invalidate_old_release_events ... ok +test app::state_diagram_tests::rejected_creation_keeps_source_and_selection_then_valid_owner_can_retry ... ok +test app::state_diagram_tests::same_size_viewport_after_revision_or_tool_epoch_does_not_refit_the_camera ... ok +test app::state_diagram_tests::shared_semantic_states_keep_architecture_and_behavior_placements_independent ... ok +test app::state_diagram_tests::state_diagram_routes_constructor_and_source_open_to_the_existing_workspace_without_edits ... ok +test app::state_diagram_tests::state_diagram_routes_picker_and_reveal_but_explicit_architecture_does_not_bounce ... ok +test app::state_diagram_tests::state_diagram_routes_preserve_selected_raw_properties_and_pending_behavior_guards ... ok +test app::state_diagram_tests::state_navigation_catalog_selection_across_layers_resets_camera_and_tool ... ok +test app::state_diagram_tests::state_navigation_catalog_selection_of_another_machine_resets_camera_and_tool ... ok +test app::state_diagram_tests::state_navigation_layer_change_resets_the_new_machine_at_the_same_viewport_size ... ok +test app::state_diagram_tests::state_navigation_return_to_the_same_view_preserves_camera_tool_and_fit_mode ... ok +test app::state_diagram_tests::state_navigation_root_event_and_same_layer_keep_the_current_camera_and_tool ... ok +test app::transition_context_tests::explicit_behavior_internal_and_process_roots_keep_their_workspace_without_creating_a_view ... ok +test app::transition_context_tests::explicit_destination_is_honored_and_ordinary_work_transition_still_places_in_architecture ... ok +test app::transition_context_tests::machine_and_typed_action_transitions_resolve_the_owner_and_reusing_that_context_retains_camera ... ok +test app::transition_context_tests::rejected_source_writeback_keeps_review_and_navigation_and_invalid_draft_still_blocks_start ... ok +test app::transition_context_tests::scenario_transition_focuses_requested_counterpart_and_preserves_unrelated_views_in_both_directions ... ok +test app::view_copy_tests::copying_architecture_keeps_architecture_even_with_a_retained_state_view ... ok +test app::view_copy_tests::copying_the_current_state_view_uses_its_own_identity_and_is_one_source_undo ... ok +test app::view_copy_tests::duplicate_rejection_preserves_an_incomplete_source_buffer ... ok +test app::view_copy_tests::duplicate_rejection_preserves_invalid_property_and_pending_behavior_drafts ... ok +test app::view_copy_tests::stale_copy_does_not_apply_an_unrelated_valid_property_draft ... ok +test behavior::canvas_workspace::tests::relative_camera_zoom_keeps_the_cursor_world_point_and_rejects_nonfinite_inputs ... ok +test behavior::canvas_workspace::tests::viewport_ordered_batch_uses_each_event_position_and_cancels_before_camera_motion ... ok +test behavior::contextual_source_tests::contextual_source_app_checkpoint_restores_inner_raw_draft_without_model_adoption ... ok +test behavior::contextual_source_tests::contextual_source_app_empty_actions_and_child_open_refuse_other_raw_editors ... ok +test behavior::contextual_source_tests::contextual_source_app_modal_escape_then_child_back_then_parent_cancel_preserve_accepted_source ... ok +test behavior::contextual_source_tests::contextual_source_back_remains_available_after_owner_deletion_and_with_dirty_editors ... ok +test behavior::contextual_source_tests::contextual_source_back_retains_parent_and_rejects_late_child_event ... ok +test behavior::contextual_source_tests::contextual_source_default_consumer_name_has_stable_alias_and_correlated_selection ... ok +test behavior::contextual_source_tests::contextual_source_deleted_owner_view_retains_draft_instead_of_panicking_or_using_fallback ... ok +test behavior::contextual_source_tests::contextual_source_empty_history_reports_no_change_and_success_requires_a_real_history_step ... ok +test behavior::contextual_source_tests::contextual_source_empty_palette_lifeline_cannot_open_a_previous_owner_or_layer ... ok +test behavior::contextual_source_tests::contextual_source_existing_choice_prunes_staged_dependency ... ok +test behavior::contextual_source_tests::contextual_source_failed_source_budget_preserves_both_drafts_and_accepted_bytes ... ok +test behavior::contextual_source_tests::contextual_source_incomplete_recovered_kind_reports_error_without_panicking ... ok +test behavior::contextual_source_tests::contextual_source_inserts_work_on_the_exact_guarded_link_and_refuses_exchange_identity_conflict ... ok +test behavior::contextual_source_tests::contextual_source_lifelines_stage_exact_separate_records_and_one_history_entry ... ok +test behavior::contextual_source_tests::contextual_source_machine_before_any_owner_creates_optional_view_atomically ... ok +test behavior::contextual_source_tests::contextual_source_mounted_small_editor_keeps_back_and_use_outside_field_scroll ... ok +test behavior::contextual_source_tests::contextual_source_nested_semantic_parent_is_explicit_and_revalidated ... ok +test behavior::contextual_source_tests::contextual_source_new_callee_lifeline_preserves_caller_bindings_as_an_explicit_warning ... ok +test behavior::contextual_source_tests::contextual_source_original_document_remains_bound_after_back_or_choosing_existing ... ok +test behavior::contextual_source_tests::contextual_source_owner_first_can_return_to_an_unnamed_machine_without_losing_source ... ok +test behavior::contextual_source_tests::contextual_source_recovery_keeps_inner_raw_fields_and_refuses_deleted_or_changed_owner ... ok +test behavior::contextual_source_tests::contextual_source_second_system_and_role_machine_owner_refuse_without_fallback ... ok +test behavior::contextual_source_tests::contextual_source_work_uses_reserved_contribution_and_link_ids_and_one_undo ... ok +test behavior::creation::app_tests::app_choosing_another_behavior_or_layer_cannot_commit_a_creation_draft ... ok +test behavior::creation::app_tests::app_creation_opens_the_actual_new_owner_instead_of_first_or_previously_active_behavior ... ok +test behavior::creation::app_tests::app_first_captured_escape_dismisses_file_or_pending_overlay_before_creation ... ok +test behavior::creation::app_tests::app_lesson_request_cancel_retains_creation_then_escape_discards_only_the_draft ... ok +test behavior::creation::app_tests::app_machine_behavior_submit_opens_its_opted_in_view_as_one_undoable_transaction ... ok +test behavior::creation::app_tests::app_new_never_auto_applies_valid_or_invalid_property_and_source_drafts ... ok +test behavior::creation::app_tests::app_recovered_rootless_sa_creation_retains_layer_ids_and_other_raw_drafts ... ok +test behavior::creation::app_tests::app_stale_layer_open_never_starts_or_replaces_a_draft ... ok +test behavior::creation::tests::all_four_viewpoints_are_explicit_and_survive_source_history_reopen ... ok +test behavior::creation::tests::cancel_and_illegal_family_layer_switches_never_create_model_objects ... ok +test behavior::creation::tests::corrupted_recovery_and_reserved_identity_collision_refuse_without_repairing_raw_values ... ok +test behavior::creation::tests::creation_selection_rejects_changed_scenario_body_and_post_creation_operations ... ok +test behavior::creation::tests::machine_requires_valid_owner_and_first_view_adds_no_region_or_state ... ok +test behavior::creation::tests::mounted_creation_keeps_actions_visible_and_renders_only_six_owner_candidates ... ok +test behavior::creation::tests::oa_process_and_sa_chain_keep_exact_names_root_ownership_and_one_history_entry ... ok +test behavior::creation::tests::optional_context_collapses_without_losing_authored_reference_or_raw_search ... ok +test behavior::creation::tests::owner_search_is_name_ordered_filtered_and_page_sized_not_a_catalog ... ok +test behavior::creation::tests::post_commit_selection_is_correlated_with_exact_created_behavior_and_view ... ok +test behavior::creation::tests::recovery_preserves_exact_raw_inputs_reserved_ids_and_revalidates_stale_owner ... ok +test behavior::creation::tests::rejected_source_transaction_keeps_draft_and_every_accepted_source_byte ... ok +test behavior::creation::tests::repeated_owner_names_remain_distinguishable_by_searchable_parent_context_and_alias ... ok +test behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand ... ok +test behavior::direct_canvas_tests::direct_bounds_change_during_held_drag_never_commits_old_slot ... ok +test behavior::direct_canvas_tests::direct_clicked_occurrence_capture_cancels_on_view_and_context_changes ... ok +test behavior::direct_canvas_tests::direct_context_escape_unfocus_and_pending_form_cancel_gestures ... ok +test behavior::direct_canvas_tests::direct_drag_and_click_click_use_ordered_sources_and_publish_once ... ok +test behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call ... ok +test behavior::direct_canvas_tests::direct_panned_canvas_maps_ordered_pointer_events_to_the_visible_slot ... ok +test behavior::direct_canvas_tests::direct_scroll_resize_and_bounds_changes_cancel_captured_slots ... ok +test behavior::direct_canvas_tests::direct_selected_handle_reorders_and_hits_keep_semantic_identity ... ok +test behavior::direct_canvas_tests::reused_exchange_messages_display_their_distinct_occurrence_names ... ok +test behavior::scenario::data_contract_tests::large_payload_has_one_editor_with_reachable_field_and_authored_pages ... ok +test behavior::scenario::data_contract_tests::recursive_browsing_up_and_root_keep_values_and_report_the_depth_limit ... ok +test behavior::scenario::data_contract_tests::recursive_value_focus_exposes_authored_leaf_and_phase_changes_retain_surviving_keys ... ok +test behavior::scenario::data_contract_tests::reply_call_picker_previews_the_same_value_reset_as_selecting_another_exchange ... ok +test behavior::scenario::data_contract_tests::scenario_form_commits_two_reused_record_values_and_correlated_reply_atomically ... ok +test behavior::scenario::direct_tests::direct_busy_save_keeps_details_current_and_camera_for_the_next_pointer_gesture ... ok +test behavior::scenario::direct_tests::direct_clicked_occurrence_rejects_stale_slots_and_retains_recoverable_drafts ... ok +test behavior::scenario::direct_tests::direct_clicked_occurrences_use_root_and_operand_slots_with_exact_source_history ... ok +test behavior::scenario::direct_tests::direct_exchange_compatibility_browsing_preserves_final_slot_validation ... ok +test behavior::scenario::direct_tests::direct_exchange_picker_is_bounded_and_browsing_keeps_pending_values ... ok +test behavior::scenario::direct_tests::direct_five_hundred_exchange_choice_render_probe ... ok +test behavior::scenario::direct_tests::direct_form_keeps_the_same_canvas_in_the_widget_tree ... ok +test behavior::scenario::direct_tests::direct_middle_pair_insertion_is_one_exact_source_and_model_undo ... ok +test behavior::scenario::direct_tests::direct_operand_pair_keeps_parent_sequence_and_cannot_reorder_across_operands ... ok +test behavior::scenario::direct_tests::direct_reply_choices_cache_keeps_typing_fast_and_revalidates_changed_contexts ... ok +test behavior::scenario::direct_tests::direct_reply_choices_validate_the_actual_slot_and_reorder_rejects_reverse_order ... ok +test behavior::scenario::direct_tests::direct_scenario_reference_navigation_blocks_pending_drafts_and_stale_contexts ... ok +test behavior::scenario::direct_tests::direct_scenario_reference_navigation_retains_each_exact_caller_without_history ... ok +test behavior::scenario::direct_tests::direct_scenario_reference_return_survives_rename_and_rejects_deleted_or_changed_use ... ok +test behavior::scenario::operation_tests::operation_gui_async_picker_uses_request_root_and_nested_directions_without_erasing_rejected_values ... ok +test behavior::scenario::operation_tests::operation_gui_selects_two_parameterless_allocations_without_inventing_refinement_and_reply_derives_call ... ok +test behavior::scenario::operation_tests::operation_gui_unresolved_and_disabled_selection_recovery_preserves_rejected_raw_values ... ok +test behavior::scenario::tests::fragment_operands_accept_paired_messages_through_normal_destination_picker ... ok +test behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent ... ok +test behavior::scenario::tests::invalid_lifecycle_edit_keeps_draft_and_timer_has_no_global_exchange ... ok +test behavior::scenario::tests::lifeline_picker_uses_core_viewpoint_contract ... ok +test behavior::scenario::tests::reverse_communication_canvas_choices_and_correlated_reply_share_core_direction ... ok +test behavior::scenario::tests::scenario_reuse_requires_explicit_compatible_bindings ... ok +test behavior::scenario::tests::tagged_scenario_commit_is_not_redirected_by_other_editor_events ... ok +test behavior::scenario::workspace::tests::new_scenario_form_resets_only_its_scroll_and_recovery_gets_a_fresh_session ... ok +test behavior::scenario::workspace::tests::production_empty_scenario_lifeline_tool_keeps_staged_source_inside_stable_canvas ... ok +test behavior::scenario::workspace::tests::production_scenario_camera_external_controls_bounds_and_retained_deltas_cancel_old_drags ... ok +test behavior::scenario::workspace::tests::production_scenario_canvas_keeps_bounds_draft_identity_and_camera_through_editing ... ok +test behavior::scenario::workspace::tests::production_scenario_canvas_pan_invalidates_a_pressed_creation_and_caller_restores_once ... ok +test behavior::scenario::workspace::tests::production_scenario_keyboard_enters_activates_draws_focus_and_returns_to_inspector ... ok +test behavior::scenario::workspace::tests::production_scenario_keyboard_reveals_and_activates_initially_offscreen_last_tool ... ok +test behavior::scenario::workspace::tests::production_scenario_retained_toolbar_intents_reject_chooser_dirty_and_picker_lifetimes ... ok +test behavior::scenario::workspace::tests::production_scenario_whole_glyph_drag_moves_one_occurrence_and_rejects_other_operand ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_chained_apply_rechecks_live_review_owner ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_missing_exact_target_leaves_other_inputs_untouched ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_returns_from_back_use_and_escape_after_initial_focus_is_consumed ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_saved_action_is_inert_on_replacement_child_review_and_changed_context ... ok +test behavior::scenario::workspace::tests::scenario_form_focus_targets_the_name_and_rejects_stale_sessions_or_modals ... ok +test behavior::scenario::workspace::tests::scenario_workspace_choosing_tools_preserves_valid_and_invalid_pending_editors ... ok +test behavior::scenario::workspace::tests::scenario_workspace_fit_uses_measured_inner_viewport_and_rejects_nonfinite_inputs ... ok +test behavior::scenario::workspace::tests::scenario_workspace_open_and_back_restore_owner_and_mounted_camera_after_preselection ... ok +test behavior::scenario::workspace::tests::scenario_workspace_same_size_owner_and_document_changes_remeasure_fit_viewport ... ok +test behavior::scenario::workspace::tests::scenario_workspace_scaled_and_panned_scene_keeps_clicked_slots_and_message_endpoints ... ok +test behavior::scenario::workspace::tests::scenario_workspace_scaled_nested_occurrences_and_reorder_keep_exact_sequence_identity ... ok +test behavior::scenario::workspace::tests::scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_forms ... ok +test behavior::scenario_activation::tests::a_fragment_cannot_make_crossed_calls_an_unambiguous_caller_execution ... ok +test behavior::scenario_activation::tests::actual_canvas_pointer_selects_each_exposed_shoulder_under_zoom_and_pan ... ok +test behavior::scenario_activation::tests::alternative_and_parallel_operand_local_calls_do_not_nest_from_screen_order ... ok +test behavior::scenario_activation::tests::an_inactive_self_call_has_no_fabricated_parent_and_three_nested_calls_expose_three_columns ... ok +test behavior::scenario_activation::tests::call_uuid_order_does_not_choose_activation_columns_or_message_anchors ... ok +test behavior::scenario_activation::tests::inherited_execution_anchors_a_self_call_inside_an_operand_before_returning_after_the_fragment ... ok +test behavior::scenario_activation::tests::missing_reply_is_a_short_explicit_open_span_and_an_uncorrelated_reply_closes_nothing ... ok +test behavior::scenario_activation::tests::nested_calls_expose_both_bars_and_end_at_their_exact_replies_in_both_directions ... ok +test behavior::scenario_activation::tests::nested_correlations_returning_in_alternative_operands_remain_nested_before_the_fragment ... ok +test behavior::scenario_activation::tests::reentrant_call_uses_the_other_receiver_without_inventing_a_caller_execution ... ok +test behavior::scenario_activation::tests::self_call_receives_at_lower_loop_end_and_self_reply_returns_to_the_parent ... ok +test behavior::scenario_activation::tests::sequential_calls_reuse_column_and_crossed_replies_keep_their_correlations ... ok +test behavior::scenario_lifecycle::tests::alternative_death_does_not_kill_its_displayed_sibling ... ok +test behavior::scenario_lifecycle::tests::conditional_birth_does_not_infer_absence_in_siblings_or_ancestors ... ok +test behavior::scenario_lifecycle::tests::explicit_receiver_is_authoritative_even_with_missing_exchange ... ok +test behavior::scenario_lifecycle::tests::lifecycle_free_fragments_do_not_poison_other_lanes ... ok +test behavior::scenario_lifecycle::tests::loop_lifetime_is_local_and_warning_bearing_loops_remain_drawable ... ok +test behavior::scenario_lifecycle::tests::missing_geometry_is_reported_without_nonfinite_or_guessed_markers ... ok +test behavior::scenario_lifecycle::tests::optional_cleanup_inside_loop_does_not_claim_balanced_or_definite_exit ... ok +test behavior::scenario_lifecycle::tests::projection_retains_exact_authored_source_and_does_not_enter_history ... ok +test behavior::scenario_lifecycle::tests::root_lifetime_has_exact_birth_death_boundaries_without_source_mutation ... ok +test behavior::scenario_lifecycle::tests::scenario_use_is_opaque_and_never_imports_callee_lifecycle_events ... ok +test behavior::scenario_scroll::tests::direct_scenario_caller_restores_mounted_scroll_once_with_clamping_and_app_receipt ... ok +test behavior::scenario_scroll::tests::direct_scenario_restore_cannot_scroll_another_document_owner_or_process_view ... ok +test behavior::scenario_scroll::tests::direct_scroll_mounted_identity_resets_navigation_but_preserves_edits_before_first_report ... ok +test behavior::scenario_scroll::tests::direct_scroll_observer_reports_actual_initial_clamped_and_remounted_offsets_once ... ok +test behavior::scenario_scroll::tests::independent_process_owner_change_resets_actual_scroll_offsets ... ok +test behavior::state_canvas::tests::context_menu_keeps_window_anchor_and_explicit_placement_identity ... ok +test behavior::state_canvas::tests::context_tool_and_pending_form_changes_cancel_mutating_gestures ... ok +test behavior::state_canvas::tests::creation_uses_the_explicit_deepest_owner_and_never_a_fallback_ancestor ... ok +test behavior::state_canvas::tests::drag_uses_ordered_release_at_each_zoom_and_moves_descendants_in_one_undo ... ok +test behavior::state_canvas::tests::escape_and_view_switch_discard_the_armed_transition_source ... ok +test behavior::state_canvas::tests::internal_rows_and_pseudostate_hits_use_shared_persisted_geometry ... ok +test behavior::state_canvas::tests::ordered_stationary_click_does_not_move_on_later_motion_in_the_same_batch ... ok +test behavior::state_canvas::tests::pan_is_button_scoped_read_only_and_hover_does_not_reproject_the_scene ... ok +test behavior::state_canvas::tests::pseudostate_names_avoid_rightward_and_downward_routes_and_share_hit_bounds ... ok +test behavior::state_canvas::tests::relayout_does_not_turn_a_transition_click_into_a_drag_or_pan ... ok +test behavior::state_canvas::tests::selected_endpoint_reconnect_preserves_identity_and_requires_handle_motion ... ok +test behavior::state_canvas::tests::selection_relayout_does_not_move_nodes_or_change_drag_distance ... ok +test behavior::state_canvas::tests::stacked_symbol_names_avoid_each_other_and_are_independent_of_input_order ... ok +test behavior::state_canvas::tests::transition_supports_click_click_and_drag_without_coalesced_accidental_edges ... ok +test behavior::state_canvas::tests::typed_state_actions_are_named_selectable_rows_before_internal_transitions_and_regions ... ok +test behavior::state_canvas::tests::viewport_uses_full_canvas_coordinates_and_republishes_for_a_new_context ... ok +test behavior::state_edit::tests::an_empty_machine_has_an_explicit_visible_owner_for_first_region_creation ... ok +test behavior::state_edit::tests::connect_preserves_self_loops_and_rejects_hidden_or_incompatible_vertices ... ok +test behavior::state_edit::tests::creation_places_missing_ancestry_and_unfolds_existing_owners_atomically ... ok +test behavior::state_edit::tests::every_context_component_and_invalid_ownership_are_checked_before_planning ... ok +test behavior::state_edit::tests::placing_existing_content_and_moving_a_folded_group_preserve_other_views_and_semantics ... ok +test behavior::state_edit::tests::reconnect_preserves_the_complete_record_and_replaces_cardinality_in_place ... ok +test behavior::state_edit::tests::view_initializes_only_its_machine_in_one_source_and_model_history_entry ... ok +test behavior::states::tests::internal_choice_targets_self_and_edit_preserves_identity_and_description ... ok +test behavior::states::tests::invalid_pseudo_trigger_keeps_draft_and_does_not_create_orphan_event ... ok +test behavior::states::tests::selected_composite_owns_new_region_and_history_uses_selected_region ... ok +test behavior::states::tests::timeout_and_work_trigger_commit_together_roundtrip_and_undo ... ok +test behavior::tests::failed_document_commit_retains_typed_transition_and_time_event_for_repair ... ok +test behavior::tests::legacy_process_and_chain_keep_their_ordered_exchange_scene ... ok +test behavior::tests::one_behavior_form_survives_start_edit_and_unrelated_cancel_until_commit ... ok +test behavior::tests::recovery_preserves_distinct_qualified_value_paths_and_rejects_invalid_payload_atomically ... ok +test behavior::tests::recovery_retains_each_incomplete_behavior_form_without_executing_it ... ok +test behavior::tests::selecting_state_transition_keeps_its_behavior_context ... ok +test behavior::topology::contextual::tests::qualified_link_gui_deleted_transient_selection_does_not_seed_or_hide_retained_authored_endpoint ... ok +test behavior::topology::contextual::tests::qualified_link_gui_nested_preview_folds_only_the_exact_reference_instance ... ok +test behavior::topology::contextual::tests::qualified_link_gui_rejected_endpoint_keeps_exact_raw_intent_after_recovery ... ok +test behavior::topology::contextual::tests::qualified_link_gui_repeated_sources_remain_distinct_and_apply_has_exact_source_history ... ok +test behavior::topology::contextual::tests::qualified_link_gui_scope_paging_and_search_reach_tail_beyond_512_without_losing_endpoints ... ok +test behavior::topology::contextual_routing::tests::contextual_route_native_x_to_first_b_keeps_visible_arrow_above_background_and_clear_of_other_references ... ok +test behavior::topology::contextual_routing::tests::contextual_route_nested_visible_hidden_and_parallel_paths_keep_exact_addresses_and_legacy_routes ... ok +test behavior::topology::contextual_routing::tests::contextual_route_shared_anchor_preserves_selected_direct_reconnect_at_fit_and_full_scale ... ok +test behavior::topology::direct_tests::direct_process_append_preserves_existing_order_and_rejects_incompatible_exchange ... ok +test behavior::topology::direct_tests::direct_process_controls_allow_incomplete_work_and_preserve_branch_semantics ... ok +test behavior::topology::direct_tests::direct_process_empty_first_and_second_exchange_keep_the_same_interactive_renderer ... ok +test behavior::topology::direct_tests::direct_process_imported_order_is_projected_without_mutation_and_first_canvas_edit_is_atomic ... ok +test behavior::topology::direct_tests::direct_process_incompatible_imported_order_rejects_conversion_without_losing_draft ... ok +test behavior::topology::direct_tests::direct_process_nested_source_reopen_and_api_command_use_one_transaction ... ok +test behavior::topology::direct_tests::direct_process_oa_sa_repeated_occurrences_share_sources_and_split_one_guarded_link ... ok +test behavior::topology::direct_tests::direct_process_palette_preserves_fit_and_manual_camera ... ok +test behavior::topology::direct_tests::direct_process_production_click_click_drag_insert_and_camera_coordinates ... ok +test behavior::topology::direct_tests::direct_process_production_endpoint_and_peer_reorder_handles_publish_exact_identity ... ok +test behavior::topology::direct_tests::direct_process_production_stale_focus_scroll_bounds_and_pending_cancel ... ok +test behavior::topology::direct_tests::direct_process_readable_default_fit_expansion_and_bounded_choices ... ok +test behavior::topology::direct_tests::direct_process_real_picker_stays_bounded_and_search_keeps_selection ... ok +test behavior::topology::direct_tests::direct_process_reconnect_delete_and_reorder_preserve_other_paths_and_sources ... ok +test behavior::topology::direct_tests::direct_process_reuse_preview_is_local_expandable_and_recursive_sources_are_rejected ... ok +test behavior::topology::direct_tests::direct_process_scaled_control_and_link_gestures_use_visible_positions ... ok +test behavior::topology::direct_tests::direct_process_specific_parallel_link_and_incompatible_adjacency ... ok +test behavior::topology::direct_tests::direct_process_three_ordered_exchanges_preserve_outer_paths_on_insertion ... ok +test behavior::topology::tests::cycle_projection_terminates_and_retains_actual_links ... ok +test behavior::topology::tests::empty_process_can_start_through_normal_authoring_events ... ok +test behavior::topology::tests::fitting_a_branch_keeps_all_nodes_visible_and_selection_uses_scaled_coordinates ... ok +test behavior::topology::tests::guarded_branch_is_one_transaction_with_distinct_source_identities ... ok +test behavior::topology::tests::insertion_picker_only_offers_work_matching_adjacent_exchanges ... ok +test behavior::topology::tests::legacy_branch_insertion_replaces_only_the_selected_implied_link ... ok +test behavior::topology::tests::legacy_edit_preserves_order_and_new_work_in_one_undo ... ok +test behavior::topology::tests::long_engineering_identifiers_stay_inside_label_width ... ok +test behavior::topology::tests::process_camera_selection_ignores_independent_details_scroll ... ok +test behavior::topology::tests::process_fit_uses_measured_height_and_reports_minimum_without_changing_manual_zoom ... ok +test behavior::topology::tests::process_zoom_and_disclosures_preserve_rejected_raw_draft_and_accepted_source ... ok +test behavior::topology::tests::reusable_preview_preserves_identity_and_filters_recursive_sources ... ok +test behavior::topology::tests::stale_or_invalid_submit_preserves_inputs_and_creates_nothing ... ok +test behavior::topology::tests::unlinked_contributions_do_not_gain_fictional_edges ... ok +test behavior::topology::view::layout_tests::production_canvas_keyboard_and_delayed_tasks_respect_real_chooser_and_review_owners ... ok +test behavior::topology::view::layout_tests::production_process_caller_return_rejects_its_previous_camera_lifetime ... ok +test behavior::topology::view::layout_tests::production_process_camera_external_controls_bounds_and_retained_deltas_cancel_old_drags ... ok +test behavior::topology::view::layout_tests::production_process_canvas_focus_wheel_fit_and_stale_camera_are_presentation_only ... ok +test behavior::topology::view::layout_tests::production_process_canvas_scaled_path_creation_preserves_source_and_editor_bounds ... ok +test behavior::topology::view::layout_tests::production_process_form_replacement_resets_scroll_without_a_closed_render ... ok +test behavior::topology::view::layout_tests::production_process_keyboard_enters_activates_draws_focus_and_returns_to_inspector ... ok +test behavior::topology::view::layout_tests::production_process_keyboard_reveals_and_activates_initially_offscreen_last_tool ... ok +test behavior::topology::view::layout_tests::production_process_retained_toolbar_intents_reject_chooser_dirty_and_picker_lifetimes ... ok +test connection_edit::tests::cancel_navigation_revision_and_dirty_drafts_cannot_commit_a_stale_connection ... ok +test connection_edit::tests::visible_endpoint_drawing_commits_ports_and_exchange_once_with_exact_history ... ok +test connection_tool::tests::boundary_candidates_match_core_orientation_and_reject_same_owner_or_mixed_kind ... ok +test connection_tool::tests::boundary_feasibility_keeps_interface_warnings_and_final_carried_item_checks ... ok +test connection_tool::tests::boundary_feasibility_rejects_dangling_identity_in_a_malformed_element_map ... ok +test connection_tool::tests::direct_connections_share_exact_source_history_and_model_parity ... ok +test connection_tool::tests::explicit_function_ports_keep_owners_contracts_and_do_not_invent_carried_items ... ok +test connection_tool::tests::final_command_validation_rejects_invalid_models_without_mutation ... ok +test connection_tool::tests::function_cards_use_unique_reuse_and_atomic_generation_when_ambiguous ... ok +test connection_tool::tests::mismatched_port_owners_layers_and_contract_kinds_are_not_candidates ... ok +test connection_tool::tests::operational_communication_uses_participants_without_creating_ports ... ok +test connection_tool::tests::operational_interaction_targets_only_distinct_oa_activities ... ok +test context_menu::tests::a_new_context_token_cannot_reuse_the_previous_mouse_press_or_scroll ... ok +test context_menu::tests::actions_area_does_not_swallow_first_independent_click_after_overlay_consumed_its_release ... ok +test context_menu::tests::anchors_outside_the_window_and_nonfinite_input_stay_bounded ... ok +test context_menu::tests::clicking_disabled_or_dragging_off_an_action_never_executes_it ... ok +test context_menu::tests::coalesced_dismissal_release_does_not_swallow_the_next_independent_click ... ok +test context_menu::tests::empty_and_disabled_only_menus_still_capture_keys_and_escape_closes ... ok +test context_menu::tests::keyboard_skips_headers_separators_and_disabled_actions_and_invokes_once ... ok +test context_menu::tests::outside_dismissal_consumes_press_and_release_across_controlled_close ... ok +test context_menu::tests::reconstructed_overlay_uses_retained_layout_for_rows_and_hit_testing ... ok +test context_menu::tests::retained_overlay_layout_keeps_measured_width_and_scrollbar_after_reconstruction ... ok +test context_menu::tests::tall_menu_clamps_to_viewport_and_keyboard_wheel_and_scrollbar_reach_the_end ... ok +test data_values::tests::phase_choices_keep_reused_record_addresses_distinct ... ok +test data_values::tests::recursive_picker_starts_with_distinct_leaf_names_and_sorts_them ... ok +test data_values::tests::recursive_records_can_be_drilled_into_and_valid_imported_paths_resolve ... ok +test data_values::tests::reference_parameter_stops_descent_and_unspecified_direction_remains_visible ... ok +test data_values::tests::roots_and_one_hop_children_do_not_expand_unrelated_payload_branches ... ok +test data_view::tests::allocation_rows_edit_relationship_identity_and_remove_only_that_allocation ... ok +test data_view::tests::association_creation_is_a_separate_relation_with_editable_end_contracts ... ok +test data_view::tests::browsing_pages_preserves_invalid_numeric_draft_and_inherited_allocation_identity ... ok +test data_view::tests::contextual_data_actions_use_typed_defaults_and_one_undo ... ok +test data_view::tests::large_inherited_dictionary_has_bounded_widgets_and_every_original_field_is_reachable ... ok +test diagram::lifecycle_tests::menu_reset_and_draw_use_fresh_open_context ... ok +test diagram::lifecycle_tests::middle_and_arrow_panning_preserve_source_and_history ... ok +test diagram::lifecycle_tests::motion_after_release_must_not_move_clicked_port ... ok +test diagram::lifecycle_tests::motion_after_source_click_release_must_not_create_connection ... ok +test diagram::pointer_tests::coalesced_fe_ports_commit_once_through_app_and_source_history ... ok +test diagram::pointer_tests::coalesced_port_drag_commits_once_through_app_and_source_history ... ok +test diagram::pointer_tests::drag_from_already_selected_stationary_port_keeps_source_between_batches ... ok +test diagram::pointer_tests::menu_captured_motion_must_not_turn_following_click_into_old_port_drag ... ok +test diagram::pointer_tests::modal_and_stale_epoch_block_queued_connection_and_port_commits ... ok +test diagram::port_hit_tests::coincident_ports_keep_selection_then_use_stable_identity ... ok +test diagram::port_hit_tests::nearest_port_center_wins_on_all_borders_and_zoom_levels ... ok +test diagram::port_hit_tests::nested_owner_palette_selection_drag_and_context_menu_pick_the_same_port ... ok +test diagram::port_labels::tests::leaving_and_reentering_keeps_suppression_until_each_held_button_releases ... ok +test diagram::port_labels::tests::menu_epoch_clears_suppression_when_the_overlay_consumes_release ... ok +test diagram::port_labels::tests::outside_presses_do_not_suppress_and_cancel_or_focus_loss_clear_held_buttons ... ok +test diagram::port_labels::tests::passive_layer_leaves_port_drag_selection_and_commit_with_the_interactive_canvas ... ok +test diagram::tests::association_end_contracts_share_svg_geometry_and_select_without_moving_name_label ... ok +test diagram::tests::bend_gestures_use_screen_hit_radius_and_commit_one_undo_at_three_zooms ... ok +test diagram::tests::coincident_line_hit_retains_the_selected_connection ... ok +test diagram::tests::connection_gestures_pick_real_ports_and_commit_coalesced_drag_at_every_zoom ... ok +test diagram::tests::detached_label_selects_connection_and_occluding_card_owns_its_hit ... ok +test diagram::tests::dragging_a_child_previews_the_same_enclosure_and_ports_as_commit ... ok +test diagram::tests::fast_drags_commit_the_release_cursor_without_a_final_motion_event ... ok +test diagram::tests::implicit_port_click_selects_semantics_and_drag_preview_svg_share_anchors ... ok +test diagram::tests::route_cache_ignores_pan_zoom_and_cancelled_drag_cannot_commit ... ok +test diagram::tests::routed_svg_has_same_polyline_label_and_bounds_as_canvas_scene ... ok +test diagram::tests::svg_distinguishes_inferred_work_allocation_from_direct_allocation ... ok +test diagram::tests::svg_preserves_visible_exchange_labels_and_capability_stereotypes ... ok +test diagram::tests::typed_function_glyphs_and_unoriented_standard_connections_have_distinct_svg ... ok +test diagram::view_options_tests::communication_svg_uses_saved_visibility_labels_and_direction ... ok +test document::save_as_tests::save_as_preserves_explicit_source_entry_changes_in_history ... ok +test document::save_as_tests::save_as_rebases_uniform_history_without_an_undo_step_or_lost_redo ... ok +test document::save_as_tests::save_as_rejects_included_filename_collisions_in_past_and_future_without_mutation ... ok +test document::save_as_tests::save_as_rejects_stale_or_content_changing_receipt_atomically ... ok +test document::tests::accepted_history_keeps_the_latest_hundred_complete_snapshots ... ok +test document::tests::altered_compiled_model_or_index_is_rejected_without_mutation ... ok +test document::tests::asynchronous_save_marks_its_snapshot_without_cleaning_later_edits ... ok +test document::tests::byte_budget_trims_oldest_history_without_discarding_a_large_current ... ok +test document::tests::cached_view_index_tracks_accepted_creation_undo_and_redo ... ok +test document::tests::comment_and_semantic_history_restore_exact_bytes_and_branch_together ... ok +test document::tests::creation_selects_the_single_uuid_persisted_in_source ... ok +test document::tests::invalid_project_is_rejected_before_format_can_normalize_it ... ok +test document::tests::nested_cross_file_reparent_and_source_edit_share_exact_history ... ok +test document::tests::no_op_command_or_source_apply_preserves_history_revision_and_redo ... ok +test document::tests::omitted_id_stabilization_remains_dirty_until_exact_source_is_saved ... ok +test document::tests::recreated_equal_record_does_not_inherit_deleted_source_ownership ... ok +test document::tests::rejected_compile_command_and_writeback_preserve_state_and_redo ... ok +test explorer::tests::collapse_and_search_retain_context_without_changing_collapse_state ... ok +test explorer::tests::deep_containment_and_search_keep_the_full_path_without_recursion ... ok +test explorer::tests::equal_names_have_stable_alias_and_identity_tie_breakers ... ok +test explorer::tests::perspective_isolation_and_allocations_do_not_change_containment ... ok +test explorer::tests::prefix_names_cannot_separate_a_parent_from_its_children ... ok +test forms::data_fields::tests::defaults_distinguish_absent_empty_and_typed_literals_with_escaped_unicode ... ok +test forms::data_fields::tests::field_browser_pages_every_direct_field_without_flattening_other_records ... ok +test forms::data_fields::tests::independent_review_combined_take_type_informs_actual_default_form_in_both_directions ... ok +test forms::data_fields::tests::numeric_bound_drafts_keep_partial_and_full_precision_values_out_of_accepted_state ... ok +test forms::data_fields::tests::selecting_qualified_path_preserves_expression_typed_before_the_next_render ... ok +test forms::data_fields::tests::semantic_reference_choices_follow_selected_mechanism_and_revert_on_keep ... ok +test forms::data_fields::tests::supertype_picker_excludes_descendants_and_keeps_original_inherited_field_identity ... ok +test forms::history_fields::tests::history_absent_baseline_and_empty_history_use_explicit_facts_and_exact_document_history ... ok +test forms::history_fields::tests::history_clear_discards_inactive_invalid_constructors_before_reusing_the_same_row ... ok +test forms::history_fields::tests::history_compound_value_and_constructor_variants_are_editable_without_live_context ... ok +test forms::history_fields::tests::history_deleted_keys_and_observation_uuids_remain_exact_and_duplicate_history_rejects ... ok +test forms::history_fields::tests::history_every_descriptor_fact_choice_matches_actual_closed_types_and_source_contract ... ok +test forms::history_fields::tests::history_exact_strings_do_not_confuse_uuid_shaped_prose_or_literal_keys_with_references ... ok +test forms::history_fields::tests::history_invalid_numbers_survive_constructor_switch_reorder_removal_and_recovery ... ok +test forms::history_fields::tests::history_missing_semantic_field_can_be_added_and_removed_without_touching_prose_or_live_objects ... ok +test forms::history_fields::tests::history_nested_optional_number_events_switch_absent_present_and_recover_invalid_raw ... ok +test forms::history_fields::tests::history_nested_uuid_and_list_events_preserve_present_values_and_tagged_item_branches ... ok +test forms::history_fields::tests::history_optional_uuid_and_text_seed_absence_without_inventing_observations ... ok +test forms::history_fields::tests::history_primitive_type_choices_remain_visible_inside_the_tagged_union ... ok +test forms::history_fields::tests::history_retained_text_constructors_follow_exact_mode_without_changing_the_observation ... ok +test forms::port_fields::tests::all_demo_records_roundtrip_through_graphical_and_escaped_string_drafts ... ok +test forms::port_fields::tests::boundary_choices_honor_draft_direction_same_kind_and_direct_interface_items ... ok +test forms::port_fields::tests::contract_choices_follow_owner_and_never_offer_legacy_or_oa_typed_ports ... ok +test forms::port_fields::tests::failed_shape_keeps_incomplete_text_and_saved_contract_payloads ... ok +test forms::port_fields::tests::functional_endpoints_require_owner_direction_and_items_but_retain_bad_current_choice ... ok +test forms::port_fields::tests::interface_roles_offer_participants_and_component_ports_independent_of_orientation ... ok +test forms::port_fields::tests::port_allocation_choices_use_actual_owner_direction_and_ignore_edited_relation ... ok +test forms::port_fields::tests::standard_switch_retains_incompatible_orientation_until_explicit_repair ... ok +test forms::port_fields::tests::switching_function_direction_preserves_invalid_items_and_each_authored_payload ... ok +test forms::reference_chooser::tests::captured_choice_cannot_cross_document_revision_draft_record_or_array_path ... ok +test forms::reference_chooser::tests::catalog_search_disambiguates_repeated_names_containment_alias_and_exact_placement_identity ... ok +test forms::reference_chooser::tests::dismissal_swallows_matching_release_across_closed_rebuild_but_next_click_reaches_parent ... ok +test forms::reference_chooser::tests::empty_search_escape_tab_and_optional_clear_do_not_silently_choose_nil ... ok +test forms::reference_chooser::tests::historical_paths_never_open_and_only_explicit_choice_or_clear_is_a_write ... ok +test forms::reference_chooser::tests::mounted_clipboard_paste_and_ime_commit_preserve_whole_strings_without_selecting ... ok +test forms::reference_chooser::tests::mounted_filtered_row_click_uses_the_displayed_identity_and_scoped_write_intent ... ok +test forms::reference_chooser::tests::mounted_input_preserves_rapid_same_batch_typing_and_cursor_across_controlled_rebuilds ... ok +test forms::reference_chooser::tests::mounted_keyboard_pages_and_selects_only_the_highlighted_visible_candidate_once ... ok +test forms::reference_chooser::tests::mounted_overlay_clamps_at_three_field_positions_and_keeps_results_and_query_bounded ... ok +test forms::reference_chooser::tests::mounted_query_change_rejects_old_release_and_old_result_events_without_locking_popup ... ok +test forms::reference_chooser::tests::mounted_query_then_escape_in_one_batch_closes_and_relative_keys_keep_input_order ... ok +test forms::reference_chooser::tests::out_of_order_query_serials_cannot_restore_obsolete_results ... ok +test forms::tests::data_and_port_choices_are_typed_but_retain_invalid_current_values ... ok +test forms::tests::editing_allocation_offers_other_performers_without_counting_itself_twice ... ok +test forms::tests::moving_placement_and_changing_identity_is_one_lossless_undoable_edit ... ok +test forms::tests::parent_choices_reject_cycles_without_removing_clear_or_current_choice ... ok +test forms::tests::reply_and_reuse_forms_offer_semantically_compatible_references ... ok +test forms::tests::scenario_choices_respect_owner_and_exchange_layer ... ok +test forms::tests::semantic_port_group_choices_use_combined_owner_and_retain_invalid_transferred_items ... ok +test forms::tests::shared_perspective_change_keeps_payload_and_rejects_incompatible_dependencies ... ok +test forms::tests::state_observation_picker_keeps_work_lifelines_allocated_to_machine_owner ... ok +test forms::tests::state_placement_form_uses_draft_destination_membership_without_changing_other_views ... ok +test forms::tests::state_projection_form_keeps_string_variants_and_requires_a_typed_context ... ok +test forms::view_fields::tests::category_family_change_retains_members_until_explicit_correction ... ok +test forms::view_fields::tests::selective_view_property_apply_recovery_and_undo_preserve_semantics_and_empty_choices ... ok +test guide::tests::filtering_and_related_navigation_keep_selection_visible ... ok +test guide::tests::guide_topic_navigation_resets_only_article_and_same_topic_search_keeps_scroll ... ok +test guide::tests::search_finds_concepts_in_walkthroughs_and_api_reference ... ok +test home::tests::corrupt_future_and_oversized_history_are_preserved_with_usable_session_history ... ok +test home::tests::failed_metadata_replace_keeps_previous_history_and_reports_memory_only_entry ... ok +test home::tests::first_and_replaced_metadata_are_parseable_and_contain_no_model_bytes ... ok +test home::tests::forgotten_and_missing_files_never_change_the_model_or_other_entries ... ok +test home::tests::loading_missing_history_does_not_create_files_or_directories ... ok +test home::tests::malformed_entries_and_unknown_fields_never_become_open_requests ... ok +test home::tests::successful_local_history_is_bounded_ordered_deduplicated_and_durable ... ok +test home::tests::unavailable_location_can_reappear_on_refresh_without_losing_identity ... ok +test home::tests::walkthrough_uses_packaged_bundle_before_development_and_reports_missing_assets ... ok +test hosted::client::tests::hosted_endpoint_validation_redacts_secrets_and_preserves_proxy_paths ... ok +test hosted::client::tests::hosted_lost_publication_response_is_uncertain_without_retry ... ok +test hosted::client::tests::hosted_open_rejects_incoherent_envelopes_missing_etags_and_unstable_ids ... ok +test hosted::client::tests::hosted_oversized_local_bundle_is_rejected_before_network_admission ... ok +test hosted::client::tests::hosted_production_auth_proxy_prefix_and_located_rejection ... ok +test hosted::client::tests::hosted_production_roundtrip_preserves_comments_noops_and_conflicts ... ok +test hosted::client::tests::hosted_publication_race_keeps_receipt_identity_for_review ... ok +test hosted::client::tests::hosted_publication_retains_known_resource_after_failed_followup ... ok +test hosted::client::tests::hosted_put_preserves_an_opaque_etag_and_compiles_the_accepted_bundle ... ok +test hosted::client::tests::hosted_redirect_is_not_followed_or_retried_and_problem_tokens_are_redacted ... ok +test hosted::client::tests::hosted_response_limits_cover_declared_and_chunked_bodies ... ok +test hosted::client::tests::hosted_structured_mutation_failures_distinguish_precommit_rejections ... ok +test hosted::client::tests::hosted_timeout_and_disconnect_leave_mutation_outcomes_explicit ... ok +test model_menu::tests::add_bend_here_uses_context_point_and_one_source_aware_history_change ... ok +test model_menu::tests::late_menu_actions_do_not_dismiss_new_menu_or_cross_view_context ... ok +test model_menu::tests::menu_preserves_pending_properties_and_rejects_delayed_mutations ... ok +test model_menu::tests::pending_source_allows_file_navigation_but_disables_model_actions ... ok +test model_menu::tests::right_click_targets_actor_without_changing_selection_until_action ... ok +test model_menu::tests::show_from_explorer_places_unfolds_and_keeps_semantic_selection ... ok +test model_menu::tests::state_menu_folds_and_hides_only_its_captured_placement_and_rejects_stale_views ... ok +test model_menu::tests::state_menu_keeps_typed_creation_reachable_and_preserves_pending_properties ... ok +test navigation::tests::semantic_browser_finds_behavior_users_without_confusing_containment ... ok +test port_edit::tests::all_border_drags_commit_exact_preview_and_restore_automatic_anchors_in_history ... ok +test port_edit::tests::graphical_port_reparent_clears_old_anchors_in_the_same_history_operation ... ok +test port_preview::tests::functional_creation_identifies_new_and_reused_endpoints_and_owners ... ok +test port_preview::tests::legacy_split_discloses_endpoint_routing_item_origins_and_retained_evidence ... ok +test port_preview::tests::reused_boundary_shows_item_union_and_existing_allocating_facts ... ok +test port_preview::tests::synchronization_preview_exposes_contract_shrinkage_and_current_declaration_origin ... ok +test port_workflow::recovery_tests::port_recovery_retains_authored_contract_and_identity_but_rebuilds_preview ... ok +test port_workflow::tests::creating_typed_port_and_rejecting_stale_preview_preserve_drafts_and_identity ... ok +test port_workflow::tests::graphical_function_exchange_and_component_generation_commit_and_undo_whole_contracts ... ok +test port_workflow::tests::legacy_resolution_preserves_original_record_and_applies_as_one_undo ... ok +test port_workflow::tests::port_creation_keeps_owner_diagram_and_unfolds_in_the_same_undo ... ok +test port_workflow::tests::synchronization_uses_active_contract_instead_of_preserved_direction ... ok +test recovery::source5::tests::source5_fingerprint_preserves_historical_field_order_and_diagram_shape ... ok +test recovery::source5_tests::source4_checkpoint_remains_explicitly_unsupported_without_touching_disk ... ok +test recovery::source5_tests::source5_checkpoint_does_not_refresh_unrelated_clean_buffer_baseline ... ok +test recovery::source5_tests::source5_checkpoint_missing_identity_is_not_a_lossless_upgrade ... ok +test recovery::source5_tests::source5_checkpoint_old_diagram_property_shape_remains_editable ... ok +test recovery::source5_tests::source5_checkpoint_port_draft_replans_and_rejects_stale_base ... ok +test recovery::source5_tests::source5_checkpoint_preserves_dirty_invalid_text_and_baseline_exactly ... ok +test recovery::source5_tests::source5_checkpoint_preserves_distinct_unapplied_open_workspace ... ok +test recovery::source5_tests::source5_checkpoint_property_preserves_invalid_raw_input ... ok +test recovery::source5_tests::source5_checkpoint_upgrade_never_rewrites_checkpoint_or_origin ... ok +test recovery::source5_tests::source5_checkpoint_upgrades_only_header_and_clean_editor_baseline ... ok +test recovery::source5_tests::source5_checkpoint_workflow_rebinds_only_the_proven_old_revision ... ok +test recovery::source7_tests::source7_current_combined_contextual_and_operation_drafts_survive_without_execution ... ok +test recovery::source7_tests::source7_explicit_new_fields_cannot_enter_frozen_old_model_profiles ... ok +test recovery::source7_tests::source7_legacy_inactive_constructor_path_is_structural_but_raw_prose_is_not ... ok +test recovery::source7_tests::source7_legacy_profile_workflow_and_semantic_drafts_replan_with_exact_base ... ok +test recovery::source7_tests::source7_legacy_profiles_preserve_dirty_source_property_and_behavior_raw_fields ... ok +test recovery::source7_tests::source7_legacy_structural_intent_rejects_even_null_but_never_scans_raw_strings ... ok +test recovery::source7_tests::source7_legacy_view_selector_refuses_new_relation_kind_without_rewriting_checkpoint ... ok +test recovery::source7_tests::source7_recovers_nonempty_frozen_5_and_6_profiles_with_exact_historical_binding ... ok +test recovery::tests::altered_accepted_identity_and_unrecognized_raw_property_fields_reject ... ok +test recovery::tests::exact_source_and_unfinished_invalid_buffers_restore_without_model_overwrite ... ok +test recovery::tests::excess_retained_buffers_cannot_replace_the_last_recoverable_checkpoint ... ok +test recovery::tests::invalid_open_retains_distinct_accepted_model_and_repair_workspace ... ok +test recovery::tests::missing_includes_remain_reachable_repair_targets_without_fabricated_buffers ... ok +test recovery::tests::multiple_sessions_replace_only_their_own_checkpoint_and_corruption_is_retained ... ok +test recovery::tests::raw_invalid_property_number_survives_and_stays_rejected_until_repaired ... ok +test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_draft_cannot_target_an_unreserved_or_non_artifact_identity ... ok +test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_raw_variants_duplicate_addresses_and_unknown_fields_are_refused ... ok +test semantic_review::artifacts_recovery_falsifier_tests::forged_artifact_reservations_cannot_duplicate_or_claim_an_existing_identity_or_another_owner ... ok +test semantic_review::artifacts_recovery_falsifier_tests::legitimate_invalid_artifact_checkpoint_round_trips_and_prepares_only_after_explicit_repair ... ok +test semantic_review::artifacts_tests::artifact_candidate_is_a_complete_record_not_a_tombstone_or_unattached_creation_shortcut ... ok +test semantic_review::artifacts_tests::artifact_creation_and_identified_source_deletion_follow_core_metadata_and_history_boundary_both_directions ... ok +test semantic_review::artifacts_tests::artifact_gui_reserves_recovers_and_creates_only_after_all_seven_metadata_reviews_both_directions ... ok +test semantic_review::artifacts_tests::artifact_metadata_apply_and_exact_history_reset_are_one_source_preserving_undo_redo ... ok +test semantic_review::artifacts_tests::artifact_move_metadata_none_empty_and_invalid_raw_recovery_are_independent_both_directions ... ok +test semantic_review::artifacts_tests::artifact_moved_source_absence_deletes_but_destination_only_take_retains_both_directions ... ok +test semantic_review::attachments::tests::absent_attachment_payloads_migrate_v1_and_v2_and_source5_upgrade_requires_exact_legacy_base ... ok +test semantic_review::attachments::tests::addressed_attachment_candidates_equal_direct_core_oracle_both_directions ... ok +test semantic_review::attachments::tests::attachment_apply_is_one_exact_source_and_history_undo_redo ... ok +test semantic_review::attachments::tests::attachment_candidate_and_direct_record_keep_conflict_on_actual_slot_without_losing_drafts ... ok +test semantic_review::attachments::tests::attachment_pair_drafts_survive_family_switch_and_restore_without_mutating_model ... ok +test semantic_review::attachments::tests::functional_incident_source_requires_explicit_matching_port_review_in_one_atomic_candidate ... ok +test semantic_review::attachments::tests::parent_and_each_endpoint_candidate_preserve_other_fields_and_match_core_both_directions ... ok +test semantic_review::attachments::tests::raw_rejected_attachment_reference_survives_recovery_and_wrong_scope_is_rejected ... ok +test semantic_review::attachments::tests::source_only_absence_and_explicit_absent_endpoint_are_different ... ok +test semantic_review::attachments::tests::two_incident_endpoint_candidates_form_one_complete_record_and_recover_invalid_excluded_draft ... ok +test semantic_review::batch_tests::batch_apply_is_one_exact_source_and_history_undo_redo_roundtrip ... ok +test semantic_review::batch_tests::batch_candidate_conflict_keeps_both_raw_values_and_keep_is_a_real_constraint ... ok +test semantic_review::batch_tests::batch_complete_constructor_cannot_erase_another_rows_new_literal ... ok +test semantic_review::batch_tests::batch_constructor_retirement_conflicts_with_another_rows_kept_bound_in_both_orders ... ok +test semantic_review::batch_tests::batch_delayed_text_targets_its_original_row_and_facet_without_switching_focus ... ok +test semantic_review::batch_tests::batch_excluded_invalid_row_survives_focus_reopen_and_v2_recovery ... ok +test semantic_review::batch_tests::batch_first_equal_constructor_acknowledgement_allows_an_independent_bound ... ok +test semantic_review::batch_tests::batch_joint_bounds_use_one_candidate_and_match_an_independent_atomic_core_oracle ... ok +test semantic_review::batch_tests::batch_reverse_distinct_targets_work_and_reverse_convergence_is_explicit ... ok +test semantic_review::batch_tests::batch_v2_rejects_duplicate_included_sources_bad_addresses_and_stale_model ... ok +test semantic_review::batch_tests::category_family_and_members_are_independent_core_checked_facets_both_directions ... ok +test semantic_review::batch_tests::recovered_trace_picker_names_existing_trace_instead_of_deleted_reference ... ok +test semantic_review::batch_tests::rejected_direction_switch_at_row_limit_preserves_every_recoverable_draft ... ok +test semantic_review::compose::diagnostic_tests::distinct_review_conflict_keeps_trace_aliases_even_when_names_are_equal ... ok +test semantic_review::compose::diagnostic_tests::reserved_creation_conflict_uses_its_rows_seed_instead_of_a_deleted_reference ... ok +test semantic_review::compose::diagnostic_tests::same_review_presence_and_owner_conflict_names_both_facets_and_owners_and_retains_drafts ... ok +test semantic_review::compose::diagnostic_tests::typed_owner_display_does_not_reinterpret_uuid_shaped_artifact_text ... ok +test semantic_review::constructor_tests::closed_data_and_event_take_composition_matches_core_across_every_kind_pair_and_direction ... ok +test semantic_review::constructor_tests::data_group_candidates_cover_every_definition_and_companion_default_both_directions ... ok +test semantic_review::constructor_tests::data_group_retains_invalid_sibling_drafts_companion_default_and_variant_editor_buffers ... ok +test semantic_review::constructor_tests::exchange_constructor_takes_qualified_annotation_addresses_without_remapping_expression_text ... ok +test semantic_review::constructor_tests::existing_fragment_and_branch_group_candidates_edit_complete_owned_order_without_deletion ... ok +test semantic_review::constructor_tests::group_take_reference_payload_and_scalar_candidate_match_core_and_one_document_batch ... ok +test semantic_review::constructor_tests::historical_event_keep_retires_only_obsolete_branch_and_unchanged_kind_acknowledges_no_payload ... ok +test semantic_review::constructor_tests::historical_same_kind_take_preserves_target_only_literals_when_composed_with_candidate ... ok +test semantic_review::constructor_tests::occurrence_and_event_candidate_variants_cover_closed_families_without_touching_headers ... ok +test semantic_review::constructor_tests::outer_and_nested_constructor_candidates_require_explicit_resolution_and_retain_both_drafts ... ok +test semantic_review::constructor_tests::port_group_companions_typed_owner_context_and_direction_restrictions_are_explicit ... ok +test semantic_review::constructor_tests::reverse_existing_typed_port_reviews_keep_or_candidate_legacy_without_permitting_typed_oa_write ... ok +test semantic_review::constructor_tests::scenario_use_group_takes_typed_binding_references_and_preserves_source_text_both_directions ... ok +test semantic_review::keyed_rows_tests::annotation_address_browser_descends_qualified_fields_without_changing_rows ... ok +test semantic_review::keyed_rows_tests::annotation_observations_keep_uuid_shaped_expression_text_in_both_sides_and_history ... ok +test semantic_review::keyed_rows_tests::batch_keyed_rows_compare_exact_target_slots_and_retain_independent_values ... ok +test semantic_review::keyed_rows_tests::binding_choices_separate_reused_keys_from_local_lifelines ... ok +test semantic_review::keyed_rows_tests::binding_local_picker_follows_a_candidate_parent_before_the_review_is_valid ... ok +test semantic_review::keyed_rows_tests::binding_take_requires_local_correspondence_and_candidate_rejects_wrong_scenario ... ok +test semantic_review::keyed_rows_tests::independent_rows_keep_take_candidate_match_core_and_preserve_siblings_both_directions ... ok +test semantic_review::keyed_rows_tests::keyed_recovery_retains_raw_rows_and_staged_pairs_both_directions_without_applying ... ok +test semantic_review::keyed_rows_tests::keyed_row_drafts_retain_expression_local_and_presence_across_decisions_and_staging ... ok +test semantic_review::keyed_rows_tests::keyed_rows_distinguish_unpaired_source_from_explicit_absence_and_require_exact_reset ... ok +test semantic_review::keyed_rows_tests::multiple_new_rows_compose_in_empty_collections_using_destination_key_order ... ok +test semantic_review::keyed_rows_tests::row_review_apply_preserves_exact_source_and_semantic_history_through_undo_redo ... ok +test semantic_review::keyed_tests::deleted_member_source_observation_removes_only_mapped_membership_both_directions ... ok +test semantic_review::keyed_tests::exact_literal_new_rows_and_removals_commit_both_directions_without_default_loss ... ok +test semantic_review::keyed_tests::exact_reset_only_is_one_history_source_transaction_and_undo_redo_both_directions ... ok +test semantic_review::keyed_tests::function_port_members_use_existing_typed_choices_and_preserve_oa_legacy ... ok +test semantic_review::keyed_tests::historical_one_sided_pair_migration_requires_exact_reset_and_explicit_overlap_resolution ... ok +test semantic_review::keyed_tests::invalid_literal_removal_and_unselected_scalar_buffers_are_retained_and_repairable ... ok +test semantic_review::keyed_tests::member_identity_labels_and_new_tabs_preserve_exact_names_and_deleted_keys ... ok +test semantic_review::keyed_tests::reset_precedes_equal_constructor_candidate_and_preserves_independent_literal_draft ... ok +test semantic_review::keyed_tests::staging_removal_and_obsolete_reset_recovery_keep_other_decisions_and_raw_presence ... ok +test semantic_review::keyed_tests::stale_or_source_failed_reset_and_membership_apply_retain_exact_choices ... ok +test semantic_review::keyed_tests::unordered_members_keep_take_candidate_preserve_other_rows_both_directions ... ok +test semantic_review::keyed_tests::unsupported_independent_families_and_missing_identities_do_not_gain_edit_authority ... ok +test semantic_review::message_kind_tests::message_group_candidate_closed_kinds_are_core_validated_in_both_directions ... ok +test semantic_review::message_kind_tests::message_group_candidate_timer_switches_preserve_both_drafts_and_overlap_is_explicit ... ok +test semantic_review::message_kind_tests::message_group_initial_equal_take_acknowledges_only_kind_and_checks_authored_timer_agreement ... ok +test semantic_review::message_kind_tests::message_group_keep_historical_switch_retires_timer_and_completed_no_switch_rejects ... ok +test semantic_review::message_kind_tests::message_group_rejects_protected_edits_stale_plan_and_source_failure_without_losing_timer ... ok +test semantic_review::message_kind_tests::message_group_reply_and_reference_take_require_explicit_call_mapping_both_directions ... ok +test semantic_review::message_kind_tests::message_group_take_full_timer_and_scalar_candidate_are_one_source_history_change_both_directions ... ok +test semantic_review::message_kind_tests::message_group_timer_does_not_erase_exchange_without_its_own_selected_decision ... ok +test semantic_review::ordered_tests::ambiguous_order_preserves_local_member_and_requires_explicit_candidate_positions ... ok +test semantic_review::ordered_tests::historical_pair_restore_uses_exact_member_keys_and_never_zips_order_observations ... ok +test semantic_review::ordered_tests::order_take_preserves_destination_only_positions_and_order_alone_cannot_add_members ... ok +test semantic_review::ordered_tests::ordered_membership_choices_stage_exact_pairs_in_all_owner_shapes ... ok +test semantic_review::ordered_tests::ordered_presence_keep_take_candidate_remove_only_selected_entry_and_order_take_reorders_only ... ok +test semantic_review::ordered_tests::ordered_review_apply_is_exact_source_history_transaction_with_reopen_and_undo_redo ... ok +test semantic_review::ordered_tests::ordered_take_uses_unique_anchors_and_matches_core_with_unrelated_candidate_both_directions ... ok +test semantic_review::ordered_tests::raw_order_survives_membership_changes_decisions_and_recovery_until_explicit_reconcile ... ok +test semantic_review::ordered_tests::several_incoming_members_follow_source_order_despite_independent_identity_sorting ... ok +test semantic_review::recovery::tests::raw_scalar_and_closed_constructor_drafts_recover_against_exact_model_only ... ok +test semantic_review::recovery::tests::version_one_without_orders_restores_raw_intent_and_replans_without_execution ... ok +test semantic_review::source7_tests::contextual_incident_leaf_keep_allows_path_change_but_conflicts_with_changed_leaf_both_directions ... ok +test semantic_review::source7_tests::reverse_operation_omission_gui_requires_raw_rationale_and_matches_one_core_batch_after_recovery ... ok +test semantic_review::source7_tests::semantic_operation_virtual_none_candidate_uses_exact_allocation_and_preserves_accepted_bytes ... ok +test semantic_review::tests::candidate_mixed_with_reference_take_uses_typed_correspondence_not_text_guessing ... ok +test semantic_review::tests::deselected_invalid_candidate_is_retained_but_does_not_poison_another_selected_scalar ... ok +test semantic_review::tests::explicit_trace_selection_updates_only_that_history ... ok +test semantic_review::tests::first_equal_constructor_acknowledges_only_kind_and_allows_independent_leaves ... ok +test semantic_review::tests::independent_review_clear_bound_ignores_retained_invalid_other_facet ... ok +test semantic_review::tests::independent_review_keyed_fact_titles_keep_live_deleted_and_qualified_identity ... ok +test semantic_review::tests::inherited_annotation_impact_requires_exact_acceptance_and_edits_clear_approval ... ok +test semantic_review::tests::invalid_numeric_draft_and_protected_edits_retain_workflow_and_source ... ok +test semantic_review::tests::read_only_structured_facts_and_partial_rollup_are_honest ... ok +test semantic_review::tests::relation_candidates_preserve_endpoints_and_combine_selected_roles_and_bounds ... ok +test semantic_review::tests::scalar_keep_take_candidate_commit_exact_source_and_history_in_both_directions ... ok +test semantic_review::tests::scoped_literal_list_edits_preserve_unfinished_values_and_other_facet_buffers ... ok +test semantic_review::tests::stale_plan_and_source_writeback_failure_do_not_lose_decisions_or_history ... ok +test semantic_review::tests::state_kind_scalar_uses_typed_candidate_and_core_validation ... ok +test semantic_review::view::reserved_artifact_tests::reserved_artifact_facet_and_reference_labels_survive_recovery_without_calling_it_deleted ... ok +test source_navigation::tests::search_uses_utf8_columns_wraps_and_refreshes_after_edits ... ok +test source_tree::tests::active_scroll_offset_uses_the_visible_order_and_retains_ancestor_context ... ok +test source_tree::tests::collapsed_folders_retain_active_dirty_and_diagnostic_markers ... ok +test source_tree::tests::deep_paths_build_expand_and_drop_on_a_small_stack ... ok +test source_tree::tests::detached_buffers_keep_paths_and_only_clean_buffers_are_closable ... ok +test source_tree::tests::exact_unicode_spaces_and_file_folder_name_collisions_are_not_normalized ... ok +test source_tree::tests::folders_are_compact_and_sorted_before_files_without_losing_duplicate_basenames ... ok +test source_workspace::tests::draft_history_budget_covers_inactive_files_without_discarding_drafts ... ok +test source_workspace::tests::switching_retains_invalid_drafts_and_independent_history ... ok +test tests::actor_port_creation_updates_containment_and_locate_reveals_its_owner ... ok +test tests::adding_bend_between_close_ports_stays_outside_owner_clearance ... ok +test tests::behavior_and_data_authoring_do_not_place_nodes_in_unrelated_architecture_views ... ok +test tests::bidirectional_transition_ui_commits_once_and_preserves_other_diagrams ... ok +test tests::counterpart_creation_focuses_visible_target_and_reuse_keeps_views ... ok +test tests::creation_from_capabilities_routes_work_to_architecture_and_folded_allocation_inserts_below_existing_work ... ok +test tests::dragging_keeps_semantic_selection_and_same_node_remains_editable ... ok +test tests::escaped_string_mode_preserves_exact_control_characters ... ok +test tests::every_demo_record_has_a_lossless_graphical_draft ... ok +test tests::explicit_relationship_builder_never_mutates_on_preview ... ok +test tests::explorer_and_creation_selection_follow_their_own_placement ... ok +test tests::fit_adapts_to_canvas_returning_after_help_but_preserves_manual_navigation ... ok +test tests::fit_uses_measured_canvas_bounds_and_preserves_them_on_open ... ok +test tests::focused_explorer_follows_reparenting_without_changing_identity ... ok +test tests::graphical_rename_keeps_aliases_and_references_and_undo ... ok +test tests::identity_property_change_is_atomic_and_rewrites_all_live_references ... ok +test tests::invalid_numeric_draft_survives_navigation_save_and_help ... ok +test tests::invalid_save_and_continue_returns_to_repairable_draft ... ok +test tests::malformed_source_preserves_model_and_is_recoverable ... ok +test tests::manual_trace_requires_target_and_selection_normalizes_creation_kind ... ok +test tests::mission_capability_authoring_is_contextual_atomic_and_text_equivalent ... ok +test tests::modal_owns_background_commands_and_shortcuts ... ok +test tests::nested_allocation_insertion_reflows_sibling_subtrees_and_preserves_fold_state ... ok +test tests::opening_and_creating_models_preserve_the_actual_window_size_for_fit ... ok +test tests::opening_legacy_source_surfaces_report_without_modifying_original_bytes ... ok +test tests::pending_source_prevents_property_draft_collision_and_preserves_both_if_present ... ok +test tests::placement_identity_edit_then_drag_and_diagram_identity_then_arrange ... ok +test tests::placement_relocation_follows_cross_layer_traceability_view ... ok +test tests::property_enum_and_optional_reference_roundtrip ... ok +test tests::reopening_canvas_for_a_modal_preserves_viewport_after_route_edits ... ok +test tests::revealing_an_implicit_function_port_unfolds_its_visible_architecture_owner ... ok +test tests::routing_actions_are_atomic_guarded_and_fit_the_authored_detour ... ok +test tests::selecting_current_constructors_preserves_payloads ... ok +test tests::source_find_navigates_an_invalid_draft_without_applying_or_losing_it ... ok +test tests::source_navigation_waits_for_editor_layout_and_cancels_on_edit ... ok +test tests::system_only_models_open_the_populated_perspective ... ok +test tests::transition_resolutions_belong_to_the_effective_target_and_kind ... ok +test view_copy::tests::duplicate_retains_ports_routes_options_and_artifact_claims_with_exact_undo_redo ... ok +test view_copy::tests::duplicate_state_view_preserves_machine_nesting_and_collapse_with_unique_aliases ... ok +test view_copy::tests::missing_view_does_not_propose_an_empty_replacement ... ok +test views::traceability::tests::traceability_browsing_retains_invalid_property_draft_and_existing_select_guard ... ok +test views::traceability::tests::traceability_filter_reaches_artifacts_after_68_traces_and_searches_all_metadata ... ok +test workflow::communication::tests::communication_requires_two_explicit_ports_and_recovers_the_partial_choice ... ok +test workflow::port_authoring_tests::boundary_picker_matches_exact_commands_across_contracts_and_ownership ... ok +test workflow::port_authoring_tests::boundary_picker_recomputes_for_unoriented_reverse_endpoints_without_relaxing_contracts ... ok +test workflow::port_authoring_tests::duplicate_port_names_show_owner_contract_and_unique_alias ... ok +test workflow::port_authoring_tests::fresh_functions_are_actual_picker_targets_and_plan_enables_apply ... ok +test workflow::port_authoring_tests::generic_component_port_connection_keeps_its_endpoint_and_direction ... ok +test workflow::port_authoring_tests::ordinary_standard_connections_default_unoriented_and_new_roles_exclude_legacy ... ok +test workflow::recovery::tests::incomplete_relationship_and_trace_recover_raw_fields_and_reject_changed_model ... ok +test workflow::recovery::tests::transition_recovery_replans_typed_request_without_persisted_commands ... ok +test workflow::transition_tests::basic_transition_boundary_choice_is_required_without_an_inferred_system ... ok +test workflow::transition_tests::basic_transition_creates_overview_when_existing_views_cannot_show_result ... ok +test workflow::transition_tests::basic_transition_explicit_destination_appends_below_existing_bounds_and_is_one_source_edit ... ok +test workflow::transition_tests::basic_transition_invalid_explicit_destination_retains_choice_and_refuses ... ok +test workflow::transition_tests::basic_transition_reconcile_keeps_existing_selected_view_placement_and_route_exact ... ok +test workflow::transition_tests::basic_transition_skips_lowest_uuid_state_view_and_preserves_oa ... ok + +test result: ok. 834 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 351.59s + diff --git a/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.result.json b/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.result.json new file mode 100644 index 00000000..231bc58f --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/full-83f53c7.result.json @@ -0,0 +1,19 @@ +{ + "source": "83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b", + "start": "2026-09-12T22:23:32.558376+00:00", + "end": "2026-09-12T22:30:30.706219+00:00", + "exit": 0, + "command": [ + "cargo", + "test", + "--locked", + "-p", + "oa-desktop", + "--bin", + "arcadia-studio", + "--", + "--test-threads=1" + ], + "inputs": "full-83f53c7.inputs.json", + "changed_inputs": [] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.inputs.json b/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.inputs.json new file mode 100644 index 00000000..d534a502 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.inputs.json @@ -0,0 +1,2670 @@ +{ + "source": "83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b", + "inputs": [ + { + "path": "Cargo.lock", + "bytes": 119973, + "sha256": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf" + }, + { + "path": "Cargo.toml", + "bytes": 400, + "sha256": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62" + }, + { + "path": "build/windows.manifest", + "bytes": 354, + "sha256": "9c19c5a02f858ece84c44839ad2b145d9c1d90442da0b15c87fd045f975974eb" + }, + { + "path": "build/windows.rc", + "bytes": 24, + "sha256": "a27385edcae0bcf96f55361056cb7be5f36d76fcddcaefd20647c91959563e1e" + }, + { + "path": "build/windows_manifest.rs", + "bytes": 1460, + "sha256": "168da2c42ecccfebc11ee3e1b455e653a68fe9c6d30a9842a8b9e7441d086c80" + }, + { + "path": "crates/oa-cli/Cargo.toml", + "bytes": 279, + "sha256": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde" + }, + { + "path": "crates/oa-cli/src/lib.rs", + "bytes": 15498, + "sha256": "97bebab63b4a611a1d36ad0c20fe452cbe1985fe3a6fbd39c954603da11410fc" + }, + { + "path": "crates/oa-cli/src/main.rs", + "bytes": 2984, + "sha256": "de964f9b6c59c0f31c080afbd3b31d442b07b1b44f6a187a248d3409c45d35fb" + }, + { + "path": "crates/oa-cli/tests/source_cli.rs", + "bytes": 16600, + "sha256": "a3a1b856c7a9fd3d80bc8074150a24fbb0ef0e9ddf736c7cea036725fc3dc2b8" + }, + { + "path": "crates/oa-core/Cargo.toml", + "bytes": 408, + "sha256": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f" + }, + { + "path": "crates/oa-core/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-core/examples/generate_demo.rs", + "bytes": 795, + "sha256": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661" + }, + { + "path": "crates/oa-core/examples/generate_release1.rs", + "bytes": 1798, + "sha256": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5" + }, + { + "path": "crates/oa-core/examples/release_dense_views.rs", + "bytes": 14664, + "sha256": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412" + }, + { + "path": "crates/oa-core/examples/routing_workshop.rs", + "bytes": 17248, + "sha256": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7" + }, + { + "path": "crates/oa-core/src/analysis_numeric.rs", + "bytes": 3735, + "sha256": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408" + }, + { + "path": "crates/oa-core/src/analysis_numeric/dimension.rs", + "bytes": 3045, + "sha256": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340" + }, + { + "path": "crates/oa-core/src/analysis_numeric/exact.rs", + "bytes": 17338, + "sha256": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d" + }, + { + "path": "crates/oa-core/src/analysis_numeric/fixtures/r7-literal-boundaries.json", + "bytes": 6085, + "sha256": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181" + }, + { + "path": "crates/oa-core/src/analysis_numeric/meter.rs", + "bytes": 7129, + "sha256": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4" + }, + { + "path": "crates/oa-core/src/analysis_numeric/quantity.rs", + "bytes": 12257, + "sha256": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee" + }, + { + "path": "crates/oa-core/src/analysis_numeric/tests.rs", + "bytes": 27486, + "sha256": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b" + }, + { + "path": "crates/oa-core/src/data.rs", + "bytes": 42696, + "sha256": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a" + }, + { + "path": "crates/oa-core/src/demo.rs", + "bytes": 20657, + "sha256": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c" + }, + { + "path": "crates/oa-core/src/language.rs", + "bytes": 99938, + "sha256": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765" + }, + { + "path": "crates/oa-core/src/language/semantic_source.rs", + "bytes": 7326, + "sha256": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29" + }, + { + "path": "crates/oa-core/src/language_nesting_tests.rs", + "bytes": 20639, + "sha256": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b" + }, + { + "path": "crates/oa-core/src/lib.rs", + "bytes": 549, + "sha256": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c" + }, + { + "path": "crates/oa-core/src/migration_v2/README.md", + "bytes": 1515, + "sha256": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9" + }, + { + "path": "crates/oa-core/src/migration_v2/adapter.rs", + "bytes": 9490, + "sha256": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5" + }, + { + "path": "crates/oa-core/src/migration_v2/mod.rs", + "bytes": 1158, + "sha256": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9" + }, + { + "path": "crates/oa-core/src/migration_v2/model.rs", + "bytes": 52059, + "sha256": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb" + }, + { + "path": "crates/oa-core/src/migration_v2/references.rs", + "bytes": 13369, + "sha256": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20" + }, + { + "path": "crates/oa-core/src/migration_v2/source.rs", + "bytes": 21946, + "sha256": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6" + }, + { + "path": "crates/oa-core/src/migration_v2/state_validation.rs", + "bytes": 15769, + "sha256": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0" + }, + { + "path": "crates/oa-core/src/migration_v2/transitions.rs", + "bytes": 704, + "sha256": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1" + }, + { + "path": "crates/oa-core/src/migration_v2/validation.rs", + "bytes": 98736, + "sha256": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780" + }, + { + "path": "crates/oa-core/src/migration_v3/README.md", + "bytes": 2128, + "sha256": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82" + }, + { + "path": "crates/oa-core/src/migration_v3/mod.rs", + "bytes": 23023, + "sha256": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722" + }, + { + "path": "crates/oa-core/src/migration_v4.rs", + "bytes": 4020, + "sha256": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70" + }, + { + "path": "crates/oa-core/src/model.rs", + "bytes": 66352, + "sha256": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb" + }, + { + "path": "crates/oa-core/src/operations.rs", + "bytes": 11405, + "sha256": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41" + }, + { + "path": "crates/oa-core/src/persistence.rs", + "bytes": 31774, + "sha256": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14" + }, + { + "path": "crates/oa-core/src/ports.rs", + "bytes": 45413, + "sha256": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80" + }, + { + "path": "crates/oa-core/src/projection.rs", + "bytes": 21374, + "sha256": "69ed12bace2cc5024e151752a174ab14034ac2d05eb741fcf13e9a27521c059b" + }, + { + "path": "crates/oa-core/src/projection/port_layout.rs", + "bytes": 13474, + "sha256": "a08d17d10a58bb8b206dd001b19b91d5aa3a9f743b298a4da57d503223c20079" + }, + { + "path": "crates/oa-core/src/projection/state.rs", + "bytes": 5233, + "sha256": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28" + }, + { + "path": "crates/oa-core/src/references.rs", + "bytes": 21957, + "sha256": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb" + }, + { + "path": "crates/oa-core/src/routing.rs", + "bytes": 50309, + "sha256": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080" + }, + { + "path": "crates/oa-core/src/semantic.rs", + "bytes": 540, + "sha256": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239" + }, + { + "path": "crates/oa-core/src/semantic/catalog.rs", + "bytes": 49407, + "sha256": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4" + }, + { + "path": "crates/oa-core/src/semantic/historical.rs", + "bytes": 15271, + "sha256": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb" + }, + { + "path": "crates/oa-core/src/semantic/linked.rs", + "bytes": 6035, + "sha256": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2" + }, + { + "path": "crates/oa-core/src/semantic/mutate.rs", + "bytes": 22683, + "sha256": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d" + }, + { + "path": "crates/oa-core/src/semantic/review.rs", + "bytes": 51116, + "sha256": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e" + }, + { + "path": "crates/oa-core/src/semantic/types.rs", + "bytes": 10405, + "sha256": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb" + }, + { + "path": "crates/oa-core/src/session.rs", + "bytes": 35237, + "sha256": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00" + }, + { + "path": "crates/oa-core/src/source_files.rs", + "bytes": 74803, + "sha256": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683" + }, + { + "path": "crates/oa-core/src/source_project.rs", + "bytes": 61843, + "sha256": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466" + }, + { + "path": "crates/oa-core/src/source_project/source_migration.rs", + "bytes": 4700, + "sha256": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95" + }, + { + "path": "crates/oa-core/src/source_project/source_structure.rs", + "bytes": 20225, + "sha256": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f" + }, + { + "path": "crates/oa-core/src/state_validation.rs", + "bytes": 15665, + "sha256": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18" + }, + { + "path": "crates/oa-core/src/topology_context.rs", + "bytes": 13734, + "sha256": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d" + }, + { + "path": "crates/oa-core/src/topology_context/analysis.rs", + "bytes": 20036, + "sha256": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65" + }, + { + "path": "crates/oa-core/src/topology_context/analysis_tests.rs", + "bytes": 5258, + "sha256": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56" + }, + { + "path": "crates/oa-core/src/transitions.rs", + "bytes": 51998, + "sha256": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d" + }, + { + "path": "crates/oa-core/src/transitions/communication.rs", + "bytes": 8634, + "sha256": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028" + }, + { + "path": "crates/oa-core/src/validation.rs", + "bytes": 112792, + "sha256": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e" + }, + { + "path": "crates/oa-core/src/validation/coverage.rs", + "bytes": 6478, + "sha256": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f" + }, + { + "path": "crates/oa-core/src/view_options.rs", + "bytes": 24481, + "sha256": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208" + }, + { + "path": "crates/oa-core/src/view_options_tests.rs", + "bytes": 21433, + "sha256": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208" + }, + { + "path": "crates/oa-core/tests/communication_boundary_scenarios.rs", + "bytes": 8816, + "sha256": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b" + }, + { + "path": "crates/oa-core/tests/communication_means.rs", + "bytes": 18102, + "sha256": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4" + }, + { + "path": "crates/oa-core/tests/coverage_diagnostics.rs", + "bytes": 20527, + "sha256": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.arcadia", + "bytes": 29220, + "sha256": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3" + }, + { + "path": "crates/oa-core/tests/fixtures/v2-coastal-rescue.json", + "bytes": 43990, + "sha256": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.arcadia", + "bytes": 2450, + "sha256": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea" + }, + { + "path": "crates/oa-core/tests/fixtures/v3-data-contract.json", + "bytes": 8240, + "sha256": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.arcadia", + "bytes": 1222, + "sha256": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1" + }, + { + "path": "crates/oa-core/tests/fixtures/v4-reviewed-prose.json", + "bytes": 1734, + "sha256": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47" + }, + { + "path": "crates/oa-core/tests/language.rs", + "bytes": 56482, + "sha256": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e" + }, + { + "path": "crates/oa-core/tests/port_anchors.rs", + "bytes": 26893, + "sha256": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa" + }, + { + "path": "crates/oa-core/tests/port_migration.rs", + "bytes": 15620, + "sha256": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7" + }, + { + "path": "crates/oa-core/tests/port_source.rs", + "bytes": 4858, + "sha256": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12" + }, + { + "path": "crates/oa-core/tests/prepared_commands.rs", + "bytes": 9555, + "sha256": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b" + }, + { + "path": "crates/oa-core/tests/process_diagnostics.rs", + "bytes": 1104, + "sha256": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906" + }, + { + "path": "crates/oa-core/tests/r3_constructor_ack.rs", + "bytes": 24163, + "sha256": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0" + }, + { + "path": "crates/oa-core/tests/r3_migration.rs", + "bytes": 6590, + "sha256": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd" + }, + { + "path": "crates/oa-core/tests/r3_semantic.rs", + "bytes": 77473, + "sha256": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32" + }, + { + "path": "crates/oa-core/tests/r3_source.rs", + "bytes": 15311, + "sha256": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408" + }, + { + "path": "crates/oa-core/tests/r6_data.rs", + "bytes": 41437, + "sha256": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155" + }, + { + "path": "crates/oa-core/tests/r6_migration.rs", + "bytes": 9174, + "sha256": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1" + }, + { + "path": "crates/oa-core/tests/r6_source.rs", + "bytes": 9519, + "sha256": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6" + }, + { + "path": "crates/oa-core/tests/release1_teaching.rs", + "bytes": 10010, + "sha256": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2" + }, + { + "path": "crates/oa-core/tests/release_capabilities.rs", + "bytes": 19422, + "sha256": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30" + }, + { + "path": "crates/oa-core/tests/release_diagrams.rs", + "bytes": 7689, + "sha256": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d" + }, + { + "path": "crates/oa-core/tests/release_language_limits.rs", + "bytes": 5204, + "sha256": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806" + }, + { + "path": "crates/oa-core/tests/release_ports.rs", + "bytes": 32740, + "sha256": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1" + }, + { + "path": "crates/oa-core/tests/release_routing.rs", + "bytes": 23165, + "sha256": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462" + }, + { + "path": "crates/oa-core/tests/release_scenarios.rs", + "bytes": 41067, + "sha256": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f" + }, + { + "path": "crates/oa-core/tests/release_states.rs", + "bytes": 26873, + "sha256": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811" + }, + { + "path": "crates/oa-core/tests/release_topology.rs", + "bytes": 17643, + "sha256": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9" + }, + { + "path": "crates/oa-core/tests/review_regressions.rs", + "bytes": 21823, + "sha256": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1" + }, + { + "path": "crates/oa-core/tests/route_source.rs", + "bytes": 7270, + "sha256": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb" + }, + { + "path": "crates/oa-core/tests/routing_geometry.rs", + "bytes": 31890, + "sha256": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3" + }, + { + "path": "crates/oa-core/tests/routing_labels.rs", + "bytes": 5530, + "sha256": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6" + }, + { + "path": "crates/oa-core/tests/semantic_artifact_absence_oracle.rs", + "bytes": 4640, + "sha256": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a" + }, + { + "path": "crates/oa-core/tests/semantic_attachments_gui_oracle.rs", + "bytes": 14957, + "sha256": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970" + }, + { + "path": "crates/oa-core/tests/source6_view_contract.rs", + "bytes": 14307, + "sha256": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb" + }, + { + "path": "crates/oa-core/tests/source7_contract.rs", + "bytes": 43262, + "sha256": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f" + }, + { + "path": "crates/oa-core/tests/source_files.rs", + "bytes": 13168, + "sha256": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9" + }, + { + "path": "crates/oa-core/tests/source_identity_updates.rs", + "bytes": 5139, + "sha256": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c" + }, + { + "path": "crates/oa-core/tests/source_nested_updates.rs", + "bytes": 16892, + "sha256": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855" + }, + { + "path": "crates/oa-core/tests/source_project.rs", + "bytes": 45910, + "sha256": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942" + }, + { + "path": "crates/oa-core/tests/state_diagrams.rs", + "bytes": 23973, + "sha256": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5" + }, + { + "path": "crates/oa-core/tests/workflows.rs", + "bytes": 33426, + "sha256": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b" + }, + { + "path": "crates/oa-desktop/Cargo.toml", + "bytes": 842, + "sha256": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9" + }, + { + "path": "crates/oa-desktop/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-desktop/src/allocation_drag.rs", + "bytes": 29634, + "sha256": "6b93290627a8697dd529ecf12b6e99196a11783afff1ca7aaf75c6e2762f3d94" + }, + { + "path": "crates/oa-desktop/src/allocation_drag/tests.rs", + "bytes": 60311, + "sha256": "13b7d055a516c8a9f0bd13f03abe3b81423bde9d121c51778a129ff485f4f102" + }, + { + "path": "crates/oa-desktop/src/allocation_input.rs", + "bytes": 8391, + "sha256": "c7825c43383e81b7eb1b78bd902950c8a2206e0387d26002a80ddbe4dc2b6c73" + }, + { + "path": "crates/oa-desktop/src/app.rs", + "bytes": 220614, + "sha256": "99447bba4810135834663681447a03061a948db2661395b9b4c4924738a38f18" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag.rs", + "bytes": 24452, + "sha256": "218726dcd2e6809cb6f3660f575e586806360456e6b4fac61b9e361b411aeee9" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_full_tree_tests.rs", + "bytes": 28288, + "sha256": "ff4c3d07f885f242b71160c09e2c457c4a746073fd89030781da306730c5db44" + }, + { + "path": "crates/oa-desktop/src/app/allocation_drag_tests.rs", + "bytes": 42677, + "sha256": "3c6908f8a677921245932252ab38806f16012becbbc082ac11e7871ff7bdeeb4" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring.rs", + "bytes": 27835, + "sha256": "37c7db33e99dd4adcc5a51f09ee4878af94fd32413359890a541690080885f65" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/palette.rs", + "bytes": 8887, + "sha256": "8f9937cb30b48b83759fd084a8a5990a2daa3920280f1210abe048560241985a" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring/tests.rs", + "bytes": 14565, + "sha256": "174e184f1baf872c3be1cf70d9a7f4bc5569a9623000b3ab0e71e2b82e249cf5" + }, + { + "path": "crates/oa-desktop/src/app/architecture_authoring_tests.rs", + "bytes": 18551, + "sha256": "ba913f7d7cbf586708d65c9f1db25b9b9ed7846f9d2e75a546b4ac69d8d19c6a" + }, + { + "path": "crates/oa-desktop/src/app/behavior_lifecycle_tests.rs", + "bytes": 13672, + "sha256": "f9a0b030faca5deaf3f55d9f5efcafdf1a7cb1a663001aa20a61baba4f92d080" + }, + { + "path": "crates/oa-desktop/src/app/behavior_removal_tests.rs", + "bytes": 23958, + "sha256": "ef09843a7daeb91afab0b76e83c5679351a1635a84a26d80a194dea744ea5874" + }, + { + "path": "crates/oa-desktop/src/app/checkpoints.rs", + "bytes": 29576, + "sha256": "55e5babdcabef767af3bc8be9cc3153b3f5cc0695701b890820ec0225643852e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_focus_tests.rs", + "bytes": 6047, + "sha256": "65f3f841e1295ae4878b3ae2cf45ff64003d42e26e450e9a1de1c36dbd771bd8" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal.rs", + "bytes": 8778, + "sha256": "addb51604f41d680b06586bb362362ee3c2603a334f33022ce9abc281295ac85" + }, + { + "path": "crates/oa-desktop/src/app/diagram_removal_tests.rs", + "bytes": 47336, + "sha256": "70f9eb53d8995a23a53535b3941fc0c0b81a340f9fbbb371f0d705cfa775bd9e" + }, + { + "path": "crates/oa-desktop/src/app/diagram_selection_tests.rs", + "bytes": 5582, + "sha256": "4fa507adbc23db3a6eb202d809c695ec0ebd6181356930c4fa7528a9a0c7be57" + }, + { + "path": "crates/oa-desktop/src/app/hosted.rs", + "bytes": 25059, + "sha256": "2f7094c078e1d7cbccd6c0d310afa6c400a7e031f12918bbfce65ba62754e316" + }, + { + "path": "crates/oa-desktop/src/app/hosted/tests.rs", + "bytes": 30344, + "sha256": "fa118f64d04b400ccc01e4e67adaf3541975288882afa265a9e7f092cdbda232" + }, + { + "path": "crates/oa-desktop/src/app/process_canvas.rs", + "bytes": 31560, + "sha256": "7e05f4899a0b24df9ab355b6484e94997c7bc66c873342d975aed0b6a56acf04" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring.rs", + "bytes": 11250, + "sha256": "38e033e23e8135032f70117a376a5fe7bc68127c466559a35d7ec200932e3f77" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests.rs", + "bytes": 20067, + "sha256": "b96ddc6bff7f8fde97720e18a92070f891c1340348d2e19c7c9c5a7bda650ce8" + }, + { + "path": "crates/oa-desktop/src/app/reference_authoring/tests/mounted.rs", + "bytes": 32805, + "sha256": "14a4914a1c86e50c395672dab8fe80d7af679a79c9082890b509fad7b7c543d9" + }, + { + "path": "crates/oa-desktop/src/app/repair_save_state_tests.rs", + "bytes": 10745, + "sha256": "5543dcba853bb1513acf824b860249729a6004747e7e320b46efe60ea19e2d83" + }, + { + "path": "crates/oa-desktop/src/app/review_navigation_tests.rs", + "bytes": 7049, + "sha256": "872fa91479dad5436e139ffcaece270323e9f5daeeb7a4d80c2c2534f48bc21b" + }, + { + "path": "crates/oa-desktop/src/app/save_as_tests.rs", + "bytes": 4113, + "sha256": "f8b915793f1a36fd152569c4781a4bdc17f4af404a8ceb373330053413087a1c" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram.rs", + "bytes": 10050, + "sha256": "9ae3d533a20963a2bd1d485d357ac04319f336cd9f4c16305aa2a67d833573a8" + }, + { + "path": "crates/oa-desktop/src/app/state_diagram_tests.rs", + "bytes": 39957, + "sha256": "612e414b1a2cab12cbfd8fce23745559ff27577700694d53af67ad1f2883ee2c" + }, + { + "path": "crates/oa-desktop/src/app/transition_context_tests.rs", + "bytes": 11508, + "sha256": "47002fb025f3a2f8c53871f9509bfe8611a61db6fb0e1b3125eb6e875425cb1d" + }, + { + "path": "crates/oa-desktop/src/app/view_copy_tests.rs", + "bytes": 7846, + "sha256": "296821c51dcde568e7d717039aa26bfc1b56a9074aa16051007bb351b33a4d44" + }, + { + "path": "crates/oa-desktop/src/behavior.rs", + "bytes": 130007, + "sha256": "3089d88a8fa66ecaa2151f2f55a85c71de30e556457fcd52fdbd0ca1184b59d8" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace.rs", + "bytes": 7903, + "sha256": "b6e06b9d29f1a5677f99bebcb0e53a3795b4bcd957796a85fd800db4279aed03" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/control.rs", + "bytes": 7804, + "sha256": "2b8d97b8c0e3ff1b1a2c32187b1d0eb25edf39ba582b5fb3303bc880f674f7ba" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/focus.rs", + "bytes": 8901, + "sha256": "33447003980847033e40550f9926d8617fa61e2c3e73ec9c6121d1afed946c33" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/tests.rs", + "bytes": 27101, + "sha256": "b33361c6569354aa2df9b1ba1b60d68e4703800be80f815e0f0505064ea323c3" + }, + { + "path": "crates/oa-desktop/src/behavior/canvas_workspace/viewport.rs", + "bytes": 15164, + "sha256": "41ff9c50fa9fb89ab9fdb2d18dadc21585aafa1ee008cfcd1e0b731dce645eaf" + }, + { + "path": "crates/oa-desktop/src/behavior/contextual_source_tests.rs", + "bytes": 49518, + "sha256": "044bd412dc45ffe440b1e251993946942dc3759dcb2d5dfe71bd8d6ef61cbcc7" + }, + { + "path": "crates/oa-desktop/src/behavior/creation.rs", + "bytes": 28978, + "sha256": "33ae9aaf4ba90de9432870cc8e99708ef39e3638ae8283a9253c333785c91299" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/app_tests.rs", + "bytes": 13181, + "sha256": "e9c5bf2b07357b7a2f679ae0d8f6904c1c1461aaeb94fa0db478b54d4641ae3e" + }, + { + "path": "crates/oa-desktop/src/behavior/creation/tests.rs", + "bytes": 22793, + "sha256": "a0d1daf9fb3920f7e6181a9802d84fbe056cbf0043b9e41dba5fdda687d9818a" + }, + { + "path": "crates/oa-desktop/src/behavior/form_session.rs", + "bytes": 3941, + "sha256": "f5027fb3a5a5599a182e7d1a10dba56dd66eb1f23a4ba4c4a1744c9a6a5b6e61" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario.rs", + "bytes": 154707, + "sha256": "ffac8821977488ecd1cd9084ad7c0c9fbf8de3d5031c5d4f5d033f0348d3e887" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/focus.rs", + "bytes": 9728, + "sha256": "73a9ea10ad7312086081b8688396a21ab4251c9faecc2df6d984b702f3963533" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace.rs", + "bytes": 24960, + "sha256": "5aec4cb2ceb00ab25900d919a5bec71ab96848b4f14504f51790e3fe8801d3bc" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario/workspace/tests.rs", + "bytes": 80542, + "sha256": "f2f6acd93ecf4e9ffee56abc1de28f71da8cb1353cdc3e67cf0c0cf7a619fec5" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation.rs", + "bytes": 14095, + "sha256": "77199dcb08ec8697f779d2560f6b716aed8d8f33965237a4934934954f4e805a" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_activation/tests.rs", + "bytes": 24665, + "sha256": "5b3f1d2144f405e492686731cc35d05f21b87ada60e426014e6b5f5e5f103298" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle.rs", + "bytes": 9324, + "sha256": "758d244c2e8de61f515d540baa4d967275f49720e0253c6c9159eb9acd71c859" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_lifecycle/tests.rs", + "bytes": 15430, + "sha256": "01b576993b329810cd78a859b45ac52c66f5a14549065661dd1308196e0b724d" + }, + { + "path": "crates/oa-desktop/src/behavior/scenario_operation_tests.rs", + "bytes": 10087, + "sha256": "89fb71c690e07eac314f7a5e05862d5c1e2f9c21039673bf22c4ac894d21c977" + }, + { + "path": "crates/oa-desktop/src/behavior/source_draft.rs", + "bytes": 18031, + "sha256": "08190823090bd8b0305809099abadcc0de431175f7044f1d5abdceda52612ee1" + }, + { + "path": "crates/oa-desktop/src/behavior/state_canvas.rs", + "bytes": 96098, + "sha256": "5844d2abf4a3fe3bb07c707865ee3f8303d213b0fe1871765ac468c11e140da7" + }, + { + "path": "crates/oa-desktop/src/behavior/state_edit.rs", + "bytes": 35843, + "sha256": "4e67321ab0cf88e6200061873086841244c4d610ddd5f88d70c69ac0cc6bf270" + }, + { + "path": "crates/oa-desktop/src/behavior/state_menu.rs", + "bytes": 8530, + "sha256": "9d0a3c29516efa79553c559274848f12101330dbf93ffbbefab398cbc1906790" + }, + { + "path": "crates/oa-desktop/src/behavior/state_view.rs", + "bytes": 7637, + "sha256": "3d01c853663385fc1b760401bbebe3f691fcc289a779a8e63cd0733ff0c8007f" + }, + { + "path": "crates/oa-desktop/src/behavior/states.rs", + "bytes": 26986, + "sha256": "8986ed9492960e20f1254e9dfe3ff91d79ce9fef66f3bda738f9933278043954" + }, + { + "path": "crates/oa-desktop/src/behavior/topology.rs", + "bytes": 84224, + "sha256": "66c81c4d4f2613263f13ae90cea61895c1aeed1f6278880789ec56f8c42433e0" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual.rs", + "bytes": 28432, + "sha256": "5d0ac5b3e258fc70987a00ede1e603681d99746596f2fcc46ad2b3667d65203a" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/contextual_routing.rs", + "bytes": 16731, + "sha256": "d914b0e82aa8d253fe64be2ef74443d1fd2e6cec26d1cf30620a57646e1d426c" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct.rs", + "bytes": 39059, + "sha256": "5cca649870f54abdd2eb098954bcc0a2a5ca456b7ee11b5f653edbdf2ed55905" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/direct_tests.rs", + "bytes": 51170, + "sha256": "edccfe3ce8b224065a3540aa53c6340f13db0cecd48ecc0a3904cd832a483964" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/layout_tests.rs", + "bytes": 37846, + "sha256": "f27203866e22aee80daad2811113341684b0cbd59885b36d64243c4317f29f84" + }, + { + "path": "crates/oa-desktop/src/behavior/topology/view.rs", + "bytes": 22009, + "sha256": "29e29c2a0667baa429ae44dbb400e67c86f24f88959d5e7dd22894473bdd1f09" + }, + { + "path": "crates/oa-desktop/src/connection_edit.rs", + "bytes": 5301, + "sha256": "020581e077f82b43c936b623cc51733b02b88428df4e5f25df74b9705819fa37" + }, + { + "path": "crates/oa-desktop/src/connection_tool.rs", + "bytes": 27023, + "sha256": "649da93677d52dae495b0e19bc32f3122ab05a6d84de8402578ff5ce3f6ee1d3" + }, + { + "path": "crates/oa-desktop/src/context_menu.rs", + "bytes": 52955, + "sha256": "629354b34dc232763700251f2695b4d4e53d6251c0b1432ecc0dfe424f7dfeac" + }, + { + "path": "crates/oa-desktop/src/data_values.rs", + "bytes": 23877, + "sha256": "e1deb1cad551f0a9fdef9653aad257cfb36e6d9c0f93b6245061ec3fab8fd365" + }, + { + "path": "crates/oa-desktop/src/data_view.rs", + "bytes": 38871, + "sha256": "158b852be5d3db450aa5cda8b68a35bd96bddce1d8d053a7a23582095c06362d" + }, + { + "path": "crates/oa-desktop/src/diagram.rs", + "bytes": 111242, + "sha256": "e5260a39e19fc3df19bd16898ff1f0abd60ede7584f595c035b5e86a12ecef93" + }, + { + "path": "crates/oa-desktop/src/diagram/focus.rs", + "bytes": 9197, + "sha256": "b88a7c43123b08cf6228d8e32257f6ed7fe361f7278f427ec138e233e1ea6ccf" + }, + { + "path": "crates/oa-desktop/src/diagram/lifecycle_tests.rs", + "bytes": 9342, + "sha256": "03dd13106f3fdd06a26699bfdfba006fad086a0711cad2ba1aeb09a4e8f8656e" + }, + { + "path": "crates/oa-desktop/src/diagram/pointer_tests.rs", + "bytes": 11859, + "sha256": "ae68e091032fe2cf71559ff7e671b3b6d657ee8279330345f0c7a57edfa472ef" + }, + { + "path": "crates/oa-desktop/src/diagram/port_hit_tests.rs", + "bytes": 5650, + "sha256": "c3728f127711cb6d7f80a4670a798808b6e4239dd29c273445de81706ab6f39e" + }, + { + "path": "crates/oa-desktop/src/diagram/port_labels.rs", + "bytes": 13574, + "sha256": "6643f0cbde7a59d4772ae5284a488083e3b81f2fefabc43619d75738f474646f" + }, + { + "path": "crates/oa-desktop/src/diagram/view_options_tests.rs", + "bytes": 2815, + "sha256": "cf0c98a7715558baf17b59f67a80556f98ad30262b4434635e617c6601775433" + }, + { + "path": "crates/oa-desktop/src/diagram/work_drag.rs", + "bytes": 7059, + "sha256": "9757534a7ba47dc0df5d41c8d7366b1d90f3d50b24344580ff3c783667bf66f0" + }, + { + "path": "crates/oa-desktop/src/document.rs", + "bytes": 31807, + "sha256": "7c87280b5b8d112c34865253f8ba0f80d43bc9897771943b15dc7b5608eb17a4" + }, + { + "path": "crates/oa-desktop/src/document_save_as_tests.rs", + "bytes": 5781, + "sha256": "83dc243a25f4e97674ff0d86c794a490cc923e98f1f9fb05bb038f622f11e20b" + }, + { + "path": "crates/oa-desktop/src/explorer.rs", + "bytes": 14764, + "sha256": "fa01c59219564ba9ae5553abc2b6f94e9849f9148d5812ef99b40318fe5dcf9a" + }, + { + "path": "crates/oa-desktop/src/explorer_view.rs", + "bytes": 13773, + "sha256": "a720d7484bcc3a24729332a00e005d1cc6f5f945a9cc3965134e0024dffb581f" + }, + { + "path": "crates/oa-desktop/src/forms.rs", + "bytes": 105544, + "sha256": "ea124f479fcd2d3978ac3cb8eb81fec4a7aae5e4f4414c4bdd54849e954dedf9" + }, + { + "path": "crates/oa-desktop/src/forms/context_fields.rs", + "bytes": 10831, + "sha256": "eaacd474f6500dd344d5a8b63ccb1d1dd86fe2aea78ab708afa8a80d62ce69bf" + }, + { + "path": "crates/oa-desktop/src/forms/data_fields.rs", + "bytes": 49285, + "sha256": "a540a0d451bff56a96b1d28643b2e8c0649f3846350c25c5b154729c0538e77c" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields.rs", + "bytes": 27414, + "sha256": "e7100474cde18bdfe95562bcb3c055f29b4b15aa64788a578194464aebcd046e" + }, + { + "path": "crates/oa-desktop/src/forms/history_fields/tests.rs", + "bytes": 33950, + "sha256": "16d3c308138c063f45986d53c621ad83c7dc2ce853edd31b7204e2939a382df9" + }, + { + "path": "crates/oa-desktop/src/forms/port_fields.rs", + "bytes": 30554, + "sha256": "3fe684d651d5be6203fd9db3979c772913e1af5ac1514e67be386ffd88dc8127" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser.rs", + "bytes": 12130, + "sha256": "b60af363be333af048859e51c28e8c989cb5c95d696cad16c8eec15f78d57a12" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/adapter.rs", + "bytes": 10447, + "sha256": "87ab4bc3bf27fd4b5a458791cf62c7ba8e44e9ebf846d8b851b8b6ffb454cd64" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/tests.rs", + "bytes": 27835, + "sha256": "8e98f8a3fcb814d4a201cc85b3db87a689fd3d2ce487f8a2fe312fc296f93377" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger.rs", + "bytes": 13336, + "sha256": "34d0acecfe6bed193970aa473cc3313984971264b86d7b362a6b84c23d013c0a" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/trigger/focus.rs", + "bytes": 9923, + "sha256": "f1e79f4b03b2f9fd1cdc335054d4ae177dc9e759b6ea3d334b2bcca39b57191b" + }, + { + "path": "crates/oa-desktop/src/forms/reference_chooser/widget.rs", + "bytes": 33804, + "sha256": "d66cc17af7a48bb8598be683f084bb08fa7af7304f9636f0a1bea94c5cf6c727" + }, + { + "path": "crates/oa-desktop/src/forms/view_fields.rs", + "bytes": 24987, + "sha256": "5184d438f0dfd4e29f284ff048e19da73e71be1f24a6e9f123c7e922aecb85fa" + }, + { + "path": "crates/oa-desktop/src/guide.rs", + "bytes": 118110, + "sha256": "ab4b47050e6d57dccdcc264ee5752766bd5013fccdc35eeeb9c9037bb5eb9a67" + }, + { + "path": "crates/oa-desktop/src/highlight.rs", + "bytes": 2751, + "sha256": "da7c254fff7052e5fd9ec7469f473b91a819406028d7c304f6e22c4169561600" + }, + { + "path": "crates/oa-desktop/src/home.rs", + "bytes": 17587, + "sha256": "f03c1071334894f586a5a7c86026602a694db3c2faf902822e1dbe5156a859c2" + }, + { + "path": "crates/oa-desktop/src/home/tests.rs", + "bytes": 8167, + "sha256": "3b03ccfc97dfb75954e1e0ed568bb87a632295c07b96cedc05ed381f87b378f3" + }, + { + "path": "crates/oa-desktop/src/hosted/client.rs", + "bytes": 21912, + "sha256": "54b24b4b50f8d87d7c92946ea5a2cff4c98760e70555b3ce3d90be27115e95d4" + }, + { + "path": "crates/oa-desktop/src/hosted/client_tests.rs", + "bytes": 23009, + "sha256": "3ef70907ca75e098d631c41b90badd4cff1e1eb1b3c78e15a9f811c13ba8ffbe" + }, + { + "path": "crates/oa-desktop/src/hosted/mod.rs", + "bytes": 3744, + "sha256": "1b75e11c80fcb38fd20bb3487e3f88729fdac73e471c5ae64da28c249f77c63b" + }, + { + "path": "crates/oa-desktop/src/hosted/view.rs", + "bytes": 9281, + "sha256": "fc0c7b7ce3a5f05c49713df6661067751f81e810af11c614ca265ea9490e6463" + }, + { + "path": "crates/oa-desktop/src/main.rs", + "bytes": 1554, + "sha256": "5228743f361f9239e4584780bfa9b65d36207d0288624e1fb42b721146bcff1c" + }, + { + "path": "crates/oa-desktop/src/model_menu.rs", + "bytes": 36340, + "sha256": "d2f836661f43fa1bc8830b1e51cc736948b3d261796c3fa877df02ae15568c4b" + }, + { + "path": "crates/oa-desktop/src/navigation.rs", + "bytes": 8839, + "sha256": "71355a12e1b4791106426d83fe5ebf0b29bce8e1dc594f0655ab85695469669e" + }, + { + "path": "crates/oa-desktop/src/port_edit.rs", + "bytes": 7809, + "sha256": "70b99f577c4fdeda8780c8dc1ee7b1639fd77aaca06658f06d725139fb3efb6d" + }, + { + "path": "crates/oa-desktop/src/port_preview.rs", + "bytes": 35855, + "sha256": "069487c4ece737d52e8ae4a84dcfb132236aca6799e841c91c8e7244320cf871" + }, + { + "path": "crates/oa-desktop/src/port_workflow.rs", + "bytes": 40582, + "sha256": "ccc15f97c3272145a67bb5857b4faeaf7437561bd61912fa27ab26e8824146a0" + }, + { + "path": "crates/oa-desktop/src/recovery.rs", + "bytes": 21041, + "sha256": "57e22e5fbb0e994e64ae03e69450271fe9f04a951db1670c2a018abe99db4489" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/README.md", + "bytes": 1587, + "sha256": "a90002df1e087d2dac7be26926864243568a0de7c4103e4927435b34178e8016" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/profiles.json", + "bytes": 473, + "sha256": "2c12ae96b50e6da5d60ce2b7fa00204be71dfbe2fd51311fc337a0de6a4332ff" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-bundle.json", + "bytes": 80974, + "sha256": "12715995e6f7f35414aea53b3ad720b9b31873ffdeaf4444231db1a5ac3c463e" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source5-model.json", + "bytes": 86191, + "sha256": "5535a706df9ec21715e8b6a5aa6dbd79636ae461450aee61305559016167612b" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-bundle.json", + "bytes": 85286, + "sha256": "ea88890a33f47d67dfb06d6dbbcc179058cf28dad76ae7d615c00aaf30dbbbfe" + }, + { + "path": "crates/oa-desktop/src/recovery/fixtures/source6-model.json", + "bytes": 90629, + "sha256": "5bb8db0b6394276666323483f977ac3586f88554c81a148c6d508fca0ef4576f" + }, + { + "path": "crates/oa-desktop/src/recovery/source5.rs", + "bytes": 6956, + "sha256": "0f0a763f0c98c2c908d4c2b95d8a4c042b6a255ee1cc16260e5404669691f642" + }, + { + "path": "crates/oa-desktop/src/recovery/source5_tests.rs", + "bytes": 12146, + "sha256": "cfd17a742f1f27b523fce7cd9309f0a07a30413395f6c58659fb91d02834a7a3" + }, + { + "path": "crates/oa-desktop/src/recovery/source7_tests.rs", + "bytes": 18213, + "sha256": "7ee61de66c75bf949489ba51ddc9677e2b4efc68801cf27909c9b894bfdc9288" + }, + { + "path": "crates/oa-desktop/src/route_edit.rs", + "bytes": 2941, + "sha256": "457ae59c2761a43a8620b4d336a7cf0f54b965997110ecaf968756a88b6b0374" + }, + { + "path": "crates/oa-desktop/src/semantic_review.rs", + "bytes": 3432, + "sha256": "8dd1e93783d63a663c7e56c28775a5c389cfd7a6b562013d6a95c891afa21ed8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts.rs", + "bytes": 24201, + "sha256": "a79236a8150597ff808597e59cf4f1e9e61c74c4901d9c8cf42d3427bb52a9a8" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_recovery_falsifier_tests.rs", + "bytes": 11034, + "sha256": "3f255d04e4bffa5a467b75e3cbf6f7149aa3269a02f2a89fbaa1db0e5df9ae62" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_tests.rs", + "bytes": 20798, + "sha256": "04d0dd2ac453705185663f705282aa4a3a31433466a5be305764248da1a03c32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/artifacts_view.rs", + "bytes": 6447, + "sha256": "2100ff73565765d8293c84f6ce2d8e566610c1524c50e32ce3c37dc33b6686e4" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments.rs", + "bytes": 18160, + "sha256": "de0ec0c740895b160ff5b847332c087c3f1a48931583464069470cc61315ed59" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_tests.rs", + "bytes": 29389, + "sha256": "8b26be0324e0f33b1e7cf7af340350df8ed98963002d6da8589ee0e6f6900bea" + }, + { + "path": "crates/oa-desktop/src/semantic_review/attachments_view.rs", + "bytes": 3032, + "sha256": "932f231554d77c7cb119d33bb06b9879db5e12127aed187e67013e77b6458e78" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch.rs", + "bytes": 34485, + "sha256": "a462eb627ae19348072775cf8e60b17d62f6b682b74cc413906d493fba1f0b3c" + }, + { + "path": "crates/oa-desktop/src/semantic_review/batch_tests.rs", + "bytes": 27546, + "sha256": "b67c4d7dcabac710cf3d30730a8db323180a558a415e2d117c868cdfa4804619" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose.rs", + "bytes": 27155, + "sha256": "c6adcc9882dde65e9f04f6eda7f0c855c5cbb285cf421123029169112793ce9b" + }, + { + "path": "crates/oa-desktop/src/semantic_review/compose_diagnostic_tests.rs", + "bytes": 9809, + "sha256": "440daf8d43278ef981c620d1818d0daaed8fb83193b8e8ff67b2e42fbf882938" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructor_tests.rs", + "bytes": 54132, + "sha256": "85149521ad7df62918f6f2fab6da2b3346c342ab4bce7100de3f6206c1e81096" + }, + { + "path": "crates/oa-desktop/src/semantic_review/constructors.rs", + "bytes": 12258, + "sha256": "0982163439b06a42d9af1643530364109282e63f05b323a35a76d8241f3caa32" + }, + { + "path": "crates/oa-desktop/src/semantic_review/history.rs", + "bytes": 3211, + "sha256": "df038c2464eab8093a983f3104f0d04ca8f602010a50e1d3eeb8e53f2309e201" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed.rs", + "bytes": 14175, + "sha256": "bdd6c0fdc7108056bc5d7433254503449eed2209813680e717ead24b9d0ce834" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows.rs", + "bytes": 13222, + "sha256": "4b7bf25806471ad22d89253b9af8000f5acff53b4cc0aa1c1a83138e7b270eca" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_rows_tests.rs", + "bytes": 30804, + "sha256": "1a3b09e7ed100411cdf8043f9a78defc664a873ee0201117709185c201a5c57f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/keyed_tests.rs", + "bytes": 31163, + "sha256": "9dc9b989e5a9d408427ca1baf86b2454f9dd3baf40a551c70ca2359dc18a1227" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind.rs", + "bytes": 789, + "sha256": "4ed19952ea511d1b3226564a138e3322f994371d6b49794c14bc3689d1393e7f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/message_kind_tests.rs", + "bytes": 23424, + "sha256": "5fcf9930e949aebeb12eab0327264f32a2388d62dbf098bd2365711e22623c52" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered.rs", + "bytes": 9705, + "sha256": "6a1ed894d1b9d0110bc784a75c49444f1d14f1f74620d701f22203b2d8d0a813" + }, + { + "path": "crates/oa-desktop/src/semantic_review/ordered_tests.rs", + "bytes": 22383, + "sha256": "5c8ea3a69e3da3b94d13f50f12aa7dc53246ccba25ffcace9552a0eb76b0bf36" + }, + { + "path": "crates/oa-desktop/src/semantic_review/recovery.rs", + "bytes": 28769, + "sha256": "88e69044d90c481593bab7cc125f0401c05202fccdde07698cec9483947fe8be" + }, + { + "path": "crates/oa-desktop/src/semantic_review/row.rs", + "bytes": 38159, + "sha256": "b08fdc503c6c4d2ff99adac7e18c9baa861bf86155e00b55d1e492430980d0f2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/scalar.rs", + "bytes": 15153, + "sha256": "9ad202174934dd9a63fbf9cba43135aead571db60846c8b7b1d3019a11df26c2" + }, + { + "path": "crates/oa-desktop/src/semantic_review/source7_tests.rs", + "bytes": 11665, + "sha256": "5e8221d77b068fa30c1571988448cb8829711735881d810f3d333cbc95d34a9f" + }, + { + "path": "crates/oa-desktop/src/semantic_review/tests.rs", + "bytes": 32480, + "sha256": "077ec6501dfaab0b05ea3987943b204f08352952296d313555051d998ccd232e" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view.rs", + "bytes": 57626, + "sha256": "7cc7dd213ab01dadad5debaee868c30a1099466602869a799ebdf9b680e8eaf0" + }, + { + "path": "crates/oa-desktop/src/semantic_review/view_reserved_artifact_tests.rs", + "bytes": 4737, + "sha256": "6c766b29c8664d15cb113d2cc71bba9b60ae4ccf7e44c9c5d3c41e1dc4b7ed90" + }, + { + "path": "crates/oa-desktop/src/source_navigation.rs", + "bytes": 3938, + "sha256": "c1da10882f35f8eb0675e68c642c9a209dde09679cded414cfb9903a4e49ec77" + }, + { + "path": "crates/oa-desktop/src/source_tree.rs", + "bytes": 21816, + "sha256": "4d55e0110a1eb128a5d26c28f3aae5853d79b7245812b7c82bd275f38440a5aa" + }, + { + "path": "crates/oa-desktop/src/source_workspace.rs", + "bytes": 15522, + "sha256": "30f63a6b8d65a38d66061f90d864b5746cbacc0fbd65abc028a8f3071c47d358" + }, + { + "path": "crates/oa-desktop/src/style.rs", + "bytes": 3015, + "sha256": "05d61bec16141612ccafa0988e8c4827f41754509efdb3b961eab69127ded896" + }, + { + "path": "crates/oa-desktop/src/tests.rs", + "bytes": 58557, + "sha256": "b017218195eea2c96aba12eba8a99a38945c8ca910a652e272d34883bdb98691" + }, + { + "path": "crates/oa-desktop/src/view_copy.rs", + "bytes": 9043, + "sha256": "5630f31c942e1226aafd67eabdace6a5c5494875bdc6f7f077019e8110ba41a9" + }, + { + "path": "crates/oa-desktop/src/views.rs", + "bytes": 50668, + "sha256": "9b53126d19b2ae34f170a1422c9f5ea5a833489274cbfa04546279058e289f9b" + }, + { + "path": "crates/oa-desktop/src/views/traceability.rs", + "bytes": 7501, + "sha256": "4c89dcf35c25e737d8cce4d543a5989ca104a5678e6cf40df47e457773d2ef94" + }, + { + "path": "crates/oa-desktop/src/workflow.rs", + "bytes": 82963, + "sha256": "d9e7b11a86fd3ec79d91f0c9bc9cebd5a2043cdaa7261622454fb7730ad8e060" + }, + { + "path": "crates/oa-desktop/src/workflow/communication.rs", + "bytes": 11084, + "sha256": "34d121ad97706012722e4bb6210072ecc3a5b4718b0ceab0c3d0f14d4cd780a1" + }, + { + "path": "crates/oa-desktop/src/workflow/recovery.rs", + "bytes": 9859, + "sha256": "0849b0f34dba5e8761be5fa05784d134ac74e4e9db395d6b9b7d6cff71e3f3dc" + }, + { + "path": "crates/oa-desktop/src/workflow/transition_tests.rs", + "bytes": 8553, + "sha256": "589b1b2dbadca74a52c2cfcfd4fe620bd4790abd113ac02182e91616c52d793c" + }, + { + "path": "crates/oa-server/Cargo.toml", + "bytes": 778, + "sha256": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982" + }, + { + "path": "crates/oa-server/build.rs", + "bytes": 45, + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9" + }, + { + "path": "crates/oa-server/src/error.rs", + "bytes": 5610, + "sha256": "93817f1502386e4662c96ee1c7d1c4afc4e33bda6fd64e46c86c8e1afd5a9368" + }, + { + "path": "crates/oa-server/src/lib.rs", + "bytes": 7743, + "sha256": "20bef350350ed6339588b23af684abf745f97916c7edf3853ee042abe687e664" + }, + { + "path": "crates/oa-server/src/main.rs", + "bytes": 4163, + "sha256": "d59a6a2b5c7034bd2e00a516d2d49abb16391bf0316c1c357ddafb9c82d2d1e3" + }, + { + "path": "crates/oa-server/src/preparation_http_tests.rs", + "bytes": 5523, + "sha256": "454b90d0055d35644c8d990cd7576ddf675a9b271ca07fe9b0efce25d8ddbc07" + }, + { + "path": "crates/oa-server/src/routes.rs", + "bytes": 46053, + "sha256": "3f9a0c22043dbf28f7a8e587d2fc3abf869f76f4d23a46fe0aeb9c4392454a4b" + }, + { + "path": "crates/oa-server/src/store.rs", + "bytes": 25524, + "sha256": "37dcfb845b7993d5bced2bcf25fedfcd2a9c20a748f9315afe6cca1f41f89ae5" + }, + { + "path": "crates/oa-server/src/store_preparation_gate.rs", + "bytes": 4440, + "sha256": "427c390da3c0281ba1fe115a93ea90800e3b45fce6bcb9185e71982ddd885fec" + }, + { + "path": "crates/oa-server/tests/http.rs", + "bytes": 71892, + "sha256": "50daa6a90e96ad6fe3c6a27df2eaebe486270599c203892d09769c547a194975" + }, + { + "path": "crates/oa-server/tests/http/communication_limits.rs", + "bytes": 5790, + "sha256": "ba5474dd8e494a0176fffb4548c8e3deb2081b15de33bfce82394c764e0a2c16" + }, + { + "path": "crates/oa-server/tests/http/data_contracts.rs", + "bytes": 25949, + "sha256": "8cd456db83f301baca380acf025a5a99db4edf7d8839537dfbd02c4307e10e6b" + }, + { + "path": "crates/oa-server/tests/http/port_anchors.rs", + "bytes": 15086, + "sha256": "7199d0a208ddad9e1518b6e3fb390d64da111716d7505ba5c995deae19ad1258" + }, + { + "path": "crates/oa-server/tests/http/semantic_transitions.rs", + "bytes": 22832, + "sha256": "856d1c9b633ffb581e3e631f4e5a607789a02181dbf060667f208a569bfa4920" + }, + { + "path": "crates/oa-server/tests/http/source6_views.rs", + "bytes": 13023, + "sha256": "867bccda0e030eeeb9976b4ceeb47b21ab5044d700278022d5fb495bbb64ca07" + }, + { + "path": "crates/oa-server/tests/http/source7_contracts.rs", + "bytes": 11000, + "sha256": "0e0a467186da7263c0754890aff69ebd0d92d36b5224e4865bb6854b18dab7e8" + }, + { + "path": "crates/oa-server/tests/http/source_projects.rs", + "bytes": 30907, + "sha256": "8ff580f317ec267d1cd72ae14d8638f74a77cdf99ca4c78f66f4290c2d77460a" + }, + { + "path": "crates/oa-server/tests/semantic_http_contract.py", + "bytes": 7251, + "sha256": "4737ff94f10761f94151a694414c5c62737e0391ec820bca132830652bc4cca2" + }, + { + "path": "crates/oa-server/tests/semantic_schema.py", + "bytes": 25111, + "sha256": "cacca116c42ffbc097f1419c0f89921fa0dfd3faa864d46820ff744cfe6967f9" + }, + { + "path": "crates/oa-server/tests/state_representation.rs", + "bytes": 12241, + "sha256": "6686c826f28248ae4b63ec3f2112e193d4a347724b87974483217fcfee49cd61" + }, + { + "path": "docs/acceptance.md", + "bytes": 3463, + "sha256": "32ed3e4fed63f5c464e0937221f401d71623b276dd70f083531ac6ccebbf9050" + }, + { + "path": "docs/api.html", + "bytes": 72515, + "sha256": "a06126cb741da57e9c06e83fc4137ccde0de05562673546bc9d405878f51ea07" + }, + { + "path": "docs/api.rst", + "bytes": 41929, + "sha256": "ca7d310138c3b4d429d80a1d03d1ac8d4a9296069e205da573034256d10438a7" + }, + { + "path": "docs/architecture.md", + "bytes": 10974, + "sha256": "a50bd1645222ef3e574fa07a6ab9aa213431ee8833c6c0158ad91ce0f799543c" + }, + { + "path": "docs/language.html", + "bytes": 175111, + "sha256": "67dcfa3477b48a0b07298ec81741840cc3ccff12c7d58164873d746d41d611c8" + }, + { + "path": "docs/language.rst", + "bytes": 134663, + "sha256": "12229dd7d52fbaba80fe599d499f29b535f4c37c7be0585664d17edf0466ba33" + }, + { + "path": "docs/linux-packaging.md", + "bytes": 8671, + "sha256": "41a1bb1095801df37a1411341c5791d55ea8c365739314d599a60269ac4bc7a0" + }, + { + "path": "docs/openapi.json", + "bytes": 346920, + "sha256": "bc5825a3182a4df5f6710a80262f4a09b4c15f0e4cda7ca74e1746ceca81a89b" + }, + { + "path": "docs/research-v2-architecture.md", + "bytes": 40445, + "sha256": "1b3809f2dabe6b1805dbf3d3f2625c471cd21356c7bd603916466a8c4ced8090" + }, + { + "path": "docs/research-v2-semantics.md", + "bytes": 31535, + "sha256": "b7ec3677300248926a88b84da3e7ffe52f5b73524c7712c927a0e951569db04f" + }, + { + "path": "docs/research-v2-service.md", + "bytes": 36209, + "sha256": "4828df5bc679e7c71f49b4b85c9e7dacbec52f46d416fed48af70e08886d4e4e" + }, + { + "path": "docs/research-v2-ui.md", + "bytes": 3245, + "sha256": "894e721b59a8ca85f0d95b6706ed5f130a0372def460cf33aeefc9e5e38cde0a" + }, + { + "path": "docs/scope.md", + "bytes": 16690, + "sha256": "a1d0cfbfc06fc8bc2bf0f71343aacc8853cbbbfc00a1fc9852ddf41c8245ffca" + }, + { + "path": "docs/server.md", + "bytes": 23361, + "sha256": "4eb24937d424ba8b384e1734e02a6f8e963ae11d2715889c92b14b39ff2e4a48" + }, + { + "path": "docs/source-cli.md", + "bytes": 3374, + "sha256": "34f12b72cc6d6ead4f47c7818c1897db592f8ad493c70776db2ab48c24d8f051" + }, + { + "path": "docs/v2-interface.md", + "bytes": 11807, + "sha256": "c7fbaf0ebd3fc9f6c11f818db2b0b9d68a33f580cfced22bde83ce08ae790bc7" + }, + { + "path": "docs/validation.md", + "bytes": 6505, + "sha256": "f46ea950ed1a54409aa07c4f9e90f39f8e2d00c1dd1b6cb805caa3993845967f" + }, + { + "path": "docs/windows-packaging.md", + "bytes": 10406, + "sha256": "2c852ff7041713ffbff3c951ac98df647c51fb70b0feba9000f7bfd5bc2703a8" + }, + { + "path": "examples/coastal-rescue.arcadia", + "bytes": 33107, + "sha256": "7e183ef9fd8154d3074303f1956cd0d9871c19e3ffc630d333b0bffbd6e30e17" + }, + { + "path": "examples/coastal-rescue.json", + "bytes": 49715, + "sha256": "242f0b031229a87af5c4ebe5d651defe59c191a6b7a69dc0a77f7e203411f195" + }, + { + "path": "examples/legacy-v1-coastal-rescue.arcadia", + "bytes": 3449, + "sha256": "4dbbbdf8bc7e6cb8e0a81dd678069dae585a9e5187c59bc3665e1fdab3f1a86a" + }, + { + "path": "examples/legacy-v1-coastal-rescue.oa.json", + "bytes": 5976, + "sha256": "fd0e9dedfb7adb922dc0575cc2b820d40344d639f1d8052bd70363aa59de9c24" + }, + { + "path": "examples/release1/README.md", + "bytes": 11137, + "sha256": "113cfb1cf38a98b51bff60442d86a35d636a3d80ef206bece7d53d0aae67f2d5" + }, + { + "path": "examples/release1/evidence/repair-check.md", + "bytes": 1419, + "sha256": "f4db17bdca4ecbb1bf0caef01b2da5f1f7f798ab3152b648ce6dd8696a6a68e5" + }, + { + "path": "examples/release1/expected-diagnostics.json", + "bytes": 288, + "sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e" + }, + { + "path": "examples/release1/model.json", + "bytes": 134520, + "sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727" + }, + { + "path": "examples/release1/model.rs", + "bytes": 28762, + "sha256": "15f30f6bde655808fe754665c26d560e36f2a9bad340f346b09137d0d05045f5" + }, + { + "path": "examples/release1/oa/activities/activity_oa_restore_work.arcadia", + "bytes": 1307, + "sha256": "83e73d0a013d5c3e1a4af0d9139ab0cfa362d25a846671fc2dac59181061a9d4" + }, + { + "path": "examples/release1/oa/behavior/process_oa_assessment_procedure.arcadia", + "bytes": 697, + "sha256": "172c32c044ef4b5bc58a1f4635cc81f48dabb4014479b47dce7b25fedf2dbd0d" + }, + { + "path": "examples/release1/oa/behavior/process_oa_field_procedure.arcadia", + "bytes": 1781, + "sha256": "d2552dc5383e2e91cb302a790364e197f663c2edc013a2ab1978789825c9c324" + }, + { + "path": "examples/release1/oa/behavior/process_oa_response.arcadia", + "bytes": 3225, + "sha256": "cf86f46fa5c5d70592ef43f1bc1cb4d968efd8add384ba88036bef6b88aa4abc" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_conversation.arcadia", + "bytes": 1795, + "sha256": "b25be524e98a35ebac5e4481b7609c027b32baf9605e8097f807560f94a77ca6" + }, + { + "path": "examples/release1/oa/behavior/scenario_oa_full_scenario.arcadia", + "bytes": 1261, + "sha256": "00a1edf2c9707a0eb62ac070c2d02467874f2c9c1f273cc6ddb53d6d65999a1c" + }, + { + "path": "examples/release1/oa/behavior/state_machine_oa_monitor.arcadia", + "bytes": 2022, + "sha256": "447c9ad1359f4a31ecf975ad07c0b08d8e7e03191fb0858e2fc56f377b223cd5" + }, + { + "path": "examples/release1/oa/capabilities.arcadia", + "bytes": 781, + "sha256": "fc8012e5554350b12e1cb80080f8feab80d933c9b33c0f2a7bb500cb7d609936" + }, + { + "path": "examples/release1/oa/model.arcadia", + "bytes": 661, + "sha256": "f7cf914766ea73ec53b85e32d117ea9a9dba52d3e038246863541ae7069b1a15" + }, + { + "path": "examples/release1/oa/participants.arcadia", + "bytes": 1834, + "sha256": "951764c14179f27c10e315acf2ea37d1fff54c77b8441e23addd239e8c715ce3" + }, + { + "path": "examples/release1/oa/types.arcadia", + "bytes": 788, + "sha256": "9d0396fb82dd5733edd8d1cf52f968ca84906927c704f9cf0944a7fae215cf49" + }, + { + "path": "examples/release1/project.arcadia", + "bytes": 1958, + "sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda" + }, + { + "path": "examples/release1/sa/behavior/process_sa_assessment_procedure.arcadia", + "bytes": 706, + "sha256": "73928ced61c06cbc08728d7956676a50fd4c05aa5b7f1ff4f29ce27a0b0f2088" + }, + { + "path": "examples/release1/sa/behavior/process_sa_field_procedure.arcadia", + "bytes": 1790, + "sha256": "886d462af83110cbfa55dd232a667ea1446761234471357cbb878794e98e8768" + }, + { + "path": "examples/release1/sa/behavior/process_sa_response.arcadia", + "bytes": 3234, + "sha256": "041785fc22842423822431bd5e6e8d16094ebd0716965e7c765fb8c1d7549e8a" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_conversation.arcadia", + "bytes": 2127, + "sha256": "97276f5757ee9aa12a0dbd9d3ccd58174b3091162bb8bcce357cec20a45f5d85" + }, + { + "path": "examples/release1/sa/behavior/scenario_sa_full_scenario.arcadia", + "bytes": 1256, + "sha256": "e12fc406b99d60a2f7768aaa0b25ba560e8605f0b8e37f3a7cdd3b8443562b74" + }, + { + "path": "examples/release1/sa/behavior/state_machine_sa_monitor.arcadia", + "bytes": 2022, + "sha256": "05ce29af99424c491c47fe2450dc6f5f8ce995511c01ec7e17bb5855be3c9736" + }, + { + "path": "examples/release1/sa/capabilities.arcadia", + "bytes": 781, + "sha256": "b6912fb3ece439912345fa71724acd462e716a1e5a88203a1058a5c3b2c20a4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_audit_thresholds.arcadia", + "bytes": 297, + "sha256": "e5a04325d52183956dca814dd90f4e56c96c6b7db0f4f202f203ecb49c3e0f4f" + }, + { + "path": "examples/release1/sa/functions/function_sa_restore_work.arcadia", + "bytes": 2576, + "sha256": "fddeb67308051325041fee641fe758ddf43345b7c47b66d433616ad07fdccdd6" + }, + { + "path": "examples/release1/sa/model.arcadia", + "bytes": 661, + "sha256": "d431509251acb859fbb98733b6d18add952495e10a78703fbe8f31e40bc083c4" + }, + { + "path": "examples/release1/sa/participants.arcadia", + "bytes": 4012, + "sha256": "780d2eb08b217b67b55febb3d34846f727b8ee9018df6c5741748647e36b2ff8" + }, + { + "path": "examples/release1/sa/types.arcadia", + "bytes": 1227, + "sha256": "101fc0fbd99f1101514aa7b6da4f8e535aae0bb94c9e2b9e7e6c151135b28660" + }, + { + "path": "examples/release1/traceability.arcadia", + "bytes": 29506, + "sha256": "48a96f543456c9b5a5798fc795594e4119147fe45f11a6f109f141b7f514560f" + }, + { + "path": "examples/release1/transition-before.json", + "bytes": 35801, + "sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d" + }, + { + "path": "examples/release1/transition-request.json", + "bytes": 4276, + "sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a" + }, + { + "path": "examples/release1/views/diagram_oa_allocation_view.arcadia", + "bytes": 2176, + "sha256": "dfc0eb61e0e2aa5bda45524571fbfa3494f44ce19696f3e15e07438074a07bc7" + }, + { + "path": "examples/release1/views/diagram_sa_allocation_view.arcadia", + "bytes": 2173, + "sha256": "b78b43a26a82efb8fbd5374b09c329fa341f57b29f635d397b9ef8aede71d389" + }, + { + "path": "examples/release1/views/diagram_sa_capability_view.arcadia", + "bytes": 1620, + "sha256": "75e8dc9fb30f25d6f8fd3c6b595593ab4f98958a25798f961e336e0fac557649" + }, + { + "path": "examples/release1/views/diagram_sa_service_view.arcadia", + "bytes": 2209, + "sha256": "b08c84f3ea633e7c78dfdad3272f75415f6256cf3614b6d99bfd4f0269076c9b" + }, + { + "path": "examples/release1/views/diagram_sa_state_view.arcadia", + "bytes": 1931, + "sha256": "5f42f4c605e57b817d8400ed21f2b14bfc4e1592aebe941ff113767504c2b869" + }, + { + "path": "examples/routing-workshop.arcadia", + "bytes": 66431, + "sha256": "dc6b75da72884d399132ed9e300fa5a26b73d802bb526c9af986ae9eeb0a646a" + }, + { + "path": "examples/routing-workshop.json", + "bytes": 100281, + "sha256": "8592714f75b271133f21ce017d87896b6cf91ea0e4837f1c2ed453e21be26b14" + }, + { + "path": "examples/source-project/oa.arcadia", + "bytes": 2142, + "sha256": "5f60642f211b2d352a951092faeeb7503d4fb7f6f7fca99e810347231101d31c" + }, + { + "path": "examples/source-project/project.arcadia", + "bytes": 606, + "sha256": "787f6b67b179ffd221f7e5faf1a4edd74cfd116aa1e3b5e9ed9f22fbff612d8d" + }, + { + "path": "examples/source-project/sa/assurance.arcadia", + "bytes": 682, + "sha256": "ab76044836e4dcd42a82d316846ec87da2108939aa2037640c5bca1d2ecdee0f" + }, + { + "path": "examples/source-project/sa/participants.arcadia", + "bytes": 1231, + "sha256": "1abad579812e77877b45a3d8e3c3e9da734be2d04a0254cc730a5257ebd2dc88" + }, + { + "path": "examples/source-project/sa/reporting.arcadia", + "bytes": 2839, + "sha256": "f0b7443f728912ca163de39b6055876b533a77feaa3219b2d40a2dd65712e058" + }, + { + "path": "examples/source-project/views.arcadia", + "bytes": 3508, + "sha256": "e29ad3f406a6a50d2f0ae2ca2a53ee3b0c18222cd4098704a46d4f48b64ea17f" + }, + { + "path": "examples/text-first/README.md", + "bytes": 1367, + "sha256": "4ec8250d5ed556f1d496e8c85137e973e802ecb11df1a36488411e8cdc5a9f9e" + }, + { + "path": "examples/text-first/project.arcadia", + "bytes": 480, + "sha256": "f441535c623e0cf20e1875eb2cd33b587ed00e078c37af39cb36d89bb5edc19a" + }, + { + "path": "harness/fixtures/basic-editing/README.md", + "bytes": 12012, + "sha256": "3545d9695e7c62e0caa818efd7f4dc426f04876a3626e0f3b1bad606b258cb26" + }, + { + "path": "harness/fixtures/basic-editing/base/expected-baseline.json", + "bytes": 4524, + "sha256": "f239e728d650b0af32bb8f3dcaf6b27c99b9c5041132ac14e51756ea6563d978" + }, + { + "path": "harness/fixtures/basic-editing/base/project.arcadia", + "bytes": 3077, + "sha256": "045cb047d7bfbca72c3fb30db4c81a30ad463d3af7fc51604906ad7fa75a1ff8" + }, + { + "path": "harness/fixtures/basic-editing/base/rationale.arcadia", + "bytes": 57, + "sha256": "c01867c9dc0d40726853119fac3c6ad24a40d8d362a93a8b9d20df04ec2e273f" + }, + { + "path": "harness/fixtures/basic-editing/manifest.json", + "bytes": 447, + "sha256": "d23c21b02064ddb85e051e10e16ff089daba8d9910bb1a695dfabe2db3757734" + }, + { + "path": "harness/fixtures/behavior-creation/README.md", + "bytes": 5954, + "sha256": "9e5fc751424d12cfe76a84abb1da45b2d38947409179451bb90ffe7e7ddc8723" + }, + { + "path": "harness/fixtures/interface-operation-probe/README.md", + "bytes": 2604, + "sha256": "088f0bdb3375deb8f2c7e3b749ca8d210ea828ca4dece69b3871b674e3110175" + }, + { + "path": "harness/fixtures/interface-operation-probe/hashes.json", + "bytes": 977, + "sha256": "f6d3e8aa42f40f64ce2ecba7b9cf112eb9091f3cccde3a592b0434e834cf2a6a" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.arcadia", + "bytes": 4218, + "sha256": "c0fe9570684c0061efc4cad65e339fede6961b04ca90c6f324c787bd65e61226" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/after-reset-deletion.json", + "bytes": 7835, + "sha256": "93187f7a1b476a44185725c6b15f2e1767482b6911ab1280144348d033eb51f0" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.arcadia", + "bytes": 4771, + "sha256": "02f85e39957ebe6d56336fa729a5c8b10f51865face9d3b2c9679200571fcfc7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/boundary-only.json", + "bytes": 8840, + "sha256": "756f9710336e6734ce3592ca774c6f104bba5a37c9e165540eb39326682393d1" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.arcadia", + "bytes": 8635, + "sha256": "ac5b629ba5596464f9f8a975b8bc2764e3007ceb7342de3f828d4b18e4f069b7" + }, + { + "path": "harness/fixtures/interface-operation-probe/output/explicit-functional-refinement.json", + "bytes": 16160, + "sha256": "78a47c978dc667aa1c45af711f06aa2a0d3c581003013e30c3e02fb0faae2e64" + }, + { + "path": "harness/fixtures/interface-operation-probe/probe.rs", + "bytes": 11274, + "sha256": "72b1b443e25eb20420dec4477b0fb5ef5d1c705e3882c81df88dd578ab96a426" + }, + { + "path": "harness/fixtures/release1-native/README.md", + "bytes": 2564, + "sha256": "5f5ba040fd2df9261a29bcab3f9a7ae27c3683265411ad3dda0b467d5df8590e" + }, + { + "path": "harness/fixtures/release1-native/artifacts/README.md", + "bytes": 4155, + "sha256": "24200c84ccc2ef3e17c029744074e5cea785188f5549ac54e44cf89682643f81" + }, + { + "path": "harness/fixtures/release1-native/artifacts/generate-semantic-artifacts.rs", + "bytes": 9275, + "sha256": "444f360b78df52c5e42046f77b148781e0c9bddc2a09c0b7bd65c7a4f376cfe6" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.arcadia", + "bytes": 7768, + "sha256": "84b22e95c213018612e6e8a84cad68b35a8b495ff3515b0f978c5e7a3d196d79" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.after.json", + "bytes": 7330, + "sha256": "13a6f99ec2df1dd35ee8b2613f183918cd9537eda4a5da085ad52e65c033db59" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.arcadia", + "bytes": 1446, + "sha256": "1e0d662ba33071b122ad9206d2d559a8e748c9431eb3ac1b759bde3760ca877c" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.json", + "bytes": 2216, + "sha256": "fa6a2e3643c0f909b92407abec3edc897033162eeaa501f8d4616f79d41fa044" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.manifest.json", + "bytes": 567, + "sha256": "65cb70b0d697a055363ba01bf30bed7e412d43c9978a033549c378d117719ae7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-create.request.json", + "bytes": 3991, + "sha256": "ed905267263e7f8a0cd2dbe833196b30118b6a246815216932fae661ad650699" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.arcadia", + "bytes": 6837, + "sha256": "e50fc462ec22dbf98011929931dd2489430001c3e6433608685b9d88bceb9acb" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.after.json", + "bytes": 6433, + "sha256": "f27a7b38d59c7cefe58cb36783d3d4dd8d8ae1168d9aed1eb61d343c18758908" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.arcadia", + "bytes": 1807, + "sha256": "eba2aec39e6efb405eace4bc8ab0c5563907c26d449e71a4aa750df9f73233b4" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.json", + "bytes": 2673, + "sha256": "2ef777f19b94f08b5e5ca2ef727777897e1018f1426eee291408b3c69101f596" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.manifest.json", + "bytes": 519, + "sha256": "3af7232ed3056ca84dcaf0f266ead3faaa512a0dc0051c7ba68791c20dbae0cf" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-delete.request.json", + "bytes": 1246, + "sha256": "8af21b00b62e620256fbf50e47c6c5836cdb6922d9549cc4b3d86bc03b008073" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.arcadia", + "bytes": 4200, + "sha256": "20bb30473830e44228958e78fb7480269cdcc0580c6c90c718da75f34ca5a43f" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.after.json", + "bytes": 4552, + "sha256": "44f4b05db49758dcf344788f57cecc0250fd029099b1c54e4e1e3e972f6cf039" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.arcadia", + "bytes": 1808, + "sha256": "b0fd031671c9f755756922ec5c40a0ce3f40164d22c3c389aec9fd0705344da7" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.json", + "bytes": 2673, + "sha256": "1acf81e08c51c85aceb14a3efbc39ec680552a19c7824aab4611ac3cf71b9c6d" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.manifest.json", + "bytes": 610, + "sha256": "a07978f4b0a3ca83e5ae5f35e7b66b26473b24431fc90e5889d755f1816d52dd" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-move.request.json", + "bytes": 2352, + "sha256": "5ff844a038b0030adb5a83d13d81e60f30627543388f6199b6a0e026fc42ea58" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts-native.md", + "bytes": 4075, + "sha256": "a51ffbc45b6c172cbfed3b16c249296e6a28d457fea57393dd958cdcfbafbca1" + }, + { + "path": "harness/fixtures/release1-native/artifacts/semantic-artifacts.hashes.json", + "bytes": 2367, + "sha256": "3ad8b7428b3ed7585a91e7f5d9d5f4880caccfd0b08dca25d05af523e62e0a10" + }, + { + "path": "harness/fixtures/release1-native/communication-means/README.md", + "bytes": 15091, + "sha256": "015c16010c212af283f9def118c6d263ba65a3bc6e81a750f180624ca69bb311" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/entry.arcadia", + "bytes": 6098, + "sha256": "a6976e7c21031e7cc3cb731e20c3075cf89cf85144dc8d3f52930f8521ea196f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/expected.json", + "bytes": 10480, + "sha256": "60c4419415c546f06c9972ac7bb0e530ada7b30a200b59e75ddda231a24f9a3d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "3c41459f2b0706a767988738bf8126f76540415bb5940d9c5db19cbe8c18182d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-create.request.json", + "bytes": 1331, + "sha256": "b16e673b29c96b5aed681389ff7669110abe552939e86dd0ec6011c9a45ed860" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.arcadia", + "bytes": 5239, + "sha256": "a511a4d817d9c5c80233bce83e84a7056b7dce7afd9fcc25696e333f8f4df055" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-draw.json", + "bytes": 8424, + "sha256": "7140114926228b1c378c450535f7a70992c71a879a8d2270c49e8d5f04a2f484" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/entry.arcadia", + "bytes": 5710, + "sha256": "910e6dfe609467047ce629ec9c626f4e927cada74bfbfa164414a8fe6783ea87" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/expected.json", + "bytes": 9868, + "sha256": "567259e20c9f6278776e8fa99b8b2fdbbc9a883ad875c5d39dae1b53de3a2924" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.after-template/traceability.arcadia", + "bytes": 407, + "sha256": "997f72fe9258012df66e88344cf39c1a2cebf2327f604056b67f7f2a8ebcfbfa" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reuse.request.json", + "bytes": 1127, + "sha256": "cb3fe05859cfffec6f8846c19983dc462413bc0ea4f6e19204f09c259919c4b1" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/cm-reverse-scenario.arcadia", + "bytes": 8209, + "sha256": "ec826b9b84616507490ac30e4d57100dd6338dba2f7071e879a8fb58820a85c5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/expected.json", + "bytes": 19735, + "sha256": "ef07e4d2d3fc36004ff01739838281581d9a703c747611eacc01bb9cc672489f" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-behavior.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/entry.arcadia", + "bytes": 9827, + "sha256": "86dd8a355f6c9dadfea56d06e5247c9b0f820819d7df17ef5690671c7c81324b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/expected.json", + "bytes": 21877, + "sha256": "980489ec2c483d4f9efada61358c1f29bafb2572fd5b804c656b91b8e9bb4f9a" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/oa/behavior/scenario_oa_cm_200.arcadia", + "bytes": 1488, + "sha256": "0ec8d7e38f5a5cd56ccf3979757b3a9f412ad0ae36ee6c2690b7872129046d70" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.after-template/traceability.arcadia", + "bytes": 2068, + "sha256": "dd5d356390089e4ec474374956f6219502733987e60ef8ff32920d8b33dce858" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.arcadia", + "bytes": 7698, + "sha256": "1abc4c4cac37cfb06ed3b12a115f9e7e6a2d3affd34b25c355309e5ee465fa40" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.json", + "bytes": 13130, + "sha256": "a5cf4cb2ef390113dd752f4054d43fb789da2ca77799efb5782805ae8aa2dfd5" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-reverse-scenario.request.json", + "bytes": 1090, + "sha256": "c0ac99ee186d126fe3ec57f2c0a4072984d39d36ad21ead357ab66a08ac0065c" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.arcadia", + "bytes": 5454, + "sha256": "b761c4c2af5f7064aaf1f887ffd6094eb6ae834b2c8057ecdbc4aa97c042066b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/cm-transition-ready.json", + "bytes": 8852, + "sha256": "2536b000de361fb131787e32b466b9123d4e98abf00c099ad32f6cb8e7fb530b" + }, + { + "path": "harness/fixtures/release1-native/communication-means/generate-communication-means.rs", + "bytes": 28035, + "sha256": "003521404b702332082e01f2be7676fda1dd7b5bcf220bb81d25120c8984c75d" + }, + { + "path": "harness/fixtures/release1-native/communication-means/hashes.json", + "bytes": 3133, + "sha256": "39b4dc02fc8b074015c59354fd1c1061c25832fde25065c7151f36eb0455e6f6" + }, + { + "path": "harness/fixtures/release1-native/communication-means/manifest.json", + "bytes": 1237, + "sha256": "fb921f42f2c4a4f8a67d1266f17f8c7750b6a2619554b713aa92b17918f0c43e" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40-oracle.json", + "bytes": 26264, + "sha256": "74edca148583f42c269e51f135662f65ef1c9ea1c94516d63e2a5091967dc99b" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.arcadia", + "bytes": 28947, + "sha256": "00b87736b82c5afd33b311df7aebe9a6c8c51b6de66221181b5ea8bc8ca221a3" + }, + { + "path": "harness/fixtures/release1-native/dense-40/dense-40.json", + "bytes": 54938, + "sha256": "5dd4f22453330cab3abc059881660190e689a22619853f77cf6d0b52735d97ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments-native.md", + "bytes": 2624, + "sha256": "28906924b05f75bbf432389517aef65f1df474d2f2bff79a3586564f7f7328ef" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.arcadia", + "bytes": 6795, + "sha256": "9d084dd75a0251d349cc31f9ee98df58d0bc76859dc3cb1503f242e2f759888a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.after.json", + "bytes": 9618, + "sha256": "f09be41afd85c18fd52fdf997e9b81c4b7cb2c41e78d167abcd14caea8110333" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.arcadia", + "bytes": 4990, + "sha256": "8740f27be99624013d9be876639c0411e1b8c14f0f9a843f43dc71d769efd79a" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.hashes.json", + "bytes": 963, + "sha256": "00fc9e2c709bdcd9ee98012176cb0edb635c112153d963cd169bf4bf69a9e010" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.json", + "bytes": 8146, + "sha256": "9c188f2890630c7feec2be719a7104af9690da7ea836df18fa78da3ff2acfc1b" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.manifest.json", + "bytes": 1045, + "sha256": "46b40f221ffad614733b615208814ace63947e96b80bbfdec63853ccd4f4e8c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-attachments.request.json", + "bytes": 3075, + "sha256": "b57f656f0b9cf2c595e83150c683301909e20f15684d35d108d3c57ee0dc5909" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch-native.md", + "bytes": 2637, + "sha256": "dddca2b85f892b05881c75ef3cd62437396cc086a09909b621e02bad0cbe56ff" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.arcadia", + "bytes": 3134, + "sha256": "d3315bba762395205ae761e6e64029e8b4070c15a1299c6114075581db7b0974" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.after.json", + "bytes": 3927, + "sha256": "8f36119c7e893a4af374b13b85b1c2cb3df0196df8d06a551386628fc8b8646d" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.arcadia", + "bytes": 1787, + "sha256": "5e1f433e04621424edac43e53411624059e873f88dd531bfdb39093953485ed7" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.hashes.json", + "bytes": 933, + "sha256": "1bd87700b04e4f169ab5f8aceaa3b0c3ec3a1cc43e1bce135a1cee506fc75d38" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.json", + "bytes": 2816, + "sha256": "1972242d2a8677d004dc3af1081feb292de65fe26128d877dded8661f9906619" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.manifest.json", + "bytes": 647, + "sha256": "1e440efa02e2ccc27585d9a49c7864d53e3e3e7645ccb219f040e00d95331b8e" + }, + { + "path": "harness/fixtures/release1-native/semantic-batch.request.json", + "bytes": 2197, + "sha256": "71f23474614aab90398ce24f00f2cf61d6cb9a3a34faa3e12e0c8104e0a71073" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.arcadia", + "bytes": 15635, + "sha256": "e3ce0347746584f503b825a8b6bd23a7eebf0827940112ef8f36d500c1d0a043" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-repair.json", + "bytes": 25736, + "sha256": "29736f2a619f7f2d0e795229f6e8c3645a1b4eca6292043cd604aa01b1ec9170" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.arcadia", + "bytes": 15631, + "sha256": "9ab573c92be66e3bae659dd826923ba6066979b1651edda7bd469056632cd77e" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.after-take.json", + "bytes": 25736, + "sha256": "828c990c6129692cd31c7f6ed0dd6c952f9cfffdd90bc80171df82d4d929afba" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.arcadia", + "bytes": 15617, + "sha256": "49214be2ca9c8bb6195c3b39737c053847021839f70f0bb2921d35a1fbd2ac83" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid-request.json", + "bytes": 2225, + "sha256": "8b02d4739b1be2c8a64da76423b4a6cae7d89c60f4d30723b94f1da3779cbcca" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.invalid.txt", + "bytes": 78, + "sha256": "aa536e18bc65325163e9b645a4ad031ab599fcb05948dcf741b725d0f0c8b602" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.json", + "bytes": 25722, + "sha256": "995dd72f5c1f07f998233ae9847e337cb82de0c2a9053d3905be021d5f8124b9" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.manifest.json", + "bytes": 1059, + "sha256": "ad315359bfd68ce0d265976dc9e4ea6a502ebbb87d7339dd1af5ef27dd01e433" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-plan.json", + "bytes": 15016, + "sha256": "27bf316ad66ffa91f6323e75b0c280baf5caec298645793dea72c5d42aa3b782" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.repair-request.json", + "bytes": 2225, + "sha256": "f4f6b5480ec8927033ea469ea82c1e8411cb6dba95d2da680f15bc193914c9b4" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.steps.md", + "bytes": 3897, + "sha256": "7d7e38d93641a5f22a2738baa4dbacc392eebb477a855cdce0641961980a19ad" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-plan.json", + "bytes": 18557, + "sha256": "74dd68ba686b8928054480f0bfed55aad91f6f1208803399dc9878e894f57ecb" + }, + { + "path": "harness/fixtures/release1-native/semantic-keyed.take-request.json", + "bytes": 1508, + "sha256": "d19a53002a6bf95af3123a3ef9f78baaf7ce1085d4f06f0f4a9d5e5d5accbc0e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.arcadia", + "bytes": 6935, + "sha256": "90277f1780d43a6f0b2184bf00b87e7a4f3518d67c6f10d4793daafe1aabf493" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.after-order.json", + "bytes": 11286, + "sha256": "5a3c8494f6976c23b990c14b40760fb2f32ca9973caf6f31dab5632310663591" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous-request.json", + "bytes": 1379, + "sha256": "6a86fde194faa55f2d1bdb982571e0e711e5401b53a960e6acb8cf3e17f506c8" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.arcadia", + "bytes": 6195, + "sha256": "e7c30c5a5c3ba7209c8e223f02da55821d7af10a2f09844a7065ae6cd8f22aa5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-plan.json", + "bytes": 19156, + "sha256": "d1e5c2ed08e0aa6274a0421a39876d1ba99f4e441c7a0a68660a83b9e017da14" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.final-request.json", + "bytes": 2418, + "sha256": "433f723252598994dac7184da61f95344b528156cc5a0fba1a7864b2ec9f002b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.json", + "bytes": 10441, + "sha256": "9e4e2ce1c7879935ad0860a3ae720506c929a8422b51491b719d88af3fd3ff2d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-branch-steps.manifest.json", + "bytes": 1042, + "sha256": "87e8899c7d4e54faedeef32afb7592fb65278d1bd7390850ab198dcf62068329" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.arcadia", + "bytes": 6280, + "sha256": "6c77ed42bbf9f4ebe08bfa233197a4020e5587ce33747f7914430aa0c662d9a3" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.after-order.json", + "bytes": 10009, + "sha256": "1dd7ca2bcfc84ac23369c506302b39569d2ebc41e5a4edc99378a1fe01923b7e" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous-request.json", + "bytes": 1390, + "sha256": "e0ea7aeb25687ae63c65128f1aab78273f14030d179d3fbea63fe91ab5430136" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.arcadia", + "bytes": 5529, + "sha256": "563c36162050c8564ffa25a85c726462ecdaebdb87659b3f3610506bfd5581e6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-plan.json", + "bytes": 18821, + "sha256": "f96c43fc58dbe48a044b628b31bb3f0b59171dad5b6982ec6c34a5597e474130" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.final-request.json", + "bytes": 2438, + "sha256": "d38fdb13612b07254edad80848f79c1e097d5f868c020feae9ba072aa697a50d" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.json", + "bytes": 9153, + "sha256": "2ed0daed118f2df13dcad738dab174ad34d44a15921cf8097415e707978b0968" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-fragment.manifest.json", + "bytes": 1058, + "sha256": "c79bd12a85d8d4f25cc3ee43581b3e5e74ae9ad7e4de0c72764975ba2b89c279" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.arcadia", + "bytes": 5026, + "sha256": "98020e048ac01f285c6ad8c10ce22bef05e193b5ba0f5558be1fb26a7bf82620" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.after-order.json", + "bytes": 7851, + "sha256": "ea3783992488bc6ee944eb91a26ccf3dbc05a3909528fc32ec8023a76765cee6" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous-request.json", + "bytes": 1379, + "sha256": "ea3cfd25f7a50481805956fb88ab851516dcd602dd6564502a0cc55f7de6a54f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.arcadia", + "bytes": 4295, + "sha256": "2b7c3694623bbea3e36dcc6f674d4adcd91e23c8e1005ded21e5a69648a048e5" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-plan.json", + "bytes": 17912, + "sha256": "95a23bd334cffcaef0c3b1012b7555efd2a077ef6f9140d58020910ef8a76723" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.final-request.json", + "bytes": 2081, + "sha256": "1e2433ed5821bf65443f56cb27381ee935db81b1955d3a539b7952898312a410" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.json", + "bytes": 7012, + "sha256": "0033f8780c2ba69779b811bca792340c25a092f887e5811c6839f0a691d744f2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-reverse.manifest.json", + "bytes": 1046, + "sha256": "e3b4a60a56abee779ca8356605c968aa2d99256a3bd3c5601b14b5c5502a1a05" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.arcadia", + "bytes": 5467, + "sha256": "e265cab35097acc46f5123107c13bc35b9f71931ff650557fc1c85779141b327" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.after-order.json", + "bytes": 8482, + "sha256": "9b777828d3681138de6bbd08de8bf922bed92c27be60b103d8ff73ce7ddd0a48" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous-request.json", + "bytes": 1379, + "sha256": "7d124256730bf2feee772c7d0118b87eb288e8aaa9179d69ceb9259dbceb2c71" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.arcadia", + "bytes": 4727, + "sha256": "87a5a3665dab2dd6e595867dcebb1586e93dd067c85d6e24b1a4d3ff0ad6d4ba" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-plan.json", + "bytes": 18803, + "sha256": "1888ca51e0923866a9afea99cad069fe5d3f19f0a1b24328e20ac1b9f52d8bad" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.final-request.json", + "bytes": 2294, + "sha256": "5070a5b85feb1bc7b1fc648cd5d35ef26663492c8666dcd471950c06ec3a6052" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.json", + "bytes": 7641, + "sha256": "725b35e36640c81c70c7efea5c3304bf61b49ef9664194ca0d491782cc62191a" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered-scenario.manifest.json", + "bytes": 1038, + "sha256": "1b43abf8fed3061c65a7b7cb103d31ea7ece333a2da83c645f8d228448c4dbb2" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.arcadia", + "bytes": 5019, + "sha256": "65a6217f474b5085f37b511151185c2c08ff7a1998e924f1fe01f29c410f6ced" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.after-order.json", + "bytes": 7835, + "sha256": "8a53bb9b43eab5b6dca5e08deef20c14c96e134b9ee816a99b7960bb5255e008" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous-request.json", + "bytes": 1379, + "sha256": "c704f99245f00d5c3be0562d91931b4e7f1fb3fb36f41991eb76656ffbd6129f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.ambiguous.txt", + "bytes": 94, + "sha256": "0f938b23fcfce776a61a57de5a2c82b4a0720b5e5af6780fdb96f5f92b3edd21" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.arcadia", + "bytes": 4279, + "sha256": "c59ec1233d5a9fbb8e386f6d9b13f398be21baf813ba215efb51bfc1bb98db36" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-plan.json", + "bytes": 17938, + "sha256": "30c5c3f614a74708763df612016483623792f4c65e2ed2fa662ac417cfb852eb" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.final-request.json", + "bytes": 2098, + "sha256": "3b6c35ef78133f0980cb6fb53fbc29c5d3c4deb5dc4be01c2c3384e221987b9b" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.json", + "bytes": 6996, + "sha256": "c159c60403abcf8fefab7f19cbad9989488e8ccc20b82c57597b22a0ae254802" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.manifest.json", + "bytes": 1038, + "sha256": "af8a314a9b1d85a8f98affa5a6649f43d252851158798e1ad687bb1b6966b14f" + }, + { + "path": "harness/fixtures/release1-native/semantic-ordered.steps.md", + "bytes": 4549, + "sha256": "6004894e9d9f478b7fe1c3c3e0706dcc546d5df8557cff91b4cf26f8a4badf24" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/15000000-0000-4000-8000-000000000010.json", + "bytes": 1933, + "sha256": "71cca2a59f36b2a07d11dedbe9101226aa1a4a00d8ac244b5565202e56709f51" + }, + { + "path": "harness/fixtures/release1-native/source5-recovery/generate.py", + "bytes": 1496, + "sha256": "e44986c1d563499f25917441220b23883fc9cb0f89faf409873191f0212fbd2f" + }, + { + "path": "harness/fixtures/release1-native/state-actions.arcadia", + "bytes": 6224, + "sha256": "9cde82608110e56aa9e14c9e33eb38976f53aed74ab013145d411d5743a0ec26" + }, + { + "path": "harness/fixtures/rest-coverage/README.md", + "bytes": 1870, + "sha256": "df4a391312e0c8b20ccdcc850199443b08547be1b10b1f2447a067bf4bf544e6" + }, + { + "path": "harness/fixtures/rest-coverage/coverage-probe.json", + "bytes": 7951, + "sha256": "2d1ef7bdb5d7bf17b9fda33b1d1790d1d88289b3fd1e725f89b83a69771f9a43" + }, + { + "path": "harness/fixtures/rest-coverage/run-coverage-probe.ps1", + "bytes": 9381, + "sha256": "f24f19fca418b76a7249894a08c116e16b465a02f8f899d12b808ccfdd90a3bd" + }, + { + "path": "harness/fixtures/run-timed-bundle-oracle.ps1", + "bytes": 7466, + "sha256": "fab696486a574f9867c6e69a8a8b960e7e9722206441b9cc5f36d41f285f1a25" + }, + { + "path": "harness/fixtures/scenario-authoring/README.md", + "bytes": 14700, + "sha256": "6b651b180b76d10b00bc49d77a8f5e0b3ba0317446978f41b541f5bb23fedad8" + }, + { + "path": "harness/fixtures/scenario-authoring/base/expected-baseline.json", + "bytes": 38589, + "sha256": "abd8246c939ebb8a2162ef82e23d0fb322ee1a8b4d0d7c28a34037e42e86e841" + }, + { + "path": "harness/fixtures/scenario-authoring/base/project.arcadia", + "bytes": 19470, + "sha256": "9b1afbe96b0bf8fa613451b00929492f05a59b9eb2ca74c2c374a8b7bb7cba9e" + }, + { + "path": "harness/fixtures/scenario-authoring/base/rationale.arcadia", + "bytes": 86, + "sha256": "82df210f22f6aa336a3e7e00240977d671c7c3923db7bc58fb29e6d98b67ef49" + }, + { + "path": "harness/fixtures/source7-native/README.md", + "bytes": 7235, + "sha256": "7abccbc3da0980d1d099761d1a66d12c403a0f543954134537ecd4930d182b4b" + }, + { + "path": "harness/fixtures/source7-native/base/expected-baseline.json", + "bytes": 26428, + "sha256": "e2882a58f841f460f45d9d67db1606440e0d7997b9b29a784569ae48e4b23bfb" + }, + { + "path": "harness/fixtures/source7-native/base/project.arcadia", + "bytes": 13616, + "sha256": "5474d8ca05fd1375220dc0ad40d913631fde51159e9632bb9f290d1ecdab8dd7" + }, + { + "path": "harness/fixtures/source7-native/base/rationale.arcadia", + "bytes": 59, + "sha256": "e6a600e13036d4ad594a65380ed1b3d82d1772d583041bb0a624c9588a73047a" + }, + { + "path": "harness/fixtures/source7-native/manifest.json", + "bytes": 410, + "sha256": "6c57164a796234d83818d462d0a25f10e77062d405769e602ae2a7bec251e3b6" + }, + { + "path": "harness/fixtures/staged-source-authoring/README.md", + "bytes": 6876, + "sha256": "502be5e3bf9112447dc07b1a51fe0fa301754b47128a9b81877c185c6e797fee" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/notes.arcadia", + "bytes": 63, + "sha256": "ad9de02963c20d1f43856455a797deb05ca674659e45f2c4b96b52783024f8bd" + }, + { + "path": "harness/fixtures/staged-source-authoring/base/project.arcadia", + "bytes": 593, + "sha256": "aa844950ec4fb86f262a257e1fc370a26557ea7978d8a4cab78265037660234c" + }, + { + "path": "rust-toolchain.toml", + "bytes": 66, + "sha256": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce" + } + ] +} diff --git a/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.log b/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.log new file mode 100644 index 00000000..ae36ba9e --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.log @@ -0,0 +1,2 @@ + Compiling oa-desktop v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\crates\oa-desktop) + Finished `dev` profile [unoptimized] target(s) in 2m 22s diff --git a/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.result.json b/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.result.json new file mode 100644 index 00000000..b43dbcb3 --- /dev/null +++ b/harness/experiments/diagram-removal-windows-20260912/gui-83f53c7.result.json @@ -0,0 +1,17 @@ +{ + "source": "83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b", + "start": "2026-09-12T22:32:42.945457+00:00", + "end": "2026-09-12T22:35:05.719491+00:00", + "exit": 0, + "command": [ + "cargo", + "build", + "--locked", + "-p", + "oa-desktop", + "--bin", + "arcadia-studio" + ], + "inputs": "gui-83f53c7.inputs.json", + "changed_inputs": [] +} diff --git a/harness/experiments/resize-port-policy-20260912/experiment.patch b/harness/experiments/resize-port-policy-20260912/experiment.patch new file mode 100644 index 00000000..62593bf0 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/experiment.patch @@ -0,0 +1,872 @@ +diff --git a/crates/oa-core/src/projection.rs b/crates/oa-core/src/projection.rs +index befb027..2ee820e 100644 +--- a/crates/oa-core/src/projection.rs ++++ b/crates/oa-core/src/projection.rs +@@ -4,6 +4,15 @@ use serde::{Deserialize, Serialize}; + use std::collections::{BTreeMap, BTreeSet}; + mod port_layout; + pub use port_layout::{port_anchor_offset, port_anchor_position}; ++ ++/// Isolated experiment only: no persisted setting or production default change. ++#[doc(hidden)] ++#[derive(Debug, Clone, Copy, PartialEq, Eq)] ++pub enum ExperimentalPortPolicy { ++ Current, ++ SameSidesAdaptSpacing, ++ CapacityAware, ++} + #[path = "projection/state.rs"] + mod state; + pub(crate) use state::node_size as state_node_size; +@@ -249,7 +258,17 @@ pub fn project_diagram_with_index( + d: &Diagram, + index: &crate::view_options::ViewIndex, + ) -> ProjectedView { +- project_diagram_impl(p, d, None, Some(index)) ++ project_diagram_impl(p, d, None, Some(index), ExperimentalPortPolicy::Current) ++} ++/// Compare port policies over the actual projector; not a document/API setting. ++#[doc(hidden)] ++pub fn project_diagram_with_experimental_port_policy( ++ p: &Project, ++ d: &Diagram, ++ policy: ExperimentalPortPolicy, ++) -> ProjectedView { ++ let index = crate::view_options::ViewIndex::new(p); ++ project_diagram_impl(p, d, None, Some(&index), policy) + } + /// Unfiltered eligibility from the same projection/anchor/fold decisions used + /// for drawing. Compute once for a view-options editor, then combine with the +@@ -269,7 +288,13 @@ pub fn edge_availability( + ) + }) + .collect(); +- project_diagram_impl(p, d, Some(&mut availability), None); ++ project_diagram_impl( ++ p, ++ d, ++ Some(&mut availability), ++ None, ++ ExperimentalPortPolicy::Current, ++ ); + availability + } + fn project_diagram_impl( +@@ -277,6 +302,7 @@ fn project_diagram_impl( + d: &Diagram, + mut availability: Option<&mut BTreeMap>, + index: Option<&crate::view_options::ViewIndex>, ++ port_policy: ExperimentalPortPolicy, + ) -> ProjectedView { + let parents = parents(p, d); + let mut nodes = Vec::new(); +@@ -516,7 +542,7 @@ fn project_diagram_impl( + let ports = if d.projection.state_machine().is_some() { + Vec::new() + } else { +- port_layout::layout(p, d, &mut nodes, &edges) ++ port_layout::layout(p, d, &mut nodes, &edges, port_policy) + }; + // Port geometry uses every eligible edge. Presentation filters must never + // move visible ports when another line is hidden or a category is selected. +diff --git a/crates/oa-core/src/projection/port_capacity_experiment.rs b/crates/oa-core/src/projection/port_capacity_experiment.rs +new file mode 100644 +index 0000000..25bdab0 +--- /dev/null ++++ b/crates/oa-core/src/projection/port_capacity_experiment.rs +@@ -0,0 +1,221 @@ ++//! Experimental four-side capacity assignment; no model fields or router feedback. ++use super::*; ++ ++#[derive(Clone)] ++pub(super) struct Demand { ++ pub preferred: PortAnchorSide, ++ pub semantic: Option, ++ pub clear: [bool; 4], ++} ++ ++fn index(side: PortAnchorSide) -> usize { ++ SIDES ++ .iter() ++ .position(|candidate| *candidate == side) ++ .unwrap() ++} ++ ++fn capacity(length: f32) -> usize { ++ if length < 2. * CORNER { ++ 0 ++ } else { ++ ((length - 2. * CORNER) / GAP).floor() as usize + 1 ++ } ++} ++ ++fn counts(assigned: &[Option]) -> [usize; 4] { ++ let mut result = [0; 4]; ++ for side in assigned.iter().flatten() { ++ result[index(*side)] += 1; ++ } ++ result ++} ++ ++fn ranked(demand: &Demand, counts: [usize; 4]) -> Vec { ++ let mut result = Vec::new(); ++ for side in [Some(demand.preferred), demand.semantic] ++ .into_iter() ++ .flatten() ++ { ++ if demand.clear[index(side)] && !result.contains(&side) { ++ result.push(side); ++ } ++ } ++ let mut remaining = SIDES; ++ remaining.sort_by_key(|side| (counts[index(*side)], index(*side))); ++ for side in remaining { ++ if demand.clear[index(side)] && !result.contains(&side) { ++ result.push(side); ++ } ++ } ++ result ++} ++ ++// An alternating reassignment visits each of four side bins at most once. ++// It is attempted only after every directly free clear side has been considered. ++fn try_assign( ++ port: usize, ++ demands: &[Demand], ++ capacities: [usize; 4], ++ assigned: &mut [Option], ++ visited: &mut [bool; 4], ++) -> bool { ++ let counts = counts(assigned); ++ let sides = ranked(&demands[port], counts); ++ for side in &sides { ++ let slot = index(*side); ++ if !visited[slot] && counts[slot] < capacities[slot] { ++ assigned[port] = Some(*side); ++ return true; ++ } ++ } ++ for side in sides { ++ let slot = index(side); ++ if visited[slot] || capacities[slot] == 0 { ++ continue; ++ } ++ visited[slot] = true; ++ let occupants: Vec<_> = assigned ++ .iter() ++ .enumerate() ++ .filter_map(|(port, current)| (*current == Some(side)).then_some(port)) ++ .collect(); ++ for other in occupants { ++ if try_assign(other, demands, capacities, assigned, visited) { ++ assigned[port] = Some(side); ++ return true; ++ } ++ } ++ } ++ false ++} ++ ++fn assign_with_capacities(demands: &[Demand], capacities: [usize; 4]) -> Vec { ++ let mut assigned = vec![None; demands.len()]; ++ // Demands are in the core's stable semantic port-ID order. Manual anchors ++ // are deliberately absent: editing one must not resize owners or flip peers. ++ for port in 0..demands.len() { ++ try_assign(port, demands, capacities, &mut assigned, &mut [false; 4]); ++ } ++ for (port, demand) in demands.iter().enumerate() { ++ if assigned[port].is_some() { ++ continue; ++ } ++ let counts = counts(&assigned); ++ // Prefer a crowded clear exit to an available blocked one. The existing ++ // position allocator adapts spacing; no port or owner geometry is invented. ++ let side = ranked(demand, counts) ++ .into_iter() ++ .next() ++ .unwrap_or_else(|| { ++ *SIDES ++ .iter() ++ .min_by_key(|side| counts[index(**side)]) ++ .unwrap() ++ }); ++ assigned[port] = Some(side); ++ } ++ assigned.into_iter().map(Option::unwrap).collect() ++} ++ ++pub(super) fn assign(node: &ProjectedNode, demands: &[Demand]) -> Vec { ++ assign_with_capacities( ++ demands, ++ [ ++ capacity(node.size.height), ++ capacity(node.size.height), ++ capacity(node.size.width), ++ capacity(node.size.width), ++ ], ++ ) ++} ++ ++#[cfg(test)] ++mod tests { ++ use super::*; ++ ++ fn demand(preferred: PortAnchorSide, sides: &[PortAnchorSide]) -> Demand { ++ Demand { ++ preferred, ++ semantic: None, ++ clear: SIDES.map(|side| sides.contains(&side)), ++ } ++ } ++ ++ #[test] ++ fn reassignment_recovers_scarce_clear_capacity() { ++ use PortAnchorSide::{Left, Right, Top}; ++ // Assignment-level falsifier only. Its clear masks are not yet produced ++ // by a model fixture with actual peer geometry. ++ let mut demands = vec![demand(Left, &[Left, Top]); 8]; ++ demands.extend(vec![demand(Left, &[Left, Right]); 9]); ++ demands.extend(vec![demand(Right, &[Right, Top]); 3]); ++ let capacities = [8, 8, 6, 0]; ++ let result = assign_with_capacities(&demands, capacities); ++ let totals = counts(&result.iter().copied().map(Some).collect::>()); ++ for (actual, capacity) in totals.into_iter().zip(capacities) { ++ assert!(actual <= capacity); ++ } ++ for (side, demand) in result.iter().zip(&demands) { ++ assert!(demand.clear[index(*side)]); ++ } ++ assert_eq!(assign_with_capacities(&demands, capacities), result); ++ } ++ ++ #[test] ++ fn clear_overflow_does_not_choose_a_blocked_empty_side() { ++ let demands = vec![demand(PortAnchorSide::Right, &[PortAnchorSide::Right]); 5]; ++ let result = assign_with_capacities(&demands, [10, 1, 10, 10]); ++ assert!(result.iter().all(|side| *side == PortAnchorSide::Right)); ++ } ++ ++ #[test] ++ fn small_clear_masks_match_an_exhaustive_assignment_oracle() { ++ let capacities = [1, 1, 1, 0]; ++ // All343 triples of nonempty masks on three sides. This validates the ++ // alternating assignment itself, not geometric reachability of masks. ++ for a in 1..8_u8 { ++ for b in 1..8_u8 { ++ for c in 1..8_u8 { ++ let demands: Vec<_> = [a, b, c] ++ .into_iter() ++ .map(|mask| { ++ let sides: Vec<_> = SIDES ++ .iter() ++ .copied() ++ .filter(|side| mask & (1 << index(*side)) != 0) ++ .collect(); ++ demand(sides[0], &sides) ++ }) ++ .collect(); ++ let feasible = (0..3).any(|x| { ++ (0..3).any(|y| { ++ (0..3).any(|z| { ++ x != y ++ && x != z ++ && y != z ++ && demands[0].clear[x] ++ && demands[1].clear[y] ++ && demands[2].clear[z] ++ }) ++ }) ++ }); ++ let result = assign_with_capacities(&demands, capacities); ++ for (side, demand) in result.iter().zip(&demands) { ++ assert!(demand.clear[index(*side)]); ++ } ++ if feasible { ++ let totals = counts(&result.into_iter().map(Some).collect::>()); ++ assert!( ++ totals ++ .into_iter() ++ .zip(capacities) ++ .all(|(n, capacity)| n <= capacity), ++ "missed feasible masks {a}/{b}/{c}" ++ ); ++ } ++ } ++ } ++ } ++ } ++} +diff --git a/crates/oa-core/src/projection/port_layout.rs b/crates/oa-core/src/projection/port_layout.rs +index c8ec61d..ba0d868 100644 +--- a/crates/oa-core/src/projection/port_layout.rs ++++ b/crates/oa-core/src/projection/port_layout.rs +@@ -1,6 +1,8 @@ + //! Presentation-only port anchors. Automatic choices depend on owner geometry, + //! never on routed elbows, so routing cannot feed back into layout. + use super::*; ++#[path = "port_capacity_experiment.rs"] ++mod capacity_experiment; + + const GAP: f32 = 28.; + const CORNER: f32 = 18.; +@@ -50,6 +52,7 @@ struct Choice { + automatic_side: PortAnchorSide, + manual: Option, + peer: Option, ++ capacity: Option, + } + + fn facing(node: &ProjectedNode, peer: Position) -> Option { +@@ -158,6 +161,7 @@ pub(super) fn layout( + d: &Diagram, + nodes: &mut [ProjectedNode], + edges: &[ProjectedEdge], ++ policy: ExperimentalPortPolicy, + ) -> Vec { + let by_id: BTreeMap<_, _> = nodes.iter().map(|n| (n.id, n)).collect(); + let mut peers: BTreeMap<(Id, Id), Peers> = BTreeMap::new(); +@@ -228,34 +232,62 @@ pub(super) fn layout( + automatic_side: side, + manual: anchor.map(|a| a.offset), + peer, ++ capacity: (policy == ExperimentalPortPolicy::CapacityAware).then(|| { ++ capacity_experiment::Demand { ++ preferred: side, ++ semantic: port_anchor_side(port), ++ clear: SIDES.map(clear), ++ } ++ }), + }); + } + } +- // One capacity pass followed by semantic enclosure. Side choices stay frozen +- // throughout this pass; expanded parents cannot cause layout oscillation. +- for node in nodes.iter_mut() { +- for side in SIDES { +- let count = choices +- .get(&node.id) +- .into_iter() +- .flatten() +- .filter(|c| c.automatic_side == side) +- .count(); +- if count == 0 { ++ if policy == ExperimentalPortPolicy::CapacityAware { ++ for node in nodes.iter() { ++ let Some(choices) = choices.get_mut(&node.id) else { + continue; ++ }; ++ let demands: Vec<_> = choices ++ .iter() ++ .map(|choice| choice.capacity.clone().unwrap()) ++ .collect(); ++ let sides = capacity_experiment::assign(node, &demands); ++ for (choice, side) in choices.iter_mut().zip(sides) { ++ choice.automatic_side = side; ++ if choice.manual.is_none() { ++ choice.side = side; ++ } + } +- let minimum = 2. * CORNER + GAP * count.saturating_sub(1) as f32; +- match side { +- PortAnchorSide::Left | PortAnchorSide::Right => { +- node.size.height = node.size.height.max(minimum) ++ } ++ } ++ // One capacity pass followed by semantic enclosure. Side choices stay frozen ++ // throughout this pass; expanded parents cannot cause layout oscillation. ++ // Experimental alternatives finalize nodes before port-side assignment. ++ if policy == ExperimentalPortPolicy::Current { ++ for node in nodes.iter_mut() { ++ for side in SIDES { ++ let count = choices ++ .get(&node.id) ++ .into_iter() ++ .flatten() ++ .filter(|c| c.automatic_side == side) ++ .count(); ++ if count == 0 { ++ continue; + } +- PortAnchorSide::Top | PortAnchorSide::Bottom => { +- node.size.width = node.size.width.max(minimum) ++ let minimum = 2. * CORNER + GAP * count.saturating_sub(1) as f32; ++ match side { ++ PortAnchorSide::Left | PortAnchorSide::Right => { ++ node.size.height = node.size.height.max(minimum) ++ } ++ PortAnchorSide::Top | PortAnchorSide::Bottom => { ++ node.size.width = node.size.width.max(minimum) ++ } + } + } + } ++ super::enclose(p, nodes); + } +- super::enclose(p, nodes); + let mut result = Vec::new(); + for node in nodes.iter() { + let Some(choices) = choices.get(&node.id) else { +diff --git a/crates/oa-core/tests/experimental_port_policy.rs b/crates/oa-core/tests/experimental_port_policy.rs +new file mode 100644 +index 0000000..06e3dc3 +--- /dev/null ++++ b/crates/oa-core/tests/experimental_port_policy.rs +@@ -0,0 +1,458 @@ ++//! Isolated policy comparisons. Current remains the ordinary projector default. ++use oa_core::{projection::*, routing::*, *}; ++ ++const ALTERNATIVES: [ExperimentalPortPolicy; 2] = [ ++ ExperimentalPortPolicy::SameSidesAdaptSpacing, ++ ExperimentalPortPolicy::CapacityAware, ++]; ++const POLICIES: [ExperimentalPortPolicy; 3] = [ ++ ExperimentalPortPolicy::Current, ++ ExperimentalPortPolicy::SameSidesAdaptSpacing, ++ ExperimentalPortPolicy::CapacityAware, ++]; ++ ++fn pos(x: f32, y: f32) -> Position { ++ Position { x, y } ++} ++fn size(width: f32, height: f32) -> Size { ++ Size { width, height } ++} ++fn standard(p: &mut Project, owner: Id, name: &str) -> Id { ++ let id = Id::new_v4(); ++ let port = make_port( ++ p, ++ id, ++ owner, ++ name, ++ PortContract::Component { ++ kind: ComponentPortKind::Standard, ++ orientation: ComponentPortOrientation::Unset, ++ }, ++ ) ++ .unwrap(); ++ p.elements.insert(id, port); ++ id ++} ++fn place(p: &mut Project, d: Id, e: Id, position: Position, dimensions: Size) -> Id { ++ let n = p.place(d, e, position); ++ p.diagrams ++ .get_mut(&d) ++ .unwrap() ++ .nodes ++ .get_mut(&n) ++ .unwrap() ++ .size = dimensions; ++ n ++} ++struct Fixture { ++ p: Project, ++ d: Id, ++ owner: Id, ++ ports: Vec, ++} ++fn eight_ports() -> Fixture { ++ let mut p = Project::empty(); ++ let a = p ++ .add_element(Kind::System, Layer::Sa, "Owner", None) ++ .unwrap(); ++ let b = p ++ .add_element(Kind::SystemActor, Layer::Sa, "Above", None) ++ .unwrap(); ++ let c = p ++ .add_element(Kind::SystemActor, Layer::Sa, "Below", None) ++ .unwrap(); ++ let pb = standard(&mut p, b, "Above interface"); ++ let pc = standard(&mut p, c, "Below interface"); ++ let mut ports = Vec::new(); ++ for i in 0..8 { ++ let pa = standard(&mut p, a, &format!("Interface {i}")); ++ p.relate( ++ RelationKind::BoundaryExchange, ++ &format!("Above {i}"), ++ pa, ++ pb, ++ ); ++ p.relate( ++ RelationKind::BoundaryExchange, ++ &format!("Below {i}"), ++ pa, ++ pc, ++ ); ++ ports.push(pa); ++ } ++ let d = p.ensure_diagram(Layer::Sa); ++ let owner = place(&mut p, d, a, pos(0., 0.), size(224., 160.)); ++ place(&mut p, d, b, pos(38., -996.), size(184., 132.)); ++ place(&mut p, d, c, pos(38., 1004.), size(184., 132.)); ++ validate_candidate(&p).unwrap(); ++ Fixture { p, d, owner, ports } ++} ++fn hundred_ports() -> Fixture { ++ let mut p = Project::empty(); ++ let a = p ++ .add_element(Kind::System, Layer::Sa, "Owner", None) ++ .unwrap(); ++ let b = p ++ .add_element(Kind::SystemActor, Layer::Sa, "Peer", None) ++ .unwrap(); ++ let pb = standard(&mut p, b, "Peer interface"); ++ let mut ports = Vec::new(); ++ for i in 0..100 { ++ let pa = standard(&mut p, a, &format!("Interface {i}")); ++ p.relate( ++ RelationKind::BoundaryExchange, ++ &format!("Exchange {i}"), ++ pa, ++ pb, ++ ); ++ ports.push(pa); ++ } ++ let d = p.ensure_diagram(Layer::Sa); ++ // Semantic port minima grow this to728x804 before any side choice. ++ let owner = place(&mut p, d, a, pos(0., 0.), size(224., 160.)); ++ place(&mut p, d, b, pos(1908., 336.), size(184., 132.)); ++ validate_candidate(&p).unwrap(); ++ Fixture { p, d, owner, ports } ++} ++fn project(f: &Fixture, policy: ExperimentalPortPolicy) -> ProjectedView { ++ project_diagram_with_experimental_port_policy(&f.p, &f.p.diagrams[&f.d], policy) ++} ++fn node(view: &ProjectedView, id: Id) -> &ProjectedNode { ++ view.nodes.iter().find(|node| node.id == id).unwrap() ++} ++fn port(view: &ProjectedView, id: Id) -> &ProjectedPort { ++ view.ports.iter().find(|port| port.element == id).unwrap() ++} ++fn minimum_gap(view: &ProjectedView, owner: Id) -> f32 { ++ let mut result = f32::INFINITY; ++ for side in [ ++ PortAnchorSide::Left, ++ PortAnchorSide::Right, ++ PortAnchorSide::Top, ++ PortAnchorSide::Bottom, ++ ] { ++ let horizontal = matches!(side, PortAnchorSide::Top | PortAnchorSide::Bottom); ++ let mut positions: Vec<_> = view ++ .ports ++ .iter() ++ .filter(|p| p.owner == owner && p.side == side) ++ .map(|p| { ++ if horizontal { ++ p.position.x ++ } else { ++ p.position.y ++ } ++ }) ++ .collect(); ++ positions.sort_by(f32::total_cmp); ++ for pair in positions.windows(2) { ++ result = result.min(pair[1] - pair[0]); ++ } ++ } ++ result ++} ++ ++#[test] ++fn experimental_current_is_the_unchanged_default_projector() { ++ for p in [Project::demo(), eight_ports().p, hundred_ports().p] { ++ for diagram in p.diagrams.values() { ++ let expected = project_diagram(&p, diagram); ++ let actual = project_diagram_with_experimental_port_policy( ++ &p, ++ diagram, ++ ExperimentalPortPolicy::Current, ++ ); ++ assert_eq!(actual, expected); ++ } ++ } ++} ++ ++#[test] ++fn alternatives_realize_the_three_previously_forbidden_rectangles() { ++ for policy in POLICIES { ++ for (position, dimensions) in [ ++ (pos(0., -10.), size(224., 242.)), ++ (pos(10., 0.), size(214., 232.)), ++ (pos(0., 0.), size(224., 222.)), ++ ] { ++ let mut f = eight_ports(); ++ let original = f.p.diagrams[&f.d].nodes[&f.owner].clone(); ++ let mut edited = original.clone(); ++ edited.position = position; ++ edited.size = dimensions; ++ let before = f.p.clone(); ++ f.p = prepare_command( ++ &f.p, ++ &Command::EditNode { ++ diagram: f.d, ++ original: f.owner, ++ node: edited, ++ }, ++ ) ++ .unwrap() ++ .project; ++ let view = project(&f, policy); ++ let actual = node(&view, f.owner); ++ if policy == ExperimentalPortPolicy::Current { ++ assert_ne!((actual.position, actual.size), (position, dimensions)); ++ } else { ++ assert_eq!((actual.position, actual.size), (position, dimensions)); ++ } ++ let mut restored = f.p.clone(); ++ restored ++ .diagrams ++ .get_mut(&f.d) ++ .unwrap() ++ .nodes ++ .insert(f.owner, original); ++ assert_eq!(restored, before, "Only the selected record may change"); ++ } ++ } ++} ++ ++#[test] ++fn all_eight_outward_handles_have_exact_fixed_edges_without_authored_inactive_changes() { ++ for policy in ALTERNATIVES { ++ for (left, top, right, bottom) in [ ++ (false, true, false, false), ++ (false, true, true, false), ++ (false, false, true, false), ++ (false, false, true, true), ++ (false, false, false, true), ++ (true, false, false, true), ++ (true, false, false, false), ++ (true, true, false, false), ++ ] { ++ let mut f = eight_ports(); ++ let baseline = project(&f, policy); ++ let old = node(&baseline, f.owner); ++ assert_eq!(old.size, size(224., 160.)); ++ let mut edited = f.p.diagrams[&f.d].nodes[&f.owner].clone(); ++ let x = old.position.x - if left { 20. } else { 0. }; ++ let y = old.position.y - if top { 20. } else { 0. }; ++ let r = old.position.x + old.size.width + if right { 20. } else { 0. }; ++ let b = old.position.y + old.size.height + if bottom { 20. } else { 0. }; ++ edited.position = pos(x, y); ++ edited.size = size(r - x, b - y); ++ f.p = prepare_command( ++ &f.p, ++ &Command::EditNode { ++ diagram: f.d, ++ original: f.owner, ++ node: edited.clone(), ++ }, ++ ) ++ .unwrap() ++ .project; ++ let view = project(&f, policy); ++ let actual = node(&view, f.owner); ++ assert_eq!( ++ (actual.position, actual.size), ++ (edited.position, edited.size) ++ ); ++ if !left && !right { ++ assert_eq!(edited.position.x, old.position.x); ++ assert_eq!(edited.size.width, old.size.width); ++ } ++ if !top && !bottom { ++ assert_eq!(edited.position.y, old.position.y); ++ assert_eq!(edited.size.height, old.size.height); ++ } ++ } ++ } ++} ++ ++#[test] ++fn capacity_uses_available_sides_where_spacing_only_overlaps_fourteen_unit_glyphs() { ++ let f = hundred_ports(); ++ let before = f.p.clone(); ++ let current = project(&f, ExperimentalPortPolicy::Current); ++ let spacing = project(&f, ExperimentalPortPolicy::SameSidesAdaptSpacing); ++ let capacity = project(&f, ExperimentalPortPolicy::CapacityAware); ++ assert_eq!(node(¤t, f.owner).size, size(728., 2808.)); ++ assert_eq!(node(&spacing, f.owner).size, size(728., 804.)); ++ assert_eq!(capacity.nodes, spacing.nodes); ++ assert!(minimum_gap(¤t, f.owner) >= 27.99); ++ assert!(minimum_gap(&spacing, f.owner) < 14.); ++ assert!(minimum_gap(&capacity, f.owner) >= 27.99); ++ assert_eq!( ++ capacity.ports.iter().filter(|p| p.owner == f.owner).count(), ++ 100 ++ ); ++ assert_eq!( ++ f.p, before, ++ "Projection must not author anchors or new dimensions" ++ ); ++ println!( ++ "100 ports: current={:?} spacing={:?} capacity={:?}; gaps={}/{}/{}", ++ node(¤t, f.owner).size, ++ node(&spacing, f.owner).size, ++ node(&capacity, f.owner).size, ++ minimum_gap(¤t, f.owner), ++ minimum_gap(&spacing, f.owner), ++ minimum_gap(&capacity, f.owner) ++ ); ++} ++ ++#[test] ++fn manual_anchor_edits_preserve_owner_geometry_and_unrelated_automatic_sides() { ++ let mut f = hundred_ports(); ++ let before = project(&f, ExperimentalPortPolicy::CapacityAware); ++ let id = before ++ .ports ++ .iter() ++ .find(|p| p.owner == f.owner && p.side == PortAnchorSide::Right) ++ .unwrap() ++ .element; ++ f.p = prepare_command( ++ &f.p, ++ &Command::SetPortAnchor { ++ diagram: f.d, ++ node: f.owner, ++ anchor: PortAnchor { ++ port: id, ++ side: PortAnchorSide::Top, ++ offset: 0.5, ++ }, ++ }, ++ ) ++ .unwrap() ++ .project; ++ let after = project(&f, ExperimentalPortPolicy::CapacityAware); ++ assert_eq!(after.nodes, before.nodes); ++ assert_eq!( ++ port(&after, id).position, ++ port_anchor_position(node(&after, f.owner), PortAnchorSide::Top, 0.5) ++ ); ++ for other in after.ports.iter().filter(|p| p.element != id) { ++ assert_eq!(other.side, port(&before, other.element).side); ++ } ++ assert_eq!(language::parse(&language::format(&f.p)).unwrap(), f.p); ++} ++ ++#[test] ++fn exact_crowded_manual_fractions_survive_every_alternative_and_reopen() { ++ for policy in ALTERNATIVES { ++ let mut f = eight_ports(); ++ let fractions = [0., 0.25, 0.25, 0.5, 0.75, 1., 0.01, 0.99]; ++ f.p.diagrams ++ .get_mut(&f.d) ++ .unwrap() ++ .nodes ++ .get_mut(&f.owner) ++ .unwrap() ++ .port_anchors = f ++ .ports ++ .iter() ++ .zip(fractions) ++ .map(|(port, offset)| PortAnchor { ++ port: *port, ++ side: PortAnchorSide::Right, ++ offset, ++ }) ++ .collect(); ++ validate_candidate(&f.p).unwrap(); ++ let original_anchors = f.p.diagrams[&f.d].nodes[&f.owner].port_anchors.clone(); ++ let view = project(&f, policy); ++ assert_eq!(node(&view, f.owner).size, size(224., 160.)); ++ for anchor in &original_anchors { ++ let actual = port(&view, anchor.port); ++ assert_eq!(actual.side, anchor.side); ++ assert_eq!( ++ actual.position, ++ port_anchor_position(node(&view, f.owner), anchor.side, anchor.offset) ++ ); ++ } ++ let reopened = language::parse(&language::format(&f.p)).unwrap(); ++ assert_eq!(reopened, f.p); ++ assert_eq!( ++ project_diagram_with_experimental_port_policy( ++ &reopened, ++ &reopened.diagrams[&f.d], ++ policy ++ ), ++ view ++ ); ++ assert_eq!( ++ f.p.diagrams[&f.d].nodes[&f.owner].port_anchors, ++ original_anchors ++ ); ++ } ++} ++ ++#[test] ++fn narrow_peer_gap_keeps_clear_sides_and_actual_routed_port_endpoints() { ++ let mut p = Project::empty(); ++ let a = p ++ .add_element(Kind::Function, Layer::Sa, "Send", None) ++ .unwrap(); ++ let b = p ++ .add_element(Kind::Function, Layer::Sa, "Receive", None) ++ .unwrap(); ++ let edge = p.relate(RelationKind::FunctionalExchange, "Information", a, b); ++ let RelationBody::FunctionalExchange { ++ source_port, ++ target_port, ++ .. ++ } = p.relations[&edge].body ++ else { ++ unreachable!() ++ }; ++ let d = p.ensure_diagram(Layer::Sa); ++ p.place(d, a, pos(100., 100.)); ++ p.place(d, b, pos(100., 260.)); ++ validate_candidate(&p).unwrap(); ++ for policy in POLICIES { ++ let view = project_diagram_with_experimental_port_policy(&p, &p.diagrams[&d], policy); ++ assert_eq!(port(&view, source_port).side, PortAnchorSide::Right); ++ assert_eq!(port(&view, target_port).side, PortAnchorSide::Left); ++ let routed = route_diagram(&p, &p.diagrams[&d], &view); ++ let route = &routed.edges[&edge]; ++ assert!( ++ route.warnings.is_empty(), ++ "{policy:?}: {:?}", ++ route.warnings ++ ); ++ assert_eq!( ++ route.points.first(), ++ Some(&port(&view, source_port).position) ++ ); ++ assert_eq!( ++ route.points.last(), ++ Some(&port(&view, target_port).position) ++ ); ++ assert!( ++ route ++ .points ++ .windows(2) ++ .all(|pair| pair[0].x == pair[1].x || pair[0].y == pair[1].y) ++ ); ++ } ++} ++ ++#[test] ++fn candidate_geometry_is_deterministic_and_independent_of_peer_motion_and_names() { ++ let mut f = eight_ports(); ++ let before = project(&f, ExperimentalPortPolicy::CapacityAware); ++ assert_eq!(project(&f, ExperimentalPortPolicy::CapacityAware), before); ++ for element in f.p.elements.values_mut() { ++ element.alias = format!("renamed_{}", element.id.simple()); ++ } ++ assert_eq!(project(&f, ExperimentalPortPolicy::CapacityAware), before); ++ for node in ++ f.p.diagrams ++ .get_mut(&f.d) ++ .unwrap() ++ .nodes ++ .values_mut() ++ .filter(|n| n.id != f.owner) ++ { ++ node.position.x += 500.; ++ } ++ let moved = project(&f, ExperimentalPortPolicy::CapacityAware); ++ assert_eq!( ++ node(&moved, f.owner), ++ node(&before, f.owner), ++ "Peer motion must not change owner geometry" ++ ); ++} diff --git a/harness/experiments/resize-port-policy-20260912/falsifier-handoff.md b/harness/experiments/resize-port-policy-20260912/falsifier-handoff.md new file mode 100644 index 00000000..bac306b8 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifier-handoff.md @@ -0,0 +1,50 @@ +# Resize port-policy falsifiers: source-only handoff + +Root-owned issue16 experiment. This is a separate source-only branch, preserving the passed three-mode experiment unchanged. No policy code, root tracked inputs, compiler/Cargo, native application or Gitea was changed by this follow-up. + +- Worktree: `C:/Users/User/Documents/Git/ARCADIA-Studio/.local/resize-port-falsifiers-20260912` +- Branch: `codex/resize-port-falsifiers-956atf-20260912` +- Base: `7e25b3d3907693cbbf03bb51b5e08b01d743a934` +- Commit: **`a95db10ce73d639f59eb1ec1153de26f4967881c`** (`Add isolated resize stability and port exit falsifiers`) +- Only changed tracked file: `crates/oa-core/tests/experimental_port_policy_falsifiers.rs`, SHA-256 `0a659fad3e5afcf563bacb2f10467bb2428c385ce991c1e7eb8c04207efb3255`. +- `rustfmt --edition 2024` and `git diff --cached --check` passed. Committed worktree clean. **No compilation or execution has occurred.** No compiler lease is held. + +## Question and predicted outcomes + +The independent review `resize-port-policy-independent-review-20260912.md` predicts two regressions in the unchanged candidate. Both tests encode prospective acceptance criteria and are deliberately expected to fail; they have no `should_panic`/ignore wrapper. An observed failure is evidence against the candidate, not a production regression or a reason to relax the evaluator. + +1. `a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports`: one owner with 20 deterministic Standard/Unset ports, each linked by a real BoundaryExchange to one distant right peer. All three policies project and route the full fixture at heights 259.9, 260, 260.1. Prediction: CapacityAware adjacent side changes `[12,0]`, controls `[0,0]`. The prior assignment remains within new capacities and has nominal glyph separation. Zero changes preserve it; one move suffices to occupy the new preferred-side slot. The fixture-specific criterion allows at most one adjacent side change and preserves exact alternative rectangles. Spacing-only crowding is reported, not concealed by its stability. +2. `capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner`: eight ports, owner `(0,0)/224×160`, far peer `(1908,336)/184×132`, unrelated actor `(0,-150)/224×132`. Prediction: CapacityAware spills a port to Top `(112,0)` with mandatory stub `(112,-18)`, crossing the unrelated inflated obstacle's y interval `[-162,-6]`; its exchange reports `NoClearPath`. Controls keep Right exits and clear routes; Current grows to height232. The criterion forbids new blocked mandatory stubs or warnings while maintaining the fixed alternative rectangle. + +Every Project has deterministic identities, passes actual candidate validation and canonical source roundtrip, and remains unmutated by projection/routing. Every route is checked against actual port endpoints and orthogonality. Diagnostics record each port side/position, owner bounds, side counts, minimum same-side gap, every route point/warning, total route length and bends. All policies are measured before the final prospective criterion assertion, unless a more basic fixture invariant fails. + +The mandatory-stub oracle uses a separately implemented segment/slab intersection against all inflated visible nodes, excluding each port's own owner. It does not call the router's private rectangle checker or infer collision from warning text. Fixtures assert all nodes are flat, so ancestor/header exceptions do not apply. Blocked-port diagnostics link each collision to its actual exchanges and indicate whether every affected edge reported `NoClearPath`. + +## Next serialized execution + +After root releases its compiler gate, use exact committed inputs, root absolute `.local/toolchain/env.ps1`, `--locked`, jobs1, and a target inside this new worktree. Do not overwrite either root native-oracle artifacts or the passed baseline target. Proposed command: + +```text +cargo test --locked --jobs 1 -p oa-core --test experimental_port_policy_falsifiers -- --nocapture --test-threads=1 +``` + +Set `OA_PORT_POLICY_RECEIPTS` to a new absolute directory beneath the run's uniquely stamped receipt directory. Each measured frame writes canonical `.arcadia`, serialized actual `.projection.json`, and detailed `.routing.txt` artifacts there using create-new semantics. Reusing that directory intentionally errors instead of overwriting prior evidence. These are exact returned experimental frames suitable for a later compact render; ordinary desktop/export entrypoints remain Current. Nine threshold frames and three obstacle frames mean 36 small artifact files. Tests also print enough geometry for diagnosis when the environment variable is omitted. + +Expected first run: **two selected tests, two acceptance failures**, with controls passing and concrete candidate counterexamples preserved. If compilation, validation, controls, endpoint or geometry premises differ, retain that result and diagnose before changing tests or policy. No counterexample has been established by execution yet. No broad allocator redesign or policy promotion is included. + +## Prepared standalone path, not executed + +`C:/Users/User/Documents/Git/ARCADIA-Studio/.local/standalone-port-falsifiers.py` can avoid rebuilding the unchanged core. Helper SHA-256: `2000af782ec8cb489cfa9385b9f7da01a5df4dcaaaf6aef5847eff5661ee99c2`. Python AST syntax parsing passed; the helper itself has not executed. The committed test blob hash was independently checked against the exact a95 commit. No compiler lease is held. + +After root grants the next serialized lease, initialize root absolute `.local/toolchain/env.ps1`, then use the bundled Python with a unique label: + +```text +python .local/standalone-port-falsifiers.py build resize-falsifiers-a95db10-01 +python .local/standalone-port-falsifiers.py run resize-falsifiers-a95db10-01 +``` + +The build step verifies both worktree commits and tracked cleanliness, all baseline recorded source/configuration/lock inputs in both worktrees, the sole a95 diff, exact test bytes, passing baseline receipts/log hashes, rustc/linker identity and root toolchain environment. It derives the comparison fingerprint from the recorded passing executable, resolves oa_core and serde_json by dependency fingerprint value with exactly one match, verifies the core rlib against the recorded baseline digest, and confirms serde_json agrees with the core's own fingerprint. It records and checks every available external library artifact in the frozen baseline dependency directory before/after standalone `rustc --test`; no Cargo, cache copying/hardlinks, or root target output is used. The baseline comparison binary and available protected root oldcore rlib are checked unchanged too. + +The run step rechecks stamped inputs and binary, requires exactly the two intended tests from `--list`, and executes each with `--exact --nocapture --test-threads=1`. Each case gets its own create-new geometry directory. Exit101 plus the corresponding prospective-criterion message is labeled an expected acceptance failure; it is not relabeled a pass. A fixture/compile/runtime problem lacks that marker and remains distinguishable. Both cases run even if the first test fails, unless input integrity changes. Overall exit101 preserves failure semantics. Each process has command, start/end/duration, exit and hashed log receipts; model/projection/route artifacts are hashed in case receipts. New outputs live only under `.local/native-qa/UNIQUE-LABEL` and existing output files are never overwritten. + +If the standalone compilation exposes Cargo-only assumptions or dependency identity mismatches, preserve the receipt and use the fresh isolated Cargo target fallback above. No performance result is claimed before execution. diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers.patch b/harness/experiments/resize-port-policy-20260912/falsifiers.patch new file mode 100644 index 00000000..f7e563ed --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers.patch @@ -0,0 +1,410 @@ +diff --git a/crates/oa-core/tests/experimental_port_policy_falsifiers.rs b/crates/oa-core/tests/experimental_port_policy_falsifiers.rs +new file mode 100644 +index 0000000..ef6d197 +--- /dev/null ++++ b/crates/oa-core/tests/experimental_port_policy_falsifiers.rs +@@ -0,0 +1,404 @@ ++//! Prospective acceptance falsifiers, intentionally expected to fail at 7e25b3d. ++//! Do not change the policy or relax these criteria before preserving first-run ++//! receipts. Source-derived predictions are diagnostic text, not test outcomes. ++use oa_core::{projection::*, routing::*, *}; ++use std::{fs::OpenOptions, io::Write, path::PathBuf}; ++ ++const POLICIES: [ExperimentalPortPolicy; 3] = [ ++ ExperimentalPortPolicy::Current, ++ ExperimentalPortPolicy::SameSidesAdaptSpacing, ++ ExperimentalPortPolicy::CapacityAware, ++]; ++const SIDES: [PortAnchorSide; 4] = [ ++ PortAnchorSide::Left, ++ PortAnchorSide::Right, ++ PortAnchorSide::Top, ++ PortAnchorSide::Bottom, ++]; ++fn id(n: u128) -> Id { ++ Id::from_u128(0x956a2026_0912_4000_8000_000000000000 + n) ++} ++fn pos(x: f32, y: f32) -> Position { ++ Position { x, y } ++} ++fn size(width: f32, height: f32) -> Size { ++ Size { width, height } ++} ++fn element(p: &mut Project, n: u128, kind: Kind, name: &str) -> Id { ++ let mut e = p.make_element(kind, Layer::Sa, name, None).unwrap(); ++ e.id = id(n); ++ p.elements.insert(e.id, e); ++ id(n) ++} ++fn standard(p: &mut Project, n: u128, owner: Id, name: &str) -> Id { ++ let port = make_port( ++ p, ++ id(n), ++ owner, ++ name, ++ PortContract::Component { ++ kind: ComponentPortKind::Standard, ++ orientation: ComponentPortOrientation::Unset, ++ }, ++ ) ++ .unwrap(); ++ p.elements.insert(port.id, port); ++ id(n) ++} ++fn place(p: &mut Project, d: Id, n: u128, e: Id, at: Position, dimensions: Size) -> Id { ++ let generated = p.place(d, e, at); ++ let nodes = &mut p.diagrams.get_mut(&d).unwrap().nodes; ++ let mut node = nodes.remove(&generated).unwrap(); ++ node.id = id(n); ++ node.size = dimensions; ++ nodes.insert(node.id, node); ++ id(n) ++} ++struct Fixture { ++ p: Project, ++ d: Id, ++ owner: Id, ++ ports: Vec, ++} ++fn right_peer(count: usize, height: f32, obstacle: bool) -> Fixture { ++ let mut p = Project::empty(); ++ p.id = id(1); ++ let a = element(&mut p, 10, Kind::System, "Owner"); ++ let b = element(&mut p, 11, Kind::SystemActor, "Far right peer"); ++ let pb = standard(&mut p, 20, b, "Peer interface"); ++ let mut ports = Vec::new(); ++ for i in 0..count { ++ let pa = standard(&mut p, 100 + i as u128, a, &format!("Interface {i}")); ++ let generated = p.relate( ++ RelationKind::BoundaryExchange, ++ &format!("Exchange {i}"), ++ pa, ++ pb, ++ ); ++ let mut relation = p.relations.remove(&generated).unwrap(); ++ relation.id = id(1000 + i as u128); ++ p.relations.insert(relation.id, relation); ++ ports.push(pa); ++ } ++ let generated = p.ensure_diagram(Layer::Sa); ++ let mut diagram = p.diagrams.remove(&generated).unwrap(); ++ diagram.id = id(30); ++ let d = diagram.id; ++ p.diagrams.insert(d, diagram); ++ let owner = place(&mut p, d, 40, a, pos(0., 0.), size(224., height)); ++ place(&mut p, d, 41, b, pos(1908., 336.), size(184., 132.)); ++ if obstacle { ++ let c = element(&mut p, 12, Kind::SystemActor, "Unrelated top obstacle"); ++ place(&mut p, d, 42, c, pos(0., -150.), size(224., 132.)); ++ } ++ validate_candidate(&p).unwrap(); ++ assert_eq!(language::parse(&language::format(&p)).unwrap(), p); ++ Fixture { p, d, owner, ports } ++} ++fn project(f: &Fixture, policy: ExperimentalPortPolicy) -> ProjectedView { ++ let view = project_diagram_with_experimental_port_policy(&f.p, &f.p.diagrams[&f.d], policy); ++ assert!(view.nodes.iter().all(|node| node.visual_parent.is_none())); ++ assert_eq!(view.edges.len(), f.ports.len()); ++ view ++} ++fn owner<'a>(f: &Fixture, view: &'a ProjectedView) -> &'a ProjectedNode { ++ view.nodes.iter().find(|n| n.id == f.owner).unwrap() ++} ++fn port(view: &ProjectedView, id: Id) -> &ProjectedPort { ++ view.ports.iter().find(|p| p.element == id).unwrap() ++} ++fn side_counts(f: &Fixture, view: &ProjectedView) -> [usize; 4] { ++ SIDES.map(|side| { ++ view.ports ++ .iter() ++ .filter(|p| p.owner == f.owner && p.side == side) ++ .count() ++ }) ++} ++fn gap(f: &Fixture, view: &ProjectedView) -> f32 { ++ let mut minimum = f32::INFINITY; ++ for side in SIDES { ++ let mut offsets: Vec<_> = view ++ .ports ++ .iter() ++ .filter(|p| p.owner == f.owner && p.side == side) ++ .map(|p| match side { ++ PortAnchorSide::Left | PortAnchorSide::Right => p.position.y, ++ _ => p.position.x, ++ }) ++ .collect(); ++ offsets.sort_by(f32::total_cmp); ++ for pair in offsets.windows(2) { ++ minimum = minimum.min(pair[1] - pair[0]); ++ } ++ } ++ minimum ++} ++// Independent segment/slab test, not the router's private Rect::crosses helper. ++// All fixture nodes are unrelated flat obstacles, so ancestor/header exceptions ++// do not apply. A node's own outward stub is allowed through its own clearance. ++fn stub_hits(port: &ProjectedPort, obstacle: &ProjectedNode) -> bool { ++ if port.owner == obstacle.id { ++ return false; ++ } ++ let normal = port.side.normal(); ++ let mut lo = 0.0_f32; ++ let mut hi = 1.0_f32; ++ for (start, delta, min, max) in [ ++ ( ++ port.position.x, ++ normal.x * PORT_STUB, ++ obstacle.position.x - CLEARANCE, ++ obstacle.position.x + obstacle.size.width + CLEARANCE, ++ ), ++ ( ++ port.position.y, ++ normal.y * PORT_STUB, ++ obstacle.position.y - CLEARANCE, ++ obstacle.position.y + obstacle.size.height + CLEARANCE, ++ ), ++ ] { ++ if delta == 0. { ++ if start <= min || start >= max { ++ return false; ++ } ++ } else { ++ let a = (min - start) / delta; ++ let b = (max - start) / delta; ++ lo = lo.max(a.min(b)); ++ hi = hi.min(a.max(b)); ++ } ++ } ++ lo < hi ++} ++fn blocked_stubs(view: &ProjectedView) -> Vec<(Id, Id)> { ++ view.ports ++ .iter() ++ .flat_map(|p| { ++ view.nodes ++ .iter() ++ .filter(move |n| stub_hits(p, n)) ++ .map(move |n| (p.element, n.id)) ++ }) ++ .collect() ++} ++fn measure(f: &Fixture, view: &ProjectedView, label: &str) -> RoutedView { ++ let routed = route_diagram(&f.p, &f.p.diagrams[&f.d], view); ++ let mut length = 0.0_f32; ++ let mut bends = 0; ++ for edge in &view.edges { ++ let route = &routed.edges[&edge.id]; ++ assert_eq!( ++ route.points.first(), ++ Some(&port(view, edge.source_port.unwrap()).position) ++ ); ++ assert_eq!( ++ route.points.last(), ++ Some(&port(view, edge.target_port.unwrap()).position) ++ ); ++ for pair in route.points.windows(2) { ++ assert!(pair[0].x == pair[1].x || pair[0].y == pair[1].y); ++ length += (pair[0].x - pair[1].x).abs() + (pair[0].y - pair[1].y).abs(); ++ } ++ for triple in route.points.windows(3) { ++ let a = pos(triple[1].x - triple[0].x, triple[1].y - triple[0].y); ++ let b = pos(triple[2].x - triple[1].x, triple[2].y - triple[1].y); ++ if a.x * b.y != a.y * b.x { ++ bends += 1; ++ } ++ } ++ println!( ++ "{label} edge={} points={:?} warnings={:?}", ++ edge.id, route.points, route.warnings ++ ); ++ } ++ let warnings: usize = routed.edges.values().map(|e| e.warnings.len()).sum(); ++ println!( ++ "{label} bounds={:?}/{:?} LRTB={:?} gap={} warnings={warnings} length={length} bends={bends} blocked_stubs={:?}", ++ owner(f, view).position, ++ owner(f, view).size, ++ side_counts(f, view), ++ gap(f, view), ++ blocked_stubs(view) ++ ); ++ for id in &f.ports { ++ println!( ++ "{label} port={id} side={:?} position={:?}", ++ port(view, *id).side, ++ port(view, *id).position ++ ); ++ } ++ // A caller may retain exact model, projection and route geometry. Never ++ // overwrite a previous run. Ordinary export still chooses Current. ++ if let Some(directory) = std::env::var_os("OA_PORT_POLICY_RECEIPTS") { ++ let directory = PathBuf::from(directory); ++ std::fs::create_dir_all(&directory).unwrap(); ++ for (suffix, content) in [ ++ ("arcadia", language::format(&f.p)), ++ ( ++ "projection.json", ++ serde_json::to_string_pretty(view).unwrap(), ++ ), ++ ("routing.txt", format!("{routed:#?}")), ++ ] { ++ let mut file = OpenOptions::new() ++ .write(true) ++ .create_new(true) ++ .open(directory.join(format!("{label}.{suffix}"))) ++ .unwrap(); ++ file.write_all(content.as_bytes()).unwrap(); ++ } ++ } ++ routed ++} ++ ++#[test] ++fn a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports() { ++ let mut f = right_peer(20, 259.9, false); ++ let mut violations = Vec::new(); ++ for policy in POLICIES { ++ let mut views = Vec::new(); ++ for height in [259.9, 260., 260.1] { ++ f.p.diagrams ++ .get_mut(&f.d) ++ .unwrap() ++ .nodes ++ .get_mut(&f.owner) ++ .unwrap() ++ .size ++ .height = height; ++ let before = f.p.clone(); ++ let view = project(&f, policy); ++ measure(&f, &view, &format!("threshold-{policy:?}-{height}")); ++ assert_eq!(f.p, before, "Projection/routing must not author geometry"); ++ if policy != ExperimentalPortPolicy::Current { ++ assert_eq!(owner(&f, &view).size, size(224., height)); ++ } ++ views.push(view); ++ } ++ let flips: Vec<_> = views ++ .windows(2) ++ .map(|pair| { ++ f.ports ++ .iter() ++ .filter(|id| port(&pair[0], **id).side != port(&pair[1], **id).side) ++ .count() ++ }) ++ .collect(); ++ println!( ++ "threshold {policy:?}: adjacent side changes={flips:?}; source prediction capacity=[12,0], controls=[0,0]" ++ ); ++ if policy == ExperimentalPortPolicy::CapacityAware { ++ // The prior assignment is still feasible at the larger rectangle. ++ // Nominal independent capacities: floor((edge - 36) / 28) + 1. ++ let new = owner(&f, &views[1]); ++ let capacities = [ ++ new.size.height, ++ new.size.height, ++ new.size.width, ++ new.size.width, ++ ] ++ .map(|length| ((length - 36.) / 28.).floor() as usize + 1); ++ assert!( ++ side_counts(&f, &views[0]) ++ .into_iter() ++ .zip(capacities) ++ .all(|(n, c)| n <= c) ++ ); ++ assert!(gap(&f, &views[0]) >= 27.99); ++ // A single relocation can use the new preferred-side slot. This ++ // fixture-specific bound does not prohibit justified side changes. ++ if flips.iter().any(|n| *n > 1) { ++ violations.push(format!( ++ "CapacityAware changes {flips:?} sides while zero/one move suffices" ++ )); ++ } ++ } else if flips != [0, 0] { ++ violations.push(format!( ++ "{policy:?} control unexpectedly changes {flips:?} sides" ++ )); ++ } ++ } ++ assert!( ++ violations.is_empty(), ++ "Prospective resize-stability criterion failed: {violations:?}" ++ ); ++} ++ ++#[test] ++fn capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner() { ++ let f = right_peer(8, 160., true); ++ let original = f.p.clone(); ++ let mut violations = Vec::new(); ++ for policy in POLICIES { ++ let view = project(&f, policy); ++ let routed = measure(&f, &view, &format!("obstacle-{policy:?}")); ++ let actual = owner(&f, &view); ++ assert_eq!(actual.position, pos(0., 0.)); ++ assert_eq!( ++ actual.size, ++ size( ++ 224., ++ if policy == ExperimentalPortPolicy::Current { ++ 232. ++ } else { ++ 160. ++ } ++ ) ++ ); ++ let obstacle = view.nodes.iter().find(|n| n.id == id(42)).unwrap(); ++ assert_eq!( ++ (obstacle.position, obstacle.size), ++ (pos(0., -150.), size(224., 132.)) ++ ); ++ let blocked = blocked_stubs(&view); ++ let no_clear: Vec<_> = routed ++ .edges ++ .values() ++ .filter(|e| e.warnings.contains(&RouteWarning::NoClearPath)) ++ .map(|e| e.id) ++ .collect(); ++ println!( ++ "obstacle {policy:?}: independently blocked={blocked:?}, NoClearPath={no_clear:?}; source prediction capacity Top=(112,0), stub=(112,-18), obstacle inflation y=[-162,-6]" ++ ); ++ if policy == ExperimentalPortPolicy::CapacityAware { ++ // Record whether each physically blocked source also reports the ++ // predicted route warning; do not use warning text as geometry proof. ++ for (port_id, obstacle_id) in &blocked { ++ let edges: Vec<_> = view ++ .edges ++ .iter() ++ .filter(|e| e.source_port == Some(*port_id) || e.target_port == Some(*port_id)) ++ .map(|e| e.id) ++ .collect(); ++ println!( ++ "blocked port={port_id} obstacle={obstacle_id} affected_edges={edges:?} all_NoClearPath={}", ++ edges.iter().all(|e| no_clear.contains(e)) ++ ); ++ } ++ if !blocked.is_empty() || routed.edges.values().any(|e| !e.warnings.is_empty()) { ++ violations.push(format!( ++ "CapacityAware introduces blocked stubs {blocked:?} or routed warnings" ++ )); ++ } ++ } else { ++ if !f ++ .ports ++ .iter() ++ .all(|p| port(&view, *p).side == PortAnchorSide::Right) ++ { ++ violations.push(format!("{policy:?} control no longer keeps Right exits")); ++ } ++ if !blocked.is_empty() || routed.edges.values().any(|e| !e.warnings.is_empty()) { ++ violations.push(format!( ++ "{policy:?} control has blocked stubs {blocked:?} or routed warnings" ++ )); ++ } ++ } ++ assert_eq!(f.p, original); ++ } ++ assert!( ++ violations.is_empty(), ++ "Prospective exit-clearance criterion failed: {violations:?}" ++ ); ++} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/build.json b/harness/experiments/resize-port-policy-20260912/falsifiers/build.json new file mode 100644 index 00000000..723c45dc --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/build.json @@ -0,0 +1,36 @@ +{ + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\rustc.exe", + "--edition=2024", + "--test", + "-D", + "warnings", + "-C", + "linker=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\llvm-mingw-20260908-ucrt-x86_64\\bin\\clang.exe", + "-L", + "dependency=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps", + "--extern", + "serde_json=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_json-b48005beba7e4267.rlib", + "--extern", + "oa_core=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\experimental_port_policy_falsifiers.rs", + "-o", + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe" + ], + "start": "2026-09-12T22:22:48.325935+00:00", + "end": "2026-09-12T22:22:50.660955+00:00", + "seconds": 2.328, + "exit": 0, + "log": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\build.log", + "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "core_source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "test_source": "a95db10ce73d639f59eb1ec1153de26f4967881c", + "changed_inputs": [], + "binary": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe": { + "sha256": "d09e71b920a347fc776ca255c2ad177e5de543723b3f6e4ccd39f24567a76f5c", + "bytes": 23458816 + } + }, + "build_accepted": true +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/build.log b/harness/experiments/resize-port-policy-20260912/falsifiers/build.log new file mode 100644 index 00000000..e69de29b diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.arcadia new file mode 100644 index 00000000..2424af51 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 259.8999938964844; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.projection.json new file mode 100644 index 00000000..48238376 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 259.9 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 18.0 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 92.63333 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 167.26666 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 241.89998 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 49.985714 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 81.97143 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 113.95714 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 145.94286 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 177.92857 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 209.91428 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 241.90001 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 18.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 80.66667, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 143.33334, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 206.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 18.0, + "y": 259.9 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 80.66667, + "y": 259.9 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 143.33334, + "y": 259.9 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 206.0, + "y": 259.9 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.routing.txt new file mode 100644 index 00000000..dc7d2208 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-259.9.routing.txt @@ -0,0 +1,1094 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: 24.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 49.985714, + }, + Position { + x: 242.0, + y: 49.985714, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 889.99286, + y: 402.0, + }, + center: Position { + x: 889.99286, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 846.99286, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 81.97143, + }, + Position { + x: 242.0, + y: 81.97143, + }, + Position { + x: 1890.0, + y: 81.97143, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.45, + anchor: Position { + x: 1125.8127, + y: 81.97143, + }, + center: Position { + x: 1125.8127, + y: 63.971428, + }, + bounds: RoutingBounds { + position: Position { + x: 1082.8127, + y: 51.971428, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 113.95714, + }, + Position { + x: 242.0, + y: 113.95714, + }, + Position { + x: 1890.0, + y: 113.95714, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.4, + anchor: Position { + x: 1012.81714, + y: 113.95714, + }, + center: Position { + x: 1012.81714, + y: 39.957138, + }, + bounds: RoutingBounds { + position: Position { + x: 969.81714, + y: 27.957138, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 145.94286, + }, + Position { + x: 242.0, + y: 145.94286, + }, + Position { + x: 1890.0, + y: 145.94286, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1194.0286, + y: 145.94286, + }, + center: Position { + x: 1194.0286, + y: 163.94286, + }, + bounds: RoutingBounds { + position: Position { + x: 1151.0286, + y: 151.94286, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 177.92857, + }, + Position { + x: 242.0, + y: 177.92857, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.5, + anchor: Position { + x: 1031.9644, + y: 324.0, + }, + center: Position { + x: 1031.9644, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 988.96436, + y: 294.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 209.91428, + }, + Position { + x: 242.0, + y: 209.91428, + }, + Position { + x: 1890.0, + y: 209.91428, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 1068.2385, + y: 209.91428, + }, + center: Position { + x: 1068.2385, + y: 191.91428, + }, + bounds: RoutingBounds { + position: Position { + x: 1025.2385, + y: 179.91428, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 241.90001, + }, + Position { + x: 242.0, + y: 241.90001, + }, + Position { + x: 1890.0, + y: 241.90001, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1146.05, + y: 241.90001, + }, + center: Position { + x: 1146.05, + y: 259.90002, + }, + bounds: RoutingBounds { + position: Position { + x: 1103.05, + y: 247.90002, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 0.0, + y: 18.0, + }, + Position { + x: -18.0, + y: 18.0, + }, + Position { + x: -18.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.5, + anchor: Position { + x: 744.0, + y: 402.0, + }, + center: Position { + x: 744.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 701.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 18.0, + y: 0.0, + }, + Position { + x: 18.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.5, + anchor: Position { + x: 1170.0, + y: -18.0, + }, + center: Position { + x: 1170.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1127.0, + y: -48.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 18.0, + y: 259.9, + }, + Position { + x: 18.0, + y: 277.9, + }, + Position { + x: 18.0, + y: 339.95, + }, + Position { + x: 1890.0, + y: 339.95, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.55, + anchor: Position { + x: 1055.605, + y: 339.95, + }, + center: Position { + x: 1055.605, + y: 357.95, + }, + bounds: RoutingBounds { + position: Position { + x: 1009.105, + y: 345.95, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 0.0, + y: 92.63333, + }, + Position { + x: -18.0, + y: 92.63333, + }, + Position { + x: -18.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.4, + anchor: Position { + x: 555.98, + y: 402.0, + }, + center: Position { + x: 555.98, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 509.47998, + y: 372.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 80.66667, + y: 0.0, + }, + Position { + x: 80.66667, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.55, + anchor: Position { + x: 1315.2001, + y: -18.0, + }, + center: Position { + x: 1315.2001, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1268.7001, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 80.66667, + y: 259.9, + }, + Position { + x: 80.66667, + y: 277.9, + }, + Position { + x: 1890.0, + y: 277.9, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.5, + anchor: Position { + x: 1047.3833, + y: 277.9, + }, + center: Position { + x: 1047.3833, + y: 259.9, + }, + bounds: RoutingBounds { + position: Position { + x: 1000.8833, + y: 247.9, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 0.0, + y: 167.26666, + }, + Position { + x: -18.0, + y: 167.26666, + }, + Position { + x: -18.0, + y: 480.0, + }, + Position { + x: 1890.0, + y: 480.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.5, + anchor: Position { + x: 818.63336, + y: 480.0, + }, + center: Position { + x: 818.63336, + y: 462.0, + }, + bounds: RoutingBounds { + position: Position { + x: 772.13336, + y: 450.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 143.33334, + y: 0.0, + }, + Position { + x: 143.33334, + y: -18.0, + }, + Position { + x: 143.33334, + y: -12.0, + }, + Position { + x: 1890.0, + y: -12.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.009533899, + anchor: Position { + x: 143.33334, + y: -15.0, + }, + center: Position { + x: 143.33334, + y: -33.0, + }, + bounds: RoutingBounds { + position: Position { + x: 96.83334, + y: -45.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 143.33334, + y: 259.9, + }, + Position { + x: 143.33334, + y: 277.9, + }, + Position { + x: 143.33334, + y: 339.95, + }, + Position { + x: 1890.0, + y: 339.95, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.6, + anchor: Position { + x: 1207.3434, + y: 339.95, + }, + center: Position { + x: 1207.3434, + y: 357.95, + }, + bounds: RoutingBounds { + position: Position { + x: 1160.8434, + y: 345.95, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 0.0, + y: 241.89998, + }, + Position { + x: -18.0, + y: 241.89998, + }, + Position { + x: -18.0, + y: 321.94998, + }, + Position { + x: 1890.0, + y: 321.94998, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 936.0001, + y: 321.94998, + }, + center: Position { + x: 936.0001, + y: 303.94998, + }, + bounds: RoutingBounds { + position: Position { + x: 889.5001, + y: 291.94998, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 206.0, + y: 0.0, + }, + Position { + x: 206.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.40102232, + anchor: Position { + x: 1051.0, + y: -18.0, + }, + center: Position { + x: 1051.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1004.5, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 206.0, + y: 259.9, + }, + Position { + x: 206.0, + y: 277.9, + }, + Position { + x: 206.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.55, + anchor: Position { + x: 1156.155, + y: 324.0, + }, + center: Position { + x: 1156.155, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1109.655, + y: 294.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: -18.0, + y: -48.0, + }, + size: Size { + width: 2110.0, + height: 528.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.arcadia new file mode 100644 index 00000000..84116de0 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 260.1000061035156; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.projection.json new file mode 100644 index 00000000..9e78a467 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 260.1 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 18.0 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 92.700005 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 167.40001 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 242.10002 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 46.0125 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 74.025 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 102.037506 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 130.05 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 158.0625 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 186.07501 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 214.08751 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.1 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 18.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 80.66667, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 143.33334, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 206.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 18.0, + "y": 260.1 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 112.0, + "y": 260.1 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 206.0, + "y": 260.1 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.routing.txt new file mode 100644 index 00000000..d3cc7f44 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.1.routing.txt @@ -0,0 +1,1098 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: 24.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 46.0125, + }, + Position { + x: 242.0, + y: 46.0125, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 888.0063, + y: 402.0, + }, + center: Position { + x: 888.0063, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 845.0063, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 74.025, + }, + Position { + x: 242.0, + y: 74.025, + }, + Position { + x: 1890.0, + y: 74.025, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.45, + anchor: Position { + x: 1129.3887, + y: 74.025, + }, + center: Position { + x: 1129.3887, + y: 56.025, + }, + bounds: RoutingBounds { + position: Position { + x: 1086.3887, + y: 44.025, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 102.037506, + }, + Position { + x: 242.0, + y: 102.037506, + }, + Position { + x: 1890.0, + y: 102.037506, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.4, + anchor: Position { + x: 1017.585, + y: 102.037506, + }, + center: Position { + x: 1017.585, + y: 56.037506, + }, + bounds: RoutingBounds { + position: Position { + x: 974.585, + y: 44.037506, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 130.05, + }, + Position { + x: 242.0, + y: 130.05, + }, + Position { + x: 1890.0, + y: 130.05, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1201.975, + y: 130.05, + }, + center: Position { + x: 1201.975, + y: 148.05, + }, + bounds: RoutingBounds { + position: Position { + x: 1158.975, + y: 136.05, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 158.0625, + }, + Position { + x: 242.0, + y: 158.0625, + }, + Position { + x: 1066.0, + y: 158.0625, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.6, + anchor: Position { + x: 1136.8251, + y: 402.0, + }, + center: Position { + x: 1136.8251, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1093.8251, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 186.07501, + }, + Position { + x: 242.0, + y: 186.07501, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 941.04126, + y: 324.0, + }, + center: Position { + x: 941.04126, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 898.04126, + y: 294.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 214.08751, + }, + Position { + x: 242.0, + y: 214.08751, + }, + Position { + x: 1890.0, + y: 214.08751, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1159.9562, + y: 214.08751, + }, + center: Position { + x: 1159.9562, + y: 196.08751, + }, + bounds: RoutingBounds { + position: Position { + x: 1116.9562, + y: 184.08751, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 242.1, + }, + Position { + x: 242.0, + y: 242.1, + }, + Position { + x: 1890.0, + y: 242.1, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.5, + anchor: Position { + x: 1145.95, + y: 242.1, + }, + center: Position { + x: 1145.95, + y: 260.1, + }, + bounds: RoutingBounds { + position: Position { + x: 1102.95, + y: 248.1, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 0.0, + y: 18.0, + }, + Position { + x: -18.0, + y: 18.0, + }, + Position { + x: -18.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.5, + anchor: Position { + x: 744.0, + y: 402.0, + }, + center: Position { + x: 744.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 701.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 18.0, + y: 0.0, + }, + Position { + x: 18.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.5, + anchor: Position { + x: 1170.0, + y: -18.0, + }, + center: Position { + x: 1170.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1123.5, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 18.0, + y: 260.1, + }, + Position { + x: 18.0, + y: 278.1, + }, + Position { + x: 18.0, + y: 340.05, + }, + Position { + x: 1890.0, + y: 340.05, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.65, + anchor: Position { + x: 1258.7849, + y: 340.05, + }, + center: Position { + x: 1258.7849, + y: 358.05, + }, + bounds: RoutingBounds { + position: Position { + x: 1212.2849, + y: 346.05, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 0.0, + y: 92.700005, + }, + Position { + x: -18.0, + y: 92.700005, + }, + Position { + x: -18.0, + y: 480.0, + }, + Position { + x: 1890.0, + y: 480.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.5, + anchor: Position { + x: 781.35004, + y: 480.0, + }, + center: Position { + x: 781.35004, + y: 462.0, + }, + bounds: RoutingBounds { + position: Position { + x: 734.85004, + y: 450.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 80.66667, + y: 0.0, + }, + Position { + x: 80.66667, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.55, + anchor: Position { + x: 1315.2001, + y: -18.0, + }, + center: Position { + x: 1315.2001, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1268.7001, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 112.0, + y: 260.1, + }, + Position { + x: 112.0, + y: 278.1, + }, + Position { + x: 1890.0, + y: 278.1, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.4680324, + anchor: Position { + x: 1001.0, + y: 278.1, + }, + center: Position { + x: 1001.0, + y: 260.1, + }, + bounds: RoutingBounds { + position: Position { + x: 954.5, + y: 248.1, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 0.0, + y: 167.40001, + }, + Position { + x: -18.0, + y: 167.40001, + }, + Position { + x: -18.0, + y: 284.7, + }, + Position { + x: 1890.0, + y: 284.7, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.45, + anchor: Position { + x: 827.07, + y: 284.7, + }, + center: Position { + x: 827.07, + y: 302.7, + }, + bounds: RoutingBounds { + position: Position { + x: 780.57, + y: 290.7, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 143.33334, + y: 0.0, + }, + Position { + x: 143.33334, + y: -18.0, + }, + Position { + x: 143.33334, + y: -12.0, + }, + Position { + x: 1890.0, + y: -12.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.009533899, + anchor: Position { + x: 143.33334, + y: -15.0, + }, + center: Position { + x: 143.33334, + y: -33.0, + }, + bounds: RoutingBounds { + position: Position { + x: 96.83334, + y: -45.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 206.0, + y: 260.1, + }, + Position { + x: 206.0, + y: 278.1, + }, + Position { + x: 206.0, + y: 340.05, + }, + Position { + x: 1890.0, + y: 340.05, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.7, + anchor: Position { + x: 1416.7799, + y: 340.05, + }, + center: Position { + x: 1416.7799, + y: 358.05, + }, + bounds: RoutingBounds { + position: Position { + x: 1370.2799, + y: 346.05, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 0.0, + y: 242.10002, + }, + Position { + x: -18.0, + y: 242.10002, + }, + Position { + x: -18.0, + y: 322.05002, + }, + Position { + x: 1890.0, + y: 322.05002, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.4, + anchor: Position { + x: 725.61, + y: 322.05002, + }, + center: Position { + x: 725.61, + y: 304.05002, + }, + bounds: RoutingBounds { + position: Position { + x: 679.11, + y: 292.05002, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 206.0, + y: 0.0, + }, + Position { + x: 206.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.40102232, + anchor: Position { + x: 1051.0, + y: -18.0, + }, + center: Position { + x: 1051.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1004.5, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: -18.0, + y: -48.0, + }, + size: Size { + width: 2110.0, + height: 528.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.arcadia new file mode 100644 index 00000000..73e373d5 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 260.0; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.projection.json new file mode 100644 index 00000000..84936cc3 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 260.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 18.0 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 92.666664 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 167.33333 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 242.0 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 46.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 74.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 102.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 130.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 158.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 186.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 214.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 18.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 80.66667, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 143.33334, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 206.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 18.0, + "y": 260.0 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 112.0, + "y": 260.0 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 206.0, + "y": 260.0 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.routing.txt new file mode 100644 index 00000000..233dee9c --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-CapacityAware-260.routing.txt @@ -0,0 +1,1098 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: 24.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 888.0, + y: 402.0, + }, + center: Position { + x: 888.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 845.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 74.0, + }, + Position { + x: 242.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.45, + anchor: Position { + x: 1129.3999, + y: 74.0, + }, + center: Position { + x: 1129.3999, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1086.3999, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 102.0, + }, + Position { + x: 242.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.4, + anchor: Position { + x: 1017.60004, + y: 102.0, + }, + center: Position { + x: 1017.60004, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 974.60004, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 130.0, + }, + Position { + x: 242.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1202.0, + y: 130.0, + }, + center: Position { + x: 1202.0, + y: 148.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1159.0, + y: 136.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 158.0, + }, + Position { + x: 242.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.6, + anchor: Position { + x: 1136.8, + y: 402.0, + }, + center: Position { + x: 1136.8, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1093.8, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 941.0, + y: 324.0, + }, + center: Position { + x: 941.0, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 898.0, + y: 294.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 214.0, + }, + Position { + x: 242.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1160.0, + y: 214.0, + }, + center: Position { + x: 1160.0, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1117.0, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 242.0, + }, + Position { + x: 242.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.5, + anchor: Position { + x: 1146.0, + y: 242.0, + }, + center: Position { + x: 1146.0, + y: 260.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1103.0, + y: 248.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 0.0, + y: 18.0, + }, + Position { + x: -18.0, + y: 18.0, + }, + Position { + x: -18.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.5, + anchor: Position { + x: 744.0, + y: 402.0, + }, + center: Position { + x: 744.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 701.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 18.0, + y: 0.0, + }, + Position { + x: 18.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.5, + anchor: Position { + x: 1170.0, + y: -18.0, + }, + center: Position { + x: 1170.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1123.5, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 18.0, + y: 260.0, + }, + Position { + x: 18.0, + y: 278.0, + }, + Position { + x: 18.0, + y: 340.0, + }, + Position { + x: 1890.0, + y: 340.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.65, + anchor: Position { + x: 1258.7999, + y: 340.0, + }, + center: Position { + x: 1258.7999, + y: 358.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1212.2999, + y: 346.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 0.0, + y: 92.666664, + }, + Position { + x: -18.0, + y: 92.666664, + }, + Position { + x: -18.0, + y: 480.0, + }, + Position { + x: 1890.0, + y: 480.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.5, + anchor: Position { + x: 781.33325, + y: 480.0, + }, + center: Position { + x: 781.33325, + y: 462.0, + }, + bounds: RoutingBounds { + position: Position { + x: 734.83325, + y: 450.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 80.66667, + y: 0.0, + }, + Position { + x: 80.66667, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.55, + anchor: Position { + x: 1315.2001, + y: -18.0, + }, + center: Position { + x: 1315.2001, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1268.7001, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 112.0, + y: 260.0, + }, + Position { + x: 112.0, + y: 278.0, + }, + Position { + x: 1890.0, + y: 278.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.46800825, + anchor: Position { + x: 1001.0, + y: 278.0, + }, + center: Position { + x: 1001.0, + y: 260.0, + }, + bounds: RoutingBounds { + position: Position { + x: 954.5, + y: 248.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 0.0, + y: 167.33333, + }, + Position { + x: -18.0, + y: 167.33333, + }, + Position { + x: -18.0, + y: 284.66666, + }, + Position { + x: 1890.0, + y: 284.66666, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.45, + anchor: Position { + x: 827.0667, + y: 284.66666, + }, + center: Position { + x: 827.0667, + y: 302.66666, + }, + bounds: RoutingBounds { + position: Position { + x: 780.5667, + y: 290.66666, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 143.33334, + y: 0.0, + }, + Position { + x: 143.33334, + y: -18.0, + }, + Position { + x: 143.33334, + y: -12.0, + }, + Position { + x: 1890.0, + y: -12.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.009533899, + anchor: Position { + x: 143.33334, + y: -15.0, + }, + center: Position { + x: 143.33334, + y: -33.0, + }, + bounds: RoutingBounds { + position: Position { + x: 96.83334, + y: -45.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 206.0, + y: 260.0, + }, + Position { + x: 206.0, + y: 278.0, + }, + Position { + x: 206.0, + y: 340.0, + }, + Position { + x: 1890.0, + y: 340.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.7, + anchor: Position { + x: 1416.7999, + y: 340.0, + }, + center: Position { + x: 1416.7999, + y: 358.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1370.2999, + y: 346.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 0.0, + y: 242.0, + }, + Position { + x: -18.0, + y: 242.0, + }, + Position { + x: -18.0, + y: 322.0, + }, + Position { + x: 1890.0, + y: 322.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.4, + anchor: Position { + x: 725.60004, + y: 322.0, + }, + center: Position { + x: 725.60004, + y: 304.0, + }, + bounds: RoutingBounds { + position: Position { + x: 679.10004, + y: 292.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 206.0, + y: 0.0, + }, + Position { + x: 206.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: -18.0, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.40102232, + anchor: Position { + x: 1051.0, + y: -18.0, + }, + center: Position { + x: 1051.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1004.5, + y: -48.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: -18.0, + y: -48.0, + }, + size: Size { + width: 2110.0, + height: 528.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.arcadia new file mode 100644 index 00000000..2424af51 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 259.8999938964844; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.projection.json new file mode 100644 index 00000000..f49a1d00 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 568.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 46.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 74.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 102.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 130.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 158.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 186.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 214.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 270.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 298.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 326.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 354.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 382.00003 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 410.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 438.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 466.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 494.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 522.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 550.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.routing.txt new file mode 100644 index 00000000..c55fdd78 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-259.9.routing.txt @@ -0,0 +1,1062 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.004411765, + anchor: Position { + x: 233.0, + y: 46.0, + }, + center: Position { + x: 233.0, + y: -28.0, + }, + bounds: RoutingBounds { + position: Position { + x: 190.0, + y: -40.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 74.0, + }, + Position { + x: 242.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.5, + anchor: Position { + x: 1230.0, + y: 74.0, + }, + center: Position { + x: 1230.0, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1187.0, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 102.0, + }, + Position { + x: 242.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.45, + anchor: Position { + x: 1116.8, + y: 102.0, + }, + center: Position { + x: 1116.8, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1073.8, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 130.0, + }, + Position { + x: 242.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1202.0, + y: 130.0, + }, + center: Position { + x: 1202.0, + y: 148.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1159.0, + y: 136.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 158.0, + }, + Position { + x: 242.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.4, + anchor: Position { + x: 995.2, + y: 158.0, + }, + center: Position { + x: 995.2, + y: 176.0, + }, + bounds: RoutingBounds { + position: Position { + x: 952.2, + y: 164.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.004736842, + anchor: Position { + x: 233.0, + y: 186.0, + }, + center: Position { + x: 294.0, + y: 186.0, + }, + bounds: RoutingBounds { + position: Position { + x: 251.0, + y: 174.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 214.0, + }, + Position { + x: 242.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1160.0, + y: 214.0, + }, + center: Position { + x: 1160.0, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1117.0, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 242.0, + }, + Position { + x: 242.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.6, + anchor: Position { + x: 1330.4, + y: 242.0, + }, + center: Position { + x: 1330.4, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1287.4, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 224.0, + y: 270.0, + }, + Position { + x: 242.0, + y: 270.0, + }, + Position { + x: 1890.0, + y: 270.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.35, + anchor: Position { + x: 859.6, + y: 270.0, + }, + center: Position { + x: 859.6, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 816.6, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 224.0, + y: 298.0, + }, + Position { + x: 242.0, + y: 298.0, + }, + Position { + x: 1890.0, + y: 298.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.5, + anchor: Position { + x: 1118.0, + y: 298.0, + }, + center: Position { + x: 1118.0, + y: 280.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1071.5, + y: 268.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 224.0, + y: 326.0, + }, + Position { + x: 242.0, + y: 326.0, + }, + Position { + x: 1890.0, + y: 326.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.45, + anchor: Position { + x: 1016.0, + y: 326.0, + }, + center: Position { + x: 1016.0, + y: 308.0, + }, + bounds: RoutingBounds { + position: Position { + x: 969.5, + y: 296.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 224.0, + y: 354.0, + }, + Position { + x: 242.0, + y: 354.0, + }, + Position { + x: 1890.0, + y: 354.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.45, + anchor: Position { + x: 1003.39996, + y: 354.0, + }, + center: Position { + x: 1003.39996, + y: 372.0, + }, + bounds: RoutingBounds { + position: Position { + x: 956.89996, + y: 360.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 224.0, + y: 382.00003, + }, + Position { + x: 242.0, + y: 382.00003, + }, + Position { + x: 1890.0, + y: 382.00003, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.55, + anchor: Position { + x: 1161.2, + y: 382.00003, + }, + center: Position { + x: 1161.2, + y: 364.00003, + }, + bounds: RoutingBounds { + position: Position { + x: 1114.7, + y: 352.00003, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 224.0, + y: 410.0, + }, + Position { + x: 242.0, + y: 410.0, + }, + Position { + x: 1890.0, + y: 410.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.5, + anchor: Position { + x: 1070.0, + y: 410.0, + }, + center: Position { + x: 1070.0, + y: 428.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1023.5, + y: 416.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 224.0, + y: 438.0, + }, + Position { + x: 242.0, + y: 438.0, + }, + Position { + x: 1890.0, + y: 438.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.55, + anchor: Position { + x: 1170.0, + y: 438.0, + }, + center: Position { + x: 1170.0, + y: 420.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1123.5, + y: 408.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 224.0, + y: 466.0, + }, + Position { + x: 242.0, + y: 466.0, + }, + Position { + x: 1890.0, + y: 466.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.55, + anchor: Position { + x: 1185.4, + y: 466.0, + }, + center: Position { + x: 1185.4, + y: 448.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1138.9, + y: 436.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 224.0, + y: 494.0, + }, + Position { + x: 242.0, + y: 494.0, + }, + Position { + x: 1890.0, + y: 494.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 1112.0, + y: 494.0, + }, + center: Position { + x: 1112.0, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1065.5, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 224.0, + y: 522.0, + }, + Position { + x: 242.0, + y: 522.0, + }, + Position { + x: 1890.0, + y: 522.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.55, + anchor: Position { + x: 1216.2001, + y: 522.0, + }, + center: Position { + x: 1216.2001, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1169.7001, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 224.0, + y: 550.0, + }, + Position { + x: 242.0, + y: 550.0, + }, + Position { + x: 1890.0, + y: 550.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.4, + anchor: Position { + x: 956.8, + y: 550.0, + }, + center: Position { + x: 956.8, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 910.3, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -40.0, + }, + size: Size { + width: 2092.0, + height: 620.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.arcadia new file mode 100644 index 00000000..84116de0 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 260.1000061035156; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.projection.json new file mode 100644 index 00000000..f49a1d00 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 568.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 46.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 74.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 102.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 130.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 158.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 186.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 214.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 270.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 298.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 326.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 354.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 382.00003 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 410.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 438.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 466.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 494.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 522.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 550.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.routing.txt new file mode 100644 index 00000000..c55fdd78 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.1.routing.txt @@ -0,0 +1,1062 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.004411765, + anchor: Position { + x: 233.0, + y: 46.0, + }, + center: Position { + x: 233.0, + y: -28.0, + }, + bounds: RoutingBounds { + position: Position { + x: 190.0, + y: -40.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 74.0, + }, + Position { + x: 242.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.5, + anchor: Position { + x: 1230.0, + y: 74.0, + }, + center: Position { + x: 1230.0, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1187.0, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 102.0, + }, + Position { + x: 242.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.45, + anchor: Position { + x: 1116.8, + y: 102.0, + }, + center: Position { + x: 1116.8, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1073.8, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 130.0, + }, + Position { + x: 242.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1202.0, + y: 130.0, + }, + center: Position { + x: 1202.0, + y: 148.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1159.0, + y: 136.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 158.0, + }, + Position { + x: 242.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.4, + anchor: Position { + x: 995.2, + y: 158.0, + }, + center: Position { + x: 995.2, + y: 176.0, + }, + bounds: RoutingBounds { + position: Position { + x: 952.2, + y: 164.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.004736842, + anchor: Position { + x: 233.0, + y: 186.0, + }, + center: Position { + x: 294.0, + y: 186.0, + }, + bounds: RoutingBounds { + position: Position { + x: 251.0, + y: 174.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 214.0, + }, + Position { + x: 242.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1160.0, + y: 214.0, + }, + center: Position { + x: 1160.0, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1117.0, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 242.0, + }, + Position { + x: 242.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.6, + anchor: Position { + x: 1330.4, + y: 242.0, + }, + center: Position { + x: 1330.4, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1287.4, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 224.0, + y: 270.0, + }, + Position { + x: 242.0, + y: 270.0, + }, + Position { + x: 1890.0, + y: 270.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.35, + anchor: Position { + x: 859.6, + y: 270.0, + }, + center: Position { + x: 859.6, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 816.6, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 224.0, + y: 298.0, + }, + Position { + x: 242.0, + y: 298.0, + }, + Position { + x: 1890.0, + y: 298.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.5, + anchor: Position { + x: 1118.0, + y: 298.0, + }, + center: Position { + x: 1118.0, + y: 280.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1071.5, + y: 268.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 224.0, + y: 326.0, + }, + Position { + x: 242.0, + y: 326.0, + }, + Position { + x: 1890.0, + y: 326.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.45, + anchor: Position { + x: 1016.0, + y: 326.0, + }, + center: Position { + x: 1016.0, + y: 308.0, + }, + bounds: RoutingBounds { + position: Position { + x: 969.5, + y: 296.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 224.0, + y: 354.0, + }, + Position { + x: 242.0, + y: 354.0, + }, + Position { + x: 1890.0, + y: 354.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.45, + anchor: Position { + x: 1003.39996, + y: 354.0, + }, + center: Position { + x: 1003.39996, + y: 372.0, + }, + bounds: RoutingBounds { + position: Position { + x: 956.89996, + y: 360.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 224.0, + y: 382.00003, + }, + Position { + x: 242.0, + y: 382.00003, + }, + Position { + x: 1890.0, + y: 382.00003, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.55, + anchor: Position { + x: 1161.2, + y: 382.00003, + }, + center: Position { + x: 1161.2, + y: 364.00003, + }, + bounds: RoutingBounds { + position: Position { + x: 1114.7, + y: 352.00003, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 224.0, + y: 410.0, + }, + Position { + x: 242.0, + y: 410.0, + }, + Position { + x: 1890.0, + y: 410.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.5, + anchor: Position { + x: 1070.0, + y: 410.0, + }, + center: Position { + x: 1070.0, + y: 428.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1023.5, + y: 416.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 224.0, + y: 438.0, + }, + Position { + x: 242.0, + y: 438.0, + }, + Position { + x: 1890.0, + y: 438.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.55, + anchor: Position { + x: 1170.0, + y: 438.0, + }, + center: Position { + x: 1170.0, + y: 420.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1123.5, + y: 408.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 224.0, + y: 466.0, + }, + Position { + x: 242.0, + y: 466.0, + }, + Position { + x: 1890.0, + y: 466.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.55, + anchor: Position { + x: 1185.4, + y: 466.0, + }, + center: Position { + x: 1185.4, + y: 448.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1138.9, + y: 436.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 224.0, + y: 494.0, + }, + Position { + x: 242.0, + y: 494.0, + }, + Position { + x: 1890.0, + y: 494.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 1112.0, + y: 494.0, + }, + center: Position { + x: 1112.0, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1065.5, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 224.0, + y: 522.0, + }, + Position { + x: 242.0, + y: 522.0, + }, + Position { + x: 1890.0, + y: 522.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.55, + anchor: Position { + x: 1216.2001, + y: 522.0, + }, + center: Position { + x: 1216.2001, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1169.7001, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 224.0, + y: 550.0, + }, + Position { + x: 242.0, + y: 550.0, + }, + Position { + x: 1890.0, + y: 550.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.4, + anchor: Position { + x: 956.8, + y: 550.0, + }, + center: Position { + x: 956.8, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 910.3, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -40.0, + }, + size: Size { + width: 2092.0, + height: 620.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.arcadia new file mode 100644 index 00000000..73e373d5 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 260.0; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.projection.json new file mode 100644 index 00000000..f49a1d00 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 568.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 46.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 74.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 102.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 130.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 158.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 186.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 214.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 270.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 298.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 326.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 354.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 382.00003 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 410.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 438.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 466.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 494.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 522.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 550.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.routing.txt new file mode 100644 index 00000000..c55fdd78 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-Current-260.routing.txt @@ -0,0 +1,1062 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.004411765, + anchor: Position { + x: 233.0, + y: 46.0, + }, + center: Position { + x: 233.0, + y: -28.0, + }, + bounds: RoutingBounds { + position: Position { + x: 190.0, + y: -40.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 74.0, + }, + Position { + x: 242.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.5, + anchor: Position { + x: 1230.0, + y: 74.0, + }, + center: Position { + x: 1230.0, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1187.0, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 102.0, + }, + Position { + x: 242.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.45, + anchor: Position { + x: 1116.8, + y: 102.0, + }, + center: Position { + x: 1116.8, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1073.8, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 130.0, + }, + Position { + x: 242.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1202.0, + y: 130.0, + }, + center: Position { + x: 1202.0, + y: 148.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1159.0, + y: 136.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 158.0, + }, + Position { + x: 242.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.4, + anchor: Position { + x: 995.2, + y: 158.0, + }, + center: Position { + x: 995.2, + y: 176.0, + }, + bounds: RoutingBounds { + position: Position { + x: 952.2, + y: 164.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.004736842, + anchor: Position { + x: 233.0, + y: 186.0, + }, + center: Position { + x: 294.0, + y: 186.0, + }, + bounds: RoutingBounds { + position: Position { + x: 251.0, + y: 174.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 214.0, + }, + Position { + x: 242.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1160.0, + y: 214.0, + }, + center: Position { + x: 1160.0, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1117.0, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 242.0, + }, + Position { + x: 242.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 242.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.6, + anchor: Position { + x: 1330.4, + y: 242.0, + }, + center: Position { + x: 1330.4, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1287.4, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 224.0, + y: 270.0, + }, + Position { + x: 242.0, + y: 270.0, + }, + Position { + x: 1890.0, + y: 270.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.35, + anchor: Position { + x: 859.6, + y: 270.0, + }, + center: Position { + x: 859.6, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 816.6, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 224.0, + y: 298.0, + }, + Position { + x: 242.0, + y: 298.0, + }, + Position { + x: 1890.0, + y: 298.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.5, + anchor: Position { + x: 1118.0, + y: 298.0, + }, + center: Position { + x: 1118.0, + y: 280.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1071.5, + y: 268.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 224.0, + y: 326.0, + }, + Position { + x: 242.0, + y: 326.0, + }, + Position { + x: 1890.0, + y: 326.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.45, + anchor: Position { + x: 1016.0, + y: 326.0, + }, + center: Position { + x: 1016.0, + y: 308.0, + }, + bounds: RoutingBounds { + position: Position { + x: 969.5, + y: 296.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 224.0, + y: 354.0, + }, + Position { + x: 242.0, + y: 354.0, + }, + Position { + x: 1890.0, + y: 354.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.45, + anchor: Position { + x: 1003.39996, + y: 354.0, + }, + center: Position { + x: 1003.39996, + y: 372.0, + }, + bounds: RoutingBounds { + position: Position { + x: 956.89996, + y: 360.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 224.0, + y: 382.00003, + }, + Position { + x: 242.0, + y: 382.00003, + }, + Position { + x: 1890.0, + y: 382.00003, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.55, + anchor: Position { + x: 1161.2, + y: 382.00003, + }, + center: Position { + x: 1161.2, + y: 364.00003, + }, + bounds: RoutingBounds { + position: Position { + x: 1114.7, + y: 352.00003, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 224.0, + y: 410.0, + }, + Position { + x: 242.0, + y: 410.0, + }, + Position { + x: 1890.0, + y: 410.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.5, + anchor: Position { + x: 1070.0, + y: 410.0, + }, + center: Position { + x: 1070.0, + y: 428.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1023.5, + y: 416.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 224.0, + y: 438.0, + }, + Position { + x: 242.0, + y: 438.0, + }, + Position { + x: 1890.0, + y: 438.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.55, + anchor: Position { + x: 1170.0, + y: 438.0, + }, + center: Position { + x: 1170.0, + y: 420.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1123.5, + y: 408.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 224.0, + y: 466.0, + }, + Position { + x: 242.0, + y: 466.0, + }, + Position { + x: 1890.0, + y: 466.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.55, + anchor: Position { + x: 1185.4, + y: 466.0, + }, + center: Position { + x: 1185.4, + y: 448.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1138.9, + y: 436.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 224.0, + y: 494.0, + }, + Position { + x: 242.0, + y: 494.0, + }, + Position { + x: 1890.0, + y: 494.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 1112.0, + y: 494.0, + }, + center: Position { + x: 1112.0, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1065.5, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 224.0, + y: 522.0, + }, + Position { + x: 242.0, + y: 522.0, + }, + Position { + x: 1890.0, + y: 522.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.55, + anchor: Position { + x: 1216.2001, + y: 522.0, + }, + center: Position { + x: 1216.2001, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1169.7001, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 224.0, + y: 550.0, + }, + Position { + x: 242.0, + y: 550.0, + }, + Position { + x: 1890.0, + y: 550.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.4, + anchor: Position { + x: 956.8, + y: 550.0, + }, + center: Position { + x: 956.8, + y: 568.0, + }, + bounds: RoutingBounds { + position: Position { + x: 910.3, + y: 556.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -40.0, + }, + size: Size { + width: 2092.0, + height: 620.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.arcadia new file mode 100644 index 00000000..2424af51 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 259.8999938964844; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.projection.json new file mode 100644 index 00000000..77132ac9 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 259.9 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 29.78421 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 41.56842 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 53.35263 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 65.13684 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 76.92105 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 88.70526 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 100.48947 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 112.27368 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 124.05789 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 135.8421 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 147.62631 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 159.41052 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 171.19473 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 182.97894 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 194.76315 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 206.54736 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 218.33157 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 230.11578 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 241.90001 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.routing.txt new file mode 100644 index 00000000..33644892 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.routing.txt @@ -0,0 +1,1094 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 29.78421, + }, + Position { + x: 242.0, + y: 29.78421, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 879.8921, + y: 402.0, + }, + center: Position { + x: 879.8921, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 836.8921, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 41.56842, + }, + Position { + x: 242.0, + y: 41.56842, + }, + Position { + x: 1890.0, + y: 41.56842, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.45, + anchor: Position { + x: 1143.9941, + y: 41.56842, + }, + center: Position { + x: 1143.9941, + y: -4.4315796, + }, + bounds: RoutingBounds { + position: Position { + x: 1100.9941, + y: -16.43158, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 53.35263, + }, + Position { + x: 242.0, + y: 53.35263, + }, + Position { + x: 1890.0, + y: 53.35263, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.5, + anchor: Position { + x: 1240.3237, + y: 53.35263, + }, + center: Position { + x: 1240.3237, + y: 71.35263, + }, + bounds: RoutingBounds { + position: Position { + x: 1197.3237, + y: 59.35263, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 65.13684, + }, + Position { + x: 242.0, + y: 65.13684, + }, + Position { + x: 1066.0, + y: 65.13684, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.65, + anchor: Position { + x: 1200.6979, + y: 402.0, + }, + center: Position { + x: 1200.6979, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1157.6979, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 76.92105, + }, + Position { + x: 242.0, + y: 76.92105, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.5, + anchor: Position { + x: 981.4606, + y: 324.0, + }, + center: Position { + x: 981.4606, + y: 342.0, + }, + bounds: RoutingBounds { + position: Position { + x: 938.4606, + y: 330.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 88.70526, + }, + Position { + x: 242.0, + y: 88.70526, + }, + Position { + x: 1896.0, + y: 88.70526, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 1128.1825, + y: 88.70526, + }, + center: Position { + x: 1128.1825, + y: 70.70526, + }, + bounds: RoutingBounds { + position: Position { + x: 1085.1825, + y: 58.70526, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 100.48947, + }, + Position { + x: 242.0, + y: 100.48947, + }, + Position { + x: 1890.0, + y: 100.48947, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.85, + anchor: Position { + x: 1890.0, + y: 122.17343, + }, + center: Position { + x: 1951.0, + y: 122.17343, + }, + bounds: RoutingBounds { + position: Position { + x: 1908.0, + y: 110.17343, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 112.27368, + }, + Position { + x: 242.0, + y: 112.27368, + }, + Position { + x: 1890.0, + y: 112.27368, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.5, + anchor: Position { + x: 1210.8633, + y: 112.27368, + }, + center: Position { + x: 1210.8633, + y: 130.27368, + }, + bounds: RoutingBounds { + position: Position { + x: 1167.8633, + y: 118.27368, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 224.0, + y: 124.05789, + }, + Position { + x: 242.0, + y: 124.05789, + }, + Position { + x: 242.0, + y: 271.9, + }, + Position { + x: 1890.0, + y: 271.9, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.45, + anchor: Position { + x: 959.0318, + y: 271.9, + }, + center: Position { + x: 959.0318, + y: 253.9, + }, + bounds: RoutingBounds { + position: Position { + x: 916.0318, + y: 241.9, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 224.0, + y: 135.8421, + }, + Position { + x: 242.0, + y: 135.8421, + }, + Position { + x: 1890.0, + y: 135.8421, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.9, + anchor: Position { + x: 1890.0, + y: 224.98419, + }, + center: Position { + x: 1954.5, + y: 224.98419, + }, + bounds: RoutingBounds { + position: Position { + x: 1908.0, + y: 212.98419, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 224.0, + y: 147.62631, + }, + Position { + x: 242.0, + y: 147.62631, + }, + Position { + x: 1890.0, + y: 147.62631, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.5, + anchor: Position { + x: 1193.1868, + y: 147.62631, + }, + center: Position { + x: 1193.1868, + y: 165.62631, + }, + bounds: RoutingBounds { + position: Position { + x: 1146.6868, + y: 153.62631, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 224.0, + y: 159.41052, + }, + Position { + x: 242.0, + y: 159.41052, + }, + Position { + x: 242.0, + y: 280.70526, + }, + Position { + x: 1890.0, + y: 280.70526, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.55, + anchor: Position { + x: 1162.3293, + y: 280.70526, + }, + center: Position { + x: 1162.3293, + y: 234.70526, + }, + bounds: RoutingBounds { + position: Position { + x: 1115.8293, + y: 222.70526, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 224.0, + y: 171.19473, + }, + Position { + x: 242.0, + y: 171.19473, + }, + Position { + x: 236.0, + y: 171.19473, + }, + Position { + x: 236.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.4, + anchor: Position { + x: 751.9169, + y: 402.0, + }, + center: Position { + x: 751.9169, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 705.4169, + y: 372.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 224.0, + y: 182.97894, + }, + Position { + x: 242.0, + y: 182.97894, + }, + Position { + x: 1890.0, + y: 182.97894, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.4, + anchor: Position { + x: 985.20844, + y: 182.97894, + }, + center: Position { + x: 985.20844, + y: 164.97894, + }, + bounds: RoutingBounds { + position: Position { + x: 938.70844, + y: 152.97894, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 224.0, + y: 194.76315, + }, + Position { + x: 242.0, + y: 194.76315, + }, + Position { + x: 242.0, + y: 298.3816, + }, + Position { + x: 1890.0, + y: 298.3816, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.65, + anchor: Position { + x: 1349.6854, + y: 298.3816, + }, + center: Position { + x: 1349.6854, + y: 252.38159, + }, + bounds: RoutingBounds { + position: Position { + x: 1303.1854, + y: 240.38159, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 224.0, + y: 206.54736, + }, + Position { + x: 242.0, + y: 206.54736, + }, + Position { + x: 242.0, + y: 304.27368, + }, + Position { + x: 1890.0, + y: 304.27368, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.55, + anchor: Position { + x: 1159.9727, + y: 304.27368, + }, + center: Position { + x: 1159.9727, + y: 350.27368, + }, + bounds: RoutingBounds { + position: Position { + x: 1113.4727, + y: 338.27368, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 224.0, + y: 218.33157, + }, + Position { + x: 242.0, + y: 218.33157, + }, + Position { + x: 1890.0, + y: 218.33157, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 1157.8342, + y: 218.33157, + }, + center: Position { + x: 1157.8342, + y: 200.33157, + }, + bounds: RoutingBounds { + position: Position { + x: 1111.3342, + y: 188.33157, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 224.0, + y: 230.11578, + }, + Position { + x: 242.0, + y: 230.11578, + }, + Position { + x: 242.0, + y: 316.0579, + }, + Position { + x: 1890.0, + y: 316.0579, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.65, + anchor: Position { + x: 1344.3826, + y: 316.0579, + }, + center: Position { + x: 1344.3826, + y: 362.0579, + }, + bounds: RoutingBounds { + position: Position { + x: 1297.8826, + y: 350.0579, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 224.0, + y: 241.90001, + }, + Position { + x: 242.0, + y: 241.90001, + }, + Position { + x: 242.0, + y: 321.95, + }, + Position { + x: 1890.0, + y: 321.95, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.4, + anchor: Position { + x: 881.5901, + y: 321.95, + }, + center: Position { + x: 881.5901, + y: 339.95, + }, + bounds: RoutingBounds { + position: Position { + x: 835.0901, + y: 327.95, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -16.43158, + }, + size: Size { + width: 2092.0, + height: 484.43158, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.arcadia new file mode 100644 index 00000000..84116de0 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 260.1000061035156; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.projection.json new file mode 100644 index 00000000..1b159185 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 260.1 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 29.794737 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 41.589474 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 53.384212 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 65.17895 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 76.97368 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 88.768425 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 100.56316 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 112.357895 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 124.15263 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 135.94736 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 147.74211 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 159.53685 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 171.33159 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 183.12633 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 194.92105 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 206.71579 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 218.51054 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 230.30527 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.09999 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.routing.txt new file mode 100644 index 00000000..23babdee --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.routing.txt @@ -0,0 +1,1094 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 29.794737, + }, + Position { + x: 242.0, + y: 29.794737, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 879.8974, + y: 402.0, + }, + center: Position { + x: 879.8974, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 836.8974, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 41.589474, + }, + Position { + x: 242.0, + y: 41.589474, + }, + Position { + x: 1890.0, + y: 41.589474, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.45, + anchor: Position { + x: 1143.9847, + y: 41.589474, + }, + center: Position { + x: 1143.9847, + y: -4.4105263, + }, + bounds: RoutingBounds { + position: Position { + x: 1100.9847, + y: -16.410526, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 53.384212, + }, + Position { + x: 242.0, + y: 53.384212, + }, + Position { + x: 1890.0, + y: 53.384212, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.5, + anchor: Position { + x: 1240.3079, + y: 53.384212, + }, + center: Position { + x: 1240.3079, + y: 71.38422, + }, + bounds: RoutingBounds { + position: Position { + x: 1197.3079, + y: 59.384216, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 65.17895, + }, + Position { + x: 242.0, + y: 65.17895, + }, + Position { + x: 1066.0, + y: 65.17895, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.65, + anchor: Position { + x: 1200.7126, + y: 402.0, + }, + center: Position { + x: 1200.7126, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1157.7126, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 76.97368, + }, + Position { + x: 242.0, + y: 76.97368, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.5, + anchor: Position { + x: 981.4869, + y: 324.0, + }, + center: Position { + x: 981.4869, + y: 342.0, + }, + bounds: RoutingBounds { + position: Position { + x: 938.4869, + y: 330.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 88.768425, + }, + Position { + x: 242.0, + y: 88.768425, + }, + Position { + x: 1896.0, + y: 88.768425, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 1128.1543, + y: 88.768425, + }, + center: Position { + x: 1128.1543, + y: 70.768425, + }, + bounds: RoutingBounds { + position: Position { + x: 1085.1543, + y: 58.768425, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 100.56316, + }, + Position { + x: 242.0, + y: 100.56316, + }, + Position { + x: 1890.0, + y: 100.56316, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.85, + anchor: Position { + x: 1890.0, + y: 122.1845, + }, + center: Position { + x: 1951.0, + y: 122.1845, + }, + bounds: RoutingBounds { + position: Position { + x: 1908.0, + y: 110.1845, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 112.357895, + }, + Position { + x: 242.0, + y: 112.357895, + }, + Position { + x: 1890.0, + y: 112.357895, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.5, + anchor: Position { + x: 1210.821, + y: 112.357895, + }, + center: Position { + x: 1210.821, + y: 130.3579, + }, + bounds: RoutingBounds { + position: Position { + x: 1167.821, + y: 118.357895, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 224.0, + y: 124.15263, + }, + Position { + x: 242.0, + y: 124.15263, + }, + Position { + x: 242.0, + y: 272.1, + }, + Position { + x: 1890.0, + y: 272.1, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.45, + anchor: Position { + x: 958.8839, + y: 272.1, + }, + center: Position { + x: 958.8839, + y: 254.1, + }, + bounds: RoutingBounds { + position: Position { + x: 915.8839, + y: 242.1, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 224.0, + y: 135.94736, + }, + Position { + x: 242.0, + y: 135.94736, + }, + Position { + x: 1890.0, + y: 135.94736, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.9, + anchor: Position { + x: 1890.0, + y: 224.99472, + }, + center: Position { + x: 1954.5, + y: 224.99472, + }, + bounds: RoutingBounds { + position: Position { + x: 1908.0, + y: 212.99472, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 224.0, + y: 147.74211, + }, + Position { + x: 242.0, + y: 147.74211, + }, + Position { + x: 1890.0, + y: 147.74211, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.5, + anchor: Position { + x: 1193.1289, + y: 147.74211, + }, + center: Position { + x: 1193.1289, + y: 165.74211, + }, + bounds: RoutingBounds { + position: Position { + x: 1146.6289, + y: 153.74211, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 224.0, + y: 159.53685, + }, + Position { + x: 242.0, + y: 159.53685, + }, + Position { + x: 242.0, + y: 280.76843, + }, + Position { + x: 1890.0, + y: 280.76843, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.55, + anchor: Position { + x: 1162.3231, + y: 280.76843, + }, + center: Position { + x: 1162.3231, + y: 234.76843, + }, + bounds: RoutingBounds { + position: Position { + x: 1115.8231, + y: 222.76843, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 224.0, + y: 171.33159, + }, + Position { + x: 242.0, + y: 171.33159, + }, + Position { + x: 236.0, + y: 171.33159, + }, + Position { + x: 236.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.4, + anchor: Position { + x: 751.999, + y: 402.0, + }, + center: Position { + x: 751.999, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 705.499, + y: 372.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 224.0, + y: 183.12633, + }, + Position { + x: 242.0, + y: 183.12633, + }, + Position { + x: 1890.0, + y: 183.12633, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.4, + anchor: Position { + x: 985.1495, + y: 183.12633, + }, + center: Position { + x: 985.1495, + y: 165.12633, + }, + bounds: RoutingBounds { + position: Position { + x: 938.6495, + y: 153.12633, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 224.0, + y: 194.92105, + }, + Position { + x: 242.0, + y: 194.92105, + }, + Position { + x: 242.0, + y: 298.4605, + }, + Position { + x: 1890.0, + y: 298.4605, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.65, + anchor: Position { + x: 1349.6617, + y: 298.4605, + }, + center: Position { + x: 1349.6617, + y: 252.46051, + }, + bounds: RoutingBounds { + position: Position { + x: 1303.1617, + y: 240.46051, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 224.0, + y: 206.71579, + }, + Position { + x: 242.0, + y: 206.71579, + }, + Position { + x: 242.0, + y: 304.3579, + }, + Position { + x: 1890.0, + y: 304.3579, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.55, + anchor: Position { + x: 1159.9642, + y: 304.3579, + }, + center: Position { + x: 1159.9642, + y: 350.3579, + }, + bounds: RoutingBounds { + position: Position { + x: 1113.4642, + y: 338.3579, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 224.0, + y: 218.51054, + }, + Position { + x: 242.0, + y: 218.51054, + }, + Position { + x: 1890.0, + y: 218.51054, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 1157.7449, + y: 218.51054, + }, + center: Position { + x: 1157.7449, + y: 200.51054, + }, + bounds: RoutingBounds { + position: Position { + x: 1111.2449, + y: 188.51054, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 224.0, + y: 230.30527, + }, + Position { + x: 242.0, + y: 230.30527, + }, + Position { + x: 242.0, + y: 316.15265, + }, + Position { + x: 1890.0, + y: 316.15265, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.65, + anchor: Position { + x: 1344.3541, + y: 316.15265, + }, + center: Position { + x: 1344.3541, + y: 362.15265, + }, + bounds: RoutingBounds { + position: Position { + x: 1297.8541, + y: 350.15265, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 224.0, + y: 242.09999, + }, + Position { + x: 242.0, + y: 242.09999, + }, + Position { + x: 242.0, + y: 322.05, + }, + Position { + x: 1890.0, + y: 322.05, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.4, + anchor: Position { + x: 881.61, + y: 322.05, + }, + center: Position { + x: 881.61, + y: 340.05, + }, + bounds: RoutingBounds { + position: Position { + x: 835.11, + y: 328.05, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -16.410526, + }, + size: Size { + width: 2092.0, + height: 484.41052, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.arcadia new file mode 100644 index 00000000..73e373d5 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.arcadia @@ -0,0 +1,471 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_8 "Interface 8" id "956a2026-0912-4000-8000-00000000006c" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_9 "Interface 9" id "956a2026-0912-4000-8000-00000000006d" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_10 "Interface 10" id "956a2026-0912-4000-8000-00000000006e" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_11 "Interface 11" id "956a2026-0912-4000-8000-00000000006f" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_12 "Interface 12" id "956a2026-0912-4000-8000-000000000070" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_13 "Interface 13" id "956a2026-0912-4000-8000-000000000071" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_14 "Interface 14" id "956a2026-0912-4000-8000-000000000072" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_15 "Interface 15" id "956a2026-0912-4000-8000-000000000073" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_16 "Interface 16" id "956a2026-0912-4000-8000-000000000074" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_17 "Interface 17" id "956a2026-0912-4000-8000-000000000075" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_18 "Interface 18" id "956a2026-0912-4000-8000-000000000076" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_19 "Interface 19" id "956a2026-0912-4000-8000-000000000077" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + boundary_exchange exchange_8 "Exchange 8" id "956a2026-0912-4000-8000-0000000003f0" { + description ""; + items []; + oriented true; + source @interface_8; + target @peer_interface; + } + + boundary_exchange exchange_9 "Exchange 9" id "956a2026-0912-4000-8000-0000000003f1" { + description ""; + items []; + oriented true; + source @interface_9; + target @peer_interface; + } + + boundary_exchange exchange_10 "Exchange 10" id "956a2026-0912-4000-8000-0000000003f2" { + description ""; + items []; + oriented true; + source @interface_10; + target @peer_interface; + } + + boundary_exchange exchange_11 "Exchange 11" id "956a2026-0912-4000-8000-0000000003f3" { + description ""; + items []; + oriented true; + source @interface_11; + target @peer_interface; + } + + boundary_exchange exchange_12 "Exchange 12" id "956a2026-0912-4000-8000-0000000003f4" { + description ""; + items []; + oriented true; + source @interface_12; + target @peer_interface; + } + + boundary_exchange exchange_13 "Exchange 13" id "956a2026-0912-4000-8000-0000000003f5" { + description ""; + items []; + oriented true; + source @interface_13; + target @peer_interface; + } + + boundary_exchange exchange_14 "Exchange 14" id "956a2026-0912-4000-8000-0000000003f6" { + description ""; + items []; + oriented true; + source @interface_14; + target @peer_interface; + } + + boundary_exchange exchange_15 "Exchange 15" id "956a2026-0912-4000-8000-0000000003f7" { + description ""; + items []; + oriented true; + source @interface_15; + target @peer_interface; + } + + boundary_exchange exchange_16 "Exchange 16" id "956a2026-0912-4000-8000-0000000003f8" { + description ""; + items []; + oriented true; + source @interface_16; + target @peer_interface; + } + + boundary_exchange exchange_17 "Exchange 17" id "956a2026-0912-4000-8000-0000000003f9" { + description ""; + items []; + oriented true; + source @interface_17; + target @peer_interface; + } + + boundary_exchange exchange_18 "Exchange 18" id "956a2026-0912-4000-8000-0000000003fa" { + description ""; + items []; + oriented true; + source @interface_18; + target @peer_interface; + } + + boundary_exchange exchange_19 "Exchange 19" id "956a2026-0912-4000-8000-0000000003fb" { + description ""; + items []; + oriented true; + source @interface_19; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 260.0; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.projection.json new file mode 100644 index 00000000..002d84f6 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.projection.json @@ -0,0 +1,409 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 260.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f0", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006c", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f1", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006d", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f2", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006e", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f3", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006f", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f4", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000070", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f5", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000071", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f6", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000072", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f7", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000073", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000074", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003f9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000075", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fa", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000076", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003fb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000077", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 29.789474 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 41.57895 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 53.36842 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 65.1579 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 76.94737 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 88.73684 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 100.52631 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006c", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 112.31579 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006d", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 124.10526 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006e", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 135.89474 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006f", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 147.6842 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000070", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 159.47368 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000071", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 171.26315 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000072", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 183.05263 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000073", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 194.8421 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000074", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 206.63159 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000075", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 218.42105 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000076", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 230.21053 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000077", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 242.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.routing.txt new file mode 100644 index 00000000..2ccb52bb --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.routing.txt @@ -0,0 +1,1094 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 29.789474, + }, + Position { + x: 242.0, + y: 29.789474, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 879.8947, + y: 402.0, + }, + center: Position { + x: 879.8947, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 836.8947, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 41.57895, + }, + Position { + x: 242.0, + y: 41.57895, + }, + Position { + x: 1890.0, + y: 41.57895, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.45, + anchor: Position { + x: 1143.9895, + y: 41.57895, + }, + center: Position { + x: 1143.9895, + y: -4.421051, + }, + bounds: RoutingBounds { + position: Position { + x: 1100.9895, + y: -16.421051, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 53.36842, + }, + Position { + x: 242.0, + y: 53.36842, + }, + Position { + x: 1890.0, + y: 53.36842, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.5, + anchor: Position { + x: 1240.3158, + y: 53.36842, + }, + center: Position { + x: 1240.3158, + y: 71.36842, + }, + bounds: RoutingBounds { + position: Position { + x: 1197.3158, + y: 59.368423, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 65.1579, + }, + Position { + x: 242.0, + y: 65.1579, + }, + Position { + x: 1066.0, + y: 65.1579, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.65, + anchor: Position { + x: 1200.7051, + y: 402.0, + }, + center: Position { + x: 1200.7051, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1157.7051, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 76.94737, + }, + Position { + x: 242.0, + y: 76.94737, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.5, + anchor: Position { + x: 981.4737, + y: 324.0, + }, + center: Position { + x: 981.4737, + y: 342.0, + }, + bounds: RoutingBounds { + position: Position { + x: 938.4737, + y: 330.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 88.73684, + }, + Position { + x: 242.0, + y: 88.73684, + }, + Position { + x: 1896.0, + y: 88.73684, + }, + Position { + x: 1896.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 1128.1685, + y: 88.73684, + }, + center: Position { + x: 1128.1685, + y: 70.73684, + }, + bounds: RoutingBounds { + position: Position { + x: 1085.1685, + y: 58.73684, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 100.52631, + }, + Position { + x: 242.0, + y: 100.52631, + }, + Position { + x: 1890.0, + y: 100.52631, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.85, + anchor: Position { + x: 1890.0, + y: 122.1789, + }, + center: Position { + x: 1951.0, + y: 122.1789, + }, + bounds: RoutingBounds { + position: Position { + x: 1908.0, + y: 110.1789, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f0: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f0, + points: [ + Position { + x: 224.0, + y: 112.31579, + }, + Position { + x: 242.0, + y: 112.31579, + }, + Position { + x: 1890.0, + y: 112.31579, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 8", + fraction: 0.5, + anchor: Position { + x: 1210.842, + y: 112.31579, + }, + center: Position { + x: 1210.842, + y: 130.3158, + }, + bounds: RoutingBounds { + position: Position { + x: 1167.842, + y: 118.315796, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f1: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f1, + points: [ + Position { + x: 224.0, + y: 124.10526, + }, + Position { + x: 242.0, + y: 124.10526, + }, + Position { + x: 242.0, + y: 272.0, + }, + Position { + x: 1890.0, + y: 272.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 9", + fraction: 0.45, + anchor: Position { + x: 958.9579, + y: 272.0, + }, + center: Position { + x: 958.9579, + y: 254.0, + }, + bounds: RoutingBounds { + position: Position { + x: 915.9579, + y: 242.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f2: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f2, + points: [ + Position { + x: 224.0, + y: 135.89474, + }, + Position { + x: 242.0, + y: 135.89474, + }, + Position { + x: 1890.0, + y: 135.89474, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 10", + fraction: 0.9, + anchor: Position { + x: 1890.0, + y: 224.98935, + }, + center: Position { + x: 1954.5, + y: 224.98935, + }, + bounds: RoutingBounds { + position: Position { + x: 1908.0, + y: 212.98935, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f3: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f3, + points: [ + Position { + x: 224.0, + y: 147.6842, + }, + Position { + x: 242.0, + y: 147.6842, + }, + Position { + x: 1890.0, + y: 147.6842, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 11", + fraction: 0.5, + anchor: Position { + x: 1193.158, + y: 147.6842, + }, + center: Position { + x: 1193.158, + y: 165.6842, + }, + bounds: RoutingBounds { + position: Position { + x: 1146.658, + y: 153.6842, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f4: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f4, + points: [ + Position { + x: 224.0, + y: 159.47368, + }, + Position { + x: 242.0, + y: 159.47368, + }, + Position { + x: 242.0, + y: 280.73685, + }, + Position { + x: 1890.0, + y: 280.73685, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 12", + fraction: 0.55, + anchor: Position { + x: 1162.3262, + y: 280.73685, + }, + center: Position { + x: 1162.3262, + y: 234.73685, + }, + bounds: RoutingBounds { + position: Position { + x: 1115.8262, + y: 222.73685, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f5: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f5, + points: [ + Position { + x: 224.0, + y: 171.26315, + }, + Position { + x: 242.0, + y: 171.26315, + }, + Position { + x: 236.0, + y: 171.26315, + }, + Position { + x: 236.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 13", + fraction: 0.4, + anchor: Position { + x: 751.9579, + y: 402.0, + }, + center: Position { + x: 751.9579, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 705.4579, + y: 372.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f6: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f6, + points: [ + Position { + x: 224.0, + y: 183.05263, + }, + Position { + x: 242.0, + y: 183.05263, + }, + Position { + x: 1890.0, + y: 183.05263, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 14", + fraction: 0.4, + anchor: Position { + x: 985.17896, + y: 183.05263, + }, + center: Position { + x: 985.17896, + y: 165.05263, + }, + bounds: RoutingBounds { + position: Position { + x: 938.67896, + y: 153.05263, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f7: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f7, + points: [ + Position { + x: 224.0, + y: 194.8421, + }, + Position { + x: 242.0, + y: 194.8421, + }, + Position { + x: 242.0, + y: 298.42105, + }, + Position { + x: 1890.0, + y: 298.42105, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 15", + fraction: 0.65, + anchor: Position { + x: 1349.6737, + y: 298.42105, + }, + center: Position { + x: 1349.6737, + y: 252.42105, + }, + bounds: RoutingBounds { + position: Position { + x: 1303.1737, + y: 240.42105, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f8, + points: [ + Position { + x: 224.0, + y: 206.63159, + }, + Position { + x: 242.0, + y: 206.63159, + }, + Position { + x: 242.0, + y: 304.3158, + }, + Position { + x: 1890.0, + y: 304.3158, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 16", + fraction: 0.55, + anchor: Position { + x: 1159.9684, + y: 304.3158, + }, + center: Position { + x: 1159.9684, + y: 350.3158, + }, + bounds: RoutingBounds { + position: Position { + x: 1113.4684, + y: 338.3158, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003f9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003f9, + points: [ + Position { + x: 224.0, + y: 218.42105, + }, + Position { + x: 242.0, + y: 218.42105, + }, + Position { + x: 1890.0, + y: 218.42105, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 17", + fraction: 0.5, + anchor: Position { + x: 1157.7896, + y: 218.42105, + }, + center: Position { + x: 1157.7896, + y: 200.42105, + }, + bounds: RoutingBounds { + position: Position { + x: 1111.2896, + y: 188.42105, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fa: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fa, + points: [ + Position { + x: 224.0, + y: 230.21053, + }, + Position { + x: 242.0, + y: 230.21053, + }, + Position { + x: 242.0, + y: 316.10526, + }, + Position { + x: 1890.0, + y: 316.10526, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 18", + fraction: 0.65, + anchor: Position { + x: 1344.3684, + y: 316.10526, + }, + center: Position { + x: 1344.3684, + y: 362.10526, + }, + bounds: RoutingBounds { + position: Position { + x: 1297.8684, + y: 350.10526, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003fb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003fb, + points: [ + Position { + x: 224.0, + y: 242.0, + }, + Position { + x: 242.0, + y: 242.0, + }, + Position { + x: 242.0, + y: 322.0, + }, + Position { + x: 1890.0, + y: 322.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 19", + fraction: 0.4, + anchor: Position { + x: 881.60004, + y: 322.0, + }, + center: Position { + x: 881.60004, + y: 340.0, + }, + bounds: RoutingBounds { + position: Position { + x: 835.10004, + y: 328.0, + }, + size: Size { + width: 93.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -16.421051, + }, + size: Size { + width: 2092.0, + height: 484.42105, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1.json new file mode 100644 index 00000000..b2890b39 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1.json @@ -0,0 +1,131 @@ +{ + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe", + "a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports", + "--exact", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:23:01.989684+00:00", + "end": "2026-09-12T22:23:02.278947+00:00", + "seconds": 0.296, + "exit": 101, + "log": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1.log", + "log_sha256": "ffab61debe6b597b440f2649b35475ecf6b47a005667bed4334e74bd1680dfed", + "test": "a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports", + "expected_exit": 101, + "expected_acceptance_failure_observed": true, + "test_passed": false, + "changed_inputs": [], + "changed_binary": [], + "geometry": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-259.9.arcadia": { + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-259.9.projection.json": { + "sha256": "7048b8be89efe587c8a933058895626c3dc57f5eed01eb0e9bf8680125a9a624", + "bytes": 12209 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-259.9.routing.txt": { + "sha256": "083343c236f945bc7e39b8dfb39e659c7ecb039563155ff7d8dc94d19634e68b", + "bytes": 32141 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.1.arcadia": { + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.1.projection.json": { + "sha256": "0a2b6ac08ac3912f2ebf249ef52ce2dd671504e59f14d988dcb0eb5f79c9a8e4", + "bytes": 12195 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.1.routing.txt": { + "sha256": "271ce46e118c856135191629ad598bedf531e48eee2f45aa54a698dc1366c888", + "bytes": 32167 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.arcadia": { + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900", + "bytes": 12098 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.projection.json": { + "sha256": "eb14be7a70aef998ff08c4f7cfe74450f602d81f9ddeea61aed33c69c2737593", + "bytes": 12169 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.routing.txt": { + "sha256": "18b5f922f81551213d2e50405f31f0ed74ba4856e6c49d437050b16b03485a68", + "bytes": 32028 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-259.9.arcadia": { + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-259.9.projection.json": { + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5", + "bytes": 12186 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-259.9.routing.txt": { + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd", + "bytes": 30994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.1.arcadia": { + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.1.projection.json": { + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5", + "bytes": 12186 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.1.routing.txt": { + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd", + "bytes": 30994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.arcadia": { + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900", + "bytes": 12098 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.projection.json": { + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5", + "bytes": 12186 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.routing.txt": { + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd", + "bytes": 30994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-259.9.arcadia": { + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-259.9.projection.json": { + "sha256": "92ab33ff4cdbd5e18bf3a2893d29bcb55f78efda7d82b59f16ee80caeee6aad6", + "bytes": 12253 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-259.9.routing.txt": { + "sha256": "c57a60ce9baa052a44e036886d8af7b42dc911757e661e05264efad07ac5d735", + "bytes": 32312 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.1.arcadia": { + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.1.projection.json": { + "sha256": "24dc1a4a1afa3bba0d2d4896784a804e073b1af2f133214ce00edc1541e8b01f", + "bytes": 12259 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.1.routing.txt": { + "sha256": "410c062953566991f9c546f4317c0b1c4ad1b72405c5d417e2bba93d73fdd15e", + "bytes": 32320 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.arcadia": { + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900", + "bytes": 12098 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.projection.json": { + "sha256": "4ab8e2d23b9a0cd3767133e5aa489a8c63b8a5c88d90057dfc7cc70c707a03bc", + "bytes": 12248 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.routing.txt": { + "sha256": "1f7d831e3be8e747f3d7480799b8c2ba8b9335fa08a2e8b9f2c7d2d83fc5c790", + "bytes": 32292 + } + } +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-1.log b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1.log new file mode 100644 index 00000000..fa7ba2a3 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-1.log @@ -0,0 +1,387 @@ + +running 1 test +test a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports ... threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 46.0 }, Position { x: 242.0, y: 46.0 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 74.0 }, Position { x: 242.0, y: 74.0 }, Position { x: 1890.0, y: 74.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 102.0 }, Position { x: 242.0, y: 102.0 }, Position { x: 1890.0, y: 102.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 130.0 }, Position { x: 242.0, y: 130.0 }, Position { x: 1890.0, y: 130.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 158.0 }, Position { x: 242.0, y: 158.0 }, Position { x: 1066.0, y: 158.0 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 186.0 }, Position { x: 242.0, y: 186.0 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 214.0 }, Position { x: 242.0, y: 214.0 }, Position { x: 1890.0, y: 214.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 242.0 }, Position { x: 242.0, y: 242.0 }, Position { x: 1890.0, y: 242.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 224.0, y: 270.0 }, Position { x: 242.0, y: 270.0 }, Position { x: 1890.0, y: 270.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 224.0, y: 298.0 }, Position { x: 242.0, y: 298.0 }, Position { x: 1890.0, y: 298.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 224.0, y: 326.0 }, Position { x: 242.0, y: 326.0 }, Position { x: 1890.0, y: 326.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 224.0, y: 354.0 }, Position { x: 242.0, y: 354.0 }, Position { x: 1890.0, y: 354.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 224.0, y: 382.00003 }, Position { x: 242.0, y: 382.00003 }, Position { x: 1890.0, y: 382.00003 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 224.0, y: 410.0 }, Position { x: 242.0, y: 410.0 }, Position { x: 1890.0, y: 410.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 224.0, y: 438.0 }, Position { x: 242.0, y: 438.0 }, Position { x: 1890.0, y: 438.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 224.0, y: 466.0 }, Position { x: 242.0, y: 466.0 }, Position { x: 1890.0, y: 466.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 224.0, y: 494.0 }, Position { x: 242.0, y: 494.0 }, Position { x: 1890.0, y: 494.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 224.0, y: 522.0 }, Position { x: 242.0, y: 522.0 }, Position { x: 1890.0, y: 522.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 224.0, y: 550.0 }, Position { x: 242.0, y: 550.0 }, Position { x: 1890.0, y: 550.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-259.9 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 568.0 } LRTB=[0, 20, 0, 0] gap=27.99997 warnings=0 length=36976 bends=42 blocked_stubs=[] +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 46.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 74.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 102.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 130.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 158.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 186.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 214.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 242.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-00000000006d side=Right position=Position { x: 224.0, y: 270.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-00000000006e side=Right position=Position { x: 224.0, y: 298.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-00000000006f side=Right position=Position { x: 224.0, y: 326.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000070 side=Right position=Position { x: 224.0, y: 354.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000071 side=Right position=Position { x: 224.0, y: 382.00003 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000072 side=Right position=Position { x: 224.0, y: 410.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000073 side=Right position=Position { x: 224.0, y: 438.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000074 side=Right position=Position { x: 224.0, y: 466.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000075 side=Right position=Position { x: 224.0, y: 494.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000076 side=Right position=Position { x: 224.0, y: 522.0 } +threshold-Current-259.9 port=956a2026-0912-4000-8000-000000000077 side=Right position=Position { x: 224.0, y: 550.0 } +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 46.0 }, Position { x: 242.0, y: 46.0 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 74.0 }, Position { x: 242.0, y: 74.0 }, Position { x: 1890.0, y: 74.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 102.0 }, Position { x: 242.0, y: 102.0 }, Position { x: 1890.0, y: 102.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 130.0 }, Position { x: 242.0, y: 130.0 }, Position { x: 1890.0, y: 130.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 158.0 }, Position { x: 242.0, y: 158.0 }, Position { x: 1066.0, y: 158.0 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 186.0 }, Position { x: 242.0, y: 186.0 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 214.0 }, Position { x: 242.0, y: 214.0 }, Position { x: 1890.0, y: 214.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 242.0 }, Position { x: 242.0, y: 242.0 }, Position { x: 1890.0, y: 242.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 224.0, y: 270.0 }, Position { x: 242.0, y: 270.0 }, Position { x: 1890.0, y: 270.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 224.0, y: 298.0 }, Position { x: 242.0, y: 298.0 }, Position { x: 1890.0, y: 298.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 224.0, y: 326.0 }, Position { x: 242.0, y: 326.0 }, Position { x: 1890.0, y: 326.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 224.0, y: 354.0 }, Position { x: 242.0, y: 354.0 }, Position { x: 1890.0, y: 354.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 224.0, y: 382.00003 }, Position { x: 242.0, y: 382.00003 }, Position { x: 1890.0, y: 382.00003 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 224.0, y: 410.0 }, Position { x: 242.0, y: 410.0 }, Position { x: 1890.0, y: 410.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 224.0, y: 438.0 }, Position { x: 242.0, y: 438.0 }, Position { x: 1890.0, y: 438.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 224.0, y: 466.0 }, Position { x: 242.0, y: 466.0 }, Position { x: 1890.0, y: 466.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 224.0, y: 494.0 }, Position { x: 242.0, y: 494.0 }, Position { x: 1890.0, y: 494.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 224.0, y: 522.0 }, Position { x: 242.0, y: 522.0 }, Position { x: 1890.0, y: 522.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 224.0, y: 550.0 }, Position { x: 242.0, y: 550.0 }, Position { x: 1890.0, y: 550.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 568.0 } LRTB=[0, 20, 0, 0] gap=27.99997 warnings=0 length=36976 bends=42 blocked_stubs=[] +threshold-Current-260 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 46.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 74.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 102.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 130.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 158.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 186.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 214.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 242.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-00000000006d side=Right position=Position { x: 224.0, y: 270.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-00000000006e side=Right position=Position { x: 224.0, y: 298.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-00000000006f side=Right position=Position { x: 224.0, y: 326.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000070 side=Right position=Position { x: 224.0, y: 354.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000071 side=Right position=Position { x: 224.0, y: 382.00003 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000072 side=Right position=Position { x: 224.0, y: 410.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000073 side=Right position=Position { x: 224.0, y: 438.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000074 side=Right position=Position { x: 224.0, y: 466.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000075 side=Right position=Position { x: 224.0, y: 494.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000076 side=Right position=Position { x: 224.0, y: 522.0 } +threshold-Current-260 port=956a2026-0912-4000-8000-000000000077 side=Right position=Position { x: 224.0, y: 550.0 } +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 46.0 }, Position { x: 242.0, y: 46.0 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 74.0 }, Position { x: 242.0, y: 74.0 }, Position { x: 1890.0, y: 74.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 102.0 }, Position { x: 242.0, y: 102.0 }, Position { x: 1890.0, y: 102.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 130.0 }, Position { x: 242.0, y: 130.0 }, Position { x: 1890.0, y: 130.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 158.0 }, Position { x: 242.0, y: 158.0 }, Position { x: 1066.0, y: 158.0 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 186.0 }, Position { x: 242.0, y: 186.0 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 214.0 }, Position { x: 242.0, y: 214.0 }, Position { x: 1890.0, y: 214.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 242.0 }, Position { x: 242.0, y: 242.0 }, Position { x: 1890.0, y: 242.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 224.0, y: 270.0 }, Position { x: 242.0, y: 270.0 }, Position { x: 1890.0, y: 270.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 224.0, y: 298.0 }, Position { x: 242.0, y: 298.0 }, Position { x: 1890.0, y: 298.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 224.0, y: 326.0 }, Position { x: 242.0, y: 326.0 }, Position { x: 1890.0, y: 326.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 224.0, y: 354.0 }, Position { x: 242.0, y: 354.0 }, Position { x: 1890.0, y: 354.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 224.0, y: 382.00003 }, Position { x: 242.0, y: 382.00003 }, Position { x: 1890.0, y: 382.00003 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 224.0, y: 410.0 }, Position { x: 242.0, y: 410.0 }, Position { x: 1890.0, y: 410.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 224.0, y: 438.0 }, Position { x: 242.0, y: 438.0 }, Position { x: 1890.0, y: 438.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 224.0, y: 466.0 }, Position { x: 242.0, y: 466.0 }, Position { x: 1890.0, y: 466.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 224.0, y: 494.0 }, Position { x: 242.0, y: 494.0 }, Position { x: 1890.0, y: 494.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 224.0, y: 522.0 }, Position { x: 242.0, y: 522.0 }, Position { x: 1890.0, y: 522.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 224.0, y: 550.0 }, Position { x: 242.0, y: 550.0 }, Position { x: 1890.0, y: 550.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-Current-260.1 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 568.0 } LRTB=[0, 20, 0, 0] gap=27.99997 warnings=0 length=36976 bends=42 blocked_stubs=[] +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 46.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 74.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 102.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 130.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 158.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 186.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 214.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 242.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-00000000006d side=Right position=Position { x: 224.0, y: 270.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-00000000006e side=Right position=Position { x: 224.0, y: 298.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-00000000006f side=Right position=Position { x: 224.0, y: 326.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000070 side=Right position=Position { x: 224.0, y: 354.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000071 side=Right position=Position { x: 224.0, y: 382.00003 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000072 side=Right position=Position { x: 224.0, y: 410.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000073 side=Right position=Position { x: 224.0, y: 438.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000074 side=Right position=Position { x: 224.0, y: 466.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000075 side=Right position=Position { x: 224.0, y: 494.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000076 side=Right position=Position { x: 224.0, y: 522.0 } +threshold-Current-260.1 port=956a2026-0912-4000-8000-000000000077 side=Right position=Position { x: 224.0, y: 550.0 } +threshold Current: adjacent side changes=[0, 0]; source prediction capacity=[12,0], controls=[0,0] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 29.78421 }, Position { x: 242.0, y: 29.78421 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 41.56842 }, Position { x: 242.0, y: 41.56842 }, Position { x: 1890.0, y: 41.56842 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 53.35263 }, Position { x: 242.0, y: 53.35263 }, Position { x: 1890.0, y: 53.35263 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 65.13684 }, Position { x: 242.0, y: 65.13684 }, Position { x: 1066.0, y: 65.13684 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 76.92105 }, Position { x: 242.0, y: 76.92105 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 88.70526 }, Position { x: 242.0, y: 88.70526 }, Position { x: 1896.0, y: 88.70526 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 100.48947 }, Position { x: 242.0, y: 100.48947 }, Position { x: 1890.0, y: 100.48947 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 112.27368 }, Position { x: 242.0, y: 112.27368 }, Position { x: 1890.0, y: 112.27368 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 224.0, y: 124.05789 }, Position { x: 242.0, y: 124.05789 }, Position { x: 242.0, y: 271.9 }, Position { x: 1890.0, y: 271.9 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 224.0, y: 135.8421 }, Position { x: 242.0, y: 135.8421 }, Position { x: 1890.0, y: 135.8421 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 224.0, y: 147.62631 }, Position { x: 242.0, y: 147.62631 }, Position { x: 1890.0, y: 147.62631 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 224.0, y: 159.41052 }, Position { x: 242.0, y: 159.41052 }, Position { x: 242.0, y: 280.70526 }, Position { x: 1890.0, y: 280.70526 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 224.0, y: 171.19473 }, Position { x: 242.0, y: 171.19473 }, Position { x: 236.0, y: 171.19473 }, Position { x: 236.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 224.0, y: 182.97894 }, Position { x: 242.0, y: 182.97894 }, Position { x: 1890.0, y: 182.97894 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 224.0, y: 194.76315 }, Position { x: 242.0, y: 194.76315 }, Position { x: 242.0, y: 298.3816 }, Position { x: 1890.0, y: 298.3816 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 224.0, y: 206.54736 }, Position { x: 242.0, y: 206.54736 }, Position { x: 242.0, y: 304.27368 }, Position { x: 1890.0, y: 304.27368 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 224.0, y: 218.33157 }, Position { x: 242.0, y: 218.33157 }, Position { x: 1890.0, y: 218.33157 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 224.0, y: 230.11578 }, Position { x: 242.0, y: 230.11578 }, Position { x: 242.0, y: 316.0579 }, Position { x: 1890.0, y: 316.0579 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 224.0, y: 241.90001 }, Position { x: 242.0, y: 241.90001 }, Position { x: 242.0, y: 321.95 }, Position { x: 1890.0, y: 321.95 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-259.9 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 259.9 } LRTB=[0, 20, 0, 0] gap=11.78421 warnings=0 length=39145.004 bends=54 blocked_stubs=[] +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 29.78421 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 41.56842 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 53.35263 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 65.13684 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 76.92105 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 88.70526 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 100.48947 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 112.27368 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-00000000006d side=Right position=Position { x: 224.0, y: 124.05789 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-00000000006e side=Right position=Position { x: 224.0, y: 135.8421 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-00000000006f side=Right position=Position { x: 224.0, y: 147.62631 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000070 side=Right position=Position { x: 224.0, y: 159.41052 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000071 side=Right position=Position { x: 224.0, y: 171.19473 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000072 side=Right position=Position { x: 224.0, y: 182.97894 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000073 side=Right position=Position { x: 224.0, y: 194.76315 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000074 side=Right position=Position { x: 224.0, y: 206.54736 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000075 side=Right position=Position { x: 224.0, y: 218.33157 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000076 side=Right position=Position { x: 224.0, y: 230.11578 } +threshold-SameSidesAdaptSpacing-259.9 port=956a2026-0912-4000-8000-000000000077 side=Right position=Position { x: 224.0, y: 241.90001 } +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 29.789474 }, Position { x: 242.0, y: 29.789474 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 41.57895 }, Position { x: 242.0, y: 41.57895 }, Position { x: 1890.0, y: 41.57895 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 53.36842 }, Position { x: 242.0, y: 53.36842 }, Position { x: 1890.0, y: 53.36842 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 65.1579 }, Position { x: 242.0, y: 65.1579 }, Position { x: 1066.0, y: 65.1579 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 76.94737 }, Position { x: 242.0, y: 76.94737 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 88.73684 }, Position { x: 242.0, y: 88.73684 }, Position { x: 1896.0, y: 88.73684 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 100.52631 }, Position { x: 242.0, y: 100.52631 }, Position { x: 1890.0, y: 100.52631 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 112.31579 }, Position { x: 242.0, y: 112.31579 }, Position { x: 1890.0, y: 112.31579 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 224.0, y: 124.10526 }, Position { x: 242.0, y: 124.10526 }, Position { x: 242.0, y: 272.0 }, Position { x: 1890.0, y: 272.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 224.0, y: 135.89474 }, Position { x: 242.0, y: 135.89474 }, Position { x: 1890.0, y: 135.89474 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 224.0, y: 147.6842 }, Position { x: 242.0, y: 147.6842 }, Position { x: 1890.0, y: 147.6842 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 224.0, y: 159.47368 }, Position { x: 242.0, y: 159.47368 }, Position { x: 242.0, y: 280.73685 }, Position { x: 1890.0, y: 280.73685 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 224.0, y: 171.26315 }, Position { x: 242.0, y: 171.26315 }, Position { x: 236.0, y: 171.26315 }, Position { x: 236.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 224.0, y: 183.05263 }, Position { x: 242.0, y: 183.05263 }, Position { x: 1890.0, y: 183.05263 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 224.0, y: 194.8421 }, Position { x: 242.0, y: 194.8421 }, Position { x: 242.0, y: 298.42105 }, Position { x: 1890.0, y: 298.42105 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 224.0, y: 206.63159 }, Position { x: 242.0, y: 206.63159 }, Position { x: 242.0, y: 304.3158 }, Position { x: 1890.0, y: 304.3158 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 224.0, y: 218.42105 }, Position { x: 242.0, y: 218.42105 }, Position { x: 1890.0, y: 218.42105 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 224.0, y: 230.21053 }, Position { x: 242.0, y: 230.21053 }, Position { x: 242.0, y: 316.10526 }, Position { x: 1890.0, y: 316.10526 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 224.0, y: 242.0 }, Position { x: 242.0, y: 242.0 }, Position { x: 242.0, y: 322.0 }, Position { x: 1890.0, y: 322.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 260.0 } LRTB=[0, 20, 0, 0] gap=11.789459 warnings=0 length=39143.996 bends=54 blocked_stubs=[] +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 29.789474 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 41.57895 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 53.36842 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 65.1579 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 76.94737 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 88.73684 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 100.52631 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 112.31579 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-00000000006d side=Right position=Position { x: 224.0, y: 124.10526 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-00000000006e side=Right position=Position { x: 224.0, y: 135.89474 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-00000000006f side=Right position=Position { x: 224.0, y: 147.6842 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000070 side=Right position=Position { x: 224.0, y: 159.47368 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000071 side=Right position=Position { x: 224.0, y: 171.26315 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000072 side=Right position=Position { x: 224.0, y: 183.05263 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000073 side=Right position=Position { x: 224.0, y: 194.8421 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000074 side=Right position=Position { x: 224.0, y: 206.63159 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000075 side=Right position=Position { x: 224.0, y: 218.42105 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000076 side=Right position=Position { x: 224.0, y: 230.21053 } +threshold-SameSidesAdaptSpacing-260 port=956a2026-0912-4000-8000-000000000077 side=Right position=Position { x: 224.0, y: 242.0 } +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 29.794737 }, Position { x: 242.0, y: 29.794737 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 41.589474 }, Position { x: 242.0, y: 41.589474 }, Position { x: 1890.0, y: 41.589474 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 53.384212 }, Position { x: 242.0, y: 53.384212 }, Position { x: 1890.0, y: 53.384212 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 65.17895 }, Position { x: 242.0, y: 65.17895 }, Position { x: 1066.0, y: 65.17895 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 76.97368 }, Position { x: 242.0, y: 76.97368 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 88.768425 }, Position { x: 242.0, y: 88.768425 }, Position { x: 1896.0, y: 88.768425 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 100.56316 }, Position { x: 242.0, y: 100.56316 }, Position { x: 1890.0, y: 100.56316 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 112.357895 }, Position { x: 242.0, y: 112.357895 }, Position { x: 1890.0, y: 112.357895 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 224.0, y: 124.15263 }, Position { x: 242.0, y: 124.15263 }, Position { x: 242.0, y: 272.1 }, Position { x: 1890.0, y: 272.1 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 224.0, y: 135.94736 }, Position { x: 242.0, y: 135.94736 }, Position { x: 1890.0, y: 135.94736 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 224.0, y: 147.74211 }, Position { x: 242.0, y: 147.74211 }, Position { x: 1890.0, y: 147.74211 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 224.0, y: 159.53685 }, Position { x: 242.0, y: 159.53685 }, Position { x: 242.0, y: 280.76843 }, Position { x: 1890.0, y: 280.76843 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 224.0, y: 171.33159 }, Position { x: 242.0, y: 171.33159 }, Position { x: 236.0, y: 171.33159 }, Position { x: 236.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 224.0, y: 183.12633 }, Position { x: 242.0, y: 183.12633 }, Position { x: 1890.0, y: 183.12633 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 224.0, y: 194.92105 }, Position { x: 242.0, y: 194.92105 }, Position { x: 242.0, y: 298.4605 }, Position { x: 1890.0, y: 298.4605 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 224.0, y: 206.71579 }, Position { x: 242.0, y: 206.71579 }, Position { x: 242.0, y: 304.3579 }, Position { x: 1890.0, y: 304.3579 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 224.0, y: 218.51054 }, Position { x: 242.0, y: 218.51054 }, Position { x: 1890.0, y: 218.51054 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 224.0, y: 230.30527 }, Position { x: 242.0, y: 230.30527 }, Position { x: 242.0, y: 316.15265 }, Position { x: 1890.0, y: 316.15265 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 224.0, y: 242.09999 }, Position { x: 242.0, y: 242.09999 }, Position { x: 242.0, y: 322.05 }, Position { x: 1890.0, y: 322.05 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-SameSidesAdaptSpacing-260.1 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 260.1 } LRTB=[0, 20, 0, 0] gap=11.7947235 warnings=0 length=39142.996 bends=54 blocked_stubs=[] +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 29.794737 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 41.589474 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 53.384212 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 65.17895 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 76.97368 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 88.768425 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 100.56316 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 112.357895 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-00000000006d side=Right position=Position { x: 224.0, y: 124.15263 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-00000000006e side=Right position=Position { x: 224.0, y: 135.94736 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-00000000006f side=Right position=Position { x: 224.0, y: 147.74211 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000070 side=Right position=Position { x: 224.0, y: 159.53685 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000071 side=Right position=Position { x: 224.0, y: 171.33159 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000072 side=Right position=Position { x: 224.0, y: 183.12633 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000073 side=Right position=Position { x: 224.0, y: 194.92105 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000074 side=Right position=Position { x: 224.0, y: 206.71579 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000075 side=Right position=Position { x: 224.0, y: 218.51054 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000076 side=Right position=Position { x: 224.0, y: 230.30527 } +threshold-SameSidesAdaptSpacing-260.1 port=956a2026-0912-4000-8000-000000000077 side=Right position=Position { x: 224.0, y: 242.09999 } +threshold SameSidesAdaptSpacing: adjacent side changes=[0, 0]; source prediction capacity=[12,0], controls=[0,0] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 49.985714 }, Position { x: 242.0, y: 49.985714 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 81.97143 }, Position { x: 242.0, y: 81.97143 }, Position { x: 1890.0, y: 81.97143 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 113.95714 }, Position { x: 242.0, y: 113.95714 }, Position { x: 1890.0, y: 113.95714 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 145.94286 }, Position { x: 242.0, y: 145.94286 }, Position { x: 1890.0, y: 145.94286 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 177.92857 }, Position { x: 242.0, y: 177.92857 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 209.91428 }, Position { x: 242.0, y: 209.91428 }, Position { x: 1890.0, y: 209.91428 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 241.90001 }, Position { x: 242.0, y: 241.90001 }, Position { x: 1890.0, y: 241.90001 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 0.0, y: 18.0 }, Position { x: -18.0, y: 18.0 }, Position { x: -18.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 18.0, y: 0.0 }, Position { x: 18.0, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 18.0, y: 259.9 }, Position { x: 18.0, y: 277.9 }, Position { x: 18.0, y: 339.95 }, Position { x: 1890.0, y: 339.95 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 0.0, y: 92.63333 }, Position { x: -18.0, y: 92.63333 }, Position { x: -18.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 80.66667, y: 0.0 }, Position { x: 80.66667, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 80.66667, y: 259.9 }, Position { x: 80.66667, y: 277.9 }, Position { x: 1890.0, y: 277.9 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 0.0, y: 167.26666 }, Position { x: -18.0, y: 167.26666 }, Position { x: -18.0, y: 480.0 }, Position { x: 1890.0, y: 480.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 143.33334, y: 0.0 }, Position { x: 143.33334, y: -18.0 }, Position { x: 143.33334, y: -12.0 }, Position { x: 1890.0, y: -12.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 143.33334, y: 259.9 }, Position { x: 143.33334, y: 277.9 }, Position { x: 143.33334, y: 339.95 }, Position { x: 1890.0, y: 339.95 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 0.0, y: 241.89998 }, Position { x: -18.0, y: 241.89998 }, Position { x: -18.0, y: 321.94998 }, Position { x: 1890.0, y: 321.94998 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 206.0, y: 0.0 }, Position { x: 206.0, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 206.0, y: 259.9 }, Position { x: 206.0, y: 277.9 }, Position { x: 206.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-259.9 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 259.9 } LRTB=[4, 8, 4, 4] gap=31.985703 warnings=0 length=41393.008 bends=54 blocked_stubs=[] +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 49.985714 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 81.97143 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 113.95714 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 145.94286 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 177.92857 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 209.91428 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 241.90001 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-00000000006c side=Left position=Position { x: 0.0, y: 18.0 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-00000000006d side=Top position=Position { x: 18.0, y: 0.0 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-00000000006e side=Bottom position=Position { x: 18.0, y: 259.9 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-00000000006f side=Left position=Position { x: 0.0, y: 92.63333 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000070 side=Top position=Position { x: 80.66667, y: 0.0 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000071 side=Bottom position=Position { x: 80.66667, y: 259.9 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000072 side=Left position=Position { x: 0.0, y: 167.26666 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000073 side=Top position=Position { x: 143.33334, y: 0.0 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000074 side=Bottom position=Position { x: 143.33334, y: 259.9 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000075 side=Left position=Position { x: 0.0, y: 241.89998 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000076 side=Top position=Position { x: 206.0, y: 0.0 } +threshold-CapacityAware-259.9 port=956a2026-0912-4000-8000-000000000077 side=Bottom position=Position { x: 206.0, y: 259.9 } +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 46.0 }, Position { x: 242.0, y: 46.0 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 74.0 }, Position { x: 242.0, y: 74.0 }, Position { x: 1890.0, y: 74.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 102.0 }, Position { x: 242.0, y: 102.0 }, Position { x: 1890.0, y: 102.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 130.0 }, Position { x: 242.0, y: 130.0 }, Position { x: 1890.0, y: 130.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 158.0 }, Position { x: 242.0, y: 158.0 }, Position { x: 1066.0, y: 158.0 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 186.0 }, Position { x: 242.0, y: 186.0 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 214.0 }, Position { x: 242.0, y: 214.0 }, Position { x: 1890.0, y: 214.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 242.0 }, Position { x: 242.0, y: 242.0 }, Position { x: 1890.0, y: 242.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 0.0, y: 18.0 }, Position { x: -18.0, y: 18.0 }, Position { x: -18.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 18.0, y: 0.0 }, Position { x: 18.0, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 18.0, y: 260.0 }, Position { x: 18.0, y: 278.0 }, Position { x: 18.0, y: 340.0 }, Position { x: 1890.0, y: 340.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 0.0, y: 92.666664 }, Position { x: -18.0, y: 92.666664 }, Position { x: -18.0, y: 480.0 }, Position { x: 1890.0, y: 480.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 80.66667, y: 0.0 }, Position { x: 80.66667, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 112.0, y: 260.0 }, Position { x: 112.0, y: 278.0 }, Position { x: 1890.0, y: 278.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 0.0, y: 167.33333 }, Position { x: -18.0, y: 167.33333 }, Position { x: -18.0, y: 284.66666 }, Position { x: 1890.0, y: 284.66666 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 143.33334, y: 0.0 }, Position { x: 143.33334, y: -18.0 }, Position { x: 143.33334, y: -12.0 }, Position { x: 1890.0, y: -12.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 206.0, y: 260.0 }, Position { x: 206.0, y: 278.0 }, Position { x: 206.0, y: 340.0 }, Position { x: 1890.0, y: 340.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 0.0, y: 242.0 }, Position { x: -18.0, y: 242.0 }, Position { x: -18.0, y: 322.0 }, Position { x: 1890.0, y: 322.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 206.0, y: 0.0 }, Position { x: 206.0, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 260.0 } LRTB=[4, 9, 4, 3] gap=28 warnings=0 length=41410 bends=55 blocked_stubs=[] +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 46.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 74.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 102.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 130.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 158.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 186.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 214.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 242.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-00000000006d side=Left position=Position { x: 0.0, y: 18.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-00000000006e side=Top position=Position { x: 18.0, y: 0.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-00000000006f side=Bottom position=Position { x: 18.0, y: 260.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000070 side=Left position=Position { x: 0.0, y: 92.666664 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000071 side=Top position=Position { x: 80.66667, y: 0.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000072 side=Bottom position=Position { x: 112.0, y: 260.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000073 side=Left position=Position { x: 0.0, y: 167.33333 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000074 side=Top position=Position { x: 143.33334, y: 0.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000075 side=Bottom position=Position { x: 206.0, y: 260.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000076 side=Left position=Position { x: 0.0, y: 242.0 } +threshold-CapacityAware-260 port=956a2026-0912-4000-8000-000000000077 side=Top position=Position { x: 206.0, y: 0.0 } +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 46.0125 }, Position { x: 242.0, y: 46.0125 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 74.025 }, Position { x: 242.0, y: 74.025 }, Position { x: 1890.0, y: 74.025 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 102.037506 }, Position { x: 242.0, y: 102.037506 }, Position { x: 1890.0, y: 102.037506 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 130.05 }, Position { x: 242.0, y: 130.05 }, Position { x: 1890.0, y: 130.05 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 158.0625 }, Position { x: 242.0, y: 158.0625 }, Position { x: 1066.0, y: 158.0625 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 186.07501 }, Position { x: 242.0, y: 186.07501 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 214.08751 }, Position { x: 242.0, y: 214.08751 }, Position { x: 1890.0, y: 214.08751 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f0 points=[Position { x: 224.0, y: 242.1 }, Position { x: 242.0, y: 242.1 }, Position { x: 1890.0, y: 242.1 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f1 points=[Position { x: 0.0, y: 18.0 }, Position { x: -18.0, y: 18.0 }, Position { x: -18.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f2 points=[Position { x: 18.0, y: 0.0 }, Position { x: 18.0, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f3 points=[Position { x: 18.0, y: 260.1 }, Position { x: 18.0, y: 278.1 }, Position { x: 18.0, y: 340.05 }, Position { x: 1890.0, y: 340.05 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f4 points=[Position { x: 0.0, y: 92.700005 }, Position { x: -18.0, y: 92.700005 }, Position { x: -18.0, y: 480.0 }, Position { x: 1890.0, y: 480.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f5 points=[Position { x: 80.66667, y: 0.0 }, Position { x: 80.66667, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f6 points=[Position { x: 112.0, y: 260.1 }, Position { x: 112.0, y: 278.1 }, Position { x: 1890.0, y: 278.1 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f7 points=[Position { x: 0.0, y: 167.40001 }, Position { x: -18.0, y: 167.40001 }, Position { x: -18.0, y: 284.7 }, Position { x: 1890.0, y: 284.7 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f8 points=[Position { x: 143.33334, y: 0.0 }, Position { x: 143.33334, y: -18.0 }, Position { x: 143.33334, y: -12.0 }, Position { x: 1890.0, y: -12.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003f9 points=[Position { x: 206.0, y: 260.1 }, Position { x: 206.0, y: 278.1 }, Position { x: 206.0, y: 340.05 }, Position { x: 1890.0, y: 340.05 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003fa points=[Position { x: 0.0, y: 242.10002 }, Position { x: -18.0, y: 242.10002 }, Position { x: -18.0, y: 322.05002 }, Position { x: 1890.0, y: 322.05002 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 edge=956a2026-0912-4000-8000-0000000003fb points=[Position { x: 206.0, y: 0.0 }, Position { x: 206.0, y: -18.0 }, Position { x: 1896.0, y: -18.0 }, Position { x: 1896.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +threshold-CapacityAware-260.1 bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 260.1 } LRTB=[4, 9, 4, 3] gap=28.012497 warnings=0 length=41409.047 bends=55 blocked_stubs=[] +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 46.0125 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 74.025 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 102.037506 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 130.05 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 158.0625 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 186.07501 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 214.08751 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-00000000006c side=Right position=Position { x: 224.0, y: 242.1 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-00000000006d side=Left position=Position { x: 0.0, y: 18.0 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-00000000006e side=Top position=Position { x: 18.0, y: 0.0 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-00000000006f side=Bottom position=Position { x: 18.0, y: 260.1 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000070 side=Left position=Position { x: 0.0, y: 92.700005 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000071 side=Top position=Position { x: 80.66667, y: 0.0 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000072 side=Bottom position=Position { x: 112.0, y: 260.1 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000073 side=Left position=Position { x: 0.0, y: 167.40001 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000074 side=Top position=Position { x: 143.33334, y: 0.0 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000075 side=Bottom position=Position { x: 206.0, y: 260.1 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000076 side=Left position=Position { x: 0.0, y: 242.10002 } +threshold-CapacityAware-260.1 port=956a2026-0912-4000-8000-000000000077 side=Top position=Position { x: 206.0, y: 0.0 } +threshold CapacityAware: adjacent side changes=[12, 0]; source prediction capacity=[12,0], controls=[0,0] + +thread 'a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports' (432) panicked at C:\Users\User\Documents\Git\ARCADIA-Studio\.local\resize-port-falsifiers-20260912\crates\oa-core\tests\experimental_port_policy_falsifiers.rs:322:5: +Prospective resize-stability criterion failed: ["CapacityAware changes [12, 0] sides while zero/one move suffices"] +note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace +FAILED + +failures: + +failures: + a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports + +test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.22s + diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.arcadia new file mode 100644 index 00000000..d3452df2 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.arcadia @@ -0,0 +1,250 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_actor unrelated_top_obstacle "Unrelated top obstacle" id "956a2026-0912-4000-8000-00000000000c" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 160.0; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + + node view_unrelated_top_obstacle id "956a2026-0912-4000-8000-00000000002a" { + collapsed false; + diagram @sa_overview; + element @unrelated_top_obstacle; + position { + x 0.0; + y -150.0; + }; + size { + height 132.0; + width 224.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.projection.json new file mode 100644 index 00000000..54746ef6 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.projection.json @@ -0,0 +1,209 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 160.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-00000000002a", + "element": "956a2026-0912-4000-8000-00000000000c", + "position": { + "x": 0.0, + "y": -150.0 + }, + "size": { + "width": 224.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 0.0, + "y": 80.0 + }, + "side": "Left" + }, + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 49.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 80.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 111.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 142.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 112.0, + "y": 0.0 + }, + "side": "Top" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 112.0, + "y": 160.0 + }, + "side": "Bottom" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.routing.txt new file mode 100644 index 00000000..9a621659 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-CapacityAware.routing.txt @@ -0,0 +1,436 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 49.0, + }, + Position { + x: 242.0, + y: 49.0, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 889.5, + y: 402.0, + }, + center: Position { + x: 889.5, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 846.5, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 80.0, + }, + Position { + x: 242.0, + y: 80.0, + }, + Position { + x: 1890.0, + y: 80.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.5, + anchor: Position { + x: 1227.0, + y: 80.0, + }, + center: Position { + x: 1227.0, + y: 62.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1184.0, + y: 50.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 111.0, + }, + Position { + x: 242.0, + y: 111.0, + }, + Position { + x: 1890.0, + y: 111.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.45, + anchor: Position { + x: 1112.75, + y: 111.0, + }, + center: Position { + x: 1112.75, + y: 65.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1069.75, + y: 53.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 142.0, + }, + Position { + x: 242.0, + y: 142.0, + }, + Position { + x: 1890.0, + y: 142.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1196.0, + y: 142.0, + }, + center: Position { + x: 1196.0, + y: 160.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1153.0, + y: 148.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 0.0, + y: 80.0, + }, + Position { + x: -18.0, + y: 80.0, + }, + Position { + x: -18.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.5, + anchor: Position { + x: 775.0, + y: 402.0, + }, + center: Position { + x: 775.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 732.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 112.0, + y: 0.0, + }, + Position { + x: 112.0, + y: -18.0, + }, + Position { + x: 1890.0, + y: -18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.5, + anchor: Position { + x: 1211.0, + y: -18.0, + }, + center: Position { + x: 1211.0, + y: -36.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1168.0, + y: -48.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [ + NoClearPath, + ], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 112.0, + y: 160.0, + }, + Position { + x: 112.0, + y: 178.0, + }, + Position { + x: 112.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 967.0, + y: 324.0, + }, + center: Position { + x: 967.0, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 924.0, + y: 294.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: -18.0, + y: -150.0, + }, + size: Size { + width: 2110.0, + height: 618.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.arcadia new file mode 100644 index 00000000..d3452df2 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.arcadia @@ -0,0 +1,250 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_actor unrelated_top_obstacle "Unrelated top obstacle" id "956a2026-0912-4000-8000-00000000000c" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 160.0; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + + node view_unrelated_top_obstacle id "956a2026-0912-4000-8000-00000000002a" { + collapsed false; + diagram @sa_overview; + element @unrelated_top_obstacle; + position { + x 0.0; + y -150.0; + }; + size { + height 132.0; + width 224.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.projection.json new file mode 100644 index 00000000..e88dc9b1 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.projection.json @@ -0,0 +1,209 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 232.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-00000000002a", + "element": "956a2026-0912-4000-8000-00000000000c", + "position": { + "x": 0.0, + "y": -150.0 + }, + "size": { + "width": 224.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 46.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 74.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 102.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 130.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 158.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 186.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 214.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.routing.txt new file mode 100644 index 00000000..5ec34e98 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-Current.routing.txt @@ -0,0 +1,438 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 46.0, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 888.0, + y: 402.0, + }, + center: Position { + x: 888.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 845.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 74.0, + }, + Position { + x: 242.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 74.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.5, + anchor: Position { + x: 1230.0, + y: 74.0, + }, + center: Position { + x: 1230.0, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1187.0, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 102.0, + }, + Position { + x: 242.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 102.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.45, + anchor: Position { + x: 1116.8, + y: 102.0, + }, + center: Position { + x: 1116.8, + y: 56.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1073.8, + y: 44.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 130.0, + }, + Position { + x: 242.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 130.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.5, + anchor: Position { + x: 1202.0, + y: 130.0, + }, + center: Position { + x: 1202.0, + y: 148.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1159.0, + y: 136.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 158.0, + }, + Position { + x: 242.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 158.0, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.6, + anchor: Position { + x: 1136.8, + y: 402.0, + }, + center: Position { + x: 1136.8, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1093.8, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 186.0, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.45, + anchor: Position { + x: 941.0, + y: 324.0, + }, + center: Position { + x: 941.0, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 898.0, + y: 294.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 214.0, + }, + Position { + x: 242.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 214.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1160.0, + y: 214.0, + }, + center: Position { + x: 1160.0, + y: 196.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1117.0, + y: 184.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -150.0, + }, + size: Size { + width: 2092.0, + height: 618.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.arcadia b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.arcadia new file mode 100644 index 00000000..d3452df2 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.arcadia @@ -0,0 +1,250 @@ +arcadia 7; +project mission "Untitled mission" id "956a2026-0912-4000-8000-000000000001" { + description ""; + + sa_system owner "Owner" id "956a2026-0912-4000-8000-00000000000a" { + description ""; + parent none; + } + + sa_actor far_right_peer "Far right peer" id "956a2026-0912-4000-8000-00000000000b" { + description ""; + parent none; + } + + sa_actor unrelated_top_obstacle "Unrelated top obstacle" id "956a2026-0912-4000-8000-00000000000c" { + description ""; + parent none; + } + + sa_port peer_interface "Peer interface" id "956a2026-0912-4000-8000-000000000014" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @far_right_peer; + } + + sa_port interface_0 "Interface 0" id "956a2026-0912-4000-8000-000000000064" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_1 "Interface 1" id "956a2026-0912-4000-8000-000000000065" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_2 "Interface 2" id "956a2026-0912-4000-8000-000000000066" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_3 "Interface 3" id "956a2026-0912-4000-8000-000000000067" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_4 "Interface 4" id "956a2026-0912-4000-8000-000000000068" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_5 "Interface 5" id "956a2026-0912-4000-8000-000000000069" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_6 "Interface 6" id "956a2026-0912-4000-8000-00000000006a" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + sa_port interface_7 "Interface 7" id "956a2026-0912-4000-8000-00000000006b" { + contract { + Component { + kind Standard; + orientation Unset; + }; + }; + description ""; + legacy none; + parent @owner; + } + + boundary_exchange exchange_0 "Exchange 0" id "956a2026-0912-4000-8000-0000000003e8" { + description ""; + items []; + oriented true; + source @interface_0; + target @peer_interface; + } + + boundary_exchange exchange_1 "Exchange 1" id "956a2026-0912-4000-8000-0000000003e9" { + description ""; + items []; + oriented true; + source @interface_1; + target @peer_interface; + } + + boundary_exchange exchange_2 "Exchange 2" id "956a2026-0912-4000-8000-0000000003ea" { + description ""; + items []; + oriented true; + source @interface_2; + target @peer_interface; + } + + boundary_exchange exchange_3 "Exchange 3" id "956a2026-0912-4000-8000-0000000003eb" { + description ""; + items []; + oriented true; + source @interface_3; + target @peer_interface; + } + + boundary_exchange exchange_4 "Exchange 4" id "956a2026-0912-4000-8000-0000000003ec" { + description ""; + items []; + oriented true; + source @interface_4; + target @peer_interface; + } + + boundary_exchange exchange_5 "Exchange 5" id "956a2026-0912-4000-8000-0000000003ed" { + description ""; + items []; + oriented true; + source @interface_5; + target @peer_interface; + } + + boundary_exchange exchange_6 "Exchange 6" id "956a2026-0912-4000-8000-0000000003ee" { + description ""; + items []; + oriented true; + source @interface_6; + target @peer_interface; + } + + boundary_exchange exchange_7 "Exchange 7" id "956a2026-0912-4000-8000-0000000003ef" { + description ""; + items []; + oriented true; + source @interface_7; + target @peer_interface; + } + + diagram sa_overview "SA overview" id "956a2026-0912-4000-8000-00000000001e" { + description ""; + layer Sa; + projection Overview; + routes []; + view_options { + coverage "All"; + exchange_labels "Name"; + hidden_edges []; + participant_categories "All"; + relation_kinds "All"; + work_categories "All"; + work_contexts "All"; + }; + } + + node view_owner id "956a2026-0912-4000-8000-000000000028" { + collapsed false; + diagram @sa_overview; + element @owner; + position { + x 0.0; + y 0.0; + }; + size { + height 160.0; + width 224.0; + }; + } + + node view_far_right_peer id "956a2026-0912-4000-8000-000000000029" { + collapsed false; + diagram @sa_overview; + element @far_right_peer; + position { + x 1908.0; + y 336.0; + }; + size { + height 132.0; + width 184.0; + }; + } + + node view_unrelated_top_obstacle id "956a2026-0912-4000-8000-00000000002a" { + collapsed false; + diagram @sa_overview; + element @unrelated_top_obstacle; + position { + x 0.0; + y -150.0; + }; + size { + height 132.0; + width 224.0; + }; + } + +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.projection.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.projection.json new file mode 100644 index 00000000..9b3b53b4 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.projection.json @@ -0,0 +1,209 @@ +{ + "nodes": [ + { + "id": "956a2026-0912-4000-8000-000000000028", + "element": "956a2026-0912-4000-8000-00000000000a", + "position": { + "x": 0.0, + "y": 0.0 + }, + "size": { + "width": 224.0, + "height": 160.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-000000000029", + "element": "956a2026-0912-4000-8000-00000000000b", + "position": { + "x": 1908.0, + "y": 336.0 + }, + "size": { + "width": 184.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + }, + { + "id": "956a2026-0912-4000-8000-00000000002a", + "element": "956a2026-0912-4000-8000-00000000000c", + "position": { + "x": 0.0, + "y": -150.0 + }, + "size": { + "width": 224.0, + "height": 132.0 + }, + "visual_parent": null, + "depth": 0, + "collapsed": false, + "allocation_summary": false + } + ], + "edges": [ + { + "id": "956a2026-0912-4000-8000-0000000003e8", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000064", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003e9", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000065", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ea", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000066", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003eb", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000067", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ec", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000068", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ed", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-000000000069", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ee", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006a", + "target_port": "956a2026-0912-4000-8000-000000000014" + }, + { + "id": "956a2026-0912-4000-8000-0000000003ef", + "source": "956a2026-0912-4000-8000-000000000028", + "target": "956a2026-0912-4000-8000-000000000029", + "trace": false, + "oriented": true, + "source_port": "956a2026-0912-4000-8000-00000000006b", + "target_port": "956a2026-0912-4000-8000-000000000014" + } + ], + "ports": [ + { + "element": "956a2026-0912-4000-8000-000000000064", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 18.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000065", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 35.714287 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000066", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 53.42857 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000067", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 71.14285 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000068", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 88.85713 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000069", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 106.57143 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006a", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 124.28572 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-00000000006b", + "owner": "956a2026-0912-4000-8000-000000000028", + "position": { + "x": 224.0, + "y": 142.0 + }, + "side": "Right" + }, + { + "element": "956a2026-0912-4000-8000-000000000014", + "owner": "956a2026-0912-4000-8000-000000000029", + "position": { + "x": 1908.0, + "y": 402.0 + }, + "side": "Left" + } + ] +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.routing.txt b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.routing.txt new file mode 100644 index 00000000..4763cf18 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.routing.txt @@ -0,0 +1,438 @@ +RoutedView { + edges: { + 956a2026-0912-4000-8000-0000000003e8: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e8, + points: [ + Position { + x: 224.0, + y: 18.0, + }, + Position { + x: 242.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 18.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 0", + fraction: 0.5, + anchor: Position { + x: 1258.0, + y: 18.0, + }, + center: Position { + x: 1258.0, + y: 0.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1215.0, + y: -12.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003e9: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003e9, + points: [ + Position { + x: 224.0, + y: 35.714287, + }, + Position { + x: 242.0, + y: 35.714287, + }, + Position { + x: 242.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 1", + fraction: 0.5, + anchor: Position { + x: 882.8571, + y: 402.0, + }, + center: Position { + x: 882.8571, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 839.8571, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ea: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ea, + points: [ + Position { + x: 224.0, + y: 53.42857, + }, + Position { + x: 242.0, + y: 53.42857, + }, + Position { + x: 1890.0, + y: 53.42857, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 2", + fraction: 0.5, + anchor: Position { + x: 1240.2856, + y: 53.42857, + }, + center: Position { + x: 1240.2856, + y: 35.42857, + }, + bounds: RoutingBounds { + position: Position { + x: 1197.2856, + y: 23.42857, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003eb: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003eb, + points: [ + Position { + x: 224.0, + y: 71.14285, + }, + Position { + x: 242.0, + y: 71.14285, + }, + Position { + x: 1890.0, + y: 71.14285, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 3", + fraction: 0.5, + anchor: Position { + x: 1231.4286, + y: 71.14285, + }, + center: Position { + x: 1231.4286, + y: 89.14285, + }, + bounds: RoutingBounds { + position: Position { + x: 1188.4286, + y: 77.14285, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ec: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ec, + points: [ + Position { + x: 224.0, + y: 88.85713, + }, + Position { + x: 242.0, + y: 88.85713, + }, + Position { + x: 1066.0, + y: 88.85713, + }, + Position { + x: 1066.0, + y: 402.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 4", + fraction: 0.65, + anchor: Position { + x: 1209.0, + y: 402.0, + }, + center: Position { + x: 1209.0, + y: 384.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1166.0, + y: 372.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ed: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ed, + points: [ + Position { + x: 224.0, + y: 106.57143, + }, + Position { + x: 242.0, + y: 106.57143, + }, + Position { + x: 242.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 324.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 5", + fraction: 0.5, + anchor: Position { + x: 996.2857, + y: 324.0, + }, + center: Position { + x: 996.2857, + y: 306.0, + }, + bounds: RoutingBounds { + position: Position { + x: 953.2857, + y: 294.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ee: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ee, + points: [ + Position { + x: 224.0, + y: 124.28572, + }, + Position { + x: 242.0, + y: 124.28572, + }, + Position { + x: 1890.0, + y: 124.28572, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 6", + fraction: 0.4, + anchor: Position { + x: 1008.6857, + y: 124.28572, + }, + center: Position { + x: 1008.6857, + y: 106.28572, + }, + bounds: RoutingBounds { + position: Position { + x: 965.6857, + y: 94.28572, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + 956a2026-0912-4000-8000-0000000003ef: RoutedEdge { + id: 956a2026-0912-4000-8000-0000000003ef, + points: [ + Position { + x: 224.0, + y: 142.0, + }, + Position { + x: 242.0, + y: 142.0, + }, + Position { + x: 1890.0, + y: 142.0, + }, + Position { + x: 1890.0, + y: 402.0, + }, + Position { + x: 1908.0, + y: 402.0, + }, + ], + label: EdgeLabelGeometry { + text: "Exchange 7", + fraction: 0.5, + anchor: Position { + x: 1196.0, + y: 142.0, + }, + center: Position { + x: 1196.0, + y: 160.0, + }, + bounds: RoutingBounds { + position: Position { + x: 1153.0, + y: 148.0, + }, + size: Size { + width: 86.0, + height: 24.0, + }, + }, + }, + pins: [], + pin_fractions: [], + warnings: [], + custom_suspended: false, + search_budget_before: 65536, + }, + }, + bounds: RoutingBounds { + position: Position { + x: 0.0, + y: -150.0, + }, + size: Size { + width: 2092.0, + height: 618.0, + }, + }, +} \ No newline at end of file diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2.json b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2.json new file mode 100644 index 00000000..784e7a93 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2.json @@ -0,0 +1,59 @@ +{ + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe", + "capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner", + "--exact", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:23:04.683161+00:00", + "end": "2026-09-12T22:23:04.768932+00:00", + "seconds": 0.078, + "exit": 101, + "log": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2.log", + "log_sha256": "86dffa487d3be1ea2121979575d09655ba602629314816a583b9fe8f50dd6020", + "test": "capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner", + "expected_exit": 101, + "expected_acceptance_failure_observed": true, + "test_passed": false, + "changed_inputs": [], + "changed_binary": [], + "geometry": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-CapacityAware.arcadia": { + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367", + "bytes": 6357 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-CapacityAware.projection.json": { + "sha256": "9068d2653b5b16b3f2d96a128fb54af7b5727da5fa25a6cd21292a28a27640c7", + "bytes": 5836 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-CapacityAware.routing.txt": { + "sha256": "202a50ed9372b0a467b18767254089468119d2d10e155a9778139b110eec04b4", + "bytes": 12559 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-Current.arcadia": { + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367", + "bytes": 6357 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-Current.projection.json": { + "sha256": "3cb12f1eb203cc7eab95f13d24579878660164839234b40925f9d2d498deced6", + "bytes": 5843 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-Current.routing.txt": { + "sha256": "3436416d36d8d3bd214d44fab749d15940bc2906debe4d242cf31cba25e546ed", + "bytes": 12630 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-SameSidesAdaptSpacing.arcadia": { + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367", + "bytes": 6357 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-SameSidesAdaptSpacing.projection.json": { + "sha256": "6731adb995e9989b5f7d19bf0838adf3f0fdb88ccae3380bd845cfad948b4cd4", + "bytes": 5866 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-SameSidesAdaptSpacing.routing.txt": { + "sha256": "40fd5a8531bc8097a46e0d0893c98eebac5282f2b98f97e1dd6a516a220ba27a", + "bytes": 12767 + } + } +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/case-2.log b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2.log new file mode 100644 index 00000000..ee1484ba --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/case-2.log @@ -0,0 +1,70 @@ + +running 1 test +test capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner ... obstacle-Current edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 46.0 }, Position { x: 242.0, y: 46.0 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 74.0 }, Position { x: 242.0, y: 74.0 }, Position { x: 1890.0, y: 74.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 102.0 }, Position { x: 242.0, y: 102.0 }, Position { x: 1890.0, y: 102.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 130.0 }, Position { x: 242.0, y: 130.0 }, Position { x: 1890.0, y: 130.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 158.0 }, Position { x: 242.0, y: 158.0 }, Position { x: 1066.0, y: 158.0 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 186.0 }, Position { x: 242.0, y: 186.0 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 214.0 }, Position { x: 242.0, y: 214.0 }, Position { x: 1890.0, y: 214.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-Current bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 232.0 } LRTB=[0, 8, 0, 0] gap=28 warnings=0 length=15760 bends=18 blocked_stubs=[] +obstacle-Current port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +obstacle-Current port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 46.0 } +obstacle-Current port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 74.0 } +obstacle-Current port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 102.0 } +obstacle-Current port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 130.0 } +obstacle-Current port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 158.0 } +obstacle-Current port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 186.0 } +obstacle-Current port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 214.0 } +obstacle Current: independently blocked=[], NoClearPath=[]; source prediction capacity Top=(112,0), stub=(112,-18), obstacle inflation y=[-162,-6] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 35.714287 }, Position { x: 242.0, y: 35.714287 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 53.42857 }, Position { x: 242.0, y: 53.42857 }, Position { x: 1890.0, y: 53.42857 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 71.14285 }, Position { x: 242.0, y: 71.14285 }, Position { x: 1890.0, y: 71.14285 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 88.85713 }, Position { x: 242.0, y: 88.85713 }, Position { x: 1066.0, y: 88.85713 }, Position { x: 1066.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 224.0, y: 106.57143 }, Position { x: 242.0, y: 106.57143 }, Position { x: 242.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 224.0, y: 124.28572 }, Position { x: 242.0, y: 124.28572 }, Position { x: 1890.0, y: 124.28572 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 224.0, y: 142.0 }, Position { x: 242.0, y: 142.0 }, Position { x: 1890.0, y: 142.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-SameSidesAdaptSpacing bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 160.0 } LRTB=[0, 8, 0, 0] gap=17.71428 warnings=0 length=16047.999 bends=18 blocked_stubs=[] +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 35.714287 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 53.42857 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 71.14285 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 88.85713 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-000000000069 side=Right position=Position { x: 224.0, y: 106.57143 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-00000000006a side=Right position=Position { x: 224.0, y: 124.28572 } +obstacle-SameSidesAdaptSpacing port=956a2026-0912-4000-8000-00000000006b side=Right position=Position { x: 224.0, y: 142.0 } +obstacle SameSidesAdaptSpacing: independently blocked=[], NoClearPath=[]; source prediction capacity Top=(112,0), stub=(112,-18), obstacle inflation y=[-162,-6] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003e8 points=[Position { x: 224.0, y: 18.0 }, Position { x: 242.0, y: 18.0 }, Position { x: 1890.0, y: 18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003e9 points=[Position { x: 224.0, y: 49.0 }, Position { x: 242.0, y: 49.0 }, Position { x: 242.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003ea points=[Position { x: 224.0, y: 80.0 }, Position { x: 242.0, y: 80.0 }, Position { x: 1890.0, y: 80.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003eb points=[Position { x: 224.0, y: 111.0 }, Position { x: 242.0, y: 111.0 }, Position { x: 1890.0, y: 111.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003ec points=[Position { x: 224.0, y: 142.0 }, Position { x: 242.0, y: 142.0 }, Position { x: 1890.0, y: 142.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003ed points=[Position { x: 0.0, y: 80.0 }, Position { x: -18.0, y: 80.0 }, Position { x: -18.0, y: 402.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003ee points=[Position { x: 112.0, y: 0.0 }, Position { x: 112.0, y: -18.0 }, Position { x: 1890.0, y: -18.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[NoClearPath] +obstacle-CapacityAware edge=956a2026-0912-4000-8000-0000000003ef points=[Position { x: 112.0, y: 160.0 }, Position { x: 112.0, y: 178.0 }, Position { x: 112.0, y: 324.0 }, Position { x: 1890.0, y: 324.0 }, Position { x: 1890.0, y: 402.0 }, Position { x: 1908.0, y: 402.0 }] warnings=[] +obstacle-CapacityAware bounds=Position { x: 0.0, y: 0.0 }/Size { width: 224.0, height: 160.0 } LRTB=[1, 5, 1, 1] gap=31 warnings=1 length=16568 bends=18 blocked_stubs=[(956a2026-0912-4000-8000-00000000006a, 956a2026-0912-4000-8000-00000000002a)] +obstacle-CapacityAware port=956a2026-0912-4000-8000-000000000064 side=Right position=Position { x: 224.0, y: 18.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-000000000065 side=Right position=Position { x: 224.0, y: 49.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-000000000066 side=Right position=Position { x: 224.0, y: 80.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-000000000067 side=Right position=Position { x: 224.0, y: 111.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-000000000068 side=Right position=Position { x: 224.0, y: 142.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-000000000069 side=Left position=Position { x: 0.0, y: 80.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-00000000006a side=Top position=Position { x: 112.0, y: 0.0 } +obstacle-CapacityAware port=956a2026-0912-4000-8000-00000000006b side=Bottom position=Position { x: 112.0, y: 160.0 } +obstacle CapacityAware: independently blocked=[(956a2026-0912-4000-8000-00000000006a, 956a2026-0912-4000-8000-00000000002a)], NoClearPath=[956a2026-0912-4000-8000-0000000003ee]; source prediction capacity Top=(112,0), stub=(112,-18), obstacle inflation y=[-162,-6] +blocked port=956a2026-0912-4000-8000-00000000006a obstacle=956a2026-0912-4000-8000-00000000002a affected_edges=[956a2026-0912-4000-8000-0000000003ee] all_NoClearPath=true + +thread 'capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner' (7584) panicked at C:\Users\User\Documents\Git\ARCADIA-Studio\.local\resize-port-falsifiers-20260912\crates\oa-core\tests\experimental_port_policy_falsifiers.rs:400:5: +Prospective exit-clearance criterion failed: ["CapacityAware introduces blocked stubs [(956a2026-0912-4000-8000-00000000006a, 956a2026-0912-4000-8000-00000000002a)] or routed warnings"] +note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace +FAILED + +failures: + +failures: + capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner + +test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.05s + diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/inputs.json b/harness/experiments/resize-port-policy-20260912/falsifiers/inputs.json new file mode 100644 index 00000000..feaa7690 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/inputs.json @@ -0,0 +1,1284 @@ +{ + "core_source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "test_source": "a95db10ce73d639f59eb1ec1153de26f4967881c", + "toolchain": { + "cargo": "cargo 1.98.1 (797e8a9bc 2026-08-05)", + "rustc": "rustc 1.98.1 (48a229cea 2026-09-01)\nbinary: rustc\ncommit-hash: 48a229ceaefd4985c50990b14116b6d856af0985\ncommit-date: 2026-09-01\nhost: x86_64-pc-windows-gnullvm\nrelease: 1.98.1\nLLVM version: 22.1.8", + "active_toolchain": "stable-x86_64-pc-windows-gnullvm (overridden by 'C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\rust-toolchain.toml')", + "paths": { + "cargo": { + "path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\cargo.exe", + "sha256": "e6f0f24c3a4ec70f1032de84a8260288e8a0c3f43d2a5ac1d2a1c19073fbd910" + }, + "rustc": { + "path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\rustc.exe", + "sha256": "c4c7286b198f95c5da9307ba63e756f94953527d63a33dca877211bc0979baf9" + }, + "linker": { + "path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\llvm-mingw-20260908-ucrt-x86_64\\bin\\clang.exe", + "sha256": "93303edd5791e4b60682f819267a34c349e5f52d052d067e006e76d21cc82ea4" + } + } + }, + "dependencies": { + "serde_json": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_json-b48005beba7e4267.rlib", + "oa_core": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib" + }, + "scope": "Exact committed standalone integration-test bytes; reused matching 7e25 core. No Cargo/root targets.", + "files": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\Cargo.lock": { + "sha256": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf", + "bytes": 119973 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\Cargo.toml": { + "sha256": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62", + "bytes": 400 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-cli\\Cargo.toml": { + "sha256": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde", + "bytes": 279 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\build.rs": { + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9", + "bytes": 45 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\Cargo.toml": { + "sha256": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f", + "bytes": 408 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\examples\\generate_demo.rs": { + "sha256": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661", + "bytes": 795 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\examples\\generate_release1.rs": { + "sha256": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5", + "bytes": 1798 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\examples\\release_dense_views.rs": { + "sha256": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412", + "bytes": 14664 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\examples\\routing_workshop.rs": { + "sha256": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7", + "bytes": 17248 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric\\dimension.rs": { + "sha256": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340", + "bytes": 3045 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric\\exact.rs": { + "sha256": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d", + "bytes": 17338 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric\\fixtures\\r7-literal-boundaries.json": { + "sha256": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181", + "bytes": 6085 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric\\meter.rs": { + "sha256": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4", + "bytes": 7129 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric\\quantity.rs": { + "sha256": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee", + "bytes": 12257 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric\\tests.rs": { + "sha256": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b", + "bytes": 27486 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\analysis_numeric.rs": { + "sha256": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408", + "bytes": 3735 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\data.rs": { + "sha256": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a", + "bytes": 42696 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\demo.rs": { + "sha256": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c", + "bytes": 20657 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\language\\semantic_source.rs": { + "sha256": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29", + "bytes": 7326 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\language.rs": { + "sha256": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765", + "bytes": 99938 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\language_nesting_tests.rs": { + "sha256": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b", + "bytes": 20639 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\lib.rs": { + "sha256": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c", + "bytes": 549 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\adapter.rs": { + "sha256": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5", + "bytes": 9490 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\mod.rs": { + "sha256": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9", + "bytes": 1158 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\model.rs": { + "sha256": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb", + "bytes": 52059 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\README.md": { + "sha256": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9", + "bytes": 1515 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\references.rs": { + "sha256": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20", + "bytes": 13369 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\source.rs": { + "sha256": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6", + "bytes": 21946 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\state_validation.rs": { + "sha256": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0", + "bytes": 15769 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\transitions.rs": { + "sha256": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1", + "bytes": 704 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v2\\validation.rs": { + "sha256": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780", + "bytes": 98736 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v3\\mod.rs": { + "sha256": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722", + "bytes": 23023 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v3\\README.md": { + "sha256": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82", + "bytes": 2128 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\migration_v4.rs": { + "sha256": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70", + "bytes": 4020 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\model.rs": { + "sha256": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb", + "bytes": 66352 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\operations.rs": { + "sha256": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41", + "bytes": 11405 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\persistence.rs": { + "sha256": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14", + "bytes": 31774 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\ports.rs": { + "sha256": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80", + "bytes": 45413 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\projection\\port_capacity_experiment.rs": { + "sha256": "098d7c571e0b8442430f4ccca5aabb93580160e6a0b1a87b7aa7dac5bb18f910", + "bytes": 7675 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\projection\\port_layout.rs": { + "sha256": "395bd3e8323bf1053977b18cae89612881e19a2132dacefda2ff6b9add0d9c6a", + "bytes": 14848 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\projection\\state.rs": { + "sha256": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28", + "bytes": 5233 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\projection.rs": { + "sha256": "de7ca48f0ec56e97e8300e43b5941eeaae76baeb7d6d6d0b3ed562abcec250c0", + "bytes": 22136 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\references.rs": { + "sha256": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb", + "bytes": 21957 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\routing.rs": { + "sha256": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080", + "bytes": 50309 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic\\catalog.rs": { + "sha256": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4", + "bytes": 49407 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic\\historical.rs": { + "sha256": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb", + "bytes": 15271 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic\\linked.rs": { + "sha256": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2", + "bytes": 6035 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic\\mutate.rs": { + "sha256": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d", + "bytes": 22683 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic\\review.rs": { + "sha256": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e", + "bytes": 51116 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic\\types.rs": { + "sha256": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb", + "bytes": 10405 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\semantic.rs": { + "sha256": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239", + "bytes": 540 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\session.rs": { + "sha256": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00", + "bytes": 35237 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\source_files.rs": { + "sha256": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683", + "bytes": 74803 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\source_project\\source_migration.rs": { + "sha256": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95", + "bytes": 4700 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\source_project\\source_structure.rs": { + "sha256": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f", + "bytes": 20225 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\source_project.rs": { + "sha256": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466", + "bytes": 61843 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\state_validation.rs": { + "sha256": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18", + "bytes": 15665 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\topology_context\\analysis.rs": { + "sha256": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65", + "bytes": 20036 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\topology_context\\analysis_tests.rs": { + "sha256": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56", + "bytes": 5258 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\topology_context.rs": { + "sha256": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d", + "bytes": 13734 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\transitions\\communication.rs": { + "sha256": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028", + "bytes": 8634 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\transitions.rs": { + "sha256": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d", + "bytes": 51998 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\validation\\coverage.rs": { + "sha256": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f", + "bytes": 6478 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\validation.rs": { + "sha256": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e", + "bytes": 112792 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\view_options.rs": { + "sha256": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208", + "bytes": 24481 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\src\\view_options_tests.rs": { + "sha256": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208", + "bytes": 21433 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\communication_boundary_scenarios.rs": { + "sha256": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b", + "bytes": 8816 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\communication_means.rs": { + "sha256": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4", + "bytes": 18102 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\coverage_diagnostics.rs": { + "sha256": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4", + "bytes": 20527 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\experimental_port_policy.rs": { + "sha256": "4883ec1b57ac04c37a6ca750c9de07ce06a2e4bcda00be45fde342f5721da05d", + "bytes": 15254 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\experimental_port_policy_falsifiers.rs": { + "sha256": "0a659fad3e5afcf563bacb2f10467bb2428c385ce991c1e7eb8c04207efb3255", + "bytes": 14732 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\fixtures\\v2-coastal-rescue.arcadia": { + "sha256": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3", + "bytes": 29220 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\fixtures\\v2-coastal-rescue.json": { + "sha256": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005", + "bytes": 43990 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\fixtures\\v3-data-contract.arcadia": { + "sha256": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea", + "bytes": 2450 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\fixtures\\v3-data-contract.json": { + "sha256": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2", + "bytes": 8240 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\fixtures\\v4-reviewed-prose.arcadia": { + "sha256": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1", + "bytes": 1222 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\fixtures\\v4-reviewed-prose.json": { + "sha256": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47", + "bytes": 1734 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\language.rs": { + "sha256": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e", + "bytes": 56482 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\port_anchors.rs": { + "sha256": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa", + "bytes": 26893 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\port_migration.rs": { + "sha256": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7", + "bytes": 15620 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\port_source.rs": { + "sha256": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12", + "bytes": 4858 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\prepared_commands.rs": { + "sha256": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b", + "bytes": 9555 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\process_diagnostics.rs": { + "sha256": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906", + "bytes": 1104 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r3_constructor_ack.rs": { + "sha256": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0", + "bytes": 24163 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r3_migration.rs": { + "sha256": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd", + "bytes": 6590 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r3_semantic.rs": { + "sha256": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32", + "bytes": 77473 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r3_source.rs": { + "sha256": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408", + "bytes": 15311 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r6_data.rs": { + "sha256": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155", + "bytes": 41437 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r6_migration.rs": { + "sha256": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1", + "bytes": 9174 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\r6_source.rs": { + "sha256": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6", + "bytes": 9519 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release1_teaching.rs": { + "sha256": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2", + "bytes": 10010 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_capabilities.rs": { + "sha256": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30", + "bytes": 19422 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_diagrams.rs": { + "sha256": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d", + "bytes": 7689 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_language_limits.rs": { + "sha256": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806", + "bytes": 5204 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_ports.rs": { + "sha256": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1", + "bytes": 32740 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_routing.rs": { + "sha256": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462", + "bytes": 23165 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_scenarios.rs": { + "sha256": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f", + "bytes": 41067 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_states.rs": { + "sha256": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811", + "bytes": 26873 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\release_topology.rs": { + "sha256": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9", + "bytes": 17643 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\review_regressions.rs": { + "sha256": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1", + "bytes": 21823 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\route_source.rs": { + "sha256": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb", + "bytes": 7270 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\routing_geometry.rs": { + "sha256": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3", + "bytes": 31890 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\routing_labels.rs": { + "sha256": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6", + "bytes": 5530 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\semantic_artifact_absence_oracle.rs": { + "sha256": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a", + "bytes": 4640 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\semantic_attachments_gui_oracle.rs": { + "sha256": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970", + "bytes": 14957 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\source6_view_contract.rs": { + "sha256": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb", + "bytes": 14307 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\source7_contract.rs": { + "sha256": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f", + "bytes": 43262 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\source_files.rs": { + "sha256": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9", + "bytes": 13168 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\source_identity_updates.rs": { + "sha256": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c", + "bytes": 5139 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\source_nested_updates.rs": { + "sha256": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855", + "bytes": 16892 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\source_project.rs": { + "sha256": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942", + "bytes": 45910 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\state_diagrams.rs": { + "sha256": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5", + "bytes": 23973 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\workflows.rs": { + "sha256": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b", + "bytes": 33426 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-desktop\\Cargo.toml": { + "sha256": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9", + "bytes": 842 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-server\\Cargo.toml": { + "sha256": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982", + "bytes": 778 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\experiments\\source-authoring\\Cargo.toml": { + "sha256": "66d497f9b06827edcc4004cbd74300692d11f4766cab6e52d9e68c75cfb21afe", + "bytes": 188 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\rust-toolchain.toml": { + "sha256": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce", + "bytes": 66 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\allocator-corrected.json": { + "sha256": "1d531dd4684e16dad5412e97637957230e0d726c1aa9d179e39f79fde1ec9d39", + "bytes": 958 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\allocator-corrected.log": { + "sha256": "9f2de355a179c6730dded25d6b1fc21ca88714c9cfcfd3b8b6c451af2e1f972a", + "bytes": 623 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\comparison.json": { + "sha256": "5ec400e7901740ca8ab1f1b005c1a69b1d35e42f4e5bfc1d0c8809ed8d67aa0e", + "bytes": 1077 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\comparison.log": { + "sha256": "51bbf540be96bef4a7b7afbb99ebac4cb40fd85ee66f850ad13b92347e5414ac", + "bytes": 2126 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\inputs.json": { + "sha256": "d9bcb3d51119ad804d8d745175c0c01a03cfb4dc9077102ff124af753fb30ffe", + "bytes": 15811 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\port-anchors.json": { + "sha256": "b18d177dbdee9a8919e5a4cdc83afdb7819fe39aacdf470e4bdd2beb97df4d52", + "bytes": 1485 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\gate-7e25b3d-20260912-01\\port-anchors.log": { + "sha256": "8855361729836a25aa4d0294cd17fb5cc2ef0f83b434bd938be9f205495ea527", + "bytes": 1498 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\.fingerprint\\oa-core-2141d8651d5c8187\\test-integration-test-experimental_port_policy.json": { + "sha256": "3a068c4373f236353fcc8b2296c6455467dbf842f0f7ca8cefd4e23a6bc75988", + "bytes": 1055 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\.fingerprint\\oa-core-2ed83d7f9d3fcdcd\\lib-oa_core": { + "sha256": "1badb4d0164d05d51584c6ebab03f6715da05cdcf6a40017b623e727c80df207", + "bytes": 16 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\.fingerprint\\oa-core-2ed83d7f9d3fcdcd\\lib-oa_core.json": { + "sha256": "9225bc88e4d0f1fa1f0f9e7029b406f80b1830f69836e483da976a1b6247df29", + "bytes": 960 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\.fingerprint\\serde_json-b48005beba7e4267\\lib-serde_json": { + "sha256": "9202101a31af6f8d24edceacbb8300c10dddd94fb496cbf6451c8860133ce784", + "bytes": 16 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\.fingerprint\\serde_json-b48005beba7e4267\\lib-serde_json.json": { + "sha256": "310bedb04f5f35eef3a04e8019f0a204cc0f30b94ca808cb4d702cd7c6403737", + "bytes": 826 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe": { + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b", + "bytes": 18598400 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libautocfg-58f70baf3de29c77.rlib": { + "sha256": "c63111e0ece892913faf34e71e00496929fa454df06bf4c31e8950f507908183", + "bytes": 829224 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libautocfg-58f70baf3de29c77.rmeta": { + "sha256": "ad1718a29595c73a2912efc192e2a7aa552710d939cad95139e5b0b66bf23ec9", + "bytes": 81584 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libcfg_if-805b2ebc84d544f1.rlib": { + "sha256": "424e585af81020a5d0c98fcd06b2437d02a167fdb648abf587d7d2e45d9d1af5", + "bytes": 6586 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libcfg_if-805b2ebc84d544f1.rmeta": { + "sha256": "9089556526659d3882a528b927876648dc08ee04a0e662a1b891e88e69cd4bd9", + "bytes": 5631 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libfastrand-3df248e815d242e1.rlib": { + "sha256": "6e0cd0729662e2eb3ce1d1e1dd730a3b0adea50f7b44a5c3fab87f085d086e6f", + "bytes": 217720 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libfastrand-3df248e815d242e1.rmeta": { + "sha256": "4bb8ff3da4bcd796d6c0e1ee9de0f4f49a984eb0716004feed0cf042e2accec7", + "bytes": 150854 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libgetrandom-6e8efb5a01ff0cbb.rlib": { + "sha256": "c2749c45ed165e898fdb57b0a913a4d5aa0f384c8b42a483aaabf3893d31e744", + "bytes": 80968 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libgetrandom-6e8efb5a01ff0cbb.rmeta": { + "sha256": "acc33647ba2f78c8747bb7cbe74fcad014e595f06c61f7c6a101b6597567be40", + "bytes": 58994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libitoa-971c3e13d32ffcf2.rlib": { + "sha256": "2e9fc8f3267756b543b63da676d34b5aaf869f2e89314a4081fcba2289b6979e", + "bytes": 131162 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libitoa-971c3e13d32ffcf2.rmeta": { + "sha256": "a44adea9df584d2c7b00309c94ad589823f8b042b7935ce6b7b577eb2bbdb86a", + "bytes": 60965 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libmemchr-088af8780d4df76d.rlib": { + "sha256": "b2a5f384c9e1800d13d86cef02a42bb6e1e330aa24b783f8cace17abbcc2cc9b", + "bytes": 1817742 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libmemchr-088af8780d4df76d.rmeta": { + "sha256": "3f7f43aefbbb16cbd22352c70529bb5bcc972a52356654290a18783910212391", + "bytes": 1300029 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libnum_bigint-7e87a41b738c784b.rlib": { + "sha256": "344e1ce56d27acbcf42ec675c7738c6ea8649fe5bc18c6219d1848e766600ad7", + "bytes": 3280862 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libnum_bigint-7e87a41b738c784b.rmeta": { + "sha256": "380fd0d05e81db47bec229b53ce5451bc2fba9ab3f784ac4151a110ccb2371c7", + "bytes": 2013279 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libnum_integer-cf43e8f5b615e1d9.rlib": { + "sha256": "5f3bf2b79485d138aeec96f8e18ff6bc05a984c29768b99375c979e9e35c0502", + "bytes": 494368 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libnum_integer-cf43e8f5b615e1d9.rmeta": { + "sha256": "5a39077c66240deae9c73bbed9fb283d2ba85361fa2ef69e2b18a2d7308c71d3", + "bytes": 318470 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libnum_traits-49c57447e2766d62.rlib": { + "sha256": "25583751cc4a134d7ed14de80af5c64529f3c3c979c654a39653ec1cdd74a115", + "bytes": 1871350 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libnum_traits-49c57447e2766d62.rmeta": { + "sha256": "77c874d7e9a47c9778cecbc944699fefc22b5077ccefad4d4fd324585d6c98d9", + "bytes": 1799718 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib": { + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531", + "bytes": 101322004 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rmeta": { + "sha256": "e8a7f46c6a722c59e070fd659e7b942664bbc7f63f680eccda609cf3ea45ec21", + "bytes": 14495005 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libonce_cell-f7e62c44737ecbb9.rlib": { + "sha256": "c220581fca896a83eabfbcc7c17bc73c5ae5c8d8572e69a26124cc30bab75ea1", + "bytes": 235388 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libonce_cell-f7e62c44737ecbb9.rmeta": { + "sha256": "2d823ed961d1a652d129060d846c6b1abc9a727c57b347ed2c3e5bfc49640132", + "bytes": 194640 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libproc_macro2-80e9e45547beebf5.rlib": { + "sha256": "21ea42d768dc6cf051d5d48909b4a842e80455978b2978a8bb7e7b4bf610f8c9", + "bytes": 1409326 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libproc_macro2-80e9e45547beebf5.rmeta": { + "sha256": "d39f3c0812ac8d86dd2930c280374633660f36082a534d796ffc6408de07295e", + "bytes": 345290 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libquote-b79aec363b458000.rlib": { + "sha256": "f534dd8c98806fffd2e8441b8c9f83f4bb715b79b122add03fba98348a617f4f", + "bytes": 578338 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libquote-b79aec363b458000.rmeta": { + "sha256": "a6f80856289cc5d439c72d9b3f89a5fb7264ff9ccfb0bb56d009a1aecefef04c", + "bytes": 272046 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libsame_file-a21d6395ce590b18.rlib": { + "sha256": "7bebf724898e83b1c25c5426804981675e9576a21cd1a19d0a6306fc123edc14", + "bytes": 88132 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libsame_file-a21d6395ce590b18.rmeta": { + "sha256": "dec842f91d4591d52351bf6871f2d27dd9cbf8b925273576417d8234479759cf", + "bytes": 39148 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde-968c91fb77bb5d38.rlib": { + "sha256": "7e01580e91cdc2ffaf307e4675aefa7eab1b826128848bc3e97286434d550ee4", + "bytes": 978366 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde-968c91fb77bb5d38.rmeta": { + "sha256": "c6c7b22db70cb55fe7defca613bb51b86697e2a6f17eae33b2802f56013a4362", + "bytes": 833041 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_core-f52ac0796dd4fc39.rlib": { + "sha256": "2611d8ecd7c524bd53ad5878882b739280425687d08e5d3a35390a46a7e8fd1a", + "bytes": 4999944 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_core-f52ac0796dd4fc39.rmeta": { + "sha256": "e66488ff3efc88add4d160dae99c4004023bf40bd87ca453ff3aabe2fab7dd50", + "bytes": 4778355 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_derive-c07a6353fdd1d8a1.dll.a": { + "sha256": "c6343ca32323148402b3961d9ed59aafa94fbc26f103ef033cad6b90ae915234", + "bytes": 1974 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_json-b48005beba7e4267.rlib": { + "sha256": "beb8f14217cb751bf317fcfde52d9f2e04fb2158bf20ae96db5182625bb91acd", + "bytes": 2698846 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_json-b48005beba7e4267.rmeta": { + "sha256": "f2127062e118cd354f4f1d6984beb9c49c208f3e16eb3e99f9b5c25e161d6212", + "bytes": 1437278 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libsha1_smol-c4b7e5ec8b41792e.rlib": { + "sha256": "178abcf351becf5b7e6d56bcdec80ec48a1f3e94a92ff10d9f69a731bad8cb2a", + "bytes": 178902 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libsha1_smol-c4b7e5ec8b41792e.rmeta": { + "sha256": "3c8d1e6e3addef3abb47ea29444fa5d66d0e6b7e0340163055e9b9d85be2261d", + "bytes": 61339 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libsyn-2232b8c89352da95.rlib": { + "sha256": "2121a20f1d36631fddfc0c06c83ed5fc7d2a0b8e0c71e35023d082e772af1ab6", + "bytes": 7074626 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libsyn-2232b8c89352da95.rmeta": { + "sha256": "07a5243ea489462623538b4a3ff97c934148f26f03fb88270f622fe5812e7300", + "bytes": 2237955 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libtempfile-20c336358d7a22b5.rlib": { + "sha256": "db081540cc7d050d300d90162e7a0f97d599f9699e352bc937eaf1cf3e5fb830", + "bytes": 787386 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libtempfile-20c336358d7a22b5.rmeta": { + "sha256": "7a9a3352235d998706263493342b465ee0aafb72dc1e8831d7819606f83020a1", + "bytes": 243837 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libthiserror-add096f46a35d6d2.rlib": { + "sha256": "808528532deadb54b2d99ad6817b98aa5602b34718207177497da17ae0995d34", + "bytes": 32538 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libthiserror-add096f46a35d6d2.rmeta": { + "sha256": "258d19fd36eb9988200b8af48a5f3d8da40245fc52f0325242b9302a7866aabf", + "bytes": 31572 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libthiserror_impl-774eb7636a800724.dll.a": { + "sha256": "61b4943559cceb800d6e13694179f1a343ce2821cec989401730a39d684cd335", + "bytes": 2002 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libunicode_ident-37cacd323a49429c.rlib": { + "sha256": "73af4cc047caedaa02bab30fbc171773fddbdc29dd1bab904c5eb00320a3e1b2", + "bytes": 54940 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libunicode_ident-37cacd323a49429c.rmeta": { + "sha256": "d1a882cb199856f762ee1f6c60fca67255877e70ded0fef49a04ea08cb241ae1", + "bytes": 33204 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libuuid-f7851e8936dae115.rlib": { + "sha256": "86eed9db3122ef01e327aa95e744d0d0b89ca0ff39dfd1c7ba2af71459fb4f56", + "bytes": 856390 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libuuid-f7851e8936dae115.rmeta": { + "sha256": "eaba13a30233b54faa353ea1bb1efcef41fee4cae301872bd55769febce52389", + "bytes": 551367 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libwinapi_util-be9ab0847edf5b05.rlib": { + "sha256": "3f846a4b4a7cc0cb3ae41619ecd97f6180c01fa29f8ca5fd095a3b1adc9b90c3", + "bytes": 224090 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libwinapi_util-be9ab0847edf5b05.rmeta": { + "sha256": "9e071f932f7cee4c799f6ecca5889a6451c54378744c847a9ffcc493bade1092", + "bytes": 100246 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libwindows_link-23f115c823619f71.rlib": { + "sha256": "41be5141a8b1b091fa74e2c4873ab11558c31d3398e36d0a203c408de55ff7a1", + "bytes": 5372 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libwindows_link-23f115c823619f71.rmeta": { + "sha256": "f02cea41f37af72d82adde35ed606aff7e8b39ad68df1d5f5f9e283a5662b9a0", + "bytes": 4394 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libwindows_sys-43b3d9a205b229b7.rlib": { + "sha256": "4f281bc4c0fda9c9e4e1c15e9dbb6899f550ce60bbfc1a4add7e33046ae6f591", + "bytes": 4775578 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libwindows_sys-43b3d9a205b229b7.rmeta": { + "sha256": "b69880bf26cab678e1ffe039026c279e854e24b18c6831c19f49044df9af8771", + "bytes": 4462580 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libzmij-9f8770986f00ef15.rlib": { + "sha256": "deb21a6a3dec839e61b8154f24701d01f92de2301e6ffd04b2f943388a3160cf", + "bytes": 535494 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libzmij-9f8770986f00ef15.rmeta": { + "sha256": "f5f62d614bcc0691351057339d5acef688a89084a89dfba9bdf0357c1ff2e0ec", + "bytes": 419769 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\serde_derive-c07a6353fdd1d8a1.dll": { + "sha256": "107aca5cdedbf7a3544c563e42f753d2417382d12ba5b52d0695b606e229ee3e", + "bytes": 3804160 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\thiserror_impl-774eb7636a800724.dll": { + "sha256": "a70728a4f50fda03bf0e7691fc27758e4d070ea84a36314754efb02d75c1bc9d", + "bytes": 2820608 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\Cargo.lock": { + "sha256": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf", + "bytes": 119973 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\Cargo.toml": { + "sha256": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62", + "bytes": 400 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-cli\\Cargo.toml": { + "sha256": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde", + "bytes": 279 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\build.rs": { + "sha256": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9", + "bytes": 45 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\Cargo.toml": { + "sha256": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f", + "bytes": 408 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\examples\\generate_demo.rs": { + "sha256": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661", + "bytes": 795 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\examples\\generate_release1.rs": { + "sha256": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5", + "bytes": 1798 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\examples\\release_dense_views.rs": { + "sha256": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412", + "bytes": 14664 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\examples\\routing_workshop.rs": { + "sha256": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7", + "bytes": 17248 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric\\dimension.rs": { + "sha256": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340", + "bytes": 3045 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric\\exact.rs": { + "sha256": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d", + "bytes": 17338 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric\\fixtures\\r7-literal-boundaries.json": { + "sha256": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181", + "bytes": 6085 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric\\meter.rs": { + "sha256": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4", + "bytes": 7129 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric\\quantity.rs": { + "sha256": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee", + "bytes": 12257 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric\\tests.rs": { + "sha256": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b", + "bytes": 27486 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\analysis_numeric.rs": { + "sha256": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408", + "bytes": 3735 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\data.rs": { + "sha256": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a", + "bytes": 42696 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\demo.rs": { + "sha256": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c", + "bytes": 20657 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\language\\semantic_source.rs": { + "sha256": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29", + "bytes": 7326 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\language.rs": { + "sha256": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765", + "bytes": 99938 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\language_nesting_tests.rs": { + "sha256": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b", + "bytes": 20639 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\lib.rs": { + "sha256": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c", + "bytes": 549 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\adapter.rs": { + "sha256": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5", + "bytes": 9490 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\mod.rs": { + "sha256": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9", + "bytes": 1158 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\model.rs": { + "sha256": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb", + "bytes": 52059 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\README.md": { + "sha256": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9", + "bytes": 1515 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\references.rs": { + "sha256": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20", + "bytes": 13369 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\source.rs": { + "sha256": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6", + "bytes": 21946 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\state_validation.rs": { + "sha256": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0", + "bytes": 15769 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\transitions.rs": { + "sha256": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1", + "bytes": 704 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v2\\validation.rs": { + "sha256": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780", + "bytes": 98736 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v3\\mod.rs": { + "sha256": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722", + "bytes": 23023 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v3\\README.md": { + "sha256": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82", + "bytes": 2128 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\migration_v4.rs": { + "sha256": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70", + "bytes": 4020 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\model.rs": { + "sha256": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb", + "bytes": 66352 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\operations.rs": { + "sha256": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41", + "bytes": 11405 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\persistence.rs": { + "sha256": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14", + "bytes": 31774 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\ports.rs": { + "sha256": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80", + "bytes": 45413 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\projection\\port_capacity_experiment.rs": { + "sha256": "098d7c571e0b8442430f4ccca5aabb93580160e6a0b1a87b7aa7dac5bb18f910", + "bytes": 7675 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\projection\\port_layout.rs": { + "sha256": "395bd3e8323bf1053977b18cae89612881e19a2132dacefda2ff6b9add0d9c6a", + "bytes": 14848 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\projection\\state.rs": { + "sha256": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28", + "bytes": 5233 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\projection.rs": { + "sha256": "de7ca48f0ec56e97e8300e43b5941eeaae76baeb7d6d6d0b3ed562abcec250c0", + "bytes": 22136 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\references.rs": { + "sha256": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb", + "bytes": 21957 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\routing.rs": { + "sha256": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080", + "bytes": 50309 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic\\catalog.rs": { + "sha256": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4", + "bytes": 49407 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic\\historical.rs": { + "sha256": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb", + "bytes": 15271 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic\\linked.rs": { + "sha256": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2", + "bytes": 6035 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic\\mutate.rs": { + "sha256": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d", + "bytes": 22683 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic\\review.rs": { + "sha256": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e", + "bytes": 51116 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic\\types.rs": { + "sha256": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb", + "bytes": 10405 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\semantic.rs": { + "sha256": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239", + "bytes": 540 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\session.rs": { + "sha256": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00", + "bytes": 35237 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\source_files.rs": { + "sha256": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683", + "bytes": 74803 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\source_project\\source_migration.rs": { + "sha256": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95", + "bytes": 4700 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\source_project\\source_structure.rs": { + "sha256": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f", + "bytes": 20225 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\source_project.rs": { + "sha256": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466", + "bytes": 61843 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\state_validation.rs": { + "sha256": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18", + "bytes": 15665 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\topology_context\\analysis.rs": { + "sha256": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65", + "bytes": 20036 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\topology_context\\analysis_tests.rs": { + "sha256": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56", + "bytes": 5258 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\topology_context.rs": { + "sha256": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d", + "bytes": 13734 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\transitions\\communication.rs": { + "sha256": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028", + "bytes": 8634 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\transitions.rs": { + "sha256": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d", + "bytes": 51998 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\validation\\coverage.rs": { + "sha256": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f", + "bytes": 6478 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\validation.rs": { + "sha256": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e", + "bytes": 112792 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\view_options.rs": { + "sha256": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208", + "bytes": 24481 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\src\\view_options_tests.rs": { + "sha256": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208", + "bytes": 21433 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\communication_boundary_scenarios.rs": { + "sha256": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b", + "bytes": 8816 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\communication_means.rs": { + "sha256": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4", + "bytes": 18102 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\coverage_diagnostics.rs": { + "sha256": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4", + "bytes": 20527 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\experimental_port_policy.rs": { + "sha256": "4883ec1b57ac04c37a6ca750c9de07ce06a2e4bcda00be45fde342f5721da05d", + "bytes": 15254 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\fixtures\\v2-coastal-rescue.arcadia": { + "sha256": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3", + "bytes": 29220 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\fixtures\\v2-coastal-rescue.json": { + "sha256": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005", + "bytes": 43990 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\fixtures\\v3-data-contract.arcadia": { + "sha256": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea", + "bytes": 2450 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\fixtures\\v3-data-contract.json": { + "sha256": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2", + "bytes": 8240 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\fixtures\\v4-reviewed-prose.arcadia": { + "sha256": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1", + "bytes": 1222 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\fixtures\\v4-reviewed-prose.json": { + "sha256": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47", + "bytes": 1734 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\language.rs": { + "sha256": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e", + "bytes": 56482 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\port_anchors.rs": { + "sha256": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa", + "bytes": 26893 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\port_migration.rs": { + "sha256": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7", + "bytes": 15620 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\port_source.rs": { + "sha256": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12", + "bytes": 4858 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\prepared_commands.rs": { + "sha256": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b", + "bytes": 9555 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\process_diagnostics.rs": { + "sha256": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906", + "bytes": 1104 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r3_constructor_ack.rs": { + "sha256": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0", + "bytes": 24163 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r3_migration.rs": { + "sha256": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd", + "bytes": 6590 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r3_semantic.rs": { + "sha256": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32", + "bytes": 77473 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r3_source.rs": { + "sha256": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408", + "bytes": 15311 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r6_data.rs": { + "sha256": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155", + "bytes": 41437 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r6_migration.rs": { + "sha256": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1", + "bytes": 9174 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\r6_source.rs": { + "sha256": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6", + "bytes": 9519 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release1_teaching.rs": { + "sha256": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2", + "bytes": 10010 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_capabilities.rs": { + "sha256": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30", + "bytes": 19422 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_diagrams.rs": { + "sha256": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d", + "bytes": 7689 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_language_limits.rs": { + "sha256": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806", + "bytes": 5204 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_ports.rs": { + "sha256": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1", + "bytes": 32740 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_routing.rs": { + "sha256": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462", + "bytes": 23165 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_scenarios.rs": { + "sha256": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f", + "bytes": 41067 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_states.rs": { + "sha256": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811", + "bytes": 26873 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\release_topology.rs": { + "sha256": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9", + "bytes": 17643 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\review_regressions.rs": { + "sha256": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1", + "bytes": 21823 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\route_source.rs": { + "sha256": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb", + "bytes": 7270 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\routing_geometry.rs": { + "sha256": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3", + "bytes": 31890 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\routing_labels.rs": { + "sha256": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6", + "bytes": 5530 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\semantic_artifact_absence_oracle.rs": { + "sha256": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a", + "bytes": 4640 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\semantic_attachments_gui_oracle.rs": { + "sha256": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970", + "bytes": 14957 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\source6_view_contract.rs": { + "sha256": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb", + "bytes": 14307 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\source7_contract.rs": { + "sha256": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f", + "bytes": 43262 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\source_files.rs": { + "sha256": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9", + "bytes": 13168 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\source_identity_updates.rs": { + "sha256": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c", + "bytes": 5139 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\source_nested_updates.rs": { + "sha256": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855", + "bytes": 16892 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\source_project.rs": { + "sha256": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942", + "bytes": 45910 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\state_diagrams.rs": { + "sha256": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5", + "bytes": 23973 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-core\\tests\\workflows.rs": { + "sha256": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b", + "bytes": 33426 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-desktop\\Cargo.toml": { + "sha256": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9", + "bytes": 842 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\crates\\oa-server\\Cargo.toml": { + "sha256": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982", + "bytes": 778 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\experiments\\source-authoring\\Cargo.toml": { + "sha256": "66d497f9b06827edcc4004cbd74300692d11f4766cab6e52d9e68c75cfb21afe", + "bytes": 188 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\rust-toolchain.toml": { + "sha256": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce", + "bytes": 66 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\standalone-port-falsifiers.py": { + "sha256": "2000af782ec8cb489cfa9385b9f7da01a5df4dcaaaf6aef5847eff5661ee99c2", + "bytes": 12260 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\env.ps1": { + "sha256": "ed5b7e8f1105c5355511e08cdeb4b96156fb245bff430e6bb9237ae8781638cc", + "bytes": 331 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\llvm-mingw-20260908-ucrt-x86_64\\bin\\clang.exe": { + "sha256": "93303edd5791e4b60682f819267a34c349e5f52d052d067e006e76d21cc82ea4", + "bytes": 14336 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\rustc.exe": { + "sha256": "c4c7286b198f95c5da9307ba63e756f94953527d63a33dca877211bc0979baf9", + "bytes": 86528 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\target\\debug\\deps\\liboa_core-145180297aa692e4.rlib": { + "sha256": "d395dbe1f761d41bce3cb850f44cdc0343b0db172bd03abf89e455c44f4b7e86", + "bytes": 102820446 + } + }, + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\rustc.exe", + "--edition=2024", + "--test", + "-D", + "warnings", + "-C", + "linker=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\llvm-mingw-20260908-ucrt-x86_64\\bin\\clang.exe", + "-L", + "dependency=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps", + "--extern", + "serde_json=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\libserde_json-b48005beba7e4267.rlib", + "--extern", + "oa_core=C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-falsifiers-20260912\\crates\\oa-core\\tests\\experimental_port_policy_falsifiers.rs", + "-o", + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe" + ] +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/list.json b/harness/experiments/resize-port-policy-20260912/falsifiers/list.json new file mode 100644 index 00000000..4188450c --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/list.json @@ -0,0 +1,18 @@ +{ + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe", + "--list", + "--format", + "terse" + ], + "start": "2026-09-12T22:23:01.929515+00:00", + "end": "2026-09-12T22:23:01.984131+00:00", + "seconds": 0.063, + "exit": 0, + "log": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\list.log", + "log_sha256": "1bd8b4b52b361646b212aec9079e948257c3bbf57a5c511edfb01539aace2f3c", + "selected_tests": [ + "a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports", + "capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner" + ] +} diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/list.log b/harness/experiments/resize-port-policy-20260912/falsifiers/list.log new file mode 100644 index 00000000..d9f51a33 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/list.log @@ -0,0 +1,2 @@ +a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports: test +capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner: test diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/obstacle-comparison.png b/harness/experiments/resize-port-policy-20260912/falsifiers/obstacle-comparison.png new file mode 100644 index 0000000000000000000000000000000000000000..96d4566b9645e81698f4badd2a43f3df337a3f2e GIT binary patch literal 42737 zcmd43Wn5I>_cn|Of`JGKC{mKr(hZ^@ASK-(EiK)QqDXhQbTjZq3m&AEQ@(2wL4M$o^TnP;gV+Rcl z{Tv$|9FZ(TnV_NN)JltsskkQZ%sJ^i*M9ZSLAqEybNfG?o$oLkz+aQIu3!m#@9s~n z-G;e6OYrQb$YG($gIFV0>4En`7^Hh8fwOXGuyVcsB};-V9T*r5jS_RFx#8bWXkPn0Ftf9!N9a{eQMS660)g243j13`o0t63wlX=T)^1x%XziA>a# zuAe-%&*yS0X|ZRl3yo*HkSzK;B2Q6J_ zQqXVIYyOzsZnL$s`bzth-241^wT423Xf0<@p7zqkT02J^FQ$WvimGN;)O~3-hMrCT z>H>@8#RkG;K&RTU4yHRZWin8tv9tG+{$%Eios-+m;b9_meE@e&Ur-&)@Wc5FifDkpcRnr*tgy}X(f&e*IF zE{@&p&6r}f?yiviq~NzVvP9sXb<=@T6VCvsrkj`)y!qeS8SnvLVY(@4MOUmoddjE~Tidw&SPb`+m z)a29i&DjF!kWZ^oM|f&@1O#Ia=ULRbY+udISrU12bSoe9I&h2j85k@kosrHvo&W0c zP#{>A#j#X-$yposr<_Lo3C=b>EQmj-c;I&m*0{d?fpnSHyw|l#oq61FS=sxG!{mh; zF@>`QHs4n+b4iY5G*LbEP;&vZCF}v}n6;RPz;vCXroR94hhV)F+h@2|-ibYCAPI3h z&=3aJUS0+N6*)P(<0x~vcEtt)Hx1kysi24X<%U?308~j9wQ-VdGW41pi6Z;PO~r9| zv0Vc!V$S>TR0~c}5FzWIii2vzSx8FxyMuMIGf9_O3NisVn;W0a2M;d)UH3`x%o$Zl zxin%tJhzo&U!R-${C?qchkw=!2>WQ`Tby4C?XCDi8gAXM&UNdYkiEqoU?N0n?E+$a z-9|0wOlS+X3=IwIabH3fFRd>qT3RO%XC0aTfuZC)=BJ_eyPnJ3?jH!--S!3?sS8wF z34!Nc^`w3Xm$gbnvOlD!f<9-c{JOfPyX`{ynZFM!Gz|gujJ*sN;G?NRgdY%>%qhuU zoVKl>*D-Ys>6%aE4Yrya9iJR4tq`zV%rsKxu09-HfIL+m{6gRq+vIhvb@uXfe^cgQ z=+ED9@Zh=)+ak4+Sg#|vu61Y%yq6l|5hz|=c=+#$NW}c!kf?iDTJ<@YGbWy0rST76 zHKzU^aGG#v+ITcDP-D@h-}%weJ$cXlm5cp-Y_Or$PAmhJwYc(Vq1T?5hjK@|vZ*yX zjW@gVCDS392;sTGG(_cmwpD(7eEdOW?5rJxhLsMiH_pY_a#L<`^+aUzt*7JSUq27C zQqq~xOkD>sCRqB1m9cqN{CqUV*9$=vCgpQwUpv7mb3?mGcy{smQpiCi5fhQjPAoTb zS>VIAOD~9hwWFP+*faMk%iEhC)pEPG{_!le)kjN@Sya>l{DXz;_9`f`tx4dj`hMDH zWWsKX1tp<_(GmA4k{3{$x4u~GXQ&HFTWjlG;EUHvXQHbTrR@R=>VflN(`gpY(68a; zRhSoTu-(1R?@S2B5R2#Y$af`JXwt1r>T>q9Z~k^Rz9%Lu0IbA%+T$FVZ5j2=bXic4 zYTzt>iU3a=zr=xi63G|NBza24wC369B5xO4I$M9X-j6Y8KeR}|rqhs}ojpWnxDNEdzKSSI@P4hxvH56uhW?EQ_u%~4#j;M zMhp*aYVvaLC<@STMx9$8kPK`yDy9XAPbef4A61R~9M`cw7-`gUce2ui8ncT%TVq|= zAK4D#v)j6kL5g^fPEP9aIC#=!)R923gFRv#Y!4Ii#>LQL`1J8p=6O13|^B(qzNvzb+$?*3jr zW<{#YL0tTtgoIAMZuwS2hfkqy##Ypokxj^}<J?>EWu4Z9dv4KZJkgzLcplO_z%KRGA5Vt zFCTwWv7NL%R_TZqpOD@8@OgX!j+{S`3kX|Nbvc11)eZpfTxhj2&4i1fDgncc5tk?> zR2$FnlwVVbc*(ckc~BaQu*5X~a~f#BUA-IfM{R^p362QlrbNhct8o=v1A@5lJR}(T zB(?FIYI23)n0yS2LVUG&^6Ke^Ifp1-Va*N^D!IlmvsVvab={0rm$=4Zzny=TmO|Jg zp-EiTE>{2DpGy*%@pUT2lgu^4P-J9~LPmiET~yPdtF3xLVo0V;?hhklj_Htwy`?SX zH5PR}^&=?&c*5PiC1i?#&n^EUVdX{0ztXE%@YO)<8FW{Wgn%Hk$N6bm{WCH$BO42j zMg`*4&4l154N&t$YHgy9HV-|0*xFE3p;U`!OkbSZv{cL^la8kzu-ki#l@FXP(-8CW zZoU5AbNzC18JR}US<(V#KpdRZ*=1xk&7muQWrUj|bXHm8T#a#c_EAFOq0j#2k$Qq` zj*!<{?d!euQ#O>x`yExT{DkP3Uj>EwnH9a!10GNNj5%I0^+nvMHt3!0jrY#f`Yo4mSs0w%=?s@QMi-^qO_lldU4U?+W`9{^#{_wfoDr_?P5z>@D0 zGj95RJC06_m>(Yf(7G9Dea>v_K3 z_9MgJzZ=9ki_tg@y;P3Fvtzw_yBcpl*ee&Z>HFM@O`iQb~mHT8wPDO9cIg5`+V!$HSo05ZKf7oai3r^ zH#g7kABDpSJemQ_qwL8&nT<*MiHhb`gXgJ;4D#C377TWvt2i(adk9uDsz1kEXL;M0po~1KLHbax^jxIngkf~Fw|ib*Pb|0P5|=L23%k1? zbdpK*L=%rqjPxY+iJWe^*{_E4x_RBC{$imo{^y~^blF|>Ol@@CJ(wR`G&>m7t9$w4 zc`~OYk6G^0!;<-2hot58l3GzW@3WSu2HaEtY5#fcvRgp-YO;V)1d&7akUPp#I!{2x zfis2yDcsZ^OA8#p!QRGp4UIl$Iju!lfH2+`ZCyVV8QE^K^R%G?u{O!FOxcIF)@yY1 z)m_&*ht9h1d~@5Vp(gspD*2S=_g48Z@2;CnIB|#nm~@^)g6!$)6|UH`C81GIx24+d ziQyH8h^b3O2X=Zjd{%ETYzJrOgw+H!6^D{Y@Z|SBiN~u7rtEjANkY3`(=Ofoy|gAz zY8WDajJOnXvzO8_sdban9vboc_k+Y8US?*`vj}CxDVf*xb&RV*PO2SUCSL;w$<3_p zm(Snup~-pZmV?zg`9%rVFwZNy^YM$YGMHq#Gm?haC*zc>xbhAQXGf!-W05duZLhx~eMjn-%~Ja~37)Hgk`kJ|q+Nx;R|5~O_*ez&Wv z@e8k~R6R2?GF?c8M6%TBPl8N1xQ_9zKYUn*rKzp$F2ig4{)r<;u8`$aS39hA$MUKV z`nWm7F{<$~GP?gWWnQlSFv$P2Lz>wQif2XKTJs2gnoyD#@g5 z@27|YPOi7uIFDZmmv#ATlv00+u%t`yklhK8%H{}aZKGB>e53eHDvyuZIoa~1*(LqK z1CM?Pa--99WR{ApH5}$V$vfF`m zLMgGsQk#x1FL$@BYrsv|X9wm7vu6hA@K?B4BCL)g6NXC3cSlOOSCk?oP@*U+S930ODVKDbAkwHv7x9(ho zSzqGHn1JbLHjuc@r)UxO#z{W=WyeWez;$b>x2~n7HC@q7e0omV?5Ns!COb>72>h7g zHa#ZoqEaL3d^%805L0XeQ5O>9TL<|v+@0^B-1r4pp}BB?u>Gaa6vk^h-SW-Nt-#88 z4|iSpul|23XoLL2Iy?4w+yH_IOG7b*ooRYMEp#c3_N$TrVwcr`1Se{~jBOk4z_GIHfc1mM>${A8(<)xc-OuR!kq(p^sQSLqu zuJ8ZUIwe)ga6bY*?2W>Zu`!>4hUfvR+;)KbE}r%m5CkY->(@GKM~MstG?^|534(0F zoSrJdL=D-?GJ*RCJV;2I(bIr7!H#?#hKnl+1-)95E6F^6e<{0uo(^i5v`BHifIwv@ zF7dW;XRE5TNS`WGub-oU!>0SrsGgFLL=n532ys9G#R>j|R#Kh?9;D;k=(>MnBmUaW zUhc)D%hFKLe)|Oz$VlX-eSmdlozOV1i@E79F+(RyRzG#r$X=P^w4Pn9zVP9sP|kl}y)@9do0Tp~oJEh3a$Fi9wZ=*aT*5DSRHA2;5Y>h=|g87=?iO zBzWl6X_dZ@V6kK)#so}O-YF9-gH31!UYe46%*~KLw-au3X z<};JEO)2;B{ioJ{QF`j-_disM6NksENfMUOZtat#aR&w_REwgFjOAWd1h6d;*sam6 zR=5x5eULnf6l0``%T>5B@!mEW7YmKdG?j=)_*lg1G*~02nu!8=^KTlUs+GnX8m^^y zQSy4>%>=3mAfn?u&JE%X@}U%RJSZ1nFumn>{5!R&I5M)mra&O+Uw8Fa zy6MylL+qZ0mwULpM1s4%4I7jfQ%yjH+$ts16p}+9yHwRO`5G)0g^T zMOT}Rj0m}Dq@ehrt)Rhq-FvL$Cx+NJ!6y3C`}Keey6Kb^bpLq!#d&A9NdIk9y`@sg zOKvmCBVh|~s->tYj;_sEMBDF_%kAxLoQ+BEmI66O2M;GJZlnG$9h#v>PcE?@I9)9d zO*KVy@O1JM{6?82ml=CfVTfr|yPchD24RZD3mN|N-DdYWV!UjyLv4Y)jV`s$QP-qr zt7On{eICxMP=Jzt^KZTzb{WLq^8L^IHj9AJ(EPCy_)mH^Foibci1cf!Du$!jpoG($ z4$f_OUi8XcN=2Cv3n3KZ>NapB4b-T!~ho^6NxVWY&j*-TNXx2JPHA4P9CK6*2x(TS$WHPR>=A@)Vl|l`h_1-#2$PIN%rIn3Eh0Cr_OeMW);Ts5X6)ZK?>$FI2 zOKqXqdt_duYj;6Dw@Ov@fzbZXo${i3+;|Fgn?f z*+GJ=sUps6wdo{kDu$vU+@!5wU=Wh1^^M{nD1_WzQ_x$vLSoe2!bpa7J=u|Y<_;ai z^Epy2AUu!S$P}r(nNcmFm;-alDkeZwG;<7J;=W&Bog`%V&caH+p8I|lxd<^hchl_) zeO4+!A>4>lkoGuPjrhAi0LR0{x+P!* z-)YngOXgsrMk5vnC@{mET|JW1|9ejjd3_bo=5J$|Xt*(eq1JRTx&g0dVb zSg;S7uw5|QJ3Q%`?as@0h@noB$$Sd9b8=3jTi{)#r?eu&WR3`<)D{`2Bp8Lv@m0%v zP}e-W0^eq?347RjkTEOnpB>HtN?_J~9rN-fiOy8B^uao=?SihK0<&(j99=gcKa*!X zx=I~ajxoc|DDoYQ!!7$~`;W&5xtCCxnVF*QUI|=g=4la8F2#wq<_4#hp-ghBQY6vN zTlBlpG$*99wZ|^R_t3%>uebKvc_w4QMqo=`Fo3r#H@m{o!aq4WI@%);IJG|!WuQ=LeV4}98#dh3~#m+R3oGE8 z+ZAwJx{+j)d0bgP!F2L<;k^#vXvjoe+|CxGD1@4x;NURw$L+zhQ>HFQ@|015CNfRn zs}lsSDr0O4hy9meS*YFmk2d-tkE;vf-nd+QUyfei09)i1Tq%NTRYjk$*U-3Ppy4UG zfYbbtD5V1H6;y6ZF1g8g^4Fp&W3*}|9=EUgjMJCh0@it$H{cK+k0@uA>+PS9E&q^F6A6FronCn+icQ$!NX#G zX0pj|vQ&}(?VIzRm{(#g>ApvT*CU0>5k42=#B76>va9cBpvdk3hd8j(6B8q>(W17f z5^KQGQ>saMddS`?207gS`Tka`>T<@qrfh#7P#RCSre7BphfreQ0kV2;L=7el%?-6nz#bml@Ec7e_s|AD|McFMe(P63-IwRF)>9>P*mLjI`2P@k$YSY!Nh&3~pRDxrV3Ax{ckx3~umeQxcJE zXlPtiGIEeX9gS+u^{FvIoELLhM`#Bq#2Ez(Sfp5CzxzHuLi3Ovu5XUHKQgJQr~vN= zj_SU0nu6@ee)+r~wO+bagXHv>7O*P@*h9r;bhCT&@ei?z3QHjs9I9jD8UH%Hdl=FH&Ic8PlJTrehbA77s;M-)a9id}<=Yo9 z1PA&S@~Yd8oU~RWz-hUxI>n<^mEbhM&8Ris?ZHu#cfOa_aH~0j=cIQKs9-<<{&m{A z|M+47a_)J3T<27pF6<{KweLBgQClG$2a&hjx$gE(6F&n^r5*ZKL2 zQxoz381Q@r^tUg#yzy#3A3?F4==ky(K7N6>TA&WiL5#&o>|9KeBYq7LKFQi>UK1Dx zZqpE8iSvTf>A0%S@IdF4iw@MFp%n5@4aNM8q(bomOu^VV`f{nGgp^PQZe2K*lY6yn zwz!CwCITVj*+jbUx=V_GELbo)4AWAC<{!mE&Q1xL8r{xX09I^y{n}~fG_m|!b}8hY zhU=IfULf1JdOBREm-K;t zi1xIy)Ly3-U-fmbA1HCypqRtJ&r6ql8&JqgeEd*-*X9&L>d6!!|C*(FHH+t1+hJZVrqy1_*I{@dH!W$8u2&bA8@ ztX1=|E4<0eLF}2&hxh8X)4C0xIzm}qC6K&Y?@2Hk-M?j9XcV-&wGbCysVBQ4ffvsg zdCP(L8;W`4WDCFE?>YL>(z4)vz9Zz?_#x;wj-@I$`=H93w6YoR|JJ&QnGOeO zYh<0!CvugAcOT|;CgQl&n5fBMACbopQ|Pd{?~i>(&juhWq4M~Ged`;F*`6gc-G@s1^ARt&l$2x zOXGws*VIC`F3&GSA*<=8VGQ=;OX$;;rm^})AVqpaA@cVq&bDhv?{a^$G7a**QrQj+ zeBbLvU_!^1d_i+=g8%e%B3iV?@?-SWwq{89@aGyoh4td8a4_zSsxJP?w0g72027T^ zPtpD_BPku?;6tKFQjBpc(H5l+dUJi8L=|{>Wn9jX{z#)(aRka1U%^VQ;Gr@j{t0d5 zl!BvutBmJ=w#u54Z~zX@WA!J0HOs{s*52=1s_D)8M!5_zfJIgt$0e`t?IS&Wv`wA;#nv(*C-q99rgU0#(Jba?5G^40>Z zal6^QYlvEC;@$eFSWT5fc2B+dD@+*FYTtEmWLv0}@R^_DFQQ7D1I@x1zKx?$C{cKE z_vkD$0Pfy|v?6ZeoypOe!z&X<0th^IwuXW# z#8v&>fstY0G7dieXhJRh7~KMz_9cHQs;cxiM&Wkf83kYp>b=)*pXU6%WTFU>f%KIri_s!}pL zt@+wi#dqrc#`1O?ccrHaend@J>0#QVC6~(5v}WDO{-x&>5Xgb3#i=(Sna?McSc2_x zo-^bow&s;p$A;}MF5me%2Kj@N$5P*@b6NGq8sCCCZumh_YW}B=3NyBauVYy-L|g7y z=aWfe7H;n3Ujk<+WYeFT(ln5dS(s+`OJqP*Vv>hiF|NrsDW zKqB7keJ0|v+8G!kNKHkZ8+P&G=+M%2fab_ujao772E$zAwPC@t%xK=7Gx2KX~90b9pk?c=pHh z25LJGVFtA-DD*T2fhsxKTc%eiWs~n9HA0T$YZ&P2lG(XXNyM>md#G2&21YZ2>2BBJ zXiiO?x8`-jQW;^X@q1`Pqv#tDcKP1IlHQY_yGZo}gx(7#UgKWlEY}%j;XBu~h=F@F z|FbJ_G98Gsnmw=5HylaUi=Nj>jmH&OEQ;zmc3ORq!J=fxiWyys8QE%Ml6 z5(DLC)Ia!4(DG#5jxVVb~vTMM1%pHM-Dfc&*OS_HGFtj zog7JAI;WKHx!G8^Q#qwoW3FU-1kJ zh{kEnSnx#VwYE!oy_S;;zK{MB)Ww=TuG(vSIcS4S%d26oH}X#K!^=y%V-0x~oGv}S zmbPP8WZl;RqUP`a@FGR!QyZ9VZLZw884D9)sE7kDm0oUa$FXQ0Ur%V$1`!b<9s6P! z-I0q?pc)9kLTWN+M$g>J9yR?9I{Hta4^K%&8_v2n`O=J3VwEIWuv?Q{C}N8cB&7JD z2I2>Jrd5}2)!c$UfKB`0whi0E0ss8@3(CDryhvg9+X}$qEHU=N;}ie2o7_{N*6NZQ z0Hn;Lh?=c9Hm{pdM3bKa5Vf(*)mE-|Gpx$drng2pd}eroG5%TqKPVEXu&=e>5tP60 z@O&elZXHd}LuCt^U3YmcVQlH_wJW9`1O}S%yXHmVasaiAuue!o0)LFjv@TCRQTahe z+p-TVEsIuV$2gyILZn0&?k zq1tEUKrvCAkRJe$7Aysk7d(?O3`TQMj*3ZgkxOV`j`KPNHMD;1Iz@ISSW}^Ao20}`FLeutifpeqL7D#gd}f4D&r9W1vkQ0qj2j4arVk(52$N` z_I6h?6}obYvsG)fvgI0ZCkqv&-RdvT+6w>_9H+=BbTGHoZ-zGcJ@omUZCLkX4#6}} zMzU~cgZRu769^liXTw7=YgbHx;xU2MZ@K;8ygMk@j3R~F9}Uu_V8tgTJReMRIS96E zqZ{(xU(uWh+|rwhSCX7-^e$G=hjH&rsjExY0AKsl!+Cscj7hcMu5(J%nUoJ^x}6GC zPz_d^fO~~QH${<)Ds`RX(fVzcALVwffi$qEzPJySx}hRu#}blA+VF@wEk#^aYUq>& zY@e<{jc4TKinHbaoTqz9%BB`iso*mT@naFD-C>0B=ucjsKeej=T$@m>anA-4fuh-} z!bpcr(&@^AXqp}aM(zx;Q5aQ}?7*2iho~bUu0AlG{_`q4S%!BH2xgGOIVPG`#lBp~ zQi(#KI;r#OAhpZG^~H-aJKLV&vE56~ui4Jg#foK8wVI{y!smYcuKppqx&Fr>iP6hj zbhIoy$G;J&!^35tLImYgYG#4==V08rundbya-INcfsloJ?cK)d28&?h33(l84LxO1 zwb5&Wd3xN=P)jct_d57YKG58GBkNL!<^*AqWwc7#1M)7)1 zy36lD7PmQSP>z=J+xn?xo@Y=#ZlCmd@3Ih8F-&LPOW<-pnp{z=m05(Pk)Jt;k+Sg(Kp}b=77N6n3R_?qN1XPxZt5l zwSk|`%ryFawk=>V83}|JxJblFO;;f(^E}>E5fI^`+zszdNwR~mc&a2vC z$F4PBCUQupE3EX{wehep#me4t>heMofBd-3;MNA^DTqk~kjDdhvUR36L-L9U@Op?- zil`oA6*jcZr9qr`Gsi&LE$pWN1lDKUqm$jkpH0*z`*{YoCi;^Q^UFVTDY1(^`Y0Fy zq4;_8$ zr(Rod0yJs&%fkVHA_~;r6y_Ep{+PyurHSa*+o_wp1hvzqkFty#GnD!l_0&224{>mm zHUGArAW|NLGAL!+o#LyKC2wlkUtnDdRtU?+=-(qa5{Ul>bfIeC2Eg_1SDaRz z#HG&_-T;;FKT!W|-|dSL1LS_ za%y6+$I7>Y63<+%N~b#|qPlGZLr!p7^%S^atf8TYXjP0d$9Wp&|8*+A846YF`(1q>-RG1- z6ajR1oDGuzat{AdivhB2KvBW-x0LRRAHEV5h4<)vwmFF@m7X$s|c*t`tlMMl?@Z4dYSSk5u)GX(2S2;hQCsvh7> z_Aa|>=L*+V9qfqWfLPaR((4-#fW%G8fm*NQ#>zz>FEVus+WT7l>B&KXNv42h4N}nY z(6c&l^*KRDx~3LSQL#al3cKClsA`gnItcb=enf!K^Hb2>5piq{)FkM@DPSw6>)Kx4 z*3Z>Nx=@I!zEQ654(YWCOC8jySlcY*wOsG8Tga!240>q=>Z*|Q^U1=!El?&H_qD_k zJb?pITGSY;TP~T@5LdHh}vCt zw)&JSm3*-j^k%)z+q110#GV1rNFfTL#cl=JMagP%JBtp?uIBrPJs^5ASK^m$_^Fx> z3*=(>efci&Z%urKvG;1nMM&%~0kL{oncp%lqN4etc>BvGZXmUtr=|;lIFs;oc8+9Q zFW@cW;Vng{U?~9MZg8@I`n3b#Y{6LCr=;@ZE$C7|xq`IC&o%I&GK)&&+9 z52f(QSWuiE0R{6S-hn0pPhVIsZ`kkbm>diNi0i(4H3L+@H_HlkpRT;AgH+6~=Ma+R zcY60bnQmxOI%#PE*EarhQY!gryZu^wt6;Ly`rCtCaN9tt%aKr|)5LSZG#(Tjh;IgD zg3n7Q`}3V;a5A$40UjypVC3EA(O_TwnX7*L=;Sv3t#aEa9iTDkdxNUJ4G>BE=xD3+ zJSyo;r+v}W(YxSrTy<{dDlWdvdLR7yR@H9Ia2+Ox&9|}ZL6(a}Cd~Wqcce6Gbdg|O zP!nUy8Mm5fE4RdkE&FO^_;qRH)H?e^C-nRvHjA6lz4jkJS}uX+qn=^%8jxDo=u$%pSpsj_$gd)FMTJq*=1397nSwz$lI$-WWCiMoW8GzZfGthM=&^_HQY>cq( zGZTfmc6atFv3E@8*HU87!%&+{+}=_Ypd!13Lh$6PXGpbh#+6)QV$f-H$KqICU1I6f zT`176gD#UMn78G~ALopWY>ouVDCB{2c(H^WfyGt+mO)(g}jEk3gU1>;#w3;lh1$DU^j|9DjXldsB{NUbKbeJ_p|b zayF6zrX)o9#&V?0S;g`A0Og|Ub#@R1dQ!m2lOq9V@)}-l$$^BR0aLk%W_ms<_K<^nUR?iNT{aQmtSkN zqn#I~rw?MozANfrQzi_sERTJFFuS<%y9~b@lG}H*gACNW4|Z0Q9+`Y9V9Ux-NSSij z`DX~;1DuMW;)qhq@bDk&u}h%$WYMg2OTd?~tQCM4D3t?ZoH2-2W9B^cY;3*s_J^3N zZZ9Zt-)I|kkf!PLlPuipB<=x-pOB19ImcLW)mMg)rKnc%emIqjO%JX@u8fp{JMHxZj0{1zpA>ruz?TA;KhoPw_RqLq8Sv6KHq{pDdcgI1AZ9j z`FS|G@hUlRnCQ)2${vxZDf)EyvxQsSvcy*CyY=J~WEnMc1q{ScUja)7@**PEa9#7^z_=Hy@?@VeR6z4h$0rf=J;VCaqlY)p!tFME&Xw1tOT+|m#!PT z=}3u=??#5n(rzWNR6V*(2nj8Q*#70Eb@zF5M|m8$SBKSZz53c^4+XYWu~3$NS=Emk zJyu366x&p9_*(4Opfya&8KAzXz9vtSpIPj6+}{EC;luTwn7ps~RzS0ZNosG4a5)Cj z6d)}^X*K42^Y*(?{usxgC>}LhAgU({xsaEWTdDa>637;Lb$zX?zZ$^6!osp@cX*Fx z{a^plao>l7N#@9+WRSRI{_x!n!-P&R5PW{s;FpH|RFx_V1)xaDQ`^J=6~Usv)DVa3_CDHz@dE1uBI$ zvtB^X#tVAlmK3-d)7k)IL}w6&dAK$@Hqo?u`(~?In1IA_M;&A`Ags&rWRP0lqlD`E zt$GEZNJq`azwh;;Och?FXJ&fsx7PtFHK@~rMlG8~NA*X*m4i|RA}Ic{*&&^QO2Z11Z&FI2>jAF!#c@Gp%PYNfwZOZM`E)WPn_ zD=wZZ(i@uu`B^#eEpd)3Q8}GB(&fJiI%i zygC8;Mi15VctJ^4T-UGT5%KWoX#LgSfWvmUt>}5zC(C;@i~sI!ll$+JBg(u_K7m*= zr~~s}J9M(Pw(g+ZDkhn@xLqkY6up1nOD?p#w{@Yv-SU zO7L(blLhvu1I~_yM}U{eWz)&m;ERfA+*BeR(Aac>^Z{8xaG=usPPAJeAshXy+eZ5w zmO|o0@#~V*FO3xyZ%fyd_WHA5-PO%kcA~i}x zfxcFJW@{gyXU!a|(hI>&O@rGk~p&8L-yqYrSxF12?_=pKxl$OBby079`!25{;y_WAlI8|Pp-UDLcZC_wkr>m;6OP7 zK`mAu4F^P4YmMh`MUJr|K-?eHZ@AOX0<bo#bB$Zw&tII#RP~bX=C7j_eQ;g$O&JMrPMd`{ZYG&-&;>nSCgWW*V;$xX3;0 zq_MLn-zz}23efY~3Ces_WdthSn7xrLKkZ*XbZVTDJ zEPAn;@nv2JXy9sv-5F7eb&d~hMNxn&)6mw?(ALbm{%7a*+^w2uuAnZ~12wV@x_$T^ zjFa9LrL7$lsAdX)WDy_302pddKrGksacfXE-bH?0)MuxHJIHddXL$$vpRY1bf99MMn_o7ar zYjP=?k#Ge$e)1Um`4v8Wfqf(dtMGq(*Vg}-&IJCI5FP5@MY9edgwSdU8O@fc9u=rE zuiu_u08NiVa`RI7*e&v)P2NhM_STrz`DUic)Vn9c_i0Lf+0owspwXw8uaey{57z*S zLNn)*U0{813XyFnvH`VW4${HFUClW9-0Ojv#5X{ogswY9TFmqiDf zL}Gg(5CSA5z5ro}H&2r`VZ{DjjWd&(LPcMq8?b!PH8l>0Cvn=fS1JCCjteNQN+c}} ziCNuDDQu{*JY5=S0D3@ouL}{2cW0mvGtZ6bqbI5TDj&?tB&C2=-KNfZ+JVL_)Jl@4 z4{|tU9LaWRc4mx zyN{MH)s`1y`cr#d%m}R6;nEg6lgz{8q)*G)H70fqh#BfJR3y4^|?f0hD}aaC7u zMqp$?K-v9_T)0@PeCM!vQ|d_;7PyY`Wl~)K^DJt)7&UdtT*-zt;Tdk!9OgZayoFcK zMpgLG!#y`e1H5?529d1j;dX@N{D&^Yuji<0?=|DKu$(-b{l1V_CcZa23c&|r-E{dB zZx_7p!5bH`EX@tro1`r`=PcMZ`5}KFToVmtJFItBzPsZ+(f-f8F=B2(_j^_L=C2EI zFYmNmzRi>^=wi^2wBSfRYmp1Ywt3h2#HQ-MFQkZ_;_FZ2T7suNq}+YQW3mUHH`4d- zgZ6;GbWRw&l$n^kTK{*y)Z%|jZvTJsb`GmgT2KQIz_7u*&(sobN490a=SizM>MWns zHu~TMcKs+?QOJ#m+ukUU31;o)A;RrICxCQopw~xv5)n5wd^K6qA5otr(3Zr%1rfC1 zgbVm+Cu7@4T}c^ohL6RSfTHm`I)beC_LvX$wWV0qq)Prl^M2gZ@u-LJ#i+!8-zRdn zw843(`1}hpd&1uJGSt-O(1Q1rmNrkma;A9`$9@fSuKVnl>D&V~AXeo511Q@qUXRVr6!5|hSMS@UaL%sqdEIe}XrMDg;F5YAtQA9J z)fTVa1ffgjz+{YGy)dvsNrro%S`OY((e-q1qQHO*=)VC^78cJT z$iZkKg=GD3*M7Gn| zR>>;p0pPg|gUY?a_W9#o37C%fI#(ytSB32NJ?f$z5;<%&zkb#5^mABUn=6N~_y-1( zj20e!w;=<#N>VPx;jG1|1D#E;d9GspThQ-n$x~!{b}_fXJ4HboR#+ladOQd0YXGvk<;{{nw>jfBwo_q(hmmd^@xJ)#2`F&K0wI%~O|UGF`xgbE zF=ijouJBI!Fh~kP@#{!R-e!IP-7>%BFFiVPQdVW+K6AYfl$p1K=wusCgFd$)<-2!% zK!^4%Yi2D}OX3mptU<-ql-Qt+l$V3+bF(Jsnzp%`2RSZ14h7|2>pUxBgJElbQKz%ZDIodbQ_gDFCv^c56z3WxG~ zT=qmOhEi4Q0=bH0(J**Hb!l(5*5ShpkTiKrneI2*-O8o;7EJ5)t zk9_tQ$IO64BQ7v}M$U{Al(rIdI{p#edFTEUi zfaQ07i3KDCvJr6pI7S01cA;|9HHpMW^?F0Ky!mvEC0Y*S}AG@O1LB;c~_c-B0 z{})WLVK}@H0OgVo^e~Srjrb%W2m@RaRaArlfU2@`!6*`5uEC}}(R#K8Z_oYXtnYRuk zj*f=jtVcsS$^;!K;0IW-TMr!K!qOUwDl|n=->2NvzkDtOJQt9to?KtAt|qypHG9>R zLxXiyPLfVePY5tx%b33Uf5?05sH(f|ZxoeKkWfk_6+~&Jr8}gg8>AbgJ5`WIx{;O! zX*MB}Qk(8>*o1U!Hr$2J(es>h#_xT9cii#5_r2pj{_%|Q{cgT%t-0o0GuE7+*(L%| zF}BoMI$Vc!8?SJX1&xa1GrSQC4Af;#S1Czs<)DNTWOL%t#P5curoPug3meMMP^3)sl1q@N^Jc zrkzk4kf@2LIDDd|oJvPs-2!*SdupU~!^sS7_lHG#f%-02BS*>(>J~P$R zO4TUi>UpM8=W?%21n@PoU}WGAPl}jtJfp0+ zH|^s9ER)e&U{^>q^c5p3V?=XRLOHg0`t8?Gfw!*_pLBM5HdlA@jsLmn>u{`9;~dHH z98hk3WxWm3iNIYQ@XHRevLMw^kSu>CNnQ+8m=* z8#8QUgHfa5%%U6>WE}3D?^}V3T$F=Vns}!0SH2_UDY3CCbA49SP;GYO^Lnw$0>J;) z6ZYebnz3S)piGy*pWgE2=gp*9B(v75&?3C!c%KqKzi7>&u>^1qX6Y|DYFRga;eQeBM! zNYXRF#>v(*y7^iV7zQ^s?l%Mbn`ST)u~m@38n?@ruay%YQN^3YlKVPW_95f6!*>q= zK_mC@Q`d)^RA%GRwSE*N$?VcCD`_?p3NFhMj~E7?n*)Zs`(Zvd=j|G5ROd7e3oJNXi)=wU?(|~04^KH`_HA@}2 zwB%&&a`<^s5Y4^x^b_nIPj|SAsZW#HD!nLdm`SP9O`oGcPriY_-rIXOOtC!nVKJmp zv%}76lCTIaw}K>5{_A+reheg#LLO)udd){2{@$|pugLMqE;lDv3W!J1H8eym#&D6- zyYn%H^7p*1cBUgy{I>XUnF`fN4wuA>9#Qs`8^eFjU$(_a8Du;rwHTGmOQ9tnXz+w& zQc^0KcOwnr`AzNe-9l18X%5A}P!MrmRLZh=^SZ{Z$npbeS}Jc!BK)3yMkaY0pRLQL zNCLf>t6ORKNdVm1NVBrCFGh3h+qZPBGa+RQ9!@t-WsF-CGk_7U^`nnc|NW%R9%hpx zuM>8swJ90Tx)}4p#qMB}v{atKff2{I#cJt_grwTMD~?7lUaZA2?0X!3z8nv%awW0e z9^e0YI#6uEzCrYmmg)FtC72uH9BnzR1h8LrQd5F9+EqpystMLtfN1N%@l86JP|Wq4VNQR)s2Tj(-MsO?sLDBd3{q9|Gisgdy3BU zr(DcmXTR9e!e*x%&yGgul;K#N3ZElR;LdAtOdvy>7A$t3+4*?O!*10uW)`s>9CtCl zKR5=O}J9~9Ion<*y2~7>Ip2h=O26P1qGKs--eB91CKe9F^>*~NP zHseBeaTe)P6CdB8xYiSgLEIcW(-Fr5DV!snhL0K>PmXub&d-ekuU6gBYm>Y1zGx{! z`=4v-i9<5l_<3qdcuv|!WlBnPi`WcBM*Thv?{;-gPj~k4G~f61IzD^{NqV)P_vlDe znUaU|^v6b2c4B2Ill-f>&S#qG-$@BdlzzNvxp|9>j9(!`FN((~Wo0Hcg$^%YW2rAS z#ZQ{x-ox|r^B6E~O~dM;fuU}dFK?YXG644}6ed9&)L~k+4BK|5u+4m3=04$%B`)Sc z(eEd34dVMv$pO9I@TdkM^7b7S;NtIm{N8mrio|?gN1af56T^l`Wc+Q2z01 zfP-0~$uKzpM|W?SP_o4UZ4lQl2_4vTd^poeIMWn&sLJv<+qL~F9AjX*QaQt2gv*GQ zVu=^wnjEiKE%lAkSQ4_)_YQdZEc}avXU!3)cWALQsUcrBKcJ!fh!Vq9tn3D*1aIF) zn)5IBBYBtis9Rf4U7QZv5(m_)?-M?o{X9@$q3YM*{VW!Ufy#w0BGQ&j$fHeBmkKkS zR6_2yH7)QG&jsEp3IfUj<5C_Rb@tXndb{KIRL4rpcx=rFndRg^rtOv`3>9wKk3RSr z@c0wN+w^Lt;VR_J&@3)!BH1~a$DQcdu8-m0*kl+@0+xnEvg_=E- znVDs5bfl=i3^q2##3tFkh`R-|cWB3hCD)qYCCQk^Q_q(?(9v`XyjmvOf>tnWnUrTG zORp}Sy(ohZ4u&n+eeF$B)f8VlILI|u=}B(#iLE;BNP9;dJRMFlJzij;m1z{x@S}fNQetmgN<{7_q>hv#-s+F0(#hKRmw#dGGqzsy0Y1#KtAPP{tjRSl>0A)?fRlI*U|J>K?pPiqCG&1ytK`4?4y_rE~p$}7nre$z9g?J|L zxLK?2HP^t%^!`#r(6!G06FMo38ErN3?$oPnJ;6z1N`) zuQ)n7xEkO;z8I5IZHg~{Cf-fW7~m8Wf1>)WobcrQ;vPQUH5``}M7Jj~t-(xqj1m$o zn>O#b+*%;ot*mlox7br|Rt^-=$7X$0xL(I>uA+%ikz&iyc&dWb8VZl6mv?_>e5ZsU zjt+yyv0g{&%@));vMGzP!iA~IBrjzK3ao#SHK<=sXN_(&`pQ1fu~xQRHCUzf{f7_U zSLt8XPOEpxowvIu8kMV19UWytWH9ibaajq)kC{Mu(exibo-Lk>ERy$x4#%pO)kW1%pQT$@vkM?UoSZ&=sOBIr-*CHe=R33I!T{SVfL9(jf=Sv^;ta^W9^* zvZ=tFnH|FjIpqNYU?cQidN|PYR3q- zUaA_-L!t`#g%2*ELB$vU@c3w|;6rzV&2*nadA`1ip}=Q~+vh5=UEMHEbukna(Q`P4 z-)9p&vN_|HMz8YX`7O_-(SU7tJ4bUm*^r+xB}ayfAy08lo-vVZzz8?UDdy&{(yC&1 zpIwG75&nf-9^pi^)<<(&$f5K?PZgyhZHYnj^z@-|Z$|usg>8d)w&3ExK%TS1sHfSs zV2+CVvms#X8?+%ms=i9)XdUx&Jku>0UVIt*ilI1TH?BBnqEP44cBCXt#tt8?(Sve#T9YDeU*zC^8wkvKYc=Sts!1f@zt|D}vX)!uXpunB zRbpT|?+(>|;a>_Zg6s%)aN1~FY(;3|Am6f}6U5oa-hp`@9G4T>C#x_H4vsR@DX3}6 z?RFd`1yQkopIUP}IIgX8=p6W(7h7C>(#vfuiXL3}`Yx(c?hRMx$t!b57J^Z0h@BlP5Z%4f*(PT(EESH0a(QaJ9Kk|M(SNdq-!gqnUZQ=kSUd18 z*0J}2*tDPI#$w}I@iZ}8U)K9fk9SW%mtkIzuf-L+u#A!#RVytfw8M_%Yi&5X@{g^yQF9pyP)j~J@b zzM*OZ(}*`IR&LQdeS=6VD)gi9m~4bEwHMt`wcePT9IrG_HF?c%i@_HFjVENte+ES` zHXwGU>9`Dn<gr^}ma!FLv(TCY!Om!Fd4iStMYy)}+@+@*+U(+<9Chd9QifSv~1gnNz)~ zd+N|-O-$+^c7thP=)0*&hf{l$2oG7_jeH6#;C#sI#H6+`& zn=e@!-F^(cm{qr_4$Ef0k!5tP4qAjbLd=rV{?6x)1V0Lw6!#^kR z*ZKZGxZZAFZ$*lPA3sNmAh;Gf8ae;kfBrR?{zpJ{&ROEsVf&mcT^dwyX#>`%`S&&c z9^#j>?|jzU=NL$e^F-UJ{T9+j#@|Wn6C!#LI}&oxh>jG2^IzUw|CF`_(DUzyoKwka zFV`pFOwH*FRk1m3q+1%Q&a|I6#A$blkQDBLvL$fMc#F!HiX9&%z&~8Wb-q2Sx{82W z`PFJQ>yN{YfH~2VxTn^<8)}g0h}aQugQ;MDg%kliPo(RcI0}5=1dCGRwioj`Ed7}3 zb4-SF6l9bXP|BWQW06*${~R5v#ymPY=O{`xhoku@3BDCZ&02WSRxhhE2%=W+!8FZl z*Dv=sGdUc)Ut*alYk#`F1hTfQc=NhjOTCbtq-k%VKrVlq{5od#kIBA|9Ur#)*>y`0 zr;g*x1NYd*V%h3*d}*uSFBv-L#Kyf~xo;b;?<&2V7%vxbUwaQT!+T-_E;s2I zuPzXA$3yHP*18axqrrw%OK`&`GL?wol;*v>Ckc`z^yLE{73G_hu_{|$Aym_10*a^I z&e^HxAFHasoY=Zpiq504xQVrWY*=8bOg&b%Ns2V{*mA3?efWjwl-5y(af z>bmX=Nm-h^o~}mKmdW#RPjRlP&~H-Q{ysxUjx6{^fw{?9;3rIOu2r2QtsWnFVTog| zq|tXVx*&Y^V{o9i*B;jTOU=}-s$!M8x5b6I*8HTk`c3-XO#EIjR?npbZs;q*o{3^( zb#2n^yreLu8E<*lUGP%dXbuk?91vx{3W1gnY#X)$Rdohm(NaS)(wcK}bXpfB&OkW5_t53bc4KqsVh_o42H72$JEqf zml(c%P2u13`v>n=R8}A-TwI}Sv6xgcL(Y~{IKO;LG1*P5iGAK}_^fK^94&y)3#OcH z=<5wlh*c>tmkr|YCg=i%AlO$Ff;f%msC@gUO2u!j!IdT9&O|?8S=ni~jCzzYeOJY` z{u@~)e_7#}5d`4YDv^#@ZPZ8JuFFc0{)4%*K2Wh&M$<&Y>ZdTUOUSV%tn{G`XG)jz z1&TM^_n=)*_IDfSkLN4b4zP9a9vua}G<0_A@myJe0nQmCb2Y4FrZY_wEh|o}?heY^ zGQckBAk(2O_Y-QtzZx6KK_NqG#zd;IzeN=Yh5@X+SU(l498l7;IVEkRVyJZJzr+EO zz8|X4Q_IpQK2xQ>g#Zhi^*Gm|ZE8p@4l6fEO?$`Vs^xx|Q(T_u&)sWn07{c`C;Nmo zRpmBr-9&onM?83gE1ZJekC>{L=3S_G@?r_zHS=nr&~=OndvZVM}1rWplc64B1CzC||kJ zB}qcKmiPMEjOvTM^&{~Z)V?XZbCp-*k9|Tug3?V8!T%+7w29M2dH@=1yJwrlIjxqU z+rlhyqulx1NI=Ogq3@GQOf%JzPgXwA#dUH_Y=5A*y@I|*kbAwMr@bB2VyM{|tHU0- z-cI>b&a+`EQKO@8Y2(`ldzKEuyRmhQ%GpbH>B-k0AlUld;Lu@(wtFP;IumJYd# zzIw5?H?|+PPc@pYrlXxA!WvHqwWvOWGFpUbHC&EUa?(F8|6m3)&vs}1VrpfboPmZ$ zvGiN0l}vva0yNV|s$a2|)wEo$A+$Y?Ku+%*6z1sGDyffYDHU^J>3@Y(UU8WQKB+7q(#WZI8`Zpy?m?y`dB1JI1D8;?@{sfpoJ!*u$X(1BD9U_x0TqKFO zzZw8hwEUo)Kx_WXp#WWg{?bAeEv`w&iE3;j|1>sGaG1ncLDWV-L-_9x(W)zLc_BL*0x0+avpkm;|7|6J{#hDq1{v=5%kK-g;d8xX^K_qz=E z*U~;?$rPH^KjG;c`(9g=tw%!iQBf<+51C(Z5Yrmi1qye0cdnN|`Ri*DqkE$qKH-5k zCFy58qs86u+jrtk%2CN0tVy!IsU-MLDJ)btt>&|q2&i8pXDg)w+0Ts zA_YE%zgEIb&`V6d-ieN6hVvf~jlbe|5u*c@#PbFj0)OKNFf0|?;{7C(B@YIYi1eDa zBN`lCTI!jT^)J5~O-0-!RUcYOd5n}L_-l&+SkGSokemIjU?h+V1Xl9jNI3cx_^G~n|tbTZvnpb zlZOH2`Y(pBPsj)GP+$;HH0uFo$1~&Guff!)i2ejGrNFKUV14&6aG5jdMKIn-v#;Cf@uv&L=p&!*!d;0fA|_qwYAx5 zd;C<)CRg+(7`y4-Z~FXWqRh!WiJ@MRsO}4Y|05)U_V4{*jI1BjDwzNJLaZ6Qi1?=z z{+sArYjC}aryF6OHz|aFWKPi858n7guwTNb2DDr+XYWHKs^06Fou_7XH&XqF`2Mzl z|2P`AxNm&CWs?rp@b6+aD|7=XvB~tQc4G(FKZ<`D&4-J%?504X&~FC&BZ9y8?)UVc zm*V>1wP-#=%F2C%f+Ugjcd=Kv3&xFTuPq`acF$0hb8Vr&cNZzk@3++cM|_h97YGkC z`rh7HE0%iC(pRKG&fL2M)4$}Z`kDiP+j6~+M8T_}*cY*A0zyDd%!>i11FQbS^)8v= zg4Kfm|BqUz{rW}Lx96#Yo=ZU8(S#emBmS4Y70@rjL5leF&!>M#`R@(fn!m~ZI@*2~ z-AAHeaAlVMr@wc-FFqmPt*l6Pqkwm&I9QU1gj5X{^LP5ZKlQ4U+FBym*w5tylg^^~ zvzvfKLi?I3EPbXfVBciIi$r)U?oeU=%RG?;%#X%1AOs2|zaRg{L_rW#AZXxcI-$tl)P@4leK3)Zrnrm^!I0+ZrzqmX5B75*GH*DOBB|M16+EGgvbxhHo@yjBb!q5NUz z-&_A@|3I=s)-o=@k3tyE*JPjWXSJN{Bn}7&s-#*|Hh)P z54-%Abo@Q_>)?Pwh`#~e0oQfY zCn}=fTn|1e5R@K>4<6?IiA4OK)PLPdF%$Qe#E!czU`!uf|G)1ImbFDkd+PeI;_UP8 z?l<85-`Ms)SpWYSD`ts;WB)opcm3bu-?TX*yjrv4vY6%9VJ7iMF#liK*Z-P?|5I`M zpYOu|&QA!RjO{W%=QJDw(0fdCF1u&ynwnF5?y+toT9X`kCf3ILFbqmByjJr&baMa`hxFeSMXfjhgd|;Nf&~ApNiMIU9p|*8KdA6~;<; zln$k2Xq6|4-KrXkyI%xjR`a(n&s`R``b*!&d`|9q_B44x~G;pfrPrrSUo+RY}K2JC;m0&e{HSNuWq#t$=Rv z2du+3KqW8&;BY7QDE~Y@B7b2eC@mfNDx&i-XoWVHGZ+7{vs2vwEu5%-1o5ML)KeT3 z-byL?`VLpU+5cD+Z1V9c7W!bS*lY%NLgw(`a19WD(1=RXWbn-!JW(+*#7m2fK#Vb^ z95iH<>J9$$>5-{-b(JYBUJ|BiE&${KbOVwA1AODLR(BqCb3BfACN@) zp$NANzKvo94l}?Rxep`98MatfA|*}9Bqp3N>ZO-0+}NBhmQ3jrramSDYgl~(dT};= zl^`1G$%Y*)S4?qw0|?JB7xae?M65PPvF9V&xXE;&%@*L0{*jS0Hqpd#yQn>qo)5$)06<@+hcQ^O&?-H}6OLOaQ*(Luc|q`(-8DAGYPO zJ6v{kvK=?VMl^>_r%ZrYbZL71JTw~9i+VL|tyr&;6!z|_e&bl;MS&M6_%dcBV>8gp ztJ^krUf(6h!GnCuWz@DA^fWC?EXuFkX)uF+dK9$=1{DDvwRU;eIZvUBl^SthW^!Pq zlGfpA!59`^B6AI%pw;KMNee@(!MICP zkf8a9*H_;@Cl>cD7R8V6mMIMg0qG133R2-$E&Ieab;9p)Y~J;=QRsqk&hC1J^MU2~ zitSLH*d~Rj?&|6L%31Lb62f%_dSCVFgMJBqpVC2Mo!-K|JH-V#F5j45r#k>-7=Yc9 zCHWd$b}Wm!_Rwf#DsN*U09e?x#c;(=%hTX;u-rMLPLY)l78To>@daMpdnmD-l!52> z$+(>><*OgHnOB)lm@H$2pKN0DpFMg}`OZTFE5wiD{d<2$a=x=(H0T{+H>2*0wA63R z30wUe!E9Q|ZFg00-uJMp;J+d~aoMH01i9P2U463GlN16xlpT!E=d=@)`1MBObv82y zkO)X_0a%i9qbgfQW!7W*H3d&s7`IALrY&V12IDqA9Z-c%wd}a$mo95SGRHeW#(Jir%&?Up=7M~Jrtx? zDWKFKwZToQY)Ckl$qjza6wjKW3NbEA>*Tdt-3RS1t%?}dWFJhXt2ek7RHrsMiM!s2 z8IjYf8FgIG0_7V-nW(a4qhnKJO)Z~o7d-?0#R2%gTX^d6&$EJs25yEc3(M@U*{db9 zbuKf<<0EVpssYrM1?YaIPJOMHDVp6d_REHX=Y56_+uu-EoF0KrWv6Y##B>+{2=mCk zjRrflQLEHxO4k6@sIoHf$`T_cB_(mJz-#e)C0+F{hTq%mFnBR#?i5>*=EMYzyeMcE zIa%$tQ*jT0BKYxRh=cdOeos%^Y7VswtkXgu>gKJc?xYiPfLa9#L83l8tRJ=s;u;%O zm4S0oZHQ~6y+>>R=L8+5bCz+p`Aw-UiHyegXtFvFm|erPRi<2V1IF?c(ywZo0J!xM zox;Abeh}Ij;%VPX$*^H}qe0|tzy+peckrd+I7^+p)(9|_jXe*~H@9KBvw89Rt>8@A z(Rd-XCA9@3fBoFXdZqU4VA%t{7j=3-9wB|51k{X4l+A5xs&+aRu4C>$MWgb3ZoppE z192;#Gft=0Xcv?~7C<@)8^OL8Rc0?2TV!GO0}4Y4|npKn1TW$^Agc6%B-_HPGL;Ns%6E$K(gIcte3C=a7uk!m`dCo*|w4m$5SsjoD3#WBcJMSV&?Z|K;0 zpQ8^gD+fK^PId=1qH2Ac9|==Ktwu^!w!2o+8r*=?EukLO*ugKOQ3{TWlUb}s2a}!D zJFwPsyztpXgMxw>Rmzp6L!{;8oCl&mb=~4N^Wywgat}bVUmmu#*3yOC#pJFurO4qm z_luOK?$KzxK1>QOV>^;3{USz2-41nwStsJo84B*u(|!^`IDu{l6LjocakO=dCARvv zdy~2wq468G1T>;T`uV75$k`vhfriL6X6f~!T4?1W3vV(O|Edx@u?%& zbe$lk>xprbkHFdV6-P@@A$<>sZUYD;b*mz_f?E_IXXV!x(*jg^1q=63P_M0kqS>msR!+r{ zeWRXUY4*Of49S`NIf#K58XHWf&edlBBBl*vjT~pJL1U|S$%Ki8ne_ojX#h0}3kO>Q zdxkeCdrmwd+gpK$lXhQ@8X^y$2H_FmSH2ni_#nX&D4$y$SG;S`^iT^`$>9a0ynOQl zoi6XqjSa8~Rd%as`s=UBqy2*jm$qT?3-IdSnh*Q8}M@>qlX0MEl|H)2P zZZ2f0{|C@u$f#)5R$5P~MEF#7b>&>~d3nz`yf_)kBzXLiZZ^wc0$ao6KHaS3dw>6q zYM*h2-mdS`;^H0ImOp^0xMJYP@1k#IHv2^-<_WPA=oiV@)Kq&?YCRGZR7vlh(}-SI zSNDQH?dbfcB%jbyUrVkN8DI9-O!7vrMMP-!2X&7RuD~$Gc@N4mqMxo-L3g%cSG&bA zDkm58uFhw`_mdo^F`Pu?W8+Ex(77%ADA%-3T8*w{yo zN%ONyntPoI-Jr`AZN$^D^V+DRqr>~jkb|Fj_Nq3!nk*d6k7icTFU@7dW|cT!(8oN(RLVyyz6Oa9gEjz2f%t>E)*5BLHllisnn)R*k+ z7+8}avym{6CRa9K35Lj=T*<9j>z>E?HhMHw(#F|L8jRPEXlk&1p~)!$DypmCqqlKa zbhIl{}(bc4v!M zmab|`z0_Ec3z>$0}F2cIStmgUy9K6!W)r(tUF|-_o8Ni{)W#VmJ zkQQqBKFq=Sg(=d{x6unT&W_lL{P_G_+cvIbq3#>ggKy>f3HQ(JfLOE7bwItlzi%wc zF>JnzJWVzcY4uK3Wj(c#N(@?Ge}LJN;_oYpa0_u1{4}Y(k)|{s{`sbo6zxP^U}D zxS0ZE6QFk#&)7QCXet=RP5~^5S+Dicy0TM~nEh-6!>`2F*fulX(@XEJ&livWM7 zD~UTG&o+m-4dZD|3CYBAb)>nS@zIud6?^^3Md1bU8Gt#d1E*!Yw#wQ5E)PE>mM(iR zIf)@yCgYl^6_+NJAC48@$H(V2n+=)~hk_0Vg<3y2#aaeEcFSZmD~u0jGkakp@h{8; zwr)f$CIKb6`|Y#0F3aiV&>Fu9!}e&MEvD)k{T`1Yo5{*5K*tT;nR5j05`gMRc)rY! zU|^fb8ynj#f`{((7pAJ&WR#|zoCo#UZDOOH9)Y3l5VP+*JD?0&)m9>DeRoi^llc`> zu&=y-fPXit~&+Qx3(P42Qja{dFznk;p2O*?)UN>PqckgYZ*CP423KnwD?ifBi0>v2g)a7 zx}Q3U3t0X`jTby&kNUKbIDvZ}mM{P+`>}dAV;EJ`q@=nL8{L3%0JFQ~)FQcZrAe4Z zg@%c|aq#;z>lKtcHHcrg`t-OZxA98OVPt4vG?g>U`O4P2a+5n>H#c@PmO#8ui_86J z^jonN>xM;sZZ3D7_t=0p!zPQdSob*_NQu&^_X-FLljT87E?2)>LOUVhv+@cMT;i%U z#UaHl_gYK0nQbh%yi^<@WNfCS)!|HQOr1?Dk2{7<(*k$E9SRK|+kK|P>3yf;X4#3U z6%DzZQAc`|GF|kKxGBEo20D+EW9?GoB;Y=Qjw+yo;xp*xP?@N}o6^ME!1Fu&^gQ}o zb5ey2z2e8)k8gkf(x~01Rr}IuHIkB;Ft3&GNR+vMER8EecXwdOJv4bV-4*e9em+L? z1SQ~oaq?L%HOyS+4TVv{Lz6_#tP|j4wD)R!bv~L#em5As;OQQcJm|XqzK`MI<M%)(38Ed>-fZmP6KUpI>cO7xI;U5dp16l36R{01+L@*=s$^ z>(ZJo)hfIK?CxBPqe}!pKAT=|B9J2))Fffz3Po#24kaCLP)_@_jTQ!*Nv}=!y^Qtj znDx4-*xcP)oCdCUa-Bm%cSIoQEDh>bfeWGum{j{}Zsv{z7O>%fLmm>-dg<{*IP4v4 zbr%4%f^KC~*vS!yt(vI@$0#QmSdiT5vyZ!Po@v&9bm@qiXs5L)CLtr|Q>M|?Xz^5b zrh&K)RDcs%PPbkK2N|3%EFE{vCqC!+7jOXMSyR*Es0tyR)6=VOz+33t0l2+@=Se}K zd{Nh`F*P0gE)j=C9;laBEc+f6a72?mO#HH$l9`!xy3XZ1!;xFXW@>k7&BjP?_Om}M zf{b+0gQ^e!yn!AoDb;S>c~Tt5g~=)Nv-ricws9P0V(8uMI|>OSm5v5S_PCBERd2Ve z0Q~6z^<7-@=C98=NM}l5<4tk&8r7Z-SH+2hKLm7}G}^uvn1t$9nVt0ius=FFN|wUc zX0~z=4A4p}EO7Pp#Z#>|Zv&=gpLWA_oM6W)@eB4V{O;&+PVdcWh5!%Y5Z`iToZHP6!g=XEr+|fE1Iq>sjNTN}e@}}tPC6!$ zmj;bN&jw%?dqQX47PZ&GUJ7CO$V_1N_nuZxU28aSrNu0b6 zDpFRoJ-4cS0@5Hk$ObZ81Sx{ozcTz^8IC<2k=!bf<9F+sQv3?_TWnavRr{@7(&Ew zYuf$PP!kyrv)wN0VFqCSk8O@MGRF$}UDv`_i<`baK#KT!oz_RU+dZZOO(s5EjEQB3 ze!kHeA-RB)wbw2BlR14(itRAt0+GurNp$Ie%uzrQTMYbBre$~J(L z5OTacGx%@^7%C>>fsE8(*qRTn>xs&zfk zCrmCOCZ25Kh+Zbs^D6u5H1D67=)HO%V?$w}5t9yB@kctPCp`_Spr^^k%aS~)Pbi3o zV-IS%l43SS%eL`gDx{6fss!CKnUkQs$KJN6Ofymz-d~s#U@N8}#{+{S4A0HB0xBQ! z`X1RXRbj)}MLn+c6ly-VMBErvUTo|*sP#IS8C1T3O?F3Pa#i*TiT~Z_&a`>)FlYGA z)RX;MjXEylwqUNi--X*zzdUsX-sib)NCJG#a%WnuLO{7n^$(6~sB#^<*{O5acF4 z_<%?nX3#8!e)kkiw{;GR{qa8a;F#y|l;^ACh_bMT5^b!>&W;qui8cX9-YlS%(GCJ} zI6Xty4H+%gyp~g1kzO67ERcf+z(blU3Tb1RoL#CtF#8k%%Lcy z2?qi?8&}e%vo*D+c*1=Y6!?*z)&5m;-V!C)sLJh4&y9S}G59`PH5PBi&70`5q`Ic( ztslu}t+yd)Aiz-n;mc==lVZ=uh>KTN>U74XjU3i<7DJ*0MCzxzc^|G)bFz!J;u-B31I&r2@>(BF=SwPi_mzeY>i+2}rvstgmPnis`V(@_z30FpEx&_Fepg_q*po6ZHzk z@zsc)nepMw?sj+fYNJ%<#ONmv=c*Bi+>M?@hAnzBYC|fcK=kbF?>B#ZA81%dkEQt7 zNUEV0uSC~JM9_|Ulh4`t?UzrfpQ}v{sQul0m?>M-n6T-<_FR z_Y18Xms9O9UM^jpfxjyM>S$G%fP>Ey5`9Os&)#GJpI(_32I%%6s^VyDahx-?tc;3p zU>e4q7k1nk98OUu)vHDR^-3c7bGKB199_$9N&^@fF z!{hOwl6+PCj2?Wsm#{CFPHpqB(1yvkE%?V>{F@jUVFD3f-T9&Y{q@e+UbswC-kNWmwdd3EK;-_wU=EZg8D*tyN^!Cf4(i zLq~R5;`+t;4=517T9U8A7?5;r&G3ztJUW-C&T^D2MJc%RI0jNZ!8JQ0ecs@1@Nm0* z^Z|0~$R~0zM0zE$h&827K^i(B=qlrBvPn|NN*Sf9Ceol;nXd6ce!$RyUit1EHV14p zMn^3&QY_^j%0Ny>RPS3yXGdSKN}Hytt<>Y9^K2y|tE}<7UO>g0Q9e7_?eojr zb0N`@-JyuAM7A@n;`&W&%o?q}uv$v&E7B^K)8kU>qLiZE_}=QCi;zYxRnfPmciG&v z5PUjrxRqj_i+g!-Q!4>?9?46Nkv%EqIy^}mqm(Pz%VtsBPNvF40#isCKFJL zVlxYCOHIciGYv8}&F%+v7xR$~SD9DGZ@-d_|FG(f_O+{Bgxp%wtuWIQ!V!^v6*k$B zvBtkKp&{m`)97!&F*rsv(9k=oF1%}%#!*$hwzRzUJR2j1NDGTbF)>f&na;F@YPZku zS3r#Fi0O!FBp;Q;glrOYvsdOLS+HR4bkn-y;gBz^FS92Te+(ybv9s4z4eyFa=P0`u zcQoi3=*Ja)zGB}uHF#O7+s!sdv%LSbd+c(E+EH9hehatqmLL@Ns=(NS=!r7!cS{#B z|KWoG@5%9{9p$OASv?FV|Del#zgXO)a zWMgF&JZF*NcaxUiTg+g0HB(9st;^ z2hvt%D>_hy%8*FMp+CR5_M>;Yyk#Z% zigu{*w2wC?fNYGK0_pW!@VF}_gbptV%7Ky$Iaxj|GMyt2n@S+Qa(``7b>!%H+L#oc zR!@Xa@{q-NM&2yXa%B0E7Iyn|ItCa1)DXSH^QvQ_KYpm13|`19jWFFD_N9`XDXOzm zxN4PNc#nDMJrjsocaP1$;&XZBS=J?~@?-+{A}+E0($QsHTiX*YtXkv!+(CtjFCzhA zy6z4ydAw%BSP02m!`Ej=1ylthTQ%lx+#wPIlS+Y*JI`MrO7eF^l-+NGZA13h8APmM zAxH`CCpergzAF-Zl-g@G#gW_SpM_y})s4Nx@$qmAYonwQO2-Fyhu z@%2EXTGt(z%Ih^Ns*Nh}_Qi{f1GAUjDNuB-gZ1Fr^S-cS+>U~Zr7aGrv34%6mRLJm zz8@E^ThDuZw+e2u3oDc|4Vr2>FS4d~(rNaZ5ad z@bw8KpOksY$x70f!f7JELfHGGkaafs9f`@hnem~PEKlyuit_x+o}X8W_tPYB-XE1d z0uuwDy|0ZS2}gu?*c0aSFy*t~xZ%SgFnAK(m=IC=B{gMunk`>Y`c+@MPXTsn4h-F8 zW|GsBJH4c6P%$wYQ>zXnJu7m!cME$51O`iS)l7PFH`;I$Za&7{L^CGXE_=bkRktN7 z1|dtRK=c%?o4n*9%Qe7&*HYHGSGuS-&4fu#5I8LDm0Jq)3Swi&87;y4+ZIak(P~Nh z^4J;=&DVB2dM}}pX{p;@7mK>cg43Zg2oRhI2n3*btko})#^)@gnV@kUWC@4%{h{N- zT8fknfrtic5nh)5dt17kb*sKvD=Swd4wS51qDoY39E0TjKdgM6!-4fMY~xB8*E3Ck zN0zp*U}NoHef4Vl!z#Gt^^Q-dm0I_9^OPMNviyHELL>G zrL03Vc~KwK)w=D>{iyn$;!7E#0U@q%kl|m}W$feF=K>F~AVCJrGC(tFQm58of_`mHcaEysrgtOhWn*RC9q4u3;Bc^Yu^E35*#Ywy zOw(cbzk0j!f2h_!KKI&^hOY{d6xr8gU&b;eTwA1=klk1Y*Oamg*|J4uO0s097_!GD zmquf6vdo4s_AO*Le9!3K@9X{n_w_x`59jqd=Q-y*=kqzw^Lc-s^LgH%?LP}ki1x&t zME5^-gFW9iIpSJZWaHurvP-CwF4`W=%X6v5nR(A_49O4Ac4F5|G6`n<+Xq;gik22q zyM$r40jbW8Kd9bTcqTLRZWyWGHR56`t3L)77^X{ow+o;_tbn&V6HQnAEKXzFjqyO@ z%u@ih+H&u>?&RFGyi<2XtG8li1bIfucn$e;vVjIF`!_(K1pxqWDV9-V^hfAZGr+XV zunutYc)QD>cf5iW1ab$T{TXf#%2m4glVtZ_tXNYNCnJe2g3k`q>iqK$R~@5Re}#fK z!D%*8u~g=yGk@(1*6t3&AxaWVZ?T3Z6v^n`(Fyw}N$ukP!QlnsF z#GPwM=P3G^evuoKybln14(8so<2o6A{Vq~Ldc6~(&trUk+fdAmA@mQ0U==UI%{%uF zu~{v>$1N6IMz#MqjQn2lAww*C`W-TmGe%*VJWqxSh3hMvX&n59?)9y9QZVaZfVdbtV1FjES*j z-R&{3d03mk(N|9SwO_SbgNq-2#j;Ot1T+e*MVx6fH#=>}POLWCm(a>#-O;SW643xP zrmQ$+DqK`ky-&v;16=U@2K(vnyPg_$v<_EkPiTEaX&JH{-X)b?vR-73?|@FhV&sq``=b#W(~aL-O7Zk;W= z(DkZO+SlqZj)T=S;`3x58%WK#nD+9f92))3Ua`B6gd7``4{Ol^n#IwSeCnuX_Kl2G z9mdWYCZUa7(5&7?kvWD#H$L^P@<96KGzCHce{tFy)r9Vz_NrT+^$QGEmK|;GkrRPP zed`&2zy5UECTwbBSEJRw#_!8gr=KB<8KalGZ95P(mpnJWurykOXwM_E_T#rMaJVg6 zx^fKph)ZFt_j72by$B8;*n~nuf1!;dLJ$&oxL1ZLqBT#x?MVMIeqiQB;01THMt=U> z2dUg`Vr^$BTh?2?B7w?EV7!ub4Rx#nT{ zvI{1tIgjKhQd?xqFE}tR=~!eR>HXjfeQ4zK=QIj0eJ<4nM^ocF7Q}6>z)5p!j=3$L~h7w!KCK>fWFwLCy1Aj&o z3dN^x(%VyYMM++9!0O)1Y?Rl?poNvbPU{2znit*E8EQ}|wp-w&5!-Au%0^TQNZn`L zxb|8zm1K&l@_vcV@N)L(v-Me+bl8@bG4f`UvE!f9ew|6YV`=F&8*fc^ftjvm7xMal zMgZ@MNL5sl#}6R9`QSibnoz6`-CZk*FU4;@@OOE?{`cE%h?UJas1eD{SG98Wo>9)x zJ*bP{?S-1}8~B`}dzLOQvDO`Kvk-uRpvVCAa6w+kM|ucS|03;`vYB+!Nxu3rv_;cd{e{pDNr zGZuI?{^X?T?hl3NC2#5bPn=R4a+R|rR|Uy2$q!8w?nn0|7Z$*){j**lI>jhU$Xv71 zckp)Y8x|$6-?h*%#v}@-7;*XcARUK9nk01xD5^H%o`I^K+NXRUCL;1-`(~ECZDq6; zT}UkT#x*3pcsV?yxYHG9;FDApcU%0d-Y0yk?6@XCYo55)Zn*Ah=cl9?g2g9E@DjPW zQ1WIuTxYqOR0#lycK+pnYhOKzi7rM1<$37_GPfZ5dC$h^s#p4YTaAeFC&ugmA4O&}NIN`>i` z@{w8qbVt)Z-M(^_K=d$DPPek8_hJsB^3p(2AwZ(q;tWp^!RuG8z3>@@FYayU9?hJ{ zfzO=eU^?`5=&uM7NGUg|o32&UsdIFy)WZ{Qww6W{qZc1_xlE@xOVMzuDy|uBrziN4`84Hsm|Mpg|;u zX~2KmAC^hCnj5XXb|?GyWjU60wglB0B)BQG&;FML?tAr_=3>M3Za7#iFI zOd)&h*RCO)@B99(_J~(G=QiMi%Eze5mn)gi@}^##TG6 z3_=d!MRLTF;uqYAwMGeLb+o==O;Ql}EPK4(fJ!gG+!pAS&A` zg_HU&N8I8G^>ucY&+XK&V#RqjZ6Su7cG2SnB89XMkG9J9xOl-D?R5tzLQH%cw_%zv z02IPDv_l;aB~^G>as)$twc{*!i#}D04kK*W`=5xVblyIH5*%BaIPbbuVD1~3=&22r zv@dl(ygtMaT0L6NZ+@cK;-S1L=6>#sTZ;=-WRp zeR}-A5Cj_F6aPtL`;Ur`vF06HOH|I&+?y*8nL*#$kCKG|#Ouxj%$K<%aA1Z1;o7mf zxKA$9AjQgzlYI0VO!OL0{#nBy8oIVsKJWiXu+r~M#VwEW{PlRyDyzWH pG{PXz{|k2i`#}EhJA&TG9C9eW4Vv5?E}o}r%TUksdIi)W^1q4;@!|jg literal 0 HcmV?d00001 diff --git a/harness/experiments/resize-port-policy-20260912/falsifiers/run.json b/harness/experiments/resize-port-policy-20260912/falsifiers/run.json new file mode 100644 index 00000000..da66723a --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/falsifiers/run.json @@ -0,0 +1,199 @@ +{ + "core_source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "test_source": "a95db10ce73d639f59eb1ec1153de26f4967881c", + "results": [ + { + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe", + "a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports", + "--exact", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:23:01.989684+00:00", + "end": "2026-09-12T22:23:02.278947+00:00", + "seconds": 0.296, + "exit": 101, + "log": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1.log", + "log_sha256": "ffab61debe6b597b440f2649b35475ecf6b47a005667bed4334e74bd1680dfed", + "test": "a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports", + "expected_exit": 101, + "expected_acceptance_failure_observed": true, + "test_passed": false, + "changed_inputs": [], + "changed_binary": [], + "geometry": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-259.9.arcadia": { + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-259.9.projection.json": { + "sha256": "7048b8be89efe587c8a933058895626c3dc57f5eed01eb0e9bf8680125a9a624", + "bytes": 12209 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-259.9.routing.txt": { + "sha256": "083343c236f945bc7e39b8dfb39e659c7ecb039563155ff7d8dc94d19634e68b", + "bytes": 32141 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.1.arcadia": { + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.1.projection.json": { + "sha256": "0a2b6ac08ac3912f2ebf249ef52ce2dd671504e59f14d988dcb0eb5f79c9a8e4", + "bytes": 12195 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.1.routing.txt": { + "sha256": "271ce46e118c856135191629ad598bedf531e48eee2f45aa54a698dc1366c888", + "bytes": 32167 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.arcadia": { + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900", + "bytes": 12098 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.projection.json": { + "sha256": "eb14be7a70aef998ff08c4f7cfe74450f602d81f9ddeea61aed33c69c2737593", + "bytes": 12169 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-CapacityAware-260.routing.txt": { + "sha256": "18b5f922f81551213d2e50405f31f0ed74ba4856e6c49d437050b16b03485a68", + "bytes": 32028 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-259.9.arcadia": { + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-259.9.projection.json": { + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5", + "bytes": 12186 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-259.9.routing.txt": { + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd", + "bytes": 30994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.1.arcadia": { + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.1.projection.json": { + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5", + "bytes": 12186 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.1.routing.txt": { + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd", + "bytes": 30994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.arcadia": { + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900", + "bytes": 12098 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.projection.json": { + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5", + "bytes": 12186 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-Current-260.routing.txt": { + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd", + "bytes": 30994 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-259.9.arcadia": { + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-259.9.projection.json": { + "sha256": "92ab33ff4cdbd5e18bf3a2893d29bcb55f78efda7d82b59f16ee80caeee6aad6", + "bytes": 12253 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-259.9.routing.txt": { + "sha256": "c57a60ce9baa052a44e036886d8af7b42dc911757e661e05264efad07ac5d735", + "bytes": 32312 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.1.arcadia": { + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6", + "bytes": 12110 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.1.projection.json": { + "sha256": "24dc1a4a1afa3bba0d2d4896784a804e073b1af2f133214ce00edc1541e8b01f", + "bytes": 12259 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.1.routing.txt": { + "sha256": "410c062953566991f9c546f4317c0b1c4ad1b72405c5d417e2bba93d73fdd15e", + "bytes": 32320 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.arcadia": { + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900", + "bytes": 12098 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.projection.json": { + "sha256": "4ab8e2d23b9a0cd3767133e5aa489a8c63b8a5c88d90057dfc7cc70c707a03bc", + "bytes": 12248 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-1-geometry\\threshold-SameSidesAdaptSpacing-260.routing.txt": { + "sha256": "1f7d831e3be8e747f3d7480799b8c2ba8b9335fa08a2e8b9f2c7d2d83fc5c790", + "bytes": 32292 + } + } + }, + { + "command": [ + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\port-policy-falsifiers.exe", + "capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner", + "--exact", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:23:04.683161+00:00", + "end": "2026-09-12T22:23:04.768932+00:00", + "seconds": 0.078, + "exit": 101, + "log": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2.log", + "log_sha256": "86dffa487d3be1ea2121979575d09655ba602629314816a583b9fe8f50dd6020", + "test": "capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner", + "expected_exit": 101, + "expected_acceptance_failure_observed": true, + "test_passed": false, + "changed_inputs": [], + "changed_binary": [], + "geometry": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-CapacityAware.arcadia": { + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367", + "bytes": 6357 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-CapacityAware.projection.json": { + "sha256": "9068d2653b5b16b3f2d96a128fb54af7b5727da5fa25a6cd21292a28a27640c7", + "bytes": 5836 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-CapacityAware.routing.txt": { + "sha256": "202a50ed9372b0a467b18767254089468119d2d10e155a9778139b110eec04b4", + "bytes": 12559 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-Current.arcadia": { + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367", + "bytes": 6357 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-Current.projection.json": { + "sha256": "3cb12f1eb203cc7eab95f13d24579878660164839234b40925f9d2d498deced6", + "bytes": 5843 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-Current.routing.txt": { + "sha256": "3436416d36d8d3bd214d44fab749d15940bc2906debe4d242cf31cba25e546ed", + "bytes": 12630 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-SameSidesAdaptSpacing.arcadia": { + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367", + "bytes": 6357 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-SameSidesAdaptSpacing.projection.json": { + "sha256": "6731adb995e9989b5f7d19bf0838adf3f0fdb88ccae3380bd845cfad948b4cd4", + "bytes": 5866 + }, + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\native-qa\\resize-falsifiers-a95-01\\case-2-geometry\\obstacle-SameSidesAdaptSpacing.routing.txt": { + "sha256": "40fd5a8531bc8097a46e0d0893c98eebac5282f2b98f97e1dd6a516a220ba27a", + "bytes": 12767 + } + } + } + ], + "tests_passed": 0, + "expected_failures_observed": 2, + "policy_accepted": false +} diff --git a/harness/experiments/resize-port-policy-20260912/independent-review.md b/harness/experiments/resize-port-policy-20260912/independent-review.md new file mode 100644 index 00000000..1f0b7eca --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/independent-review.md @@ -0,0 +1,92 @@ +# Independent resize port-policy source review — 2026-09-12 + +Reviewer: `/root/nested_call_design`, which did not implement this policy. Target: experimental commit `7e25b3d3907693cbbf03bb51b5e08b01d743a934` in `.local/resize-port-policy-20260912`, its comparison report and source handoff. Read applicable AGENTS and relevant projection, allocator, routing and evaluator sources. No compilation, tests, native interaction, Git/Gitea action, or implementation edits. Only this report is written. All numerical counterexamples below are source-derived predictions awaiting actual-core execution. + +**Recommendation: keep the experiment isolated.** Freezing node bounds before side assignment addresses the identified feedback problem cleanly, and the allocator's alternating reassignment is a reasonable bounded capacity-matching algorithm. However, the current candidate has concrete side-churn and blocked-route falsifiers that matter to the user's ergonomic direct-resize objective. Passing its existing eight comparison tests would not justify adoption. + +## Findings + +### P2 prospective ergonomic regression: a tiny resize can flip most ports between sides + +Paths: `crates/oa-core/src/projection/port_capacity_experiment.rs:34–52,56–70,93–101`; `projection/port_layout.rs:214–242,245–261` within the experimental worktree. + +The allocator fills the preferred side first, then assigns overflow to least-used remaining sides in L/R/T/B tie order. It recomputes from the first stable port ID for every rectangle. Gaining one preferred-side slot therefore shifts the phase of the entire fallback allocation. This is not necessary movement of just the port occupying the newly available slot. + +Concrete all-clear, no-manual-anchor case: use 100 Standard/Unset ports on one owner, each connected to the same distant right-hand peer (the existing `hundred_ports` fixture already supplies this shape). Keep width 728. Compare authored heights **819.9 and 820.0**; both exceed the semantic minimum 804. + +- At 819.9, each vertical side has capacity 28. The first 28 IDs take Right; the remaining 72 take Left, Top, Bottom repeatedly. +- At 820.0, each vertical side has capacity 29. The first 29 IDs take Right; IDs 30 onward restart the same Left, Top, Bottom sequence. +- Thus IDs 29–100 all change sides: **72 of 100 ports for a 0.1-unit height change**. Their attached exchanges can reroute across the frame and labels can move substantially. Stable UUID order makes this deterministic, not ergonomic. + +A smaller realistic falsifier is **20 ports**, width 224, heights **259.9 → 260.0**. Vertical capacity changes 8 → 9; **12 of 20 ports flip sides** by the same mechanism. For eight ports, heights 175.9 → 176.0 predict three side flips. Use one far-right peer, not the existing eight-port fixture's two above/below peers, so the peer-facing preference remains Right on both sides of the threshold. + +For the 20-port comparison, the entire preceding side assignment remains capacity-feasible at the larger height: zero side changes are required merely to preserve the nominal gap. If the policy elects to occupy the newly available preferred Right slot, moving one former Left port to Right is sufficient; the other eleven predicted flips are not required for that improvement. This is a comparison of 12 changes versus zero/one justified changes, **not** a requirement that resizing never move ports. Exact authored rectangles remain mandatory; refusing the requested rectangle would not resolve this finding. + +The design report permits some threshold side changes but explicitly excludes pathological route/label churn. This counterexample makes that criterion measurable. Keep stateless projection/source parity and manual-anchor stability, but compare a more stable deterministic assignment before choosing the policy. Do not fix it by silently persisting automatic anchors or adding a gesture-only frozen layout. + +### P2 prospective routing regression: capacity spillover can create a new unavoidable blocked port exit + +Paths: `projection/port_layout.rs:80–119,213,239,329`; `routing.rs:377–390,627–645,735–747`. + +`clear_exit` tests a side midpoint against **connected peers only**. Capacity assignment may use an unpreferred side that the spacing-only control never uses. The router subsequently treats the actual port position and its 18-unit outward stub as fixed, checks all visible obstacles with 12-unit clearance, and rejects a blocked stub before route search. A better path search cannot repair the port choice. + +Concrete model fixture: + +| Placement | Bounds | Meaning | +| --- | --- | --- | +| Owner | `(0,0)`, `224×160` | One System with eight Standard/Unset ports. | +| Far-right peer | `(1908,336)`, `184×132` | SystemActor with one port; each owner port has a BoundaryExchange to it. | +| Unrelated obstacle | `(0,-150)`, `224×132` | Separate visible SystemActor, with no exchange to the owner. No nesting/visual parent. | + +All eight owner demands prefer Right and report all sides clear, because the unrelated obstacle is absent from `peers.owners`. Under CapacityAware, Right has five slots, so the three overflow ports go to Left, Top and Bottom. The lone Top port is placed at `(112,0)` with outward stub ending `(112,-18)`. + +The unrelated obstacle occupies y `[-150,-18]`; after routing clearance inflation it occupies x `[-12,236]`, y `[-162,-6]`. The fixed Top stub crosses this inflated obstacle over y `[-18,-6]`. `route_edge` has only this port endpoint candidate, so the expected result is `NoClearPath` with a recoverable fallback. The spacing-only control keeps all eight ports on Right; those outward stubs are clear. Current also keeps Right, enlarging owner height to 232; its right exits remain clear. This is a **new warning introduced by capacity spillover**, not merely an existing difficult routing example. + +The comparison report already acknowledges midpoint/obstacle limitations, appropriately. The counterexample turns that acknowledged limitation into a compact candidate-versus-control test. Before adoption, side/position choice must account for actual possible exit positions and relevant obstacles while preserving authored anchors and frozen owner bounds. Expanding owner geometry or moving ports inside the router would violate the proposed boundary. + +Even when every obstacle is a connected peer, a clear midpoint does not prove clearance at the other automatic offsets. For example, a peer overlapping only the top-right corner can leave the Right midpoint clear while blocking the first Right port's y=18 stub. That weakness predates the policy, but distributing ports to new sides increases its practical impact. + +### P2 acceptance gap: the current geometry tests establish representability, not the resize workflow or a general inverse + +Paths: `tests/experimental_port_policy.rs:172–263,266–294,374–432,435–459`; `projection.rs:252–299`. + +The forbidden-rectangle test usefully proves that three directly authored rectangles become representable. The eight-handle test precomputes an edited rectangle in a flat eight-port fixture, sends an EditNode, and compares projection with that same rectangle. It does not call the desktop resize planner/gesture, exercise inward movement, zero motion, cancellation, stale input, minimum clamping, child enclosure, folded nodes or state boundary geometry. It therefore cannot establish the user's opposite-edge/captured-axis behavior for actual editing. The source handoff correctly lists those remaining gates; retain that distinction when publishing results. + +The 100-port test measures same-side center gaps only. It does not route the 100 exchanges, inspect glyph/text bounds, count warning regressions or quantify adjacent-frame side churn. The one-edge narrow-gap test never exercises a capacity spill, so it does not cover the new allocator's principal route risk. + +The explicit-Current-equals-default test is useful for ensuring the default entrypoint selects Current. Both calls ultimately enter the same new `project_diagram_impl`, however; this comparison alone cannot prove historical Current geometry remains unchanged. Keep the selected historical geometry controls and compare identified pre-experiment projection snapshots before claiming upgrade compatibility. Likewise, `candidate_geometry_is_deterministic_and_independent_of_peer_motion_and_names` edits aliases, not display names or construction order; its executed claim should match that narrower action. + +## Allocator correctness assessment + +No concrete capacity-matching completeness defect was found in `try_assign`. With static clear masks and integral capacities, visiting a full side bin once while examining its occupants is a conventional augmenting-path strategy. Failed recursion changes no assignments; a successful chain relocates occupants into a free bin and unwinds. Manual anchors are deliberately excluded from shadow demands, preserving the stated unrelated-side stability contract. + +The 343-case three-port/three-side exhaustive oracle is a useful small check, and the 20-demand scarce-capacity test probes capacities greater than one. Neither checks the fourth side, larger random masks/capacities, practical assignment churn or actual geometric realizability of clear masks. Do not confuse a correct capacity matching with a good port layout: the two prospective regressions do not require a matching error. They are normal-priority experimental findings to verify before adoption, not production incidents or a reason to abandon exact authored-rectangle resizing. + +The no-growth alternative also has a real positive boundary: after semantic minima/enclosure, port-side assignment no longer changes node rectangles. This supports solving the remaining resize mapping with one coherent projector. It is experimental evidence toward the objective, not a replacement for direct-editing acceptance. + +## Smallest next executable experiment + +Under root's serialized compiler lease, add/run **two actual-core comparison cases**, preserving the first failures before changing the policy: + +1. **Threshold sweep:** parameterize the distant-right-peer fixture for 8, 20 and 100 ports with deterministic IDs. For each policy project heights just below/at/above the thresholds above. Record per-port `(side,position)`, number of changed sides, minimum glyph separation, owner bounds, routed warning count, total route length and bends. Start with 20 ports if time is limited. Compare against spacing-only; explicitly retain its crowding result rather than declaring it the winner solely because it is stable. Expect CapacityAware's 20-port threshold to reproduce 12 side flips. +2. **Unrelated-top-obstacle case:** use the exact eight-port bounds above. Assert actual owner geometry and actual port positions; call production `route_diagram` for all policies. Independently test each mandatory port stub against each relevant inflated obstacle, not only route warning text. Expect CapacityAware's Top endpoint `(112,0)` and `NoClearPath`; expect clear right stubs for controls. Store route/port output and a compact visual artifact of that returned experimental ProjectedView for later inspection; ordinary export/desktop entrypoints still choose Current. + +These two tests resolve substantially more uncertainty than another round of inverse iterations or only expanding abstract mask enumeration. If either prediction fails, preserve the actual Project and explain which projection/route premise differed; do not relax its user-derived criterion to keep the candidate. + +Only after the candidate beats the control on these risks should root broaden to real eight-handle drag/Undo/save workflows, enclosure/fold/state inverse gates, manual near-coincident anchors, upgrade footprint and ordinary/minimum-scale native readability. No policy adoption or issue closure is recommended from source review alone. + +## Source identity and handoff + +Source identity is the supplied experimental commit `7e25b3d3907693cbbf03bb51b5e08b01d743a934`. SHA-256 hashes below capture the exact on-disk bytes reviewed, before root adds the proposed experiments. Paths in the first five rows are relative to `.local/resize-port-policy-20260912`; report paths are relative to the root workspace. + +| Reviewed file | SHA-256 | +| --- | --- | +| `crates/oa-core/src/projection.rs` | `DE7CA48F0EC56E97E8300E43B5941EEAAE76BAEB7D6D6D0B3ED562ABCEC250C0` | +| `crates/oa-core/src/projection/port_capacity_experiment.rs` | `098D7C571E0B8442430F4CCCA5AABB93580160E6A0B1A87B7AA7DAC5BB18F910` | +| `crates/oa-core/src/projection/port_layout.rs` | `395BD3E8323BF1053977B18CAE89612881E19A2132DACEFDA2FF6B9ADD0D9C6A` | +| `crates/oa-core/src/routing.rs` | `C5EBB350BA76F731F5C48D968BFBBA4B6EF68EC046EB5893D116C4637EF15080` | +| `crates/oa-core/tests/experimental_port_policy.rs` | `4883EC1B57AC04C37A6CA750C9DE07CE06A2E4BCDA00BE45FDE342F5721DA05D` | +| `.local/resize-port-policy-20260912.md` | `BF24C7659F3F4FE402CC87EFD4ADCB842ED5EB0C50B118311537ACF7B85BA9A4` | +| `.local/resize-port-policy-source-handoff-20260912.md` | `7C9C33D3F818FF68E80C36B4982EB6A43A4CB2FA9A4447DD8E9DF43614962FA3` | + +Root remains the integration and compiler/native acceptance owner. Preserve this review and these source identities before adding the two executable cases; attach actual results to a distinct experiment receipt. Predictions remain unexecuted, the candidate remains unadopted, and this handoff makes no production acceptance claim. No new matching or stateful architecture is selected by this review. diff --git a/harness/experiments/resize-port-policy-20260912/manifest.json b/harness/experiments/resize-port-policy-20260912/manifest.json new file mode 100644 index 00000000..ee2fcb26 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/manifest.json @@ -0,0 +1,367 @@ +[ + { + "file": "policy-comparison.md", + "bytes": 15538, + "sha256": "bf24c7659f3f4fe402cc87efd4adcb842ed5eb0c50b118311537acf7b85ba9a4" + }, + { + "file": "independent-review.md", + "bytes": 13550, + "sha256": "a7e7cc9e78f7580568b7fdf717ed612c9e9c345fcb32660aeeb41addad66b82d" + }, + { + "file": "source-handoff.md", + "bytes": 6553, + "sha256": "9413c870ecf3c53edf04bd298bef911d5b3c057f8251372857d18d45261083fa" + }, + { + "file": "run-policy-gates.py", + "bytes": 5184, + "sha256": "f1127b8a18f8e5a4caf08102b0fd5e766d67ef1a9db3144cdf3bd2ae98cfd7ab" + }, + { + "file": "run-policy-allocator.py", + "bytes": 2921, + "sha256": "119c3fe01b8f1ca2703ef8c12ebce3fbac43e940eb99ad02c7784d638ccd8784" + }, + { + "file": "windows/accepted-summary.json", + "bytes": 694, + "sha256": "8504beb8c19dd9e7fc027ecc9038844cfd2e9f2590756e7ce014c817b3ab56e6" + }, + { + "file": "windows/allocator-corrected.json", + "bytes": 958, + "sha256": "1d531dd4684e16dad5412e97637957230e0d726c1aa9d179e39f79fde1ec9d39" + }, + { + "file": "windows/allocator-corrected.log", + "bytes": 623, + "sha256": "9f2de355a179c6730dded25d6b1fc21ca88714c9cfcfd3b8b6c451af2e1f972a" + }, + { + "file": "windows/allocator.json", + "bytes": 1282, + "sha256": "b9dc0420f2627c8c7dc34a1f2bd24f1645e0e0a494bf8769aaab663c27974c2d" + }, + { + "file": "windows/allocator.log", + "bytes": 400, + "sha256": "642414c44ecf1c8ba7e33335066978081ad42e3a88cb7aaed05462b7aaf5a9b0" + }, + { + "file": "windows/comparison.json", + "bytes": 1077, + "sha256": "5ec400e7901740ca8ab1f1b005c1a69b1d35e42f4e5bfc1d0c8809ed8d67aa0e" + }, + { + "file": "windows/comparison.log", + "bytes": 2126, + "sha256": "51bbf540be96bef4a7b7afbb99ebac4cb40fd85ee66f850ad13b92347e5414ac" + }, + { + "file": "windows/inputs.json", + "bytes": 15811, + "sha256": "d9bcb3d51119ad804d8d745175c0c01a03cfb4dc9077102ff124af753fb30ffe" + }, + { + "file": "windows/port-anchors.json", + "bytes": 1485, + "sha256": "b18d177dbdee9a8919e5a4cdc83afdb7819fe39aacdf470e4bdd2beb97df4d52" + }, + { + "file": "windows/port-anchors.log", + "bytes": 1498, + "sha256": "8855361729836a25aa4d0294cd17fb5cc2ef0f83b434bd938be9f205495ea527" + }, + { + "file": "windows/summary.json", + "bytes": 4508, + "sha256": "75c95d0559cc5067fd03e1e001c480bf7dea47a79fd251e677c2579ea2b0e593" + }, + { + "file": "experiment.patch", + "bytes": 31316, + "sha256": "0d2779c1929d40806a019103eb2d05cdb603e381676995753146f26e9450a899" + }, + { + "file": "source/crates/oa-core/src/projection.rs", + "bytes": 22136, + "sha256": "de7ca48f0ec56e97e8300e43b5941eeaae76baeb7d6d6d0b3ed562abcec250c0" + }, + { + "file": "source/crates/oa-core/src/projection/port_capacity_experiment.rs", + "bytes": 7675, + "sha256": "098d7c571e0b8442430f4ccca5aabb93580160e6a0b1a87b7aa7dac5bb18f910" + }, + { + "file": "source/crates/oa-core/src/projection/port_layout.rs", + "bytes": 14848, + "sha256": "395bd3e8323bf1053977b18cae89612881e19a2132dacefda2ff6b9add0d9c6a" + }, + { + "file": "source/crates/oa-core/tests/experimental_port_policy.rs", + "bytes": 15254, + "sha256": "4883ec1b57ac04c37a6ca750c9de07ce06a2e4bcda00be45fde342f5721da05d" + }, + { + "file": "falsifiers/build.json", + "bytes": 1965, + "sha256": "9379a0ca9f2b8328ade5bb3536a4d1b39661c46d6a353a80b1ad9a800748cdca" + }, + { + "file": "falsifiers/build.log", + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + { + "file": "falsifiers/case-1.json", + "bytes": 8270, + "sha256": "7766be3b28dbae253f732bfdaa96ee2daa6a0bb3c63330eabd325ec24c1abb16" + }, + { + "file": "falsifiers/case-1.log", + "bytes": 75181, + "sha256": "ffab61debe6b597b440f2649b35475ecf6b47a005667bed4334e74bd1680dfed" + }, + { + "file": "falsifiers/case-2.json", + "bytes": 3269, + "sha256": "1403d0dc2d4ad466f717613b65e2cb3eeea222b5545a26f17a093b263acb6814" + }, + { + "file": "falsifiers/case-2.log", + "bytes": 11284, + "sha256": "86dffa487d3be1ea2121979575d09655ba602629314816a583b9fe8f50dd6020" + }, + { + "file": "falsifiers/inputs.json", + "bytes": 83023, + "sha256": "248c2b04b60b656821ca4c1e6607cd747191a0e83584ddbb646a13e2fae7a766" + }, + { + "file": "falsifiers/list.json", + "bytes": 706, + "sha256": "2cbf6f1e80862dd91ad61ecebd6f2a7d8b1ebdfc810c70319d3bdf7e0454e590" + }, + { + "file": "falsifiers/list.log", + "bytes": 161, + "sha256": "1bd8b4b52b361646b212aec9079e948257c3bbf57a5c511edfb01539aace2f3c" + }, + { + "file": "falsifiers/obstacle-comparison.png", + "bytes": 42737, + "sha256": "24136e50b2a12f86485e01c3a4883b12584536ce1ae317a8d48b35a8b2d965f8" + }, + { + "file": "falsifiers/run.json", + "bytes": 12529, + "sha256": "009c769ce53afb5860ffbfa1d10cce5e5b2d3368d1b39b3b6a0bb8037fe6b007" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-259.9.arcadia", + "bytes": 12110, + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-259.9.projection.json", + "bytes": 12209, + "sha256": "7048b8be89efe587c8a933058895626c3dc57f5eed01eb0e9bf8680125a9a624" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-259.9.routing.txt", + "bytes": 32141, + "sha256": "083343c236f945bc7e39b8dfb39e659c7ecb039563155ff7d8dc94d19634e68b" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-260.1.arcadia", + "bytes": 12110, + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-260.1.projection.json", + "bytes": 12195, + "sha256": "0a2b6ac08ac3912f2ebf249ef52ce2dd671504e59f14d988dcb0eb5f79c9a8e4" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-260.1.routing.txt", + "bytes": 32167, + "sha256": "271ce46e118c856135191629ad598bedf531e48eee2f45aa54a698dc1366c888" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-260.arcadia", + "bytes": 12098, + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-260.projection.json", + "bytes": 12169, + "sha256": "eb14be7a70aef998ff08c4f7cfe74450f602d81f9ddeea61aed33c69c2737593" + }, + { + "file": "falsifiers/case-1-geometry/threshold-CapacityAware-260.routing.txt", + "bytes": 32028, + "sha256": "18b5f922f81551213d2e50405f31f0ed74ba4856e6c49d437050b16b03485a68" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-259.9.arcadia", + "bytes": 12110, + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-259.9.projection.json", + "bytes": 12186, + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-259.9.routing.txt", + "bytes": 30994, + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-260.1.arcadia", + "bytes": 12110, + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-260.1.projection.json", + "bytes": 12186, + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-260.1.routing.txt", + "bytes": 30994, + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-260.arcadia", + "bytes": 12098, + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-260.projection.json", + "bytes": 12186, + "sha256": "a2e8080dd8bddde1211de367c95b6cc22a9c1b9d06990c3c0ebef373222718e5" + }, + { + "file": "falsifiers/case-1-geometry/threshold-Current-260.routing.txt", + "bytes": 30994, + "sha256": "3b3a4abb170d32897f50bbc9ec9920bac229d68b1e8ccc71c76ec703e5e894bd" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.arcadia", + "bytes": 12110, + "sha256": "a83f77bfaa2e541415f1feb8292987aa5e153917f50b8af7a860c2202fb14605" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.projection.json", + "bytes": 12253, + "sha256": "92ab33ff4cdbd5e18bf3a2893d29bcb55f78efda7d82b59f16ee80caeee6aad6" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-259.9.routing.txt", + "bytes": 32312, + "sha256": "c57a60ce9baa052a44e036886d8af7b42dc911757e661e05264efad07ac5d735" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.arcadia", + "bytes": 12110, + "sha256": "f291db263d0d888866e28a80a8690f9980a38ad0c28f69ca418e2adda77283a6" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.projection.json", + "bytes": 12259, + "sha256": "24dc1a4a1afa3bba0d2d4896784a804e073b1af2f133214ce00edc1541e8b01f" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.1.routing.txt", + "bytes": 32320, + "sha256": "410c062953566991f9c546f4317c0b1c4ad1b72405c5d417e2bba93d73fdd15e" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.arcadia", + "bytes": 12098, + "sha256": "c3be9b5dcde531a881c824489293c79b2eaf31186bbe0284061dd1361f381900" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.projection.json", + "bytes": 12248, + "sha256": "4ab8e2d23b9a0cd3767133e5aa489a8c63b8a5c88d90057dfc7cc70c707a03bc" + }, + { + "file": "falsifiers/case-1-geometry/threshold-SameSidesAdaptSpacing-260.routing.txt", + "bytes": 32292, + "sha256": "1f7d831e3be8e747f3d7480799b8c2ba8b9335fa08a2e8b9f2c7d2d83fc5c790" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-CapacityAware.arcadia", + "bytes": 6357, + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-CapacityAware.projection.json", + "bytes": 5836, + "sha256": "9068d2653b5b16b3f2d96a128fb54af7b5727da5fa25a6cd21292a28a27640c7" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-CapacityAware.routing.txt", + "bytes": 12559, + "sha256": "202a50ed9372b0a467b18767254089468119d2d10e155a9778139b110eec04b4" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-Current.arcadia", + "bytes": 6357, + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-Current.projection.json", + "bytes": 5843, + "sha256": "3cb12f1eb203cc7eab95f13d24579878660164839234b40925f9d2d498deced6" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-Current.routing.txt", + "bytes": 12630, + "sha256": "3436416d36d8d3bd214d44fab749d15940bc2906debe4d242cf31cba25e546ed" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.arcadia", + "bytes": 6357, + "sha256": "46c3d1b755a7bbbaf4dbf62290be3f18261f13308564a49efdb3cd749f506367" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.projection.json", + "bytes": 5866, + "sha256": "6731adb995e9989b5f7d19bf0838adf3f0fdb88ccae3380bd845cfad948b4cd4" + }, + { + "file": "falsifiers/case-2-geometry/obstacle-SameSidesAdaptSpacing.routing.txt", + "bytes": 12767, + "sha256": "40fd5a8531bc8097a46e0d0893c98eebac5282f2b98f97e1dd6a516a220ba27a" + }, + { + "file": "standalone-port-falsifiers.py", + "bytes": 12260, + "sha256": "2000af782ec8cb489cfa9385b9f7da01a5df4dcaaaf6aef5847eff5661ee99c2" + }, + { + "file": "render-port-obstacle.py", + "bytes": 3627, + "sha256": "a6762c4f0c1874dfa16169bfd65800b97cf8f06f7ffbb7bba7afb48108d991d4" + }, + { + "file": "falsifier-handoff.md", + "bytes": 7742, + "sha256": "d7fb644ecb71e4c1a9b6ca64e318debddfe3337a5b1c27429b55d99e876e95da" + }, + { + "file": "source/crates/oa-core/tests/experimental_port_policy_falsifiers.rs", + "bytes": 14732, + "sha256": "0a659fad3e5afcf563bacb2f10467bb2428c385ce991c1e7eb8c04207efb3255" + }, + { + "file": "falsifiers.patch", + "bytes": 15413, + "sha256": "16d70dca93b8dafabe1b522b6d53a90cb5b6aa4df1c3ad4db167f06189c7f433" + } +] diff --git a/harness/experiments/resize-port-policy-20260912/policy-comparison.md b/harness/experiments/resize-port-policy-20260912/policy-comparison.md new file mode 100644 index 00000000..8d3064f5 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/policy-comparison.md @@ -0,0 +1,83 @@ +# Port-capacity policy comparison for predictable resize — 2026-09-12 + +Status: bounded source/design comparison for root's Gitea issue16. This report is a proposal for an isolated experiment, **not an accepted policy or implemented fix**. Only this `.local` report was written. No production/tracked files, compiler/Cargo, native application, Git or Gitea were changed. Root owns the concurrent desktop focus integration and release work. + +## Decision to test + +Prototype **capacity-aware automatic side assignment over finalized owner bounds** as the leading candidate, with **unchanged side choices plus adaptive spacing** as the simpler control. Keep the current policy as a regression control. Do not increase inverse-search iterations: the executed inverse experiment demonstrated target rectangles that the present projector cannot represent. + +The useful architectural boundary is: **finalize rectangular node geometry from authored bounds, semantic port minima and visual containment before choosing automatic port sides or routing**. Ports and routes may respond to the frame; their automatic choices must not feed new dimensions back into it. This boundary retains exact source/API/projection parity without a schema flag or implicitly authored port anchors. It would also make unchanged authored child rectangles visually stationary, apart from the already explicit state boundary symbols and ancestor enclosures. + +This comparison does not select the final allocator or claim routing/readability success. The lead candidate must beat the simple control on concrete crowded/blocked examples before its added allocation logic is justified. + +## Evidence and criteria + +The executed inverse experiment is documented in `diagram-resize-inverse-experiment-20260912.md`, with receipts under `.local/native-qa/resize-inverse-r1-42511f0`. All static requests resolved, but each automatic/manual port fixture had24 unresolved requests out of48. Three selected W/N/S targets have structural impossibility arguments, not merely a finite-search failure. No successful candidate needed residual corrections. + +User-derived criteria are predictable eight-handle editing for good layouts, useful visual nesting, readable ports/exchanges, low cognitive load, maintainability and full graphical/textual equivalence (`PROJECT_GOAL.md`). The policies must preserve: + +- Captured opposite edges and inactive visible axes, original inactive authored fields where possible, one selected-record resize and exact zero-motion fallback. +- Semantic port/connection identity, contract, orientation and ownership. Manual anchors remain exact authored sides and complete-edge fractions; resize must not invent anchors for formerly automatic ports. +- One deterministic core projection for desktop, SVG, Fit, hit testing and routed endpoints. No gesture-local layout regime that changes on release/reopen. +- Actual projected ports as hard routing endpoints with outward18-unit stubs and12-unit clearance, keeping authored pins. Routing must not silently move a port to make a path easier (`routing.rs:377–406`; `harness/release-routing-contract.md:102–117`). +- Existing port-edit stability: a manual anchor edit does not resize any owner or flip unrelated automatic sides (`port_layout.rs:206–207`; `tests/port_anchors.rs:535–603`). Automatic positions on the affected side may adapt around the authored anchor. + +The wire specification only requires absent anchors to use automatic positioning and preserves authored sides/fractions through resize; it does not normatively require geometry-driven capacity enlargement (`docs/language.rst:1120–1155`). A core automatic-layout policy can therefore change without a new model field, but its rendering change and regression evidence must be documented. + +## Current mechanics and a useful capacity fact + +`projection.rs:314–350` applies semantic-count size floors, then encloses visual children. `projection/port_layout.rs:203–264` chooses sides from normalized peer facing, midpoint exit clearance, semantic preference and least current count; freezes those choices; enlarges owner dimensions for their capacity; and encloses again. That last feedback causes the resize obstacles. + +The earlier semantic-count minimum already provides **enough total four-side capacity** for all owner ports at nominal gap28, before peer-facing choices: + +- For the largest semantic/balanced vertical-side count `v`, height is at least `76+28(v+1)=28v+104`, versus the side-capacity requirement `36+28(v−1)=28v+8`. +- For the largest horizontal-side count `h`, width is at least `28(h+1)=28h+28`, versus `28h+8` needed on that side. +- Therefore the original semantic/balanced assignment fits each side, and later enclosure only increases available lengths. With capacity `0` for edge length<36, otherwise `floor((length−36)/28)+1`, total capacity is sufficient. This is a source-level argument over current ordinary-node floors, not a claim that all **clear exits** or arbitrary manual placements have sufficient capacity. + +The lead candidate can use this existing space rather than adding a worst-case square floor. It must still handle ports whose clear-side options are restricted and manual anchors crowded onto one side. + +## Material alternatives + +| Policy | Predictable bounds | Readability/routing tradeoff | Assessment | +| --- | --- | --- | --- | +| Current peer-driven side choices, then grow dimensions | No: verified unreachable fixed-edge targets and nonmonotone feasible ranges | Preserves28-unit capacity for automatic shadow choices, but can enlarge unrelated owners/ancestors and still cannot guarantee arbitrary manual spacing | Reject as the complete resize foundation | +| Keep current side choices; remove capacity growth and fit spacing on those sides | Yes, with existing semantic/content floors | Smallest change and strongest preservation of preferred facing. Eight neutral ports on a160-high side have124 usable units, about17.7 spacing;100 concentrated neutral ports on the existing804-high owner have about7.76 spacing, below14-unit square glyph width | Essential simple control; insufficient default if readable free sides are available | +| Allocate automatic shadow choices within finalized side capacities; adapt spacing only when clear capacity/manual constraints force it | Yes | Retains28 spacing when a clear capacity assignment exists; some ports face a less direct side and routes may become longer. Needs deterministic scarcity handling and post-placement routing evaluation | Leading candidate for a bounded prototype | +| Static worst-case size sufficient for all ports on every side | Yes | Gives eight ports a232×232 minimum and100 ports roughly2808×2808, versus the present balanced728×804. It defeats compact layouts to reserve mostly unused space | Reject as the ordinary default | +| Static semantic/round-robin sides with no peer steering | Yes | Very simple, but can send a lone neutral port to Left while its peer is Right, increase detours, and discard useful existing clear-exit behavior | Reject as the ordinary default; useful conceptual baseline only | + +Do not add an implicit “locked size”/manual resize schema flag merely to bypass the current growth pass. That introduces two projection regimes and migration/source/API obligations before simpler policies are tested. Similarly, freezing automatic sides only during a drag breaks preview/reopen parity; persisting those frozen choices silently changes automatic ports into manual anchors. + +## Lead candidate, precisely bounded + +1. Retain current semantic-count minima, fold rules and first visual-enclosure pass. Freeze these node bounds for port layout. Remove only the second port-choice-driven owner enlargement/re-enclosure from the experimental policy. +2. Compute each port's current peer information, semantic preference and clear-side set over those final bounds. Compute nominal capacities from edge lengths. Preserve the existing preferred side when it has capacity and a clear exit. +3. Assign **shadow automatic sides for every port, including manually anchored ports**, independently of the manual anchor list. Apply authored side/fraction overrides only afterward. This deliberately retains some unused shadow capacity when a port is moved manually; using that newly free space to reshuffle other sides would violate the existing anchor-edit stability contract. +4. Prefer clear capacity over an already-full preferred side. Use deterministic stable IDs and the existing semantic/least-count tie behavior where applicable, so100 unconnected neutral ports remain balanced25 per side and renaming/list reordering does not change geometry. +5. Do not call a greedy miss “no clear capacity.” A small alternating reassignment over four side bins can repair an assignment that used scarce capacity poorly. Greedy-versus-reassignment is an experimentable implementation choice: add reassignment only when the explicit scarcity fixture demonstrates its value, rather than introducing a generic flow library. +6. If no all-clear capacity assignment exists, preserve clear exits before nominal gap: select a deterministic clear overflow side and use spacing adaptation, with a measurable crowded outcome. If no side is clear, retain the current deterministic fallback and its recoverable routing warning. Do not choose a blocked stub solely because that side has free capacity or enlarge the owner behind the user's handle. +7. Apply manual overrides and use the existing anchor-respecting `automatic_positions` as the initial position allocator. It already degrades its desired gap when anchors are crowded (`port_layout.rs:319–397`). Do not claim a guaranteed28 gap around arbitrary authored offsets: two manual anchors may coincide legally. + +A scarcity counterexample for the assignment layer has capacities L8/R8/T≥4 and no admissible Bottom: eight ports allow L/T and prefer L, nine allow L/R, and three allow R/T. Assigning the first eight to L can strand the ninth L/R port although moving one earlier port to T gives a feasible assignment.20 neutral ports have minimum height244, whose L/R capacities are8, and sufficient top capacity. A concrete model fixture must realize those clear-side sets using peer blockers and distant peers before this becomes executed core evidence. Simple “fewest clear sides first” is not enough here because all sets have two sides. + +## Counterexample gates + +**Geometry and parity.** Re-run all eight inverse handles, including old absolute forbidden rectangles224×242 at(0,−10),214×232 at(10,0), and224×222 at(0,0). The new policy should realize those exact valid rectangles. Also use each policy's own baseline, including zero motion, smaller valid records, enclosure-displaced origins, allocated descendants, folds, state headers and partially shown ancestors. Moving a peer, hiding a line or editing an anchor must not change rectangular node bounds; filters already run after port geometry (`projection.rs:521–529`). Check accepted source/API records and full preview/reopen equality. + +**Readable clear space.** Use8,20 and100 neutral ports all facing the same peer(s), plus asymmetric function inputs/outputs. When a clear nominal-capacity assignment exists and there are no crowding manual anchors, capacity-aware placement must maintain the28-unit target within each side; pure spacing adaptation is expected to fail on the100-port case. Current component glyphs are14×14 world units (`diagram.rs:1282–1295`), so merely showing nonidentical coordinates is not a readability evaluator. Measure adjacent distances and overlaps, then inspect labeled native workflows at ordinary and low zoom later. + +**Scarce exits.** Test the20-port assignment counterexample, a narrow peer gap, and all-clear-capacity exhausted while one clear side remains. Preserve the existing narrow-gap no-warning example (`tests/port_anchors.rs:511–533`). Compare the final outward stubs and routed paths, not just the midpoint predicate: current `clear_exit` examines only the side midpoint against connected peers, whereas final ports may lie near corners and routing considers unrelated obstacles too (`routing.rs:627–647`). A free midpoint can conceal a blocked actual port stub. New blocked routes where the control has a clear readable route are a material failure requiring a position/assignment refinement. + +**Manual precision/stability.** Anchors at0,.25,.5,1, near-coincident anchors, all ports manually placed on one side, and anchors moved between sides. Retain exact metadata and final fractional border position. Keep all nodes and unrelated automatic sides stable on an anchor-only edit. If manual choices force physical crowding, show that condition honestly; do not move authored anchors or fail an otherwise valid resize. + +**Determinism and route quality.** Permute construction/list order, rename elements, translate a group, fold/reopen, filter exchanges and replay source/API edits. Compare port sides, endpoints, route warnings, total length, bend/crossing counts, and authored-pin preservation. Use small realistic OA/SA scenes as well as the synthetic extremes; reduced dimensions alone do not establish better layouts. Automatic side changes at capacity thresholds are permitted but must not cause owner-size oscillation, repeated flips for a stationary pointer or pathological label/route churn. + +**Upgrade footprint.** Removing the dynamic growth pass can shrink previously auto-expanded views on reopening unchanged authored source. The verified224×160 fixture would now stay224×160. Inventory affected examples and document this rendering change. Do not silently normalize every placement or rewrite existing sources to manufacture old-version pixel equivalence. Manual fractions remain exact, but their physical separation and existing route-pin relationships must be inspected in the new geometry. + +## Smallest next prototype + +After root claims the bounded implementation and grants a compiler lease, use an isolated experimental core copy/worktree and separate build artifacts. Keep tracked production inputs untouched initially. Introduce three temporary comparison modes at the existing port-layout boundary: Current, SameSidesAdaptSpacing, and CapacityAware. Use the same actual semantic minima, enclosure, position allocation and router for all modes; a narrow experiment-only entrypoint may pass the policy through projection. Do not duplicate the projector in a desktop-only solver. + +First prove Current reproduces the identified core output, then test the eight-port geometry and100-port readability controls, followed by the scarcity/narrow-gap/manual cases. Record candidate projections plus actual routing, not hypothetical performance. If a simple greedy capacity allocator fails the scarcity fixture, test the small deterministic alternating reassignment before promoting it. If both no-feedback modes create serious new blocked/crossed routes, investigate actual slot clearance rather than reinstating silent owner enlargement. + +Only after these comparisons pass should root select the policy, extract shared geometry/minimum facts for the production resize planner, update the derived projection contract and port tests, and proceed to handle/UI evaluation. The previous finite-seed inverse planner is reusable; its residual loop has no demonstrated value. This preserves progress toward complete eight-handle editing without promoting an unverified port policy or treating a reduced positive-edge feature as completion. diff --git a/harness/experiments/resize-port-policy-20260912/render-port-obstacle.py b/harness/experiments/resize-port-policy-20260912/render-port-obstacle.py new file mode 100644 index 00000000..210a7e52 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/render-port-obstacle.py @@ -0,0 +1,59 @@ +"""Analytical drawing of recorded experimental geometry, not an app screenshot.""" +from pathlib import Path +import hashlib +import json +from PIL import Image, ImageDraw, ImageFont + +root = Path(__file__).resolve().parent.parent +run = root / '.local/native-qa/resize-falsifiers-a95-01' +output = run / 'obstacle-comparison.png' +assert not output.exists() +record = json.loads((run / 'case-2.json').read_bytes()) +font = lambda n: ImageFont.truetype('C:/Windows/Fonts/arial.ttf', n) +canvas = Image.new('RGB', (1260, 760), '#ffffff') +draw = ImageDraw.Draw(canvas) +draw.text((30, 20), 'A capacity spill creates a blocked port exit', font=font(27), fill='#142a3b') +draw.text((30, 60), 'Recorded core geometry; cropped owner and obstacle. Port stubs only, not desktop rendering.', font=font(17), fill='#374957') +styles = [('Current', 'Current', 'Owner grows to 224 x 232'), + ('SameSidesAdaptSpacing', 'Adaptive spacing', 'Requested owner: 224 x 160'), + ('CapacityAware', 'Capacity-aware candidate', 'Requested owner: 224 x 160')] +for index, (policy, title, caption) in enumerate(styles): + path = run / 'case-2-geometry' / f'obstacle-{policy}.projection.json' + raw = path.read_bytes() + assert hashlib.sha256(raw).hexdigest() == record['geometry'][str(path)]['sha256'] + view = json.loads(raw) + left = 20 + index * 415 + scale = 1.2 + point = lambda x, y: (left + 70 + x * scale, 335 + y * scale) + rect = lambda n, pad=0: (*point(n['position']['x'] - pad, n['position']['y'] - pad), + *point(n['position']['x'] + n['size']['width'] + pad, + n['position']['y'] + n['size']['height'] + pad)) + draw.rounded_rectangle((left, 104, left + 402, 738), radius=9, outline='#c1cbd2', width=1) + draw.text((left + 15, 116), title, font=font(20), fill='#142a3b') + owner = next(n for n in view['nodes'] if n['id'].endswith('0028')) + obstacle = next(n for n in view['nodes'] if n['id'].endswith('002a')) + draw.rectangle(rect(obstacle, 12), fill='#fee7e7', outline='#d68a8a', width=1) + draw.rectangle(rect(obstacle), fill='#dce3e9', outline='#4e6475', width=2) + draw.text(point(17, -125), 'Unrelated obstacle', font=font(18), fill='#243c4e') + draw.text(point(17, -99), 'Pink: 12-unit clearance', font=font(16), fill='#774040') + draw.rectangle(rect(owner), fill='#eef7ff', outline='#205b86', width=2) + draw.text(point(20, 30), 'Owner', font=font(19), fill='#205b86') + bad = 0 + for port in view['ports']: + if port['owner'] != owner['id']: + continue + x, y = port['position']['x'], port['position']['y'] + nx, ny = {'Left': (-1, 0), 'Right': (1, 0), 'Top': (0, -1), 'Bottom': (0, 1)}[port['side']] + # This record's independently observed collision is retained in case-2. + blocked = policy == 'CapacityAware' and port['element'].endswith('006a') + bad += blocked + color = '#bc212b' if blocked else '#205b86' + draw.line([point(x, y), point(x + nx * 18, y + ny * 18)], fill=color, width=4 if blocked else 2) + draw.rectangle((*point(x - 7, y - 7), *point(x + 7, y + 7)), fill='white', outline=color, width=2) + if blocked: + draw.text(point(129, -18), 'Blocked', font=font(17), fill=color) + draw.text((left + 15, 650), caption, font=font(18), fill='#243c4e') + draw.text((left + 15, 680), f'{bad} blocked stub' + ('' if bad == 1 else 's'), font=font(18), fill='#bc212b' if bad else '#205b86') + draw.text((left + 15, 708), 'Distant connected peer is outside this crop.', font=font(14), fill='#4e6475') +canvas.save(output) +print(output) diff --git a/harness/experiments/resize-port-policy-20260912/run-policy-allocator.py b/harness/experiments/resize-port-policy-20260912/run-policy-allocator.py new file mode 100644 index 00000000..f153624d --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/run-policy-allocator.py @@ -0,0 +1,55 @@ +"""Corrected, nonempty allocator gate supplement; preserves earlier zero-filter receipt.""" +from pathlib import Path +from datetime import datetime, timezone +import hashlib +import json +import os +import re +import subprocess +import time + +worktree = Path(__file__).resolve().parent.parent +out = worktree / '.local/gate-7e25b3d-20260912-01' +inputs = json.loads((out / 'inputs.json').read_text()) +base = json.loads((out / 'summary.json').read_text()) +assert base['all_passed'], 'Resolve a genuine base gate failure before this supplement' +source = inputs['source'] +assert subprocess.check_output(['git', 'rev-parse', 'HEAD'], cwd=worktree).decode().strip() == source +log_path = out / 'allocator-corrected.log' +receipt = out / 'allocator-corrected.json' +assert not log_path.exists() and not receipt.exists() + +def sha(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + +assert all(sha(worktree / path) == digest for path, digest in inputs['inputs'].items()) +assert all(sha(Path(path)) == digest for path, digest in inputs['protected'].items()) +env = os.environ.copy() +env['CARGO_TARGET_DIR'] = inputs['target'] +env['CARGO_BUILD_JOBS'] = '1' +command = ['cargo', 'test', '--locked', '--jobs', '1', '-p', 'oa-core', '--lib', + 'capacity_experiment::tests', '--', '--nocapture', '--test-threads=1'] +start = datetime.now(timezone.utc).isoformat() +clock = time.monotonic() +print('START corrected allocator: ' + repr(command), flush=True) +with log_path.open('wb') as log: + run = subprocess.run(command, cwd=worktree, env=env, stdout=log, stderr=subprocess.STDOUT) +text = log_path.read_text(errors='replace') +matched = re.search(r'test result: ok\. (\d+) passed; (\d+) failed;', text) +count = int(matched.group(1)) if matched else None +changed = [path for path, digest in inputs['inputs'].items() if sha(worktree / path) != digest] +protected_changed = [path for path, digest in inputs['protected'].items() if sha(Path(path)) != digest] +artifacts = [] +for path in Path(inputs['target']).rglob('oa_core-*.exe'): + artifacts.append({'path': str(path.relative_to(worktree)), 'bytes': path.stat().st_size, 'sha256': sha(path)}) +record = {'source': source, 'command': command, 'start': start, + 'end': datetime.now(timezone.utc).isoformat(), 'elapsed_seconds': round(time.monotonic()-clock, 3), + 'exit': run.returncode, 'passed_tests': count, 'expected_tests': 3, + 'accepted': run.returncode == 0 and count == 3 and not changed and not protected_changed, + 'changed_inputs': changed, 'changed_protected': protected_changed, + 'log_sha256': sha(log_path), 'artifacts': artifacts, + 'supersedes_as_test_evidence': 'allocator.json selected zero tests because its filter used the filename instead of module name'} +receipt.write_text(json.dumps(record, indent=2) + '\n', encoding='utf-8', newline='\n') +print(text, flush=True) +print(json.dumps(record), flush=True) +raise SystemExit(0 if record['accepted'] else 1) diff --git a/harness/experiments/resize-port-policy-20260912/run-policy-gates.py b/harness/experiments/resize-port-policy-20260912/run-policy-gates.py new file mode 100644 index 00000000..8cc2d0ec --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/run-policy-gates.py @@ -0,0 +1,97 @@ +"""Serialized, stamped core-only experiment gates; never uses root target artifacts.""" +from pathlib import Path +from datetime import datetime, timezone +import hashlib +import json +import os +import shutil +import subprocess +import time + +worktree = Path(__file__).resolve().parent.parent +root = worktree.parent.parent +source = '7e25b3d3907693cbbf03bb51b5e08b01d743a934' +out = worktree / '.local' / 'gate-7e25b3d-20260912-01' +target = worktree / '.local' / 'target-7e25b3d-01' +assert not out.exists() and not target.exists(), 'Never overwrite identified gate outputs' +assert target.resolve().is_relative_to(worktree / '.local') +assert target.resolve() != (root / 'target').resolve() +out.mkdir() + +def utc(): + return datetime.now(timezone.utc).isoformat() + +def sha(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + +def checked(args): + return subprocess.check_output(args, cwd=worktree, stderr=subprocess.STDOUT).decode().strip() + +def write(name, record): + (out / name).write_text(json.dumps(record, indent=2) + '\n', encoding='utf-8', newline='\n') + +assert checked(['git', 'rev-parse', 'HEAD']) == source +assert not checked(['git', 'status', '--porcelain', '--untracked-files=no']) +tracked = subprocess.check_output(['git', 'ls-files', '-z'], cwd=worktree).decode().split('\0') +inputs = [name for name in tracked if name and ( + name.startswith(('crates/oa-core/', '.cargo/')) + or name in ['Cargo.toml', 'Cargo.lock', 'rust-toolchain.toml'] + or name.endswith('/Cargo.toml'))] +before = {name: sha(worktree / name) for name in inputs} +protected_paths = [root / 'target/debug/deps/liboa_core-145180297aa692e4.rlib', root / '.local/toolchain/env.ps1'] +protected = {str(path): sha(path) for path in protected_paths} +env = os.environ.copy() +env['CARGO_TARGET_DIR'] = str(target) +env['CARGO_BUILD_JOBS'] = '1' +tools = { + 'cargo': checked(['cargo', '-V']), + 'rustc': checked(['rustc', '-Vv']), + 'active_toolchain': checked(['rustup', 'show', 'active-toolchain']), + 'paths': {}, +} +for tool in ['cargo', 'rustc']: + path = Path(checked(['rustup', 'which', tool])) + tools['paths'][tool] = {'path': str(path), 'sha256': sha(path)} +linker = Path(shutil.which('clang.exe')) +tools['paths']['linker'] = {'path': str(linker), 'sha256': sha(linker)} +write('inputs.json', {'source': source, 'start': utc(), 'worktree': str(worktree), + 'target': str(target), 'inputs': before, 'protected': protected, 'toolchain': tools, + 'environment': {key: env.get(key) for key in [ + 'CARGO_HOME', 'RUSTUP_HOME', 'CARGO_TARGET_DIR', 'CARGO_BUILD_JOBS', + 'CARGO_TARGET_X86_64_PC_WINDOWS_GNULLVM_LINKER']}}) + +gates = [ + ('comparison', ['cargo', 'test', '--locked', '--jobs', '1', '-p', 'oa-core', '--test', 'experimental_port_policy', '--', '--nocapture', '--test-threads=1']), + ('allocator', ['cargo', 'test', '--locked', '--jobs', '1', '-p', 'oa-core', '--lib', 'port_capacity_experiment', '--', '--nocapture', '--test-threads=1']), + ('port-anchors', ['cargo', 'test', '--locked', '--jobs', '1', '-p', 'oa-core', '--test', 'port_anchors', '--', '--nocapture', '--test-threads=1']), +] +results = [] +for name, command in gates: + started = utc() + clock = time.monotonic() + print(f'START {name}: {command}', flush=True) + with (out / (name + '.log')).open('wb') as log: + result = subprocess.run(command, cwd=worktree, env=env, stdout=log, stderr=subprocess.STDOUT) + changed = [name for name, digest in before.items() if sha(worktree / name) != digest] + protected_changed = [name for name, digest in protected.items() if sha(Path(name)) != digest] + artifacts = [] + for folder in [target / 'debug/deps', target / 'x86_64-pc-windows-gnullvm/debug/deps']: + if folder.is_dir(): + for pattern in ['liboa_core-*.rlib', 'experimental_port_policy-*.exe', 'oa_core-*.exe', 'port_anchors-*.exe']: + for path in folder.glob(pattern): + artifacts.append({'path': str(path.relative_to(worktree)), 'bytes': path.stat().st_size, 'sha256': sha(path)}) + record = {'source': source, 'name': name, 'command': command, 'start': started, 'end': utc(), + 'elapsed_seconds': round(time.monotonic() - clock, 3), 'exit': result.returncode, + 'changed_inputs': changed, 'changed_protected': protected_changed, + 'head_after': checked(['git', 'rev-parse', 'HEAD']), 'log_sha256': sha(out / (name + '.log')), + 'artifacts': artifacts} + write(name + '.json', record) + results.append(record) + print(f'END {name}: exit={result.returncode} seconds={record["elapsed_seconds"]} changed={changed} protected_changed={protected_changed}', flush=True) + if result.returncode or changed or protected_changed or record['head_after'] != source: + break + +write('summary.json', {'source': source, 'end': utc(), 'results': results, + 'all_passed': len(results) == len(gates) and all(r['exit'] == 0 and not r['changed_inputs'] and not r['changed_protected'] for r in results)}) +print(f'RECEIPTS {out}', flush=True) +raise SystemExit(0 if len(results) == len(gates) and all(r['exit'] == 0 and not r['changed_inputs'] and not r['changed_protected'] for r in results) else 1) diff --git a/harness/experiments/resize-port-policy-20260912/source-handoff.md b/harness/experiments/resize-port-policy-20260912/source-handoff.md new file mode 100644 index 00000000..2fb6eb15 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/source-handoff.md @@ -0,0 +1,56 @@ +# Port-policy prototype source handoff — 2026-09-12 + +Root-owned issue16 experiment; no policy promotion or production integration. + +- Worktree: `C:/Users/User/Documents/Git/ARCADIA-Studio/.local/resize-port-policy-20260912` +- Branch: `codex/resize-port-policy-experiment-956atf-20260912` +- Base: `e57c390` +- Source commit: **`7e25b3d3907693cbbf03bb51b5e08b01d743a934`** — `Prototype port layout policies without changing defaults` +- Worktree status after commit: clean. + +Only four owned experimental core/test files changed. Root tracked inputs, Gitea and native apps were not touched. `rustfmt` performed source-only formatting and `git diff --cached --check` passed. The three foundational gates subsequently passed under root's serialized compiler lease, against this exact unchanged commit, using a fresh isolated target directory. Compiler lease was released at 2026-09-12 22:10 UTC; no owned compiler remains live. + +## Source shape + +`crates/oa-core/src/projection.rs` adds a deliberately experimental, nonpersisted `ExperimentalPortPolicy` enum and `project_diagram_with_experimental_port_policy`. Ordinary projection and availability entrypoints explicitly use Current; no schema or UI/backend setting exists. + +`projection/port_layout.rs` keeps the current side-choice and position pipeline. Current retains its original capacity enlargement and second enclosure. SameSidesAdaptSpacing omits that enlargement. CapacityAware assigns automatic shadow sides within finalized edge capacities before applying the existing manual overrides/position allocator; it likewise omits the enlargement. + +`projection/port_capacity_experiment.rs` implements the bounded four-side allocator. It prefers a directly free clear side, then tries alternating reassignment over at most four visited side bins. If clear capacity cannot fit all ports, it favors a crowded clear exit over an empty blocked side and leaves spacing adaptation to the existing allocator. Manual metadata never enters shadow assignment, preserving owner/unrelated-side stability on manual edits. No generic flow library or inverse iteration was added. + +## Executed evaluator set + +`tests/experimental_port_policy.rs` contains eight actual-core comparisons: + +1. Explicit Current equals ordinary default projection for the demo and generated fixtures, accompanied by the historical728×2808 control and the three forbidden-rectangle controls elsewhere in the tests. +2. The three previously impossible absolute rectangles remain impossible under Current and are exact under both alternatives. +3. All eight outward handles over the eight-port fixture preserve fixed edges and inactive authored axes under the alternatives. +4.100 concentrated neutral ports compare Current, spacing-only and capacity-aware geometry/gaps; the test expects spacing-only overlap below14-unit glyph width while capacity-aware uses available sides at nominal28 spacing. +5. Manual anchor edits retain all node geometry and unrelated automatic sides, plus canonical source roundtrip. +6. Exact crowded/corner manual fractions and complete projection survive canonical reopen under both alternatives. +7. The established narrow peer-gap example keeps clear sides, actual port route endpoints, orthogonality and no route warning in all modes. +8. Capacity projection is deterministic, alias-independent and does not change the selected node's geometry when peers move. + +Three private allocator tests cover the20-demand scarcity assignment, overflow choosing a clear rather than blocked side, and all343 nonempty three-side mask triples against an exhaustive small assignment oracle. + +The scarcity mask test is **assignment-level only**. Its clear masks have not yet been realized by a validated model with real peer blockers. No claim of full geometric scarcity coverage is made. + +## Verified execution + +Receipts: `resize-port-policy-20260912/.local/gate-7e25b3d-20260912-01/`. The exact input and binary hashes, toolchain paths, environment, commands, exits and unchanged checks are in `inputs.json`, per-gate JSON/log pairs and `accepted-summary.json`. Windows gnullvm rustc/cargo 1.98.1; root absolute `.local/toolchain/env.ps1`; `CARGO_BUILD_JOBS=1`; isolated `CARGO_TARGET_DIR=.../resize-port-policy-20260912/.local/target-7e25b3d-01`. + +```text +cargo test --locked --jobs 1 -p oa-core --test experimental_port_policy -- --nocapture --test-threads=1 +cargo test --locked --jobs 1 -p oa-core --lib capacity_experiment::tests -- --nocapture --test-threads=1 +cargo test --locked --jobs 1 -p oa-core --test port_anchors -- --nocapture --test-threads=1 +``` + +Results: comparison **8/8** (0.36s test time; 362.671s including fresh build), corrected allocator **3/3** (0.01s; 1.437s total), port anchors **13/13** (0.42s; 12.328s total), all exit 0. The initial allocator filename filter selected zero tests; its original `allocator.json/log` is preserved but excluded as test evidence. The corrected module filter explicitly required three passing tests. `summary.json` records original command exits only; use `accepted-summary.json` for the corrected three-gate conclusion. All stamped inputs and protected root oldcore rlib/environment hashes remained unchanged. + +Measured 100-port owner bounds and minimum same-side center gaps: Current 728×2808 / 27.999878; SameSidesAdaptSpacing 728×804 / 7.757538; CapacityAware 728×804 / 28.444397. The isolated core rlib SHA-256 is `0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531`. + +The independent review `resize-port-policy-independent-review-20260912.md` was read after the base gates closed. Its concrete predicted 20-port threshold churn (12 side changes for 259.9→260 height) and unrelated-top-obstacle blocked mandatory stub are valid next falsifiers, not covered by these green tests. Both predictions remain unexecuted. Preserve this committed implementation for comparison and add those cases in a later authorized source/compiler cycle before selecting a production policy. + +The new tests are useful foundational gates, not policy acceptance. The100-port test measures geometry and glyph spacing, not full100-edge routed readability. Actual offset-specific stub clearance, realistic routing/label/crossing costs, source/API transaction lifecycle, enclosure/fold/state inverse suites, native UX, large-model performance and upgrade rendering drift remain downstream evidence. The existing `resize-port-policy-20260912.md` comparison records those criteria and rejected approaches. + +No compiler or long-running task remains owned by this source handoff. diff --git a/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection.rs b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection.rs new file mode 100644 index 00000000..2ee820e3 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection.rs @@ -0,0 +1,599 @@ +pub use crate::model::PortAnchorSide; +use crate::*; +use serde::{Deserialize, Serialize}; +use std::collections::{BTreeMap, BTreeSet}; +mod port_layout; +pub use port_layout::{port_anchor_offset, port_anchor_position}; + +/// Isolated experiment only: no persisted setting or production default change. +#[doc(hidden)] +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +pub enum ExperimentalPortPolicy { + Current, + SameSidesAdaptSpacing, + CapacityAware, +} +#[path = "projection/state.rs"] +mod state; +pub(crate) use state::node_size as state_node_size; +pub use state::{state_header_height, state_machine_contains, state_symbol_size}; + +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] +pub struct ProjectedNode { + pub id: Id, + pub element: Id, + pub position: Position, + pub size: Size, + pub visual_parent: Option, + pub depth: usize, + pub collapsed: bool, + /// The work is grouped by its allocated leaves, not by a direct allocation. + pub allocation_summary: bool, +} +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] +pub struct ProjectedEdge { + pub id: Id, + pub source: Id, + pub target: Id, + pub trace: bool, + pub oriented: bool, + pub source_port: Option, + pub target_port: Option, +} +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] +pub struct ProjectedPort { + pub element: Id, + /// Placement identity of the owning visible function/participant. + pub owner: Id, + pub position: Position, + pub side: PortAnchorSide, +} +/// Semantic fallback for an unconnected port. Neutral ports have no preferred +/// side; the projected view resolves their placement using peers and capacity. +/// A preferred side never constrains an authored anchor. +pub fn port_anchor_side(e: &Element) -> Option { + let Some(SharedBody::Port { contract, legacy }) = e.shared() else { + return None; + }; + match contract { + PortContract::FunctionInput { .. } => Some(PortAnchorSide::Left), + PortContract::FunctionOutput { .. } => Some(PortAnchorSide::Right), + PortContract::Component { + kind: ComponentPortKind::Flow, + orientation: ComponentPortOrientation::In, + } => Some(PortAnchorSide::Left), + PortContract::Component { + kind: ComponentPortKind::Flow, + orientation: ComponentPortOrientation::Out, + } => Some(PortAnchorSide::Right), + PortContract::Legacy => match legacy.as_ref().map(|l| l.direction) { + Some(PortDirection::In) => Some(PortAnchorSide::Left), + Some(PortDirection::Out) => Some(PortAnchorSide::Right), + _ => None, + }, + _ => None, + } +} +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Default)] +pub struct ProjectedView { + pub nodes: Vec, + pub edges: Vec, + pub ports: Vec, +} +pub(crate) fn minimum_node_size(p: &Project, element: Id, size: Size) -> Size { + port_layout::minimum_size(p, element, size) +} +pub(crate) fn port_footer(_p: &Project, _element: Id) -> f32 { + 24. +} + +pub(crate) fn parents(p: &Project, d: &Diagram) -> BTreeMap> { + let placed: BTreeMap<_, _> = d + .nodes + .values() + .filter(|n| { + p.elements.get(&n.element).is_some_and(|e| { + e.kind() != Kind::Port + && d.projection.includes(e.kind()) + && d.projection + .state_machine() + .is_none_or(|machine| state_machine_contains(p, machine, e.id)) + }) + }) + .map(|n| (n.element, n.id)) + .collect(); + d.nodes + .values() + .filter(|n| placed.contains_key(&n.element)) + .map(|n| { + let mut semantic = p.elements.get(&n.element).and_then(|e| e.parent); + if d.projection == ProjectionKind::Allocation + && let Some(performer) = crate::validation::allocation_summary(p, n.element) + { + let mut candidate = semantic; + let mut visible_work_parent = None; + let mut seen = BTreeSet::new(); + while let Some(id) = candidate { + if !seen.insert(id) + || crate::validation::allocation_summary(p, id) != Some(performer) + { + break; + } + if placed.contains_key(&id) { + visible_work_parent = Some(id); + break; + } + candidate = p.elements.get(&id).and_then(|e| e.parent); + } + semantic = visible_work_parent.or(Some(performer)); + } + if d.projection == ProjectionKind::Traceability { + return (n.id, None); + } + let mut seen = BTreeSet::new(); + let mut parent = None; + while let Some(id) = semantic { + if !seen.insert(id) { + break; + } + if let Some(node) = placed.get(&id) { + parent = Some(*node); + break; + } + semantic = p.elements.get(&id).and_then(|e| e.parent); + } + (n.id, parent) + }) + .collect() +} +pub fn descendant_nodes(p: &Project, diagram: Id, node: Id) -> Vec { + let Some(d) = p.diagrams.get(&diagram) else { + return vec![]; + }; + let parents = parents(p, d); + parents + .keys() + .copied() + .filter(|candidate| { + let mut current = parents.get(candidate).copied().flatten(); + let mut seen = BTreeSet::new(); + while let Some(id) = current { + if id == node { + return true; + } + if !seen.insert(id) { + break; + } + current = parents.get(&id).copied().flatten(); + } + false + }) + .collect() +} +/// Actual endpoint-owner placements before folding promotes a hidden endpoint +/// to an ancestor. Ports belong to their placed function/participant; they do not +/// acquire independent placement identities. Missing placements are not inferred. +pub fn edge_endpoint_placements(p: &Project, d: &Diagram, edge: Id) -> Option<(Id, Id)> { + let (source, target) = if let Some(r) = p.relations.get(&edge) { + (r.source(), r.target()) + } else { + let trace = p.traces.get(&edge)?; + (trace.oa, trace.sa) + }; + let placement = |id| { + let element = p.elements.get(&id)?; + let owner = if element.kind() == Kind::Port { + element.parent? + } else { + id + }; + d.nodes.values().find(|n| n.element == owner).map(|n| n.id) + }; + Some((placement(source)?, placement(target)?)) +} + +/// Route updates for a simultaneous placement movement. `deltas` maps placement +/// identities to diagram-space displacement. Only routes with two actual owners +/// moving by the same nonzero delta translate; one-ended moves keep world pins. +/// Returns changed records only, for the caller to apply with its node edits in +/// one transaction. This pure helper also drives reflow and drag previews. +pub fn translated_routes( + p: &Project, + d: &Diagram, + deltas: &BTreeMap, +) -> Vec { + d.routes + .iter() + .filter_map(|route| { + let (source, target) = edge_endpoint_placements(p, d, route.edge)?; + let source_delta = deltas.get(&source)?; + let target_delta = deltas.get(&target)?; + if d.projection.state_machine().is_some() + && !state::boundary_moves_with(p, d, route.edge, source_delta, deltas) + { + return None; + } + if source_delta != target_delta + || (source_delta.x == 0. && source_delta.y == 0.) + || route.waypoints.is_empty() + { + return None; + } + let mut translated = route.clone(); + for point in &mut translated.waypoints { + point.x += source_delta.x; + point.y += source_delta.y; + } + Some(translated) + }) + .collect() +} +/// One projection drives drawing, hit testing, Fit, SVG, and grouped movement. +pub fn project_view(p: &Project, diagram: Id) -> ProjectedView { + let Some(d) = p.diagrams.get(&diagram) else { + return ProjectedView::default(); + }; + project_diagram(p, d) +} +/// Reuse an index built for this accepted semantic revision during presentation +/// previews. Callers must invalidate it when semantic records change. +pub fn project_view_with_index( + p: &Project, + diagram: Id, + index: &crate::view_options::ViewIndex, +) -> ProjectedView { + p.diagrams + .get(&diagram) + .map_or_else(ProjectedView::default, |d| { + project_diagram_with_index(p, d, index) + }) +} +/// Project alternate placement geometry without copying or mutating semantics. +pub fn project_diagram(p: &Project, d: &Diagram) -> ProjectedView { + let index = crate::view_options::ViewIndex::new(p); + project_diagram_with_index(p, d, &index) +} +pub fn project_diagram_with_index( + p: &Project, + d: &Diagram, + index: &crate::view_options::ViewIndex, +) -> ProjectedView { + project_diagram_impl(p, d, None, Some(index), ExperimentalPortPolicy::Current) +} +/// Compare port policies over the actual projector; not a document/API setting. +#[doc(hidden)] +pub fn project_diagram_with_experimental_port_policy( + p: &Project, + d: &Diagram, + policy: ExperimentalPortPolicy, +) -> ProjectedView { + let index = crate::view_options::ViewIndex::new(p); + project_diagram_impl(p, d, None, Some(&index), policy) +} +/// Unfiltered eligibility from the same projection/anchor/fold decisions used +/// for drawing. Compute once for a view-options editor, then combine with the +/// prepared filter's reasons; hidden lines remain geometrically eligible here. +pub fn edge_availability( + p: &Project, + d: &Diagram, +) -> BTreeMap { + let mut availability = p + .relations + .keys() + .chain(p.traces.keys()) + .map(|id| { + ( + *id, + crate::view_options::EdgeAvailability::OutsideProjection, + ) + }) + .collect(); + project_diagram_impl( + p, + d, + Some(&mut availability), + None, + ExperimentalPortPolicy::Current, + ); + availability +} +fn project_diagram_impl( + p: &Project, + d: &Diagram, + mut availability: Option<&mut BTreeMap>, + index: Option<&crate::view_options::ViewIndex>, + port_policy: ExperimentalPortPolicy, +) -> ProjectedView { + let parents = parents(p, d); + let mut nodes = Vec::new(); + for n in d.nodes.values() { + let Some(e) = p.elements.get(&n.element) else { + continue; + }; + if e.kind() == Kind::Port + || !d.projection.includes(e.kind()) + || d.projection + .state_machine() + .is_some_and(|machine| !state_machine_contains(p, machine, e.id)) + { + continue; + } + if d.projection != ProjectionKind::Traceability && e.layer() != d.layer { + continue; + } + let mut current = parents.get(&n.id).copied().flatten(); + let mut seen = BTreeSet::new(); + let mut depth = 0; + let mut hidden = false; + while let Some(id) = current { + if !seen.insert(id) { + hidden = true; + break; + } + depth += 1; + if d.nodes.get(&id).is_some_and(|n| n.collapsed) { + hidden = true; + } + current = parents.get(&id).copied().flatten(); + } + if !hidden { + let size = minimum_node_size( + p, + e.id, + if n.collapsed { + Size { + width: n.size.width, + height: 94., + } + } else { + n.size + }, + ); + let size = if d.projection.state_machine().is_some() { + state::node_size(p, e, size, n.collapsed) + } else { + size + }; + nodes.push(ProjectedNode { + id: n.id, + element: n.element, + position: n.position, + size, + visual_parent: parents.get(&n.id).copied().flatten(), + depth, + collapsed: n.collapsed, + allocation_summary: d.projection == ProjectionKind::Allocation + && crate::validation::allocation_summary(p, e.id).is_some() + && !p + .relations + .values() + .any(|r| r.kind() == RelationKind::Allocation && r.target() == e.id), + }); + } + } + nodes.sort_by_key(|n| (n.depth, n.id)); + enclose_with_headers(p, &mut nodes, d.projection.state_machine().is_some()); + if d.projection.state_machine().is_some() { + state::snap_boundaries(p, &mut nodes); + } + let visible: BTreeSet<_> = nodes.iter().map(|n| n.id).collect(); + let placed: BTreeMap<_, _> = d.nodes.values().map(|n| (n.element, n.id)).collect(); + let anchor = |element: Id| { + let owner = p + .elements + .get(&element) + .filter(|e| e.kind() == Kind::Port) + .and_then(|e| e.parent) + .unwrap_or(element); + let mut id = placed.get(&owner).copied(); + let mut seen = BTreeSet::new(); + while let Some(n) = id { + if visible.contains(&n) { + return Some(n); + } + if !seen.insert(n) { + break; + } + id = parents.get(&n).copied().flatten(); + } + None + }; + let visible_ports: BTreeSet<_> = p + .elements + .values() + .filter(|e| { + e.kind() == Kind::Port + && e.parent + .and_then(|id| placed.get(&id)) + .is_some_and(|id| visible.contains(id)) + }) + .map(|e| e.id) + .collect(); + let mut edges = Vec::new(); + for r in p.relations.values() { + // Interface allocations are selectable nested dictionary rows. Their + // independently identified contracts do not add noisy diagram arrows. + if r.kind() == RelationKind::InterfaceItemAllocation { + continue; + } + if d.projection == ProjectionKind::Allocation && r.kind() == RelationKind::Allocation { + continue; + } + let included = match d.projection { + ProjectionKind::StateMachine { machine } => matches!(&r.body, + RelationBody::StateTransition { transition_kind, .. } + if *transition_kind != TransitionKind::Internal + && state_machine_contains(p, machine, r.source()) + && state_machine_contains(p, machine, r.target())), + ProjectionKind::Allocation => matches!( + r.kind(), + RelationKind::Interaction + | RelationKind::FunctionalExchange + | RelationKind::BoundaryExchange + | RelationKind::CommunicationMean + ), + ProjectionKind::FunctionalDataflow => matches!( + r.kind(), + RelationKind::Interaction | RelationKind::FunctionalExchange + ), + ProjectionKind::Capabilities => matches!( + r.kind(), + RelationKind::CapabilityInclude + | RelationKind::CapabilityExtend + | RelationKind::CapabilityGeneralization + | RelationKind::MissionCapability + | RelationKind::MissionInvolvement + | RelationKind::CapabilityInvolvement + | RelationKind::CommunicationMean + ), + _ => true, + }; + if !included { + continue; + } + let ends = (anchor(r.source()), anchor(r.target())); + let self_loop = (d.projection.state_machine().is_some() + || r.kind() == RelationKind::DataAssociation) + && r.source() == r.target() + && nodes + .iter() + .any(|n| Some(n.id) == ends.0 && n.element == r.source()); + if let Some(availability) = availability.as_deref_mut() { + use crate::view_options::EdgeAvailability as A; + availability.insert( + r.id, + match ends { + (Some(a), Some(b)) if a != b || self_loop => A::Visible, + (Some(_), Some(_)) => A::FoldedInternal, + (a, b) => A::EndpointNotShown { + source: a.is_none(), + target: b.is_none(), + }, + }, + ); + } + if let (Some(source), Some(target)) = ends + && (source != target || self_loop) + { + let (source_port, target_port) = match &r.body { + RelationBody::FunctionalExchange { + source_port, + target_port, + .. + } => (Some(*source_port), Some(*target_port)), + RelationBody::BoundaryExchange { source, target, .. } + | RelationBody::PortAllocation { source, target } => (Some(*source), Some(*target)), + _ => (None, None), + }; + edges.push(ProjectedEdge { + id: r.id, + source, + target, + trace: false, + oriented: !matches!( + &r.body, + RelationBody::BoundaryExchange { + oriented: false, + .. + } | RelationBody::CommunicationMean { + oriented: false, + .. + } | RelationBody::DataAssociation { .. } + ), + source_port: source_port.filter(|id| visible_ports.contains(id)), + target_port: target_port.filter(|id| visible_ports.contains(id)), + }); + } + } + if d.projection == ProjectionKind::Traceability { + for t in p.traces.values() { + let ends = (anchor(t.oa), anchor(t.sa)); + if let Some(availability) = availability.as_deref_mut() { + use crate::view_options::EdgeAvailability as A; + availability.insert( + t.id, + match ends { + (Some(a), Some(b)) if a != b => A::Visible, + (Some(_), Some(_)) => A::FoldedInternal, + (a, b) => A::EndpointNotShown { + source: a.is_none(), + target: b.is_none(), + }, + }, + ); + } + if let (Some(source), Some(target)) = ends + && source != target + { + edges.push(ProjectedEdge { + id: t.id, + source, + target, + trace: true, + oriented: true, + source_port: None, + target_port: None, + }); + } + } + } + // Dedicated state views contain state symbols, not semantic component ports. + // Port layout would re-enclose already snapped boundary vertices. + let ports = if d.projection.state_machine().is_some() { + Vec::new() + } else { + port_layout::layout(p, d, &mut nodes, &edges, port_policy) + }; + // Port geometry uses every eligible edge. Presentation filters must never + // move visible ports when another line is hidden or a category is selected. + if let Some(index) = index { + let filter = if d.projection == ProjectionKind::Traceability { + index.prepare_cross_layer(d.layer, &d.view_options) + } else { + index.prepare(d.layer, &d.view_options) + }; + edges.retain(|edge| filter.includes(edge.id)); + } + ProjectedView { + nodes, + edges, + ports, + } +} + +fn enclose(p: &Project, nodes: &mut [ProjectedNode]) { + enclose_with_headers(p, nodes, false); +} +fn enclose_with_headers(p: &Project, nodes: &mut [ProjectedNode], state_view: bool) { + for index in (0..nodes.len()).rev() { + let child = nodes[index].clone(); + if state_view + && p.elements + .get(&child.element) + .is_some_and(|e| matches!(e.kind(), Kind::EntryPoint | Kind::ExitPoint)) + { + continue; + } + if let Some(parent) = child + .visual_parent + .and_then(|id| nodes.iter().position(|n| n.id == id)) + { + let footer = port_footer(p, nodes[parent].element); + let header = if state_view { + state_header_height(p, nodes[parent].element) + } else { + 64. + }; + let p = &mut nodes[parent]; + let right = + (p.position.x + p.size.width).max(child.position.x + child.size.width + 24.); + let bottom = + (p.position.y + p.size.height).max(child.position.y + child.size.height + footer); + p.position.x = p.position.x.min(child.position.x - 24.); + // Reserve two readable header lines above the first nested card. + p.position.y = p.position.y.min(child.position.y - header); + p.size.width = right - p.position.x; + p.size.height = bottom - p.position.y; + } + } +} diff --git a/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_capacity_experiment.rs b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_capacity_experiment.rs new file mode 100644 index 00000000..25bdab04 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_capacity_experiment.rs @@ -0,0 +1,221 @@ +//! Experimental four-side capacity assignment; no model fields or router feedback. +use super::*; + +#[derive(Clone)] +pub(super) struct Demand { + pub preferred: PortAnchorSide, + pub semantic: Option, + pub clear: [bool; 4], +} + +fn index(side: PortAnchorSide) -> usize { + SIDES + .iter() + .position(|candidate| *candidate == side) + .unwrap() +} + +fn capacity(length: f32) -> usize { + if length < 2. * CORNER { + 0 + } else { + ((length - 2. * CORNER) / GAP).floor() as usize + 1 + } +} + +fn counts(assigned: &[Option]) -> [usize; 4] { + let mut result = [0; 4]; + for side in assigned.iter().flatten() { + result[index(*side)] += 1; + } + result +} + +fn ranked(demand: &Demand, counts: [usize; 4]) -> Vec { + let mut result = Vec::new(); + for side in [Some(demand.preferred), demand.semantic] + .into_iter() + .flatten() + { + if demand.clear[index(side)] && !result.contains(&side) { + result.push(side); + } + } + let mut remaining = SIDES; + remaining.sort_by_key(|side| (counts[index(*side)], index(*side))); + for side in remaining { + if demand.clear[index(side)] && !result.contains(&side) { + result.push(side); + } + } + result +} + +// An alternating reassignment visits each of four side bins at most once. +// It is attempted only after every directly free clear side has been considered. +fn try_assign( + port: usize, + demands: &[Demand], + capacities: [usize; 4], + assigned: &mut [Option], + visited: &mut [bool; 4], +) -> bool { + let counts = counts(assigned); + let sides = ranked(&demands[port], counts); + for side in &sides { + let slot = index(*side); + if !visited[slot] && counts[slot] < capacities[slot] { + assigned[port] = Some(*side); + return true; + } + } + for side in sides { + let slot = index(side); + if visited[slot] || capacities[slot] == 0 { + continue; + } + visited[slot] = true; + let occupants: Vec<_> = assigned + .iter() + .enumerate() + .filter_map(|(port, current)| (*current == Some(side)).then_some(port)) + .collect(); + for other in occupants { + if try_assign(other, demands, capacities, assigned, visited) { + assigned[port] = Some(side); + return true; + } + } + } + false +} + +fn assign_with_capacities(demands: &[Demand], capacities: [usize; 4]) -> Vec { + let mut assigned = vec![None; demands.len()]; + // Demands are in the core's stable semantic port-ID order. Manual anchors + // are deliberately absent: editing one must not resize owners or flip peers. + for port in 0..demands.len() { + try_assign(port, demands, capacities, &mut assigned, &mut [false; 4]); + } + for (port, demand) in demands.iter().enumerate() { + if assigned[port].is_some() { + continue; + } + let counts = counts(&assigned); + // Prefer a crowded clear exit to an available blocked one. The existing + // position allocator adapts spacing; no port or owner geometry is invented. + let side = ranked(demand, counts) + .into_iter() + .next() + .unwrap_or_else(|| { + *SIDES + .iter() + .min_by_key(|side| counts[index(**side)]) + .unwrap() + }); + assigned[port] = Some(side); + } + assigned.into_iter().map(Option::unwrap).collect() +} + +pub(super) fn assign(node: &ProjectedNode, demands: &[Demand]) -> Vec { + assign_with_capacities( + demands, + [ + capacity(node.size.height), + capacity(node.size.height), + capacity(node.size.width), + capacity(node.size.width), + ], + ) +} + +#[cfg(test)] +mod tests { + use super::*; + + fn demand(preferred: PortAnchorSide, sides: &[PortAnchorSide]) -> Demand { + Demand { + preferred, + semantic: None, + clear: SIDES.map(|side| sides.contains(&side)), + } + } + + #[test] + fn reassignment_recovers_scarce_clear_capacity() { + use PortAnchorSide::{Left, Right, Top}; + // Assignment-level falsifier only. Its clear masks are not yet produced + // by a model fixture with actual peer geometry. + let mut demands = vec![demand(Left, &[Left, Top]); 8]; + demands.extend(vec![demand(Left, &[Left, Right]); 9]); + demands.extend(vec![demand(Right, &[Right, Top]); 3]); + let capacities = [8, 8, 6, 0]; + let result = assign_with_capacities(&demands, capacities); + let totals = counts(&result.iter().copied().map(Some).collect::>()); + for (actual, capacity) in totals.into_iter().zip(capacities) { + assert!(actual <= capacity); + } + for (side, demand) in result.iter().zip(&demands) { + assert!(demand.clear[index(*side)]); + } + assert_eq!(assign_with_capacities(&demands, capacities), result); + } + + #[test] + fn clear_overflow_does_not_choose_a_blocked_empty_side() { + let demands = vec![demand(PortAnchorSide::Right, &[PortAnchorSide::Right]); 5]; + let result = assign_with_capacities(&demands, [10, 1, 10, 10]); + assert!(result.iter().all(|side| *side == PortAnchorSide::Right)); + } + + #[test] + fn small_clear_masks_match_an_exhaustive_assignment_oracle() { + let capacities = [1, 1, 1, 0]; + // All343 triples of nonempty masks on three sides. This validates the + // alternating assignment itself, not geometric reachability of masks. + for a in 1..8_u8 { + for b in 1..8_u8 { + for c in 1..8_u8 { + let demands: Vec<_> = [a, b, c] + .into_iter() + .map(|mask| { + let sides: Vec<_> = SIDES + .iter() + .copied() + .filter(|side| mask & (1 << index(*side)) != 0) + .collect(); + demand(sides[0], &sides) + }) + .collect(); + let feasible = (0..3).any(|x| { + (0..3).any(|y| { + (0..3).any(|z| { + x != y + && x != z + && y != z + && demands[0].clear[x] + && demands[1].clear[y] + && demands[2].clear[z] + }) + }) + }); + let result = assign_with_capacities(&demands, capacities); + for (side, demand) in result.iter().zip(&demands) { + assert!(demand.clear[index(*side)]); + } + if feasible { + let totals = counts(&result.into_iter().map(Some).collect::>()); + assert!( + totals + .into_iter() + .zip(capacities) + .all(|(n, capacity)| n <= capacity), + "missed feasible masks {a}/{b}/{c}" + ); + } + } + } + } + } +} diff --git a/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_layout.rs b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_layout.rs new file mode 100644 index 00000000..ba0d8689 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/src/projection/port_layout.rs @@ -0,0 +1,415 @@ +//! Presentation-only port anchors. Automatic choices depend on owner geometry, +//! never on routed elbows, so routing cannot feed back into layout. +use super::*; +#[path = "port_capacity_experiment.rs"] +mod capacity_experiment; + +const GAP: f32 = 28.; +const CORNER: f32 = 18.; +const SIDES: [PortAnchorSide; 4] = [ + PortAnchorSide::Left, + PortAnchorSide::Right, + PortAnchorSide::Top, + PortAnchorSide::Bottom, +]; + +pub fn port_anchor_position(node: &ProjectedNode, side: PortAnchorSide, offset: f32) -> Position { + let (x, y) = match side { + PortAnchorSide::Left => (0., node.size.height * offset), + PortAnchorSide::Right => (node.size.width, node.size.height * offset), + PortAnchorSide::Top => (node.size.width * offset, 0.), + PortAnchorSide::Bottom => (node.size.width * offset, node.size.height), + }; + Position { + x: node.position.x + x, + y: node.position.y + y, + } +} + +pub fn port_anchor_offset(node: &ProjectedNode, side: PortAnchorSide, position: Position) -> f32 { + let value = match side { + PortAnchorSide::Left | PortAnchorSide::Right => { + (position.y - node.position.y) / node.size.height + } + PortAnchorSide::Top | PortAnchorSide::Bottom => { + (position.x - node.position.x) / node.size.width + } + }; + value.clamp(0., 1.) +} + +fn center(node: &ProjectedNode) -> Position { + Position { + x: node.position.x + node.size.width / 2., + y: node.position.y + node.size.height / 2., + } +} + +#[derive(Clone)] +struct Choice { + port: Id, + side: PortAnchorSide, + automatic_side: PortAnchorSide, + manual: Option, + peer: Option, + capacity: Option, +} + +fn facing(node: &ProjectedNode, peer: Position) -> Option { + let c = center(node); + let dx = (peer.x - c.x) / node.size.width; + let dy = (peer.y - c.y) / node.size.height; + if dx.abs().max(dy.abs()) < 0.001 { + return None; + } + if dx.abs() >= dy.abs() { + Some(if dx < 0. { + PortAnchorSide::Left + } else { + PortAnchorSide::Right + }) + } else { + Some(if dy < 0. { + PortAnchorSide::Top + } else { + PortAnchorSide::Bottom + }) + } +} + +fn clear_exit( + node: &ProjectedNode, + side: PortAnchorSide, + peers: &BTreeSet, + by_id: &BTreeMap, +) -> bool { + let a = port_anchor_position(node, side, 0.5); + let normal = side.normal(); + let b = Position { + x: a.x + normal.x * crate::routing::PORT_STUB, + y: a.y + normal.y * crate::routing::PORT_STUB, + }; + peers.iter().all(|peer| { + let other = by_id[peer]; + // A containing endpoint's body is traversable, just as in routing. + let mut ancestor = node.visual_parent; + for _ in 0..by_id.len() { + let Some(id) = ancestor else { + break; + }; + if id == *peer { + return true; + } + ancestor = by_id.get(&id).and_then(|n| n.visual_parent); + } + let padding = crate::routing::CLEARANCE; + let left = other.position.x - padding; + let right = other.position.x + other.size.width + padding; + let top = other.position.y - padding; + let bottom = other.position.y + other.size.height + padding; + if a.x == b.x { + !(a.x > left && a.x < right && a.y.min(b.y) < bottom && a.y.max(b.y) > top) + } else { + !(a.y > top && a.y < bottom && a.x.min(b.x) < right && a.x.max(b.x) > left) + } + }) +} + +#[derive(Default)] +struct Peers { + x: f64, + y: f64, + count: usize, + owners: BTreeSet, +} +impl Peers { + fn center(&self) -> Position { + Position { + x: (self.x / self.count as f64) as f32, + y: (self.y / self.count as f64) as f32, + } + } +} + +pub(super) fn minimum_size(p: &Project, element: Id, mut size: Size) -> Size { + let mut counts: BTreeMap<_, usize> = SIDES.into_iter().map(|s| (s, 0)).collect(); + let mut neutral = 0; + for port in p.children(element).filter(|p| p.kind() == Kind::Port) { + if let Some(side) = port_anchor_side(port) { + *counts.get_mut(&side).unwrap() += 1; + } else { + neutral += 1; + } + } + for _ in 0..neutral { + let side = *SIDES.iter().min_by_key(|s| counts[s]).unwrap(); + *counts.get_mut(&side).unwrap() += 1; + } + let vertical = counts[&PortAnchorSide::Left].max(counts[&PortAnchorSide::Right]); + let horizontal = counts[&PortAnchorSide::Top].max(counts[&PortAnchorSide::Bottom]); + if vertical > 0 { + size.height = size.height.max(76. + GAP * (vertical + 1) as f32); + } + if horizontal > 0 { + size.width = size.width.max(GAP * (horizontal + 1) as f32); + } + size +} + +pub(super) fn layout( + p: &Project, + d: &Diagram, + nodes: &mut [ProjectedNode], + edges: &[ProjectedEdge], + policy: ExperimentalPortPolicy, +) -> Vec { + let by_id: BTreeMap<_, _> = nodes.iter().map(|n| (n.id, n)).collect(); + let mut peers: BTreeMap<(Id, Id), Peers> = BTreeMap::new(); + for edge in edges { + // Port allocation is implementation traceability, not a communication + // peer. It must not turn an external boundary port toward its own work. + if !p.relations.get(&edge.id).is_some_and(|r| { + matches!( + r.kind(), + RelationKind::FunctionalExchange | RelationKind::BoundaryExchange + ) + }) { + continue; + } + for (owner, port, other) in [ + (edge.source, edge.source_port, edge.target), + (edge.target, edge.target_port, edge.source), + ] { + if let (Some(port), Some(other)) = (port, by_id.get(&other)) { + let c = center(other); + let entry = peers.entry((owner, port)).or_default(); + entry.x += f64::from(c.x); + entry.y += f64::from(c.y); + entry.count += 1; + entry.owners.insert(other.id); + } + } + } + let mut children: BTreeMap> = BTreeMap::new(); + for port in p.elements.values().filter(|e| e.kind() == Kind::Port) { + if let Some(parent) = port.parent { + children.entry(parent).or_default().push(port); + } + } + let mut choices = BTreeMap::>::new(); + for node in nodes.iter() { + let anchors: BTreeMap<_, _> = d.nodes[&node.id] + .port_anchors + .iter() + .map(|a| (a.port, a)) + .collect(); + let mut counts: BTreeMap<_, usize> = SIDES.into_iter().map(|s| (s, 0)).collect(); + // Compute the automatic capacity independently of manual overrides. + // Moving a port must not resize its owner or flip unrelated ports. + for port in children.get(&node.element).into_iter().flatten() { + let connected = peers.get(&(node.id, port.id)); + let peer = connected.map(Peers::center); + let clear = + |side| connected.is_none_or(|peers| clear_exit(node, side, &peers.owners, &by_id)); + let anchor = anchors.get(&port.id); + let side = { + peer.and_then(|v| facing(node, v)) + .filter(|side| clear(*side)) + } + .or_else(|| port_anchor_side(port).filter(|side| clear(*side))) + .or_else(|| { + SIDES + .iter() + .filter(|side| clear(**side)) + .min_by_key(|s| counts[s]) + .copied() + }) + .unwrap_or_else(|| *SIDES.iter().min_by_key(|s| counts[s]).unwrap()); + *counts.get_mut(&side).unwrap() += 1; + choices.entry(node.id).or_default().push(Choice { + port: port.id, + side: anchor.map_or(side, |a| a.side), + automatic_side: side, + manual: anchor.map(|a| a.offset), + peer, + capacity: (policy == ExperimentalPortPolicy::CapacityAware).then(|| { + capacity_experiment::Demand { + preferred: side, + semantic: port_anchor_side(port), + clear: SIDES.map(clear), + } + }), + }); + } + } + if policy == ExperimentalPortPolicy::CapacityAware { + for node in nodes.iter() { + let Some(choices) = choices.get_mut(&node.id) else { + continue; + }; + let demands: Vec<_> = choices + .iter() + .map(|choice| choice.capacity.clone().unwrap()) + .collect(); + let sides = capacity_experiment::assign(node, &demands); + for (choice, side) in choices.iter_mut().zip(sides) { + choice.automatic_side = side; + if choice.manual.is_none() { + choice.side = side; + } + } + } + } + // One capacity pass followed by semantic enclosure. Side choices stay frozen + // throughout this pass; expanded parents cannot cause layout oscillation. + // Experimental alternatives finalize nodes before port-side assignment. + if policy == ExperimentalPortPolicy::Current { + for node in nodes.iter_mut() { + for side in SIDES { + let count = choices + .get(&node.id) + .into_iter() + .flatten() + .filter(|c| c.automatic_side == side) + .count(); + if count == 0 { + continue; + } + let minimum = 2. * CORNER + GAP * count.saturating_sub(1) as f32; + match side { + PortAnchorSide::Left | PortAnchorSide::Right => { + node.size.height = node.size.height.max(minimum) + } + PortAnchorSide::Top | PortAnchorSide::Bottom => { + node.size.width = node.size.width.max(minimum) + } + } + } + } + super::enclose(p, nodes); + } + let mut result = Vec::new(); + for node in nodes.iter() { + let Some(choices) = choices.get(&node.id) else { + continue; + }; + for side in SIDES { + let mut automatic: Vec<_> = choices + .iter() + .filter(|c| c.side == side && c.manual.is_none()) + .collect(); + let horizontal = matches!(side, PortAnchorSide::Top | PortAnchorSide::Bottom); + automatic.sort_by(|a, b| { + let axis = |c: &Choice| c.peer.map(|p| if horizontal { p.x } else { p.y }); + match (axis(a), axis(b)) { + (Some(a), Some(b)) => a.total_cmp(&b), + (Some(_), None) => std::cmp::Ordering::Less, + (None, Some(_)) => std::cmp::Ordering::Greater, + _ => std::cmp::Ordering::Equal, + } + .then_with(|| a.port.cmp(&b.port)) + }); + let length = if horizontal { + node.size.width + } else { + node.size.height + }; + let mut fixed = Vec::new(); + for choice in choices.iter().filter(|c| c.side == side) { + if let Some(offset) = choice.manual { + fixed.push(offset * length); + result.push(ProjectedPort { + element: choice.port, + owner: node.id, + side, + position: port_anchor_position(node, side, offset), + }); + } + } + let positions = automatic_positions(length, &fixed, automatic.len()); + for (choice, distance) in automatic.into_iter().zip(positions) { + result.push(ProjectedPort { + element: choice.port, + owner: node.id, + side, + position: port_anchor_position(node, side, distance / length), + }); + } + } + } + result +} + +/// Allocate free intervals around authored anchors. If manual anchors are too +/// crowded to satisfy the desired gap, retain them and degrade spacing evenly. +fn automatic_positions(length: f32, fixed: &[f32], count: usize) -> Vec { + if count == 0 { + return Vec::new(); + } + let mut fixed = fixed.to_vec(); + fixed.sort_by(f32::total_cmp); + let mut gap = GAP; + let intervals = loop { + let mut start = CORNER.min(length / 2.); + let end = (length - CORNER).max(start); + let mut free = Vec::new(); + for &anchor in &fixed { + if anchor - gap >= start { + free.push((start, (anchor - gap).min(end))); + } + start = start.max(anchor + gap); + if start > end { + break; + } + } + if start <= end { + free.push((start, end)); + } + free.retain(|(a, b)| b >= a); + let capacity: usize = free + .iter() + .map(|(a, b)| (((b - a) / gap).floor() as usize).saturating_add(1)) + .sum(); + if capacity >= count { + break free; + } + gap /= 2.; + if gap < 0.001 { + return (0..count) + .map(|i| length * (i + 1) as f32 / (count + 1) as f32) + .collect(); + } + }; + let capacities: Vec<_> = intervals + .iter() + .map(|(a, b)| (((b - a) / gap).floor() as usize).saturating_add(1)) + .collect(); + let total: usize = capacities.iter().sum(); + let mut allocated: Vec<_> = capacities + .iter() + .map(|capacity| (count as u128 * *capacity as u128 / total as u128) as usize) + .collect(); + let mut remainder: Vec<_> = capacities + .iter() + .enumerate() + .map(|(i, capacity)| (count as u128 * *capacity as u128 % total as u128, i)) + .collect(); + remainder.sort_by(|(a, i), (b, j)| b.cmp(a).then_with(|| i.cmp(j))); + let unassigned = count - allocated.iter().sum::(); + for (_, index) in remainder.into_iter().take(unassigned) { + allocated[index] += 1; + } + intervals + .into_iter() + .zip(allocated) + .flat_map(|((a, b), count)| { + (0..count).map(move |i| { + if count == 1 { + (a + b) / 2. + } else { + a + (b - a) * i as f32 / (count - 1) as f32 + } + }) + }) + .collect() +} diff --git a/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy.rs b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy.rs new file mode 100644 index 00000000..06e3dc39 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy.rs @@ -0,0 +1,458 @@ +//! Isolated policy comparisons. Current remains the ordinary projector default. +use oa_core::{projection::*, routing::*, *}; + +const ALTERNATIVES: [ExperimentalPortPolicy; 2] = [ + ExperimentalPortPolicy::SameSidesAdaptSpacing, + ExperimentalPortPolicy::CapacityAware, +]; +const POLICIES: [ExperimentalPortPolicy; 3] = [ + ExperimentalPortPolicy::Current, + ExperimentalPortPolicy::SameSidesAdaptSpacing, + ExperimentalPortPolicy::CapacityAware, +]; + +fn pos(x: f32, y: f32) -> Position { + Position { x, y } +} +fn size(width: f32, height: f32) -> Size { + Size { width, height } +} +fn standard(p: &mut Project, owner: Id, name: &str) -> Id { + let id = Id::new_v4(); + let port = make_port( + p, + id, + owner, + name, + PortContract::Component { + kind: ComponentPortKind::Standard, + orientation: ComponentPortOrientation::Unset, + }, + ) + .unwrap(); + p.elements.insert(id, port); + id +} +fn place(p: &mut Project, d: Id, e: Id, position: Position, dimensions: Size) -> Id { + let n = p.place(d, e, position); + p.diagrams + .get_mut(&d) + .unwrap() + .nodes + .get_mut(&n) + .unwrap() + .size = dimensions; + n +} +struct Fixture { + p: Project, + d: Id, + owner: Id, + ports: Vec, +} +fn eight_ports() -> Fixture { + let mut p = Project::empty(); + let a = p + .add_element(Kind::System, Layer::Sa, "Owner", None) + .unwrap(); + let b = p + .add_element(Kind::SystemActor, Layer::Sa, "Above", None) + .unwrap(); + let c = p + .add_element(Kind::SystemActor, Layer::Sa, "Below", None) + .unwrap(); + let pb = standard(&mut p, b, "Above interface"); + let pc = standard(&mut p, c, "Below interface"); + let mut ports = Vec::new(); + for i in 0..8 { + let pa = standard(&mut p, a, &format!("Interface {i}")); + p.relate( + RelationKind::BoundaryExchange, + &format!("Above {i}"), + pa, + pb, + ); + p.relate( + RelationKind::BoundaryExchange, + &format!("Below {i}"), + pa, + pc, + ); + ports.push(pa); + } + let d = p.ensure_diagram(Layer::Sa); + let owner = place(&mut p, d, a, pos(0., 0.), size(224., 160.)); + place(&mut p, d, b, pos(38., -996.), size(184., 132.)); + place(&mut p, d, c, pos(38., 1004.), size(184., 132.)); + validate_candidate(&p).unwrap(); + Fixture { p, d, owner, ports } +} +fn hundred_ports() -> Fixture { + let mut p = Project::empty(); + let a = p + .add_element(Kind::System, Layer::Sa, "Owner", None) + .unwrap(); + let b = p + .add_element(Kind::SystemActor, Layer::Sa, "Peer", None) + .unwrap(); + let pb = standard(&mut p, b, "Peer interface"); + let mut ports = Vec::new(); + for i in 0..100 { + let pa = standard(&mut p, a, &format!("Interface {i}")); + p.relate( + RelationKind::BoundaryExchange, + &format!("Exchange {i}"), + pa, + pb, + ); + ports.push(pa); + } + let d = p.ensure_diagram(Layer::Sa); + // Semantic port minima grow this to728x804 before any side choice. + let owner = place(&mut p, d, a, pos(0., 0.), size(224., 160.)); + place(&mut p, d, b, pos(1908., 336.), size(184., 132.)); + validate_candidate(&p).unwrap(); + Fixture { p, d, owner, ports } +} +fn project(f: &Fixture, policy: ExperimentalPortPolicy) -> ProjectedView { + project_diagram_with_experimental_port_policy(&f.p, &f.p.diagrams[&f.d], policy) +} +fn node(view: &ProjectedView, id: Id) -> &ProjectedNode { + view.nodes.iter().find(|node| node.id == id).unwrap() +} +fn port(view: &ProjectedView, id: Id) -> &ProjectedPort { + view.ports.iter().find(|port| port.element == id).unwrap() +} +fn minimum_gap(view: &ProjectedView, owner: Id) -> f32 { + let mut result = f32::INFINITY; + for side in [ + PortAnchorSide::Left, + PortAnchorSide::Right, + PortAnchorSide::Top, + PortAnchorSide::Bottom, + ] { + let horizontal = matches!(side, PortAnchorSide::Top | PortAnchorSide::Bottom); + let mut positions: Vec<_> = view + .ports + .iter() + .filter(|p| p.owner == owner && p.side == side) + .map(|p| { + if horizontal { + p.position.x + } else { + p.position.y + } + }) + .collect(); + positions.sort_by(f32::total_cmp); + for pair in positions.windows(2) { + result = result.min(pair[1] - pair[0]); + } + } + result +} + +#[test] +fn experimental_current_is_the_unchanged_default_projector() { + for p in [Project::demo(), eight_ports().p, hundred_ports().p] { + for diagram in p.diagrams.values() { + let expected = project_diagram(&p, diagram); + let actual = project_diagram_with_experimental_port_policy( + &p, + diagram, + ExperimentalPortPolicy::Current, + ); + assert_eq!(actual, expected); + } + } +} + +#[test] +fn alternatives_realize_the_three_previously_forbidden_rectangles() { + for policy in POLICIES { + for (position, dimensions) in [ + (pos(0., -10.), size(224., 242.)), + (pos(10., 0.), size(214., 232.)), + (pos(0., 0.), size(224., 222.)), + ] { + let mut f = eight_ports(); + let original = f.p.diagrams[&f.d].nodes[&f.owner].clone(); + let mut edited = original.clone(); + edited.position = position; + edited.size = dimensions; + let before = f.p.clone(); + f.p = prepare_command( + &f.p, + &Command::EditNode { + diagram: f.d, + original: f.owner, + node: edited, + }, + ) + .unwrap() + .project; + let view = project(&f, policy); + let actual = node(&view, f.owner); + if policy == ExperimentalPortPolicy::Current { + assert_ne!((actual.position, actual.size), (position, dimensions)); + } else { + assert_eq!((actual.position, actual.size), (position, dimensions)); + } + let mut restored = f.p.clone(); + restored + .diagrams + .get_mut(&f.d) + .unwrap() + .nodes + .insert(f.owner, original); + assert_eq!(restored, before, "Only the selected record may change"); + } + } +} + +#[test] +fn all_eight_outward_handles_have_exact_fixed_edges_without_authored_inactive_changes() { + for policy in ALTERNATIVES { + for (left, top, right, bottom) in [ + (false, true, false, false), + (false, true, true, false), + (false, false, true, false), + (false, false, true, true), + (false, false, false, true), + (true, false, false, true), + (true, false, false, false), + (true, true, false, false), + ] { + let mut f = eight_ports(); + let baseline = project(&f, policy); + let old = node(&baseline, f.owner); + assert_eq!(old.size, size(224., 160.)); + let mut edited = f.p.diagrams[&f.d].nodes[&f.owner].clone(); + let x = old.position.x - if left { 20. } else { 0. }; + let y = old.position.y - if top { 20. } else { 0. }; + let r = old.position.x + old.size.width + if right { 20. } else { 0. }; + let b = old.position.y + old.size.height + if bottom { 20. } else { 0. }; + edited.position = pos(x, y); + edited.size = size(r - x, b - y); + f.p = prepare_command( + &f.p, + &Command::EditNode { + diagram: f.d, + original: f.owner, + node: edited.clone(), + }, + ) + .unwrap() + .project; + let view = project(&f, policy); + let actual = node(&view, f.owner); + assert_eq!( + (actual.position, actual.size), + (edited.position, edited.size) + ); + if !left && !right { + assert_eq!(edited.position.x, old.position.x); + assert_eq!(edited.size.width, old.size.width); + } + if !top && !bottom { + assert_eq!(edited.position.y, old.position.y); + assert_eq!(edited.size.height, old.size.height); + } + } + } +} + +#[test] +fn capacity_uses_available_sides_where_spacing_only_overlaps_fourteen_unit_glyphs() { + let f = hundred_ports(); + let before = f.p.clone(); + let current = project(&f, ExperimentalPortPolicy::Current); + let spacing = project(&f, ExperimentalPortPolicy::SameSidesAdaptSpacing); + let capacity = project(&f, ExperimentalPortPolicy::CapacityAware); + assert_eq!(node(¤t, f.owner).size, size(728., 2808.)); + assert_eq!(node(&spacing, f.owner).size, size(728., 804.)); + assert_eq!(capacity.nodes, spacing.nodes); + assert!(minimum_gap(¤t, f.owner) >= 27.99); + assert!(minimum_gap(&spacing, f.owner) < 14.); + assert!(minimum_gap(&capacity, f.owner) >= 27.99); + assert_eq!( + capacity.ports.iter().filter(|p| p.owner == f.owner).count(), + 100 + ); + assert_eq!( + f.p, before, + "Projection must not author anchors or new dimensions" + ); + println!( + "100 ports: current={:?} spacing={:?} capacity={:?}; gaps={}/{}/{}", + node(¤t, f.owner).size, + node(&spacing, f.owner).size, + node(&capacity, f.owner).size, + minimum_gap(¤t, f.owner), + minimum_gap(&spacing, f.owner), + minimum_gap(&capacity, f.owner) + ); +} + +#[test] +fn manual_anchor_edits_preserve_owner_geometry_and_unrelated_automatic_sides() { + let mut f = hundred_ports(); + let before = project(&f, ExperimentalPortPolicy::CapacityAware); + let id = before + .ports + .iter() + .find(|p| p.owner == f.owner && p.side == PortAnchorSide::Right) + .unwrap() + .element; + f.p = prepare_command( + &f.p, + &Command::SetPortAnchor { + diagram: f.d, + node: f.owner, + anchor: PortAnchor { + port: id, + side: PortAnchorSide::Top, + offset: 0.5, + }, + }, + ) + .unwrap() + .project; + let after = project(&f, ExperimentalPortPolicy::CapacityAware); + assert_eq!(after.nodes, before.nodes); + assert_eq!( + port(&after, id).position, + port_anchor_position(node(&after, f.owner), PortAnchorSide::Top, 0.5) + ); + for other in after.ports.iter().filter(|p| p.element != id) { + assert_eq!(other.side, port(&before, other.element).side); + } + assert_eq!(language::parse(&language::format(&f.p)).unwrap(), f.p); +} + +#[test] +fn exact_crowded_manual_fractions_survive_every_alternative_and_reopen() { + for policy in ALTERNATIVES { + let mut f = eight_ports(); + let fractions = [0., 0.25, 0.25, 0.5, 0.75, 1., 0.01, 0.99]; + f.p.diagrams + .get_mut(&f.d) + .unwrap() + .nodes + .get_mut(&f.owner) + .unwrap() + .port_anchors = f + .ports + .iter() + .zip(fractions) + .map(|(port, offset)| PortAnchor { + port: *port, + side: PortAnchorSide::Right, + offset, + }) + .collect(); + validate_candidate(&f.p).unwrap(); + let original_anchors = f.p.diagrams[&f.d].nodes[&f.owner].port_anchors.clone(); + let view = project(&f, policy); + assert_eq!(node(&view, f.owner).size, size(224., 160.)); + for anchor in &original_anchors { + let actual = port(&view, anchor.port); + assert_eq!(actual.side, anchor.side); + assert_eq!( + actual.position, + port_anchor_position(node(&view, f.owner), anchor.side, anchor.offset) + ); + } + let reopened = language::parse(&language::format(&f.p)).unwrap(); + assert_eq!(reopened, f.p); + assert_eq!( + project_diagram_with_experimental_port_policy( + &reopened, + &reopened.diagrams[&f.d], + policy + ), + view + ); + assert_eq!( + f.p.diagrams[&f.d].nodes[&f.owner].port_anchors, + original_anchors + ); + } +} + +#[test] +fn narrow_peer_gap_keeps_clear_sides_and_actual_routed_port_endpoints() { + let mut p = Project::empty(); + let a = p + .add_element(Kind::Function, Layer::Sa, "Send", None) + .unwrap(); + let b = p + .add_element(Kind::Function, Layer::Sa, "Receive", None) + .unwrap(); + let edge = p.relate(RelationKind::FunctionalExchange, "Information", a, b); + let RelationBody::FunctionalExchange { + source_port, + target_port, + .. + } = p.relations[&edge].body + else { + unreachable!() + }; + let d = p.ensure_diagram(Layer::Sa); + p.place(d, a, pos(100., 100.)); + p.place(d, b, pos(100., 260.)); + validate_candidate(&p).unwrap(); + for policy in POLICIES { + let view = project_diagram_with_experimental_port_policy(&p, &p.diagrams[&d], policy); + assert_eq!(port(&view, source_port).side, PortAnchorSide::Right); + assert_eq!(port(&view, target_port).side, PortAnchorSide::Left); + let routed = route_diagram(&p, &p.diagrams[&d], &view); + let route = &routed.edges[&edge]; + assert!( + route.warnings.is_empty(), + "{policy:?}: {:?}", + route.warnings + ); + assert_eq!( + route.points.first(), + Some(&port(&view, source_port).position) + ); + assert_eq!( + route.points.last(), + Some(&port(&view, target_port).position) + ); + assert!( + route + .points + .windows(2) + .all(|pair| pair[0].x == pair[1].x || pair[0].y == pair[1].y) + ); + } +} + +#[test] +fn candidate_geometry_is_deterministic_and_independent_of_peer_motion_and_names() { + let mut f = eight_ports(); + let before = project(&f, ExperimentalPortPolicy::CapacityAware); + assert_eq!(project(&f, ExperimentalPortPolicy::CapacityAware), before); + for element in f.p.elements.values_mut() { + element.alias = format!("renamed_{}", element.id.simple()); + } + assert_eq!(project(&f, ExperimentalPortPolicy::CapacityAware), before); + for node in + f.p.diagrams + .get_mut(&f.d) + .unwrap() + .nodes + .values_mut() + .filter(|n| n.id != f.owner) + { + node.position.x += 500.; + } + let moved = project(&f, ExperimentalPortPolicy::CapacityAware); + assert_eq!( + node(&moved, f.owner), + node(&before, f.owner), + "Peer motion must not change owner geometry" + ); +} diff --git a/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy_falsifiers.rs b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy_falsifiers.rs new file mode 100644 index 00000000..ef6d197b --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/source/crates/oa-core/tests/experimental_port_policy_falsifiers.rs @@ -0,0 +1,404 @@ +//! Prospective acceptance falsifiers, intentionally expected to fail at 7e25b3d. +//! Do not change the policy or relax these criteria before preserving first-run +//! receipts. Source-derived predictions are diagnostic text, not test outcomes. +use oa_core::{projection::*, routing::*, *}; +use std::{fs::OpenOptions, io::Write, path::PathBuf}; + +const POLICIES: [ExperimentalPortPolicy; 3] = [ + ExperimentalPortPolicy::Current, + ExperimentalPortPolicy::SameSidesAdaptSpacing, + ExperimentalPortPolicy::CapacityAware, +]; +const SIDES: [PortAnchorSide; 4] = [ + PortAnchorSide::Left, + PortAnchorSide::Right, + PortAnchorSide::Top, + PortAnchorSide::Bottom, +]; +fn id(n: u128) -> Id { + Id::from_u128(0x956a2026_0912_4000_8000_000000000000 + n) +} +fn pos(x: f32, y: f32) -> Position { + Position { x, y } +} +fn size(width: f32, height: f32) -> Size { + Size { width, height } +} +fn element(p: &mut Project, n: u128, kind: Kind, name: &str) -> Id { + let mut e = p.make_element(kind, Layer::Sa, name, None).unwrap(); + e.id = id(n); + p.elements.insert(e.id, e); + id(n) +} +fn standard(p: &mut Project, n: u128, owner: Id, name: &str) -> Id { + let port = make_port( + p, + id(n), + owner, + name, + PortContract::Component { + kind: ComponentPortKind::Standard, + orientation: ComponentPortOrientation::Unset, + }, + ) + .unwrap(); + p.elements.insert(port.id, port); + id(n) +} +fn place(p: &mut Project, d: Id, n: u128, e: Id, at: Position, dimensions: Size) -> Id { + let generated = p.place(d, e, at); + let nodes = &mut p.diagrams.get_mut(&d).unwrap().nodes; + let mut node = nodes.remove(&generated).unwrap(); + node.id = id(n); + node.size = dimensions; + nodes.insert(node.id, node); + id(n) +} +struct Fixture { + p: Project, + d: Id, + owner: Id, + ports: Vec, +} +fn right_peer(count: usize, height: f32, obstacle: bool) -> Fixture { + let mut p = Project::empty(); + p.id = id(1); + let a = element(&mut p, 10, Kind::System, "Owner"); + let b = element(&mut p, 11, Kind::SystemActor, "Far right peer"); + let pb = standard(&mut p, 20, b, "Peer interface"); + let mut ports = Vec::new(); + for i in 0..count { + let pa = standard(&mut p, 100 + i as u128, a, &format!("Interface {i}")); + let generated = p.relate( + RelationKind::BoundaryExchange, + &format!("Exchange {i}"), + pa, + pb, + ); + let mut relation = p.relations.remove(&generated).unwrap(); + relation.id = id(1000 + i as u128); + p.relations.insert(relation.id, relation); + ports.push(pa); + } + let generated = p.ensure_diagram(Layer::Sa); + let mut diagram = p.diagrams.remove(&generated).unwrap(); + diagram.id = id(30); + let d = diagram.id; + p.diagrams.insert(d, diagram); + let owner = place(&mut p, d, 40, a, pos(0., 0.), size(224., height)); + place(&mut p, d, 41, b, pos(1908., 336.), size(184., 132.)); + if obstacle { + let c = element(&mut p, 12, Kind::SystemActor, "Unrelated top obstacle"); + place(&mut p, d, 42, c, pos(0., -150.), size(224., 132.)); + } + validate_candidate(&p).unwrap(); + assert_eq!(language::parse(&language::format(&p)).unwrap(), p); + Fixture { p, d, owner, ports } +} +fn project(f: &Fixture, policy: ExperimentalPortPolicy) -> ProjectedView { + let view = project_diagram_with_experimental_port_policy(&f.p, &f.p.diagrams[&f.d], policy); + assert!(view.nodes.iter().all(|node| node.visual_parent.is_none())); + assert_eq!(view.edges.len(), f.ports.len()); + view +} +fn owner<'a>(f: &Fixture, view: &'a ProjectedView) -> &'a ProjectedNode { + view.nodes.iter().find(|n| n.id == f.owner).unwrap() +} +fn port(view: &ProjectedView, id: Id) -> &ProjectedPort { + view.ports.iter().find(|p| p.element == id).unwrap() +} +fn side_counts(f: &Fixture, view: &ProjectedView) -> [usize; 4] { + SIDES.map(|side| { + view.ports + .iter() + .filter(|p| p.owner == f.owner && p.side == side) + .count() + }) +} +fn gap(f: &Fixture, view: &ProjectedView) -> f32 { + let mut minimum = f32::INFINITY; + for side in SIDES { + let mut offsets: Vec<_> = view + .ports + .iter() + .filter(|p| p.owner == f.owner && p.side == side) + .map(|p| match side { + PortAnchorSide::Left | PortAnchorSide::Right => p.position.y, + _ => p.position.x, + }) + .collect(); + offsets.sort_by(f32::total_cmp); + for pair in offsets.windows(2) { + minimum = minimum.min(pair[1] - pair[0]); + } + } + minimum +} +// Independent segment/slab test, not the router's private Rect::crosses helper. +// All fixture nodes are unrelated flat obstacles, so ancestor/header exceptions +// do not apply. A node's own outward stub is allowed through its own clearance. +fn stub_hits(port: &ProjectedPort, obstacle: &ProjectedNode) -> bool { + if port.owner == obstacle.id { + return false; + } + let normal = port.side.normal(); + let mut lo = 0.0_f32; + let mut hi = 1.0_f32; + for (start, delta, min, max) in [ + ( + port.position.x, + normal.x * PORT_STUB, + obstacle.position.x - CLEARANCE, + obstacle.position.x + obstacle.size.width + CLEARANCE, + ), + ( + port.position.y, + normal.y * PORT_STUB, + obstacle.position.y - CLEARANCE, + obstacle.position.y + obstacle.size.height + CLEARANCE, + ), + ] { + if delta == 0. { + if start <= min || start >= max { + return false; + } + } else { + let a = (min - start) / delta; + let b = (max - start) / delta; + lo = lo.max(a.min(b)); + hi = hi.min(a.max(b)); + } + } + lo < hi +} +fn blocked_stubs(view: &ProjectedView) -> Vec<(Id, Id)> { + view.ports + .iter() + .flat_map(|p| { + view.nodes + .iter() + .filter(move |n| stub_hits(p, n)) + .map(move |n| (p.element, n.id)) + }) + .collect() +} +fn measure(f: &Fixture, view: &ProjectedView, label: &str) -> RoutedView { + let routed = route_diagram(&f.p, &f.p.diagrams[&f.d], view); + let mut length = 0.0_f32; + let mut bends = 0; + for edge in &view.edges { + let route = &routed.edges[&edge.id]; + assert_eq!( + route.points.first(), + Some(&port(view, edge.source_port.unwrap()).position) + ); + assert_eq!( + route.points.last(), + Some(&port(view, edge.target_port.unwrap()).position) + ); + for pair in route.points.windows(2) { + assert!(pair[0].x == pair[1].x || pair[0].y == pair[1].y); + length += (pair[0].x - pair[1].x).abs() + (pair[0].y - pair[1].y).abs(); + } + for triple in route.points.windows(3) { + let a = pos(triple[1].x - triple[0].x, triple[1].y - triple[0].y); + let b = pos(triple[2].x - triple[1].x, triple[2].y - triple[1].y); + if a.x * b.y != a.y * b.x { + bends += 1; + } + } + println!( + "{label} edge={} points={:?} warnings={:?}", + edge.id, route.points, route.warnings + ); + } + let warnings: usize = routed.edges.values().map(|e| e.warnings.len()).sum(); + println!( + "{label} bounds={:?}/{:?} LRTB={:?} gap={} warnings={warnings} length={length} bends={bends} blocked_stubs={:?}", + owner(f, view).position, + owner(f, view).size, + side_counts(f, view), + gap(f, view), + blocked_stubs(view) + ); + for id in &f.ports { + println!( + "{label} port={id} side={:?} position={:?}", + port(view, *id).side, + port(view, *id).position + ); + } + // A caller may retain exact model, projection and route geometry. Never + // overwrite a previous run. Ordinary export still chooses Current. + if let Some(directory) = std::env::var_os("OA_PORT_POLICY_RECEIPTS") { + let directory = PathBuf::from(directory); + std::fs::create_dir_all(&directory).unwrap(); + for (suffix, content) in [ + ("arcadia", language::format(&f.p)), + ( + "projection.json", + serde_json::to_string_pretty(view).unwrap(), + ), + ("routing.txt", format!("{routed:#?}")), + ] { + let mut file = OpenOptions::new() + .write(true) + .create_new(true) + .open(directory.join(format!("{label}.{suffix}"))) + .unwrap(); + file.write_all(content.as_bytes()).unwrap(); + } + } + routed +} + +#[test] +fn a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports() { + let mut f = right_peer(20, 259.9, false); + let mut violations = Vec::new(); + for policy in POLICIES { + let mut views = Vec::new(); + for height in [259.9, 260., 260.1] { + f.p.diagrams + .get_mut(&f.d) + .unwrap() + .nodes + .get_mut(&f.owner) + .unwrap() + .size + .height = height; + let before = f.p.clone(); + let view = project(&f, policy); + measure(&f, &view, &format!("threshold-{policy:?}-{height}")); + assert_eq!(f.p, before, "Projection/routing must not author geometry"); + if policy != ExperimentalPortPolicy::Current { + assert_eq!(owner(&f, &view).size, size(224., height)); + } + views.push(view); + } + let flips: Vec<_> = views + .windows(2) + .map(|pair| { + f.ports + .iter() + .filter(|id| port(&pair[0], **id).side != port(&pair[1], **id).side) + .count() + }) + .collect(); + println!( + "threshold {policy:?}: adjacent side changes={flips:?}; source prediction capacity=[12,0], controls=[0,0]" + ); + if policy == ExperimentalPortPolicy::CapacityAware { + // The prior assignment is still feasible at the larger rectangle. + // Nominal independent capacities: floor((edge - 36) / 28) + 1. + let new = owner(&f, &views[1]); + let capacities = [ + new.size.height, + new.size.height, + new.size.width, + new.size.width, + ] + .map(|length| ((length - 36.) / 28.).floor() as usize + 1); + assert!( + side_counts(&f, &views[0]) + .into_iter() + .zip(capacities) + .all(|(n, c)| n <= c) + ); + assert!(gap(&f, &views[0]) >= 27.99); + // A single relocation can use the new preferred-side slot. This + // fixture-specific bound does not prohibit justified side changes. + if flips.iter().any(|n| *n > 1) { + violations.push(format!( + "CapacityAware changes {flips:?} sides while zero/one move suffices" + )); + } + } else if flips != [0, 0] { + violations.push(format!( + "{policy:?} control unexpectedly changes {flips:?} sides" + )); + } + } + assert!( + violations.is_empty(), + "Prospective resize-stability criterion failed: {violations:?}" + ); +} + +#[test] +fn capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner() { + let f = right_peer(8, 160., true); + let original = f.p.clone(); + let mut violations = Vec::new(); + for policy in POLICIES { + let view = project(&f, policy); + let routed = measure(&f, &view, &format!("obstacle-{policy:?}")); + let actual = owner(&f, &view); + assert_eq!(actual.position, pos(0., 0.)); + assert_eq!( + actual.size, + size( + 224., + if policy == ExperimentalPortPolicy::Current { + 232. + } else { + 160. + } + ) + ); + let obstacle = view.nodes.iter().find(|n| n.id == id(42)).unwrap(); + assert_eq!( + (obstacle.position, obstacle.size), + (pos(0., -150.), size(224., 132.)) + ); + let blocked = blocked_stubs(&view); + let no_clear: Vec<_> = routed + .edges + .values() + .filter(|e| e.warnings.contains(&RouteWarning::NoClearPath)) + .map(|e| e.id) + .collect(); + println!( + "obstacle {policy:?}: independently blocked={blocked:?}, NoClearPath={no_clear:?}; source prediction capacity Top=(112,0), stub=(112,-18), obstacle inflation y=[-162,-6]" + ); + if policy == ExperimentalPortPolicy::CapacityAware { + // Record whether each physically blocked source also reports the + // predicted route warning; do not use warning text as geometry proof. + for (port_id, obstacle_id) in &blocked { + let edges: Vec<_> = view + .edges + .iter() + .filter(|e| e.source_port == Some(*port_id) || e.target_port == Some(*port_id)) + .map(|e| e.id) + .collect(); + println!( + "blocked port={port_id} obstacle={obstacle_id} affected_edges={edges:?} all_NoClearPath={}", + edges.iter().all(|e| no_clear.contains(e)) + ); + } + if !blocked.is_empty() || routed.edges.values().any(|e| !e.warnings.is_empty()) { + violations.push(format!( + "CapacityAware introduces blocked stubs {blocked:?} or routed warnings" + )); + } + } else { + if !f + .ports + .iter() + .all(|p| port(&view, *p).side == PortAnchorSide::Right) + { + violations.push(format!("{policy:?} control no longer keeps Right exits")); + } + if !blocked.is_empty() || routed.edges.values().any(|e| !e.warnings.is_empty()) { + violations.push(format!( + "{policy:?} control has blocked stubs {blocked:?} or routed warnings" + )); + } + } + assert_eq!(f.p, original); + } + assert!( + violations.is_empty(), + "Prospective exit-clearance criterion failed: {violations:?}" + ); +} diff --git a/harness/experiments/resize-port-policy-20260912/standalone-port-falsifiers.py b/harness/experiments/resize-port-policy-20260912/standalone-port-falsifiers.py new file mode 100644 index 00000000..e667f017 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/standalone-port-falsifiers.py @@ -0,0 +1,244 @@ +"""Bounded a95db10 tests against the stamped 7e25b3d core; no Cargo or cache writes. + +After the coordinator grants a compiler lease: + python .local/standalone-port-falsifiers.py build UNIQUE-LABEL + python .local/standalone-port-falsifiers.py run UNIQUE-LABEL +Expected test failures are preserved as failures, never translated to passes. +""" +from datetime import datetime, timezone +from pathlib import Path +import hashlib +import json +import os +import subprocess +import sys +import time + +ROOT = Path(__file__).resolve().parent.parent +BASE = ROOT / '.local/resize-port-policy-20260912' +WORK = ROOT / '.local/resize-port-falsifiers-20260912' +CORE_SOURCE = '7e25b3d3907693cbbf03bb51b5e08b01d743a934' +TEST_SOURCE = 'a95db10ce73d639f59eb1ec1153de26f4967881c' +TEST_PATH = 'crates/oa-core/tests/experimental_port_policy_falsifiers.rs' +TEST_SHA = '0a659fad3e5afcf563bacb2f10467bb2428c385ce991c1e7eb8c04207efb3255' +GATE = BASE / '.local/gate-7e25b3d-20260912-01' +TARGET = BASE / '.local/target-7e25b3d-01' +DEPS = TARGET / 'debug/deps' +FINGERPRINTS = TARGET / 'debug/.fingerprint' +TESTS = [ + 'a_point_one_height_increase_does_not_needlessly_flip_twelve_of_twenty_ports', + 'capacity_spillover_does_not_add_a_blocked_mandatory_stub_above_the_owner', +] + + +def utc(): + return datetime.now(timezone.utc).isoformat() + + +def sha(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + + +def read(path): + return json.loads(path.read_text(encoding='utf-8-sig')) + + +def write(path, value): + with path.open('x', encoding='utf-8', newline='\n') as stream: + stream.write(json.dumps(value, indent=2) + '\n') + + +def git(where, *args): + return subprocess.check_output(['git', *args], cwd=where).decode().strip() + + +def stamp(paths): + return {str(path): {'sha256': sha(path), 'bytes': path.stat().st_size} + for path in sorted(set(paths))} + + +def changed(files): + return [name for name, record in files.items() + if not Path(name).is_file() or sha(Path(name)) != record['sha256']] + + +def invoke(command, log, env=None): + started, clock = utc(), time.monotonic() + print('START', command, flush=True) + with log.open('xb') as stream: + result = subprocess.run(command, cwd=WORK, env=env, + stdout=stream, stderr=subprocess.STDOUT) + return {'command': command, 'start': started, 'end': utc(), + 'seconds': round(time.monotonic() - clock, 3), + 'exit': result.returncode, 'log': str(log), 'log_sha256': sha(log)} + + +def build(out): + # These are source/receipt checks only. No Cargo metadata/build is invoked. + manifest = read(GATE / 'inputs.json') + comparison = read(GATE / 'comparison.json') + allocator = read(GATE / 'allocator-corrected.json') + anchors = read(GATE / 'port-anchors.json') + assert manifest['source'] == CORE_SOURCE + for record, stem in [(comparison, 'comparison'), (allocator, 'allocator-corrected'), + (anchors, 'port-anchors')]: + assert record['source'] == CORE_SOURCE and record['exit'] == 0 + assert not record['changed_inputs'] and not record['changed_protected'] + assert sha(GATE / (stem + '.log')) == record['log_sha256'] + assert allocator['accepted'] and allocator['passed_tests'] == 3 + for where, source in [(BASE, CORE_SOURCE), (WORK, TEST_SOURCE)]: + assert git(where, 'rev-parse', 'HEAD') == source + assert not git(where, 'status', '--porcelain', '--untracked-files=no') + for name, digest in manifest['inputs'].items(): + assert sha(where / name) == digest, (where, name) + assert git(WORK, 'diff', '--name-only', CORE_SOURCE, TEST_SOURCE) == TEST_PATH + test = WORK / TEST_PATH + assert sha(test) == TEST_SHA + committed = subprocess.check_output(['git', 'show', TEST_SOURCE + ':' + TEST_PATH], cwd=WORK) + assert hashlib.sha256(committed).hexdigest() == TEST_SHA + + # Derive the anchor from the recorded passing executable, then select rlibs + # by the dependency fingerprints embedded in that executable's Cargo record. + executable = next(a for a in comparison['artifacts'] + if Path(a['path']).name.startswith('experimental_port_policy-')) + anchor_exe = BASE / executable['path'] + assert sha(anchor_exe) == executable['sha256'] + suffix = anchor_exe.stem.rsplit('-', 1)[1] + anchor = FINGERPRINTS / ('oa-core-' + suffix) / 'test-integration-test-experimental_port_policy.json' + meta = read(anchor) + dependencies, fingerprint_files = {}, [anchor] + for _, name, _, expected in meta['deps']: + if name not in ['oa_core', 'serde_json']: + continue + matches = [] + for fingerprint in FINGERPRINTS.glob('*/lib-' + name): + if int.from_bytes(bytes.fromhex(fingerprint.read_text().strip()), 'little') != expected: + continue + crate_suffix = fingerprint.parent.name.rsplit('-', 1)[1] + rlib = DEPS / ('lib' + name + '-' + crate_suffix + '.rlib') + if rlib.is_file(): + matches.append((rlib, fingerprint, fingerprint.with_suffix('.json'))) + assert len(matches) == 1, (name, matches) + dependencies[name] = matches[0][0] + fingerprint_files.extend(matches[0][1:]) + assert set(dependencies) == {'oa_core', 'serde_json'} + core_artifact = next(a for a in comparison['artifacts'] + if (BASE / a['path']).resolve() == dependencies['oa_core'].resolve()) + assert sha(dependencies['oa_core']) == core_artifact['sha256'] + core_meta = read(next(p for p in fingerprint_files if p.name == 'lib-oa_core.json')) + assert next(d[3] for d in core_meta['deps'] if d[1] == 'serde_json') == next( + d[3] for d in meta['deps'] if d[1] == 'serde_json') + + tools = manifest['toolchain']['paths'] + for name in ['rustc', 'linker']: + assert sha(Path(tools[name]['path'])) == tools[name]['sha256'] + rustc, linker = tools['rustc']['path'], tools['linker']['path'] + version = subprocess.check_output([rustc, '-Vv'], cwd=WORK).decode().strip() + assert version == manifest['toolchain']['rustc'] + environment_file = ROOT / '.local/toolchain/env.ps1' + assert sha(environment_file) == manifest['protected'][str(environment_file)] + for key in ['CARGO_HOME', 'RUSTUP_HOME']: + assert os.environ.get(key) == manifest['environment'][key], key + + # Stamp every possible external linker input in this one frozen dependency + # directory. This records transitive inputs without copying/linking caches. + artifacts = [p for p in DEPS.iterdir() if p.is_file() and p.suffix in + ['.rlib', '.rmeta', '.dll', '.lib', '.a']] + files = [WORK / name for name in manifest['inputs']] + files += [BASE / name for name in manifest['inputs']] + files += [test, Path(__file__).resolve(), environment_file, anchor_exe] + files += [GATE / name for name in ['inputs.json', 'comparison.json', 'comparison.log', + 'allocator-corrected.json', 'allocator-corrected.log', 'port-anchors.json', 'port-anchors.log']] + files += fingerprint_files + artifacts + [Path(tools[n]['path']) for n in ['rustc', 'linker']] + # Root desktop artifacts are not inputs to this build. If present, monitor + # the old protected rlib's current bytes rather than assuming root stayed at + # its earlier commit while integration proceeded. + protected = ROOT / 'target/debug/deps/liboa_core-145180297aa692e4.rlib' + if protected.is_file(): + files.append(protected) + inputs = stamp(files) + binary = out / 'port-policy-falsifiers.exe' + command = [rustc, '--edition=2024', '--test', '-D', 'warnings', '-C', 'linker=' + linker, + '-L', 'dependency=' + str(DEPS)] + for name, rlib in dependencies.items(): + command += ['--extern', name + '=' + str(rlib)] + command += [str(test), '-o', str(binary)] + write(out / 'inputs.json', {'core_source': CORE_SOURCE, 'test_source': TEST_SOURCE, + 'toolchain': manifest['toolchain'], 'dependencies': {k: str(v) for k, v in dependencies.items()}, + 'scope': 'Exact committed standalone integration-test bytes; reused matching 7e25 core. No Cargo/root targets.', + 'files': inputs, 'command': command}) + result = invoke(command, out / 'build.log') + result.update({'core_source': CORE_SOURCE, 'test_source': TEST_SOURCE, + 'changed_inputs': changed(inputs), + 'binary': stamp([binary]) if binary.is_file() else {}}) + result['build_accepted'] = result['exit'] == 0 and not result['changed_inputs'] + write(out / 'build.json', result) + print(json.dumps(result), flush=True) + return 0 if result['build_accepted'] else 1 + + +def run(out): + build_record = read(out / 'build.json') + inputs = read(out / 'inputs.json')['files'] + assert build_record['build_accepted'] + assert not changed(inputs) and not changed(build_record['binary']) + assert git(WORK, 'rev-parse', 'HEAD') == TEST_SOURCE + assert git(BASE, 'rev-parse', 'HEAD') == CORE_SOURCE + binary = next(iter(build_record['binary'])) + selected = invoke([binary, '--list', '--format', 'terse'], out / 'list.log') + names = [line.removesuffix(': test') for line in (out / 'list.log').read_text().splitlines() + if line.endswith(': test')] + selected['selected_tests'] = names + write(out / 'list.json', selected) + assert selected['exit'] == 0 and sorted(names) == sorted(TESTS), names + results = [] + for i, test_name in enumerate(TESTS, 1): + env = os.environ.copy() + geometry = out / ('case-' + str(i) + '-geometry') + assert not geometry.exists() + env['OA_PORT_POLICY_RECEIPTS'] = str(geometry) + result = invoke([binary, test_name, '--exact', '--nocapture', '--test-threads=1'], + out / ('case-' + str(i) + '.log'), env) + log = Path(result['log']).read_text(encoding='utf-8', errors='replace') + marker = ('Prospective resize-stability criterion failed:' if i == 1 + else 'Prospective exit-clearance criterion failed:') + result.update({'test': test_name, 'expected_exit': 101, + 'expected_acceptance_failure_observed': result['exit'] == 101 and marker in log, + 'test_passed': result['exit'] == 0, + 'changed_inputs': changed(inputs), + 'changed_binary': changed(build_record['binary']), + 'geometry': stamp(p for p in geometry.rglob('*') if p.is_file()) + if geometry.exists() else {}}) + write(out / ('case-' + str(i) + '.json'), result) + results.append(result) + print(json.dumps({k: v for k, v in result.items() if k != 'geometry'}), flush=True) + # A prospective criterion failure must not skip the other falsifier. + if result['changed_inputs'] or result['changed_binary']: + break + summary = {'core_source': CORE_SOURCE, 'test_source': TEST_SOURCE, 'results': results, + 'tests_passed': sum(r['test_passed'] for r in results), + 'expected_failures_observed': sum(r['expected_acceptance_failure_observed'] for r in results), + 'policy_accepted': False} + write(out / 'run.json', summary) + print(json.dumps({k: v for k, v in summary.items() if k != 'results'}), flush=True) + # Preserve failing process semantics even if both predictions are confirmed. + if len(results) != 2 or any(r['changed_inputs'] or r['changed_binary'] for r in results): + return 1 + return 101 if any(r['exit'] != 0 for r in results) else 0 + + +if __name__ == '__main__': + mode, label = sys.argv[1:] + assert mode in ['build', 'run'] and label.replace('-', '').isalnum() + output = ROOT / '.local/native-qa' / label + if mode == 'build': + output.mkdir(exist_ok=False) + else: + assert output.is_dir() and not (output / 'run.json').exists() + try: + code = build(output) if mode == 'build' else run(output) + except Exception as error: + write(output / (mode + '-exception.json'), {'utc': utc(), 'type': type(error).__name__, + 'error': str(error), 'core_source': CORE_SOURCE, 'test_source': TEST_SOURCE}) + raise + raise SystemExit(code) diff --git a/harness/experiments/resize-port-policy-20260912/windows/accepted-summary.json b/harness/experiments/resize-port-policy-20260912/windows/accepted-summary.json new file mode 100644 index 00000000..49bcd6e1 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/accepted-summary.json @@ -0,0 +1,25 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "accepted": true, + "gates": [ + { + "receipt": "comparison.json", + "passed_tests": 8 + }, + { + "receipt": "allocator-corrected.json", + "passed_tests": 3 + }, + { + "receipt": "port-anchors.json", + "passed_tests": 13 + } + ], + "excluded": { + "receipt": "allocator.json", + "reason": "Zero tests selected; superseded by corrected explicit three-test module filter" + }, + "original_summary_scope": "Original command exits and input-integrity checks, not test-selection acceptance", + "compiler_lease_released": "2026-09-12T22:10:35Z", + "policy_accepted": false +} diff --git a/harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.json b/harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.json new file mode 100644 index 00000000..ae17f7b9 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.json @@ -0,0 +1,35 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--lib", + "capacity_experiment::tests", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:10:34.213107+00:00", + "end": "2026-09-12T22:10:35.644468+00:00", + "elapsed_seconds": 1.437, + "exit": 0, + "passed_tests": 3, + "expected_tests": 3, + "accepted": true, + "changed_inputs": [], + "changed_protected": [], + "log_sha256": "9f2de355a179c6730dded25d6b1fc21ca88714c9cfcfd3b8b6c451af2e1f972a", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\oa_core-a7a95d666500007c.exe", + "bytes": 24711680, + "sha256": "19d8229cf7977f3c31c02c9900ab9287655ebfd98bf9551c7353ba14ef5c1ff3" + } + ], + "supersedes_as_test_evidence": "allocator.json selected zero tests because its filter used the filename instead of module name" +} diff --git a/harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.log b/harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.log new file mode 100644 index 00000000..3a4a04c0 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/allocator-corrected.log @@ -0,0 +1,10 @@ + Finished `test` profile [unoptimized] target(s) in 0.59s + Running unittests src\lib.rs (.local\target-7e25b3d-01\debug\deps\oa_core-a7a95d666500007c.exe) + +running 3 tests +test projection::port_layout::capacity_experiment::tests::clear_overflow_does_not_choose_a_blocked_empty_side ... ok +test projection::port_layout::capacity_experiment::tests::reassignment_recovers_scarce_clear_capacity ... ok +test projection::port_layout::capacity_experiment::tests::small_clear_masks_match_an_exhaustive_assignment_oracle ... ok + +test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 68 filtered out; finished in 0.01s + diff --git a/harness/experiments/resize-port-policy-20260912/windows/allocator.json b/harness/experiments/resize-port-policy-20260912/windows/allocator.json new file mode 100644 index 00000000..4f4c07a5 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/allocator.json @@ -0,0 +1,43 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "name": "allocator", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--lib", + "port_capacity_experiment", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:05:51.269624+00:00", + "end": "2026-09-12T22:08:33.432080+00:00", + "elapsed_seconds": 162.156, + "exit": 0, + "changed_inputs": [], + "changed_protected": [], + "head_after": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "log_sha256": "642414c44ecf1c8ba7e33335066978081ad42e3a88cb7aaed05462b7aaf5a9b0", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "bytes": 101322004, + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe", + "bytes": 18598400, + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\oa_core-a7a95d666500007c.exe", + "bytes": 24711680, + "sha256": "19d8229cf7977f3c31c02c9900ab9287655ebfd98bf9551c7353ba14ef5c1ff3" + } + ] +} diff --git a/harness/experiments/resize-port-policy-20260912/windows/allocator.log b/harness/experiments/resize-port-policy-20260912/windows/allocator.log new file mode 100644 index 00000000..66021180 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/allocator.log @@ -0,0 +1,8 @@ + Compiling oa-core v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\resize-port-policy-20260912\crates\oa-core) + Finished `test` profile [unoptimized] target(s) in 2m 36s + Running unittests src\lib.rs (.local\target-7e25b3d-01\debug\deps\oa_core-a7a95d666500007c.exe) + +running 0 tests + +test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 71 filtered out; finished in 0.00s + diff --git a/harness/experiments/resize-port-policy-20260912/windows/comparison.json b/harness/experiments/resize-port-policy-20260912/windows/comparison.json new file mode 100644 index 00000000..caabe4e0 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/comparison.json @@ -0,0 +1,38 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "name": "comparison", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--test", + "experimental_port_policy", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T21:59:48.508558+00:00", + "end": "2026-09-12T22:05:51.175587+00:00", + "elapsed_seconds": 362.671, + "exit": 0, + "changed_inputs": [], + "changed_protected": [], + "head_after": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "log_sha256": "51bbf540be96bef4a7b7afbb99ebac4cb40fd85ee66f850ad13b92347e5414ac", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "bytes": 101322004, + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe", + "bytes": 18598400, + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b" + } + ] +} diff --git a/harness/experiments/resize-port-policy-20260912/windows/comparison.log b/harness/experiments/resize-port-policy-20260912/windows/comparison.log new file mode 100644 index 00000000..3edea79a --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/comparison.log @@ -0,0 +1,45 @@ + Compiling proc-macro2 v1.0.107 + Compiling unicode-ident v1.0.24 + Compiling quote v1.0.47 + Compiling autocfg v1.5.1 + Compiling serde_core v1.0.229 + Compiling num-traits v0.2.19 + Compiling syn v3.0.5 + Compiling getrandom v0.4.3 + Compiling windows-link v0.2.1 + Compiling windows-sys v0.61.2 + Compiling zmij v1.0.23 + Compiling cfg-if v1.0.4 + Compiling serde_json v1.0.151 + Compiling thiserror v2.0.20 + Compiling serde v1.0.229 + Compiling num-integer v0.1.47 + Compiling winapi-util v0.1.11 + Compiling serde_derive v1.0.229 + Compiling thiserror-impl v2.0.20 + Compiling memchr v2.8.3 + Compiling fastrand v2.5.0 + Compiling oa-core v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\resize-port-policy-20260912\crates\oa-core) + Compiling once_cell v1.21.4 + Compiling sha1_smol v1.0.1 + Compiling itoa v1.0.18 + Compiling uuid v1.26.0 + Compiling tempfile v3.27.0 + Compiling same-file v1.0.6 + Compiling num-bigint v0.5.1 + Finished `test` profile [unoptimized] target(s) in 6m 00s + Running tests\experimental_port_policy.rs (.local\target-7e25b3d-01\debug\deps\experimental_port_policy-2141d8651d5c8187.exe) + +running 8 tests +test all_eight_outward_handles_have_exact_fixed_edges_without_authored_inactive_changes ... ok +test alternatives_realize_the_three_previously_forbidden_rectangles ... ok +test candidate_geometry_is_deterministic_and_independent_of_peer_motion_and_names ... ok +test capacity_uses_available_sides_where_spacing_only_overlaps_fourteen_unit_glyphs ... 100 ports: current=Size { width: 728.0, height: 2808.0 } spacing=Size { width: 728.0, height: 804.0 } capacity=Size { width: 728.0, height: 804.0 }; gaps=27.999878/7.757538/28.444397 +ok +test exact_crowded_manual_fractions_survive_every_alternative_and_reopen ... ok +test experimental_current_is_the_unchanged_default_projector ... ok +test manual_anchor_edits_preserve_owner_geometry_and_unrelated_automatic_sides ... ok +test narrow_peer_gap_keeps_clear_sides_and_actual_routed_port_endpoints ... ok + +test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.36s + diff --git a/harness/experiments/resize-port-policy-20260912/windows/inputs.json b/harness/experiments/resize-port-policy-20260912/windows/inputs.json new file mode 100644 index 00000000..15cc5f79 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/inputs.json @@ -0,0 +1,154 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "start": "2026-09-12T21:59:48.504252+00:00", + "worktree": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912", + "target": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01", + "inputs": { + "Cargo.lock": "065c23c94908fe499d32ed91d55a70946ed5b08ecfda3b483ec1e635572257bf", + "Cargo.toml": "369f5b4b2b60705a94623c8c0b68f8e0b048f263280ce07ae0629ad353797d62", + "crates/oa-cli/Cargo.toml": "49c567f1af74a826683b4d96845feb3806fd9bcb7dc2767e16b5509d4e5e1cde", + "crates/oa-core/Cargo.toml": "6b5c062474ebb62d5082e07dabed99ee85e4a833edf26690fb4f887028d3416f", + "crates/oa-core/build.rs": "ab1be6ae1fd8bf3ebaeef6348347a9d5e666bde693126f199e041659e0b094a9", + "crates/oa-core/examples/generate_demo.rs": "e26f432c95331aeca50985dbb3ad2c558affd43023b585811f0f7bfaa59f6661", + "crates/oa-core/examples/generate_release1.rs": "1d5f11165d74893e4bc18dbf3a2f2111f4026bd89fd06ee7f0bae69e45c4d4b5", + "crates/oa-core/examples/release_dense_views.rs": "a83158488ef9b7394f136c52b1496719be935c4e5bdfe457cab5c9894f5f9412", + "crates/oa-core/examples/routing_workshop.rs": "571307b18b6d4fa04700c5a4d4b0c2154c419e93a21292b2028e7b6f46a2faa7", + "crates/oa-core/src/analysis_numeric.rs": "6c88eef3119162aeb6c07b9e75812c3af9fbfe75554b0503ad00f103cb478408", + "crates/oa-core/src/analysis_numeric/dimension.rs": "d4ad8e5307a1620e31791d724a0e31fdba860d00dc83e3e1f2209d9c5e22a340", + "crates/oa-core/src/analysis_numeric/exact.rs": "4eb8cb0f66b10e5da204899af82ee26adfec74bab47b1a6c9842b5488ee04c4d", + "crates/oa-core/src/analysis_numeric/fixtures/r7-literal-boundaries.json": "3b959dec5e100a6f03817f5314bef497347ba579ebd235476516d4bd83399181", + "crates/oa-core/src/analysis_numeric/meter.rs": "1f7174beb992935b4c399acdef91114af73faf041070feab968455ac827e8ee4", + "crates/oa-core/src/analysis_numeric/quantity.rs": "ead5142d6eeea8f99399d57e02d8f7d819980923de76387cd454694d6a747aee", + "crates/oa-core/src/analysis_numeric/tests.rs": "323ce82fc057d36f44463569fd8ea324c7d700fddfbf32bce15e04bd2a66970b", + "crates/oa-core/src/data.rs": "7f9c7c7dd8353cb5a38597b92cde6d3e890203d392473187eb387d41ff37414a", + "crates/oa-core/src/demo.rs": "ad62123f96c20ff023cafc1a9849b0fa06bc62edd1fb9701799e4599b458600c", + "crates/oa-core/src/language.rs": "638f08a42e9cf4996b5d07f69b4d6f517a518369f3604d25be1006e40e080765", + "crates/oa-core/src/language/semantic_source.rs": "584b5bb59d87a7b8d44d5dd2d124c3a1323b21492b138a17bc9526c0087c9e29", + "crates/oa-core/src/language_nesting_tests.rs": "bd061611e8cb6f28ab203c73e544ac98bf275eb464cd314ad5fbd25f773df33b", + "crates/oa-core/src/lib.rs": "ea1d9bf5acba8381ba204db12ff5b5fe1f320417d17af517e46b90fd6bcb241c", + "crates/oa-core/src/migration_v2/README.md": "fb61d3faa33d7bdfba73415415a0882c0fbd3e0b45df42f972a19aec6da927b9", + "crates/oa-core/src/migration_v2/adapter.rs": "66741b4c8354a23b8a932ecc5bf1bc3bb6e74279558757b8c35bc2157a7e51b5", + "crates/oa-core/src/migration_v2/mod.rs": "857d8bb13b6814daba6780ca770c16352943c01cb130245d055f11b3b957b3e9", + "crates/oa-core/src/migration_v2/model.rs": "8ac63eb59b2e57bdecff2477ee0634096090924d3dd1851e1c454880a889dacb", + "crates/oa-core/src/migration_v2/references.rs": "33a6819abc83139fdaebeebd1b553238a328637106cce7dd5a535f1791d43e20", + "crates/oa-core/src/migration_v2/source.rs": "74fee9b24e7c912182c998ab9d9aeec125e2009c3214959229e844c67afe2bf6", + "crates/oa-core/src/migration_v2/state_validation.rs": "e29ef071bab0a68460ddf55c46131c6f66c022d52c3c602c37c013c3649da1b0", + "crates/oa-core/src/migration_v2/transitions.rs": "f74174c532ba56b57c80b719a11fb4adea0a78ccc2828fff72fe2b9eda5a10b1", + "crates/oa-core/src/migration_v2/validation.rs": "6d5e4a4e2805ae5045bf789a0485e14a61c63346587bace2b4a91173a688f780", + "crates/oa-core/src/migration_v3/README.md": "3755a63f840d7f0eadf68afa7a9d587877a9468ff982d3610539e8a0bb067a82", + "crates/oa-core/src/migration_v3/mod.rs": "f4edb6a0b50ecfe8670973776d703047b064420cb1f05913129c00fc656b3722", + "crates/oa-core/src/migration_v4.rs": "50c652964f0f309e7f3f54b6ef12c40d42fcecc0490f005995c713df1179af70", + "crates/oa-core/src/model.rs": "4585c895c64c4a183941c92cf047a9e52ff0cbe41971e16e78d229ea9dc101fb", + "crates/oa-core/src/operations.rs": "a5ffbbf54cd440316a106d1188bfb699b57dae59f466edcb33618c333cd19f41", + "crates/oa-core/src/persistence.rs": "1c01474f906a63e552c0d590b272c95821c00a100b3e79e58e67dbbeac341a14", + "crates/oa-core/src/ports.rs": "5cac12eea70a54ebebbd6be77b63ce92e3195325c4bc7d27705c518686cbac80", + "crates/oa-core/src/projection.rs": "de7ca48f0ec56e97e8300e43b5941eeaae76baeb7d6d6d0b3ed562abcec250c0", + "crates/oa-core/src/projection/port_capacity_experiment.rs": "098d7c571e0b8442430f4ccca5aabb93580160e6a0b1a87b7aa7dac5bb18f910", + "crates/oa-core/src/projection/port_layout.rs": "395bd3e8323bf1053977b18cae89612881e19a2132dacefda2ff6b9add0d9c6a", + "crates/oa-core/src/projection/state.rs": "73a607bac713ec7ff49a509fefb1a53c7686dca93ee241ffc835564d743afb28", + "crates/oa-core/src/references.rs": "93553c234f32da35f1f41a7b83ad81c471c9803efa78ca222cf7de3c2f86c0bb", + "crates/oa-core/src/routing.rs": "c5ebb350ba76f731f5c48d968bfbba4b6ef68ec046eb5893d116c4637ef15080", + "crates/oa-core/src/semantic.rs": "f9895dd5b8fb27d10d4cfbb41c3542ef2018365a589b8d5778e5674ae5a1f239", + "crates/oa-core/src/semantic/catalog.rs": "1ff74fcca18084d178681d7ff38ee1ccac632c27c4de0595ba1ceab8067ab3a4", + "crates/oa-core/src/semantic/historical.rs": "eaf3284bf234312698514cdb636bc8348e1b5d746cb16b18df777e77d312abfb", + "crates/oa-core/src/semantic/linked.rs": "6f335b14e809aecfc35defcaf77cb821b080d1506dbc46297912b25af98c07a2", + "crates/oa-core/src/semantic/mutate.rs": "dc2b4c4a6eb156fe468eaa8c85fd37a505c0cd8ea1f226cb69cd01689afd3d9d", + "crates/oa-core/src/semantic/review.rs": "0c157d2c327e72e89cca3b423e71ee73798105c5bb7271439c1a101642c91e3e", + "crates/oa-core/src/semantic/types.rs": "6922fe35089f12fad43ab0ce1c6886d01a3855f90b8e2543e99802ac5e6f1bbb", + "crates/oa-core/src/session.rs": "1eb77b329b2986fc6f5dc0171e77fd860375cdfd8c769a1367b445d6c49ebe00", + "crates/oa-core/src/source_files.rs": "669491dbddb8e8e6556161426dffa1a49ac1c826d31020bff0956d81a4d84683", + "crates/oa-core/src/source_project.rs": "1394370bcc5908873b830c2c11312e6e1611af41f46c4f43ca0a6bcb713bb466", + "crates/oa-core/src/source_project/source_migration.rs": "add463ae85c420f853d324b00a221f0f874164cc3f3ed6bbb07557a9ed7a8c95", + "crates/oa-core/src/source_project/source_structure.rs": "9f1f83315856a7025fe662c0fbb13452f31613224a03663150d6225d1ddc162f", + "crates/oa-core/src/state_validation.rs": "e28d7f74385e2a78763716b34491bd73a00bfeccc085970ceb130627e3faee18", + "crates/oa-core/src/topology_context.rs": "16de69b297de95d93c73808621607833b713af811dd082f0169186ae1e5c3e2d", + "crates/oa-core/src/topology_context/analysis.rs": "dead6194f0aa60cc46045c0e5ee10dbdbb689158c38634dfbbbc45d2ba88ac65", + "crates/oa-core/src/topology_context/analysis_tests.rs": "17839263410815e96fe027d4eba3aae0a9ab3b82b16947e2b29ebe0d09782b56", + "crates/oa-core/src/transitions.rs": "fadd1b07b89cae4117b91abb4f1ac9ea81ff818ef20f2175e76ee8cf21fb708d", + "crates/oa-core/src/transitions/communication.rs": "2b476630a88edd9021b9156ca12a5402e01604095f0d4002afb452671903a028", + "crates/oa-core/src/validation.rs": "7c1b4ae5e4ebba13e99af9158ccde138dfc5e9a7afb580e76fba72d0b64ba74e", + "crates/oa-core/src/validation/coverage.rs": "b08e4b344ecad055714168c83beff7fe29ba4edc53edbffa2eae04e5580a4d5f", + "crates/oa-core/src/view_options.rs": "421ede0a04c593ca1df0e6e0d06fabcfcc8113cdbcfb0adc7f5c8ef4d1724208", + "crates/oa-core/src/view_options_tests.rs": "64aac44de2df42a1012239a3dd75c473daf0c8990b3170b7bf7e78a556080208", + "crates/oa-core/tests/communication_boundary_scenarios.rs": "e1100b8f363910a487d90c73acc7df543dc6d532158c3c63ad11cd3d40d8e12b", + "crates/oa-core/tests/communication_means.rs": "a25f2749180bc6f4beb1445bfad3351eedf0669131a7439b633ab804439e95a4", + "crates/oa-core/tests/coverage_diagnostics.rs": "e2e9c3996daab47f2bd23f5d8c48b4e372af33331152f5fc85b76f06d04fcdf4", + "crates/oa-core/tests/experimental_port_policy.rs": "4883ec1b57ac04c37a6ca750c9de07ce06a2e4bcda00be45fde342f5721da05d", + "crates/oa-core/tests/fixtures/v2-coastal-rescue.arcadia": "f0df129c1914bfc01d0b047b0cd4b520d8cf0c249ea9ced085de400c0be87ff3", + "crates/oa-core/tests/fixtures/v2-coastal-rescue.json": "3ed53508eb544bbd788832f7bebea2ec31b3d66191f24f45098cc9750ec4c005", + "crates/oa-core/tests/fixtures/v3-data-contract.arcadia": "305f19d1b79f99f8d4cf627ba2e9ca6836bb7959cc0070227815937a699eafea", + "crates/oa-core/tests/fixtures/v3-data-contract.json": "1b41299c53204e6232397d25a58d5bccdbbc16e770c75e8edb55ce36ccfe58a2", + "crates/oa-core/tests/fixtures/v4-reviewed-prose.arcadia": "5fa53a26a5ad010c8e59eb56d9b2b52003569e66c0377ffb58840590168ad0c1", + "crates/oa-core/tests/fixtures/v4-reviewed-prose.json": "2808088afcc165f4bd6da5129151143411c997041c3de61d600ab76e05d24a47", + "crates/oa-core/tests/language.rs": "77f6cb2a69976bfb5f60b243b71c07fb0edc7505002c1e9e73fcd6ddf6d9496e", + "crates/oa-core/tests/port_anchors.rs": "efbc0fa18733b1aaac501f9785a4c392fc49c05c45a5778d26e9b5dd951ca6fa", + "crates/oa-core/tests/port_migration.rs": "1801c376a5435ac7efb2a8342348b2c7ffef930bba65deca4acb66b06e0483d7", + "crates/oa-core/tests/port_source.rs": "8d2ddaca4045d330f6eda2591561497b858aad53769a823249d0bea4f5916e12", + "crates/oa-core/tests/prepared_commands.rs": "52cab1c668064777412df0a6a3c20d74d579b33794b4b00525b9f151c06eac9b", + "crates/oa-core/tests/process_diagnostics.rs": "1dbbc590239ef7542be4a2bdc9543aaa64d108417b03dd312a0894e364745906", + "crates/oa-core/tests/r3_constructor_ack.rs": "e5c44676ea0aab97f2e091ddac2f4bc4a4a90f5877f7bbf08b61229600944dd0", + "crates/oa-core/tests/r3_migration.rs": "ebd04120f5215b3956fdc79ee78f6e38734c7d13392f1fc28aaba957912265bd", + "crates/oa-core/tests/r3_semantic.rs": "49c3763eaf2131070a7c46cc23a84f917d292d41610b6404510e5607f8890c32", + "crates/oa-core/tests/r3_source.rs": "f31f60659df3c7ef601650d1cff140589d8729f01a3f65a4a6a6c2272f15c408", + "crates/oa-core/tests/r6_data.rs": "5f7ffb3bc73c3c85423623fe56f8680646dc97040327bdbead9d47a37e80f155", + "crates/oa-core/tests/r6_migration.rs": "81519bc1512f5e069432e9a1cdad04c10216d492df01b4b75b02102480ebd6a1", + "crates/oa-core/tests/r6_source.rs": "88a0aa087a7678e2898ff6057538072ca92072190712f05fff08372cc56ebed6", + "crates/oa-core/tests/release1_teaching.rs": "be179290d871125dc97cfd2a3067c7ac89c8a538fdb0afafc5b825bcdfb2bef2", + "crates/oa-core/tests/release_capabilities.rs": "b92cba2a562e78287ddd7dc3e94557848d17faa0c8a102601b50286b9af48a30", + "crates/oa-core/tests/release_diagrams.rs": "cefcc0582d91266d5de6ee5daefcfe41b606ab971ab235b59034a8e1dbc24b7d", + "crates/oa-core/tests/release_language_limits.rs": "8578da4f76bbd2d0e1bfe295ab1259e2162a3fe3d0d2ba8901915d7a40942806", + "crates/oa-core/tests/release_ports.rs": "506e62beab0c7ec0cece83e9e0c1a810fa1f99285c9e1cab0c77f06de55a40e1", + "crates/oa-core/tests/release_routing.rs": "ae168faaba23769b7ca1fd65f217b9db671726e67276eb5a04e5e72b1447a462", + "crates/oa-core/tests/release_scenarios.rs": "0f5d876badeec653fc7b12610a77d867e9a53582e605253deff8d379da21572f", + "crates/oa-core/tests/release_states.rs": "b1a26acee95eaba7f9920f9da738a1e33606552eb078e6d298895daff7e3d811", + "crates/oa-core/tests/release_topology.rs": "c51dbe5aa5a038f9ed830daa02aa67714472179eb7fd6da5ce36dc6931c8b3a9", + "crates/oa-core/tests/review_regressions.rs": "f154e5c88d35e31512e2b07733a1327ea3e2fcfd1ef8eb23066a4e9573f387c1", + "crates/oa-core/tests/route_source.rs": "1a73fdbac0d0ae0e84d8d67b6ad398e11223958f5dca007f73757c91827decfb", + "crates/oa-core/tests/routing_geometry.rs": "2d8eea4a2bba535ed0ea6daabccdaf87b375828c404baa10518c7bd7fd6253d3", + "crates/oa-core/tests/routing_labels.rs": "dff884d799c3c5c9257210248c55767e294e3cb317c605cbd0ddc9600c216eb6", + "crates/oa-core/tests/semantic_artifact_absence_oracle.rs": "d93eaf9667f4221232168bef0fe9f069e5be1b1f23410bda5dd67010b96e5c8a", + "crates/oa-core/tests/semantic_attachments_gui_oracle.rs": "7f526d363ba05e7ac89faf0fead0796e419c34ee204edf44a1b46c78308b0970", + "crates/oa-core/tests/source6_view_contract.rs": "fa566de53946d40bbbd9033edfeed177180c4dc44afa2f2f4667ffdc622eb3bb", + "crates/oa-core/tests/source7_contract.rs": "cad4f1a135ddbd947bdf3c71d1b44f1e438725095ea8c4d893464bc721c2363f", + "crates/oa-core/tests/source_files.rs": "f0429a0b89a443458ea9af7083c1e4e7411417a7e6b47e618bfbb9266dc164f9", + "crates/oa-core/tests/source_identity_updates.rs": "f52aa38b4d317e532c641ad7463472e4b40e802e60052cf0017556ffc63da06c", + "crates/oa-core/tests/source_nested_updates.rs": "9ac3390936c0d250651ea94a1b8faf0adfb680f061ececc56f2a52909b5ba855", + "crates/oa-core/tests/source_project.rs": "cef58adb16aa4d2527ddc0628aec3e26f0b42b4be70014a7e360fafdac13a942", + "crates/oa-core/tests/state_diagrams.rs": "6b02b387a3ae559cb3ad72de24292a5abcb76aaac0adbab5d2aa5211b22cd2e5", + "crates/oa-core/tests/workflows.rs": "bd843dfddbd5724ec08f657571f887496203056fe2fa5864ef50a168a613b89b", + "crates/oa-desktop/Cargo.toml": "f3547b2b924d5db6706c0a8e069014b440ff65315d82fc8aced0360af4b3cdc9", + "crates/oa-server/Cargo.toml": "527ff5e15010a8b560a6659aa1ae4bf0c8df0d9e019f03c47529ec6a750c0982", + "experiments/source-authoring/Cargo.toml": "66d497f9b06827edcc4004cbd74300692d11f4766cab6e52d9e68c75cfb21afe", + "rust-toolchain.toml": "a6a0bbd29ffaa8182dc22d1d9149709f1091e47df40ed96eb8a78a711c66a4ce" + }, + "protected": { + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\target\\debug\\deps\\liboa_core-145180297aa692e4.rlib": "d395dbe1f761d41bce3cb850f44cdc0343b0db172bd03abf89e455c44f4b7e86", + "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\env.ps1": "ed5b7e8f1105c5355511e08cdeb4b96156fb245bff430e6bb9237ae8781638cc" + }, + "toolchain": { + "cargo": "cargo 1.98.1 (797e8a9bc 2026-08-05)", + "rustc": "rustc 1.98.1 (48a229cea 2026-09-01)\nbinary: rustc\ncommit-hash: 48a229ceaefd4985c50990b14116b6d856af0985\ncommit-date: 2026-09-01\nhost: x86_64-pc-windows-gnullvm\nrelease: 1.98.1\nLLVM version: 22.1.8", + "active_toolchain": "stable-x86_64-pc-windows-gnullvm (overridden by 'C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\rust-toolchain.toml')", + "paths": { + "cargo": { + "path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\cargo.exe", + "sha256": "e6f0f24c3a4ec70f1032de84a8260288e8a0c3f43d2a5ac1d2a1c19073fbd910" + }, + "rustc": { + "path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup\\toolchains\\stable-x86_64-pc-windows-gnullvm\\bin\\rustc.exe", + "sha256": "c4c7286b198f95c5da9307ba63e756f94953527d63a33dca877211bc0979baf9" + }, + "linker": { + "path": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\llvm-mingw-20260908-ucrt-x86_64\\bin\\clang.exe", + "sha256": "93303edd5791e4b60682f819267a34c349e5f52d052d067e006e76d21cc82ea4" + } + } + }, + "environment": { + "CARGO_HOME": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo", + "RUSTUP_HOME": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup", + "CARGO_TARGET_DIR": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\resize-port-policy-20260912\\.local\\target-7e25b3d-01", + "CARGO_BUILD_JOBS": "1", + "CARGO_TARGET_X86_64_PC_WINDOWS_GNULLVM_LINKER": "clang.exe" + } +} diff --git a/harness/experiments/resize-port-policy-20260912/windows/port-anchors.json b/harness/experiments/resize-port-policy-20260912/windows/port-anchors.json new file mode 100644 index 00000000..dbcbc6aa --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/port-anchors.json @@ -0,0 +1,48 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "name": "port-anchors", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--test", + "port_anchors", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:08:33.567640+00:00", + "end": "2026-09-12T22:08:45.893051+00:00", + "elapsed_seconds": 12.328, + "exit": 0, + "changed_inputs": [], + "changed_protected": [], + "head_after": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "log_sha256": "8855361729836a25aa4d0294cd17fb5cc2ef0f83b434bd938be9f205495ea527", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "bytes": 101322004, + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe", + "bytes": 18598400, + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\oa_core-a7a95d666500007c.exe", + "bytes": 24711680, + "sha256": "19d8229cf7977f3c31c02c9900ab9287655ebfd98bf9551c7353ba14ef5c1ff3" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\port_anchors-b061cd7f86708c0c.exe", + "bytes": 26596864, + "sha256": "c02054011f0f4ec5b6fbedc59226c159f65c6e8a177eda0b5eaed0c479dbcf9d" + } + ] +} diff --git a/harness/experiments/resize-port-policy-20260912/windows/port-anchors.log b/harness/experiments/resize-port-policy-20260912/windows/port-anchors.log new file mode 100644 index 00000000..0da76cb8 --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/port-anchors.log @@ -0,0 +1,21 @@ + Compiling oa-core v0.2.0 (C:\Users\User\Documents\Git\ARCADIA-Studio\.local\resize-port-policy-20260912\crates\oa-core) + Finished `test` profile [unoptimized] target(s) in 9.30s + Running tests\port_anchors.rs (.local\target-7e25b3d-01\debug\deps\port_anchors-b061cd7f86708c0c.exe) + +running 13 tests +test every_side_uses_exact_final_border_fraction_and_outward_routing_normal ... ok +test invalid_anchors_and_payloads_fail_atomically_including_duplicate_owner_placements ... ok +test malformed_source_anchor_records_have_located_errors ... ok +test many_neutral_ports_balance_capacity_without_a_giant_bottom_footer ... ok +test narrow_peer_gap_uses_clear_side_instead_of_a_blocked_facing_stub ... ok +test nested_owner_bounds_group_movement_and_authored_routes_share_the_same_geometry ... ok +test neutral_connected_ports_face_peers_and_unconnected_ports_use_four_sides ... ok +test port_upsert_reset_and_undo_preserve_unrelated_node_fields_and_list_order ... ok +test reidentification_deletion_reuse_and_owner_repair_preserve_correct_identity ... ok +test resetting_last_source_anchors_preserves_comments_and_can_add_a_new_manual_record ... ok +test separate_views_resize_layout_and_hidden_owners_keep_manual_metadata ... ok +test source_json_roundtrip_defaults_and_admission_include_anchor_records ... ok +test source_updater_keeps_comment_attachment_through_identity_swap_and_anchor_reordering ... ok + +test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.42s + diff --git a/harness/experiments/resize-port-policy-20260912/windows/summary.json b/harness/experiments/resize-port-policy-20260912/windows/summary.json new file mode 100644 index 00000000..5f1ebb6f --- /dev/null +++ b/harness/experiments/resize-port-policy-20260912/windows/summary.json @@ -0,0 +1,136 @@ +{ + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "end": "2026-09-12T22:08:45.963367+00:00", + "results": [ + { + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "name": "comparison", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--test", + "experimental_port_policy", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T21:59:48.508558+00:00", + "end": "2026-09-12T22:05:51.175587+00:00", + "elapsed_seconds": 362.671, + "exit": 0, + "changed_inputs": [], + "changed_protected": [], + "head_after": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "log_sha256": "51bbf540be96bef4a7b7afbb99ebac4cb40fd85ee66f850ad13b92347e5414ac", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "bytes": 101322004, + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe", + "bytes": 18598400, + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b" + } + ] + }, + { + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "name": "allocator", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--lib", + "port_capacity_experiment", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:05:51.269624+00:00", + "end": "2026-09-12T22:08:33.432080+00:00", + "elapsed_seconds": 162.156, + "exit": 0, + "changed_inputs": [], + "changed_protected": [], + "head_after": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "log_sha256": "642414c44ecf1c8ba7e33335066978081ad42e3a88cb7aaed05462b7aaf5a9b0", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "bytes": 101322004, + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe", + "bytes": 18598400, + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\oa_core-a7a95d666500007c.exe", + "bytes": 24711680, + "sha256": "19d8229cf7977f3c31c02c9900ab9287655ebfd98bf9551c7353ba14ef5c1ff3" + } + ] + }, + { + "source": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "name": "port-anchors", + "command": [ + "cargo", + "test", + "--locked", + "--jobs", + "1", + "-p", + "oa-core", + "--test", + "port_anchors", + "--", + "--nocapture", + "--test-threads=1" + ], + "start": "2026-09-12T22:08:33.567640+00:00", + "end": "2026-09-12T22:08:45.893051+00:00", + "elapsed_seconds": 12.328, + "exit": 0, + "changed_inputs": [], + "changed_protected": [], + "head_after": "7e25b3d3907693cbbf03bb51b5e08b01d743a934", + "log_sha256": "8855361729836a25aa4d0294cd17fb5cc2ef0f83b434bd938be9f205495ea527", + "artifacts": [ + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\liboa_core-2ed83d7f9d3fcdcd.rlib", + "bytes": 101322004, + "sha256": "0682ad081a8bc4ff5aaba85ad800d7f54303da08ee47f8529a451cd0d8a49531" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\experimental_port_policy-2141d8651d5c8187.exe", + "bytes": 18598400, + "sha256": "90fb1e0d1b431dc7b7e58d7d604b1aee8207a084e3724ace2f077d649139004b" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\oa_core-a7a95d666500007c.exe", + "bytes": 24711680, + "sha256": "19d8229cf7977f3c31c02c9900ab9287655ebfd98bf9551c7353ba14ef5c1ff3" + }, + { + "path": ".local\\target-7e25b3d-01\\debug\\deps\\port_anchors-b061cd7f86708c0c.exe", + "bytes": 26596864, + "sha256": "c02054011f0f4ec5b6fbedc59226c159f65c6e8a177eda0b5eaed0c479dbcf9d" + } + ] + } + ], + "all_passed": true +} diff --git a/harness/release-canvas-followup-20260912.md b/harness/release-canvas-followup-20260912.md index 6def4d89..2a19cb8c 100644 --- a/harness/release-canvas-followup-20260912.md +++ b/harness/release-canvas-followup-20260912.md @@ -31,6 +31,41 @@ ownership and acceptance remain in Gitea [15](http://217.177.34.108:3000/sorokin unchanged. Removing the stale panel-mode paths and updating dependent tests is required before a new gate; warnings are not suppressed. +`40154983cc86ac0a45b062d7381124f262adbb3d` removes the obsolete panel event/state, +App whitelist/dispatch and conditional panel layout, plus the unused one-way +toolbar focus route. F6, Tab, direct pointer ownership and text-field protection +remain. Tests now exercise the surviving Zoom/Details/tool controls while keeping +pending-draft, history, stale-input and caller-return checks. Current guide text +no longer instructs users to press removed buttons. + +A [fresh independent source review](experiments/canvas-editing-followup-20260912/independent-focus-review.md) +found no actionable defect in the bounded correction and verified the state +picker's stable Shrink slot against Iced internals. It does not establish runtime +acceptance or process/scenario Save focus continuity; those workspaces use a +separate Viewport lifetime policy. New Windows and native gates remain required. + +The full Windows suite at 4015498 closed with **833 passed, one failed**, zero +ignored and all 533 inputs unchanged. Compilation took 3m58s and tests 360.78s. +The state placement Save/Undo regression and all twelve new activation tests +passed. The sole failure was the old atomic call/reply test's assertion that +the call appeared as an 8-unit generic box (`scenario.rs:3256`). That is the +removed drawing representation. Correction **83f53c7** retains the atomic edit, +canonical source and Undo assertions, and checks one typed activation's exact +call/receiver/scope/reply identity, finite positive rectangle, actual receive/send +endpoints and an interior selection outside message hit regions. A new full gate +is required; the failed run is preserved without relabeling it as passing. + +The new full gate at **83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b** passes all +**834 tests**, with zero failures/ignored and all 533 inputs unchanged. It ended +2026-09-12 at 22:30:30 UTC; test time 351.59 seconds. Input-manifest SHA-256: +`691ffd5a808839e5e2b7260afebde2607e3720e819ab30f88053c1ec51edb0bd`. +This includes the actual persisted-state focus regression, revised atomic +call/reply evaluator and twelve activation cases. Strict all-target Clippy with +warnings denied and the GUI build also pass on that exact source and input +manifest, ending at 22:32:41 and 22:35:05 UTC respectively. The staged executable +SHA-256 is `49eb87b4a239c586a16b9efbfd036b3823adc8b62a8992feeaa934bca4f5743b`. +Native acceptance remains a separate gate. + The [closed gate receipts](experiments/diagram-removal-windows-20260912/archive-manifest.json) identify the exact commands, input bytes, source commits, failures and logs. Earlier full-suite and native results in @@ -39,7 +74,7 @@ acceptance of these production changes. ## Scenario evaluator preparation -The [26-payload archive](experiments/canvas-editing-followup-20260912/manifest.json) +The [28-payload archive](experiments/canvas-editing-followup-20260912/manifest.json) preserves design/review notes, fixture builders, exact build/run receipts and generated source. Builders link the identified existing core artifacts only after verifying their source inputs against the completed core-containing gate; @@ -70,8 +105,8 @@ the OA Actor kind for SA and attempted a generic Port constructor. Its exact source and failure receipts are preserved. The correction uses SystemActor and the dedicated port constructor; validation assertions were retained. -Full desktop tests, strict lint, matching GUI build, native Save/Undo focus, -bound nested-call rendering and direct pointer/text-focus workflows remain -required. Broader process/scenario free placement, resizing and the Details +Native Save/Undo focus, bound nested-call rendering and direct pointer/text-focus +workflows remain required after the passing same-source Windows gates. Broader +process/scenario free placement, resizing and the Details redesign are separate outstanding requirements; these corrections do not close them. Linux/WSL checking remains deferred by the user. diff --git a/harness/release-diagram-removal-windows-20260912.md b/harness/release-diagram-removal-windows-20260912.md index 8e3336f6..efaf8b9b 100644 --- a/harness/release-diagram-removal-windows-20260912.md +++ b/harness/release-diagram-removal-windows-20260912.md @@ -14,6 +14,8 @@ This records source-specific Windows evidence, not a completed release or whole- | `42511f0f8ae46f29e11ae18c1030face654c2994` | complete desktop binary suite | 818 passed, 0 failed/ignored | 531 | | `24bb24839b14353c1a2b668f3bac34235d39f7a7` | filter `app::diagram` after native focus correction | 22 passed, 1 failed | 531 | | `e2c027e54c6be0d051820374f669c52278d90f97` | strict all-target desktop Clippy after combined canvas corrections | failed: two obsolete Focus event variants | 533 | +| `40154983cc86ac0a45b062d7381124f262adbb3d` | complete desktop binary suite after panel-mode cleanup | 833 passed, 1 failed | 533 | +| `83f53c7c6e277e250f06d2ae6bfa6a7988bd2e4b` | complete desktop binary suite after typed activation evaluator correction | 834 passed, 0 failed/ignored | 533 | All ran through `.local/run-allocation-gate.py` with `.local/toolchain/env.ps1`, Rust/Cargo 1.98.1 Windows GNU LLVM, LLVM-MinGW 20260908, serialized compilation. Full command omits the filter. Exact start/end, exit codes, commands, source SHA and file hashes are in the [archive manifest](experiments/diagram-removal-windows-20260912/archive-manifest.json) and linked receipt files. diff --git a/harness/resize-port-policy-experiment-20260912.md b/harness/resize-port-policy-experiment-20260912.md new file mode 100644 index 00000000..3035e464 --- /dev/null +++ b/harness/resize-port-policy-experiment-20260912.md @@ -0,0 +1,93 @@ +# Port layout policy experiment — 2026-09-12 + +This isolated experiment addresses the projection feedback that prevents some +valid direct-resize rectangles. It does not implement desktop resizing or adopt +a new production policy. Gitea [issue 16](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/16) +owns live coordination. The preceding +[inverse experiment](diagram-resize-foundation-20260912.md) explains why adding +solver iterations cannot resolve the current geometric constraint. + +Source `7e25b3d3907693cbbf03bb51b5e08b01d743a934` derives from `e57c390` on an +isolated experimental branch. The ordinary projection entrypoint still selects +Current. An explicit nonpersisted experimental entrypoint compares Current, +unchanged automatic sides with adaptive spacing, and capacity-aware side +assignment over finalized owner bounds. No desktop, schema or API policy switch +was added. The [exact patch and four source files](experiments/resize-port-policy-20260912/manifest.json) +are portable evidence; they are not integrated production changes. + +## Executed Windows evidence + +All 116 recorded core/workspace input files were independently compared with +their exact committed Git bytes before archiving. Each gate records unchanged +inputs and preserved root core artifacts. The isolated target uses Rust/Cargo +1.98.1 Windows GNU LLVM, LLVM-MinGW 20260908 and one compiler job. Receipts also +record compiler/linker hashes and complete command arguments. + +| Command suffix after `cargo test --locked --jobs 1 -p oa-core` | Result | +| --- | --- | +| `--test experimental_port_policy -- --nocapture --test-threads=1` | 8 passed, 0 failed/ignored | +| `--lib capacity_experiment::tests -- --nocapture --test-threads=1` | 3 passed, 0 failed/ignored; 68 filtered | +| `--test port_anchors -- --nocapture --test-threads=1` | 13 passed, 0 failed/ignored | + +The first allocator filter used the filename `port_capacity_experiment` instead +of the Rust module name. It selected zero tests. Its successful process exit is +preserved but excluded from evidence; the corrected filter explicitly ran all +three allocator tests. The original summary's process-success field must not be +interpreted as nonempty test coverage. The accepted summary and individual logs +distinguish them. + +The eight comparison tests establish the selected forbidden rectangles and +outward-handle examples, manual-anchor/source round trips, deterministic alias +behavior, and one narrow-peer-gap route. They do not execute a desktop resize +gesture or establish the general inverse for enclosure, folds and states. + +For the 100-port fixture, Current produces a 728×2808 owner with minimum measured +same-side center gap 27.999878. Adaptive spacing retains 728×804 but reduces the +gap to 7.757538, below the 14-unit port glyph. Capacity-aware assignment retains +728×804 with gap 28.444397. This is a geometry/spacing comparison; it does not +establish readability or acceptable routes for all 100 exchanges. + +## Independent critique and next decision + +The [independent review](experiments/resize-port-policy-20260912/independent-review.md) +identified two concrete prospective ergonomic regressions. Both subsequently +reproduced with actual core projection/routing at test source +`a95db10ce73d639f59eb1ec1153de26f4967881c`: + +- The 20-port right-facing example changes 12 ports' sides at height + 259.9 → 260.0, then zero at 260.0 → 260.1. Both controls have zero changes. + The previous assignment remains feasible at the larger frame, so zero/one + change suffices for capacity/preference. The spacing-only control still has + a sub-glyph center gap of about 11.79; its stability does not make it acceptable + by itself. Candidate total route length changes 41393.008 → 41410, with 54 → 55 + bends. All threshold routes remain clear. +- The eight-port candidate places port `…006a` on Top at `(112,0)`. Its mandatory + 18-unit stub intersects obstacle `…002a`'s inflated bounds. Exchange `…03ee` + reports `NoClearPath`; both controls have zero blocked stubs and zero warnings. + The full UUIDs and every port/route are preserved in the case logs and geometry. + +The [standalone build](experiments/resize-port-policy-20260912/falsifiers/build.json) +passes with warnings denied, using the fingerprint-identified, unchanged 7e25b3d +core and dependency libraries. Exact test bytes match a95db10; core inputs match +the passed baseline. This is a standalone integration-test executable, not a +Cargo workspace or desktop gate. Both tests are explicitly listed and run with +`--exact`; each exits 101 at its intended prospective acceptance assertion, with +unchanged inputs/binary. The [run record](experiments/resize-port-policy-20260912/falsifiers/run.json) +preserves two failures, zero passing tests and `policy_accepted: false`. Controls +and their route/geometry invariants are evaluated before the final assertions. + +All 36 canonical model/projection/route artifacts are preserved alongside logs +and hashes. This [analytical comparison](experiments/resize-port-policy-20260912/falsifiers/obstacle-comparison.png) +was drawn from the recorded core geometry and visually inspected; it is not an +application screenshot and shows only the local port stubs, not full routes. + +![Recorded owner, obstacle and port-stub geometry under three policies](experiments/resize-port-policy-20260912/falsifiers/obstacle-comparison.png) + +The first green gates did not cover those risks; the new tests falsify adoption +of the current candidate. A revised allocator must address actual exit positions +and avoid needless side changes, including a near-corner obstacle whose midpoint +test is clear. The desired boundary remains promising: finalize rectangular geometry before automatic side choice, +while preserving authored anchors, source parity and real routing endpoints. +The current candidate is not adopted. No passing desktop resize workflow, +general geometry solution, historical rendering equivalence or issue closure is +claimed. Linux/WSL remains deferred.