Fix ssh stack review regressions

This commit is contained in:
Lawrence Chen 2026-03-13 07:29:22 -07:00
parent 1b95c25e21
commit 85e6a5aae4
4 changed files with 29 additions and 9 deletions

View file

@ -471,16 +471,13 @@ jobs:
path: | path: |
cmux-nightly-macos*.dmg cmux-nightly-macos*.dmg
appcast.xml appcast.xml
<<<<<<< HEAD
remote-daemon-assets/cmuxd-remote-darwin-arm64 remote-daemon-assets/cmuxd-remote-darwin-arm64
remote-daemon-assets/cmuxd-remote-darwin-amd64 remote-daemon-assets/cmuxd-remote-darwin-amd64
remote-daemon-assets/cmuxd-remote-linux-arm64 remote-daemon-assets/cmuxd-remote-linux-arm64
remote-daemon-assets/cmuxd-remote-linux-amd64 remote-daemon-assets/cmuxd-remote-linux-amd64
remote-daemon-assets/cmuxd-remote-checksums.txt remote-daemon-assets/cmuxd-remote-checksums.txt
remote-daemon-assets/cmuxd-remote-manifest.json remote-daemon-assets/cmuxd-remote-manifest.json
=======
appcast-universal.xml appcast-universal.xml
>>>>>>> origin/main
if-no-files-found: error if-no-files-found: error
- name: Move nightly tag to built commit - name: Move nightly tag to built commit

View file

@ -4878,7 +4878,11 @@ struct CMUXCLI {
throw CLIError(message: "Unsupported browser console subcommand: \(consoleVerb)") throw CLIError(message: "Unsupported browser console subcommand: \(consoleVerb)")
} }
let payload = try client.sendV2(method: method, params: ["surface_id": sid]) let payload = try client.sendV2(method: method, params: ["surface_id": sid])
output(payload, fallback: "OK") if effectiveJSONOutput || consoleVerb == "clear" {
output(payload, fallback: "OK")
} else {
print(displayBrowserLogItems(payload["entries"]) ?? "No console entries")
}
return return
} }
@ -4892,7 +4896,11 @@ struct CMUXCLI {
throw CLIError(message: "Unsupported browser errors subcommand: \(errorsVerb)") throw CLIError(message: "Unsupported browser errors subcommand: \(errorsVerb)")
} }
let payload = try client.sendV2(method: "browser.errors.list", params: params) let payload = try client.sendV2(method: "browser.errors.list", params: params)
output(payload, fallback: "OK") if effectiveJSONOutput || errorsVerb == "clear" {
output(payload, fallback: "OK")
} else {
print(displayBrowserLogItems(payload["errors"]) ?? "No browser errors")
}
return return
} }
@ -6458,6 +6466,14 @@ struct CMUXCLI {
client: SocketClient, client: SocketClient,
windowOverride: String? windowOverride: String?
) throws -> String { ) throws -> String {
func insertArgumentBeforeSeparator(_ value: String, into args: inout [String]) {
if let separatorIndex = args.firstIndex(of: "--") {
args.insert(value, at: separatorIndex)
} else {
args.append(value)
}
}
var forwardedArgs: [String] = [] var forwardedArgs: [String] = []
var resolvedExplicitWorkspace = false var resolvedExplicitWorkspace = false
var index = 0 var index = 0
@ -6486,7 +6502,7 @@ struct CMUXCLI {
if !resolvedExplicitWorkspace, if !resolvedExplicitWorkspace,
let workspaceArg = workspaceFromArgsOrEnv(commandArgs, windowOverride: windowOverride) { let workspaceArg = workspaceFromArgsOrEnv(commandArgs, windowOverride: windowOverride) {
let workspaceId = try resolveWorkspaceId(workspaceArg, client: client) let workspaceId = try resolveWorkspaceId(workspaceArg, client: client)
forwardedArgs.append("--tab=\(workspaceId)") insertArgumentBeforeSeparator("--tab=\(workspaceId)", into: &forwardedArgs)
} }
let command = ([socketCommand] + forwardedArgs) let command = ([socketCommand] + forwardedArgs)

View file

@ -85,8 +85,6 @@ _cmux_ensure_ghostty_preexec_strips_both_marks() {
} }
_cmux_patch_ghostty_semantic_redraw() { _cmux_patch_ghostty_semantic_redraw() {
(( _CMUX_GHOSTTY_SEMANTIC_PATCHED )) && return 0
local old_frag new_frag local old_frag new_frag
old_frag='133;A;cl=line' old_frag='133;A;cl=line'
new_frag='133;A;redraw=last;cl=line' new_frag='133;A;redraw=last;cl=line'

View file

@ -568,7 +568,16 @@ extension Workspace {
applySessionPanelMetadata(snapshot, toPanelId: browserPanel.id) applySessionPanelMetadata(snapshot, toPanelId: browserPanel.id)
return browserPanel.id return browserPanel.id
case .markdown: case .markdown:
return nil guard let filePath = snapshot.markdown?.filePath,
let markdownPanel = newMarkdownSurface(
inPane: paneId,
filePath: filePath,
focus: false
) else {
return nil
}
applySessionPanelMetadata(snapshot, toPanelId: markdownPanel.id)
return markdownPanel.id
} }
} }