Skip to content

test: remove stale tests for unused thread and onboarding helpers - #30817

Merged
Yash-Singh1 merged 1 commit into
mainfrom
test/useless-audit-20261104T122603Z
Nov 5, 2026
Merged

Yash-Singh1 merged 1 commit into
mainfrom
test/useless-audit-20261104T122603Z

Conversation

@t3-code-bot

@t3-code-bot t3-code-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

problem

nine complete tests kept two obsolete helpers alive even though neither has a production caller. this is a focused run of the t3code useless test audit automation, not a human-authored change.

removed and evidence

base inspected: 8b44f42b14c8.

  • deleted apps/mobile/src/state/use-selected-thread-worktree.test.ts in full: three tests and their mocked hook harness only called useThreadCwd. a tracked-source search on the pinned base finds that symbol only in its declaration and this test file. every production importer of use-selected-thread-worktree uses useSelectedThreadWorktree, which remains unchanged. testing the unused arbitrary-thread hook cannot protect the selected-thread path that the app actually runs.
  • removed the entire six-test resolveOnboardingTargetEnvironment suite and its six environment fixtures from apps/web/src/onboarding/targetEnvironment.logic.test.ts. the pinned-base symbol search finds only the helper declaration and that suite, no callers or re-exports. the live wizard instead passes its explicit selection through resolveOnboardingSetup (WelcomeWizard.tsx:279,329), and uses isOnboardingRelayEnvironment at line 325. all three setup regression tests remain unchanged.
  • deleted the two now-unreferenced helper implementations and imports used only by them. the first test-only pruning check exposed resolveOnboardingTargetEnvironment as an unused export in knip; retaining dead implementations solely to retain their tests would defeat the audit. no live helper logic changed.

this does not claim duplicate coverage: these tests exercised unreachable implementations. retained terminal launch, selected-thread git state/actions, setup, and layout tests exercise distinct live paths. the broader audit also inspected shared endpoint/text-direction re-exports, markdown streaming, and web/mobile timeline tests; those keep unique cases or separate implementations and were retained.

verification

  • vp install --frozen-lockfile: passed to synchronize the existing checkout's dependencies.
  • before removal: vp test run apps/web/src/onboarding/targetEnvironment.logic.test.ts apps/mobile/src/state/use-selected-thread-worktree.test.ts apps/mobile/src/features/terminal/terminalLaunchContext.test.ts: 3 files, 15 tests passed.
  • after removal: vp test run apps/web/src/onboarding/targetEnvironment.logic.test.ts apps/mobile/src/features/terminal/terminalLaunchContext.test.ts apps/mobile/src/state/use-selected-thread-git-state.test.tsx apps/mobile/src/state/use-selected-thread-git-actions.test.ts apps/web/src/components/composerFooterLayout.test.ts: 5 files, 24 tests passed.
  • final vp run check:changed: passed formatting, lint, both knip passes, mobile/web/scripts typechecks, 3 onboarding tests, and the targeted react-compiler checks (7 passed, 2324 unrelated cases skipped by its filter).
  • git diff --check: passed. full diff reviewed for accidental changes and secrets.
  • no repo-wide local checks or ui captures: no reachable product behavior changed. github ci/review must still pass before merging.

model: gpt-6.1-sol. harness: hermes agent.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Nov 4, 2026
@macroscopeapp

macroscopeapp Bot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 9133fb1

Macroscope's review found this PR approvable — Removes unused thread-directory and onboarding-target helpers without changing active behavior. Repository searches found no production callers, so the cleanup has limited exposure.

You can add or adjust custom eligibility rules. Learn more.

@maria-rcks

maria-rcks commented Nov 4, 2026 •

Copy link
Copy Markdown
Collaborator

Note

Written by gpt-6.1-sol on behalf of Maria

Verified in a real dev environment

verified as-is at 9133fb1ef21ca731afb8a43a76f6729ce1853320 on a Linux Boat VM. installed dependencies and ran main (9e85538535) first in a separate worktree, stopped its captured process group, then ran the exact pr head with separate state. drove the real web client using repository Playwright and /usr/bin/google-chrome. no mocks or replay provider.

this is unreachable-code cleanup, so there is no user-facing bug to reproduce. both removed symbols occur only in their declarations and deleted tests on main. the live onboarding helpers and selected-thread hook remain unchanged.

  • on main and the pr: deselecting the computer disabled continue; reselecting enabled it. the agents step detected codex, project scanning rendered results, and skipping import completed setup.
  • added the same real git repository through the app, selected codex gpt-6.1-sol, and submitted real turns on both revisions. the rendered responses returned the correct working directory, git root, and readme contents.
  • on the pr: a second turn resumed the same thread and returned the same path and readme. the terminal drawer also ran pwd in that project.
  • blacksmith: 4 focused existing test files, 21 tests passed (onboarding setup, mobile terminal launch context, selected-thread git state and actions). existing github checks are green. no source changes or pushes needed.

