Files
orca/mobile/tests-typecheck-baseline.txt
T
Neil 85f8d6b5f5 test: retire long-tail cases whose assertion is decided by the test itself (#24132)
Resumes the backlog sweep at a chunk size that actually gets read. Six auditors, 84 files
each, and all six read their full scope case-by-case against production — the first wave
where every chunk closed with no gap. 33 case declarations removed across 22 files, 1 test
file deleted, 826 lines gone. No production code touched.

This wave exists because a conclusion of mine was wrong. I had recorded that yield collapsed
~36x and that deletion was no longer the high-value work. I was dividing cases removed by
files IN SCOPE while the fraction auditors actually READ fell from 100% to about 4%, because
I kept handing them 300-800 files. Recomputed against files read, yield has been flat at 4-7
per 100 with no downward trend. This wave came in at 8.2.

The most instructive removal looked like the most valuable test in scope.
`orchestration-worker-release-reap-fixed.func.test.ts` cites a production bug by two
identifiers, describes orphaned PTYs accumulating until `TasksMax=4096` aborts processes on
EAGAIN, and advertises itself as the functional tier wiring the real orchestration RPC
surface, the real `OrchestrationDb` and the real release modules. Deleting it leaves no
reference to that bug anywhere in `src`.

It still had to go: its fake runtime performed the fence it asserted —

    if (pty.incarnationId !== inc) { return null }
    handleTable.set('term_reminted', { ptyId, epoch: rendererGraphEpoch })

— so the case checking that a reused ptyId with a mismatched incarnation does not resolve was
checking a decision its own spy made twenty lines earlier. The real fence is owned by
`orca-runtime-terminal-handle-incarnation.test.ts:257`, and the other two cases replay
`orchestration-worker-release-incarnation-fallback.test.ts` (which uses a plain
`mockReturnValue` rather than reimplementing the remint) and `worker/worker-release.test.ts:23`.
"Integration test" and "wires real modules" describe the scaffolding, not the asserted step.

Other removals: a self-comparison disguised by an alias, where
`export const getIssueOwnerRepo = getOwnerRepo` makes a case asserting the two "agree" into
`f(x) === f(x)`; four cases whose `vi.mock` of `resolveIssueSource` made both the preference
value and the topology inert; five verdict-precedence cases owned by a verdict-agnostic block;
three call-shape probes on one-line store pass-throughs whose real contracts are driven by
behavioural neighbours; and a `export type _Ref = [...]` declaration whose own comment admits
it exists only to preserve test-only module-surface references.

Kept after checking production rather than shape. An auditor found two near-identical
ten-reconnect loops and kept both: one uses a test-local live-lease filter, the other the
shipped `sshRemotePtyLeaseAllowsReattach` predicate, and the file's own comment explains the
duality is deliberate "so the two cannot drift". Another kept a paths-alignment case that
looks like a validator tested against its own list, because adding a generated file without
registering its path does fail it — and `shellReadyWrappersExist` uses that registered list to
decide whether a partial tree needs regeneration.

Production duplication is now confirmed four times over, and it is why mirrored tests exist:
`createUpdateWorktreeLineage`/`createAssignWorktreeParent` differ by one `console.error`
string; `terminal-path-tap.ts` and `document/path-tap.ts` carry hand-maintained copies of
`matchFilePathAtColumn` under a docblock reading "keep the two in sync". In those cases both
test sides are load-bearing and the duplication belongs on a refactor list.

`mobile/tests-typecheck-baseline.txt` loses one entry. Trimming
`relay-host-signed-out-verdict.test.ts` made it typecheck clean, so the ratchet required
pruning its grandfathered entry — the file graduates from exempt to enforced. Baseline is now
124 entries, down from 125.

Verified: 690 test files / 7,560 cases pass across the touched desktop areas; the modified
mobile files pass (162 cases); `check-tests-typecheck-ratchet.mjs` OK (898 files in program,
124 grandfathered); `check-reliability-gates.mjs` 140 gates; the deleted file is absent from
the gate manifest, `cloud/package.json` and the mobile baseline; nothing under
`mobile/src/test-support/rpc-recording/` or `mobile/rpc-foundation/goldens/` touched.
2026-09-30 04:58:31 -07:00

129 lines
6.3 KiB
Plaintext

# Test files that do NOT yet typecheck under mobile/tsconfig.test.json.
# This is a RATCHET: the list may only SHRINK. Do NOT add entries to get CI green —
# an unchecked test is one whose type-level pins prove nothing.
# Regenerate/prune: node scripts/check-tests-typecheck-ratchet.mjs --prune
src/accounts-route-reset-credit.test.ts
src/browser/browser-command-reply-schema.test.ts
src/browser/mobile-browser-frameless-stream.test.tsx
src/components/CodexResetCreditAction.test.ts
src/components/HostProtocolGate.test.ts
src/components/MobileHomeQuickActions.test.ts
src/components/MobileHostCard-truthful-status.test.tsx
src/components/MobileHostCard.test.ts
src/components/MobileMarkdown.file-links.test.ts
src/components/MobileRichMarkdownEditor.test.tsx
src/components/NewWorktreeModal.test.tsx
src/components/PickerModal.accessibility.test.ts
src/components/WorktreeAgentList.test.tsx
src/components/agent-monitoring-indicators.test.ts
src/components/bottom-drawer-close-lifecycle.test.ts
src/components/bottom-drawer-window-handback.test.ts
src/components/codex-reset-credit-capability.test.ts
src/components/mobile-agent-icon-gradient.test.ts
src/components/pr-sidebar/PRCommentsSection.test.ts
src/diagnostics/connection-diagnostics-submission.test.ts
src/dictation/mobile-dictation-setup.test.ts
src/files/MobileFileExplorerPanel.test.ts
src/files/MobileFileMarkdownPreview.test.ts
src/hooks/mobile-dictation-desktop-start.test.ts
src/host-edit-route-accessibility.test.ts
src/host-edit-save-flow.test.ts
src/mock-server-key-pair.test.ts
src/notifications/notification-consent-ownership.test.ts
src/notifications/push-dismissal-native-races.test.ts
src/notifications/push-receive.test.ts
src/notifications/push-registration.test.ts
src/notifications/push-token.test.ts
src/onboarding/MobileOnboardingPage.test.ts
src/onboarding/NotificationOnboardingPreview.test.ts
src/onboarding/legacy-notification-opt-in-route.test.ts
src/onboarding/mobile-onboarding-screen.test.ts
src/session/MobileMarkdownReader.test.tsx
src/session/MobileNativeChatComposer.test.ts
src/session/MobileNativeChatMessage.test.ts
src/session/MobileNativeChatOverlay.test.ts
src/session/MobileNativeChatPermission.test.ts
src/session/MobileNativeChatQuestion.test.tsx
src/session/MobileNativeChatSessionOptionPickers.test.ts
src/session/MobileNativeChatSessionOptionRows.test.ts
src/session/MobileNativeChatTurnStatus.test.ts
src/session/MobileNativeChatView.test.ts
src/session/QuickCommandsList.test.ts
src/session/QuickCommandsSheet.test.ts
src/session/ai-vault-resume-launch.test.ts
src/session/mobile-file-tap-open.test.ts
src/session/mobile-native-chat-open-file.test.ts
src/session/mobile-session-tab-activation.test.ts
src/session/mobile-worker-takeover-send-sites.test.ts
src/session/pending-terminal-handle-recovery-poll.test.ts
src/session/session-reply-schema.test.ts
src/session/use-mobile-diff-review-send-actions.test.ts
src/session/use-mobile-file-tap-handlers.test.ts
src/session/use-mobile-native-chat-image-attachments.test.ts
src/session/use-mobile-native-chat-turn-disclosure.test.tsx
src/session/use-mobile-pr-branch-context.test.ts
src/session/use-mobile-pr-sidebar-controller.test.ts
src/session/use-mobile-session-terminal-create-actions.test.ts
src/session/use-mobile-structured-agent-session-send.test.tsx
src/session/use-mobile-structured-agent-session.test.tsx
src/session/use-mobile-structured-prompt-responses.test.tsx
src/session/use-mobile-terminal-inventory-recovery.test.ts
src/settings/native-notification-delivery-settings.test.tsx
src/settings/notification-display-test.test.tsx
src/settings/settings-screen-state.test.tsx
src/settings/voice-settings-poller-refresh.test.tsx
src/source-control/MobileGitHistoryList.test.tsx
src/source-control/mobile-branch-compare.test.ts
src/source-control/mobile-create-pr-action.test.ts
src/source-control/mobile-git-status.test.ts
src/source-control/mobile-hosted-review-create-intent-runner.test.ts
src/source-control/use-mobile-hosted-review-eligibility.test.ts
src/tasks/source-workspace-create.test.ts
src/tasks/task-source-search-reply-schema.test.ts
src/terminal/buffered-terminal-draft-restoration.test.ts
src/terminal/mobile-terminal-query-reply.test.ts
src/terminal/terminal-caret-rendering-oracle.test.ts
src/terminal/terminal-live-accessory-raw-send.test.ts
src/terminal/terminal-live-text-commit.test.ts
src/terminal/terminal-webview-engine-error.test.ts
src/terminal/terminal-webview-query-reply-routing.test.ts
src/terminal/terminal-webview-wheel-scroll.test.ts
src/terminal/use-buffered-terminal-drafts.test.tsx
src/terminal/worker-terminal-takeover-report.test.ts
src/test-support/rpc-recording/native-mounting-substitutes.test.ts
src/test-support/rpc-recording/operation-module-loader.test.ts
src/test-support/rpc-recording/screen-native-substitutes.test.ts
src/transport/client-context.test.ts
src/transport/connection-revival-triggers.test.ts
src/transport/host-credential-cleanup.test.ts
src/transport/host-edit-navigation.test.ts
src/transport/host-list-load-sharing.test.ts
src/transport/host-removal-lifecycle.test.ts
src/transport/host-status-gates.test.ts
src/transport/host-store.test.ts
src/transport/mobile-endpoint-supervisor-nudge.test.ts
src/transport/mobile-relay-background-lifecycle.test.ts
src/transport/mobile-relay-direct-upgrade.test.ts
src/transport/mobile-relay-e2ee-link.test.ts
src/transport/mobile-relay-pairing-recovery.test.ts
src/transport/mobile-relay-pairing-reply.test.ts
src/transport/mobile-relay-physical-client.test.ts
src/transport/mobile-relay-reconnect-controller.test.ts
src/transport/mobile-relay-resume-director.test.ts
src/transport/mobile-relay-rpc-session-liveness.test.ts
src/transport/mobile-relay-rpc-session.test.ts
src/transport/mobile-relay-runtime-failover.test.ts
src/transport/pairing-relay-candidate.test.ts
src/transport/pre-profile-pairing-coordinator.test.ts
src/transport/rpc-client-synthesized-close-diagnostics.test.ts
src/transport/rpc-operation.test.ts
src/transport/rpc-session-liveness-watchdog.test.ts
src/transport/runtime-capability-probe.test.ts
src/transport/settings-host-client-lifecycle.test.ts
src/worktree/agent-row-display.test.ts
src/worktree/agent-row-lineage.test.ts
src/worktree/host-worktree-refresh.test.ts
src/worktree/worktree-host-row-identity.test.ts
src/worktree/worktree-list-completeness.test.ts
src/worktree/worktree-list-snapshot.test.ts