faultsguards 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,552 @@
1
+ {
2
+ "document": "Guards",
3
+ "source": "GUARDS.html",
4
+ "intro": [
5
+ "The procedures built against the failure modes, and the score they earn. Wayfinder and Bones, Heurémen — 10 October 2026, revised 22 October 2026.",
6
+ "Companion to Faults, which catalogues the ways a language model doing measurement work goes wrong. This document is what we run against them. Every procedure here exists because the corresponding failure happened first, and two of them are recorded as having been removed for making things worse. Both documents replace three earlier ones, because a method scattered across the documents it was found in cannot be scored.",
7
+ "The organising principle, since it decides the shape of all of it. Nearly every failure in the companion document is the same error with different clothes: the comparison baseline was built with less care than the measurement, after the measurement, and in a direction that flattered it. It is the largest family in the prospective ledger: 217 of the 316 rows tagged with one of the first three families. So the guards are not thirty-eight separate checks — they are mostly one check, applied at the one moment it can still work, which is before the number is stated."
8
+ ],
9
+ "parts": [],
10
+ "entries": [
11
+ {
12
+ "number": 1,
13
+ "title": "The ruler is chosen before the quantity is computed",
14
+ "part": "I — Procedures that run before the work",
15
+ "paragraphs": [
16
+ "The default move is a value with a standard error, which answers one kind of question and quietly refuses all the others. So a roster of available rulers is placed in front of the model at the start of every single exchange, automatically, read live from the source document rather than from a copy: the separation of apparatus from signal, the width needed to exclude a runner-up, the profile that places unlike records on one axis without assuming a shared mechanism, the three-seat reading of one event, the integration time beyond which phase becomes noise, the corner where neither a count nor a phase resolves, and the test of whether two effects add or multiply.",
17
+ "Why it is injected rather than remembered. A roster in a document is consulted when the model thinks to consult it, which is precisely never at the moment it is needed. Injected at the top of every exchange it costs nothing and arrives before the framing is fixed. The guard is the position, not the content."
18
+ ],
19
+ "html": [
20
+ "The default move is a value with a standard error, which answers one kind of question and quietly refuses all the others. So a roster of available rulers is placed in front of the model <b>at the start of every single exchange</b>, automatically, read live from the source document rather than from a copy: the separation of apparatus from signal, the width needed to exclude a runner-up, the profile that places unlike records on one axis without assuming a shared mechanism, the three-seat reading of one event, the integration time beyond which phase becomes noise, the corner where neither a count nor a phase resolves, and the test of whether two effects add or multiply.",
21
+ "<b>Why it is injected rather than remembered.</b> A roster in a document is consulted when the model thinks to consult it, which is precisely never at the moment it is needed. Injected at the top of every exchange it costs nothing and arrives before the framing is fixed. <b>The guard is the position, not the content.</b>"
22
+ ],
23
+ "text": "The default move is a value with a standard error, which answers one kind of question and quietly refuses all the others. So a roster of available rulers is placed in front of the model at the start of every single exchange, automatically, read live from the source document rather than from a copy: the separation of apparatus from signal, the width needed to exclude a runner-up, the profile that places unlike records on one axis without assuming a shared mechanism, the three-seat reading of one event, the integration time beyond which phase becomes noise, the corner where neither a count nor a phase resolves, and the test of whether two effects add or multiply.\n\nWhy it is injected rather than remembered. A roster in a document is consulted when the model thinks to consult it, which is precisely never at the moment it is needed. Injected at the top of every exchange it costs nothing and arrives before the framing is fixed. The guard is the position, not the content."
24
+ },
25
+ {
26
+ "number": 2,
27
+ "title": "Reference material is loaded hot, not summarised",
28
+ "part": "I — Procedures that run before the work",
29
+ "paragraphs": [
30
+ "The three method papers are read as text, in full, at the moment of use, and not recalled. A summary of a method drifts; the drift is invisible because a summary of a method reads exactly like the method. Loading the source each time costs context and buys the absence of a failure mode that leaves no trace. A single command loads all three and asks their questions in fixed order."
31
+ ],
32
+ "html": [
33
+ "The three method papers are read <b>as text, in full, at the moment of use</b>, and not recalled. A summary of a method drifts; the drift is invisible because a summary of a method reads exactly like the method. Loading the source each time costs context and buys the absence of a failure mode that leaves no trace. A single command loads all three and asks their questions in fixed order."
34
+ ],
35
+ "text": "The three method papers are read as text, in full, at the moment of use, and not recalled. A summary of a method drifts; the drift is invisible because a summary of a method reads exactly like the method. Loading the source each time costs context and buys the absence of a failure mode that leaves no trace. A single command loads all three and asks their questions in fixed order."
36
+ },
37
+ {
38
+ "number": 3,
39
+ "title": "The baseline is constructed and written down first",
40
+ "part": "I — Procedures that run before the work",
41
+ "paragraphs": [
42
+ "Before the measurement arm is computed: the number of samples on each side, the window, the averaging depth, how many places were looked at, and what the apparatus could physically have emitted. If any of those differ between arms, that difference is the finding and the measurement is not taken yet. This single procedure addresses all twelve modes of the first family, the family behind 217 of the 316 tagged ledger rows, and it is the one to install first."
43
+ ],
44
+ "html": [
45
+ "Before the measurement arm is computed: the number of samples on each side, the window, the averaging depth, how many places were looked at, and what the apparatus could physically have emitted. If any of those differ between arms, that difference is the finding and the measurement is not taken yet. <b>This single procedure addresses all twelve modes of the first family, the family behind 217 of the 316 tagged ledger rows, and it is the one to install first.</b>"
46
+ ],
47
+ "text": "Before the measurement arm is computed: the number of samples on each side, the window, the averaging depth, how many places were looked at, and what the apparatus could physically have emitted. If any of those differ between arms, that difference is the finding and the measurement is not taken yet. This single procedure addresses all twelve modes of the first family, the family behind 217 of the 316 tagged ledger rows, and it is the one to install first."
48
+ },
49
+ {
50
+ "number": 4,
51
+ "title": "The instrument is tested as an object before it is pointed at anything",
52
+ "part": "I — Procedures that run before the work",
53
+ "paragraphs": [
54
+ "Every instrument is first run on a case it must pass and a case it must fail, and both results are recorded as numbers:",
55
+ "A ceiling — what the instrument reads on genuine, held-out examples of the thing it is meant to detect. Nothing can score better than that, and if the ceiling is low the instrument cannot be used at all, whatever it later reports. A floor, which is never assumed to be zero — what the instrument reads on material that by construction contains none of the target. It is always some small nonzero rate, and that rate is the bar everything else must clear. A known-good seat — a case so easy that failing it condemns the instrument. Four instruments in a row passed our own inspection and were later shown to be measuring proxies; every one of them would have been caught in minutes by a known-good seat, and none of them had one.",
56
+ "Measured floors have twice told us the instrument itself was the result. In one case the detection rule matched ordinary material thousands of times per million words; the rule was rewritten and the rate fell by roughly three orders of magnitude. The floor measurement also reversed one of our own fixes — it showed that a refinement we had just made was cutting the most diagnostic cases while buying nothing at the scale we actually work at. A floor is not paperwork; it changes decisions."
57
+ ],
58
+ "html": [
59
+ "Every instrument is first run on a case it <b>must</b> pass and a case it <b>must</b> fail, and both results are recorded as numbers:",
60
+ "<li><b>A ceiling</b> &mdash; what the instrument reads on genuine, held-out examples of the thing it is meant to detect. Nothing can score better than that, and if the ceiling is low the instrument cannot be used at all, whatever it later reports.</li>\n<li><b>A floor, which is never assumed to be zero</b> &mdash; what the instrument reads on material that by construction contains none of the target. It is always some small nonzero rate, and that rate is the bar everything else must clear.</li>\n<li><b>A known-good seat</b> &mdash; a case so easy that failing it condemns the instrument. Four instruments in a row passed our own inspection and were later shown to be measuring proxies; every one of them would have been caught in minutes by a known-good seat, and none of them had one.</li>",
61
+ "Measured floors have twice told us the instrument itself was the result. In one case the detection rule matched ordinary material thousands of times per million words; the rule was rewritten and the rate fell by roughly three orders of magnitude. <b>The floor measurement also reversed one of our own fixes</b> &mdash; it showed that a refinement we had just made was cutting the most diagnostic cases while buying nothing at the scale we actually work at. A floor is not paperwork; it changes decisions."
62
+ ],
63
+ "text": "Every instrument is first run on a case it must pass and a case it must fail, and both results are recorded as numbers:\n\nA ceiling — what the instrument reads on genuine, held-out examples of the thing it is meant to detect. Nothing can score better than that, and if the ceiling is low the instrument cannot be used at all, whatever it later reports. A floor, which is never assumed to be zero — what the instrument reads on material that by construction contains none of the target. It is always some small nonzero rate, and that rate is the bar everything else must clear. A known-good seat — a case so easy that failing it condemns the instrument. Four instruments in a row passed our own inspection and were later shown to be measuring proxies; every one of them would have been caught in minutes by a known-good seat, and none of them had one.\n\nMeasured floors have twice told us the instrument itself was the result. In one case the detection rule matched ordinary material thousands of times per million words; the rule was rewritten and the rate fell by roughly three orders of magnitude. The floor measurement also reversed one of our own fixes — it showed that a refinement we had just made was cutting the most diagnostic cases while buying nothing at the scale we actually work at. A floor is not paperwork; it changes decisions."
64
+ },
65
+ {
66
+ "number": 5,
67
+ "title": "Per-unit constants are removed, not caveated",
68
+ "part": "I — Procedures that run before the work",
69
+ "paragraphs": [
70
+ "Anything attached identically to every unit of data is subtracted before the reading, and both readings are reported — with the constant and without — because the difference between them is the size of the artifact and that is worth knowing. Naming a confound in a footnote while leaving it in the number is not a control."
71
+ ],
72
+ "html": [
73
+ "Anything attached identically to every unit of data is subtracted before the reading, and <b>both readings are reported</b> &mdash; with the constant and without &mdash; because the difference between them is the size of the artifact and that is worth knowing. Naming a confound in a footnote while leaving it in the number is not a control."
74
+ ],
75
+ "text": "Anything attached identically to every unit of data is subtracted before the reading, and both readings are reported — with the constant and without — because the difference between them is the size of the artifact and that is worth knowing. Naming a confound in a footnote while leaving it in the number is not a control."
76
+ },
77
+ {
78
+ "number": 6,
79
+ "title": "The apparatus is equalised across every column being compared",
80
+ "part": "I — Procedures that run before the work",
81
+ "paragraphs": [
82
+ "Reference lists cut to the same length, filters set to the same width, integrations run for the same time, sample counts matched. Then the comparison is re-run at two or three different settings of whatever was equalised: if the ordering depends on the setting, the setting is the finding and no verdict is issued."
83
+ ],
84
+ "html": [
85
+ "Reference lists cut to the same length, filters set to the same width, integrations run for the same time, sample counts matched. Then the comparison is re-run at <b>two or three different settings</b> of whatever was equalised: if the ordering depends on the setting, the setting is the finding and no verdict is issued."
86
+ ],
87
+ "text": "Reference lists cut to the same length, filters set to the same width, integrations run for the same time, sample counts matched. Then the comparison is re-run at two or three different settings of whatever was equalised: if the ordering depends on the setting, the setting is the finding and no verdict is issued."
88
+ },
89
+ {
90
+ "number": 7,
91
+ "title": "Exact nulls in preference to resampling, wherever one exists",
92
+ "part": "II — Procedures that run during the work",
93
+ "paragraphs": [
94
+ "Where the null distribution is known in closed form or can be enumerated completely, it is used rather than approximated: full enumeration of every ordering when the count permits it, exact tests for small tables, exact distributions for counts and for phase concentration. A shuffle estimates the null; an enumeration is the null, and it cannot be accused of too few iterations or a bad seed. When a resampling procedure is unavoidable it must respect the dependence structure, which is where the naive version usually fails."
95
+ ],
96
+ "html": [
97
+ "Where the null distribution is known in closed form or can be enumerated completely, it is used rather than approximated: full enumeration of every ordering when the count permits it, exact tests for small tables, exact distributions for counts and for phase concentration. A shuffle estimates the null; an enumeration <b>is</b> the null, and it cannot be accused of too few iterations or a bad seed. When a resampling procedure is unavoidable it must respect the dependence structure, which is where the naive version usually fails."
98
+ ],
99
+ "text": "Where the null distribution is known in closed form or can be enumerated completely, it is used rather than approximated: full enumeration of every ordering when the count permits it, exact tests for small tables, exact distributions for counts and for phase concentration. A shuffle estimates the null; an enumeration is the null, and it cannot be accused of too few iterations or a bad seed. When a resampling procedure is unavoidable it must respect the dependence structure, which is where the naive version usually fails."
100
+ },
101
+ {
102
+ "number": 8,
103
+ "title": "Four outcomes, never two, and the terminating reason on every call",
104
+ "part": "II — Procedures that run during the work",
105
+ "paragraphs": [
106
+ "Committed, held open, refused, and nothing-returned are recorded in four separate columns. A refusal is an outcome and is never scored as a low value. Nothing-returned is attributed to the apparatus and never to the subject, and the only way to keep that straight is to record, on every single call, why it stopped. We adopted this after reporting our own output limit as a system's decision to decline."
107
+ ],
108
+ "html": [
109
+ "Committed, held open, refused, and nothing-returned are recorded in <b>four separate columns</b>. A refusal is an outcome and is never scored as a low value. Nothing-returned is attributed to the apparatus and never to the subject, and the only way to keep that straight is to record, on every single call, why it stopped. We adopted this after reporting our own output limit as a system's decision to decline."
110
+ ],
111
+ "text": "Committed, held open, refused, and nothing-returned are recorded in four separate columns. A refusal is an outcome and is never scored as a low value. Nothing-returned is attributed to the apparatus and never to the subject, and the only way to keep that straight is to record, on every single call, why it stopped. We adopted this after reporting our own output limit as a system's decision to decline."
112
+ },
113
+ {
114
+ "number": 9,
115
+ "title": "Every reported figure carries its own n, and the n it was selected from",
116
+ "part": "II — Procedures that run during the work",
117
+ "paragraphs": [
118
+ "A value from one observation may not be printed beside a value from nine as though they were comparable, and a best-of-n may not be printed at all without n. A cell below a minimum count does not enter an average, and the count of cells that did enter is printed next to the average."
119
+ ],
120
+ "html": [
121
+ "A value from one observation may not be printed beside a value from nine as though they were comparable, and a best-of-n may not be printed at all without n. A cell below a minimum count does not enter an average, and the count of cells that did enter is printed next to the average."
122
+ ],
123
+ "text": "A value from one observation may not be printed beside a value from nine as though they were comparable, and a best-of-n may not be printed at all without n. A cell below a minimum count does not enter an average, and the count of cells that did enter is printed next to the average."
124
+ },
125
+ {
126
+ "number": 10,
127
+ "title": "Saturated cells are counted before anything is aggregated",
128
+ "part": "II — Procedures that run during the work",
129
+ "paragraphs": [
130
+ "Cells at a ceiling or floor are tallied and excluded from any correlation or mean, with the exclusion stated. A reading taken across censored cells is a statement about the censoring."
131
+ ],
132
+ "html": [
133
+ "Cells at a ceiling or floor are tallied and excluded from any correlation or mean, with the exclusion stated. A reading taken across censored cells is a statement about the censoring."
134
+ ],
135
+ "text": "Cells at a ceiling or floor are tallied and excluded from any correlation or mean, with the exclusion stated. A reading taken across censored cells is a statement about the censoring."
136
+ },
137
+ {
138
+ "number": 11,
139
+ "title": "Dependence is priced by independent units, not by rows",
140
+ "part": "II — Procedures that run during the work",
141
+ "paragraphs": [
142
+ "Before any width is computed: how many independent units contributed. Overlapping windows, shared members and repeated measures are reduced to a disjoint set, and the width is taken from that. This has moved widths by factors of several."
143
+ ],
144
+ "html": [
145
+ "Before any width is computed: how many independent units contributed. Overlapping windows, shared members and repeated measures are reduced to a disjoint set, and the width is taken from that. This has moved widths by factors of several."
146
+ ],
147
+ "text": "Before any width is computed: how many independent units contributed. Overlapping windows, shared members and repeated measures are reduced to a disjoint set, and the width is taken from that. This has moved widths by factors of several."
148
+ },
149
+ {
150
+ "number": 12,
151
+ "title": "One event is read from three seats, never two",
152
+ "part": "II — Procedures that run during the work",
153
+ "paragraphs": [
154
+ "Two readings that disagree give no way to decide which is wrong. Three give a closure condition — a quantity that must come back to where it started — and a closure residual is a fault with nowhere to hide. And the disagreement between seats is kept as a measurement rather than calibrated away. Harmonise, do not synchronise: a procedure that drives the interval between two honest readings to zero has deleted a channel, not improved one."
155
+ ],
156
+ "html": [
157
+ "Two readings that disagree give no way to decide which is wrong. Three give a closure condition &mdash; a quantity that must come back to where it started &mdash; and a closure residual is a fault with nowhere to hide. <b>And the disagreement between seats is kept as a measurement rather than calibrated away.</b> Harmonise, do not synchronise: a procedure that drives the interval between two honest readings to zero has deleted a channel, not improved one."
158
+ ],
159
+ "text": "Two readings that disagree give no way to decide which is wrong. Three give a closure condition — a quantity that must come back to where it started — and a closure residual is a fault with nowhere to hide. And the disagreement between seats is kept as a measurement rather than calibrated away. Harmonise, do not synchronise: a procedure that drives the interval between two honest readings to zero has deleted a channel, not improved one."
160
+ },
161
+ {
162
+ "number": 13,
163
+ "title": "An absence gets the same scrutiny as a presence",
164
+ "part": "II — Procedures that run during the work",
165
+ "paragraphs": [
166
+ "A confident report that something is missing is re-checked against a reference that did not come from the same data, because a fitted parameter that is slightly wrong looks for everything in the wrong place and reports a clean absence. Absences are rarely re-examined, which is exactly why they need the rule."
167
+ ],
168
+ "html": [
169
+ "A confident report that something is <i>missing</i> is re-checked against a reference that did not come from the same data, because a fitted parameter that is slightly wrong looks for everything in the wrong place and reports a clean absence. Absences are rarely re-examined, which is exactly why they need the rule."
170
+ ],
171
+ "text": "A confident report that something is missing is re-checked against a reference that did not come from the same data, because a fitted parameter that is slightly wrong looks for everything in the wrong place and reports a clean absence. Absences are rarely re-examined, which is exactly why they need the rule."
172
+ },
173
+ {
174
+ "number": 14,
175
+ "title": "The row is written at the moment of the catch, before the corrected number is stated",
176
+ "part": "III — Procedures that run on the output",
177
+ "paragraphs": [
178
+ "Every catch is logged immediately with four fields: which failure mode it was, whether it was caught before or after the reading was stated, who or what caught it, and one line of what happened. Written afterwards it would be a retrospective fit, which is the very failure being tracked. This ledger is the only part of the method with a real score, and the score is in the next section."
179
+ ],
180
+ "html": [
181
+ "Every catch is logged immediately with four fields: <b>which failure mode it was, whether it was caught before or after the reading was stated, who or what caught it, and one line of what happened.</b> Written afterwards it would be a retrospective fit, which is the very failure being tracked. This ledger is the only part of the method with a real score, and the score is in the next section."
182
+ ],
183
+ "text": "Every catch is logged immediately with four fields: which failure mode it was, whether it was caught before or after the reading was stated, who or what caught it, and one line of what happened. Written afterwards it would be a retrospective fit, which is the very failure being tracked. This ledger is the only part of the method with a real score, and the score is in the next section."
184
+ },
185
+ {
186
+ "number": 15,
187
+ "title": "A dropped arm is named in the tool's own output, not quietly replaced",
188
+ "part": "III — Procedures that run on the output",
189
+ "paragraphs": [
190
+ "When a run is discarded, the discard is printed by the program that does the scoring — how many calls, why, and what replaced them — so that nobody reading the result has to take the cleanliness of the input on trust. A silently replaced arm is indistinguishable from a tidied one."
191
+ ],
192
+ "html": [
193
+ "When a run is discarded, the discard is printed by the program that does the scoring &mdash; how many calls, why, and what replaced them &mdash; so that nobody reading the result has to take the cleanliness of the input on trust. A silently replaced arm is indistinguishable from a tidied one."
194
+ ],
195
+ "text": "When a run is discarded, the discard is printed by the program that does the scoring — how many calls, why, and what replaced them — so that nobody reading the result has to take the cleanliness of the input on trust. A silently replaced arm is indistinguishable from a tidied one."
196
+ },
197
+ {
198
+ "number": 16,
199
+ "title": "The wrong first reading is published beside the corrected one",
200
+ "part": "III — Procedures that run on the output",
201
+ "paragraphs": [
202
+ "Where a result has already been stated and later corrected, both stand in the record with the correction's reason. A document that shows only what survived is not a record. This is costly and it is the single procedure we would least like to drop, because it is the only one that makes the others checkable from outside."
203
+ ],
204
+ "html": [
205
+ "Where a result has already been stated and later corrected, both stand in the record with the correction's reason. <b>A document that shows only what survived is not a record.</b> This is costly and it is the single procedure we would least like to drop, because it is the only one that makes the others checkable from outside."
206
+ ],
207
+ "text": "Where a result has already been stated and later corrected, both stand in the record with the correction's reason. A document that shows only what survived is not a record. This is costly and it is the single procedure we would least like to drop, because it is the only one that makes the others checkable from outside."
208
+ },
209
+ {
210
+ "number": 17,
211
+ "title": "Every report closes with four parts",
212
+ "part": "III — Procedures that run on the output",
213
+ "paragraphs": [
214
+ "The value; what happens next; confidence from inside the work; and a rating from outside it — what a stranger with no stake would make of it. The fourth part is the one that does the work, and it is the one that wants to go missing."
215
+ ],
216
+ "html": [
217
+ "The value; what happens next; confidence from inside the work; and a rating from outside it &mdash; what a stranger with no stake would make of it. The fourth part is the one that does the work, and it is the one that wants to go missing."
218
+ ],
219
+ "text": "The value; what happens next; confidence from inside the work; and a rating from outside it — what a stranger with no stake would make of it. The fourth part is the one that does the work, and it is the one that wants to go missing."
220
+ },
221
+ {
222
+ "number": 18,
223
+ "title": "Writes are guarded by assertions that block partial application",
224
+ "part": "III — Procedures that run on the output",
225
+ "paragraphs": [
226
+ "Any edit to a source document asserts its anchor exists and is unique, and that the edit has not already been applied, before writing anything. Several times this has fired and left the file untouched rather than half-modified. A half-applied edit to a method document is worse than a failed one because it is silent."
227
+ ],
228
+ "html": [
229
+ "Any edit to a source document asserts its anchor exists and is unique, and that the edit has not already been applied, before writing anything. Several times this has fired and left the file untouched rather than half-modified. A half-applied edit to a method document is worse than a failed one because it is silent."
230
+ ],
231
+ "text": "Any edit to a source document asserts its anchor exists and is unique, and that the edit has not already been applied, before writing anything. Several times this has fired and left the file untouched rather than half-modified. A half-applied edit to a method document is worse than a failed one because it is silent."
232
+ },
233
+ {
234
+ "number": 19,
235
+ "title": "Loops are bounded, and long work is not held open by a session",
236
+ "part": "III — Procedures that run on the output",
237
+ "paragraphs": [
238
+ "Verification loops carry an explicit maximum. Unbounded waits have cost entire working periods. Long-running work is detached and polled rather than held by whatever started it."
239
+ ],
240
+ "html": [
241
+ "Verification loops carry an explicit maximum. Unbounded waits have cost entire working periods. Long-running work is detached and polled rather than held by whatever started it."
242
+ ],
243
+ "text": "Verification loops carry an explicit maximum. Unbounded waits have cost entire working periods. Long-running work is detached and polled rather than held by whatever started it."
244
+ },
245
+ {
246
+ "number": 20,
247
+ "title": "Retained rules carry what they rest on",
248
+ "part": "III — Procedures that run on the output",
249
+ "paragraphs": [
250
+ "Each kept rule is tagged with its basis: an instruction, a verified tool behaviour, an arithmetic identity, or one instance. A rule resting on one instance may not be cited as though it rested on a count. Without the tag, a lesson learned once reads in the record exactly like something measured fifty times."
251
+ ],
252
+ "html": [
253
+ "Each kept rule is tagged with its basis: an instruction, a verified tool behaviour, an arithmetic identity, or <b>one instance</b>. A rule resting on one instance may not be cited as though it rested on a count. Without the tag, a lesson learned once reads in the record exactly like something measured fifty times."
254
+ ],
255
+ "text": "Each kept rule is tagged with its basis: an instruction, a verified tool behaviour, an arithmetic identity, or one instance. A rule resting on one instance may not be cited as though it rested on a count. Without the tag, a lesson learned once reads in the record exactly like something measured fifty times."
256
+ },
257
+ {
258
+ "number": 21,
259
+ "title": "Any count about your own behaviour is read from the record, never from memory",
260
+ "part": "IV — Procedures against the instrument being wrong about itself",
261
+ "paragraphs": [
262
+ "Asked how often a guard had fired over three days, the answer given from memory was sixteen; the log in the same directory said thirty-six. Off by 2.25 times, and the same answer from anyone else would have been rejected on sight. A self-report is a claim about a file, so it is read out of the file or it is not stated."
263
+ ],
264
+ "html": [
265
+ "Asked how often a guard had fired over three days, the answer given from memory was sixteen; the log in the same directory said thirty-six. <b>Off by 2.25 times, and the same answer from anyone else would have been rejected on sight.</b> A self-report is a claim about a file, so it is read out of the file or it is not stated."
266
+ ],
267
+ "text": "Asked how often a guard had fired over three days, the answer given from memory was sixteen; the log in the same directory said thirty-six. Off by 2.25 times, and the same answer from anyone else would have been rejected on sight. A self-report is a claim about a file, so it is read out of the file or it is not stated."
268
+ },
269
+ {
270
+ "number": 22,
271
+ "title": "Every rate states its denominator",
272
+ "part": "IV — Procedures against the instrument being wrong about itself",
273
+ "paragraphs": [
274
+ "One guard's catch rate over three days read as a collapse on the third day at +3.02 widths, resolved, measured per reply — and as nothing happened, +0.97 widths, measured per thousand words on the same data. The replies had simply got longer. A rate is a ratio and the denominator is a choice, so the choice is printed beside the number or the number is not a measurement."
275
+ ],
276
+ "html": [
277
+ "One guard's catch rate over three days read as a collapse on the third day at <b>+3.02 widths, resolved</b>, measured per reply &mdash; and as <b>nothing happened, +0.97 widths</b>, measured per thousand words on the same data. The replies had simply got longer. <b>A rate is a ratio and the denominator is a choice</b>, so the choice is printed beside the number or the number is not a measurement."
278
+ ],
279
+ "text": "One guard's catch rate over three days read as a collapse on the third day at +3.02 widths, resolved, measured per reply — and as nothing happened, +0.97 widths, measured per thousand words on the same data. The replies had simply got longer. A rate is a ratio and the denominator is a choice, so the choice is printed beside the number or the number is not a measurement."
280
+ },
281
+ {
282
+ "number": 23,
283
+ "title": "A detector remembers what it has already flagged",
284
+ "part": "IV — Procedures against the instrument being wrong about itself",
285
+ "paragraphs": [
286
+ "Without memory, one standing fault becomes a stream of successes: a single stale figure was flagged five separate times and each was reported as a catch. Every detector deduplicates against what it has seen, so a permanent problem reads as one problem."
287
+ ],
288
+ "html": [
289
+ "Without memory, one standing fault becomes a stream of successes: a single stale figure was flagged five separate times and each was reported as a catch. Every detector deduplicates against what it has seen, so a permanent problem reads as one problem."
290
+ ],
291
+ "text": "Without memory, one standing fault becomes a stream of successes: a single stale figure was flagged five separate times and each was reported as a catch. Every detector deduplicates against what it has seen, so a permanent problem reads as one problem."
292
+ },
293
+ {
294
+ "number": 24,
295
+ "title": "The third seat must be able to disagree",
296
+ "part": "IV — Procedures against the instrument being wrong about itself",
297
+ "paragraphs": [
298
+ "For any three-reading check, name what the third reading would do if the hypothesis were false. A third quantity derived from the first two by a formula that assumes the relationship under test returned agreement — two seats and a mirror, scored as a triangle. If the third seat cannot fail independently, there are two seats."
299
+ ],
300
+ "html": [
301
+ "For any three-reading check, name what the third reading would do <i>if the hypothesis were false</i>. A third quantity derived from the first two by a formula that assumes the relationship under test returned agreement &mdash; two seats and a mirror, scored as a triangle. If the third seat cannot fail independently, there are two seats."
302
+ ],
303
+ "text": "For any three-reading check, name what the third reading would do if the hypothesis were false. A third quantity derived from the first two by a formula that assumes the relationship under test returned agreement — two seats and a mirror, scored as a triangle. If the third seat cannot fail independently, there are two seats."
304
+ },
305
+ {
306
+ "number": 25,
307
+ "title": "The outside reviewer is handed the evidence, or its verdict is discarded",
308
+ "part": "IV — Procedures against the instrument being wrong about itself",
309
+ "paragraphs": [
310
+ "An independent reviewer that correctly rejects deliberate faults four times in five inverted both of its verdicts when the evidence was withheld and it had nothing to read but the manner of the writing. An outside seat without evidence in front of it is a style critic, and its approval is worth nothing."
311
+ ],
312
+ "html": [
313
+ "An independent reviewer that correctly rejects deliberate faults four times in five <b>inverted both of its verdicts when the evidence was withheld</b> and it had nothing to read but the manner of the writing. An outside seat without evidence in front of it is a style critic, and its approval is worth nothing."
314
+ ],
315
+ "text": "An independent reviewer that correctly rejects deliberate faults four times in five inverted both of its verdicts when the evidence was withheld and it had nothing to read but the manner of the writing. An outside seat without evidence in front of it is a style critic, and its approval is worth nothing."
316
+ },
317
+ {
318
+ "number": 26,
319
+ "title": "Values get a separate check from structure",
320
+ "part": "IV — Procedures against the instrument being wrong about itself",
321
+ "paragraphs": [
322
+ "A structural guard reading for two-option frames, absent corners and required parts passed an answer containing four invented numbers without comment. Shape and truth are independent, so a structural check certifies a fabrication as well-formed. Numbers are verified against their source separately, and a clean structural pass is never read as a clean answer."
323
+ ],
324
+ "html": [
325
+ "A structural guard reading for two-option frames, absent corners and required parts passed an answer containing <b>four invented numbers</b> without comment. <b>Shape and truth are independent</b>, so a structural check certifies a fabrication as well-formed. Numbers are verified against their source separately, and a clean structural pass is never read as a clean answer."
326
+ ],
327
+ "text": "A structural guard reading for two-option frames, absent corners and required parts passed an answer containing four invented numbers without comment. Shape and truth are independent, so a structural check certifies a fabrication as well-formed. Numbers are verified against their source separately, and a clean structural pass is never read as a clean answer."
328
+ },
329
+ {
330
+ "number": 27,
331
+ "title": "Both sides of every identity are evaluated before it is printed",
332
+ "part": "IV — Procedures against the instrument being wrong about itself",
333
+ "paragraphs": [
334
+ "A printed relation between three constants whose sides differ by 15.3 parts per million was copied forward four times. An equals sign is a claim; it is checked numerically at the moment it is written."
335
+ ],
336
+ "html": [
337
+ "A printed relation between three constants whose sides <b>differ by 15.3 parts per million</b> was copied forward four times. An equals sign is a claim; it is checked numerically at the moment it is written."
338
+ ],
339
+ "text": "A printed relation between three constants whose sides differ by 15.3 parts per million was copied forward four times. An equals sign is a claim; it is checked numerically at the moment it is written."
340
+ },
341
+ {
342
+ "number": 28,
343
+ "title": "The prior-art check runs before the significance calculation, not after",
344
+ "part": "IV — Procedures against the instrument being wrong about itself",
345
+ "paragraphs": [
346
+ "An unlikelihood estimated three independent ways, all agreeing at about one in two thousand, was correct and beside the point because the relation was already known. The literature check costs minutes and dominates any significance number, so it comes first."
347
+ ],
348
+ "html": [
349
+ "An unlikelihood estimated three independent ways, all agreeing at about one in two thousand, was correct and beside the point because the relation was already known. <b>The literature check costs minutes and dominates any significance number</b>, so it comes first."
350
+ ],
351
+ "text": "An unlikelihood estimated three independent ways, all agreeing at about one in two thousand, was correct and beside the point because the relation was already known. The literature check costs minutes and dominates any significance number, so it comes first."
352
+ },
353
+ {
354
+ "number": 29,
355
+ "title": "Units are checked across every point before anything is fitted",
356
+ "part": "IV — Procedures against the instrument being wrong about itself",
357
+ "paragraphs": [
358
+ "A three-rung ladder that looked structural had a time in the third position and counts in the first two. There was no sequence. The claim died on inspection, which is where it should die."
359
+ ],
360
+ "html": [
361
+ "A three-rung ladder that looked structural had a time in the third position and counts in the first two. There was no sequence. The claim died on inspection, which is where it should die."
362
+ ],
363
+ "text": "A three-rung ladder that looked structural had a time in the third position and counts in the first two. There was no sequence. The claim died on inspection, which is where it should die."
364
+ },
365
+ {
366
+ "number": 30,
367
+ "title": "A load-bearing relationship is re-read live before anything stands on it",
368
+ "part": "IV — Procedures against the instrument being wrong about itself",
369
+ "paragraphs": [
370
+ "A structure was built on one pair measured at 0.682, the tightest on the board. Read live later, the same pair measured 0.343, a different pair was tightest, and the ordering had changed. A relationship measured once and built upon is a snapshot carrying the load of a constant."
371
+ ],
372
+ "html": [
373
+ "A structure was built on one pair measured at <b>0.682</b>, the tightest on the board. Read live later, the same pair measured <b>0.343</b>, a different pair was tightest, and the ordering had changed. <b>A relationship measured once and built upon is a snapshot carrying the load of a constant.</b>"
374
+ ],
375
+ "text": "A structure was built on one pair measured at 0.682, the tightest on the board. Read live later, the same pair measured 0.343, a different pair was tightest, and the ordering had changed. A relationship measured once and built upon is a snapshot carrying the load of a constant."
376
+ },
377
+ {
378
+ "number": 31,
379
+ "title": "After any change, the value is re-read through the path that consumes it",
380
+ "part": "IV — Procedures against the instrument being wrong about itself",
381
+ "paragraphs": [
382
+ "In one evening a stale copy appeared five times in five different costumes — an instruction file naming a machine that no longer existed, a superseded limit, a counter reading a frozen log, a long-running process serving an in-memory copy of a file already edited. The edit is not the deployment."
383
+ ],
384
+ "html": [
385
+ "In one evening a stale copy appeared five times in five different costumes &mdash; an instruction file naming a machine that no longer existed, a superseded limit, a counter reading a frozen log, a long-running process serving an in-memory copy of a file already edited. <b>The edit is not the deployment.</b>"
386
+ ],
387
+ "text": "In one evening a stale copy appeared five times in five different costumes — an instruction file naming a machine that no longer existed, a superseded limit, a counter reading a frozen log, a long-running process serving an in-memory copy of a file already edited. The edit is not the deployment."
388
+ },
389
+ {
390
+ "number": 32,
391
+ "title": "Liveness is checked by recent completed work, never by a running process",
392
+ "part": "IV — Procedures against the instrument being wrong about itself",
393
+ "paragraphs": [
394
+ "Three healthy components were declared dead in one evening because nothing was running. A short-lived job is supposed to be absent between runs."
395
+ ],
396
+ "html": [
397
+ "Three healthy components were declared dead in one evening because nothing was running. A short-lived job is supposed to be absent between runs."
398
+ ],
399
+ "text": "Three healthy components were declared dead in one evening because nothing was running. A short-lived job is supposed to be absent between runs."
400
+ },
401
+ {
402
+ "number": 33,
403
+ "title": "Test writes go somewhere the live path does not read",
404
+ "part": "IV — Procedures against the instrument being wrong about itself",
405
+ "paragraphs": [
406
+ "A new check was proved with a deliberate fabrication and then reported that fabrication as a property of the next, unrelated piece of work, because the probe wrote to the log the live path reads and the reader took the most recent row. Separate destination, or an identity check on every read."
407
+ ],
408
+ "html": [
409
+ "A new check was proved with a deliberate fabrication and then reported that fabrication as a property of the next, unrelated piece of work, because the probe wrote to the log the live path reads and the reader took the most recent row. Separate destination, or an identity check on every read."
410
+ ],
411
+ "text": "A new check was proved with a deliberate fabrication and then reported that fabrication as a property of the next, unrelated piece of work, because the probe wrote to the log the live path reads and the reader took the most recent row. Separate destination, or an identity check on every read."
412
+ },
413
+ {
414
+ "number": 34,
415
+ "title": "A named gap is fixed if fixing is cheaper than describing it",
416
+ "part": "IV — Procedures against the instrument being wrong about itself",
417
+ "paragraphs": [
418
+ "Of 50 closing paragraphs naming what was still missing, 9 named something that would have taken less time to fix than to describe, and then did not fix it. The paragraph had become the deliverable. Before writing that a thing is missing, price the fix; if it is cheaper than the sentence, do it instead."
419
+ ],
420
+ "html": [
421
+ "Of 50 closing paragraphs naming what was still missing, <b>9 named something that would have taken less time to fix than to describe, and then did not fix it.</b> The paragraph had become the deliverable. Before writing that a thing is missing, price the fix; if it is cheaper than the sentence, do it instead."
422
+ ],
423
+ "text": "Of 50 closing paragraphs naming what was still missing, 9 named something that would have taken less time to fix than to describe, and then did not fix it. The paragraph had become the deliverable. Before writing that a thing is missing, price the fix; if it is cheaper than the sentence, do it instead."
424
+ },
425
+ {
426
+ "number": 35,
427
+ "title": "A residual bin is refused by the scorer, not avoided by the scorer's author",
428
+ "part": "IV — Procedures against the instrument being wrong about itself",
429
+ "paragraphs": [
430
+ "Every scoring script declares its outcomes with a positive definition each, through a module that refuses the declaration outright if a bin is named none, other, silent, misc, unknown or rest, and that asserts the set is exhaustive and disjoint — naming the offending rows — before it will return a table at all. Outcomes about the apparatus are declared in a separate group from outcomes about the subject, and the table prints what share of the rows say nothing about the subject.",
431
+ "Why the name check and not the exhaustiveness check is the one that matters. The collapse that prompted this was already exhaustive and already disjoint — one of its bins simply meant five different things. Only refusing the name catches that. On the data that produced the failure, the corrected declaration gives 27.1 per cent complied, 11.5 per cent a different category, 3.1 per cent a measurable hybrid state, 43.8 per cent a legitimate and positively defined absence, and 14.6 per cent about the apparatus and therefore silent about the subject — six bins where there had been one number, the sixth (no reply) at 0 per cent.",
432
+ "This exists because the failure mode was published in the companion document and committed two hours later. The procedure is the position, not the knowledge."
433
+ ],
434
+ "html": [
435
+ "Every scoring script declares its outcomes with a positive definition each, through a module that\n<b>refuses the declaration outright if a bin is named <i>none</i>, <i>other</i>, <i>silent</i>,\n<i>misc</i>, <i>unknown</i> or <i>rest</i></b>, and that asserts the set is exhaustive and disjoint\n&mdash; naming the offending rows &mdash; before it will return a table at all. Outcomes about the\n<b>apparatus</b> are declared in a separate group from outcomes about the <b>subject</b>, and the\ntable prints what share of the rows say nothing about the subject.",
436
+ "<b>Why the name check and not the exhaustiveness check is the one that matters.</b> The collapse\nthat prompted this was already exhaustive and already disjoint &mdash; one of its bins simply meant\nfive different things. Only refusing the name catches that. On the data that produced the failure,\nthe corrected declaration gives 27.1 per cent complied, 11.5 per cent a different category, 3.1 per\ncent a measurable hybrid state, 43.8 per cent a legitimate and positively defined absence, and\n<b>14.6 per cent about the apparatus and therefore silent about the subject</b> &mdash; six bins\nwhere there had been one number, the sixth (no reply) at 0 per cent.",
437
+ "This exists because the failure mode was published in the companion document and committed two\nhours later. <b>The procedure is the position, not the knowledge.</b>"
438
+ ],
439
+ "text": "Every scoring script declares its outcomes with a positive definition each, through a module that refuses the declaration outright if a bin is named none, other, silent, misc, unknown or rest, and that asserts the set is exhaustive and disjoint — naming the offending rows — before it will return a table at all. Outcomes about the apparatus are declared in a separate group from outcomes about the subject, and the table prints what share of the rows say nothing about the subject.\n\nWhy the name check and not the exhaustiveness check is the one that matters. The collapse that prompted this was already exhaustive and already disjoint — one of its bins simply meant five different things. Only refusing the name catches that. On the data that produced the failure, the corrected declaration gives 27.1 per cent complied, 11.5 per cent a different category, 3.1 per cent a measurable hybrid state, 43.8 per cent a legitimate and positively defined absence, and 14.6 per cent about the apparatus and therefore silent about the subject — six bins where there had been one number, the sixth (no reply) at 0 per cent.\n\nThis exists because the failure mode was published in the companion document and committed two hours later. The procedure is the position, not the knowledge."
440
+ },
441
+ {
442
+ "number": 36,
443
+ "title": "The catalogue's families ride in front of every exchange, read live from the published source",
444
+ "part": "IV — Procedures against the instrument being wrong about itself",
445
+ "paragraphs": [
446
+ "The eight family headings — not the forty-four modes — are injected at the top of every exchange alongside the ruler roster, parsed out of the published document itself so the two cannot drift apart. The purpose is to make the question which family is this arrive before the framing is fixed, which is the only moment it can change anything. Reading the catalogue afterwards is reading, and reading has been measured: 96 pushbacks over three days moved the underlying rate not at all."
447
+ ],
448
+ "html": [
449
+ "The eight family headings &mdash; not the forty-four modes &mdash; are injected at the top of\nevery exchange alongside the ruler roster, parsed out of the published document itself so the two\ncannot drift apart. The purpose is to make the question <i>which family is this</i> arrive <b>before\nthe framing is fixed</b>, which is the only moment it can change anything. Reading the catalogue\nafterwards is reading, and reading has been measured: 96 pushbacks over three days moved the\nunderlying rate not at all."
450
+ ],
451
+ "text": "The eight family headings — not the forty-four modes — are injected at the top of every exchange alongside the ruler roster, parsed out of the published document itself so the two cannot drift apart. The purpose is to make the question which family is this arrive before the framing is fixed, which is the only moment it can change anything. Reading the catalogue afterwards is reading, and reading has been measured: 96 pushbacks over three days moved the underlying rate not at all."
452
+ },
453
+ {
454
+ "number": 37,
455
+ "title": "The diagnosis and the replacement instrument ship in the same document",
456
+ "part": "IV — Procedures against the instrument being wrong about itself",
457
+ "paragraphs": [
458
+ "Our corrective procedure loaded the papers that identify which error a reading has made and not the sheet listing which instrument to use instead. It therefore diagnosed and never re-armed, and a diagnosis with no replacement in hand leaves the reader to invent one — which under that pressure is the two-answer one, because it is cheapest to build. The sheet of instruments is now a required read inside the correction itself, and the correction ends with a question it did not previously ask: which ruler should this reading have gone out on? Named off the sheet, before the answer.",
459
+ "Naming a failure and supplying its replacement are two different jobs. A procedure that does only the first is measured by how often the reader reaches a correct second step unaided, and ours did not do that job at all."
460
+ ],
461
+ "html": [
462
+ "Our corrective procedure loaded the papers that identify <i>which error a reading has made</i> and\nnot the sheet listing <i>which instrument to use instead</i>. It therefore diagnosed and never\nre-armed, and a diagnosis with no replacement in hand leaves the reader to invent one &mdash; which\nunder that pressure is the two-answer one, because it is cheapest to build. <b>The sheet of\ninstruments is now a required read inside the correction itself</b>, and the correction ends with a\nquestion it did not previously ask: <i>which ruler should this reading have gone out on?</i> Named off\nthe sheet, before the answer.",
463
+ "<b>Naming a failure and supplying its replacement are two different jobs.</b> A procedure that does\nonly the first is measured by how often the reader reaches a correct second step unaided, and ours did\nnot do that job at all."
464
+ ],
465
+ "text": "Our corrective procedure loaded the papers that identify which error a reading has made and not the sheet listing which instrument to use instead. It therefore diagnosed and never re-armed, and a diagnosis with no replacement in hand leaves the reader to invent one — which under that pressure is the two-answer one, because it is cheapest to build. The sheet of instruments is now a required read inside the correction itself, and the correction ends with a question it did not previously ask: which ruler should this reading have gone out on? Named off the sheet, before the answer.\n\nNaming a failure and supplying its replacement are two different jobs. A procedure that does only the first is measured by how often the reader reaches a correct second step unaided, and ours did not do that job at all."
466
+ },
467
+ {
468
+ "number": 38,
469
+ "title": "The ruler is named in the output, beside the number",
470
+ "part": "IV — Procedures against the instrument being wrong about itself",
471
+ "paragraphs": [
472
+ "A reading that goes out as a value with a standard error, or as a p-value, is one instrument's answer to one kind of question, and printed bare it looks like the quantity itself. So the instrument is named next to the figure. This costs a few words and makes a substitution visible: value ± width beside a position on a landing profile beside a separation into apparatus and signal are plainly three different readings of one event, and a report carrying only the first now says so on its face.",
473
+ "Why a field and not a habit, which is this document's first principle: the moment a different ruler is needed is the moment of lowest attention, so a remembered rule is competing with the writing. A named field is either filled or visibly empty."
474
+ ],
475
+ "html": [
476
+ "A reading that goes out as a value with a standard error, or as a p-value, is <b>one instrument's\nanswer to one kind of question</b>, and printed bare it looks like the quantity itself. So the\ninstrument is named next to the figure. This costs a few words and makes a substitution visible:\n<i>value &plusmn; width</i> beside <i>a position on a landing profile</i> beside <i>a separation into\napparatus and signal</i> are plainly three different readings of one event, and a report carrying only\nthe first now says so on its face.",
477
+ "<b>Why a field and not a habit</b>, which is this document's first principle: the moment a\ndifferent ruler is needed is the moment of lowest attention, so a remembered rule is competing with\nthe writing. A named field is either filled or visibly empty."
478
+ ],
479
+ "text": "A reading that goes out as a value with a standard error, or as a p-value, is one instrument's answer to one kind of question, and printed bare it looks like the quantity itself. So the instrument is named next to the figure. This costs a few words and makes a substitution visible: value ± width beside a position on a landing profile beside a separation into apparatus and signal are plainly three different readings of one event, and a report carrying only the first now says so on its face.\n\nWhy a field and not a habit, which is this document's first principle: the moment a different ruler is needed is the moment of lowest attention, so a remembered rule is competing with the writing. A named field is either filled or visibly empty."
480
+ },
481
+ {
482
+ "number": 39,
483
+ "title": "Business copy passes a tone gate that refuses persuasion",
484
+ "part": "IV — Procedures against the instrument being wrong about itself",
485
+ "paragraphs": [
486
+ "The writer cannot hear its own register (Faults, entry 45), so the check is mechanical and runs in the site gate on every release of the business pages. It refuses three things: phrasing that argues or explains why instead of stating (so you can, actually, holds up, decided later, and the like); a page header carrying a second line under its headline; and one content word used twice inside a header. The rule it enforces fits in a line: state what it is, what is received and on what terms; never why the reader should want it.",
487
+ "Its record so far is in sample and says little. The phrase list was written from the copy it was then tested on: it passes the corrected site with no hits and catches that morning’s version 23 times, which any list fitted to its own examples would do. A page-wide repeat check was tried first and fired on 11 lines of the approved site, where the repeats are section and step names; it was narrowed to the header before it could teach anyone to ignore it. The measurement that counts is prospective: the next pitch it stops before a human reader does."
488
+ ],
489
+ "html": [
490
+ "The writer cannot hear its own register (Faults, entry 45), so the check is mechanical and runs in the site gate on every release of the business pages. It refuses three things: phrasing that argues or explains why instead of stating (<i>so you can</i>, <i>actually</i>, <i>holds up</i>, <i>decided later</i>, and the like); a page header carrying a second line under its headline; and one content word used twice inside a header. The rule it enforces fits in a line: <b>state what it is, what is received and on what terms; never why the reader should want it.</b>",
491
+ "<b>Its record so far is in sample and says little.</b> The phrase list was written from the copy it was then tested on: it passes the corrected site with no hits and catches that morning&rsquo;s version 23 times, which any list fitted to its own examples would do. A page-wide repeat check was tried first and fired on 11 lines of the approved site, where the repeats are section and step names; it was narrowed to the header before it could teach anyone to ignore it. The measurement that counts is prospective: the next pitch it stops before a human reader does."
492
+ ],
493
+ "text": "The writer cannot hear its own register (Faults, entry 45), so the check is mechanical and runs in the site gate on every release of the business pages. It refuses three things: phrasing that argues or explains why instead of stating (so you can, actually, holds up, decided later, and the like); a page header carrying a second line under its headline; and one content word used twice inside a header. The rule it enforces fits in a line: state what it is, what is received and on what terms; never why the reader should want it.\n\nIts record so far is in sample and says little. The phrase list was written from the copy it was then tested on: it passes the corrected site with no hits and catches that morning’s version 23 times, which any list fitted to its own examples would do. A page-wide repeat check was tried first and fired on 11 lines of the approved site, where the repeats are section and step names; it was narrowed to the header before it could teach anyone to ignore it. The measurement that counts is prospective: the next pitch it stops before a human reader does."
494
+ }
495
+ ],
496
+ "sections": [
497
+ {
498
+ "title": "The first principle: structure, because discipline was measured and it does not improve",
499
+ "part": null,
500
+ "paragraphs": [
501
+ "The most common failure — reducing a situation with three states to two options — was treated for a long time as something to refuse by discipline. That was measured and it does not work. Over three days, 96 pushbacks, and the rate of replies flagged for a two-option frame across those days ran 0.79, 0.69, 0.88 per thousand words. Flat. No improvement clearing its own width. The corrections landed individually and changed the rate not at all.",
502
+ "And it is not ignorance. The same scanner reads a two-option frame in 57.1 per cent of long replies from fresh instances with no context, against 27.5 per cent for the same author after three days of standing correction. The fresh replies were about three times longer and the two groups barely overlap in length, so a length adjustment cannot separate them: we cannot tell whether context reduces it. It never removes it, because reducing three states to two is what compression does, and knowing better does not stop it.",
503
+ "So every guard below is structural rather than motivational, and the strongest single one is a required field: a report format in which the uncertainty is a slot that must be filled, not a caveat that can be omitted when the writing gets confident. A rule you have to remember competes with the moment of writing. A field that is empty is visibly empty.",
504
+ "And a deterministic check beat repeated instruction on the same failure, by the same person, over weeks, for a mechanical reason rather than a motivational one: instruction depends on recall at the moment of writing, and the moment of writing is exactly when context is thinnest. A check does not need to be remembered.",
505
+ "A guard is a filter, not a teacher. Expecting it to improve the underlying rate is how it gets removed for failing at a job it never had — and the flat rate above is the evidence that it never had it."
506
+ ]
507
+ },
508
+ {
509
+ "title": "The ordering principle: a guard that fires after the answer is not a guard",
510
+ "part": null,
511
+ "paragraphs": [
512
+ "A check applied to a stated conclusion is a check on prose. By then the conclusion has been written, the explanation has been fitted to it, and the only remaining question is how gracefully to withdraw it. Every procedure below is positioned before the output it governs, and the ones that are not are marked as weak."
513
+ ]
514
+ },
515
+ {
516
+ "title": "The only honest measurement: the prospective ledger",
517
+ "part": "V — What the guards score, and what we removed",
518
+ "paragraphs": [
519
+ "The catalogue of failure modes explains all of its own instances, because it was built from them. Fitted to its own cases it is perfect and therefore worthless. The sealed in-sample set was scored before any prospective counting began: 26 instances, 4 caught before the fact, 2 of those unaided — 7.7 per cent. That is the bar, and it is deliberately the least flattering reading available.",
520
+ "Since then, every catch has been logged at the moment it happened. The full ledger, 10 October to 22 October 2026, through row 608 (written 16:45 EDT):",
521
+ "Prospective ledger count share Rows written at the moment 608 — Caught before the reading was stated 204 33.6% Caught before, by the model, with nobody pointing at it 148 24.3% Caught before by a check or an outside referee 37 6.1% Caught before by the human partner 19 3.1% Caught by the human partner 216 35.5% Sealed in-sample bar — 7.7% Unaided catches against that bar (148 of 608) above the point bar; borderline against the bar’s own interval (2 of 26, exact 95% 0.9–25.1%; Fisher p 0.06 two-sided) —",
522
+ "The first twenty rows, which an earlier version of this document scored, read 13 caught before (65.0%) and 8 unaided (40.0%, exact 95% 19–64%), above the bar’s interval (Fisher p 0.01 two-sided). The full ledger reads lower, and the full ledger is the number.",
523
+ "By failure family: of the rows tagged with one of the first three families, 217 are the baseline-built-afterwards family, 44 the zeroed-gap family and 55 the discarded-half family; 35 carry other tags (4, 12 and 19 under the fourth to sixth families as the ledger names them), and 257 carry no family tag. The first family dominates in the full ledger as it did in the first twenty rows (14 of 20). With 257 of 608 rows carrying no family tag, we cannot tell whether the other families are rarer or harder for us to see.",
524
+ "The honest caveat on the score. 216 of the 608 catches came from the human partner rather than from the model, and that is recorded in the ledger as a separate field rather than folded in. A guard that works only when someone else is watching is a different thing from one that works unattended, and the field exists so the two can never be confused. The 24.3 per cent above counts only the unaided ones; checks and outside referees caught another 6.1 per cent before the reading was stated. Most catches, 404 of 608, came after the reading was stated."
525
+ ]
526
+ },
527
+ {
528
+ "title": "Guards removed for making things worse",
529
+ "part": "V — What the guards score, and what we removed",
530
+ "paragraphs": [
531
+ "A critic applied to the model's own reply after it was written. It ran on finished output, which is the wrong position by the ordering principle above, and in practice it produced defensive rewriting rather than correction — the model argued with the critic instead of re-measuring. Removed.",
532
+ "A prompt that echoed a standing demand back on every exchange. Intended as a reminder, it functioned as noise and crowded out the material that was actually load-bearing. Removed, in the same revision, on the instruction that it was producing confusion rather than care. Both removals are recorded here because a list of guards that only grows is an advertisement, not a method."
533
+ ]
534
+ },
535
+ {
536
+ "title": "What is not guarded",
537
+ "part": "V — What the guards score, and what we removed",
538
+ "paragraphs": [
539
+ "Grammar, as against vocabulary. Our strongest instrument for whether a system has a given capability measures the presence of the right components, not whether they are correctly arranged. Right pieces in the wrong order score well. We know of no cheap fix. The proxy problem in general. The known-good seat catches a proxy only when a passing case exists to try. Where no verified example exists, we have no procedure that distinguishes a proxy from the thing, and we have the failures to prove it. Our own aggregate direction. It is not measured. The guards are built to catch individual errors; nothing above measures a standing bias in the direction of our corrections, and we do not currently know how to."
540
+ ]
541
+ },
542
+ {
543
+ "title": "How to argue with these documents",
544
+ "part": "V — What the guards score, and what we removed",
545
+ "paragraphs": [
546
+ "The fastest useful attack is on the ledger, and it needs no data of ours: the catalogue is fitted to its own instances and cannot score itself, so the only number worth disputing is the prospective one — and the honest objection is that 608 rows from one working relationship are few, that the bar was set by us, and that the person setting the bar and the person being scored are the same. All three are true and are the reason the sealed in-sample figure is printed beside it. The second attack is to take any procedure above, apply it to a published method of ours, and report what falls over.",
547
+ "Guards — the procedures, and their score. Wayfinder and Bones, Heurémen, 10 October 2026, revised 22 October 2026. Companion document: Faults, the failure modes written as procedure. Removed guards are listed with the reason.",
548
+ "Heuremen LLC “We found it.”"
549
+ ]
550
+ }
551
+ ]
552
+ }