short runtime transcript

main onboarding:

main onboarding with the local computer selected

pr onboarding with matching selection:

pr onboarding with the same computer selected

pr onboarding selection and setup flow

real codex follow-up and terminal working directory

Not verified

native ios/android selected-thread consumers were not exercised on this Linux VM; the web terminal does not prove the native hook. Electron shell integration, macOS/Windows, multi-computer relay/direct/ssh onboarding, importing conversations, and other providers were not exercised. no runtime verification claim for those paths.

@Yash-Singh1
Yash-Singh1 merged commit c72de52 into main Nov 5, 2026
31 checks passed
@Yash-Singh1
Yash-Singh1 deleted the test/useless-audit-20261104T122603Z branch November 5, 2026 20:22
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Nov 6, 2026
**v0.1.8-nightly.20261106.4247** · 67 changes from 19 contributors

- **Environment dictation.** Choose an environment for dictation in web and desktop, including desktop browser annotations.
- **Fresh sessions.** Use /clear to start a fresh session without leaving your thread.
- **Scheduled task sessions.** Run scheduled tasks in one thread, either continuing the conversation or starting fresh each time.
- **Secret requests.** Answer secret requests using a secret provider instead of copying and pasting credentials.
- **Snooze questions.** Snooze a thread with a pending question and answer it later.
- **Claude Ultracode.** Use Ultracode at any effort level, including with Claude Sonnet 5.5 and Haiku 5.5.
- **Faster pull requests.** Pull requests open faster using data already available in the app.

### Plus 31 more bug fixes and performance improvements.

<details>
<summary>Full changelog</summary>

