@mikeargento/exam-bank
v0.3.0
Published
The sealed exam's public item bank: five template families, deterministic generators, checkers, and the bank digest.
Readme
@mikeargento/exam-bank
The question bank of the sealed exam: five deterministic generators (multi-step arithmetic, a seating puzzle with a solver-enforced unique answer, a string-transformation pipeline, a small JavaScript specification checked on hidden inputs, an ordering task over generated facts), each drawing its instances from a DRBG seeded by BitGraph A's nonce (the bind that opens every sitting, of a request naming this bank; a slot commitment for the archived sittings). bank.json is the canonical bank document; its digest is what A's request and every paper name. proof/ is the bank's first BitGraph, recorded on 12 September 2026, before any paper.
The derivation, with vectors, is SPEC.md in @mikeargento/exam-core. Used by @mikeargento/exam-cli.
src/ is frozen
src/** (the thirteen files listed by tar -tf <sitting>/bank/generator.tar) is archived
verbatim into every recorded sitting and hashed into the bank digest, which the paper names and the
verifier recomputes. Editing any byte of src/ invalidates every sitting ever recorded, including
every one in this repository: the verifier stops being able to re-derive their papers and reports
NO-EVIDENCE for all of them.
That is the mechanism working, not a bug. It also means the ordinary housekeeping edit is not
ordinary here. On 2026-09-14 a copyright-holder sweep rewrote the header of all thirteen files and
every sitting in the package went NO-EVIDENCE; the headers still read the holder they were sealed
with, and they have to. LICENSE and package.json are NOT in the archive and can be changed
freely.
To change anything under src/, every sitting has to be re-run with the new bank. Nothing else does.
