Skip to content

waza suggest deadlocks — goroutine panic on copilot SDK stdio transport #31

Description

@spboyer

Description

waza suggest deadlocks with a fatal goroutine panic when starting the copilot SDK client via stdio transport. The command is completely unusable.

Repro

waza suggest skills/my-skill --dry-run

Expected

Generates eval suggestions from SKILL.md

Actual

Fatal deadlock:

fatal error: all goroutines are asleep - deadlock!

goroutine 1 [select]:
github.com/github/copilot-sdk/go/internal/jsonrpc2.(*Client).Request(...)
github.com/github/copilot-sdk/go.(*Client).Ping(...)
github.com/github/copilot-sdk/go.(*Client).verifyProtocolVersion(...)
github.com/github/copilot-sdk/go.(*Client).Start(...)

Root Cause

The copilot SDK Start()verifyProtocolVersion()Ping() path hangs on the JSON-RPC select, never receiving a response from the copilot CLI server.

Additional Notes

  • Command returns exit code 0 despite the fatal error — should return non-zero
  • waza dev --copilot works fine with the same copilot binary, so the issue is specific to the suggest command path

Environment

  • waza v0.11.0
  • copilot-sdk/go v0.1.22
  • Alpine 3.19 container (Docker)
  • @github/copilot 0.0.417
  • GITHUB_TOKEN set and valid

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions