History

Verification and packaging support for C632–C731

Download source fileOpen in research workspace

Verification and packaging support for C632–C731

Prepared without writing the journal, research.py, source files, or any numbered research script. No prior archive or completed research suite was replayed.

Frozen predecessor

The C631 record was read once from the completed preceding journal. Its canonical record hash recomputes exactly as:

8da995fbc41dba4a3b78b59a6a6a316b712980b5052087bc963cd75e15db6351

The new journal's first predecessor field must be:

C631:8da995fbc41dba4a3b78b59a6a6a316b712980b5052087bc963cd75e15db6351

Root supplies evidence/C631_PREDECESSOR.json, source snapshots, and evidence/SOURCE_MANIFEST.json. The verifier reads the manifest dynamically; it does not impose the former cycle's28-source count.

Required source names for predecessor/primary bindings:

Snapshot filenameBinding
C631_checkpoint.md490d_Research_Checkpoint_After_C631_20260928.md from C631's deliverable hashes
C631_synthesis.md490d_Chronological_Families_Integrated_Draft_20260928.md from the same record
File52c_latest.mdPinned primary SHA256 a5ea84562101158b60d0cf296765d6eff38e7a2abda4e74ad1b353dfd13b9530

Optional C631_reading_guide.md is also bound when included. Number-prefixed repository snapshot names automatically map back to the same filename in workspace project_sources. File51a.md and Strategy.md retain the previous known mappings. For any additional aliases, root may supply evidence/SOURCE_BINDINGS.json with { "snapshot.md": "relative/current/path.md" }, or a list of paths per snapshot. All available mapped copies must match. Bindings do not change frozen source hashes.

Read-only verification

Completed prefix:

python3 c632_c731/evidence/verify.py --through 641 --require-current-sources --output c632_c731/VERIFY_THROUGH_C641.json

Final, only after C731 is complete:

python3 c632_c731/evidence/verify.py --require-current-sources --output c632_c731/VERIFY.json

For a separately extracted packet, run python3 evidence/verify.py; omit --require-current-sources when originals are unavailable. All snapshot hashes and the pinned primary/predecessor identities still must pass. Missing current originals are reported rather than claimed checked.

The runner replaces journal begin/finish functions in memory and sets research.REPLAY=True. The artifact helper computes the exact generated bytes, digest and relative path without writing. A replay audit hook rejects write-capable opens, filesystem mutations, subprocesses and network operations. It also checks the journal after replay: the entire starting prefix must remain identical; concurrent root appends are allowed only during intermediate verification and are reported. Final100-step verification requires unchanged journal bytes and no pending step.

Every selected record is checked for schema, complete hash, predecessor link, timestamp order, declared metadata, source list, inputs, outputs, findings, reassessments, and Boolean checks. Each script must call exactly one begin and finish. Placeholder-preserving inversion is independently reimplemented; nested inv calls and inversion of tracked inverse-derived values are rejected. Fresh input3430 and unrelated numeric coincidences are permitted. This is a practical guard for trusted research scripts, not a proof against deliberately reimplemented or obfuscated reversal.

The final gate requires exactly100 completed steps632–731. A default full-range run is inappropriate before completion. --through N supports intermediate review without making that100-step claim.

Packaging

Root creates source snapshots and their dynamic manifest. evidence/package.py verifies those snapshots, creates the selected reading report, and captures the completed cycle's evidence into one ZIP without altering the journal or predecessor. Example:

python3 c632_c731/evidence/package.py --first 632 --through 651 --date 20260928

For a later report batch, change --first, while the accompanying evidence ZIP still contains the complete current cycle prefix. Final C731 packaging requires VERIFY.json with PASS,100 completed records, and the exact current journal digest. The packager excludes a pending record, bytecode caches, and future-step scripts. It reads payload bytes once and uses those same bytes for the hash manifest and ZIP, avoiding manifest/archive races. It fails if the journal changes during packaging, so call it between numbered research steps.

No package has been generated by this preparation task. Root retains control of checkpoint timing and persistence.

Preparation checks

Once C632–C641 are complete, this reviewer can inspect and replay that first new batch separately.

Linked sources and evidence

Edition and provenance

verification_and_packaging_notes.md

SHA-256 7b5b7af3aad71a73dd05b7cc6efaa64b88ef47b1c949d0d8c52a76a990c5e09c

C480–C1634/Research_Cycles/C0632_C0731/prep/verification_and_packaging_notes.md