Skip to content

fix(web): offer Stop while a v2 run is still starting - #13433

Closed
violetweather wants to merge 656 commits into
pingdotgg:t3code/codex-turn-mappingfrom
violetweather:fix/v2-stop-starting-run
Closed

violetweather wants to merge 656 commits into
pingdotgg:t3code/codex-turn-mappingfrom
violetweather:fix/v2-stop-starting-run

Conversation

@violetweather

Copy link
Copy Markdown

What Changed

The desktop/web composer now offers Stop for a run that is still preparing or starting, the same set threadRuntimeHasInterruptibleRun already uses on mobile. While such a run is active, Stop replaces the disabled send spinner. The thread.stop shortcut uses the same check.

queued is not included, since run.interrupt rejects it.

Why

Part 2 of #13392. derivePhase maps preparing/starting to "connecting", and Stop was only offered for "running". A run stuck in starting therefore had no way to stop it from the desktop, even though run.interrupt already settles such a run ("Run interrupted before provider start").

The server part of #13392 is a separate PR.

UI Changes

Reproduced with a stand-in pi binary that exits during the turn start, as described in the issue.

Before: a stuck starting run shows a disabled spinner and no Stop.

Before: run stuck starting

After: the same thread offers Stop.

After: Stop offered while starting

After pressing Stop: the run is interrupted before provider start and the thread is no longer working.

After: run interrupted before provider start

Checklist

  • This PR is small and focused
  • I explained what changed and why
  • I included before/after screenshots for any UI changes
  • I included a video for animation/interaction changes (not applicable)

Ran vp lint and vp fmt --check on the changed files, tsc --noEmit for apps/web, and the existing ComposerPrimaryActions and threadExecution tests. Mobile already offers Stop for these states.

Done with Claude Code (Claude Opus 5.5).

juliusmarminge and others added 30 commits September 23, 2026 20:58
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…8464)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…0051)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <julius0216@outlook.com>
juliusmarminge and others added 20 commits September 23, 2026 20:59
Keep main's recycled mobile list and per-row clock scoping alongside V2 runtime ownership, subagent filtering, and unread completion labels. Preserve provider compatibility diagnostics and shared PR badge controls while retaining V2 authentication actions and linked-PR tooltips. Port main's PR batching and settlement quota improvements into the V2 services.
…13311)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…erk bridge (#13204)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Julius Marminge <51714798+juliusmarminge@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…3347)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
A run stuck preparing or starting showed a disabled send spinner and no
Stop, even though run.interrupt settles such a run before its provider
turn begins.

Refs #13392
@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:S 10-29 changed lines (additions + deletions). labels Sep 24, 2026
@macroscopeapp

macroscopeapp Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 939f9bd

Macroscope's review found this PR approvable — This is a small, self-contained web UI bug fix that exposes the existing Stop action during supported preparing/starting states. It does not alter defaults, backend workflows, schemas, infrastructure, or static-analysis configuration.

You can add or adjust custom eligibility rules. Learn more.

@juliusmarminge
juliusmarminge force-pushed the t3code/codex-turn-mapping branch 3 times, most recently from fe4f6ad to 87c67bd Compare September 25, 2026 05:55
@violetweather
violetweather deleted the fix/v2-stop-starting-run branch September 27, 2026 00:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S 10-29 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.