Skip to content

test: pin which terminal tabs get an agent mark after #14062 - #14177

Merged
teamleaderleo merged 1 commit into
mainfrom
fix/tab-agent-mark-followups
Sep 24, 2026
Merged

teamleaderleo merged 1 commit into
mainfrom
fix/tab-agent-mark-followups

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Sep 24, 2026 •

Copy link
Copy Markdown
Collaborator

Follow-up to #14062. No product code changes behavior here; this documents one visible change #14062 made and closes three test gaps it left.

Behavior change from #14062, now pinned. A restored tab shows its agent's mark only while the restored agent command is running (autoResumeCommandRunning or observedAgentCommandRunning). So after relaunch, a tab that is still waiting to auto-resume, or that offers a manual resume, looks like a plain terminal until the agent starts. Before #14062 those tabs showed the agent mark from the restored snapshot. The new restoredAgentThatHasNotResumedGetsNoAgentMark() pins both states.

Test gaps in TerminalTabIconRegressionTests:

scripts/ci/app-host-known-failures.json still listed activeAgentKeepsReleaseTerminalIcon(statusKey:), which #14062 deleted; the entry is gone. validate-catalog, catalog-diff against main (20 -> 19) and tests/test_ci_app_host_result_accounting.py pass locally.

Validation: the new tests are Swift app-host tests; the changed-suites lane runs TerminalTabIconRegressionTests on this PR. I haven't run them against an inverted assertion.

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


Summary by cubic

Follow-up to #14062 that pins a visible behavior change and closes three test gaps in TerminalTabIconRegressionTests; no product behavior changes.

  • Restored tabs now show an agent mark only while the restored agent command runs, so tabs awaiting auto-resume or offering manual resume show no mark until the agent starts.
  • Re-added a test pinning that a title that merely looks like an agent (codex --yolo) gets no mark, and removed the now-unused titleStatusKey(from:).
  • The quit-to-shell test now asserts the resumed agent marks the tab before quitting, so it can't pass vacuously.
  • Removed the stale known-failure entry for the deleted activeAgentKeepsReleaseTerminalIcon(statusKey:).

Written for commit 332bc69. Summary will update on new commits.

Review in cubic

#14062 left three gaps in TerminalTabIconRegressionTests:
- it deleted the test for #13299's rule that a title which merely looks
  like an agent command gets no mark; restore it against current
  behavior and drop the now-unused TerminalTabAgentIconResolver
  titleStatusKey(from:);
- the quit-to-shell test could pass without a mark ever being applied;
  assert the resumed agent marks the tab before it quits;
- restored tabs that have not resumed yet (awaiting auto-resume, manual
  resume available) now show no mark; pin that.

Also remove the known-failure entry for the deleted
activeAgentKeepsReleaseTerminalIcon(statusKey:).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 24, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 11 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 10 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Repository: manaflow-ai/cmux/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 7a92f9a2-4529-4680-bee3-23d2200c0b8e

📥 Commits

Reviewing files that changed from the base of the PR and between 7ae086f and 332bc69.

📒 Files selected for processing (3)
  • Sources/TerminalTabAgentIcon.swift
  • cmuxTests/TerminalTabIconRegressionTests.swift
  • scripts/ci/app-host-known-failures.json

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@teamleaderleo
teamleaderleo merged commit 9a1dea0 into main Sep 24, 2026
55 of 56 checks passed
rustybret pushed a commit to rustybret/bmux that referenced this pull request Sep 24, 2026
ff6c6dc ci: stop restoring an iOS GhosttyKit cache nothing saves (manaflow-ai#14189)
2827231 ci: seed DerivedData on the 12 vCPU macOS 26 pool (manaflow-ai#14188)
ae46aa9 Let Computer Use toggles save past unrelated cmux.json issues (manaflow-ai#14183)
a785270 test: fail loudly when portal rendering authority denies a fixture's tab id (manaflow-ai#13937)
9a1dea0 test: pin which terminal tabs get an agent mark after manaflow-ai#14062 (manaflow-ai#14177)
91bcb28 test: run the change-area tests in parallel workers (manaflow-ai#14193)
6d203e8 test: await the geometry publish in the equalize-splits shortcut case (manaflow-ai#13916)
48f1adf ci: balance the guard legs the macOS gate waits on (manaflow-ai#14186)
38117cd test: settle the split's reparent-focus suppression before focus feedback (manaflow-ai#14049)
a12a0b8 ci: neutralize Swift sources without a per-character loop (manaflow-ai#14169)
2b6ca4c ci: stop counting queue time on cancelled jobs as runner minutes (manaflow-ai#14187)
2837f22 test: stop gating terminal focus on key status the app host cannot grant (manaflow-ai#13948)
23c0ce2 test: give each detect-step run its own cmux-ci scratch files (manaflow-ai#14185)
a13ea28 ci: skip Mac lanes that bundled scripts and guard-only lints cannot fail (manaflow-ai#14179)
b59f34f ci: restore Swift packages and a compilation cache for iOS uploads (manaflow-ai#14180)
bcca243 profiling: poll child processes every 0.1 s instead of every second (manaflow-ai#14170)
76d6176 refactor: move 45 leaf browser files into CmuxBrowser (manaflow-ai#14092)
bf13034 test: fail the Desktop drop fast instead of restarting the app host (manaflow-ai#14076)
51d486b ci: start guards and web beside Fast static checks (manaflow-ai#14176)

# Conflicts:
#	.github/workflows/ci-guards.yml
#	.github/workflows/ci.yml
#	.github/workflows/ios-appstore-upload.yml
#	.github/workflows/ios-testflight.yml
#	.github/workflows/nightly.yml
#	.github/workflows/seed-derived-data.yml
#	.github/workflows/test-ios.yml
lawrencecchen added a commit that referenced this pull request Sep 24, 2026
Keeps the Cloud-only tab icon resolver over #14062's local restored-agent
marks, per the product decision that local tabs keep the plain terminal
icon; the #14177 test now expects no mark while a local agent runs.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
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