#8100·ironclaw

Daily ironclaw failure taxonomy — 2026-09-14

Author: pranavraja99Created Sep 14, 2026Updated Sep 14, 2026

Daily ironclaw failure taxonomy — 2026-09-14

Suites analyzed

  • officeqa (43 non-pass) — This run's 43 non-pass tasks are almost entirely genuine model-quality errors: DeepSeek-V4-Flash navigates the OCR-digitized Treasury Bulletins with healthy, self-recovering trajectories (read/grep/shell all succeed) but extracts the wrong cell, picks the wrong year/row, or applies a wrong formula, so the final number falls outside the tight ±1% tolerance while nothing in ironclaw fails. Every 'Hard' capability signature is incidental to a model-error trajectory: budget/reservation events on self-recovered tool errors (resource/operation_failed), correctly-denied off-document external HTTP fetches the model should never have attempted since officeqa is document-grounded (OperationFailed 403, Network, InputEncode), and a self-recovered write_file read-before-edit guard (UID0129, whose real failure was a Python bug). The prior run's numeric-extraction category recurs and dominates; no harness defect drives any failure. The only genuine harness issue is cosmetic and confirmed live: http.rs:492 mislabels a denied HTTP request as InputEncode, which can misdirect model recovery but changes no verdict here. Caveat carried from the prior run and still unconfirmable from this bundle: a few ratio/geometric-mean goldens (e.g. UID0110 expected 0.69 vs the model's 2.74) look methodology-suspect and may warrant a separate bad_eval audit, but cannot be confirmed here, so they remain model.

ironclaw rev(s): b0b999d96781516ee05e6ba961d6f3ead900da96

Harness fix candidates (ranked by blast radius)

# Category Tasks Suites Confidence Files
1 HTTP request-denial surfaced to the model as InputEncode 1 officeqa:1 0.50 crates/kernel/ironclaw_host_runtime/src/first_party_tools/http.rs:492

1. HTTP request-denial surfaced to the model as InputEncode — 1 tasks

Root cause: In crates/kernel/ironclaw_host_runtime/src/first_party_tools/http.rs the http_error() mapping routes RuntimeHttpEgressReasonCode::RequestDenied to RuntimeDispatchErrorKind::InputEncode (http.rs:492). RequestDenied is the RuntimeHttpEgressError::Request variant (a rejected/denied request per ironclaw_host_api/src/http.rs:551), which is semantically a denial, not an encoding fault; the neighbouring reason codes already map to more accurate kinds (PolicyDenied, Network). Verified live against the checked-out tree.

Fix: Map RuntimeHttpEgressReasonCode::RequestDenied to a denial-semantics RuntimeDispatchErrorKind (e.g. PolicyDenied, or a dedicated request/authorization-denied kind if one exists in RuntimeDispatchErrorKind) instead of InputEncode, so the model-visible error reads as 'request denied' rather than an input-encoding failure. Keep the model-visible summary actionable (host/egress denied) so the model stops retrying with reformatted input. Add a first_party http contract test asserting a Request-variant egress error yields the denial kind, not InputEncode.

Files: crates/kernel/ironclaw_host_runtime/src/first_party_tools/http.rs:492

officeqa: UID0140

Per-suite breakdown (every task links to its trajectory)

officeqa (43 non-pass)


Generated by the bench-taxonomy workflow. Categories are dynamic — discovered from each run's failures and root-caused via codegraph/source.