Pipeline Audit · Run 7✓ All gates passed

Swarm Adjudication Audit

End-to-end transparency into the multi-agent debate pipeline. Inspect token economics, B-gate quality metrics, and individual adversarial debate transcripts for every accepted or rejected predicate.

Total Attempts

32

12 accepted · 12 rows

Token Budget

971k

792k prompt · 179k comp

Tokens / Accepted Row

81k

30k per attempt

LLM Calls

146

2 models

Token Telemetry

Stage-level token distribution and model workload allocation across the full pipeline.

B-Gate Quality Summary

Automated quality gates enforcing structural, semantic, and grounding standards.

B0 – Structural Completeness

100.0%

B1 – Inconclusive Rate (Accepted)

0.0%

B1 – Unsupported Rate (Accepted)

0.0%

B2 – Anchor Match Rate

100.0%

B2 – Mechanism Grounding Fail

0.0%

B2 – Strict Fail Rate

6.3%

Verifier Parse OK

100.0%

Verifier Pass Rate

66.7%

B2 Strict Failure Breakdown
Categorised reasons for strict-pass failures across 32 attempts.

anchors no match

0

anchors too few after normalization

2

mechanism evidence failed

0

Attempt Inspector

Browse representative adversarial debate transcripts and verifier logic traces.

Debate Transcripts

Integer Overflow

The code in function process_packet contains an integer overflow vulnerability leading to buffer write out-of-bounds.

Judge: TrueVerifier: Pass
Status: Accepted·Tokens: 28,420

Adversarial Debate Rounds

PRORound 1

In function `process_packet` (line 34), the expression `len + header_len` can overflow if `len` is close to `0xffffffff`. This bypasses the boundary check `if (len + header_len < max_buf_size)` because of the integer wrap-around. The allocator then receives a small size, but the subsequent `memcpy(dest, src, len)` writes the full user-controlled `len`, leading to a heap out-of-bounds write.

CONRound 2

While `len` is user-controlled, the structure pre-allocates a buffer of `MAX_PACKET_LEN` (8192 bytes). However, looking at the raw protocol handler in `packet_raw.c`, this wrapper bypasses the standard length checks if the client negotiates raw socket framing.

PRORound 3

Yes, negotiation of raw framing allows `len` to reach 4GB. Because the size check `if (len + header_len < max_buf_size)` wraps around to a small positive integer, `malloc` allocates a buffer too small for `memcpy`, which results in a classic heap overflow.

Verifier Logic Trace

[len: user_input] -> [len + 8: integer overflow] -> [size check: bypass] -> [malloc: undersized allocation] -> [memcpy: heap write out-of-bounds]
Pipeline Configuration
Model routing, sampling profile, and gate thresholds for this run.

Sampling Profile

Profile: ollama_gemma4

Temperature: 1.0

Top-K: 64

Top-P: 0.95

Gate Thresholds

max cost per accepted row: ∞ (uncapped)

max inconclusive in accepted rate: 0.2

max tokens per accepted row: ∞ (uncapped)

max unsupported in accepted rate: 0.05

min anchor match rate: 0.8

min verifier parse ok rate: 0

min verifier pass rate: 0