Publish the reviewed ordinary and Text compatibility checkpoint
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
# Ordinary-text union: closed-run checkpoint
|
||||
|
||||
Run `python verify.py` with Python 3.10 or newer in this directory. The verifier
|
||||
uses only the standard library and these five files. It reads archives in memory,
|
||||
does not extract or execute source/binaries, and does not consult Git, Cargo,
|
||||
network services, or paths recorded from the original machine.
|
||||
|
||||
`files.json` hashes the ZIP, manifest, verifier and this README. `manifest.json`
|
||||
lists every ZIP member and maps each run to its exact input manifest and ZIP.
|
||||
Only byte-identical input files are deduplicated; ZIPs with different timestamps
|
||||
remain separate even when their source inventories match. Receipts and raw logs
|
||||
are retained verbatim, including failures and original local path strings.
|
||||
|
||||
The production composition is d7c065991d3f63cc41341d23a546739de8837ac3.
|
||||
The checkpoint is e624d5b9c4f848eff3fba2ed83f9decf959e14d8, including generated
|
||||
teaching fixtures and normative language documentation. Individual receipt HEADs
|
||||
and input inventories are authoritative for each run; a HEAD alone does not
|
||||
describe dirty fixture/document changes during capture.
|
||||
|
||||
| Closed capture | Recorded outcome |
|
||||
| --- | --- |
|
||||
| core-consumers-1 | Offline dependency resolution failed: num-bigint missing |
|
||||
| windows-dependencies-1 | Dependency preparation completed |
|
||||
| core-1 | 536 passed, 1 failed, 1 ignored; stale generated teaching fixture failure preserved |
|
||||
| teaching-generate-1 | Teaching generator completed; raw generated-release1 outputs included |
|
||||
| teaching-check-2 | 4 passed after fixture regeneration |
|
||||
| language-doc-1 | Warning log from failed strict render preserved |
|
||||
| language-doc-2 | Strict docutils 0.23 render succeeded; empty warning log |
|
||||
| consumers-1 | 63 passed |
|
||||
|
||||
The verifier checks exact archive membership, hashes and lengths, nested input
|
||||
archive membership/content, input counts (including 71 vendored iced_widget
|
||||
files), start/result/process command relationships, unchanged-input assertions,
|
||||
helper hashes, exit codes, exact test summary rows and aggregate counts,
|
||||
compiler-artifact receipt relationships, composition patch hash, generated output
|
||||
inventory, and successful document source/output/warning receipts.
|
||||
|
||||
Limitations: integrity and internal consistency are not independent reproduction
|
||||
or authenticated provenance. Test expectations in the manifest are frozen from
|
||||
the raw capture. No runtime binaries, dependency cache, credentials or user
|
||||
profile are packaged. Recorded artifact readback hashes cannot be independently
|
||||
checked without the excluded binaries. Input archives contain project sources,
|
||||
not a hermetic toolchain or complete dependency distribution. The gate helper is
|
||||
receipt-pinned; the included render helper is its current successful-render
|
||||
version, with no historical helper hash receipt. language-doc-1 contains only
|
||||
warnings.log: its original helper, exact failed input and process/exit receipt
|
||||
were not captured. The successful render inputs and outputs are hash-pinned by
|
||||
its result receipt. Generated outputs are archived as observed, without a
|
||||
separate generation-output hash receipt. This package does not claim a full
|
||||
core rerun after regeneration, complete desktop/GUI validation, lint success,
|
||||
release packaging, or publication. Active desktop-list-1 and any later runs are
|
||||
excluded from this initial checkpoint.
|
||||
Binary file not shown.
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"evidence.zip": {
|
||||
"bytes": 8584848,
|
||||
"sha256": "f220433f8f6fe99cea762aca98ee471c14411b5f6762745cf91432e6bfaca440"
|
||||
},
|
||||
"manifest.json": {
|
||||
"bytes": 25175,
|
||||
"sha256": "7893d7cdea75f8d3d2bca076d17a8688a49a2ce414ee62875a53dfa3b04c9d46"
|
||||
},
|
||||
"verify.py": {
|
||||
"bytes": 5526,
|
||||
"sha256": "65136bbf0074c63a1478a56e0a66523d785081c368a50cd698d1231f6b0618ba"
|
||||
},
|
||||
"README.md": {
|
||||
"bytes": 3328,
|
||||
"sha256": "98c900e5c83e13da6c6edc11521df8edb87f4e1ebebb004fd1d6cc8acc91683b"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,901 @@
|
||||
{
|
||||
"schema": 1,
|
||||
"productionCommit": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"checkpointCommit": "e624d5b9c4f848eff3fba2ed83f9decf959e14d8",
|
||||
"runs": {
|
||||
"core-consumers-1": {
|
||||
"kind": "cargo",
|
||||
"inputs": "inputs/e3d2d504b18bb1f7c4c3fa1f26abff425b957f18b418d8556888151723ba67b4.json",
|
||||
"archive": "inputs/12ce1ca9c1185d7a91a1dea322cdc0c7fc4372db5d879386595acdbfd412d880.zip",
|
||||
"command": [
|
||||
"cargo",
|
||||
"test",
|
||||
"--locked",
|
||||
"--offline",
|
||||
"-p",
|
||||
"oa-core",
|
||||
"-p",
|
||||
"oa-server",
|
||||
"--test",
|
||||
"http",
|
||||
"-p",
|
||||
"oa-cli",
|
||||
"--test",
|
||||
"source_cli",
|
||||
"--no-fail-fast",
|
||||
"--message-format=json",
|
||||
"--",
|
||||
"--nocapture"
|
||||
],
|
||||
"head": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"exitCode": 101,
|
||||
"inputCount": 707,
|
||||
"testRows": [],
|
||||
"testTotals": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"windows-dependencies-1": {
|
||||
"kind": "cargo",
|
||||
"inputs": "inputs/e3d2d504b18bb1f7c4c3fa1f26abff425b957f18b418d8556888151723ba67b4.json",
|
||||
"archive": "inputs/12ce1ca9c1185d7a91a1dea322cdc0c7fc4372db5d879386595acdbfd412d880.zip",
|
||||
"command": [
|
||||
"cargo",
|
||||
"fetch",
|
||||
"--locked",
|
||||
"--target",
|
||||
"x86_64-pc-windows-gnullvm"
|
||||
],
|
||||
"head": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"exitCode": 0,
|
||||
"inputCount": 707,
|
||||
"testRows": [],
|
||||
"testTotals": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"core-1": {
|
||||
"kind": "cargo",
|
||||
"inputs": "inputs/e3d2d504b18bb1f7c4c3fa1f26abff425b957f18b418d8556888151723ba67b4.json",
|
||||
"archive": "inputs/12ce1ca9c1185d7a91a1dea322cdc0c7fc4372db5d879386595acdbfd412d880.zip",
|
||||
"command": [
|
||||
"cargo",
|
||||
"test",
|
||||
"--locked",
|
||||
"--offline",
|
||||
"-p",
|
||||
"oa-core",
|
||||
"--no-fail-fast",
|
||||
"--message-format=json",
|
||||
"--",
|
||||
"--nocapture"
|
||||
],
|
||||
"head": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"exitCode": 101,
|
||||
"inputCount": 707,
|
||||
"testRows": [
|
||||
[
|
||||
102,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
3,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
9,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
6,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
10,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
9,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
6,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
11,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
6,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
16,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
13,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
8,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
3,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
7,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
8,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
35,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
7,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
15,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
7,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
3,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
7,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
4,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
4,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
13,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
13,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
14,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
11,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
6,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
15,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
18,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
4,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
8,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
16,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
10,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
3,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
12,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
33,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
13,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
28,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
],
|
||||
"testTotals": [
|
||||
536,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"teaching-generate-1": {
|
||||
"kind": "cargo",
|
||||
"inputs": "inputs/e3d2d504b18bb1f7c4c3fa1f26abff425b957f18b418d8556888151723ba67b4.json",
|
||||
"archive": "inputs/12ce1ca9c1185d7a91a1dea322cdc0c7fc4372db5d879386595acdbfd412d880.zip",
|
||||
"command": [
|
||||
"cargo",
|
||||
"run",
|
||||
"--locked",
|
||||
"--offline",
|
||||
"-p",
|
||||
"oa-core",
|
||||
"--example",
|
||||
"generate_release1",
|
||||
"--message-format=json",
|
||||
"--",
|
||||
".local/ordinary-text-integration/generated-release1"
|
||||
],
|
||||
"head": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"exitCode": 0,
|
||||
"inputCount": 707,
|
||||
"testRows": [],
|
||||
"testTotals": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"teaching-check-2": {
|
||||
"kind": "cargo",
|
||||
"inputs": "inputs/0fa1da63d71c984cd99b079de661e88154b5a31818b384f557deefd40b8ead3a.json",
|
||||
"archive": "inputs/81bd006f10034bc0c203187af179548a549fda6e58bc7cde0702cc26994fd28d.zip",
|
||||
"command": [
|
||||
"cargo",
|
||||
"test",
|
||||
"--locked",
|
||||
"--offline",
|
||||
"-p",
|
||||
"oa-core",
|
||||
"--test",
|
||||
"release1_teaching",
|
||||
"--message-format=json",
|
||||
"--",
|
||||
"--nocapture"
|
||||
],
|
||||
"head": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"exitCode": 0,
|
||||
"inputCount": 707,
|
||||
"testRows": [
|
||||
[
|
||||
4,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
],
|
||||
"testTotals": [
|
||||
4,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
"language-doc-1": {
|
||||
"kind": "render"
|
||||
},
|
||||
"language-doc-2": {
|
||||
"kind": "render"
|
||||
},
|
||||
"consumers-1": {
|
||||
"kind": "cargo",
|
||||
"inputs": "inputs/bbe8290d9cb11a7ee5dba250350451c5b7ec88069aa65f6be786a67922408c48.json",
|
||||
"archive": "inputs/86ac50e9cec8b39db91bbc98e5388e8c0f8466e6c217cf2f4eca5f1db087dde1.zip",
|
||||
"command": [
|
||||
"cargo",
|
||||
"test",
|
||||
"--locked",
|
||||
"--offline",
|
||||
"-p",
|
||||
"oa-server",
|
||||
"--test",
|
||||
"http",
|
||||
"-p",
|
||||
"oa-cli",
|
||||
"--test",
|
||||
"source_cli",
|
||||
"--no-fail-fast",
|
||||
"--message-format=json",
|
||||
"--",
|
||||
"--nocapture"
|
||||
],
|
||||
"head": "d7c065991d3f63cc41341d23a546739de8837ac3",
|
||||
"exitCode": 0,
|
||||
"inputCount": 707,
|
||||
"testRows": [
|
||||
[
|
||||
12,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
[
|
||||
51,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
],
|
||||
"testTotals": [
|
||||
63,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
}
|
||||
},
|
||||
"members": {
|
||||
"generated-release1/expected-diagnostics.json": {
|
||||
"bytes": 288,
|
||||
"sha256": "3700393d76b940cfc076bf52861bd7b1f43370f8eabce3594531bd0bf1fc851e"
|
||||
},
|
||||
"generated-release1/model.json": {
|
||||
"bytes": 134520,
|
||||
"sha256": "ef0ef4006c3e09d5db6e1b621256b3f7d6642f3a7b09cc34607cfbcca830c727"
|
||||
},
|
||||
"generated-release1/oa/activities/activity_oa_restore_work.arcadia": {
|
||||
"bytes": 1130,
|
||||
"sha256": "21cbd7176af8fad68453306f2371ff03e127a994b8796cdf044567332de9686f"
|
||||
},
|
||||
"generated-release1/oa/behavior/process_oa_assessment_procedure.arcadia": {
|
||||
"bytes": 550,
|
||||
"sha256": "23cabc213c264a16c8595414db6acb09248c1cef9cd699f1b0316e5bb82c062a"
|
||||
},
|
||||
"generated-release1/oa/behavior/process_oa_field_procedure.arcadia": {
|
||||
"bytes": 1178,
|
||||
"sha256": "9c52086759b7344b4809ceb8d372f65647b16fc24153a03b887faa378c37fe96"
|
||||
},
|
||||
"generated-release1/oa/behavior/process_oa_response.arcadia": {
|
||||
"bytes": 2560,
|
||||
"sha256": "675798bd19e6b40d03e7076b0e59b110cdaaab7b6d16c47c3ac80fa960072e84"
|
||||
},
|
||||
"generated-release1/oa/behavior/scenario_oa_conversation.arcadia": {
|
||||
"bytes": 1515,
|
||||
"sha256": "e217e5394a0771dc16206ed9437a231da27905d2f19be64b3f48281c0a32fb6b"
|
||||
},
|
||||
"generated-release1/oa/behavior/scenario_oa_full_scenario.arcadia": {
|
||||
"bytes": 1121,
|
||||
"sha256": "c5a285f2d7c61bd2a136107f267fbf9cddb1cba3f63ff36a6f53f7ab98f33df5"
|
||||
},
|
||||
"generated-release1/oa/behavior/state_machine_oa_monitor.arcadia": {
|
||||
"bytes": 1358,
|
||||
"sha256": "e7349e1e5336282eed3f5a103129db33d3ae4ed500788ee7129e8fc193ac57f6"
|
||||
},
|
||||
"generated-release1/oa/capabilities.arcadia": {
|
||||
"bytes": 630,
|
||||
"sha256": "26a3d9b615a3251ff010e0b47127f2d16bc2dcd45ed95967208b0076d725843a"
|
||||
},
|
||||
"generated-release1/oa/model.arcadia": {
|
||||
"bytes": 531,
|
||||
"sha256": "069a5eaaf525089935cc9d73ae7b916866ed78c6534705d75739650ecdea7ada"
|
||||
},
|
||||
"generated-release1/oa/participants.arcadia": {
|
||||
"bytes": 1580,
|
||||
"sha256": "591a75a9ecad280302be4d4ae0171ad616377ed11ead5e233848ca2dc0a71819"
|
||||
},
|
||||
"generated-release1/oa/types.arcadia": {
|
||||
"bytes": 554,
|
||||
"sha256": "f02c391d584674c879f662a418abba3a220f1fee88471ca49322ac9873de628d"
|
||||
},
|
||||
"generated-release1/project.arcadia": {
|
||||
"bytes": 1958,
|
||||
"sha256": "b2674e6bf77cfe0f6f0ba79c81d2e96d92f39c02ca2c6266d80e91723bfb9fda"
|
||||
},
|
||||
"generated-release1/sa/behavior/process_sa_assessment_procedure.arcadia": {
|
||||
"bytes": 559,
|
||||
"sha256": "5c414fbdaabf9f9e402b0441fcacf1cacf4dbbc6c822162f028de35abf59be2d"
|
||||
},
|
||||
"generated-release1/sa/behavior/process_sa_field_procedure.arcadia": {
|
||||
"bytes": 1187,
|
||||
"sha256": "ece846fdf93857e71a9ab0efcbdf64a5c41c71180f62afa3f79077fffb53b8f2"
|
||||
},
|
||||
"generated-release1/sa/behavior/process_sa_response.arcadia": {
|
||||
"bytes": 2569,
|
||||
"sha256": "af7fdda280a917cf626f6e077162d481f9aaad280f8e81330c07d7fe384b1c52"
|
||||
},
|
||||
"generated-release1/sa/behavior/scenario_sa_conversation.arcadia": {
|
||||
"bytes": 1847,
|
||||
"sha256": "01339699ec3ee409418d9bb232542f2bcd9419f1e67b183e77700c56bb9f71d2"
|
||||
},
|
||||
"generated-release1/sa/behavior/scenario_sa_full_scenario.arcadia": {
|
||||
"bytes": 1116,
|
||||
"sha256": "5dce6b00a3a441162e8dee3e23d9ca5ab7bed4a24de669b1fba03664a3086dda"
|
||||
},
|
||||
"generated-release1/sa/behavior/state_machine_sa_monitor.arcadia": {
|
||||
"bytes": 1358,
|
||||
"sha256": "17dbcfa5bbfd10fc8e23a325fc950ce853c219b4aa89c74f96278cbb3f34acc8"
|
||||
},
|
||||
"generated-release1/sa/capabilities.arcadia": {
|
||||
"bytes": 630,
|
||||
"sha256": "81706a0ca9d7db2aa0350888b9c00d853885185db2e6b90557d3d51a11c3d645"
|
||||
},
|
||||
"generated-release1/sa/functions/function_sa_audit_thresholds.arcadia": {
|
||||
"bytes": 280,
|
||||
"sha256": "27f798f78f36e72b38edab3725af2feb0eaa010fd52a60b5c6b6bef57ad3b686"
|
||||
},
|
||||
"generated-release1/sa/functions/function_sa_restore_work.arcadia": {
|
||||
"bytes": 2251,
|
||||
"sha256": "357c6acb80f86b4e8d8f5c98f9f79d140f85fbe09f3406b41b7ac6eba464ec8c"
|
||||
},
|
||||
"generated-release1/sa/model.arcadia": {
|
||||
"bytes": 531,
|
||||
"sha256": "805b90262e27090ae7da81a51bcefa49c97fb0b3d3220b4a72323b4c4351c395"
|
||||
},
|
||||
"generated-release1/sa/participants.arcadia": {
|
||||
"bytes": 3604,
|
||||
"sha256": "ca144d6a8f45fe720b5d18c7b59c7671444baa8c37e5ce9117bcba34b3a6aa84"
|
||||
},
|
||||
"generated-release1/sa/types.arcadia": {
|
||||
"bytes": 903,
|
||||
"sha256": "540ddbc2bcd0ccf45298e3ea5660637341aff63ff65fd87ac2f26469d1adc064"
|
||||
},
|
||||
"generated-release1/traceability.arcadia": {
|
||||
"bytes": 28041,
|
||||
"sha256": "474bd28d955ff7af7722f6e9a23220d816879e3f46202e79a233544b9c593116"
|
||||
},
|
||||
"generated-release1/transition-before.json": {
|
||||
"bytes": 35801,
|
||||
"sha256": "2253e6434f741687e22327c37d520ed15c043bc36025498650bc2366bb6a874d"
|
||||
},
|
||||
"generated-release1/transition-request.json": {
|
||||
"bytes": 4276,
|
||||
"sha256": "43b9a22e5f95ad3bc0ebd2478ead0e14406854abc989ae94ded9367b013d812a"
|
||||
},
|
||||
"generated-release1/views/diagram_oa_allocation_view.arcadia": {
|
||||
"bytes": 1786,
|
||||
"sha256": "c45d7467839219d894804c1ef2d22ff4d4a5a84a6a273c526bafd4c1facde624"
|
||||
},
|
||||
"generated-release1/views/diagram_sa_allocation_view.arcadia": {
|
||||
"bytes": 1797,
|
||||
"sha256": "352a3ca745517592b5c9b1239b5770f62f0466a329a91fd03457ef2b53c06ed6"
|
||||
},
|
||||
"generated-release1/views/diagram_sa_capability_view.arcadia": {
|
||||
"bytes": 1286,
|
||||
"sha256": "8f18fcccbcddcf3c1ea0ffe727b5b23b77fc148c5da4fde953abe681e4c20cd2"
|
||||
},
|
||||
"generated-release1/views/diagram_sa_service_view.arcadia": {
|
||||
"bytes": 1960,
|
||||
"sha256": "4c72cb7593d9c4be8d2600b0656a7a3a6ce84c45bb2f3e58a4ee5ae3bf91913c"
|
||||
},
|
||||
"generated-release1/views/diagram_sa_state_view.arcadia": {
|
||||
"bytes": 1576,
|
||||
"sha256": "dd1bea81ac7dc549a53f9b190be6f13052e00ede345bd180444cc31edb892230"
|
||||
},
|
||||
"helpers/composition.json": {
|
||||
"bytes": 1190,
|
||||
"sha256": "78a98f3a034cda4d0cc1abfe33efb785e847bb6278b49c2071d70ee5f1dc23f3"
|
||||
},
|
||||
"helpers/gate-union.py": {
|
||||
"bytes": 3495,
|
||||
"sha256": "9cca2646b1bcf09961a9ad1a276d633d8e4296ff2c6f2f356f028afaf789f503"
|
||||
},
|
||||
"helpers/ordinary-contract.patch": {
|
||||
"bytes": 7301,
|
||||
"sha256": "931a5822dbfa5ad34a0dc961035e060ccdc7aed15712c4a9b5dc15a852675f71"
|
||||
},
|
||||
"helpers/ordinary.patch": {
|
||||
"bytes": 145928,
|
||||
"sha256": "e319a5151b7e6713880eaaab632f3f1c01aee6df3cd534d85a1c099fb501dcb7"
|
||||
},
|
||||
"helpers/render-language.py": {
|
||||
"bytes": 1009,
|
||||
"sha256": "82909cf11b0bdb0594b424cba51e71ec0abdead78d878f101b7ae8ff6c4281f8"
|
||||
},
|
||||
"helpers/required-desktop-tests.json": {
|
||||
"bytes": 125261,
|
||||
"sha256": "6672e3f7ccfb92b7710310836af6933a8e58ef113353505ec4fc0c3d6908c136"
|
||||
},
|
||||
"inputs/0fa1da63d71c984cd99b079de661e88154b5a31818b384f557deefd40b8ead3a.json": {
|
||||
"bytes": 118403,
|
||||
"sha256": "0fa1da63d71c984cd99b079de661e88154b5a31818b384f557deefd40b8ead3a"
|
||||
},
|
||||
"inputs/12ce1ca9c1185d7a91a1dea322cdc0c7fc4372db5d879386595acdbfd412d880.zip": {
|
||||
"bytes": 2830239,
|
||||
"sha256": "12ce1ca9c1185d7a91a1dea322cdc0c7fc4372db5d879386595acdbfd412d880"
|
||||
},
|
||||
"inputs/81bd006f10034bc0c203187af179548a549fda6e58bc7cde0702cc26994fd28d.zip": {
|
||||
"bytes": 2828619,
|
||||
"sha256": "81bd006f10034bc0c203187af179548a549fda6e58bc7cde0702cc26994fd28d"
|
||||
},
|
||||
"inputs/86ac50e9cec8b39db91bbc98e5388e8c0f8466e6c217cf2f4eca5f1db087dde1.zip": {
|
||||
"bytes": 2831327,
|
||||
"sha256": "86ac50e9cec8b39db91bbc98e5388e8c0f8466e6c217cf2f4eca5f1db087dde1"
|
||||
},
|
||||
"inputs/bbe8290d9cb11a7ee5dba250350451c5b7ec88069aa65f6be786a67922408c48.json": {
|
||||
"bytes": 118403,
|
||||
"sha256": "bbe8290d9cb11a7ee5dba250350451c5b7ec88069aa65f6be786a67922408c48"
|
||||
},
|
||||
"inputs/e3d2d504b18bb1f7c4c3fa1f26abff425b957f18b418d8556888151723ba67b4.json": {
|
||||
"bytes": 118404,
|
||||
"sha256": "e3d2d504b18bb1f7c4c3fa1f26abff425b957f18b418d8556888151723ba67b4"
|
||||
},
|
||||
"render/language.html": {
|
||||
"bytes": 188141,
|
||||
"sha256": "57e71090f56ae27aa50f757886d6cadf63d49f5641fe4a365547cbd9e59685b6"
|
||||
},
|
||||
"render/language.rst": {
|
||||
"bytes": 142931,
|
||||
"sha256": "5deafe3f75a503ab5fb3d05c5ad8f126d82668f89bef02067ce5d56c3045a2bb"
|
||||
},
|
||||
"runs/consumers-1/process.json": {
|
||||
"bytes": 257,
|
||||
"sha256": "85b18634abd4ccf90144b44b01cbcade2521ef6706b2e46abc2e1d60a4dfc346"
|
||||
},
|
||||
"runs/consumers-1/result.json": {
|
||||
"bytes": 6986,
|
||||
"sha256": "5501663ed1f845b8d18487c90fb827faab2a1c2319cf8ea8c127324fdd9add15"
|
||||
},
|
||||
"runs/consumers-1/started.json": {
|
||||
"bytes": 1488,
|
||||
"sha256": "908dda6bce0013b3c5db9bc5cf678a9df3b221845e9c29d29409bf440bab52d3"
|
||||
},
|
||||
"runs/consumers-1/stderr.log": {
|
||||
"bytes": 652,
|
||||
"sha256": "6dca8394973a95c080a0b8858926efe7779512adf0fd5e64b47d1239f9446618"
|
||||
},
|
||||
"runs/consumers-1/stdout.log": {
|
||||
"bytes": 144498,
|
||||
"sha256": "f1ff82c06e0e1b0f0c3eadb5533402bfea42983c89fa3581340768f3d953de3e"
|
||||
},
|
||||
"runs/core-1/process.json": {
|
||||
"bytes": 197,
|
||||
"sha256": "1bf0f358d94b6e95eab5cf3823a4230a72f0363b77c75b8222c73f1122739f21"
|
||||
},
|
||||
"runs/core-1/result.json": {
|
||||
"bytes": 67077,
|
||||
"sha256": "a9f111627d5a2a7fa33e525cbd43150b803505e3e201b8465f94d2060fce143e"
|
||||
},
|
||||
"runs/core-1/started.json": {
|
||||
"bytes": 1398,
|
||||
"sha256": "56fb8a8824c031ed8f831561241a3bf321158f75cc0a2acdca6b0a77d9b648f6"
|
||||
},
|
||||
"runs/core-1/stderr.log": {
|
||||
"bytes": 12121,
|
||||
"sha256": "ca7ae2dfd0b6eecec811fce5831ea0dc7fb3b6209ffcad88d45eb6c5afd65103"
|
||||
},
|
||||
"runs/core-1/stdout.log": {
|
||||
"bytes": 131218,
|
||||
"sha256": "0d683632d1046f102e6b70af56d67ea6841134d99c923f0648261b4832a860fa"
|
||||
},
|
||||
"runs/core-consumers-1/process.json": {
|
||||
"bytes": 274,
|
||||
"sha256": "16bba7d4e4e3eb39c0ae89ecdbbfe38818c2ed329a32ac52a8db3cea69ed7fd4"
|
||||
},
|
||||
"runs/core-consumers-1/result.json": {
|
||||
"bytes": 1907,
|
||||
"sha256": "4bb8e79cd647aacebe2c4790a18ac37d07bbc29b0f7c8eca1933f1c5020474f8"
|
||||
},
|
||||
"runs/core-consumers-1/started.json": {
|
||||
"bytes": 1515,
|
||||
"sha256": "2ff77ca7601800340bf458d0707aaeef742a010ec7f6a55cf1577a1c33f5c543"
|
||||
},
|
||||
"runs/core-consumers-1/stderr.log": {
|
||||
"bytes": 327,
|
||||
"sha256": "5ded46d388f7ecc597c5e468621e84a297b1231f4eab8c2aa413697dd005e286"
|
||||
},
|
||||
"runs/core-consumers-1/stdout.log": {
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"runs/language-doc-1/warnings.log": {
|
||||
"bytes": 144,
|
||||
"sha256": "82cf5ddae4d21aa3730437a7962e6582507aa8032cc75fb8164ff7cf9003b7ae"
|
||||
},
|
||||
"runs/language-doc-2/result.json": {
|
||||
"bytes": 415,
|
||||
"sha256": "620a449b2995fbbb27aa769cadf603dd01d9f7036c595d012e66b74469102bde"
|
||||
},
|
||||
"runs/language-doc-2/warnings.log": {
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"runs/teaching-check-2/process.json": {
|
||||
"bytes": 210,
|
||||
"sha256": "18e9d3ee3e9c0d2d21c196c811ae543c899cc4580ad3288eca3a544f20f7a9cc"
|
||||
},
|
||||
"runs/teaching-check-2/result.json": {
|
||||
"bytes": 3147,
|
||||
"sha256": "cfc8dad31b1d8ba45face31f7986a30066c3bc464d19bd3b8495c9a013b45c0e"
|
||||
},
|
||||
"runs/teaching-check-2/started.json": {
|
||||
"bytes": 1416,
|
||||
"sha256": "259944f97150c87b2c95e9f53ae5cbb09264b03284510c9ac44272a70fdc9c87"
|
||||
},
|
||||
"runs/teaching-check-2/stderr.log": {
|
||||
"bytes": 218,
|
||||
"sha256": "9c90adb28961f087f33b905352c50c5d2aaa46785f47f3061dbe7dc161bc95d9"
|
||||
},
|
||||
"runs/teaching-check-2/stdout.log": {
|
||||
"bytes": 42153,
|
||||
"sha256": "d53a7d2d3d726302111aab71208814f487489080d250c1f555ad18312e80d86c"
|
||||
},
|
||||
"runs/teaching-generate-1/process.json": {
|
||||
"bytes": 252,
|
||||
"sha256": "c97f65ec53807bca963754b767ab21a88c3476c3639f0b54b38880281aff8a22"
|
||||
},
|
||||
"runs/teaching-generate-1/result.json": {
|
||||
"bytes": 3171,
|
||||
"sha256": "bd0095f78b4ff3cbaf7c1c3183bc280dbb1eec1cb68a528507af27ac35f34f83"
|
||||
},
|
||||
"runs/teaching-generate-1/started.json": {
|
||||
"bytes": 1458,
|
||||
"sha256": "e0526c09c8baa67bdb753ed1b0f15e237d3db2b1c60f097a145a141b9d174169"
|
||||
},
|
||||
"runs/teaching-generate-1/stderr.log": {
|
||||
"bytes": 229,
|
||||
"sha256": "464f44f1eaa5cabe25b7f66bcd689912977482c3eaad0e65328e0210749491fa"
|
||||
},
|
||||
"runs/teaching-generate-1/stdout.log": {
|
||||
"bytes": 41964,
|
||||
"sha256": "c7b195917f9b5b15aaf654703349b713b788f4cfbf00dce966539ff0764f892b"
|
||||
},
|
||||
"runs/windows-dependencies-1/process.json": {
|
||||
"bytes": 146,
|
||||
"sha256": "3901471653ef98f1abe326244dc639c6a2f0f53d3fff72db82acf068d8afabf9"
|
||||
},
|
||||
"runs/windows-dependencies-1/result.json": {
|
||||
"bytes": 1712,
|
||||
"sha256": "f1aa540938e09c5f4b92d13b293861a9e2cd08681e3f6b285b9e85f848a44935"
|
||||
},
|
||||
"runs/windows-dependencies-1/started.json": {
|
||||
"bytes": 1321,
|
||||
"sha256": "a54a7f78b455414d592b7ca3daf3d824487583a844097db76265e564bfb531d7"
|
||||
},
|
||||
"runs/windows-dependencies-1/stderr.log": {
|
||||
"bytes": 117,
|
||||
"sha256": "a82eeeb2d2fffd4d9e5d6e20ef76ed29e9e365923e2cc33bac0ab8f21a7a88d8"
|
||||
},
|
||||
"runs/windows-dependencies-1/stdout.log": {
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
}
|
||||
},
|
||||
"generatedFiles": [
|
||||
"generated-release1/expected-diagnostics.json",
|
||||
"generated-release1/model.json",
|
||||
"generated-release1/oa/activities/activity_oa_restore_work.arcadia",
|
||||
"generated-release1/oa/behavior/process_oa_assessment_procedure.arcadia",
|
||||
"generated-release1/oa/behavior/process_oa_field_procedure.arcadia",
|
||||
"generated-release1/oa/behavior/process_oa_response.arcadia",
|
||||
"generated-release1/oa/behavior/scenario_oa_conversation.arcadia",
|
||||
"generated-release1/oa/behavior/scenario_oa_full_scenario.arcadia",
|
||||
"generated-release1/oa/behavior/state_machine_oa_monitor.arcadia",
|
||||
"generated-release1/oa/capabilities.arcadia",
|
||||
"generated-release1/oa/model.arcadia",
|
||||
"generated-release1/oa/participants.arcadia",
|
||||
"generated-release1/oa/types.arcadia",
|
||||
"generated-release1/project.arcadia",
|
||||
"generated-release1/sa/behavior/process_sa_assessment_procedure.arcadia",
|
||||
"generated-release1/sa/behavior/process_sa_field_procedure.arcadia",
|
||||
"generated-release1/sa/behavior/process_sa_response.arcadia",
|
||||
"generated-release1/sa/behavior/scenario_sa_conversation.arcadia",
|
||||
"generated-release1/sa/behavior/scenario_sa_full_scenario.arcadia",
|
||||
"generated-release1/sa/behavior/state_machine_sa_monitor.arcadia",
|
||||
"generated-release1/sa/capabilities.arcadia",
|
||||
"generated-release1/sa/functions/function_sa_audit_thresholds.arcadia",
|
||||
"generated-release1/sa/functions/function_sa_restore_work.arcadia",
|
||||
"generated-release1/sa/model.arcadia",
|
||||
"generated-release1/sa/participants.arcadia",
|
||||
"generated-release1/sa/types.arcadia",
|
||||
"generated-release1/traceability.arcadia",
|
||||
"generated-release1/transition-before.json",
|
||||
"generated-release1/transition-request.json",
|
||||
"generated-release1/views/diagram_oa_allocation_view.arcadia",
|
||||
"generated-release1/views/diagram_sa_allocation_view.arcadia",
|
||||
"generated-release1/views/diagram_sa_capability_view.arcadia",
|
||||
"generated-release1/views/diagram_sa_service_view.arcadia",
|
||||
"generated-release1/views/diagram_sa_state_view.arcadia"
|
||||
],
|
||||
"generatedCount": 34
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
"""Read-only, Python-standard-library verification. Never executes archived code."""
|
||||
from pathlib import Path, PurePosixPath
|
||||
from datetime import datetime
|
||||
import hashlib
|
||||
import io
|
||||
import json
|
||||
import re
|
||||
import zipfile
|
||||
|
||||
ROOT = Path(__file__).resolve().parent
|
||||
|
||||
def require(ok, message):
|
||||
if not ok:
|
||||
raise ValueError(message)
|
||||
|
||||
def digest(data):
|
||||
return {'bytes': len(data), 'sha256': hashlib.sha256(data).hexdigest()}
|
||||
|
||||
def members(z, expected):
|
||||
names = z.namelist()
|
||||
require(len(names) == len(set(names)), 'duplicate ZIP members')
|
||||
require(set(names) == set(expected), 'archive membership mismatch')
|
||||
require(all(not PurePosixPath(n).is_absolute() and '..' not in PurePosixPath(n).parts
|
||||
and '\\' not in n and ':' not in n for n in names), 'unsafe member')
|
||||
|
||||
def main():
|
||||
inventory = json.loads((ROOT / 'files.json').read_text())
|
||||
for name, expected in inventory.items():
|
||||
require(digest((ROOT / name).read_bytes()) == expected, 'external file hash: ' + name)
|
||||
manifest = json.loads((ROOT / 'manifest.json').read_text())
|
||||
with zipfile.ZipFile(ROOT / 'evidence.zip') as z:
|
||||
members(z, manifest['members'])
|
||||
for name, expected in manifest['members'].items():
|
||||
require(digest(z.read(name)) == expected, 'member hash: ' + name)
|
||||
def raw(name): return z.read(name)
|
||||
def obj(name): return json.loads(raw(name))
|
||||
checked = set()
|
||||
for run, spec in manifest['runs'].items():
|
||||
if spec['kind'] != 'cargo':
|
||||
continue
|
||||
prefix = 'runs/' + run + '/'
|
||||
start, result, process = (obj(prefix + n + '.json') for n in ('started', 'result', 'process'))
|
||||
require(all(result[k] == v for k, v in start.items()), run + ': start/result relationship')
|
||||
require(result['command'] == spec['command'] == process['command'], run + ': command')
|
||||
require(result['head'] == spec['head'], run + ': HEAD')
|
||||
require(result['exitCode'] == spec['exitCode'] and result['inputsUnchanged'] is True, run + ': outcome')
|
||||
require(datetime.fromisoformat(result['finish']) >= datetime.fromisoformat(start['start']), run + ': times')
|
||||
require(result['seconds'] >= 0, run + ': duration')
|
||||
require(result['helper'] == digest(raw('helpers/gate-union.py')), run + ': helper')
|
||||
for field, file in [('inputs', spec['inputs']), ('archive', spec['archive']), ('stdout', prefix+'stdout.log'), ('stderr', prefix+'stderr.log')]:
|
||||
require(result[field] == digest(raw(file)), run + ': receipt ' + field)
|
||||
inputs = obj(spec['inputs'])
|
||||
require(len(inputs) == result['inputCount'] == spec['inputCount'], run + ': input count')
|
||||
require(sum(p.startswith('crates/vendor/iced_widget/') for p in inputs) == 71, run + ': vendor count')
|
||||
pair = (spec['inputs'], spec['archive'])
|
||||
if pair not in checked:
|
||||
with zipfile.ZipFile(io.BytesIO(raw(spec['archive']))) as source:
|
||||
members(source, inputs)
|
||||
for name, expected in inputs.items():
|
||||
require(digest(source.read(name)) == expected, run + ': source hash ' + name)
|
||||
checked.add(pair)
|
||||
stdout = raw(prefix+'stdout.log').decode('utf-8', errors='replace')
|
||||
rows = [[int(x) for x in row] for row in re.findall(r'test result: (?:ok|FAILED)\. (\d+) passed; (\d+) failed; (\d+) ignored; (\d+) measured; (\d+) filtered out;', stdout)]
|
||||
require(rows == spec['testRows'], run + ': exact test summaries')
|
||||
require([sum(row[i] for row in rows) for i in range(5)] == spec['testTotals'], run + ': test totals')
|
||||
artifacts = []
|
||||
for line in stdout.splitlines():
|
||||
try: item = json.loads(line)
|
||||
except json.JSONDecodeError: continue
|
||||
if isinstance(item, dict) and item.get('reason') == 'compiler-artifact' and item.get('executable'):
|
||||
artifacts.append(item)
|
||||
require(artifacts == [a['cargo'] for a in result['artifacts']], run + ': artifact receipt relationship')
|
||||
print(run, 'exit', result['exitCode'], 'test totals', spec['testTotals'])
|
||||
composition = obj('helpers/composition.json')
|
||||
require(composition['patch'] == digest(raw('helpers/ordinary.patch')), 'composition patch')
|
||||
doc = obj('runs/language-doc-2/result.json')
|
||||
require(doc['strict'] is True and doc['docutils'] == '0.23', 'render settings')
|
||||
for field, path in [('source','render/language.rst'), ('html','render/language.html'), ('warnings','runs/language-doc-2/warnings.log')]:
|
||||
require(doc[field] == digest(raw(path)), 'render receipt ' + field)
|
||||
require(raw('runs/language-doc-2/warnings.log') == b'', 'successful render warnings')
|
||||
require(bool(raw('runs/language-doc-1/warnings.log')), 'failed render warning missing')
|
||||
for path in manifest['generatedFiles']:
|
||||
require(path.startswith('generated-release1/') and path in manifest['members'], 'generated mapping')
|
||||
require(len(manifest['generatedFiles']) == manifest['generatedCount'], 'generated count')
|
||||
print('PASS:', len(manifest['runs']), 'closed captures;', len(manifest['members']), 'members;', len(checked), 'input manifest/archive pairs')
|
||||
print('Integrity and receipt consistency only; no rerun, signature, binary verification, or GUI claim.')
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
@@ -0,0 +1,103 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user