feat: unify workspace routing through tab-based URLs and remove legacy per-type routes

This commit is contained in:
Mohamed Boudra
2026-03-03 21:14:15 +07:00
parent 74ac17f910
commit f3796e2ba5
25 changed files with 204 additions and 569 deletions
@@ -2802,6 +2802,23 @@ export class DaemonClient {
const startedAtMs = getNowMs()
const rawData =
data && typeof data === 'object' && 'data' in data ? (data as { data: unknown }).data : data
if (
typeof Blob !== 'undefined' &&
rawData instanceof Blob &&
typeof rawData.arrayBuffer === 'function'
) {
void rawData
.arrayBuffer()
.then((buffer) => {
this.handleTransportMessage(buffer)
})
.catch(() => {
// Ignore failed blob decoding and allow reconnect logic to recover.
})
return
}
const rawBytes = asUint8Array(rawData)
if (rawBytes) {
const frame = decodeBinaryMuxFrame(rawBytes)
+6 -2
View File
@@ -6755,7 +6755,11 @@ export class Session {
}
const streamId = this.allocateTerminalStreamId()
const initialOffset = Math.max(0, Math.floor(msg.resumeOffset ?? 0))
const requestedResumeOffset =
typeof msg.resumeOffset === 'number'
? msg.resumeOffset
: session.getOutputOffset()
const initialOffset = Math.max(0, Math.floor(requestedResumeOffset))
const binding: {
terminalId: string
unsubscribe: () => void
@@ -6789,7 +6793,7 @@ export class Session {
replay: chunk.replay,
})
},
{ fromOffset: msg.resumeOffset ?? 0 }
{ fromOffset: requestedResumeOffset }
)
} catch (error) {
this.terminalStreams.delete(streamId)