Skip to content

feat(repo): carry the failure record to MCP, MSP, SARIF and traces - #150

Merged
ryanleecode merged 1 commit into
diag-l4-reproduction-capsulefrom
diag-l5-failure-surfaces
Oct 2, 2026
Merged

ryanleecode merged 1 commit into
diag-l4-reproduction-capsulefrom
diag-l5-failure-surfaces

Conversation

@systemfsoftware-maker

@systemfsoftware-maker systemfsoftware-maker commented Oct 2, 2026 •

Copy link
Copy Markdown
Collaborator

Layer 5 (plan units U8-U11).

  • MSP: an engine failure answers JSON-RPC error.data = the record, and the server keeps serving.
  • MCP: rerun_mutant refuses with RerunEngineUnusable{code, record} through the typed error channel, and the new get_failure tool reads reports/mutation/failure.json.
  • SARIF: a failed run with the sarif reporter writes invocations[0].executionSuccessful: false with one notification per record.
  • Traces: tests pin stryker.failure.code on the run span and that the record's traceId equals the exported trace id.
  • Log noise: the "Possible causes" block appears only when an option is unknown, and the bundled parser's WASI ExperimentalWarning is dropped.

Residuals

  • P3 (review, not applied): mcp-server.cell.ts engineRefusalOf and Serve.cell.ts die with a defect when an engine failure classifies as something other than RunFailed. Today no engine path can produce that (the conclusion classifier only yields RunOk for help or success exits), so the die guards an impossible state. Convert it to an InvariantBroken record if that changes.

@systemfsoftware-maker
systemfsoftware-maker added this pull request to stack #152 October 2, 2026 01:45
@systemfsoftware-maker
systemfsoftware-maker force-pushed the diag-l5-failure-surfaces branch 2 times, most recently from b74aa35 to d0b223e Compare October 2, 2026 02:42
MSP answers engine failures with the record in error.data and keeps serving; MCP refuses reruns with the record and gains get_failure; a failed run with the sarif reporter writes a failed invocation per record; trace tests pin stryker.failure.code and the record's traceId; the run log drops the orphan possible-causes block and the bundled WASI warning

Verdict-Semantics: unchanged
@ryanleecode
ryanleecode removed this pull request from stack #152 October 2, 2026 17:36
@ryanleecode
ryanleecode added this pull request to stack #157 October 2, 2026 17:36
@ryanleecode
ryanleecode merged commit 15dde0b into feat/agent-ready-failure-diagnostics Oct 2, 2026
12 checks passed
@ryanleecode
ryanleecode deleted the diag-l5-failure-surfaces branch October 2, 2026 18:15

@ryanleecode ryanleecode left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed by the merge conductor as part of the diagnostics stack. CI green on this head except where noted in the stack summary (macOS timeouts on #151 are flaky: the same code is green on macOS in #155 and #156; the #156 stryker-js mutation shard times out until main records its first full-cost timing, as this PR's description says). Merging into feat/agent-ready-failure-diagnostics with a merge commit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants