Skip to content

test(coding-agent): lock in extension startup errors naming the extension and cause (#3807) - #3841

Merged
flora131 merged 3 commits into
mainfrom
fix/extension-startup-error-members
Oct 21, 2026
Merged

flora131 merged 3 commits into
mainfrom
fix/extension-startup-error-members

Conversation

@flora131

@flora131 flora131 commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Closes #3807

Summary

origin/main already fixes the reported behavior: commit 1edfc9255 replaced the bare AggregateError with ExtensionStartupError, whose message is Extension startup failed: <extension path>: <cause> and which has an enumerable failures list. This PR adds the missing regression coverage for the issue's scenario and attributes the existing changelog entry to #3807. No source behavior changes.

Changes

  • packages/coding-agent/test/extension-startup-failure-message.test.ts (new): a throwing session_start handler (cause Cannot read properties of undefined (reading 'fg')) is named in error.message, String(error), the JSON of failures, and errors; a second test checks two failing extensions in load order.
  • test/unit/workflow-stage-extension-startup-fallback.test.ts: (#3807) test checking the run error, stage error/failureMessage, and serialized journal entries.
  • packages/coding-agent/CHANGELOG.md: added the "Extension startup failed" hides the failing extension and cause — AggregateError members dropped from every surface #3807 link to the existing Unreleased entry.

Not covered

Verification

Assistant-workflow: issues-to-merged-prs (run 7286d4f0-78e1-431b-a798-87da91fc30fc)
Assistant-verification: regression fails before passed: reverting to the bare message fails the new tests (4 unit, 2 coding-agent)
Assistant-verification: vitest unit passed: 45 tests
Assistant-verification: vitest coding-agent passed: 184 tests
Assistant-verification: npm run check passed: biome, bun typecheck, shrinkwrap
Assistant-duration: 58m converged, estimated 2h
Assistant-verification: GitHub Actions CI passed: test (all platforms) on b023b67 (unit, integration, agent-suite, release-archive on linux-x64 and windows-x64; static-checks; CodeQL)
Assistant-verification: Greptile review passed: approved b023b67 with confidence 5/5 and no new comments
Co-authored-by: Norin Lavaee nlavaee@umich.edu

User-preference: loop each PR until CI is green and Greptile has no feedback, then merge

RetriggerView in GreptileConfidence Score: 5/5

No blocking issues identified in these test and changelog changes; the reviewed changes are safe to merge.

Summary

Adds regression tests for extension startup errors and links the existing changelog entry to #3807. No production behavior changes.

  • Tests pin extension names and causes in session and workflow failure reports.

Reviews (3) · Last reviewed commit: "test(coding-agent): type startup failure..." · Reviewed by Greptile

…sion and cause (#3807)

origin/main already builds ExtensionStartupError with the failing extension
path and cause in its message (1edfc92). Add regression tests for the
reported scenario: a session_start handler that throws names the extension and
cause on the SDK error, the stage and run errors, and the workflow journal.
Attribute the existing changelog entry to #3807.

Assistant-model: Claude Sonnet 5.5
Assistant-workflow: issues-to-merged-prs (run 7286d4f0-78e1-431b-a798-87da91fc30fc)
Assistant-verification: vitest unit passed: npx vitest --run --project unit test/unit/workflow-stage-extension-startup-fallback.test.ts test/unit/stage-runner-thrown-retry.test.ts test/unit/model-fallback-classifier-conformance.test.ts (45 tests)
Assistant-verification: vitest coding-agent passed: extension-startup-failure-message, sdk-builtin-parity, extension-reload-session-writes (184 tests)
Assistant-verification: regression fails before passed: restoring the bare "Extension startup failed" message fails the new #3807 tests (4 unit, 2 coding-agent)
Assistant-verification: npm run check passed: biome, bun typecheck, shrinkwrap
Co-authored-by: Norin Lavaee <nlavaee@umich.edu>
Comment thread packages/coding-agent/test/extension-startup-failure-message.test.ts Outdated
Comment thread packages/coding-agent/test/extension-startup-failure-message.test.ts Outdated
…ror tests (#3807)

Use .js specifiers for local imports and assert the concrete <inline:1>
and <inline:2> paths so wrong extension attribution fails the tests.

Assistant-model: Claude Opus 5.5
Assistant-workflow: issues-to-merged-prs (run 7286d4f0-78e1-431b-a798-87da91fc30fc)
Assistant-verification: vitest unit passed: npx vitest --run test/extension-startup-failure-message.test.ts (2 tests)
Assistant-verification: typecheck and lint passed: npm run check
Co-authored-by: Norin Lavaee <nlavaee@umich.edu>
Comment thread packages/coding-agent/test/extension-startup-failure-message.test.ts Outdated
…ror (#3807)

Assistant-model: Claude Opus 5.5
Assistant-workflow: issues-to-merged-prs (run 7286d4f0-78e1-431b-a798-87da91fc30fc)
Assistant-verification: vitest unit passed: npx vitest --run test/extension-startup-failure-message.test.ts
Assistant-verification: typecheck and lint passed: npm run check
Co-authored-by: Norin Lavaee <nlavaee@umich.edu>
@flora131
flora131 merged commit 9f97980 into main Oct 21, 2026
17 checks passed
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.

"Extension startup failed" hides the failing extension and cause — AggregateError members dropped from every surface

1 participant