193 lines
12 KiB
Markdown
193 lines
12 KiB
Markdown
# Ordinary compact source and Text workspace integration
|
|
|
|
This proposal composes ordinary source-default omission with the published Text
|
|
workspace. It does not replace the release owner's branch or establish release
|
|
acceptance. [Issue 11](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/11)
|
|
owns this contribution; [issue 27](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/27)
|
|
retains release integration. Source-8 analysis composition and Linux verification
|
|
remain outside this candidate; Linux work is paused at the user's instruction.
|
|
|
|
## Source composition
|
|
|
|
Production commit `d7c065991d3f63cc41341d23a546739de8837ac3` applies the exact
|
|
14-file ordinary code/test delta from `74cc0e09119f9fa9e1287988bdd98c4cbf9db79e`
|
|
to `3d067041d1c8b62bc4b2bd1e2ae81eb2713bf4e2` onto published Text/root
|
|
`136ed6e5868200165fbb1c2ae8a7230067bf9c1e`. Thirteen preimages match, including
|
|
seven paths absent on both bases. The only other preimage difference is
|
|
`lib.rs`'s independent `pub mod analysis_numeric;`, retained with the new private
|
|
`mod source_defaults;`. Thirteen resulting files match the ordinary head exactly;
|
|
the combined `lib.rs` additionally retains the numeric module. The original
|
|
145,928-byte patch has SHA-256
|
|
`e319a5151b7e6713880eaaab632f3f1c01aee6df3cd534d85a1c099fb501dcb7`.
|
|
|
|
Follow-up `e624d5b9c4f848eff3fba2ed83f9decf959e14d8` brings over the ordinary
|
|
normative language-contract delta and regenerates the current teaching example.
|
|
The full core run identified the latter dependency: its exact generated-source
|
|
assertion still expected verbose defaults. The documented generator produced
|
|
30 source files and four JSON files. Twenty-nine source files changed, removing
|
|
514 default-field lines; the root entry, all four JSON files, and all 68 historical
|
|
trace baseline blocks remained byte-identical. Generation asserts complete
|
|
decoded Project equality. The test assertion was preserved.
|
|
|
|
Strict Docutils 0.23 rendering exposed an existing one-character-short underline
|
|
on the focused diagram removal heading. Repairing it allowed warning-free HTML
|
|
generation. Regeneration also restores the root's existing allocation/removal
|
|
sections that were missing from its previous HTML. No semantic prose from those
|
|
sections changed.
|
|
|
|
## Verification to date
|
|
|
|
Windows toolchain: Rust/Cargo 1.98.1, `stable-x86_64-pc-windows-gnullvm`, LLVM-MinGW
|
|
20260826 UCRT, one build job, `CARGO_INCREMENTAL=0`. Each Cargo run captures its
|
|
707 source inputs before and after, including all 71 vendored Iced widget files,
|
|
raw logs, process identity, and executable artifact hashes. A captured HEAD with
|
|
local deltas is not represented as a clean-commit run.
|
|
|
|
- The initial combined-consumer attempt stopped before compilation because
|
|
`num-bigint` was absent from the offline cache. A locked Windows-target fetch
|
|
installed `num-bigint 0.5.1` and `num-integer 0.1.47`; sources and lock stayed
|
|
unchanged.
|
|
- Full core at clean `d7c0659`: **536 passed, one failed, one existing opt-in
|
|
scaling probe ignored**, across 46 result summaries. The sole failure was
|
|
`release1_teaching_regeneration_and_shipped_source_are_exact_with_one_intentional_warning`.
|
|
The source-transaction panic messages are deliberate interruption injections
|
|
in passing recovery tests.
|
|
- The documented teaching generator completed successfully against the same
|
|
production inputs, writing to a separate scratch folder. All 34 generated
|
|
files were compared with the repaired shipped fixture.
|
|
- `cargo test --locked --offline -p oa-core --test release1_teaching` against the
|
|
repaired fixture: **four passed**, including exact source/JSON parity and the
|
|
one intentional coverage warning. This run captured `d7c0659` plus the 29
|
|
fixture changes subsequently committed in `e624d5b`; production was unchanged.
|
|
- Strict language HTML generation: passed with an empty warning log.
|
|
- CLI/HTTP consumers: **12 CLI and 51 HTTP passed**, no failed or ignored
|
|
cases. The HTTP preservation witness exercises an actual move and server
|
|
restart with an explicitly authored empty port-anchor list. The two Windows
|
|
storage-refusal messages are expected from atomic-storage failure tests.
|
|
This run started at `d7c0659` plus the 31 fixture/documentation changes now in
|
|
`e624d5b`; all 707 captured inputs remained unchanged through execution.
|
|
|
|
Actual desktop listing admission, desktop execution, strict workspace
|
|
Clippy, matching Windows binaries, and native combined-workflow acceptance are
|
|
not established by the results above. Earlier ordinary-only native and automated
|
|
evidence remains scoped to its original published inputs.
|
|
|
|
## Independent review
|
|
|
|
Astra review checked exact Git-blob composition and the source-preserving updater,
|
|
raw diagnostic coordinates, source publication ordering, warning authority after
|
|
recovery, rename/history/save ownership, schema-7 boundary, and historical payloads.
|
|
No actionable source defect was found. Separate follow-up review confirmed all
|
|
34 regenerated files and 68 unchanged historical blocks, then checked the scoped
|
|
reST delta, preserved root sections, generated HTML, and strict-render receipts.
|
|
|
|
A source-pinned checklist identifies 150 critical desktop declarations: all 89
|
|
imported desktop additions, both later recovery-warning fixes, retained selection
|
|
and departure cases, additional recovery/Save As/rename/navigation controls, and
|
|
six explicitly ignored probes. This is expected membership only; lexical counts
|
|
are not executable admission or passing runtime results.
|
|
|
|
## Portable closed-run checkpoint
|
|
|
|
[The evidence package](experiments/ordinary-text-integration-20260913/README.md)
|
|
contains the eight closed captures described above, including failed runs, exact
|
|
input snapshots, raw generated outputs, and the source-admission checklist.
|
|
Its ZIP contains 81 members with three distinct input manifest/archive pairs:
|
|
8,584,848 bytes, SHA-256
|
|
`f220433f8f6fe99cea762aca98ee471c14411b5f6762745cf91432e6bfaca440`.
|
|
Run the package's `verify.py` with Python 3.10 or newer; it requires only the
|
|
standard library and the five adjacent package files. It verifies integrity and
|
|
receipt relationships without executing archived code or consulting this machine.
|
|
The README records provenance limitations and the absence of runtime binaries.
|
|
All 707 consumer inputs were independently compared with committed Git blobs at
|
|
`e624d5b9c4f848eff3fba2ed83f9decf959e14d8` and matched exactly.
|
|
|
|
## Subsequent combined checks and lint repair
|
|
|
|
The final fixture/documentation state completed the full core suite: **537 passed,
|
|
zero failed, one existing opt-in probe ignored**. Desktop listing and execution
|
|
have exactly the same 1,185 unique names: **1,179 passed, zero failed, six existing
|
|
opt-in probes ignored**. Independent admission checked all 144 enabled critical
|
|
checklist cases, all six expected ignored cases and their reasons, five replaced
|
|
names absent, four retained departure cases present exactly once, and all 24
|
|
checklist source-file bindings. These runs use the same 707 input bytes as the
|
|
successful consumers; full listing and execution are recorded separately.
|
|
|
|
Strict all-target Clippy then exposed two integration cleanups. The first was
|
|
two unchanged test-only helper functions appearing after a test module in
|
|
`views.rs`. The second was the unused internal `SymbolEvent::Close`: production
|
|
already emits captured `TextWorkspace(Event::HideDrawer)` instead. Commit
|
|
`f714a25bbcd435941404104ad0cbb0fea3b89149` moves the helpers before the test module,
|
|
removes the obsolete event/handler, and switches four existing test sites to the
|
|
actual UI close message without weakening their assertions. Current close tests
|
|
therefore exercise document/session/visit authority and the presentation boundary;
|
|
Query/Back/Choose continue to test source-file authority. Independent review
|
|
accepted both changes. No production sender used the removed event.
|
|
|
|
Strict `cargo clippy --locked --offline --workspace --all-targets -- -D warnings`
|
|
now passes. Its captured HEAD was `cb94136` plus those four files, with all 707
|
|
inputs unchanged; exact Git-blob comparison binds those inputs to `f714a25`.
|
|
The earlier complete suites remain scoped to the preceding input state.
|
|
Affected desktop execution on `f714a25` passed: **83 passed, zero failed, one
|
|
existing manual source-navigation performance probe ignored**, with 1,101 cases
|
|
outside the selected scope. The filters cover source-symbol tests, Text workspace
|
|
tests, surrounding view tests and the palette/drawer integration cases. The
|
|
updated close assertions and both recovery-warning regressions passed. The
|
|
matching Windows GUI, CLI and server then built successfully from `f714a25` with
|
|
the same final inputs. The native workflow is recorded separately below.
|
|
|
|
[The subsequent gate package](experiments/ordinary-text-gates-20260913/README.md)
|
|
preserves these eight closed gates, both failed lint attempts, complete listing
|
|
admission, the exact affected-test selection, and the three build artifact
|
|
receipts. Its 8,624,040-byte ZIP has SHA-256
|
|
`b0da6611dd86e83c8f779c025786e473834298f9b9990b19a76b250b61137780`.
|
|
Independent review verified all 50 stored members against raw captures, source
|
|
relationships, the safe read-only verifier, and prospective Git-clean outer bytes.
|
|
|
|
## Native Windows workflow
|
|
|
|
The combined GUI built from `f714a25` ran from 14:16:18 to 14:32:24 UTC on
|
|
2026-09-13 and closed with exit zero and empty stdout/stderr. Its 117,674,496-byte
|
|
executable had SHA-256
|
|
`f7405a95a499c31972934b8efdd8a37ee3981cefc5b2b7c82a4f16c4e5a935ed`
|
|
before and after the trial, matching the captured build receipt and final 707
|
|
inputs. The original 451-byte input remained unchanged.
|
|
|
|
Computer Use exercised creation of a new activity in Model explorer, its compact
|
|
included declaration in Text, Save As, a graphical move, model Undo and Redo,
|
|
a second Save As, New, and reopening that saved model from Home. The move changed
|
|
the source x coordinate from 120.0 to 190.0; Undo restored 120.0 and the saved
|
|
state, and Redo restored 190.0. The authored empty `port_anchors` field, spacing,
|
|
comment and include remained intact. Reopening showed the same 190.0 source
|
|
coordinate and the new activity.
|
|
|
|
The Problems drawer navigated from a current warning to the included activity
|
|
at line 2. Inserting a temporary comment removed the old warning rows and
|
|
underlines while reporting drafts pending. Apply all restored the four warnings
|
|
with the included declaration at line 3; selecting its warning highlighted that
|
|
updated declaration. Undo model change removed the comment, restored line 2
|
|
diagnostics and returned the saved state before normal exit. These observations
|
|
establish visible invalidation and refresh; they do not simulate delivery of a
|
|
previously captured stale UI message. Automated authority regressions cover that
|
|
separate case.
|
|
|
|
An exact-byte oracle checked both saved bundles: each has precisely two source
|
|
files, the new activity identity is stable, and their only difference is the
|
|
intended x-coordinate change. Both passed `arcadia check <entry> --json` using the
|
|
matching built CLI, without writes or stderr. Each reported the expected four
|
|
modeling warnings for two unallocated activities without behavior context and
|
|
zero errors. The checks do not assert equality of the entire in-memory Project;
|
|
saved bytes, CLI validation, GUI observations and process receipts are distinct
|
|
evidence. Original screenshots retain intermediate file-dialog states. The
|
|
operator encountered an unavailable UI Automation value-setting call, reported
|
|
in the tool transcript rather than the screenshot archive; the exact intended
|
|
path was visibly verified before saving.
|
|
|
|
Independent native review inspected 25 original frames, checked all 49 capture
|
|
metadata records, and independently reconstructed the source-byte oracles and
|
|
receipt relationships. It found no functional defect or source corruption. Its
|
|
one evidence-attribution wording correction is resolved above. The review does
|
|
not certify exhaustive accessibility, Linux, source-8 composition or release
|
|
readiness. The raw trial and review are in the
|
|
[native evidence package](experiments/ordinary-text-native-20260913/README.md).
|