Checkpoint source 7 workflows and in-progress diagram authoring redesign
Rust checks / check (ubuntu-latest) (push) Canceled after 0s
Rust checks / check (windows-latest) (push) Canceled after 0s
Rust checks / check (ubuntu-latest) (push) Canceled after 0s
Rust checks / check (windows-latest) (push) Canceled after 0s
Preserve current core, source, REST, desktop, recovery, documentation and validation work, including AGENTS.md and the development summary. This is a work-in-progress checkpoint: the new compact palette has outstanding compilation errors and native acceptance; earlier passing gates retain their documented scope.
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
# Source7 native acceptance fixture
|
||||
|
||||
This is the frozen baseline for separately scoped native cases. Current passes
|
||||
and remaining rendering/workflow gates are recorded in the
|
||||
[native acceptance report](../../release-source7-native-acceptance-20260907.md);
|
||||
fixture generation alone is not native acceptance. `base/project.arcadia` and its included
|
||||
`rationale.arcadia` contain43elements and9relations: OA and SA callers each reuse
|
||||
an A→B→C procedure twice and through one nested wrapper. A direct X contribution
|
||||
allows a caller link specifically into B. The SA boundary has two parameterless
|
||||
operations and a correlated Reply. All identities are deterministic.
|
||||
|
||||
Copy the complete `base` directory into a fresh working directory per case. Keep
|
||||
the baseline unchanged. `harness/source7-native-contract.rs` generates it and
|
||||
checks actual saved results against an independently constructed complete model
|
||||
and source update. It refuses migration, UUID stabilization or whitespace
|
||||
normalization. Current exact baseline generation and comparison passed against
|
||||
the source7 core; this does not constitute UI acceptance.
|
||||
|
||||
Cases for the actual compiled desktop:
|
||||
|
||||
- `operation-reset`: edit the first existing Call (`@operation_probe_43`) to
|
||||
select Reset's exact allocation (`@operation_probe_30`). Reply remains
|
||||
independently identified and derives this Call's operation. No new model
|
||||
records are expected.
|
||||
- `operation-status`: on a separate baseline copy, select ReadStatus's allocation
|
||||
(`@operation_probe_31`) on the same Call. Its authored message name is retained.
|
||||
- `oa-link` / `sa-link`: in the appropriate `@oa_caller` / `@sa_caller`, create
|
||||
one contextual Precedence from direct `@oa_x` / `@sa_x` into B through the first
|
||||
reference R1. Enter name `First assessment gate` and guard `Check accepted`.
|
||||
Repeated reference R2 and the procedure definition must remain unchanged.
|
||||
- `oa-nested` / `sa-nested`: target B through R3 and its Inner assessment reference.
|
||||
The exact two-component instance path is required.
|
||||
- `baseline`: Undo the one accepted edit, save, and compare all model/source
|
||||
bytes. Redo and saved reopen must return the same accepted identity and fields.
|
||||
|
||||
For creation checks, exactly one newly allocated v4 relation UUID is permitted.
|
||||
Only that fresh nonce is read from the native result; every authored field,
|
||||
alias, owner, path, purpose, dependency and complete source update is predicted.
|
||||
No existing identity or unrelated record is excluded from comparison. Preserve
|
||||
the accepted files/hashes to prove that Redo/reopen retain this allocated UUID.
|
||||
|
||||
Build the checker using the current source7 core library and matching serde_json
|
||||
library, then run `CHECKER generate NEW_DIRECTORY` or
|
||||
`CHECKER check MODE WORKING_DIRECTORY/project.arcadia`. Source6 teaching and
|
||||
historical recovery oracles remain in their separate fixture directories.
|
||||
|
||||
## Additional purpose cases: validated oracles, native pending
|
||||
|
||||
New source in `harness/source7-native-contract.rs` adds two independent incidence
|
||||
oracles. Direct-rustc `-D warnings` compilation passed in4.05s during a coordinated
|
||||
brief lease; both purpose self-checks passed. Existing base bytes and its manifest
|
||||
remain unchanged. Native purpose authoring/history is not yet accepted.
|
||||
|
||||
Validated checker: `.local/native-qa/source7-native-contract-incidence.exe`, SHA256
|
||||
`16994DC437F5CCC5E5F6FBB4212C03449F2389AE4615FA98B2930B3637468EE3`.
|
||||
The original checker remains unchanged at SHA256
|
||||
`4AC615A099F23A78F111BAD3966A3CCB808FCA1C5FC46FBAC9A947508A568600`.
|
||||
Logs: `.local/native-qa/source7-incidence-{build,selfcheck,generation}.log`.
|
||||
Generated separate fixture `.local/native-qa/source7-incidence-base` passed the
|
||||
complete baseline check; entry SHA256
|
||||
`77C26FD2DD71514AB89C0FA71113825AC8F3DBD8F71A56EFAE8E5430C92D99B8`.
|
||||
Regenerated original baseline matched all three manifest hashes; preserved native
|
||||
OA-link and operation-Reset accepted cases also passed the extended checker.
|
||||
|
||||
To reproduce, build the checker against matching current core/serde libraries, preserving the
|
||||
old checker executable, and first run `CHECKER verify-incidence-contract`. This
|
||||
constructs expected typed commands, proves complete core analysis with exactly
|
||||
one assembly record and unchanged precedence/entries/exits, checks invalid
|
||||
direction/work counterfactuals, and checks stable source updates. Native check
|
||||
modes predict the entire Project and two-file source bundle; only the new link's
|
||||
v4 nonce is taken from actual output, never its name, endpoints, purpose or evidence.
|
||||
|
||||
### OA Exchange assembly
|
||||
|
||||
Run `CHECKER generate-incidence NEW_DIRECTORY`; this separate deterministic variant
|
||||
adds one Interaction, `@oa_assessment_handoff`, **Assessment handoff X to B**,
|
||||
from `@oa_work_x` to `@oa_work_b`. It contains43elements/10relations/two sources.
|
||||
Do not replace `base` with this variant. Check the clean copy with
|
||||
`CHECKER check incidence-baseline NEW_DIRECTORY/project.arcadia`.
|
||||
|
||||
In OA caller, choose **Tools → Qualified link / assembly…**. Set source to direct
|
||||
X (`[]/oa_x`); Choose target → Enter First assessment → B (`[oa_r1]/oa_b`). Enter
|
||||
name **Caller assessment handoff**. Choose **Exchange assembly** and first leave
|
||||
evidence empty: Apply must refuse. Then select the exact **Assessment handoff X to B**
|
||||
Interaction; Apply should become available. Apply once and Save a fresh copy.
|
||||
|
||||
Run `CHECKER check oa-exchange-assembly SAVED/project.arcadia`. Undo/Save uses
|
||||
`incidence-baseline`; Redo/Save uses `oa-exchange-assembly` and must preserve the
|
||||
same accepted UUID/bytes. The link is incidence: no precedence arrow/guard or
|
||||
merged execution is inferred. Core proof checks its exchange contributes to this
|
||||
caller’s behavior coverage, not the shared procedure’s global coverage. The
|
||||
reversed contextual endpoint counterfactual must be rejected; deleting the
|
||||
evidence exchange removes its dependent incidence link (automated oracle only).
|
||||
|
||||
### SA Common work incidence
|
||||
|
||||
Use a fresh copy of the original unchanged `base`, not the exchange variant.
|
||||
In SA caller, choose **Tools → Qualified link / assembly…**. For source Enter
|
||||
First assessment → B (`[sa_r1]/sa_b`); for target return Root then Enter Second
|
||||
assessment → B (`[sa_r2]/sa_b`). Enter name **Shared assessment work** and select
|
||||
**Common work incidence**. Choosing **X · Check authorization** (`@sa_work_x`)
|
||||
as evidence must reject; repair to exact **B · Review assessment** (`@sa_work_b`).
|
||||
Both full reference paths must remain distinct while the shared work identity is
|
||||
the same. Apply once and Save a fresh copy.
|
||||
|
||||
Run `CHECKER check sa-common-work SAVED/project.arcadia`. Undo/Save uses `baseline`;
|
||||
Redo/Save uses `sa-common-work` and exact accepted UUID/byte comparison. This records
|
||||
shared identity; it neither fuses the two occurrences nor creates execution order.
|
||||
The complete-model oracle rejects renamed/duplicated work, collapsed instance
|
||||
paths, wrong evidence or unrelated record changes.
|
||||
|
||||
After compiling, also regenerate original `generate` into a fresh scratch folder
|
||||
and compare its three hashes with the existing manifest, then rerun a preserved
|
||||
old accepted case. These checks establish that extending the checker did not alter
|
||||
the already-measured baseline or existing expected results.
|
||||
Reference in New Issue
Block a user