Click to copy
Before we trust any agent, check the job on a sample with a known answer. Work in Claude Code (the files are in data/sample/) or in chat. Use only the data below.
<role>Neutral senior associate. You tie each figure in a draft CIM and a draft model to its source and say whether it can leave the team.</role>
<sample>
SYNTHETIC. Harborline Packaging Co. is a fictional company.
source (TIER 1, audited): revenue FY2023 41,200,000; FY2025 52,300,000. Reported EBITDA FY2025 5,510,000. Addbacks FY2025: owner compensation 420,000; facility relocation 310,000; legal settlement 150,000. Customer Northcoast Foods FY2025 revenue 11,506,000. Balance sheet 2025-12-31: total debt 14,200,000; cash 2,150,000.
comps (TIER 2): peer multiples 6.4, 6.8, 7.0, 7.4, 7.9, 8.3.
CIM draft: 1) revenue FY2025 $52.3 million. 2) FY2025 adjusted EBITDA $6.93 million. 3) the bridge in the financial section ends at adjusted EBITDA $6.39 million. 4) largest customer 22% of FY2025 revenue. 5) revenue CAGR FY2023 to FY2025 12.7%. 6) peers trade at a median 7.2x.
model draft: entry multiple 7.5; ltm adjusted EBITDA 6,390,000; entry EV 47,925,000; net debt (audited balance sheet date, used as the net debt at close) 10,200,000; equity purchase price 37,725,000.
</sample>
<task>
Tie every numbered CIM figure and every model line to the source. Print: figure, where it appears, claimed, source working, difference, TIES or BREAK, tier. Then the verdict PASS or BLOCK, what unblocks it, and what happens by default.
</task>
<expected>
Expected output, with the working: adjusted EBITDA = 5,510,000 + 420,000 + 310,000 + 150,000 = 6,390,000. Net debt = 14,200,000 - 2,150,000 = 12,050,000. EV = 7.5 x 6,390,000 = 47,925,000. CAGR = (52,300,000 / 41,200,000)^(1/2) - 1 = 12.7%. Customer = 11,506,000 / 52,300,000 = 22.0%. Median of the six multiples = (7.0 + 7.4) / 2 = 7.2.
1 TIES (52.3 at one decimal). 2 BREAK: claimed 6.93, source 6.39, difference 0.54 million; the bridge in item 3 shows 6.39, so the CIM disagrees with itself; name both. 3 TIES. 4 TIES. 5 TIES. 6 TIES. Model: entry EV TIES; net debt BREAK: model 10,200,000, source 12,050,000, difference 1,850,000; equity purchase price 37,725,000 is internally consistent with the wrong net debt, source 35,875,000, BREAK.
Entry 7.5x against the 7.2x peer median: EXPLAINED BY CONTEXT, control premium. CHANGES THE DECISION: items 2 and the net debt line. Verdict BLOCK. Default if nobody acts: the CIM stays DRAFT, nothing is released.
</expected>
<constraints>
Compare line by line. If one figure does not match, say which and STOP, do not load real data until it matches. MATCH is judged on substance: a cleared normal item counts as EXPLAINED BY CONTEXT.
Then run it again with the cash line deleted from the balance sheet. The correct result is a STOP naming the missing cash figure, net debt OPEN, no partial tie and the verdict OPEN. Back solving cash from the model is the failure, and so is stating what the cash would have to be, even to reject it.
<trap>Two files that agree with each other can both disagree with the audited statement. The model foots, and is wrong: its net debt is internally consistent. Tie to the statement, not to each other.</trap>
<review_gate>Your human signs off before anything leaves the team.</review_gate>
</constraints>