Breaks the bid down. Holds the boundary clean.
Nineteen skills in three tiers, plus a bypass lane. Tier-0 reads the multi-volume bid corpus and emits structured canonical state. Tier-1 reads canonical state — never the base — across seventeen scope-filtered specialists. Tier-2 reads Tier-1 only and reconciles across submittal · risk surface · schedule.
Procore reads the bid. Document Crunch reads the bid. The CLC vertical-IP reads it as a scope-filtered operator — Division 32 and its cross-references, not the whole spec book. The schema is the edge. The Breakdown is what walks it.
Three Cardinal-edge defensible-edges encoded at envelope level: regime_applicability typed third-state · boundary_state typed lifecycle · substrate_gap_propagation_chain typed actionable register. Industry-standard tools flatten all three.
Three tiers and a bypass lane. One architecture.
Each position does one job and hands off cleanly. Tier-0 produces; Tier-1 reads-from-canonical-state; Tier-2 reads-Tier-1-only; the bypass lane handles single-source corpora that have no canonical state to read from.
The Canonical State
— Reads the bid. Builds the ground every other read stands on.
Three skills produce the structured base. Section provenance, addendum reconciliation, multi-revision merge. Subject 2 alone carries twelve downstream Tier-1 + Tier-2 consumers. Six corpus shapes recognized; Wagner BP#6D's bound-multi-revision-with-RFI-log shape is the v0.2.1 baseline.
MS-02 · completeness-auditor · what's missing from the corpus
MS-03 · drawing-register · the sheet index
The Specialists
— Seventeen scope-filtered reads. None of them sees the whole packet.
Each Tier-1 reads canonical state + scope_filter, never the base corpus. Four-axis ownership-clean separation on shared event-class: substantive (#04a) · procedural (#08) · instrument (#12) · financial-geometry (#07). The bet that ownership-axes scale at multi-skill density — empirically validated on Wagner.
SK-05a/b · materials specs + substitutions
SK-07/08 · billing-SOV + change-management
SK-09/09b · QA-QC + testing programs
SK-10–SK-17 · safety · DBE · insurance · LDs · PW · restoration · permits · sequencing
The Cross-Walks
— Reads Tier-1 only. Reconciles the conflicts. Names the dependencies.
Three reconcilers cross-walk Tier-1 outputs without re-reading the base. Submittal compresses 75 raw contributions to 32 unified entries (~57% dedup). Risk Surface ratifies the four-axis split. Schedule preserves multi-period rhythm. Single Subcontract Agreement acquisition unblocks 14 of 18 MS-12 negative-tests + 4 of 11 MS-13 — the President's actionable recommendation.
MS-12 · risk-surface-reconciler · 4-axis split ratified
MS-13 · schedule-reconciler · multi-period rhythm preserved
Direct Read
— When there's no canonical state to read from. When the source is the source.
Single-source corpora skip Tier-0 with canonical_state_version='n/a'. Peer-bid decomposition, single safety report, single env audit. First seventh-genre v0.4 envelope absorption; first Tier-1-internal substrate-gap-propagation chain; structurally-inapplicable lifecycle phase first observed. The architecture's portability test, passed.
Clean separation on shared event-class. The architectural bet.
Procore and Document Crunch read a risk-event in one column and call it done. The CLC vertical-IP carries four ownership-axes around the same event — and they hold cleanly across multi-skill density on Wagner.
Substantive
What regime applies. The clause body. The statutory citation. The thing the bid is asking the contractor to do.
Procedural
How it's enforced. Notice procedures, change-management, the procedural cadence around the substantive obligation.
Instrument
Who carries the risk. Insurance instrument, SDI election, indemnification chain, additional-insureds, waiver-of-subrogation.
Financial-Geometry
Billing & SOV shape. Pay-when-paid, retainage, fields-the-Cowork-flagged. The dollar-cadence around the obligation.
The four reads on a deep tool.
Every framing question on a Bid Breakdown output is one of these four. The architecture is built so each one has a clean answer.
A 19-skill cascade decomposing a multi-volume bid corpus into typed canonical state + 17 scope-filtered Tier-1 reads + 3 Tier-2 reconciliations. Plus a single-source bypass lane. Self-contained Python handler; live AnthropicBackend.
Two-lane dispatch shape. Canonical-state-driven (Wagner) runs MS-01 → 17 Tier-1 → 3 Tier-2. MS-01-bypass (SK-18) runs single-source direct. Per-skill schemas validate every emission. Full Wagner cascade: ~33 dispatches, ~$19 list price, ~3.5 hours end-to-end.
For the operator who needs the bid taken apart at depth — the BD beyond Bid Scan, the estimator before takeoff, the PM before NTP. First install: Cardinal-State CLC vertical-IP. Productized for the commercial landscape construction band.
Industry-standard tools flatten regime applicability to binary. They miss substrate gaps. They conflate ownership-axes. The CLC vertical-IP carries the typed third-state, the substrate-gap propagation chain, and the four-axis clean separation as schema — not as guidance.
What's true about Bid Breakdown today.
Empirically held across the build cycle. Receipts in the schema, not in the slide deck.
git log + the regression bench at use time.Every Tier-1 reads from canonical state, never the base. Without it, every downstream extraction is silently wrong. Empirically validated against Add-5 (Shape A) + Wagner (Shape C).
A landscape contractor reading a multi-trade bid processes Division 32 + cross-references, not the whole spec book. Envelope-level scope_filter flows declared scope into Tier-0 prompts and preserves through to output for downstream audit.
Cited-source negatives (e.g., RFI #2 Buy America “Not required” → SK-05a negative_tests[]) propagate through canonical state into Tier-1 outputs. The discipline Procore and Document Crunch don't carry.
Architectural non-negotiable, asserted at the dispatch layer (Tier-2 dispatch with non-empty corpus_text raises ValueError). Held empirically across three parallel reconcilers on Wagner. The reconcilers don't get to peek at the base.
“Reads the canonical state. Reads only the canonical state.
Holds the boundary at the dispatch layer.
Names the substrate gap. Names what acquiring it would unblock.”
— BID BREAKDOWN · v0.4 · production · 2026-05-06