ONE COMPOSITION, THREE NOTATIONS — COMPLETE STUDY

This package is the public experimental record. It includes interpretations,
replies and answer keys. Use a separate reader-only kit for a fresh reading.

Core requirements: Node.js with standard libraries; Python3 for analysis.
No web access, API key, new model call or third-party package is needed to
recover the frozen source or check stored scores and probe answers.

Run from this extracted directory, with fresh output names:
  node common/inspect.cjs C inputs/C --out rerun-C
  node common/inspect.cjs G inputs/G --out rerun-G
  node common/inspect.cjs P inputs/P --out rerun-P
  node tools/material-checks.cjs --out parity-rerun.json
  python tools/test-scoring.py
  python tools/analyze.py
  node tools/encode-replies.cjs
  python tools/audit-study.py

analyze.py and test-scoring.py write DERIVED analysis reports. The publication
copies are also preserved under publication-evidence/. Work from a copy when
you want to keep every supplied report untouched. The codecs refuse to
overwrite new recovery outputs. encode-replies.cjs verifies existing reply
artifacts and writes a derived aggregate report; it does not call an AI.

The independent technical audit independently scores fixed responses and
verifies inventories, while using the supplied codec for actual CVP2/USL1
recovery. It writes derived audit reports and exits nonzero on discrepancies.
Historical prompt paths are compared as recorded strings; file access uses
the current extracted directory. This distinction was corrected during final
portability testing; the initial failure is retained in the development record.

Directory guide:
  source/       canonical matrix, separate author reading, source encodings
  inputs/       actual C, G and P presentations
  common/       identical frozen dictionary, grammar and supplied tools
  protocol/     original local prompts, fixed schedule, questions/key/rubric
  trials/       exact reader outputs, disclosures, freezes, helper records
  encoded/      all replies in Carrier binary, frame, spoken text and artwork
  appraisals/   two separately instructed judgments and disclosures
  appraisal-materials/  anonymized evidence supplied to the appraisers
  analysis/     counts, scores, freezes, independent audit and build notes
  preflight/    material parity and CLI checks
  tools/        material, scoring, encoding and verification code
  publication-evidence/  published report copies preserved for comparison

STUDY-FREEZE.json inventories the original locally prespecified files. It
does not authenticate the experimenter or the timestamp externally. Later
outputs have their own inventories and freezes. INPUT-PACKAGE.json inventories
every file actually delivered here, excluding itself.

Historical prompt/disclosure files retain exact local workspace/runtime paths
so their freeze hashes remain verifiable. Those are records of this run, not
portable commands to execute as-is. Use the relative commands above. No
private chat history, authentication files, shell environment dump or hidden
reasoning transcript is included.

The supplied dictionary includes source attribution and older status history.
Checked status is a property of the pinned snapshot, not external approval
of the new artwork or its application. Preserve attribution on redistribution.

The recorded reader prose and appraisals are model outputs. Running the
verification commands reproduces their checks, not an identical future model
completion. Nine attempts with one source and shared normalization do not
establish a general notation advantage.

Optional image/figure regeneration is separate from core recovery. The original
renderer uses Pillow and installed Windows fonts. The publication chart uses
matplotlib3.11.2. Font/library differences may change display-image bytes; the
original images remain included and are the verified artifacts.
