Repository navigation
test: wait for Console semantic state - #882
Merged
Merged
Conversation
V3RON
marked this pull request as ready for review
October 22, 2026 10:13
V3RON
added a commit
that referenced
this pull request
Oct 22, 2026
## Problem Console route handlers, pages and CLI children could outlive daemon fixtures; partial startup also lacked cleanup. ## Result Close tracked pages and remove handlers before daemon disposal. Await CLI children, escalate after SIGTERM, and verify daemon PID exit before removing its home. Disposal can recover from graceful-stop delay after PID exit is confirmed; explicit `stop()` remains strict. PID discovery fails closed. Partial startup is cleaned, and explicit listener-stop coverage keeps its observing page. Related to #871. ## Validation - Daemon lifecycle and event history E2E: 17 passed before the final fixture-only change. - Gateway inbox restart, single-host shutdown and explicit listener-stop: 3 passed. - Failed-shard Queue cases: 4 passed; long-install worker tabs: 1 passed after final changes. - Pre-commit and pre-push hooks passed. ## CI status and dependency Run 39761388095 failed four Queue cases because children did not exit after SIGTERM, and worker tabs because graceful stop left the socket. Cleanup now escalates and confirms exit. Its search shard also hit the selection race fixed in #882. This PR is based on `fix/864-console-semantic-waits`; retarget to `main` after #882 merges. New CI is pending. ## Review Spec review: skipped. Code review: 0 blocking, 2 fixed, 0 notes. Claims review: skipped. Rounds: 1. Tokens: n/a. One gpt-6.1-sol verification round, following the user-requested abbreviated workflow. Sol identified PID-discovery ambiguity and cleanup paths that could skip escalation. Both were fixed; daemon exit is verified before home removal. No second review round was performed. *Written by an agent.*
V3RON
added a commit
that referenced
this pull request
Oct 22, 2026
## Problem Overview and Usage presentation tests waited for the next minute boundary before reading completed stats. ## Result Prepare completed historical usage rows while the daemon is stopped, then restart it. Require strict stop, socket removal and process exit before editing the history database. Keep the UI and CLI assertions against real daemon output. Console fixture disposal escalates failed graceful cleanup and verifies exit before home removal. ## Validation - Overview/Usage Console cases: 12 passed after final changes. - Long-install worker tabs cleanup: 1 passed. - Usage projection and stats E2E: 8 passed before the final Console fixture-only change. - Pre-commit and pre-push hooks passed. ## CI status and dependency Run 39761604557 had four Queue child-exit failures and a worker socket-removal failure; cleanup now escalates and confirms exit. Search failures were the selection race fixed in #882. This PR is based on `fix/864-console-semantic-waits`; retarget to `main` after #882 merges. Its E2E (1/3) also got 409 instead of 201 in the second request of `gateway-smoke.test.ts`. That test does not use the changed Console fixture. The focused file passed on base `f5aa210c` (6 tests), so the CI failure remains unconfirmed. New CI is pending. ## Review Spec review: skipped. Code review: 0 blocking, 1 fixed, 0 notes. Claims review: skipped. Rounds: 1. Tokens: n/a. One gpt-6.1-sol verification round, following the user-requested abbreviated workflow. Sol identified missing proof of daemon shutdown before history edits. Fixed by checking stop success, socket removal and process exit. No second review round was performed. ## Update after #882 and #884 Merged main. #884's cleanup in `e2e/console/fixtures.ts` replaces this branch's three cleanup commits (no-owner exit code, stale socket lookup, forced cleanup), so main's version is kept. `prepareHistoricalUsage` now also waits for the daemon process to exit, because main's `stop()` waits only for the socket. Overview and Usage Console specs: 57 passed locally (all three browsers). *Written by an agent.*
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Console E2E keyboard actions and live-update assertions read UI state before results settled. Polling-based updates also used 1-second budgets that matched the poll interval.
Result
Wait for search groups and highlighted options before keyboard actions. The loading and live-update checks capture the selected option before asynchronous changes and verify the same ID and text afterward without assuming initial response order. Eventual UI updates use bounded 10-second waits; LiveConnection tests retain the 1-second schedule coverage. Related to #864.
Validation
CI status
Run 39759021718 failed one live-update case: expected initial
nav-waiter, gotnav-holder · iPhone 16. The corrected focused spec passed locally; CI for this head is pending.Review
Spec review: skipped. Code review: 0 blocking, 0 fixed, 0 notes. Claims review: skipped.
Rounds: 1. Tokens: n/a.
One gpt-6.1-sol verification round, following the user-requested abbreviated workflow. Sol found no actionable issues in the semantic-wait changes. No second review round was performed.
Written by an agent.