Skip to content

fix(core): report missing shell workdir - #40542

Merged
rekram1-node merged 5 commits into
v2from
tool-error-output
Aug 5, 2026
Merged

fix(core): report missing shell workdir#40542
rekram1-node merged 5 commits into
v2from
tool-error-output

Conversation

@rekram1-node

@rekram1-node rekram1-node commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • translate the shell workdir NotFound failure where the shell tool understands its meaning
  • let the existing shell error boundary convert that error into ToolFailure
  • add a live regression test for a missing working directory

Before

NotFound: FileSystem.stat (/path/to/workdir)

After

Working directory does not exist: /path/to/workdir

This stays local to the shell tool. It does not introduce a generic platform-error formatter or change the shared session error policy.

Testing

  • bun typecheck in packages/core
  • bun test test/tool-shell.test.ts in packages/core
  • full core suite previously passed apart from one unrelated PTY timing flake, which passed immediately in isolation

@rekram1-node rekram1-node changed the title fix(core): hide platform errors from tool output fix(core): format platform errors for tools Aug 5, 2026
@rekram1-node rekram1-node changed the title fix(core): format platform errors for tools fix(core): clarify platform tool failures Aug 5, 2026
@rekram1-node rekram1-node changed the title fix(core): clarify platform tool failures fix(core): report missing shell workdir Aug 5, 2026
@rekram1-node
rekram1-node merged commit 330ef10 into v2 Aug 5, 2026
6 checks passed
@rekram1-node
rekram1-node deleted the tool-error-output branch August 5, 2026 01:56
github-actions Bot pushed a commit to ReStranger/opencode that referenced this pull request Aug 5, 2026
* upstream/v2: (28 commits)
  refactor(app): gate unsupported v2 capabilities (anomalyco#40381)
  fix(app): show active search details (anomalyco#40597)
  refactor(app): migrate supported v2 APIs (anomalyco#40378)
  fix(app): reconcile v2 session projections (anomalyco#40376)
  refactor(app): own rendering contracts (anomalyco#40375)
  fix(core): make xAI OAuth device-only (anomalyco#40538)
  test(app): migrate e2e fixtures to v2 (anomalyco#40374)
  fix(core): report missing shell workdir (anomalyco#40542)
  fix(ai): restore Responses tool input semantics (anomalyco#40553)
  fix(ai): classify malformed Responses tool calls (anomalyco#40549)
  feat(tui): streamline tab navigation shortcuts (anomalyco#40551)
  fix(ai): preserve Gemini tool finish semantics (anomalyco#40546)
  fix: retry empty incomplete streams (anomalyco#40535)
  fix(app): finish tool call ID rename (anomalyco#40539)
  refactor: rename tool call ID fields
  fix(client): wait for live service contenders (anomalyco#40515)
  chore(core): drop unreachable AI SDK provider packages (anomalyco#40504)
  fix(tui): update tab titles immediately (anomalyco#40318)
  fix(tui): show branch beside directory (anomalyco#40500)
  feat(vcs): publish branch updates (anomalyco#40371)
  ...
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.

1 participant