Skip to content

Start Capture Batch greys out and says which check it's on before the batch starts (#953) - #969

Merged
ccoventry merged 2 commits into
devfrom
feat/capture-precheck-progress-953
Oct 23, 2026
Merged

ccoventry merged 2 commits into
devfrom
feat/capture-precheck-progress-953

Conversation

@ccoventry

Copy link
Copy Markdown
Owner

Release note: Changed: Start Capture Batch greys out the moment it's clicked and says which check it's on (OBS, disk space, the picked demos, maps, Steam) until the batch starts.

Closes #953. From the #942 progress audit (plan C).

What changes

  • New studio/src/capture_precheck.js (createCapturePrecheck): on the click, Start greys out, the footer bar shows with the sliding block, and the status line reads each check as it runs:
    • "Getting ready to capture…" (at once)
    • "Checking OBS…" (OBS mode)
    • "Checking the disk space…"
    • "Checking the picked demos are where they were (3 of 12)…"
    • "Checking the maps and demos for known problems…" (crash-prone maps, the entity limit, camera data)
    • "Checking the game and HLAE paths…"
    • "Checking whether the game is already open…"
    • "Checking Steam…"
  • A check that stops the batch brings Start back (through refreshLaunchGuard, so the disk-space guard still has the last word) and puts the reason on the line: the same text as its toast, the existing "Not started — …" lines for Steam and a game with other settings, or "Not started." when a question was answered no.
  • refreshLaunchGuard no longer re-enables Start while the checks run (it's called by the disk check itself and by every settings edit).
  • A second click while checking does nothing.
  • changed_demos (lib.rs) now emits changed_demos_progress { done, total }, throttled to ~33 ms with the last demo always sent, for the "3 of 12" count. changedDemos(demos, onProgress) in ipc_bridge.js listens only while it runs; captureDemosReady / pickedDemosPresent pass onProgress through.

Decisions

Test done

  • npm run test:unit: 79 files, 714 tests pass (new capture_precheck.test.js: each line, the count, begin/stop/hand-over on fake elements).
  • CI=1 npx playwright test on the new capture-precheck.spec.js (4) plus master-pane, queue-scan, split-maps, running-game and recent-projects: 39 pass. The new spec runs the real initCaptureUI. It checks that Start greys out and the line reads "Checking the disk space…" while that check is still held (the first line shows at once). It checks that the demo check's count shows, that a second click and a guard refresh leave Start greyed out, that a missing demo brings Start back with the reason and hides the bar, and that a "no" says "Not started."
  • npm run build: ok.
  • cargo test -p desktop-studio: 185 pass (new: the per-demo count, and the throttle that always sends the last demo). cargo fmt --all --check and clippy 1.98.1 -p desktop-studio --all-targets -D warnings: clean.
  • Not run in the real app. Look: pick highlights, click Start Capture Batch. Start should grey out at once and the line under the buttons should step through the checks. With many demos picked, the demo check counts. Then try one that stops: untick everything after a missing demo, or rename a picked demo on disk. Start should come back with the reason on the line. In OBS mode with OBS closed, the line should stay on "Checking OBS…" while it launches OBS.

🤖 Generated with Claude Code

)

The click ran OBS, disk, demo, map, path, game and Steam checks with
Start still live and nothing on the footer. capture_precheck.js greys
Start out and slides the footer bar from the click, puts each check on
the status line ("Checking the picked demos are where they were (3 of
12)…"), and on a stop brings Start back with the reason. refreshLaunchGuard
leaves Start greyed out while the checks run. changed_demos emits
changed_demos_progress (33 ms throttle, always the last demo) for the
count.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ccoventry
ccoventry merged commit 4dfcf38 into dev Oct 23, 2026
5 checks passed
@ccoventry
ccoventry deleted the feat/capture-precheck-progress-953 branch October 23, 2026 15:14
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.

Start Capture shows nothing while it checks the demos, maps and Steam

1 participant