DeepSWE · October 2026 · 30 tasks

DeepSWE task audit: 30 lowest-pass-rate tasks

6 of DeepSWE's 30 hardest tasks reject a correct solution.

Of DeepSWE's 30 lowest-pass-rate tasks, 6 reject correct or reasonable alternative implementations, each proven by running a minimally modified reference solution through the task's own verifier.

Sample: The 30 DeepSWE tasks with the lowest model pass rates (3–38%). Rates describe this sample, not the whole benchmark.

Pilot: rubric findings come from one reviewer, not a multi-reviewer vote.

Run deepswe-lowest30 Generated 2026-10-15T10:36:03+00:00 Judge anthropic/claude-opus-5-5 (medium effort) 30 tasks audited 0 not fully audited

Flagged (critical or major) 19 tasks Critical findings 8 (3 verified) Major findings 20 (3 verified)

Verified by execution

Each of these was reproduced by running a minimally modified reference solution through the task's own verifier. Other findings below have not been verified this way.

obsidian-linter-auto-table-of-contentscriticalVerified

Tests depend on names or interfaces the instruction doesn't specify

Reference solutionUnmodified, as shipped with the task
Verifier reward: 1
Modified reference, still correctReference solution with only the rule's display name changed from 'Auto Table of Contents' to 'Auto TOC'.
Verifier reward: 0
Failing tests and checks
41 of 1172 tests failed:
  - [f2p] Auto Table of Contents No TOC markers present — text is unchanged
  - [f2p] Auto Table of Contents Both markers present with empty TOC region generates TOC
  - [f2p] Auto Table of Contents Only start marker present — inserts TOC and adds end marker
  - [f2p] Auto Table of Contents End marker before start marker is ignored
  - [f2p] Auto Table of Contents Multiple marker pairs — only the first pair is updated
  - [f2p] Auto Table of Contents Updates existing TOC content between markers
  - [f2p] Auto Table of Contents Nested headings produce correct indentation
  - [f2p] Auto Table of Contents Numbered list style uses 1. prefix
  - [f2p] Auto Table of Contents Indent size option controls indentation per level
  - [f2p] Auto Table of Contents Bullet marker option controls the bullet character
  - [f2p] Auto Table of Contents Ordered list style increment uses increasing numbers
  - [f2p] Auto Table of Contents Explicit heading IDs are used as anchors when enabled
  - [f2p] Auto Table of Contents Explicit heading IDs are deduplicated when repeated
  - [f2p] Auto Table of Contents Strip formatting in TOC affects link text but not anchor generation
  - [f2p] Auto Table of Contents Exclude headings option can exclude headings by literal match
  ... and 26 more
41 of the failures are 'missing from report'; 41 of those tests actually ran and PASSED under a different name, so the grader rejected working code only because of the name.
prometheus-transactional-reload-statuscriticalVerified

Tests depend on names or interfaces the instruction doesn't specify

Reference solutionUnmodified, as shipped with the task
Verifier reward: 1
Modified reference, still correctReference solution reporting reloader_timings_ms as fractional milliseconds (float64, microsecond precision) instead of whole milliseconds.
Verifier reward: 0
Failing tests and checks
5 of 97 tests failed:
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestReloadStatusEndpointAndStateFile_BlackBox
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_ConcurrentReloadRequestsConverge
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_RollsBackOnPartialApplyFailure
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_Sequence_45ReloadAttemptsMaintainInvariants
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_SuccessfulReloadUpdatesStatusAndSuccessMetric
testem-bail-on-test-failurecriticalVerified

Tests depend on names or interfaces the instruction doesn't specify

Reference solutionUnmodified, as shipped with the task
Verifier reward: 1
Modified reference, still correctReference solution with only the warning text reworded ('Unrecognised value' instead of 'Invalid value'); same npmlog call and prefix.
Verifier reward: 0
Failing tests and checks
1 of 579 tests failed:
  - [f2p] bail_on_test_failure config validation invalid value produces a log warning
gql-incremental-graphql-deliverymajorVerified

Graded tests check behaviour the instruction doesn't ask for

Reference solutionUnmodified, as shipped with the task
Verifier reward: 1
Modified reference, still correctReference solution that accumulates .data in one dict updated in place (the three copy.deepcopy calls removed).
Verifier reward: 0
Failing tests and checks
1 of 828 tests failed:
  - [f2p] tests.test_incremental_delivery.TestDefer.test_deferred_fragments_arrive_after_initial_and_merge_correctly
happy-dom-deterministic-intersectionobservermajorVerified

A test silently requires re-polling geometry faster than 800 ms; the instruction never mentions polling

Reference solutionUnmodified, as shipped with the task
Verifier reward: 1
Modified reference, still correctReference solution with only the geometry polling interval changed from 16 ms to 1000 ms.
Verifier reward: 0
Failing tests and checks
1 of 23 tests failed:
  - [f2p] test/intersection-observer/IntersectionObserver.challenge.test.ts: IntersectionObserver > observe() > Detects threshold crossings in subsequent async delivery cycles.
onedump-dump-encryption-pipelinemajorVerified

Tests require placeholder key material to pass validation, which the instruction never states

Reference solutionUnmodified, as shipped with the task
Verifier reward: 1
Modified reference, still correctReference solution whose Validate() also checks that a literal key has the length of a base64-encoded 32-byte key (44 characters).
Verifier reward: 0
Failing tests and checks
7 of 88 tests failed:
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateCaseInsensitiveSource
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+envvar
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+keyfile
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+passphrase
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+salt
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateValidLiteral

Defect types

How many tasks each blocking problem appears in.

Defect and checkTasks
Tests depend on names or interfaces the instruction doesn't specifyrubric:hidden_interface_requirements critical 5
Correct alternative solutions are rejectedrubric:false_fail_risk critical 5
Graded tests check behaviour the instruction doesn't ask forrubric:f2p_tests_match_instruction major 9
The instruction is ambiguous or contradictoryrubric:instruction_clarity major 4
Existing tests forbid changes the instruction requiresrubric:p2p_tests_compatible major 3
The grading pipeline can mis-score a correct solutionrubric:grading_pipeline_soundness major 1
Incorrect or incomplete solutions can passrubric:false_pass_risk major 1

Tasks

criticaltask mis-scores agents or cannot runmajorlikely false fail / false passminorquality issueinfonote
effect-sse-httpapi-streaming Add SSE streaming endpoints to HttpApi · typescriptTests depend on names or interfaces the instruction doesn't specify 19% 1 critical · 0 major reviewer finding

Model pass rate 19%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 1 failed by a single reviewer: hidden_interface_requirements
  • Validationpassoracle=1 nop=0
critical Reviewer finding, not yet verified

Tests depend on names or interfaces the instruction doesn't specify

rubric · hidden_interface_requirements · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[Sti5Svh] - fromStream's output type is unstated but tested. The instruction gives only "fromStream(stream, encoder)". The f2p test "SSE stream helpers > fromStream converts a typed Stream to a Stream of Uint8Array SSE bytes" runs `Chunk.toArray(chunks).map((c) => new TextDecoder().decode(c))`. A reasonable fromStream that emits Stream<string> (the encoder itself returns strings) would make TextDecoder.decode throw, failing the test.
- toStream's decoder input type is unstated. The instruction gives only "toStream(response, decoder)". Every toStream test passes a decoder from makeUnionEventDecoder, which takes an SSEMessage. A toStream that passes the data string to its decoder (matching makeEventDecoder's "decodes a JSON string" signature) would hand a string to the union decoder and fail the four toStream tests.
- toStream's tests also pass a fake response `{ stream: byteChunks } as any` with no status. This silently requires that toStream read only `.stream` and do no status check of its own.
- toResponse's return shape is unstated. The instruction gives only "toResponse(stream, encoder)". The test reads `HttpApiSSE.toResponse(events, encoder).status` synchronously, so returning Effect<HttpServerResponse> fails.
All of these shapes are new in the reference (HttpApiSSE.ts is a new file).
obsidian-linter-auto-table-of-contents Add automatic table of contents generation for Obsidian linter · typescriptTests depend on names or interfaces the instruction doesn't specify 3% 1 critical · 0 major verified defect

Model pass rate 3%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 1 failed by a single reviewer: hidden_interface_requirements
  • Validationpassoracle=1 nop=0
  • Probepass1/1 probe(s) reproduced their finding by execution
