Support running a process under the debugger and a PTY (terminal) simultaneously
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 189
- Forks
- 24
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 18
Description
## Summary
DCP cannot currently run a process under the debugger (`ExecutionType.IDE`) **and** attach it to a pseudo-terminal (PTY) at the same time. When a resource is launched under a PTY, traffic is bridged through a terminal-host bridge; routing the same resource to IDE/debugger execution bypasses that PTY wiring entirely, so the terminal never attaches.
## Aspire workaround
Aspire's `WithTerminal()` currently force-disables debugger/IDE execution for terminal-attached resources (they always run as a plain process) precisely because of this limitation. See microsoft/aspire#18308.
Specifically, `WithTerminal()` adds a disabled `SupportsDebuggingAnnotation` so the resource is never routed to `ExecutionType.IDE` inside a debug session.
## Ask
Add support in DCP for running a process under the debugger while it is also attached to a PTY. Once that ships, the Aspire workaround in `WithTerminal()` (and the supporting opt-out plumbing) can be removed so terminal-attached resources become debuggable again.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing DCP's terminal-host bridge and the routing for resources launched with ExecutionType.IDE, using the issue's PTY and debugger paths as entry points. Verify that a debugger-launched process remains attached to the PTY and that the terminal connection works alongside IDE execution; the Aspire WithTerminal workaround should no longer be needed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100