Skip to content

2026.10.11: no-response timeout and abort, core v0.67.0 - #301

Merged
fylorn merged 3 commits into
devfrom
feat/idle-timeout-abort
Oct 9, 2026
Merged

fylorn merged 3 commits into
devfrom
feat/idle-timeout-abort

Conversation

@fylorn

@fylorn fylorn commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Version 2026.10.11, pinned to core v0.67.0 (control-plane protocol 43). Release notes: release-notes/2026.10.11.md; this release also ships #299 (models added by hand in the upstream dialog) and #300 (capped name columns in Traffic), already on dev.

No-response timeout and abort (ThinkWatch-Core#303)

  • Settings › Failover: No-response timeout (30–3600 s, default 300 shown explicitly) replaces the start-wait row and the "move on when the start times out" switch; explicit Save/Discard as the other sections.
  • Traffic: Abort request in a running request's row menu (not offered for WebSocket turns); Abort session in the session group menu and the session panel, behind a confirm with pending state (AbortRequest / AbortSession on both allow-lists).
  • Request drawer and attempt chain: Aborted (grey) and No response · N s with core's sentence on hover; Chinese for the five new codes, removed codes deleted from core.zh.json; screenshot mock and harness updated.

Core v0.67.0 also brings Codex through converted routes (tools in additional_tools, every history item, compaction, developer messages in place — #304, #305), automatic prompt-cache breakpoints for Claude (#306) and the ChatGPT device-code fix (#302). Upgrade: request history is cleared (schema 26); configs with failover.next_on_slow_start / stream_start_wait_secs start in safe mode until repaired.

Release: version 2026.10.11 in the four files; core crates pinned to tag = "v0.67.0" (source strings and version lines only; cargo metadata --locked passes); tw-api.ts regenerated from the tag (no change).

Checks: pnpm typecheck, pnpm test (965), pnpm build, release notes test; cargo fmt --check, cargo clippy --all-targets -D warnings, cargo test (901, control plane against twcore 0.67.0). Upgrade check: a config written by twcore init 0.66.0 and a copy of a real config both pass twcore check 0.67.0.

🤖 Generated with Claude Code

fylorn and others added 3 commits October 9, 2026 21:06
…ponse timeout (core protocol 43)

Core now gives up on an upstream that sends no content for
`failover.idle_timeout_secs` (default 300) and can abort running requests
(ThinkWatch-Core#303). This pins the six core crates to that PR's head
until it is tagged.

- Traffic: a running request's row menu gets "Abort request" (not for
  WebSocket turns, which core cannot abort on their own). A session with
  running requests gets "Abort session" in its panel header and in its
  group row menu, behind a confirmation that shows a failure in place.
  Aborted requests read "Aborted" in grey (not a fault), in the table and
  the drawer.
- Request drawer: the attempt chain labels `idle_timeout` as "No response
  · 300 s" (core's sentence on hover) and `aborted` in grey; a request that
  failed on the timeout reads "No response". An idle timeout now counts as
  an upstream failure in the failover note, as core counts it.
- Settings › Failover: "No-response timeout" (30–3600 s, 300 by default,
  written out) replaces the start-wait row and the "move on when the start
  times out" switch.
- Chinese for the new core codes; the removed ones are gone. Screenshot
  mock and oracle JSON follow the new protocol.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… keep-alives

Core now holds a streamed answer's headers for at most 15 s, then sends
200 and SSE keep-alive comments while failover carries on in the body
(ThinkWatch-Core#303). No change to the protocol or to any text here.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@fylorn
fylorn merged commit 0a046e5 into dev Oct 9, 2026
4 checks passed
@fylorn
fylorn deleted the feat/idle-timeout-abort branch October 9, 2026 13:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant