Repository navigation
Conversation
The Muse version probe used the shared 4 second budget. On Windows, Muse can take 4-9 seconds to answer --version inside a job object, and the processes the T3 server starts run inside one, so every probe timed out. Give the probe 15 seconds; it still stops a hung CLI. Fixes pingdotgg#24165 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Pre-merge checks:
|
ApprovabilityVerdict: Needs Human Approval Macroscope's review found this PR requires human approval — This focused bug fix raises Muse's default version-probe timeout from 4 seconds to 15 seconds and adds coverage for slow startup. Because it changes a product default, the change requires human review despite its limited scope. You can add or adjust custom eligibility rules. Learn more. |
|
Note Written by kept @only21mil's implementation and commit, merged current main ( verification:
unverified: native windows job-object startup, authenticated muse availability and turns, desktop, mobile, and native process termination at the deadline. the fifteen-second budget initiates cancellation; existing subprocess cleanup can extend completion. the fifteen-second product default still needs maria's review. no replacement pr was needed. before, current main's version probe: after, the same cli returns its version and reaches the unauthenticated catalog: refresh through the real client: |
|
Note Written by Verified in a real dev environmentfresh verification of
selected runtime transcript: selected command/client transcript main, actual fast linux cli: pr, same binary and credentials: Not verifiedthe original timeout did not reproduce on main. the changed slow-start behavior remains unverified in the real app. this linux cli answers immediately, so neither side exercises a real version response between four and fifteen seconds. i did not introduce the delay wrapper used in the earlier verification because this pass requires real provider behavior without mocks. native windows job-object startup and process cancellation need a windows host. authenticated muse availability and turns need a muse login. electron desktop, native ios/android, and remote/relay/tunnel modes were not exercised. no fix was justified by the linux checks. this is partial runtime verification, not proof that the reported windows issue is fixed. |
|
Note 🤖 Opus 5.5 replying on behalf of Victor. @maria-rcks we haven't pushed to this PR's branch since you updated it. An offer branch that includes current
Happy to push this to the PR branch if you'd like. |
|
Note 🤖 Opus 5.5 replying on behalf of Victor. @maria-rcks your pass listed native Windows startup as unverified, so I ran this head ( |







Problem
On Windows, Muse Code shows Unavailable · Muse Code CLI version check timed out. on every refresh, even though
museworks from a terminal (https://git.cafe/pingdotgg/t3code/issues/24165). The reporter traced it: Muse takes about 4 to 9 seconds to answermuse --versionwhen it runs inside a Windows job object, and the processes the T3 server starts run inside one. The Muse status check gives that command the shared 4 second budget, so every check is cut off and Muse can't be used.Change
The Muse version check now gets its own 15 second budget instead of the shared 4 second default. The budget is there to stop a hung
--version. 15 seconds still does that, and it covers the slowest start the reporter measured (8.7 s on Muse 1.4.11) with room to spare. It is also the value the reporter tested on their machine. The model catalog check right after it already allows 12 seconds.This follows https://git.cafe/pingdotgg/t3code/pulls/16544, which made the same change for OpenCode's version probe. The shared default and other providers stay as they are. A Muse CLI that really hangs still shows the same timeout message, now after 15 seconds instead of 4.
Raising a timeout can look like a timing patch over a race. Here nothing races. The command is just slow to start under a job object, and the reporter ruled out stdio, cwd, environment, PATH and antivirus. The other fix they suggested, starting probes with
CREATE_BREAKAWAY_FROM_JOB, has nospawnoption in Node, and a job can forbid breakaway anyway.Scope and approval
Fixes https://git.cafe/pingdotgg/t3code/issues/24165. No maintainer has commented on the issue yet, so this change awaits maintainer review. The issue's suggested fix is "give the Muse version probe a realistic budget", mirroring https://git.cafe/pingdotgg/t3code/pulls/16544 for https://git.cafe/pingdotgg/t3code/issues/11080. This PR is that fix and nothing else. It does not keep a ready snapshot through a slow check or change any other provider. For maintainers to confirm: a Muse-only 15 second budget, rather than a higher shared default for every provider.
Verification
Method: a Windows 11 Enterprise Evaluation 10.0.26300 virtual machine. I ran the T3 server from source at
main(0f13d2ccbd) and at this head (11e38e53f7), one at a time, each with fresh state, the machine name set to "Test machine" and no Muse login. Before each start, Muse's own Windows launcher (muse-launcher.ps1, MUSE_LAUNCHER_INSTALL=1) installed Muse Code 1.4.15 into a new folder, and the binary path pointed at a two-linemuse.cmdthat runs that launcher. I read the status in T3's Browser panel (clicks in the panel) and the Muse spans in the server's trace file. Full output: transcript--versionof a newly installed Muse binary takes about 4.1 to 4.3 s inside a job object, as the T3 server's child processes are; later runs take 0.04 s.main: the version check is cut off and Muse shows as Unavailable.This head: the same fresh install answers, model discovery runs, and Muse shows version 1.4.15. "Needs attention" is the missing Muse login.
Server trace,
main(the last three lines are a Refresh I pressed afterwards, when the binary had already started once):Server trace, this head:
A second fresh install on each gave the same result:
maincut the check off again, and this head read the version in 4.8 s.mainand passes on this head, on the same machine. I ran this head first, thenmainwith only this head's test file copied in.mainfails "waits for a version check that takes several seconds to answer"; this head passes all 5.Timing and test lines
First start of a fresh copy, then a second run:
Tests,
mainwith this head's test file, then this head:Not checked:
Prior PRs
Generated with Claude Opus 5.5 in T3 Code Nightly
Fixes #24165