Repository navigation
fix(next): workspace notification banner compiles against the where/what banner (base compile red) - #23286
Conversation
…re/what banner (base compile red) d168615 (notify --workspace) called post(..., subtitle:), which 9aa00c6 (banners say where, who and what) had removed: post builds the title and subtitle with NotificationBannerFormatter. feat-cmux-next fails to compile CmuxNextApp at NotificationCenterService.swift:399. The workspace's name now goes in as workspaceName, so the banner's title names the workspace and the subtitle is the headline, as for a terminal's notification. The arrival test expects that layout. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15cfc-663f-7650-b9f7-64d198c6b88b&host=cosmic-gray
|
Owned by orphan-sweep on cosmic-gray · session |
|
Owned by orphan-sweep on cosmic-gray · session |
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Not verified: macOS jobs did not run: compile and app tests were skipped on CI passes on Written by red: cmux-next checks (god files, concurrency, crash safety, l10n); base red: the same failure on the base 0e51a06; does not block |
|
Found 4 test failures on Blacksmith runners: Failures
|
|
Review (independent-subagent): SHIP at 513b5fe Read with git against origin/feat-cmux-next (dfb5330; nothing on base has touched these files since the merge base 0e51a06, so base has not fixed this already).
Nit, not blocking and from before this PR: the doc comment on |
Picks up #23286, the base compile fix this head's compile needs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Shipped in:
|
…ent that described it (#23320) #23281 and #23286 fixed the same base compile break (`d168615bffca0` passed `subtitle:` to `post`, which had no such parameter) by opposite routes, and #23286 landed first: - #23286 changed the caller to pass the existing `workspaceName:`, so the formatter takes its workspace branch — banner title `build`, subtitle `Deploy done` — and flipped `WorkspaceNotificationArrivalTests` to match. - #23281 (mine, 58 minutes later) gave `post` the `subtitle:` parameter the original caller had asked for. They merged without a conflict, because they touch different lines, and the result compiles and passes. But nothing passes `subtitle:` any more, so the parameter is dead and `subtitle ?? notification.shownSubtitle` always takes the right-hand side. Worse, the doc comment I added with it says a tab-less banner "keeps the poster's headline as the title and names its workspace there", which is no longer what this code does at all: #23286's caller makes the workspace the title. A false comment on a parameter no one calls is the part worth removing. `post`'s signature is now identical to its pre-feature form, and the formatter call is byte-for-byte what it was. #23286's design stands on its own. It also closes, by a better route than I had planned, the gap an independent review of #23281 found in that design: with `subtitle:` the workspace went into the poster-owned subtitle slot, so `cmux notify --workspace ws_x --subtitle api` (both flags are allowed together, cmux-tui/spec/cli.md:558) named the workspace nowhere. Under #23286 the workspace is the title, so it is always named, and the poster's subtitle joins the headline as `Deploy done · api`. Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15cb8-bbf0-7010-8d04-f9f2c0cb55df&host=big-red Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
feat-cmux-next does not compile CmuxNextApp right now:
d168615 (
cmux notify --workspace) posts a workspace notification's banner withpost(..., subtitle:). 9aa00c6 (banners say where, who and what) had already removed that parameter:postnow builds title and subtitle withNotificationBannerFormatter(title = where, subtitle = the headline and the poster's subtitle). The two landed close together and the merge broke. Fleetcmux-ci compile-check --appfails on base 66a1a07 (job 58034821f3e8efd722a6dba8) and on 69b5399 (job 1355cfaf27521d9eac5bc916).Fix: pass the workspace's name as
workspaceName. The banner's title names the workspace and the subtitle is the headline, the same layout as a terminal's notification.WorkspaceNotificationArrivalTestsexpected the old layout (title = headline, subtitle = workspace); it now expects titlebuild, subtitleDeploy done. It still checks that the banner names its workspace.Red fix: merges once its own compile passes and an independent review passes.
No capture: the only UI effect is the title/subtitle order of a
notify --workspacebanner, matching every other banner.Changelog: none
Agent session: cosmic-gray
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Fixes a compile error on
feat-cmux-nextwhere a workspace notification still passedsubtitle:topost, but that parameter was removed when banners moved toNotificationBannerFormatter.Passes the workspace name as
workspaceNameinstead, so the banner's title names the workspace and the subtitle shows the headline, matching every other banner. UpdatesWorkspaceNotificationArrivalTeststo expect that layout.Written for commit 513b5fe. Summary will update on new commits.