-
Notifications
You must be signed in to change notification settings - Fork 95
Migrate the CLI workspace to Bun-native test execution (Fixes #2843) #3056
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Changes from 102 commits
Commits
Show all changes
135 commits
Select commit
Hold shift + click to select a range
9c9eb57
wip(cli-bun): bun runner, preload parity, and shared vi.mock shim fixes
acoliver bd5300f
revert bun-written snapshot entries
acoliver 67346c7
wip(cli-bun): batch remediation from parallel agents + snapshot key m…
acoliver ce9452a
wip(cli-bun): further batch remediation
acoliver 16cda9f
fix(bun-shim): Vitest-compatible spyOn freshness, restoreAllMocks mod…
acoliver 7914fa0
fix(bun-shim): automock default interop, vi.unmock restore, provider-…
acoliver 292e5e6
fix(cli-bun): reset process.exitCode per test and stop yargs from exi…
acoliver 3067113
fix(bun-shim): snapshot module exports through accessors for builtin …
acoliver 78e19ef
fix(bun-shim): synthesize automock default export for CommonJS modules
acoliver bf86939
test(cli): load toolMapping after its telemetry mock is registered
acoliver ba14078
test(cli): rewrite resolves.not.toThrow assertions as direct awaits
acoliver 3e2440c
test(cli): restore real stdio and remove drain/error timer races in c…
acoliver b617500
test(cli): load errorReporting after its core mock is registered
acoliver 396c54b
test(cli): load dynamicSettings after its telemetry mock is registered
acoliver 536d59c
test(cli): inject the MCP token store on the class diagnostics actual…
acoliver ad6a0b3
test(cli): await fs.access instead of asserting its runtime-specific …
acoliver 723742b
fix(bun-shim): mockRestore returns a vi.fn to its constructor impleme…
acoliver 2a4e6cb
test(cli): run the fd-forwarding harness under node explicitly
acoliver 0bc7044
test(cli): restore the real provider aliases via vi.unmock and import…
acoliver 894ef99
test(cli): use a real class for the mocked agent client constructor
acoliver 6dc11e3
fix(bun-shim): tolerate dependencies that cannot be required when sna…
acoliver 5eab2ca
fix(bun-shim): run due timers when advanceTimersByTimeAsync is called…
acoliver 78b3f88
test: pin the CLI bun runner discovery contract and the Vitest-parity…
acoliver e763bb8
test(cli): use a real class for the shared mocked agent client constr…
acoliver b31995e
test(cli): drop mocks for hooks that no longer exist in the workspace
acoliver f01b324
test(cli): poll AuthDialog keystroke assertions instead of sleeping a…
acoliver 6542416
test(cli): poll AuthDialog OAuth toggle assertions instead of sleeping
acoliver 68cf0f1
fix(cli): type the mocked agent client instances passed to useAgentSt…
acoliver e87c7dc
fix(cli): clear the typecheck and lint errors introduced by the migra…
acoliver 2b37a7d
chore: apply repository formatting
acoliver 3abc1ae
fix(bun-shim): stop overriding vi.fn, which broke mock-as-constructor
acoliver 86177a7
test: drop parity cases for the reverted vi.fn override and document …
acoliver 6c8f620
docs: record the delivered bun migration architecture and its diverge…
acoliver 1025829
fix(bun-shim): clear module-mock call history on restoreAllMocks, mat…
acoliver 15882ee
feat(cli-bun): report aggregate test-case counts for vitest parity ve…
acoliver 8da91cc
docs: record measured bun test-case totals and the vitest OOM that bl…
acoliver 22bc0a2
refactor(cli): remove vitest from the workspace and run every test fi…
acoliver e879005
test(cli): delete tests asserting removed behaviour and record the co…
acoliver cf8c4c4
test(cli): port ContextIndicator and delete the theme prop-instrument…
acoliver 0795e14
test(cli): delete the App test family, written against a superseded c…
acoliver e54f1db
test(cli): supply MouseProvider and the current TextBuffer fields to …
acoliver 0574ba3
fix(cli-test-utils): route useStdin to the active render stdin so key…
acoliver f807663
test(cli): add a complete SessionMetrics fixture factory and refresh …
acoliver 3723fac
test(cli): port TodoPanel.responsive and ProviderDialog.responsive to…
acoliver f6480e6
test(cli): update agent-stream call-signature expectations; drop canc…
acoliver c7e9f55
docs: record the cancellation coverage moved to the agent loop
acoliver f8ff193
test(cli): port finish-reason cases to canonical reasons; delete the …
acoliver 80b88e2
test(cli): default renderMarkdown in the shared UI state and supply t…
acoliver 426ffe1
test(cli): align line-number tests with the shipped showLineNumbers d…
acoliver 5d58641
test(cli): follow the loading-phrases setting rename and inversion in…
acoliver 2b0653a
test(cli): port tool confirmation assertions, refresh tool group snap…
acoliver 0a81388
test(cli): supply the runtime bridge and extensions getter to Session…
acoliver a08195f
test(cli): render the responsive-testing helper fixture with ink prim…
acoliver 1f78f58
fix(cli): satisfy the ink text-color lint rule in the responsive help…
acoliver 57b1fe8
fix(settings): restore the lost retries/retrywait validators and port…
acoliver d58706e
test(cli): resolve profiles from the isolated storage root and read t…
acoliver 9faa0d5
test(cli): point oauth-timing ProfileManager at its temp profiles dir…
acoliver a1f1f25
test(cli): align spawned-CLI profile tests with the isolated storage …
acoliver d71b4e4
test(cli): assert cleanup logging on the debug logger and correct a m…
acoliver bd660d6
test(cli): assert Config-level normalisation of streaming settings
acoliver 3d04417
fix(cli-test): omit an empty LLXPRT_CONFIG_HOME when spawning the CLI
acoliver cd2e123
test(cli): correct git-stats diff arithmetic and cumulative filesChan…
acoliver f3e0d71
test(cli): attach agent factories and assert Config-level context-lim…
acoliver 6272396
test(cli): resolve loadbalancer profiles from the isolated root; reco…
acoliver 5ffd93d
test(cli): assert provider-switch clearing and supply the proactive-r…
acoliver 5a0e56f
test(cli): delete auth-e2e integration suite that spawned a nonexiste…
acoliver 346170d
test(cli): make the multi-provider logging fixture exercise what it a…
acoliver c354b99
test(cli): keep a yargs validation exit from killing the test process
acoliver aa4d1c0
test(cli): keep the yargs assertion in the test body for lint
acoliver 1056db0
test(cli): restore the 30s test timeout that vitest.config.ts had set
acoliver 4a9f0cb
test(cli): pass the per-test timeout explicitly to each bun test invo…
acoliver 0b517df
test(cli): assert specified completion ranking and the debounce contr…
acoliver 320b970
test(cli): drop the unused render result in the debounce test
acoliver fa2d63e
test(cli): assert large-paste placeholder behaviour and add threshold…
acoliver 206a6b7
test(cli): record the ESC dispatch finding and back out an incorrect …
acoliver 083d069
docs(issue2843): record what is ruled out for the InputPrompt keyboar…
acoliver 8aad329
test(cli): assert elapsed-time retention rather than effect schedulin…
acoliver de1c71d
test(cli): emit the context-warning event the dispatcher consumes and…
acoliver bcdd12c
docs(issue2843): record the Bun extra-fd limitation blocking sandbox …
acoliver 0035208
test(cli): redirect homedir via spy and assert the AggregateError dir…
acoliver efba341
test(cli): capture ink render through the documented injection seam
acoliver 811c6f1
test(cli): delete InputPrompt queued-message cases for a prop nothing…
acoliver a17e0e2
test(cli): give the buffer double its render fields and snapshot once…
acoliver e43b5ea
test(cli): restore snapshots from main and record the fabricated-snap…
acoliver 0f4dea4
test(cli): re-record snapshots for previously-excluded files after ve…
acoliver ba5abdb
test(cli): honour the mouseEventsEnabled option the paste tests alrea…
acoliver cffb298
test(cli): give the third InputPrompt buffer double its render fields
acoliver 47fae09
test(cli): correct the useKeypress mock specifier and record the buff…
acoliver 658b106
test(cli): drive SessionController identity and paid mode through the…
acoliver 1379f42
docs(cli): record the useAgentStream.finished and SessionController f…
acoliver 7514114
test(cli): delete placeholder tests and make the mouse assertion real
acoliver e2eac24
docs(cli): add the coverage-gap issue body filed as #3046
acoliver 393e236
test(cli): extract the extension loadSettings seam to keep the file u…
acoliver d2a864d
fix(cli-bun): restore Ink teardown and credential env isolation, fail…
acoliver 6882876
test(cli): assert SettingsDialog wraparound as a round trip instead o…
acoliver aeb0bd7
test(cli): restore the full branch-name assertion; reject the showLin…
acoliver 82bf75a
test(cli): de-duplicate the debounce assertions and record why public…
acoliver 6f72456
fix(cli-bun): clear nested module mocks and kill the whole process gr…
acoliver 72dc924
Merge remote-tracking branch 'origin/main' into issue2843
acoliver dc86957
docs(cli): record the stale-dist masking and the spawned-CLI profile-…
acoliver 3254044
docs(cli): correct the stale-bundle findings; profiles do honour LLXP…
acoliver 7ffc853
docs(cli): add the PR body for the Bun test migration
acoliver 7be5d1b
fix(cli): satisfy the CLI type-escape policy and re-own the bun manif…
acoliver d657e83
fix(cli): give spawned-CLI tests a budget that survives a cold CI runner
acoliver f9b0cf3
fix(cli): size the whole-file budget for CI-speed CLI spawns
acoliver 2abcd55
fix(cli): stop a zero-length timer advance from splitting a paste seq…
acoliver 9be95bb
fix(cli): keep the kitty debounce branch out of the test body
acoliver 9776630
Merge remote-tracking branch 'origin/main' into issue2843
acoliver 52261c1
fix(cli): repair four real defects the Bun migration exposed
acoliver 191b877
fix(cli): restore click-to-position in the prompt and unbreak two hid…
acoliver fa7c2a0
fix(cli): give keypress tests human timing so they exercise the real …
acoliver d3a47e0
test(cli): exercise Ctrl+R command search in the mode that implements it
acoliver 0725b19
test(cli): feed the raw server event through the agent event adapter
acoliver aa9960e
test(cli): stop reading an object that Bun's toMatchObject has corrupted
acoliver 82d0a5f
test(cli): let the OAuth mock report the enablement state the tests d…
acoliver eb4d80d
test(cli): assert the behaviour these two suites actually govern
acoliver 98a9e99
test(cli): stop spawned CLIs inheriting the host session's JSP bootstrap
acoliver 89b3b88
fix(cli): scrub the host session's JSP bootstrap and unmask a hidden …
acoliver b94b500
test(cli): assert the suggestion rendering this fork actually has
acoliver 42e0363
fix(cli): stop declaring a provider-neutral gemini identifier in the …
acoliver 21ff260
test(cli): make the spawned-CLI integration suites survive a CI runner
acoliver 1d3b52b
test(cli): stop spawned CLIs inheriting CI's real provider credentials
acoliver fbb4321
test(cli): stop settingsIntegration calling the real OS keychain
acoliver c62ab46
test(cli): keep PoliciesDialog state updates inside act()
acoliver 22a0236
fix: keep the credential scrub clear of the provider-naming guard
acoliver 205c979
ci: let the coverage comment report N/A for the migrated cli shard
acoliver 79808d0
Merge remote-tracking branch 'origin/main' into issue2843
acoliver adafc32
review: fix the findings that hold, with evidence for those that do not
acoliver 84d2112
fix(cli): stop the runner following a symlink cycle forever
acoliver bf87689
Merge origin/main into issue2843
acoliver 8a94751
test(cli): close the remaining Bun migration review gaps
acoliver fc95298
Merge remote-tracking branch 'origin/main' into issue2843
acoliver 578d390
Merge branch 'main' into issue2843
acoliver c1a2938
Merge remote-tracking branch 'origin/main' into issue2843
acoliver ad070ce
test: eliminate Bun migration lifecycle flakes
acoliver File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.