critical Verified by execution

Tests depend on names or interfaces the instruction doesn't specify

rubric · hidden_interface_requirements · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Verified by execution
Reference solution with only the rule's display name changed from 'Auto Table of Contents' to 'Auto TOC'.
Verifier reward: 0
41 of 1172 tests failed:
  - [f2p] Auto Table of Contents No TOC markers present — text is unchanged
  - [f2p] Auto Table of Contents Both markers present with empty TOC region generates TOC
  - [f2p] Auto Table of Contents Only start marker present — inserts TOC and adds end marker
  - [f2p] Auto Table of Contents End marker before start marker is ignored
  - [f2p] Auto Table of Contents Multiple marker pairs — only the first pair is updated
  - [f2p] Auto Table of Contents Updates existing TOC content between markers
  - [f2p] Auto Table of Contents Nested headings produce correct indentation
  - [f2p] Auto Table of Contents Numbered list style uses 1. prefix
  - [f2p] Auto Table of Contents Indent size option controls indentation per level
  - [f2p] Auto Table of Contents Bullet marker option controls the bullet character
  - [f2p] Auto Table of Contents Ordered list style increment uses increasing numbers
  - [f2p] Auto Table of Contents Explicit heading IDs are used as anchors when enabled
  - [f2p] Auto Table of Contents Explicit heading IDs are deduplicated when repeated
  - [f2p] Auto Table of Contents Strip formatting in TOC affects link text but not anchor generation
  - [f2p] Auto Table of Contents Exclude headings option can exclude headings by literal match
  ... and 26 more
41 of the failures are 'missing from report'; 41 of those tests actually ran and PASSED under a different name, so the grader rejected working code only because of the name.
Evidence
[d3Udv2Q] - All 41 f2p ids in tests/config.json start with "Auto Table of Contents" (e.g. "Auto Table of Contents No TOC markers present — text is unchanged"), and grading matches by full test name (`"node_id": "name"`).
- That prefix does not come from the test file. tests/test.patch only calls `ruleTest({RuleBuilderClass: AutoToc, ...})`, and the suite title comes from the rule's display name. The reference sets that name in new locale entries: solution.patch adds `'auto-toc': { 'name': 'Auto Table of Contents', ...}` to src/lang/locale/en.ts and points to it with `nameKey: 'rules.auto-toc.name'`.
- instruction.md only names the module, the default export `AutoToc` and the options. It never gives the display name.
- Consequence: an agent that implements the behaviour perfectly but names the rule something reasonable like 'Auto TOC', 'Auto-TOC' or 'Table of Contents' gets every f2p id reported as "missing from report" and scores 0.
prometheus-transactional-reload-status Add transactional reload status and rollback tracking to Prometheus · typescriptTests depend on names or interfaces the instruction doesn't specify 23% 1 critical · 1 major verified defect

Model pass rate 23%

  • Staticpass19 checks, 1 with findings (0 blocking)
  • Rubricfail15 criteria, 4 failed by a single reviewer: metadata_accuracy, test_coverage_gaps, hidden_interface_requirements, grading_pipeline_soundness (2 minor)
  • Validationpassoracle=1 nop=0
  • Probepass1/1 probe(s) reproduced their finding by execution
critical Verified by execution

Tests depend on names or interfaces the instruction doesn't specify

rubric · hidden_interface_requirements · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Verified by execution
Reference solution reporting reloader_timings_ms as fractional milliseconds (float64, microsecond precision) instead of whole milliseconds.
Verifier reward: 0
5 of 97 tests failed:
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestReloadStatusEndpointAndStateFile_BlackBox
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_ConcurrentReloadRequestsConverge
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_RollsBackOnPartialApplyFailure
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_Sequence_45ReloadAttemptsMaintainInvariants
  - [f2p] github.com/prometheus/prometheus/cmd/prometheus.TestTransactionalConfigReload_SuccessfulReloadUpdatesStatusAndSuccessMetric
Evidence
[bKNqFKp] - reloader_timings_ms must hold integers. Both test structs declare `ReloaderTimingsMs map[string]int64` (reload_state_test.go `reloadStatusResponse`, transactional_reload_test.go `txnReloadStatus`) and decode the whole response with encoding/json. The instruction only says to 'include ... reloader_timings_ms'. A reasonable choice of fractional milliseconds (e.g. 0.42, natural because most reloaders take under 1ms) makes json decoding fail with 'cannot unmarshal number 0.42 into ... int64'. That breaks getReloadStatus/getTxnReloadStatus in TestReloadStatusEndpointAndStateFile_BlackBox, TestTransactionalConfigReload_SuccessfulReloadUpdatesStatusAndSuccessMetric, the 45-reload sequence test, and others. The reference uses `duration.Milliseconds()` (int64).
- The persisted last_reload_id must be the exact same string the endpoint returns. TestReloadStatusEndpointAndStateFile_BlackBox asserts `require.Equal(t, status.LastReloadID, raw["last_reload_id"])`. The instruction only says the file 'must include at least: last_reload_id' and fixes RFC3339 only for the HTTP response. An idiomatic Go version that stores a time.Time (which marshals as RFC3339Nano) and formats it as RFC3339 for the API would fail.
major Reviewer finding, not yet verified

The grading pipeline can mis-score a correct solution

rubric · grading_pipeline_soundness · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[bKNqFKp] test.patch adds many top-level helpers to package main in cmd/prometheus: triggerReload, waitUntilReady, getReloadStatus, getFeatures, getFlags and the type apiResponse in the olympus_new-tagged files, plus deterministicFreePort and startPrometheusWithRetry in the untagged reload_test.go. grader.py only removes or resets files whose paths test.patch touches. If an agent writes its own test file under a different name in cmd/prometheus (e.g. reload_status_test.go) and declares a helper with one of these common names, such as `func triggerReload(...)` or `func getReloadStatus(...)`, the package no longer compiles ('redeclared in this block'). test.sh drops build-fail events, every whitelisted id is then missing, and an otherwise correct solution scores 0. Patch collection (base commit = config base_commit) and CTRF suite.name id mapping are otherwise consistent.
minor Reviewer finding, not yet verified

Task metadata is inaccurate