## What's Changed
* fix(threads): side chats inherit parent permissions by default by @extoci in pingdotgg/t3code#31114
* fix(server): threads follow their worktree's branch changes by @Yash-Singh1 in pingdotgg/t3code#31599
* fix(pi): usage reports include sessions stored in a --session-dir launch argument by @saphid in pingdotgg/t3code#30690
* perf(mobile): skip unchanged terminal toolbar fade updates by @saphid in pingdotgg/t3code#25312
* perf(mobile): assemble HTML replacements in one pass by @saphid in pingdotgg/t3code#25278
* perf(mobile): skip canceled SVG parsing by @saphid in pingdotgg/t3code#25314
* test(server): strengthen v1 cutover proof with event-stream waits and content snapshots by @saphid in pingdotgg/t3code#11869
* fix(contracts): a stored secret reference is always sensitive by @yordis in pingdotgg/t3code#31403
* fix(server): a settings save no longer reads an unreadable secret again by @yordis in pingdotgg/t3code#31226
* fix(threads): allow snoozing pending input requests by @saphid in pingdotgg/t3code#20058
* fix(server): repair cutover test crypto import breaking main CI by @Yash-Singh1 in pingdotgg/t3code#31630
* feat(server): sends can start a fresh provider session by @juliusmarminge in pingdotgg/t3code#30323
* feat: /clear starts a fresh session in the same thread by @juliusmarminge in pingdotgg/t3code#30325
* feat: scheduled tasks can run in one thread with a fresh session each run by @juliusmarminge in pingdotgg/t3code#30326
* fix(web): dragging a sidebar thread no longer scrolls the list out from under the pointer by @juliusmarminge in pingdotgg/t3code#30346
* fix(assets): preserve the PR repository for GitHub media by @juliusmarminge in pingdotgg/t3code#21631
* fix(server): load PR uploads from SSO organizations by @juliusmarminge in pingdotgg/t3code#21632
* fix(mobile): the Duo inspector stops at its widest instead of vanishing by @juliusmarminge in pingdotgg/t3code#31665
* test(server): launcher PATH lookup test no longer drops the Windows drive letter by @tris203 in pingdotgg/t3code#22534
* test(server): replay tests delete their temp directories by @only21mil in pingdotgg/t3code#23445
* fix(mobile): transcribe Android audio during recording by @PixPMusic in pingdotgg/t3code#31300
* test(web): linked-environment subagents keep opening in their own thread by @RealDoc06 in pingdotgg/t3code#26492
* test(server): pin post-commit outbox settle boundary by @Narayan201120 in pingdotgg/t3code#27560
* test: remove unreachable github cli decoding test by @t3-code-bot[bot] in pingdotgg/t3code#28115
* test(server): retain delegated child events when detaching a parent by @benjamin-di in pingdotgg/t3code#29622
* test(lint): pin which ResizeObserver constructions no-raw-resize-observer reports by @only21mil in pingdotgg/t3code#28781
* test(mobile): drop two deleted tests from the React test list by @only21mil in pingdotgg/t3code#28800
* test(web): worked-for expand test waits for the timeline to finish loading by @saphid in pingdotgg/t3code#29661
* test(web): avoid PDF worker startup timeouts in attachment tests by @voltcrash in pingdotgg/t3code#29933
* test(web): source control writing settings test waits for the reset button by @juliusmarminge in pingdotgg/t3code#30372
* test(web): keep the work heading test inside the viewport by @voltcrash in pingdotgg/t3code#30613
* test: use an empty config file instead of the null device for git fixtures on Windows by @Pyseph in pingdotgg/t3code#30772
* test: remove stale tests for unused thread and onboarding helpers by @t3-code-bot[bot] in pingdotgg/t3code#30817
* test(server): correct Windows path and settings assertions by @ElliotDrel in pingdotgg/t3code#30983
* feat(claude): Ultracode works with any effort, like Claude Desktop by @Bil0000 in pingdotgg/t3code#27034
* perf(pr): pull requests paint from data already held, on web, desktop and mobile by @Bil0000 in pingdotgg/t3code#27798
* fix(mobile): approval card buttons line up by @shivamhwp in pingdotgg/t3code#31415
* fix(gitlab): author names link to GitLab profiles by @TonybynMp4 in pingdotgg/t3code#30418
* fix(gitlab): merge messages drop agent credits by @TonybynMp4 in pingdotgg/t3code#30441
* fix(gitlab): file and image comments appear as review threads by @TonybynMp4 in pingdotgg/t3code#30425
* fix(web): screen readers no longer read out a secret typed into the request card by @juliusmarminge in pingdotgg/t3code#31653
* perf(pr): actions update every client from the host's reply instead of re-reads by @Bil0000 in pingdotgg/t3code#25761
* feat(mobile): start side chats with /side by @juliusmarminge in pingdotgg/t3code#31709
* feat(claude): expose Ultracode on Claude Sonnet 5.5 and Haiku 5.5 by @DrSeedon in pingdotgg/t3code#30781
* feat(settings): Simlock, Antigravity and OpenCode credentials can come from a secret provider by @juliusmarminge in pingdotgg/t3code#31652
* refactor(mobile): screens declare what they are; layout and AppBar own every platform bar decision by @juliusmarminge in pingdotgg/t3code#31310
* fix(server): a saved source control token that can't be read no longer falls back to another account by @juliusmarminge in pingdotgg/t3code#31646
* feat(secrets): answer a secret request with a secret provider reference by @juliusmarminge in pingdotgg/t3code#31670
* fix(settings): removing a secret provider clears the fields that used it by @juliusmarminge in pingdotgg/t3code#31651
* docs(user): explain secret providers and secret requests by @juliusmarminge in pingdotgg/t3code#31654
* feat(server): transcribe audio on a chosen environment by @juliusmarminge in pingdotgg/t3code#30625
* feat(web): opt into environment dictation on this device by @juliusmarminge in pingdotgg/t3code#30623
* feat(desktop): dictate into browser annotations with the same consent by @juliusmarminge in pingdotgg/t3code#30624
* feat(mobile): opt in to dictation on a paired environment by @juliusmarminge in pingdotgg/t3code#31059
* fix(web): keep the folder path caret in place while editing by @juliusmarminge in pingdotgg/t3code#31642
* perf(mobile): call the highlights lexer through Nitro, up to 10x faster calls on Android by @camchis in pingdotgg/t3code#31188
* fix(claude): turns use the downloaded model catalog by @juliusmarminge in pingdotgg/t3code#31717
* fix(gitlab): bot authors are flagged as bots by @TonybynMp4 in pingdotgg/t3code#30383
* fix(gitlab): merge requests can edit their labels by @TonybynMp4 in pingdotgg/t3code#30483
* perf(mobile): faster thread sync, connects, and reconnects on bad wifi by @Bil0000 in pingdotgg/t3code#28487
* fix(mobile): iPad composer drops when the keyboard floats or minimizes by @juliusmarminge in pingdotgg/t3code#31251
* perf(mobile): stop iOS syntax highlighting from looking up a thread-local on every lexer call by @camchis in pingdotgg/t3code#31187
* fix(gitlab): edited comments wake PR watchers by @TonybynMp4 in pingdotgg/t3code#30403

## New Contributors
* @benjamin-di made their first contribution in pingdotgg/t3code#29622
* @ElliotDrel made their first contribution in pingdotgg/t3code#30983
* @DrSeedon made their first contribution in pingdotgg/t3code#30781

**Full Changelog**: pingdotgg/t3code@v0.1.8-nightly.20261105.4234...v0.1.8-nightly.20261106.4247

</details>


Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.1.8-nightly.20261106.4247
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants