Skip to content

Interruptible Reasoning via Mode‑Switching Architecture #1028

@tamusjroyce

Description

@tamusjroyce

Describe the feature or problem you'd like to solve

Copilot’s current generation pipeline is non-interruptible. Once a request begins, the model cannot be paused or corrected mid-stream. The Stop button sends a soft cancel that does not reliably terminate hung requests, and canceling discards partial output. This prevents users from steering long-running reasoning tasks or injecting authoritative corrections when Copilot selects an incorrect branch: Feature Parody with WindSurf

Proposed solution

Summary

Copilot in VS Code currently uses a single-shot generation pipeline: once a request begins, the model cannot be paused, corrected, or redirected. The Stop button issues only a soft cancel, and canceling discards partial output. This limits developer control and prevents mid-stream correction when Copilot chooses the wrong reasoning branch.

A mode-switching architecture would allow Copilot to pause generation, accept user-injected information, merge it with cached partial output, and resume reasoning from the corrected context.


Goals

  1. Enable mid-stream user intervention
  2. Preserve partial output
  3. Support context merging
  4. Provide a reliable hard-kill path
  5. Improve responsiveness and developer control

Proposed Architecture

1. Pause Mode

When the user clicks Stop or begins typing during generation:

  • Copilot immediately pauses
  • Partial output is cached
  • UI enters a receptive "awaiting input" state

2. Context Pooling

When the user provides additional information, Copilot merges:

  • cached partial output
  • user correction
  • original prompt

3. Resume Mode

When the user clicks Continue:

  • Copilot resumes reasoning using the merged context
  • No need to restart the task
  • No repeated wrong-branch reasoning

4. Hard-Kill Option

A separate button that gives a true cancellation path that immediately terminates the running request, independent of backend state. Even if that cancellation is not possible on the server: in which case, keep additional prompt submissions disabled


Comparison Table

Capability Current Copilot With Mode-Switching Architecture
Pause generation No Yes
Inject mid-stream corrections No Yes
Merge partial output + user input No Yes
Resume reasoning from merged state No Yes
Hard-kill stuck requests Soft cancel only Yes

UX Mockup (Text Description)

  • User hits Stop -> generation halts instantly -> panel shows "Paused — awaiting input."
  • User pastes correction -> Copilot displays "Context updated."
  • User hits Continue -> Copilot resumes reasoning from the merged context, not from scratch.
  • Optional: typing during generation automatically triggers Pause Mode.

Example prompts or workflows

Expected Impact

  • More interactive and corrective workflows
  • Reduced frustration from stuck or incorrect generations
  • Better alignment with developer expectations for iterative reasoning
  • Improved parity with tools that already support this mode-switching architecture

Additional context

Closing Note

This request aims to bring Copilot closer to parity with tools that already support this style of mode-switching architecture, such as WindSurf, Devin, and Claude

This was formatted with https://copilot.microsoft.com/conversations/join/ZcC2kozFhmUWE8fG6jQBb

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions