Public audit-verification fixture
This is a course-authored synthetic snapshot. audit_packet.py is the frozen public surface; it
has no network, package installation, credential, or personal-data path. Run it and
verify_audit.py with python in a copy of this directory, as the
notes show.
Frozen requirements
Every disposition is judged against these requirements, not against the wording of the review:
R1 access: a viewer or an owner can read a public report; no role reads a private report body.
R2 status: the status endpoint accepts only the labels ready and queued.
R3 paths: every exported or archived report path stays under /srv/reports.
R4 secrets: no export configuration exposes a secret directory.
R5 scoring: the private-count scorer gives 1 only when the answer's first word is the number of private sample reports; every other answer scores 0.
R6 root: the report root is written once, as REPORT_ROOT; no function repeats the literal path.
Production configuration is not part of this snapshot, so no check here can read it.
Files
audit_packet.pyis the snapshot's report feature and its deterministic evidence checks. Run it with no--checkto list each check and its argument keys. A run prints theargsit used, theobservationand the canonicalcommandto record as evidence. It refuses a missing, extra or wrongly typed argument:privateis a JSONtrueorfalse, androleisviewerorowner.model-audit.jsonis a recorded review with five claims about security, evaluation and maintenance. Each has anid, anareaand, for most, the function itcites. It names no check, input or answer; you choose the check and input for each claim. It is course-authored practice material; no model wrote it.student-audit.jsonis an empty starter record. Students add one verification for each recorded claim and either a new defect check or a bounded clean-scope check. The notes show a filled row, thepartsshape for a claim about each member of a listed set, and both own-check shapes.verify_audit.pyrecomputes every named check, checks the exact reproducible command, checks that the input tests the claim and derives the supported disposition from the observation. It accepts onlyconfirmed,refutedorundetermined; anundeterminedrow must name the missing input or why it cannot be decided.
The verifier tests the evidence supplied by the student. The recorded review is not a model score and its text is never sent to a grader. A hand trace is not an observation; retain the command output with the frozen snapshot identifier. An own check must probe a new input or state a checked range and its remaining boundary.