Skip to content

test: fix the two CI failures #25751 left on main - #25937

Closed
brennanb2025 wants to merge 1 commit into
mainfrom
brennanb2025/fix-main-ci-after-25751
Closed

brennanb2025 wants to merge 1 commit into
mainfrom
brennanb2025/fix-main-ci-after-25751

Conversation

@brennanb2025

@brennanb2025 brennanb2025 commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor
Files Added Deleted Net
Test 3 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​260 $\color{#cf222e}{\Huge{\mathbf{−}}}$​267 $\color{#cf222e}{\Huge{\mathbf{−}}}$​7
Prod 2 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​59 $\color{#cf222e}{\Huge{\mathbf{−}}}$​1 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​58

ELI5

Main's #25751 left two test files that fail CI checks, so every pull request opened against main now shows red, whatever it changes. Main's own runs skip those checks, so main itself looks green. This PR fixes both test files. Nothing in the app changes.

What Changed

The problem. Every PR that CI checks against current main (128d154 or later) fails three checks, and none of the failures are in the PR's own files:

Because "static analysis" fails first, CI skips every PR's unit shards, cross-version and package jobs. Main's own push runs don't run these checks, so main looks green.

For users: nothing changes. This is a test-only PR.

The change:

  • structured-agent-session-live-turn.test.ts: the two calls pass { items: [...] }, the shape every other call in that file already uses. Leaving latestTurn out keeps the old meaning: the function reads the rows, so each assertion still checks a reasoning row's own running/completed state.
  • use-mobile-native-chat-turn-disclosure.test.tsx: split by concern, with no lint disable and no per-file limit bump.
    • The describe block "keeps the live bar under the prompt that opened the running turn, not a mid-turn send" moves whole into use-mobile-native-chat-turn-disclosure-mid-turn-send.test.tsx, under the same outer describe name, so every test's full name is unchanged.
    • The hook harness and the userMessage builder both files use move to use-mobile-native-chat-turn-disclosure.test-support.tsx, so neither file copies them.
    • The harness now records the hook's result on a small DisclosureResult component instead of the host-element string 'result', the pattern other mobile tests use. A string isn't an ElementType, so the original file had always been on the mobile tests-typecheck baseline, the list of test files that don't typecheck yet. The split copy failed that check as a new file. Both files now typecheck, and the original leaves the baseline (127 entries, was 128).
    • The original file is now 628 lines and the new one about 225.

Why

A split by describe block keeps every test as written, under the same name, and keeps the file limit as it is. Raising or disabling the limit would only hide the next file that outgrows it.

Linked Issue

None. This fixes CI failures on main.

Visual Proof

N/A: test-only change.

Testing

  • structured-agent-session-live-turn.test.ts: 17 passed (root vitest config).

  • Both mobile test files, with the mobile runner: 21 passed. vitest list of main's original file and of the two new files gives the same 21 full test names.

  • tc:cli and tc:node pass through tc-gate. Mobile tsc --noEmit and scripts/check-tests-typecheck-ratchet.mjs, run in mobile/ the way CI runs them, both pass. The ratchet reports 923 test files in the program and the stale baseline entry pruned.

  • oxlint on the changed files (root and mobile config) is clean, and so is oxfmt. The max-lines ratchet passes with no new suppressions.

  • I manually tested these changes locally

  • Automated tests added/updated, or explained why not below

AI Disclosure

Review

Agent skill upstream boundary

  • Not applicable, or this change follows docs/reference/agent-skill-sharing-upstream-boundary.md and copies or mechanically translates no upstream skill-installer source, tests, fixtures, registry entries, path tables, comments, or documentation.

Notes

Author: @BrennanKB5. Test-only: no impact on the app, cross-platform behaviour, SSH, mobile behaviour or compatibility.

Checklist

  • This PR is small and focused
  • I explained what changed and why (ELI5, the user-facing before/after, the mechanism, and why over the alternatives)
  • Before/after screenshots or videos attached for UI changes, or N/A with reason
  • Self-reviewed for correctness, security, and performance
  • Cross-platform, SSH/remote, and path/shortcut impact considered (or N/A)
  • pnpm lint, pnpm typecheck, pnpm test, and pnpm build pass (or CI will cover; local preferred)

- structured-agent-session-live-turn.test.ts: pass the host turn source ({ items }) the module
  now takes; without latestTurn it reads the rows, so each assertion keeps its meaning.
- use-mobile-native-chat-turn-disclosure.test.tsx was over mobile's 800-line limit. The
  mid-turn-send describe moves whole to its own file under the same outer describe, and the
  shared harness moves to a test-support module. The harness now renders a component instead of
  a host-element string, so both files typecheck and the original leaves the tests-typecheck
  baseline.
@brennanb2025

Copy link
Copy Markdown
Contributor Author

Closing: main's #25933 already split the mobile turn-disclosure test, and #25936 / #25940 carry the live-turn test fix.

@brennanb2025
brennanb2025 deleted the brennanb2025/fix-main-ci-after-25751 branch October 6, 2026 19:09
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