Skip to content

πŸ’š Fix flaky Bash poll test - #9

Merged
nbsp1221 merged 1 commit into
mainfrom
fix/bash-poll-test-race
Sep 4, 2026
Merged

πŸ’š Fix flaky Bash poll test#9
nbsp1221 merged 1 commit into
mainfrom
fix/bash-poll-test-race

Conversation

@nbsp1221

@nbsp1221 nbsp1221 commented Sep 4, 2026

Copy link
Copy Markdown
Owner

Summary

  • Make the concurrent Bash polling test follow the existing bash_poll contract by polling while the session is running or still has buffered output.
  • Remove the timing assumption that the final output and process exit marker must appear in the same snapshot, without changing production behavior.

Verification

  • pnpm check β€” formatting, linting, typechecking, 40 unit and integration tests, and the production build passed.
  • Targeted concurrent polling test repeated 10 times β€” all 10 runs passed.
  • pnpm test:e2e β€” not run because this test-only change does not alter the Docker Sandbox boundary or runtime behavior.

@leverframe

leverframe Bot commented Sep 4, 2026

Copy link
Copy Markdown

Leverframe review

🟒 Review completed in 229s

  • 0 findings
  • 1 of 1 changed files reviewed
  • Verification: 9 passed

Changes 207d1b6..9d64823 Β· Commit 9d64823 Β· Open review Β· View check run

@leverframe leverframe Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Leverframe review

No actionable defects found. The revised loop matches the documented polling contract and correctly drains output until the session has exited with no buffered output. Verification used the CI-declared Node 24 environment (Node v24.20.0) and exact package manager pnpm 11.23.0, with dependencies from the frozen lockfile.

Findings

No actionable defects found.

Checks

9 passed Β· 0 failed Β· 0 not run

Show 9 checks
Status Check Evidence
🟒 passed pnpm install --frozen-lockfile Installed 464 packages from pnpm-lock.yaml using pnpm 11.23.0.
🟒 passed pnpm exec vitest run --project integration test/integration/bash-sessions.test.ts -t 'serializes concurrent polls without duplicating or losing output' --reporter=verbose Focused changed test passed with Vitest 4.1.11.
🟒 passed Repeated the focused changed test 20 times All 20 consecutive runs passed.
🟒 passed pnpm test All 40 unit and integration tests across 11 files passed.
🟒 passed pnpm typecheck TypeScript 5.9.3 completed without diagnostics.
🟒 passed pnpm format:check All 49 checked files matched formatting.
🟒 passed pnpm lint Both oxlint and ESLint completed successfully.
🟒 passed pnpm build tsdown 0.22.14 built the Node 24 CLI successfully.
🟒 passed git diff --check 207d1b6c8b25f95a43e767ea5ab2c98ded628209...9d64823eb45bf0f9d6fabb00d4cdc5fe7f942a9b No whitespace errors reported.

@nbsp1221
nbsp1221 merged commit 232e12e into main Sep 4, 2026
2 checks passed
@nbsp1221
nbsp1221 deleted the fix/bash-poll-test-race branch September 4, 2026 16:33
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