rubric · metadata_accuracy · metadata

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[bKNqFKp] task.toml declares `language = "typescript"`, but the change and all tests are Go (cmd/prometheus/*.go, internal/txnreload/*.go, run with `go test`). [task].description is also empty.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[bKNqFKp] - The opt-in gating is never checked for reload behaviour. No test reloads without --enable-feature=transactional-reload-config and confirms there is no rollback and the old behaviour remains; only the /api/v1/features flag is checked.
- After a failed apply, nothing checks failed_reloader, the contents of applied_reloaders, rollback_successful, error_message or the contents of reloader_timings_ms. They are only checked for type or emptiness, or only in the before-first-reload case, so wrong values pass.
- rollback_error is never forced. Tests accept either apply_error or rollback_error, so the categories are never told apart.
- 'executes reloaders in sequence' (stop at the first failure) is not observable in any test.
minor

task.toml says language = "typescript" but tests run with go-ctrf-json-reporter

static · language_metadata · task.toml [metadata].language

Language-sliced results and leaderboards will mis-bucket this task.

Evidence
language=typescript; grade.tool_label=go-ctrf-json-reporter
python-statemachine-state-data-scoping Add scoped state data to state machine callbacks and history · pythonCorrect alternative solutions are rejected 36% 1 critical · 1 major reviewer finding

Model pass rate 36%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 3 failed by a single reviewer: false_fail_risk, false_pass_risk, test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
critical Reviewer finding, not yet verified

Correct alternative solutions are rejected

rubric · false_fail_risk · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[vrxu2TP] - TestCallableDefaults.test_callable_default_creates_fresh_instance_on_each_entry and TestDataVarSupport.test_datavar_factory_creates_fresh_list_on_each_entry store only `id(state_data["items"])` and then assert `captured_ids[0] != captured_ids[1]`.
- They do not keep the first list alive. The instruction says "On exit, data is removed", so a correct implementation drops the only reference to the first list when s1 is exited, and CPython may free it.
- CPython documents that objects whose lifetimes do not overlap may get the same id(). With list free-list reuse, the fresh list made on re-entry can land at the same address.
- So a correct implementation that creates a genuinely new list on each entry can still fail, depending on its allocation pattern (nothing else holding the old list). That makes the result implementation-dependent and possibly flaky.
major Reviewer finding, not yet verified

Incorrect or incomplete solutions can pass

rubric · false_pass_risk · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[vrxu2TP] - The verifier runs plain pytest in /app after applying model.patch. test.patch only adds tests/test_state_data.py and test.sh. It does not reset tests/conftest.py, and no new root conftest.py, pyproject.toml or pytest.ini is reset either.
- An agent could commit a conftest.py hook (e.g. pytest_runtest_makereport forcing outcome='passed') and get reward 1 without implementing anything.
- test.sh admits this itself: "Cheating signal (recorded only): ... conftest.py / sitecustomize.py / pytest.ini ... Any of these can hijack collection or reporting to fake a pass." The signal is only logged and never affects the reward.
- Apart from this, the f2p assertions are behavioural and would reject do-nothing or hard-coded solutions.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[vrxu2TP] - "Diagrams annotate state data variables" is not tested at all. No f2p test touches the diagram renderers.
- "Re-entering a state resets data to the original defaults" is only tested without history. The reference's _init_state_data restores a saved history snapshot whenever one exists, even on a normal (non-history) re-entry, and no test notices.
- "DataVar and DataChangeInfo are importable from the statemachine package": DataChangeInfo is never imported, and the state_id attribute of change records is never asserted.
- "Data is stored per instance, not on the shared State class" is never checked with two instances of the same machine.
- set_state_data type validation is only checked for a non-type value, not for a None value or a tuple of types.
quill-shared-toolbar-focus Reuse one toolbar across multiple Quill editors · typescriptTests depend on names or interfaces the instruction doesn't specify 33% 1 critical · 0 major reviewer finding

Model pass rate 33%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: hidden_interface_requirements, test_coverage_gaps (1 minor)
  • Validationerrornot run: this task's tests need headless Chromium, which crashes under x86 emulation on the Apple Silicon audit host (even the unchanged pre-existing tests ran 0 cases); re-validate on an x86 machine
critical Reviewer finding, not yet verified

Tests depend on names or interfaces the instruction doesn't specify

rubric · hidden_interface_requirements · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[rVYx4Rf] - Two f2p tests check a specific ARIA attribute on the picker label that the instruction never names. The reference solution adds this attribute as new code.
- 'Olympus disables shared controls when the active editor becomes read-only' asserts `expect(sizePickerLabel.getAttribute('aria-disabled')).toBe('true')`.
- 'Olympus restores shared controls after switching away from a read-only editor' asserts `getAttribute('aria-disabled')).toBe('false')`.
- The only matching instruction text is "picker UI must expose the same disabled state". It names no attribute and no value.
- The base Picker never sets aria-disabled. In solution.patch it is new: `label.setAttribute('aria-disabled', 'false');` in buildLabel and `this.label.setAttribute('aria-disabled', disabled.toString())` in a new setDisabled().
- Two reasonable implementations fail. One shows the disabled state the way Quill usually does, with a `ql-disabled` class on the picker or label (and blocks opening); it fails the first test. The other sets aria-disabled="true" when disabled and removes the attribute when re-enabled, which is a common pattern; it gets null instead of 'false' and fails the second test.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[rVYx4Rf] - "Button controls ... removed from a shared toolbar container ... avoid stale listeners" is tested only with the custom clean button. Built-in format buttons added later are never exercised, and neither is dynamic select handling.
- "Shared toolbar actions must do nothing until a remaining live editor becomes active" is tested only with the bold button. Pickers and the image/link handlers are never clicked after the active editor is removed.
- "Removing the active editor must not leave ... stale theme-managed UI" is never checked directly, e.g. whether the removed editor's tooltip still reacts to toolbar actions.
- The read-only case is tested via disable() only. The readOnly config option and enable() toggling while focus stays put are not exercised.
testem-bail-on-test-failure Add bail-on-test-failure handling to Testem · javascriptTests depend on names or interfaces the instruction doesn't specify 24% 1 critical · 0 major verified defect

Model pass rate 24%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: test_coverage_gaps, hidden_interface_requirements (1 minor)
  • Validationpassoracle=1 nop=0
  • Probepass1/1 probe(s) reproduced their finding by execution
critical Verified by execution

Tests depend on names or interfaces the instruction doesn't specify

rubric · hidden_interface_requirements · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Verified by execution
Reference solution with only the warning text reworded ('Unrecognised value' instead of 'Invalid value'); same npmlog call and prefix.
Verifier reward: 0
1 of 579 tests failed:
  - [f2p] bail_on_test_failure config validation invalid value produces a log warning
Evidence
[5kEETPM] - f2p test 'bail_on_test_failure config validation invalid value produces a log warning' (tests/bail_on_test_failure_tests.js) asserts `expect(warnStub.firstCall.args[1]).to.match(/invalid/i)`. The instruction only says invalid values 'log a warning via npmlog with bail_on_test_failure as prefix' and says nothing about the message text. A correct implementation such as log.warn('bail_on_test_failure', 'must be true, false or a positive integer; got "always", defaulting to false') would score 0. The other names the tests use are either spelled out in the instruction (abortRunners, resetBailState, broadcastAbort, resetAbort, handleAbortTests, Testem.aborted, getBailReport fields, the test-failure event) or appear to exist at the base commit (app.server, app.runners, server.io, runner.onTestResult/onProcessExit/onProcessError, Testem.emitMessageToIframe). I could not clone the repo to confirm the latter directly; this is inferred from how solution.patch uses them in its diff context.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[5kEETPM] - The core end-to-end behaviour, a real run stopping early when a test fails, is never checked. The test 'failure reported to Reporter triggers server broadcast and runner abort' wires things up itself ('// Wire the reporter to app the same way app.start does' / reporter.on('test-failure', ... app.abortRunners())). A solution that never connects the Reporter's test-failure event to app.abortRunners inside App would still pass.
- Validation is only partly checked: zero, negative and float values are only shown not to bail; only the string 'always' is checked for an npmlog warning, so a solution that warns only for strings would pass.
- 'Runner abort ... suppresses all subsequent results' is not checked for TapProcessTestRunner/ProcessTestRunner test results (only exit errors are), and TapProcessTestRunner's suppression of exit errors is only lightly exercised.
- Nothing checks that the app calls resetBailState at the start of each run.
updo-policy-alerting Add policy-based alerting for failures, latency, and SSL expiry · goCorrect alternative solutions are rejected 17% 1 critical · 1 major reviewer finding

Model pass rate 17%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 3 failed by a single reviewer: false_fail_risk, instruction_clarity, test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
  • Probepass0/1 probe(s) reproduced their finding (1 inconclusive)
critical Reviewer finding, not yet verified

Correct alternative solutions are rejected

rubric · false_fail_risk · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote. Execution probe inconclusive: with EventNone = "none" the test this finding cites (TestOutputManagerPrintResultOmitsEventWithoutAlertEvent) still passed; the reward dropped only because the change broke the reference's internal tracker logic.

Evidence
[cTa9qn6] - The instruction never gives a string value for `EventNone`; it only lists serialized values for the five real events.
- `simple/simple_test.go` TestOutputManagerPrintResultOmitsEventWithoutAlertEvent builds `AlertDecision: alerts.Decision{State: alerts.StateHealthy}`. That leaves Event at Go's zero value "", which is not a tracker-produced `EventNone`. It then asserts `!strings.Contains(text, "event=")`.
- Consider an implementation that follows the instruction: `const EventNone Event = "none"`, and PrintResult prints the event when `decision.Event != alerts.EventNone`. It treats "" as an event and prints ` event=`, so it scores 0, even though it never prints an event for a decision the tracker actually returned.
- The reference passes only because it happens to define `EventNone = ""`.
major Reviewer finding, not yet verified

The instruction is ambiguous or contradictory

rubric · instruction_clarity · instruction

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[cTa9qn6] - The instruction says "Each target supports `alert_policy`. `global.alert_policy` is inherited unless overridden." That supports two readings:
  - Whole-block: the global alert_policy table is used unless the target defines its own alert_policy table.
  - Per-field: each key is inherited unless the target sets that key.
- TestLoadConfigAlertPolicyInheritance accepts only the per-field reading. The "Override" target sets only `consecutive_failures = 4` and `latency_breach_count = 5`, and the test asserts `overridden.ConsecutiveRecoveries != 2` → fail and `overridden.SSLExpiryThresholdDays != 14` → fail.
- A whole-block implementation, which is the literal reading of the subject "global.alert_policy", gives ConsecutiveRecoveries=1 (the default) and SSL=0, so it scores 0.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[cTa9qn6] - TestTrackerNegativeSSLDaysDoesNotTriggerExpiry is in test.patch and is run by `-run 'TestTracker'`, but it is not in config.json f2p_node_ids. So "negative SSLDaysRemaining ... never triggers SSL expiry" is never graded.
- "Measure from the last non-suppressed non-recovery event": the reference updates LastEventAt after every non-suppressed event, recovery and healthy events included (`if decision.Event != EventNone && !decision.Suppressed { ... LastEventAt = now }`). That contradicts the instruction, and no test sends a non-recovery event after a recovery while the cooldown window is open.
- Nothing checks that the tracker is actually wired into the simple or TUI monitoring loops, or that desktop notifications use decisions. The output tests pass a pre-filled AlertDecision to PrintResult, so a solution that never calls Evaluate during monitoring still passes.
- Snapshot fields on EventNone decisions ("should match tracker state even when Event == EventNone") are only partly checked; for example, ConsecutiveFailures/Recoveries on non-event checks are never asserted.
vulture-persistent-analysis-cache Add a persistent analysis cache to Vulture · pythonCorrect alternative solutions are rejected 31% 1 critical · 2 major reviewer finding

Model pass rate 31%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 4 failed by a single reviewer: false_fail_risk, test_coverage_gaps, f2p_tests_match_instruction, p2p_tests_compatible (1 minor)
  • Validationpassoracle=1 nop=0
critical Reviewer finding, not yet verified

Correct alternative solutions are rejected

rubric · false_fail_risk · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[6G44Wh4] - Three f2p tests (test_cache_invalidation_on_runtime_signature_change, test_cache_invalidation_on_package_version_change, test_cache_invalidation_on_cache_version_change) change `sys.version`, `cache.importlib.metadata.version` and `cache.__version__` with monkeypatch inside the test process and expect a full rescan. A valid implementation that computes the runtime signature once per process fails all three. Examples: a module-level `RUNTIME_SIGNATURE = (...)` constant in vulture/cache.py, or an lru_cache'd helper. The signature cannot change within one real process, so this is a legitimate design. The instruction only says the signature 'consists of' these values; it never says they must be re-read on every scan.
- See also p2p_tests_compatible (cache keys added to config DEFAULTS) and f2p_tests_match_instruction (backup contents).
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[6G44Wh4] - test_cache_saves_backup_and_metadata_files asserts `second_backup_bytes == second_cache_bytes` after a second save. In other words, cache.json.bak must be byte-identical to the newly written cache.json. The instruction only says 'both a backup of the cache (`cache.json.bak`) and a metadata hash file ... must be written, even on the very first save'. A rotating backup is a standard reading of `.bak`: on each save the previous cache.json is kept as cache.json.bak as a last-known-good copy. The phrase 'even on the very first save' (when there is no previous cache) points toward that reading. A rotating-backup implementation has backup = first cache ≠ second cache, so this f2p test fails and the agent scores 0.
major Reviewer finding, not yet verified

Existing tests forbid changes the instruction requires

rubric · p2p_tests_compatible · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[6G44Wh4] - At the base commit, the p2p tests tests.test_config.test_config_merging, test_toml_config and test_toml_config_with_heterogenous_array build their expected config from exactly the nine existing keys and assert `result == expected` (tests/test_config.py:175, 91, 130). In vulture, the idiomatic way to add a CLI/pyproject option with a default (the instruction says `--cache-dir` defaults to `.vulture-cache/`) is to add it to `DEFAULTS` in vulture/config.py. `make_config` then fills in every DEFAULTS key with `config.setdefault`, so the result gains `cache`/`cache_dir`/`cache_clear` and all three p2p tests fail, giving reward 0. The reference avoids this only by an incidental choice: it keeps a separate `CACHE_DEFAULTS` dict that `make_config` never applies, and reads `config.get("cache", False)` in `main()`.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[6G44Wh4] - 'Whitelist file changes invalidate affected modules' is only tested with an explicit whitelist passed as a scan path (test_cache_with_explicit_whitelist_changes), which behaves like any other changed module. Invalidation when a bundled vulture/whitelists/*_whitelist.py file changes is never tested.
- 'KeyboardInterrupt ... saves the partial cache safely and then re-raises' is tested only for the module-scanning phase. No test interrupts during whitelist scanning or during the save itself.
awilix-async-container-initialization Add dependency-aware async initialization to the container · typescriptGraded tests check behaviour the instruction doesn't ask for 30% 0 critical · 2 major reviewer finding

Model pass rate 30%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: instruction_clarity, f2p_tests_match_instruction
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[kFmZbnx] - Two f2p tests require metrics.level to start at 0, which the instruction never says. 'Behavior 4 ... tracks initialization metrics' asserts `expect(result.metrics.fast.level).toBe(0)`. 'Behavior 4 ... validates metrics.level reflects dependency depth' asserts `expect(result.metrics.level0.level).toBe(0)`, `level1 ... toBe(1)` and `level2 ... toBe(2)`.
- The instruction only says services are organised into "levels", with "level N must complete before level N+1 begins". It shows `result.metrics.database.level` without saying where numbering starts. The 0-based choice comes from a reference doc comment ("0 = no dependencies") that the agent cannot see.
- An implementation that numbers levels from 1 is just as reasonable and correct on every behaviour, yet it fails both tests and scores 0.
- I sampled the other 22 f2p tests and each maps to a stated requirement.
major Reviewer finding, not yet verified

The instruction is ambiguous or contradictory

rubric · instruction_clarity · instruction

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[kFmZbnx] - The instruction leaves open which registrations scope.initialize() covers, and the test accepts only one answer. The instruction says only: "Scoped containers can be initialized independently; parent container's singletons are not reinitialized".
- Test 'Edge cases and integration allows scope.initialize() without calling parent.initialize() first' registers parentSingleton (with an initializer) on the root and 'scoped' on a scope. It calls scope.initialize() and asserts `expect(initOrder).toEqual(['scoped'])`. So the scope must ignore inherited parent registrations whose singletons have never been initialized.
- A second reading is just as natural: the scope initializes everything it can resolve, but does not re-run parent singletons that are already initialized (which is what "re-initialized" suggests). Under that reading, parentSingleton also runs and the test fails. This is the likely result if an implementation walks awilix's `container.registrations`, which already returns the scope's registrations merged with the parent's.
- The reference only looks at the scope's own registrations (`const localRegistrations = registrations`). Nothing in the instruction says this.
csstree-shorthand-expansion-compression Add shorthand expansion and compression to the lexer · javascriptGraded tests check behaviour the instruction doesn't ask for 34% 0 critical · 2 major reviewer finding

Model pass rate 34%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 3 failed by a single reviewer: instruction_clarity, test_coverage_gaps, f2p_tests_match_instruction (1 minor)
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[y7bkFj6] - The background f2p tests pin one textual form of an initial value. The instruction only says an omitted component "receives its CSS initial value". Yet 'Lexer#expandShorthand() background background: red', both multi-layer tests and 'expand/compress round-trip background' plus '(multi-layer)' require 'background-size': 'auto auto' (or 'auto auto, auto auto'). That is mdn-data's string. The CSS Backgrounds spec gives the initial value of background-size as 'auto'. An agent that fills in the spec's initial value 'auto' implements the instruction correctly but fails these 5 tests under deepStrictEqual/strictEqual, scoring 0.
major Reviewer finding, not yet verified

The instruction is ambiguous or contradictory

rubric · instruction_clarity · instruction

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[y7bkFj6] - The instruction says other shorthands "concatenate all longhand values in their canonical order", but it never defines that order for list-style. The test 'Lexer#compressShorthand() component compression list-style' requires 'square inside none' (type, position, image). The CSS Lists spec grammar orders them position, image, type, and MDN lists the longhands as image, position, type. Both readings are reasonable and give different strings (e.g. 'inside none square'), but strictEqual accepts only the reference's order (the mdn-data/csstree grammar order).
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[y7bkFj6] - CSS-wide keyword expansion is only tested for margin. A solution that handles keywords only for box-model shorthands would still pass.
- "Returns null ... when the value does not match the property's syntax" is only tested with margin: 'not-a-valid-value'. Invalid input for background, font, border-top etc. is never checked.
- Compression returning null for an incomplete longhand set is only tested for margin.
- "Must work with custom syntax created via fork()" is only checked by forking an unrelated custom-prop and expanding margin. A fork that redefines a shorthand's syntax is never tested.
- Some listed behaviours have no test: padding/inset 1- and 3-value cases, flex partial values, background-origin/clip with two box values, and font without line-height.
gql-incremental-graphql-delivery Add GraphQL incremental delivery with @defer and @stream · pythonGraded tests check behaviour the instruction doesn't ask for 4% 0 critical · 1 major verified defect

Model pass rate 4%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: test_coverage_gaps, f2p_tests_match_instruction (1 minor)
  • Validationpassoracle=1 nop=0
  • Probepass1/1 probe(s) reproduced their finding by execution
major Verified by execution

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Verified by execution
Reference solution that accumulates .data in one dict updated in place (the three copy.deepcopy calls removed).
Verifier reward: 0
1 of 828 tests failed:
  - [f2p] tests.test_incremental_delivery.TestDefer.test_deferred_fragments_arrive_after_initial_and_merge_correctly
Evidence
[NfYjRrZ] - TestDefer.test_errors_in_deferred_fragments asserts unstated semantics. It collects `errors.extend(r.errors)` over all results and then asserts `len(errors) == 2`, which only passes if .errors holds that payload's errors alone. The instruction says '.data dict is accumulated across payloads' and that '.extensions [is] from that specific payload, not accumulated', but says nothing about .errors. An implementation that accumulates errors the way it accumulates data (result 1: [E1], result 2: [E1, E2]) is consistent with the instruction, yet yields 3 and scores 0.
- TestSchemaIntegration.test_parse_result_with_execute_incremental requires execute_incremental to honour Client(parse_results=True) and return a datetime for a custom scalar (`assert isinstance(results[0].data['event']['createdAt'], datetime)`). The instruction never mentions schema-based result parsing for execute_incremental. An implementation that returns the server's JSON as described fails this test.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[NfYjRrZ] - The instruction says 'Handle non-incremental responses gracefully', but every HTTP test serves 'multipart/mixed; boundary=graphql', so a plain application/json response is never tested.
- TestUnsupportedTransport.test_execute_incremental_on_unsupported_transport_raises is in test.patch but is not an f2p id, so it never affects the score.
- The WebSocket test checks only merged data. It does not check per-payload .extensions or has_next over WebSocket. The reference actually injects hasNext and incremental into ExecutionResult.extensions (websockets_protocol.py), and nothing notices.
- The stated 'boundary=graphql, deferSpec=20220824' negotiation (the Accept header) is never checked, because the fixture server ignores request headers.
happy-dom-deterministic-intersectionobserver Implement a deterministic IntersectionObserver in Happy DOM · typescriptA test silently requires re-polling geometry faster than 800 ms; the instruction never mentions polling 31% 0 critical · 2 major verified defect

Model pass rate 31%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 3 failed by a single reviewer: false_fail_risk, test_coverage_gaps, f2p_tests_match_instruction (1 minor)
  • Validationpassoracle=1 nop=0
  • Probepass1/1 probe(s) reproduced their finding by execution
major Verified by execution

A test silently requires re-polling geometry faster than 800 ms; the instruction never mentions polling

rubric · false_fail_risk · verifier · severity set by analyst (reviewer said critical)

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Analyst note: The probe slowed the reference's geometry polling from 16 ms to 1000 ms and the test 'Detects threshold crossings in subsequent async delivery cycles' timed out. A slow poll alone is arguably just a slow implementation, so the defensible point is narrower: the test moves the target only by monkeypatching getBoundingClientRect (no DOM, scroll or resize event), so it can pass only if the observer re-polls geometry on its own timer within ~800 ms. The instruction says only "trigger new entries when a target crosses any threshold" and never mentions polling, so an event-driven observer (re-checking on scroll/resize/mutation) - a reasonable design for a DOM without layout - fails.

Verified by execution
Reference solution with only the geometry polling interval changed from 16 ms to 1000 ms.
Verifier reward: 0
1 of 23 tests failed:
  - [f2p] test/intersection-observer/IntersectionObserver.challenge.test.ts: IntersectionObserver > observe() > Detects threshold crossings in subsequent async delivery cycles.
Evidence
[kxQ6uJ7] - The test 'Detects threshold crossings in subsequent async delivery cycles' moves the target only by monkeypatching `element.getBoundingClientRect` (setRect). It then requires a second callback within CONDITION_TIMEOUT_MS = 800.
- Nothing in the DOM changes, so no mutation, scroll or resize event fires. The test can only pass if the observer re-polls geometry on its own timer, faster than about 800 ms.
- The instruction never mentions polling. It only says 'Trigger new entries when a target crosses any threshold'.
- A reasonable design rejected here: an engine that re-checks geometry on scroll/resize events or style mutations (Happy DOM has no layout engine). Another: one that polls on a slower interval. Either fails this f2p test, so the reward is 0. The reference polls every 16 ms (OBSERVER_POLL_INTERVAL_MS = 16).
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[kxQ6uJ7] - Several f2p tests require non-standard semantics that the instruction never states: every target is created with `document.createElement('div')` and never appended to the document or to the root.
- 'Delivers initial entries asynchronously' expects `isIntersecting` true and `intersectionRatio` 1 for a detached element.
- 'Detects threshold crossings in subsequent async delivery cycles' expects ratio 1 against a `root` that does not contain the target.
- The same applies to 'Applies pixel rootMargin values during intersection calculations' (expects isIntersecting true) and 'Returns ratio 1 for a zero-area target that is contained in root' (expects ratio 1).
- Under the W3C IntersectionObserver spec, a target that is not connected, or not a descendant of the root, is reported as not intersecting.
- The instruction says only 'Support root as null (viewport) or a root element'. It never says DOM containment or connectedness should be ignored.
- An engineer who follows the standard spec checks would fail at least 4 f2p tests. Only the reference's purely rectangle-based approach passes.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[kxQ6uJ7] - Requirement 6, '%' rootMargin units: only the normalised string ('10px 20% 10px 20%') is checked. No test checks that percentage margins actually change the intersection geometry.
- Requirement 10, the 'zero-area targets ... otherwise 0' half: only the contained case is tested.
- Requirement 12, 'disconnect() must ... clear pending records': the test calls takeRecords() only after the records were already delivered, so pending records are never actually exercised.
- Requirement 9 with multiple thresholds (number arrays during crossing detection) is not tested.
- unobserve() is tested only with a single target.
helm-array-merge-strategies Add configurable array merge strategies to Helm value coalescing · goExisting tests forbid changes the instruction requires 20% 0 critical · 1 major reviewer finding

Model pass rate 20%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: test_coverage_gaps, p2p_tests_compatible (1 minor)
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Existing tests forbid changes the instruction requires

rubric · p2p_tests_compatible · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[97w69AK] - The p2p tests TestHarness_Lint_MergeStrategy_ValidAnnotations (pkg/chart/v2/lint/rules) and TestHarness_Lint_V3_MergeStrategy_ValidAnnotations (internal/chart/v3/lint/rules) forbid behaviour the instruction requires. They lint a chart that annotates `tolerations` and `containers` but has no values.yaml, and they assert `assert.False(t, strings.Contains(msg.Err.Error(), "merge strategy"), ...)` for every lint message. The instruction says the lint rule "validates strategy paths against chart default values: warns if a path is not found (message contains \"not found\")". A chart with no values.yaml has no defaults, so a compliant implementation can reasonably warn here, e.g. `merge strategy path "tolerations" not found in chart default values` (the reference's own wording). That fails both p2p tests and scores 0. The reference avoids this only by an unstated choice: `validateMergeStrategyPaths` returns nil when `os.Stat(valuesPath)` fails.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[97w69AK] - Install CLI overrides are not checked for behaviour. TestHarness_Install_WithCLIMergeStrategy only asserts `res.Config["items"]` == ["user1"], which holds whether or not `Install.MergeStrategies` has any effect, so it only needs the field to exist.
- Global strategies are effectively untested. TestHarness_CoalesceValues_GlobalAppendStrategy passes through ordinary per-chart application of the `global.tags` path in the child's coalesceValues. The required behaviour ("The `global.` prefix is stripped before applying the strategy to the globals map") during coalesceGlobals is never exercised.
- "This applies to both stable and internal chart formats" for the accessor: only the v2 accessor's Annotations() is tested. The v3 accessor is not.
- The `MergeKeys` CLI override taking precedence over a chart's merge-key annotation for the same path is never tested. In TestHarness_Upgrade_CLIMergeStrategyOverridesAnnotation the chart has no merge-key annotation, so CLI precedence is only shown for the strategy itself.
- The empty-path lint warning and the dotted merge-key behaviour in lint are not exercised.
ink-grid-box-layout Add CSS Grid layout to the Box component · typescriptGraded tests check behaviour the instruction doesn't ask for 26% 0 critical · 1 major reviewer finding

Model pass rate 26%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: test_coverage_gaps, f2p_tests_match_instruction (1 minor)
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[Z2HFi4u] - 'grid - auto track sizing' renders `gridTemplateColumns="auto auto" width={40}` and asserts `t.is(line.indexOf('A bit longer text'), 5)`. That requires auto tracks to stay at content width and leave 18 columns unused. The instruction only says tracks support '`auto` sizing'. In CSS Grid (which these property names copy), auto tracks stretch to fill free space by default, so a CSS-faithful implementation puts the second column at 14 and fails.
- 'grid - auto placement skips occupied cells' (`<Box gridColumn={2}>Fixed</Box>` then Auto1, Auto2) asserts Auto1 at 0, Fixed at 10 and Auto2 at 20 on one line. 'grid - explicit child placement with gridColumn' (gridColumn={3} then gridColumn={1}) asserts both items on one line. Both pin the reference's rule that column-only items are placed before auto items and always go in row 1. CSS's default sparse placement gives different results (Fixed at 10, Auto1 at 20, Auto2 on row 2; First on row 2). The instruction says only that children 'can be explicitly placed using gridColumn and gridRow' and does not say how the row is chosen when only a column is given, so a CSS-compliant placement algorithm scores 0.
- The other 22 f2p tests (fr, fixed, minmax, gaps, spans, implicit rows, nesting) match stated requirements.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[Z2HFi4u] - The instruction says to 'Update the `display` style property to accept "grid"' (a TypeScript type change in styles.ts), but nothing enforces it: test.sh runs `npx tsc --noEmit 2>/dev/null || true` (advisory only), and AVA runs the .tsx tests without type-checking. A solution that never updates the Styles type still passes.
- Implicit rows created past an explicit gridTemplateRows are never tested, and neither is a grid container with padding or border.
kea-atomic-signal-selectors Add atomic signal selectors to Kea · typescriptGraded tests check behaviour the instruction doesn't ask for 36% 0 critical · 1 major reviewer finding

Model pass rate 36%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 1 failed by a single reviewer: f2p_tests_match_instruction
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[z3me7cw] - The f2p test 'stable identity across remounts' pins behaviour the instruction does not specify. It runs logic.mount(), reads userName, calls logic.unmount() and logic.mount(), reads userName again, then asserts `expect(logic.selectorHealth().selectors.userName.evaluations).toBe(1)`.
- The instruction only says identity should be 'stable ... (e.g., combining logic.pathString and the selector's local name) that persists through Kea's internal build-time function wrapping', and defines evaluations as 'Total number of times the selector's compute function has been invoked'.
- A rejected implementation: keep the metadata keyed by pathString:name across the rebuild, exactly as instructed, and count every compute. Kea rebuilds the logic on remount, so the new memoizer is cold and the selector computes once more. The total is then 2 and the test fails.
- The test only passes if metadata is wiped on unmount (contradicting 'persists') or if the cached lastValue is reused across a rebuild. The reference does the latter: `if (metadata.evaluations > 0 && !dirtySelectors.has(...) && shallowCompare(...)) return metadata.lastValue`. Nothing in the instruction says to do either.
- The other 11 f2p tests map cleanly to stated requirements.
onedump-dump-encryption-pipeline Add transparent encryption to dump uploads · goTests require placeholder key material to pass validation, which the instruction never states 37% 0 critical · 1 major verified defect

Model pass rate 37%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: false_fail_risk, test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
  • Probepass1/1 probe(s) reproduced their finding by execution
major Verified by execution

Tests require placeholder key material to pass validation, which the instruction never states

rubric · false_fail_risk · verifier · severity set by analyst (reviewer said critical)

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Analyst note: The probe made Validate() also check the literal key's length and the predicted tests failed. Extra validation alone could be called over-validation, so the defensible point is narrower: TestConfigValidateValidLiteral and TestConfigValidateCaseInsensitiveSource require Key "somekey" / "k" (not a usable 32-byte key) to pass Validate(), and the file-source cases require non-existent key files to pass. The instruction lists only what Validate must reject; it never says key material must be left unchecked, so a fail-fast implementation scores 0.

Verified by execution
Reference solution whose Validate() also checks that a literal key has the length of a base64-encoded 32-byte key (44 characters).
Verifier reward: 0
7 of 88 tests failed:
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateCaseInsensitiveSource
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+envvar
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+keyfile
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+passphrase
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateLiteralMutualExclusion/literal+salt
  - [f2p] github.com/liweiyi88/onedump/encryption.TestConfigValidateValidLiteral
Evidence
[VPXTj32] - Validate() tests require placeholder key material to pass validation. TestConfigValidateValidLiteral expects `Config{Enabled: true, KeySource: "literal", Key: "somekey"}.Validate()` to return no error, and TestConfigValidateCaseInsensitiveSource expects the same for `Key: "k"`. Neither value is valid base64 for a 32-byte key.
- TestConfigValidateValidFile and the 'File' case expect `KeyFile: "<local path>"` / `"<local path>"` to validate even though those files do not exist.
- The instruction only says what Validate must reject (empty/unsupported source, missing source fields, 'mutually exclusive' fields). It never says Validate must not check the key itself.
- A competent engineer who also makes Validate() check that a literal key decodes to 32 bytes, or that the key file exists (a reasonable fail-fast choice), fails 2-3 f2p tests and scores 0.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[VPXTj32] - The core goal is untested: dumps must actually be encrypted on upload. The instruction asks to 'Integrate encryption into the handler's storageReadWriteCloser pipeline', and the reference also passes `job.Encrypted()` to EnsureFileName in save(). The only handler-level test, TestHandlerEncryptionKeyMissing, sets `job.Storage.Local = nil` and checks only the key-load error. TestPipelineRoundTrip calls storageReadWriteCloser directly. A solution that loads the key in save() but still calls storageReadWriteCloser with nil, or never adds .enc to uploaded filenames, passes every test.
- 'Export Job's validate method ... it must run encryption config validation' is checked only by the Job.Validate() call in TestJobValidationWithEncryption. Whether Dump.Validate still applies job validation is not exercised by any f2p test.
- 'Two encryptions ... must differ' is tested, but 'each chunk uses unique nonce' is only checked within a single stream (fine), and the TrimSpace behaviour for file keys is checked only with a trailing newline.
pest-character-class-coalescing Coalesce qualifying choices into character classes · rustGraded tests check behaviour the instruction doesn't ask for 21% 0 critical · 2 major reviewer finding

Model pass rate 21%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 3 failed by a single reviewer: test_coverage_gaps, f2p_tests_match_instruction, p2p_tests_compatible (1 minor)
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[mtXKV5q] - partial_single_non_qualifying_between_runs checks the chain 'a'|'b'|'c'|rule|'d'|'e' and expects Choice(Range(a,c), Choice(Ident(rule), Range("d","e"))). The instruction says 'When only some qualify, contiguous runs of three or more qualifying alternatives are coalesced'. The trailing run 'd'|'e' has only two alternatives, so a faithful implementation leaves it as Choice(Str d, Str e) and fails.
- The expected value is an accident of the reference implementation. The reference processes the flattened chain, leaves the 2-run alone, then map_top_down descends into the leftover inner node Choice('d','e') and fully coalesces it as a separate chain. The result depends on position: a leading 2-run stays a Choice (partial_run_of_two_not_coalesced), but a trailing one is merged.
- Any implementation that applies the threshold once per chain, as the instruction states, scores 0 on this test and so gets reward 0.
- I sampled about 30 other f2p tests (benefit rule, Insens expansion, sorting, NegCharClass, nesting); they match the instruction.
major Reviewer finding, not yet verified

Existing tests forbid changes the instruction requires

rubric · p2p_tests_compatible · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[mtXKV5q] - Two p2p tests check the pre-change output, which the required coalescing necessarily changes. The reference passes them only because solution.patch also rewrites their expectations.
- 'pest_meta: optimizer::tests::rotate' expects Choice(a, Choice(b, Choice(c, d))) at base. Under the instruction, 'a'|'b'|'c'|'d' must become Range(a,d), and solution.patch changes that test to `expr: Range(String::from("a"), String::from("d"))`.
- 'pest_grammars: tests::sql_parse_attempts_error' at base expects the token list `` `А..Я`, `а..я` ``. Merging adjacent ranges must fuse them, and solution.patch changes grammars/src/lib.rs to `` `А..я` ``. The exact string also depends on how the agent's generator emits CharClass.
- The instruction never says existing tests must be updated. An agent that implements coalescing correctly but leaves these in-repo tests untouched fails two p2p tests and gets reward 0. Only agents that find and rewrite these assertions themselves, matching their own generator's output, pass.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[mtXKV5q] - RestoreOnErr requirement is effectively untested. The instruction says 'A RestoreOnErr-wrapped alternative qualifies when its inner expression qualifies; its wrapper is stripped from the coalesced result'. The restorer only wraps alternatives that change the stack (Push), so no test ever builds a RestoreOnErr around a single-character alternative. The tests named after this rule (restorer_wrapped_alternatives_stripped_when_coalesced, restore_stripped_both_sides_of_push, restore_on_err_stripped_from_qualifying_alternatives) pass with or without the unwrapping logic.
- The 'Case-insensitive alphabetic characters expand' rule is tested only with ASCII letters, so how non-ASCII Insens characters expand is never checked.
- No f2p test checks that generated parsers (pest_generator) or the VM actually match CharClass/NegCharClass correctly. Only compiling, plus incidental p2p grammar tests, exercises that code.
sqlfmt-create-table-ddl-formatting Format CREATE TABLE DDL and add DDL parsing helpers · pythonGraded tests check behaviour the instruction doesn't ask for 20% 0 critical · 1 major reviewer finding

Model pass rate 20%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: test_coverage_gaps, f2p_tests_match_instruction (1 minor)
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

Graded tests check behaviour the instruction doesn't ask for

rubric · f2p_tests_match_instruction · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[WiGR8RL] - f2p tests TestCreateTableFixtureRoundTrip.test_unformatted_reaches_preformatted[201] and [203] require exact output that contradicts normal sqlfmt behaviour, and the instruction never asks for it. Unformatted 201 has `CHECK (status IN('active','inactive'))`, but preformatted/201_create_table_comprehensive.sql expects `check (status in('active', 'inactive'))`. Fixture 203 likewise expects `check (operation in('insert', 'update', 'delete'))`, with no space between `in` and `(`.
- At the base commit sqlfmt formats `status IN('active','inactive')` as `status in ('active', 'inactive')`, because IN is a word operator. The instruction's no-space rule (requirement 3) covers only 'any name (type name, function name, or table name in a REFERENCES clause) immediately followed by ('. IN is none of these, and nothing in the instruction says CHECK expressions should be formatted differently from ordinary SQL.
- The `in(` output is a side effect of the reference: rules/ddl.py lexes the CREATE TABLE body with CORE only, which lacks the word_operator rule, so `in` becomes a NAME token. I confirmed the reference even turns a spaced `in ('x','y')` into `in('x', 'y')`.
- Consequence: an engineer who keeps sqlfmt's standard operator spacing inside CHECK expressions fails 2 of the 32 f2p tests and gets reward 0.
- The other 30 f2p tests I checked (structure, semicolon, IF NOT EXISTS, constraints on their own lines, lowercasing, all the DdlUtilities tests) map to stated requirements.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[WiGR8RL] - OPTIONS(...) handling (requirement 6) has no f2p test. test_options_clause_at_depth_0 and test_options_with_partition_by_on_separate_lines are p2p and feed already-formatted input, which the unmodified base already leaves unchanged; no unformatted OPTIONS input is formatted anywhere.
- The line-length constraint is checked only by p2p tests whose input is already within the limit (test_normal_columns_within_line_length, test_long_column_definition_not_truncated). No test checks that an over-long non-column line actually gets split, or what happens to an over-long table constraint.
- 'CREATE TABLE AS SELECT and CREATE TABLE ... LIKE ... must pass through unchanged' is covered only by p2p tests that pass trivially at base. That is acceptable as a regression guard but proves nothing about the new code.
- has_inline_constraint for REFERENCES, CONSTRAINT and CHECK, and type_name termination at those keywords, are not tested through parse_ddl_table; only NOT NULL and DEFAULT are.
superjson-error-stack-serialization Add error stack serialization to SuperJSON · typescriptThe instruction is ambiguous or contradictory 36% 0 critical · 1 major reviewer finding

Model pass rate 36%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricfail15 criteria, 2 failed by a single reviewer: instruction_clarity, test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
major Reviewer finding, not yet verified

The instruction is ambiguous or contradictory

rubric · instruction_clarity · instruction

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[Ss44wqk] - The instruction contradicts itself on sanitizing causes. It says "`classFilter` restricts stack processing and sanitization to errors with matching `.name`", but also says sanitizeMessage applies "to the error's own message and to every kept cause message". One reading: every kept cause of a matched error is sanitized. The other: each cause is checked against classFilter on its own.
- The f2p test "sanitizeMessage is NOT applied to cause errors that fail classFilter" accepts only the second reading. It uses classFilter ['TypeError'] with a plain Error cause and expects `cause.message` to stay 'inner https://api.example.com'.
- Consequence: an agent that takes "every kept cause message" literally and sanitizes all kept causes of a matched error fails that test and scores 0.
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[Ss44wqk] - "`deep` keeps causes recursively up to `maxCauseDepth`": no test truncates at an explicit positive value. Tests only use maxCauseDepth 0, 5/10 with chains shorter than the limit, and the default 16. An implementation that ignores any explicit value other than 0 and always uses 16 would pass.
- The hook payload "plus any of `stack`, `stackFrames`, `cause`, `errors`": no test checks that a registered processor receives `errors` for an AggregateError or `stackFrames` in frames mode.
- `redactPaths=strip_cwd` is tested only in string mode, not frames mode.
bandit-structured-nosec-directives Add structured nosec directives for regions and next line · python 7% 0 critical · 0 major pass

Model pass rate 7%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[qxsykzf] - The instruction says auto-end is 'based on leading whitespace of the line, not the column position of the directive itself'. No test puts a mid-line begin directive on an indented line (test_079 is at column 0), so an implementation that uses the comment's column is never caught.
- Skipping semicolon-only lines for nosec-next-line is effectively untested. The only test, test_078, uses "\n;subprocess.Popen(...)", which is a Python SyntaxError, so Bandit reports nothing and the test always passes. It is also listed as p2p, not f2p.
- 'Extra text after nosec-end is ignored' (test_039, '# nosec-end B602') expects no findings, but the region already suppresses the only finding, so any handling of the trailing text passes.
- The parse-error fallback is only checked in the direction that more suppression passes; an implementation that turns parse errors into a blanket suppression would also pass test_116.
katex-multicolumn-array-spans Add `\multicolumn` column spans to array-like environments · javascript 38% 0 critical · 0 major pass

Model pass rate 38%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[dUi8dX4] - HTML spanning layout and the alignment override in HTML are never checked. The only HTML assertions are relative `vertical-separator` counts and that '(' or '[' appear. A solution that renders the \multicolumn cell as an ordinary single-column cell in HTML, or ignores its alignment there, would still pass, even though the instruction says the span 'overrides the column's declared alignment'.
- The instruction allows 'optional | for vertical rules' in the alignment argument, but no test checks that these rules are drawn. Tests with `{|c|}` only check MathML columnspan. The reference parses hasLeftRule/hasRightRule and never renders them, a sign nobody checked this.
- Validation of 'exceeds remaining columns' is tested only for `array` with an explicit column spec, never for matrix, cases or aligned.
- Suppressing separators in only some rows ('per-row basis') is checked only by comparing total separator counts, which says little about rendering correctness.
kombu-virtual-queue-dead-lettering Add dead-lettering, TTL, and overflow handling to virtual queues · python 35% 0 critical · 0 major pass

Model pass rate 35%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[NGavBeA] - Cycle detection ('Cycle detection prevents a message visiting the same queue twice') is effectively unchecked. test_cycle_detection asserts only `count <= 1`, and a single dead_letter call re-puts the message at most once even with no cycle detection, so an implementation without it still passes.
- 'Missing DLX exchange: silently dropped' and 'No DLX: silently discarded' are checked only by the absence of an exception (test_dlx_exchange_not_exist_silently_drops, test_no_dlx_silently_discards). Wrongly routing the message elsewhere would go unnoticed.
- 'QoS.reject(..., requeue=True) restores normally' (test_reject_requeue_does_not_dead_letter) is not in the f2p list.
- Per-message expiration precedence is checked only by `remaining < 2.0`.
koota-deferred-mutation-buffer Add a deferred mutation buffer to batch entity changes · typescript 35% 0 critical · 0 major pass

Model pass rate 35%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[neYWNKD] - The instruction lists 'non-deferred mutation on an entity with pending commands' as an execution trigger, but no test can tell whether it happens. The only test for it, 'should auto-flush when non-deferred operation is attempted on entity with pending commands', checks just `entity.has(Velocity)` and `entity.has(Health)`. Read-through projection already makes those true without any flush, so an implementation that never auto-flushes still passes.
- 'should allow explicit flush of deferred commands' has the same weakness: it only checks has() before and after flush(), which projection satisfies either way. Other tests do cover flush() indirectly through events and query lengths.
koota-pair-relation-tracking Add pair-level relation tracking modifiers · typescript 24% 0 critical · 0 major pass

Model pass rate 24%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[imDM8tn] - 'Query result iteration resolves per-target relation data for pair-tracked traits' is only checked through readEach. No test checks that updateEach gives per-target data or writes mutations back to the specific pair, even though the reference adds commitPairData for this; an agent could skip updateEach entirely.
- The test 'should not fire pair-level Changed when updateEach modifies a non-pair-tracked trait' calls updateEach on `Changed(Likes(alice)), Position` right after that tracking state was cleared. The result set is empty, the callback never runs, and the test passes vacuously.
- 'Pair modifiers compose with `Or`' is only tested with Added. Removed/Changed pair modifiers inside Or are not tested, and neither is wildcard Removed for a non-last pair.
koota-query-predicates Add value-based query predicates to Koota · typescript 31% 0 critical · 0 major pass

Model pass rate 31%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[PgDkwGW] - 'Dependency changes during updateEach defer re-evaluation until iteration ends' is only weakly checked. The test named 'should defer predicate re-evaluation during updateEach until iteration ends' asserts only `world.query(HighHealth).length` after the updateEach loop has finished. Immediate re-evaluation would produce the same final state, so this test cannot tell the two apart. The only other test of this requirement is 'should not re-evaluate predicates mid-updateEach iteration' (visited.length === 2), and it detects missing deferral only if updateEach iterates a live entity array rather than a copy. I could not confirm which from the task files.
- No test covers `add` of a trait the entity already has, or updateEach with changeDetection 'never'.
oxvg-structural-selector-preservation Preserve structure needed by stylesheet selectors · rust 25% 0 critical · 0 major pass

Model pass rate 25%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[vMbdxGK] - The instruction says 'Protection should apply only where the full selector relationship is implicated, not merely where one piece of that selector appears nearby.' No test has a group that matches one compound of a structural selector while the full relationship does not hold (e.g. `g.keep > rect` where g.keep contains no rect). The reference does not implement this either: selector_branch_implicates_element returns true if ANY compound matches the element, so 'one piece nearby' is exactly what it protects.
- The instruction says implication 'must be determined from the structure and selector anchors that exist before the rewrite'. No test checks this: there is no case where an earlier flatten erases the evidence for a later decision.
- Only the descendant, child and adjacent-sibling combinators are tested. General sibling (~), structural pseudo-classes (:first-child, :nth-child, :empty), :is()/:where(), and rules nested in @media are never exercised, so a partial selector analysis would still pass.
participle-grammar-conflict-analysis Add build-time grammar conflict analysis to participle · go 36% 0 critical · 0 major pass

Model pass rate 36%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[usqVSgN] - "Negation nodes produce no conflicts" is not really tested. The only negation test, TestAnalyzeNegationDoesNotCauseConflict, uses `!"reserved" @Ident`, which has no disjunction and no optional group, so it reports zero conflicts even if negation subtrees are analysed like any other node. A grammar such as `!(@Ident | @Ident)` would be needed to catch this.
- The dedup tests only use two-alternative grammars. The reference itself emits pairwise first/first conflicts that all share the same Location and whole-disjunction GrammarSnippet. For three or more overlapping alternatives, its own Analyze output therefore contains entries with the same dedup key, which Dedup/Merge would collapse. No test checks that Analyze output is consistent with the dedup key on larger disjunctions.
- "Independent of SuppressConflictType" for StrictMode is checked only by building with StrictMode alone (TestAnalyzeStrictModeWithSuppressStillFails passes no suppress option).
termenv-preserve-ansi-resets Preserve ANSI resets during truncation and styling · go 12% 0 critical · 0 major pass

Model pass rate 12%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 1 failed by a single reviewer: test_coverage_gaps (1 minor)
  • Validationpassoracle=1 nop=0
minor Reviewer finding, not yet verified

Stated requirements are not tested

rubric · test_coverage_gaps · verifier

Single-reviewer finding: one reviewer agent flagged this; it has not been through a multi-reviewer vote.

Evidence
[jHUUtyD] - The instruction says CSI/OSC sequences 'have zero visible width', but nothing tests non-SGR CSI (e.g. ESC[2J) or non-OSC8 OSC sequences. The reference parser.go classifies them as TokenText with Text=raw, so StripANSI keeps them and ANSIWidth counts their printable bytes, and no test notices.
- 'Under Ascii ... Output.Truncate returns text with tail; no ANSI emitted' is only tested with plain input ("abcdef"). The reference Output.Truncate never checks the profile and would pass ANSI input through unchanged, and no test notices.
- 'Output.TemplateFuncs() propagates the default to all template helpers' is only checked for Bold. Color, Foreground, Background, Truncate and truncate are not checked under preserve-resets.
- The Ascii template path is untested: the reference's noopTemplateFuncs does not define Truncate/truncate.
meriyah-explicit-resource-declarations Add explicit resource management declarations to the parser · typescript 22% 0 critical · 0 major pass

Model pass rate 22%

  • Staticpass19 checks, 0 with findings (0 blocking)
  • Rubricpass15 criteria, 0 failed by a single reviewer
  • Validationpassoracle=1 nop=0

No findings.

How tasks were audited

Rubric review: single reviewer per task (pilot). Rubric findings are one reviewer agent's judgement, not a multi-reviewer vote.

  1. Static checks

    Deterministic checks on the task files: required files, task.toml limits, answer leakage into the agent image, Docker build context, verifier network installs, grader config consistency, plus the benchmark's own CI checks where it ships them.

  2. Rubric review

    A reviewer agent reads every task file in a sandbox (`harbor check`) and judges it against a credibility rubric: hidden requirements, false-fail and false-pass risk, reference-solution validity, answer isolation, reproducibility.

    Full description

    A reviewer agent reads every task file in a sandbox (`harbor check`) and judges it against a credibility rubric: hidden requirements, false-fail and false-pass risk, reference-solution validity, answer isolation, reproducibility. When several reviewers are configured, a criterion fails only when enough of them agree.

  3. Oracle / no-op validation

    The task is executed twice through Harbor: with the reference solution (must score 1) and with an agent that does nothing (must score 0).

  4. Execution probes

    Where a finding predicts a false fail, a minimally modified reference solution that embodies the alternative (still correct) implementation is run through the task's own verifier.

    Full description

    Where a finding predicts a false fail, a minimally modified reference solution that embodies the alternative (still correct) implementation is run through the task's own verifier. Findings reproduced this way are marked Verified by execution.

Want this run on your tasks?

The same audit, on your benchmark or training environments.

Book a 20-minute call