The rules every coder follows: the method, the setting, the rules, the five steps and the outputs.
What it holds
Ten sections. The method (Gioia's two levels, first-order codes and
descriptive themes; Eisenhardt's within-case account first), the r/place
setting and the 97-hour window, eleven rules (files, grounding, quoting,
searching, register, absence, real names, flag never fetch, record as
you go, machine text), the five steps (brief, go through every thread,
first-order codes, themes, the within-case account), the verdict
(full, trace, none), the six
outputs, and what the coder is given. The file is a template:
newrun.py fills in the room, corpus, tools and output
paths.
Who writes it, and when
The instrument's author wrote it. newrun.py copies it
into each run as CONTRACT.md, and
tools/fleet.py dispatch copies it into each fleet batch.
Every role reads it first.
Why it exists
It says so itself: the outputs go to "a reader that builds the account across three hundred communities and has not seen your corpus", so what the coder writes must be "faithful and checkable". The role files say only what differs from it and win on that.
Where
CONTRACT.v32.md.
A filled-in copy sits at run/CONTRACT.md inside each room's
run.tar.zst, for example armenia.
Checked against: CONTRACT.v32.md, newrun.py, tools/fleet.py