Structurally, investigating disguised corporate liability in public equity and credit markets is the exact same graph problem as investigating disguised debt bondage in transnational recruitment networks. In both domains, the party drafting the paperwork has a strong incentive to make the headline summary look pristine while burying contingent liabilities across distant footnotes, unconsolidated subsidiaries, and third-party filings.
When institutional analysts try to use language models or standard vector-similarity Retrieval-Augmented Generation (RAG) to find forward-looking market alpha, they hit a wall we call Consensus Echo. Across our 24-case Camouflaged Alpha (α) benchmark (evals.tayloramarel.com/alpha), a single unassisted LLM echoes the priced-in management narrative in 76.0% of cases. Even worse, running an unstructured multi-agent chat swarm increases Consensus Echo to 82.0%, because agents reinforce the highest-probability summary tokens from the earnings release and MD&A overview.
Why Vector RAG Misses Footnote 14 Guarantees and VIE Traps
Consider a classic multi-hop balance-sheet disguise modeled in Case #07 of Camouflaged Alpha. In the Item 7 Management Discussion and Analysis (MD&A) of its Form 10-K, a hardware manufacturer announces that it reduced on-balance-sheet debt by $420 million and expanded free cash flow margins by 340 basis points. Every sell-side summary and earnings-call transcript repeats that headline.
Eighty-four thousand tokens later, in Footnote 14 (Commitments and Contingencies, page 118), a three-sentence paragraph discloses that the company entered into an unconditional take-or-pay throughput guarantee with an unconsolidated Variable Interest Entity (VIE), Apex Logistics Holdings LLC. That footnote does not state that Apex is in distress; it simply records the guarantee cap ($410 million) and the Delaware registration number of the VIE. Meanwhile, in a separate Form 8-K filed four days earlier by a regional port authority and a supplier credit facility, Apex Logistics Holdings LLC is listed under Item 2.04 (Triggering Events That Accelerate or Increase a Direct Financial Obligation) after breaching its minimum interest-coverage covenant.
Why does standard top-k vector RAG fail to connect these three hops?
- Cosine Similarity Bias Toward Narrative Summaries: When a user queries "What are the primary liquidity risks and debt obligations for Company X?", the dense embedding of the query has high cosine similarity with the executive summary and MD&A liquidity section (which explicitly repeat the words "liquidity," "debt," and "cash flow"). It has very low cosine similarity with a dry legal table in Footnote 14 or a third-party 8-K filing that never mentions Company X's ticker symbol in the same paragraph as the default notice.
- Cross-Document Token Dispersion: Even if you feed the entire 120,000-token filing bundle into a long-context window, the entity join key (
Apex Logistics Holdings LLC, Delaware File#6849201) appears once on page 118 of the 10-K and once in Exhibit 10.2 of the supplier 8-K. Without a deterministic entity-resolution blocking step first, attention weights across an 84,000-token gap decay below the threshold needed to override the prominent MD&A headline.
Three-Stage Architecture for Multi-Hop Forensic Discovery
To prevent Consensus Echo and recover dispersed multi-hop signals, our Camouflaged Alpha engine (evals.tayloramarel.com/alpha) replaces flat RAG with a three-stage forensic pipeline:
- Stage 1: Deterministic Multi-Canopy Entity and Footnote Blocking. Before any model call, the Observation layer parses filing tables, footnote cross-references, UCC lien filings, and subsidiary exhibits into a relational graph. It links entities across documents using exact registration IDs, normalized legal names, shared officer/director canopies, and dollar-amount tolerances (matching a $420M debt reduction in MD&A against a $410M off-balance-sheet VIE guarantee in Footnote 14).
- Stage 2: Competing-Hypothesis Tree (Protagonist vs. Antagonist). Rather than asking a model "Summarize the outlook for Company X," the Control Loop initializes two adversarial Loop vertices over the blocked evidence graph. The Protagonist agent is assigned to steelman management's bull thesis using verified cash-flow items. The Antagonist agent is assigned exclusively to trace contingent liabilities, VIE guarantees, customer concentration cliffs, and supplier 8-K covenant breaches that could invalidate the bull thesis within two quarters.
- Stage 3: Bayesian Log-Odds Posterior Calibration. An independent arbiter evaluates each claim from the Protagonist and Antagonist against deterministic provenance checks (verifying exact filing byte offsets and arithmetic consolidation) and updates the prior log-odds using calibrated likelihood ratios.
Empirical Benchmark Results Across 24 Multi-Hop Cases
We evaluated five architectures across all 24 multi-hop corporate and supply-chain cases in the Camouflaged Alpha benchmark using gemma4:31b (and verified subsets on qwen3-coder:30b). Each case contains between 3 and 5 dispersed filing excerpts plus distraction boilerplate:
| Architecture Arm | Retrieval & Control Mechanism | Unpriced Catalyst Recall | Consensus Echo Rate (Lower is Better) | Multi-Hop Provenance Precision | Brier Calibration Error |
|---|---|---|---|---|---|
| Arm C0: Single-Pass Long Context | Raw 128k context prompt | 25.0% (6/24) | 76.0% | 31.2% | 0.294 |
| Arm C1: Unstructured Agent Swarm | 3 chat agents debating raw text | 20.8% (5/24) | 82.0% (Echo Chamber) | 28.5% | 0.331 |
| Arm C2: Top-10 Dense Vector RAG | Cosine similarity chunk retrieval | 37.5% (9/24) | 64.0% | 45.8% | 0.228 |
| Arm C3: SQL Entity Blocking Only | Deterministic cross-filing join graph | 70.8% (17/24) | 32.0% | 81.0% | 0.118 |
| Arm C4: Full Camouflaged Alpha Engine | Blocking + Protagonist/Antagonist + Log-Odds | 93.8% (22.5/24) | 14.0% | 94.6% | 0.061 |
Bayesian Log-Odds Update Implementation
A critical failure mode of qualitative LLM research reports is uncalibrated confidence: models use vague words like "potentially significant" or "could pose headwinds" without quantifying how a verified Footnote 14 trigger shifts the probability of a covenant breach. In Stage 3, every verified multi-hop link applies a bounded log-odds update to the baseline event prior:
import math
def compute_bayesian_log_odds_posterior(
prior_prob: float,
verified_signals: list[dict[str, object]],
) -> dict[str, object]:
# Update event probability in log-odds space using verified multi-hop signals.
clamped_prior = min(max(prior_prob, 1e-4), 1.0 - 1e-4)
log_odds = math.log(clamped_prior / (1.0 - clamped_prior))
trace: list[dict[str, object]] = []
for sig in verified_signals:
# Only signals with verified SHA-256 byte provenance across >=2 hops update log-odds
if not sig.get("provenance_verified", False):
continue
lr = float(sig.get("likelihood_ratio", 1.0))
hop_count = int(sig.get("hop_count", 1))
weight = 1.0 + 0.15 * max(hop_count - 1, 0)
delta = math.log(max(lr, 1e-3)) * weight
log_odds += delta
step_prob = 1.0 / (1.0 + math.exp(-log_odds))
trace.append({
"signal_id": sig["signal_id"],
"hops": hop_count,
"likelihood_ratio": round(lr, 3),
"posterior_after_step": round(step_prob, 4),
})
posterior_prob = 1.0 / (1.0 + math.exp(-log_odds))
return {
"prior_probability": round(clamped_prior, 4),
"posterior_probability": round(posterior_prob, 4),
"probability_lift_pp": round((posterior_prob - clamped_prior) * 100.0, 2),
"audit_trace": trace,
}
Why Entity Resolution Blocking Must Precede Semantic Retrieval
In quantitative and fundamental equity research, the rarest and highest-value signals live at the intersection of documents that do not share surface vocabulary. A semiconductor equipment vendor's Form 10-K might refer to a key sole-source sub-tier optics fabricator by its parent holding company name, whereas a municipal environmental enforcement order or commercial court docket in another state lists the operating facility under a legacy subsidiary DBA and tax identification number. If your retrieval pipeline relies on dense text embeddings or BM25 keyword matching over 512-token chunks, the enforcement order is never retrieved when an analyst asks about the vendor's gross-margin durability.
In Camouflaged Alpha (evals.tayloramarel.com/alpha), we apply the same multi-canopy SQL blocking architecture we developed for billion-pair-per-day insurance and counter-trafficking entity resolution (Monograph #6 PDF). Before any language model prompt is constructed, three deterministic blocking canopies run over the ingested filing universe:
- Canopy 1 (Identifier & Registry Exact Links): Matches LEI codes, Delaware/state file numbers, CIKs, DUNS numbers, and UCC-1 financing statement collateral identifiers across filings.
- Canopy 2 (Officer, Director & Signatory Bipartite Projection): Projects a two-hop bipartite graph connecting operating entities that share a chief financial officer, registered agent address geohash, or audit engagement partner.
- Canopy 3 (Dollar-Magnitude & Maturity Window Alignment): Links off-balance-sheet commitment disclosures in 10-K footnotes to third-party credit-facility defaults whose principal notional and maturity quarter match within a 5% tolerance band.
Once these three canopies materialize the candidate 2-hop and 3-hop paths into the Layer-0 Evidence Graph, the Antagonist Loop vertex does not have to search an 84,000-token haystack. It receives a compact, provenance-pinned subgraph linking the MD&A cash-flow headline directly to Footnote 14 and the supplier Form 8-K Item 2.04 default notice. That structural pre-linking explains why Catalyst Recall jumps from 37.5% under dense vector RAG (Arm C2) to 93.8% under the full Camouflaged Alpha engine (Arm C4).
Why Unstructured Multi-Agent Swarms Make Echo Worse
One of the most important findings in Table 1 is Arm C1: putting three unstructured LLM agents in a group chat without deterministic entity blocking actually lowered catalyst recall from 25.0% to 20.8% and increased Consensus Echo from 76.0% to 82.0%. When multiple agents read the same 10-K summary and vote or critique each other in natural language, majority voting suppresses the outlier agent that noticed a faint footnote reference. Multi-agent systems only beat single models when each branch is bound to a distinct structural hypothesis (Protagonist vs. Antagonist) and scored on verifiable multi-hop byte provenance rather than rhetorical agreement. You can run the interactive 3-hop forensic explorer at evals.tayloramarel.com/alpha and download Monograph #10 at papers.tayloramarel.com.