carry #29651: Session Info is called Session Info in its code, not Inspector

Merged
TE
5d ago
+2701-2439

Carries #29651 (Leo's commits, his authorship) with base merged in, because #29651 conflicted with feat-cmux-next in 16 files and its lane is idle (last activity 2026-10-31 20:48Z).

Leo, 2026-10-31: "WHY THE F***ING IS IT STILL CALLED INSPECTOR IN THE CODE STOP CALLING IT THAT"

What changed

Same as #29651: the agent pane's right-hand panel is Session Info in its code. acpmux/inspector/ is now session-info/, ChatInspector is SessionInfo, useChatInspector is useSessionInfo, the CSS classes are acpmux-session-info-*, the custom properties are --acpmux-session-info-*, and the catalog keys are sessionInfo.*. On the Swift side, AgentPaneTunables.sessionInfo and AgentPaneHeaderState.sessionInfo are renamed. Saved-state and wire names stay as they were: agent.inspector, the cmux.agentPane.inspector.* localStorage keys, agentPane.display.inspector.placement, the header state's inspector field, and the agent-pane.inspector-* gallery ids. A new guard, check:session-info-names, fails on any other use.

The two base merges added here (e29b4cd2):

  • Every conflict keeps base's behaviour: Compact session plus the until-auto-compact count, the short-pane popover, stable callbacks with the memoised presence, the right-end drag handle, base's tray comment, and check:layout-grid.
  • The rename is applied to code base added since: inspectorPopover is now sessionInfoPopover (along with its test file), InspectorComposerFoot.gallery.ts is now SessionInfoComposerFoot.gallery.ts, the chatInspector.context.{compactSession,untilAutoCompact,free} keys use sessionInfo.*, and the acpmux-chat-inspector-* / --acpmux-inspector-* selectors are renamed in test/support/gridScenes.ts and in the new tests.

Checks

  • scripts/cmux-next/check-session-info-names.py passes, along with its self-test and shell test.
  • cmux-ci compile-check --app passes at e29b4cd2.

Risk

This is a wide rename across webviews and Swift. The risk is a selector or catalog key that missed the rename. The webview suite and catalog-key check cover that. No behaviour change is intended.

Agent session: agent session

šŸ¤– Generated with Claude Code


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


Summary by cubic

Carries the Session Info rename from #29651 onto feat-cmux-next, resolving the 16-file conflict that left the original lane idle. The agent pane's right-hand panel is now Session Info in code: acpmux/inspector/ becomes session-info/, ChatInspector becomes SessionInfo, CSS classes and custom properties become acpmux-session-info-* and --acpmux-session-info-*, catalog keys become sessionInfo.*, and the Swift tunables and header state fields are renamed.

Saved state and wire names stay as-is (agent.inspector, cmux.agentPane.inspector.*, agentPane.display.inspector.placement, the header state's inspector field, and agent-pane.inspector-* gallery ids), and the other inspectors (event, memory, web, pointer) keep their names. A new guard, check:session-info-names, fails on any other "inspector" identifier, class, or file name in the panel's code.

Merge resolutions

  • Every conflict keeps base's behaviour: the compact-session count, short-pane popover, stable callbacks with memoised presence, right-end drag handle, and check:layout-grid.
  • The rename extends to code added since: sessionInfoPopover and its test, SessionInfoComposerFoot.gallery.ts, and the new tests.
  • A final format pass (vp fmt) keeps the Context label on one line.

No behaviour change is intended. The main risk is a missed selector or catalog key; the new guard and the webview suite cover that.