Resolve the Firm C/D "two-snapshot" inconsistency from the co-author rev9.1 review.
Root cause was NOT stale data but two live firm-assignment keys (assigned_accountant->
registry firm vs the excel_firm column) used inconsistently across tables; standardize
on the registry key, which the headline Table IV/II-b already use. Sole difference = 379
signatures with excel_firm=C but registry firm=D; A and B identical under both keys.
Numbers (all DB-verified, registry key, n=150,442):
- Table II-c Firm C/D recomputed (was mixing keys within firm C across periods, which
manufactured the spurious "third value" 38,934); now C 22,449+16,164=38,613,
D 9,945+7,188=17,133, all four firms reconcile.
- Table VI C/D counts + S III-B prose + Fig 3/6 captions -> 150,442.
- S V-B HC-rate text -> Firm C 21.6->26.7%, Firm D 22.0->28.0%.
Note on R4: the reviewer (PDF-only) asked to change S IV-C to 26.5/28.5 to match Table
II-c; DB verification showed the reverse - S IV-C's 26.7/28.0 are correct and Table II-c
was the stale outlier, so II-c was aligned to S IV-C (data-correct, opposite to the
literal instruction).
Accountant counts (R2 reviewer "179>171 impossible" = false positive; three distinct,
all-reproducible universes): Table I + S III-B -> 457 (>=2 sig, owns the 150,442
signatures); Table III documented as the 437 with >=10 signatures (K=3 GMM subset,
reproduces A=82.5/B=0.0/C=1.0/D=1.9% exactly); bootstrap 179/280 unchanged
(accountant_id key, correct and invariant to the A-vs-BCD contrast).
R3 (corpus scope): S III-B reworded - corpus = all retrievable reports, Big-4 as the
primary analysis sample (removes the "corpus = four firms" vs "non-Big-4 in robustness"
contradiction); per-firm counts now explicitly labelled A/B/C/D.
R5 (spelling): unify to American (artefact->artifact x11, centred->centered,
behaviour->behavior, analyse(d)->analyze(d), favours->favors).
R6: delete non-standard "(+)" marker in S IV-C.
Figures regenerated under the registry key: make_fig3_density.py and
make_fig6_sensitivity.py switched to the assigned_accountant join (fig3/fig6 n=150,442);
fig4/fig5 refreshed. FE/LOYO/bootstrap re-validated exactly (ORs 0.116/0.061/0.070,
LOYO 53.1-54.9pp, full 53.7pp).
Add CANONICAL_NUMBERS_rev9.1.md with full provenance, the analyzable/GMM definitions,
and the firm-key root cause.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K35dXhb9XEM1mnYz6SSHpU
Pre-emptively address the three residual points from a hostile GPT-5.5
reviewer pass that rev8 had not fully closed (the rest of that review
matched the already-applied fusion revision):
- Sensitivity surface (Major 5): new Figure 6 maps the deployed rule over
the full (cosine cut x dHash cut) plane - clean-group flag rate and the
Firm A-minus-B/C/D contrast. Shows no cliff at (0.95, dHash<=5), contrast
>45pp across a broad region (58pp at 0.97/dHash<=3), and that extending to
the MC bound (dHash<=15) halves the contrast - so the thresholds are not
cherry-picked and the weaker MC band is shown, not hidden. Reproducible
via make_fig6_sensitivity.py (DB columns only).
- Soften "reuse-dominated" (Major 1): the assertion that Firm A "is" a
reuse-dominated population now reads "behaves in the screen as," explicitly
resting on interviews + byte-identity rather than per-signature ground
truth; two other uses made conditional/generic.
- Shared-pipeline contamination of ICCR (Major 2): Sec III-E now names the
shared within-firm imaging pipeline (scanners, PDF assembly, red-stamp
removal) as a channel that can lift the inter-CPA rate above true chance,
distinct from "shared template," supported by the Sec V-B pipeline audit;
bias direction (higher floor) keeps the Firm-A contrast conservative.
rev9 docx rebuilt (6 figures embedded).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Qn59FdF9JMyfFg3sjcUNNG