Skip to content

fix: make child tool, workspace and provider execution reliable #424

Description

@tt-a1i

Problem and requested behavior

Ordinary and Workflow children should be able to use parent-authorized tools, including shell/network tools, and operate in an explicitly selected working directory. A recent eight-way PR audit failed across three attempts: Cursor chat-only rejected tool calls; Codex children were stopped by OpenPI's extra 45-second progress watchdog; Seal returned account rate limits while the task/tool/cwd mismatch persisted. Private sessions and credentials are not published.

The user authorizes investigation and implementation in one PR, for review before merge.

Scope / acceptance

  • Built-in role defaults support parent-authorized child-safe tools. Custom allowlists and parent-only exclusions remain enforceable; Plan Mode cannot obtain write/shell authority through a child.
  • Ordinary and Workflow paths have tested explicit cross-directory operation, with target-project trust and correct worktree/replay/operator/cleanup identity.
  • Cursor maps supported advertised tools to Pi's native tool lifecycle and replays results; it must not execute Cursor-native tools outside Pi. Local protocol fixtures plus bounded real acceptance distinguish proven support from uncertainty.
  • Remove false 45-second child failures without weakening Pi transport error handling or bounded caller cancellation/disposal.
  • Inspect related observed hot paths; add focused regressions and executable evidence rather than unrelated refactoring.
  • bun run check, bun run test, independent reviews and required CI pass.
  • Submit one cohesive PR; do not merge or publish a release.

Related work

Repository investigation and design records will be linked from the delivery PR and this Issue.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions