P28-02-EQ: 意味を保つ軽量化:同等性の先行固定(harness)
This commit is contained in:
@@ -1,4 +1,78 @@
|
||||
# P28-02-EQ progress — S5 (repair 10, Claude Opus 5.5 Desktop implementation)
|
||||
# P28-02-EQ progress — S6 (repair 12, Claude Opus 5.5 Desktop implementation)
|
||||
|
||||
Implementer: Claude Opus 5.5 in the Desktop control session, by the user's delegation
|
||||
("Codexの使用量上限いきそうなので、作業をひきとって"; Root relayed 「実装担当含めOpusに委任」).
|
||||
The registered contract keeps worker codex; no Codex/Astra run was started for this stage.
|
||||
Submission goes through the normal Runner submit, which makes the commit. 正式受入は保留、原本加算0。
|
||||
|
||||
- S a46418d064ebf8c8e03043bae50c29ac174b5472 (repair 11): its exact-S native passed
|
||||
(native-a46418d-r01, 7 phases, cleanup errors empty, sealed), and its formal validation
|
||||
cb059f305dd34e7aa811b40ad1cfb6f2 passed both checks (unit 162 tests OK; native-verify
|
||||
exit 0, verified). The fresh independent Opus review (session
|
||||
local_179020e9-e4c8-45ab-aaa0-be27aaa3f3d6, DESKTOP_RESULT.json
|
||||
c08eedb2ff81fd308e0771aeb4330076389561255a2bb964567be28f478592cd) returned
|
||||
changes_requested: EQ1-EQ4 and EQ6 met, EQ5 not met. The normal intake recorded
|
||||
review_failed and repair_pending; the normal repair made repairs 12. All of it is retained.
|
||||
- The high finding is accepted: the source closure was only unit-tested. run_eq and verify_eq
|
||||
required the before SOURCE_SHA, so the frozen EQ could not admit an OPT S that changes only
|
||||
registered allowed files (OPT_CONTRACT_T1 §2 and §4). S6 (EQ_S6_AFTER_VERSION_PLAN):
|
||||
- BEFORE_SOURCE_MAP.json holds the registered base product source map (1407 rows); its
|
||||
digest must equal the existing SOURCE_SHA on every read. compare_versions.admit_source
|
||||
admits the before version (no registration, no difference) or an after version (the
|
||||
changed set equals the sorted registered OPT files; no added or missing source).
|
||||
- run_eq --opt-changed PATH (repeatable) registers the OPT files; actual_pins records
|
||||
registered_changes and source_closure, the admission records version and
|
||||
measured_source (before S_eq-native-not-Q, after S_opt-native-not-Q; never Q).
|
||||
verify_eq re-runs the closure with the recorded registration and requires the recorded
|
||||
closure, version and label; actual_pins on the checkout gets the same registration.
|
||||
- verify_eq --compare-versions --before <bundle> --after <bundle> is the bundle-level entry
|
||||
of the comparator (SPEC §2): both seals, versions and closures again, every non-product
|
||||
pin equal, compare_reports on the sealed A-phase reports of R and O, existing defects of
|
||||
both versions listed (after_all_e_pass for the OPT judgment).
|
||||
- The three low findings are fixed: the probe records the actual _latest_digest_dirty before
|
||||
each E5 operation (false or null accepted, true rejected); bundled_inputs requires the
|
||||
collector's fixed manifest SHA and normalized absolute destinations inside the read-only
|
||||
directory; the seal (bundle schema v2) records every directory, empty ones included.
|
||||
- Evidence kinds are kept apart:
|
||||
- Unit, engine-free, real code paths: admit_source; run_eq.actual_pins with a synthetic map
|
||||
(only collector.source_map, inputs, host SHAs of the synthetic fixture/engine and the
|
||||
machine query are patched); recompute of a real synthetic after bundle; compare_bundles
|
||||
unmocked on a real before and a real after synthetic bundle (positive, a real state
|
||||
difference, pin drift, closure and label tampering, seal tampering, swapped, same bundle).
|
||||
One unit test (S6Admission main) mocks actual_pins only to see the registration main
|
||||
passes; it is not counted as admission evidence.
|
||||
- Diagnostic, not formal (EQ_S6_AFTER_ADMISSION_DIAG_R01 in the Root control folder): the
|
||||
real run_eq.py --check, unmocked, on a throwaway after-version checkout (an APFS clone of
|
||||
this working tree as its own temporary git repository, one allowed OPT file changed and
|
||||
committed). Before version and the registered after version were admitted; no
|
||||
registration, a wrong registration, a registration without change, an added source and a
|
||||
non-OPT change were rejected with the source closure error. No engine was started.
|
||||
- Unit evidence (engine-free `python3 -B test_eq.py`; full raw outputs with SHA files):
|
||||
- Class-targeted runs during development were displayed through tail and are not claimed
|
||||
as retained raw results. One of them ran out of disk space (the first S6 bundle tests
|
||||
copied 709 MB synthetic bundles); the tests now clone with cp -c and build two bundles
|
||||
per class.
|
||||
- UNIT_OUTPUT_S6_ATTEMPT_01 (final, all changes included): 179 tests OK in 207.351 s,
|
||||
Python exit 0; same bytes as UNIT_OUTPUT.txt,
|
||||
SHA-256 9dd93de5fd3b66791d6902d51a055caa2c3dd559de6c42019ebb1ab147b2af11.
|
||||
- UNIT_OUTPUT_S6_SEATBELT_01: the same suite under the Runner validation seatbelt profile,
|
||||
run locally (see its exit line in IMPLEMENTATION.md). Local runs are not formal validation.
|
||||
- Test bodies changed for S6, each recorded here: the E5 fixture detail carries
|
||||
latest_digest_dirty_before false instead of digest_materialized_before true, and the
|
||||
materialization test rejects true; s4_bundle_fixture takes an optional registration and
|
||||
pin overrides and records commit, version, measured_source, registered_changes,
|
||||
source_closure and the non-product pins; the S4 probe-admission mock returns a before
|
||||
source_closure; the stored-result test records registered_changes [] in its admission and
|
||||
mock; the bundled-inputs test holds its synthetic manifest to its own SHA in place of the
|
||||
collector's and expects the manifest error before the escape error. All other earlier test
|
||||
bodies and raw outputs are unchanged; 17 S6 tests were added.
|
||||
|
||||
Next: Runner submit → exact-S native 7 phases (before version, no --opt-changed) → bundle →
|
||||
p28-02-eq-unit and p28-02-eq-native-verify → fresh independent Opus review of all 6
|
||||
conditions → normal qualification, approval, integration and final → OPT/whole-unit.
|
||||
23/88、4/30は不変。
|
||||
|
||||
## Retained S5 progress (unchanged historical text)
|
||||
|
||||
Implementer: Claude Opus 5.5 in the Desktop control session, by the user's delegation
|
||||
("Codexの使用量上限いきそうなので、作業をひきとって"; Root relayed 「実装担当含めOpusに委任」).
|
||||
|
||||
Reference in New Issue
Block a user