diff --git a/src/main/runtime/rpc/methods/terminal/terminal-legacy-binary-control-frames.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-control-frames.ts similarity index 94% rename from src/main/runtime/rpc/methods/terminal/terminal-legacy-binary-control-frames.ts rename to src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-control-frames.ts index 1033464071c..f8bf36789d0 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-legacy-binary-control-frames.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-control-frames.ts @@ -4,10 +4,10 @@ import { decodeTerminalStreamText } from '../../../../../shared/terminal-stream-protocol' import { isTerminalInputLockedForClient, sendTerminalStreamInput } from './terminal-input-delivery' -import type { TerminalSubscriptionArgs } from './terminal-legacy-subscription-types' +import type { TerminalSubscriptionArgs } from './terminal-subscribe-types' import { updateViewportForClient } from './terminal-viewport-update' -type LegacyBinaryControlState = { +type TerminalSubscribeBinaryControlState = { isClosed: () => boolean isBuffering: () => boolean setRegisteredRemoteDesktopDriver: () => void @@ -17,11 +17,11 @@ type LegacyBinaryControlState = { sendFrame: (opcode: TerminalStreamOpcode, payload?: Uint8Array) => void } -export function registerLegacyBinaryControlFrames( +export function registerTerminalSubscribeBinaryControlFrames( args: TerminalSubscriptionArgs, streamId: number, remoteDesktopSubscriptionKey: string, - controls: LegacyBinaryControlState + controls: TerminalSubscribeBinaryControlState ): () => void { const { params, diff --git a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-live.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-live.ts similarity index 96% rename from src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-live.ts rename to src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-live.ts index da5761dffcf..f1b591e29f3 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-live.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-live.ts @@ -10,13 +10,13 @@ import { } from './terminal-snapshot-publication' import { updateViewportForClient } from './terminal-viewport-update' import type { - LegacyBinarySubscriptionState, + TerminalSubscribeBinaryState, TerminalSubscriptionArgs -} from './terminal-legacy-subscription-types' +} from './terminal-subscribe-types' -export function activateLegacyBinarySubscription( +export function activateTerminalSubscribeBinaryLive( args: TerminalSubscriptionArgs, - state: LegacyBinarySubscriptionState + state: TerminalSubscribeBinaryState ): void { const { params, runtime, emit, ptyId, clientId, isMobile, supportsDesktopViewportClaims } = args const lateRendererReady = state.lateRendererReadyPromise @@ -152,7 +152,7 @@ export function activateLegacyBinarySubscription( ).catch(() => {}) } - // Legacy fit-override-changed for non-mobile (desktop) subscribers + // fit-override-changed for non-mobile (desktop) subscribers state.unsubscribeFit = !isMobile ? runtime.subscribeToFitOverrideChanges(ptyId, (event) => { const mode = diff --git a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-snapshot.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-snapshot.ts similarity index 96% rename from src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-snapshot.ts rename to src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-snapshot.ts index f192b40b0d8..22c32381348 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-snapshot.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary-snapshot.ts @@ -11,15 +11,15 @@ import { trimPendingOutputCoveredBySnapshot } from './terminal-stream-replay' import type { - LegacyBinarySubscriptionState, + TerminalSubscribeBinaryState, TerminalSubscriptionArgs -} from './terminal-legacy-subscription-types' +} from './terminal-subscribe-types' const MOBILE_RENDERER_MOUNT_READY_TIMEOUT_MS = 3_000 -export async function publishLegacyBinaryInitialSnapshot( +export async function publishTerminalSubscribeBinarySnapshot( args: TerminalSubscriptionArgs, - state: LegacyBinarySubscriptionState + state: TerminalSubscribeBinaryState ): Promise { const { params, @@ -38,7 +38,7 @@ export async function publishLegacyBinaryInitialSnapshot( if (isMobile && clientId) { await registration.addMobilePresence(ptyId, clientId, params.viewport) } else if (clientId && params.viewport) { - // Why: legacy subscribe records geometry without taking ownership; only an explicit activity/claim frame may suppress the host. + // Why: terminal.subscribe records geometry without taking ownership; only an explicit activity/claim frame may suppress the host. state.registeredRemoteDesktopDriver = true state.pendingRemoteDesktopViewport = params.viewport } @@ -83,7 +83,7 @@ export async function publishLegacyBinaryInitialSnapshot( !rendererReady && (rendererMountRequestedBeforePty || runtime.requestRendererTerminalTabMount(params.terminal)) if (mountRequested) { - // Why: an idle legacy PTY emits no later byte, so wait for a settle proving this remount completed before replaying its screen. + // Why: an idle PTY emits no later byte, so wait for a settle proving this remount completed before replaying its screen. const mountWaitController = new AbortController() const abortMountWait = (): void => mountWaitController.abort() state.abortRendererMountWait = abortMountWait diff --git a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-binary.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary.ts similarity index 93% rename from src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-binary.ts rename to src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary.ts index 35d40a2d948..59158b348c3 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscribe-binary.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-binary.ts @@ -16,13 +16,13 @@ import { createTerminalOutputBatcher, type TerminalOutputBatcher } from './termi import { trimPendingOutputToBudget } from './terminal-stream-replay' import { allocateTerminalSubscriptionStreamId } from './terminal-subscription-stream-id' import type { - LegacyBinarySubscriptionState, + TerminalSubscribeBinaryState, TerminalSubscriptionArgs -} from './terminal-legacy-subscription-types' +} from './terminal-subscribe-types' import type { TerminalOutputChunk } from './terminal-stream-types' -import { publishLegacyBinaryInitialSnapshot } from './terminal-legacy-subscribe-snapshot' -import { activateLegacyBinarySubscription } from './terminal-legacy-subscribe-live' -import { registerLegacyBinaryControlFrames } from './terminal-legacy-binary-control-frames' +import { publishTerminalSubscribeBinarySnapshot } from './terminal-subscribe-binary-snapshot' +import { activateTerminalSubscribeBinaryLive } from './terminal-subscribe-binary-live' +import { registerTerminalSubscribeBinaryControlFrames } from './terminal-subscribe-binary-control-frames' const TERMINAL_QUERY_REPLAY_MAX_CHARS = 16 * 1024 export async function runTerminalBinarySubscription(args: TerminalSubscriptionArgs): Promise { const { runtime, registration, sendBinary, ptyId, clientId, isMobile } = args @@ -97,7 +97,7 @@ export async function runTerminalBinarySubscription(args: TerminalSubscriptionAr sendFrame(chunk.opcode ?? TerminalStreamOpcode.Output, chunk.bytes, chunk.seq) } }) - unregisterBinaryHandler = registerLegacyBinaryControlFrames( + unregisterBinaryHandler = registerTerminalSubscribeBinaryControlFrames( args, streamId, remoteDesktopSubscriptionKey, @@ -164,7 +164,7 @@ export async function runTerminalBinarySubscription(args: TerminalSubscriptionAr releaseViewSubscriber() unsubscribeStreamData() } - const state: LegacyBinarySubscriptionState = { + const state: TerminalSubscribeBinaryState = { streamId, remoteDesktopSubscriptionKey, get closed() { @@ -257,10 +257,10 @@ export async function runTerminalBinarySubscription(args: TerminalSubscriptionAr streamClosed, sendFrame } - await publishLegacyBinaryInitialSnapshot(args, state) + await publishTerminalSubscribeBinarySnapshot(args, state) if (registration.released) { return } - activateLegacyBinarySubscription(args, state) + activateTerminalSubscribeBinaryLive(args, state) await streamClosed } diff --git a/src/main/runtime/rpc/methods/terminal/terminal-legacy-simple-subscriptions.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-json-and-lease.ts similarity index 94% rename from src/main/runtime/rpc/methods/terminal/terminal-legacy-simple-subscriptions.ts rename to src/main/runtime/rpc/methods/terminal/terminal-subscribe-json-and-lease.ts index 9a52d8f585c..350e73c1014 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-legacy-simple-subscriptions.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-json-and-lease.ts @@ -3,7 +3,7 @@ import type { TerminalOutputBatcher } from './terminal-output-batcher' import { isTerminalReadPayloadIncomplete } from './terminal-stream-replay' import { serializeBudgetedMobileSnapshot } from './terminal-snapshot-publication' import { updateViewportForClient } from './terminal-viewport-update' -import type { TerminalSubscriptionArgs } from './terminal-legacy-subscription-types' +import type { TerminalSubscriptionArgs } from './terminal-subscribe-types' import { allocateTerminalSubscriptionStreamId } from './terminal-subscription-stream-id' export async function runTerminalLeaseSubscription(args: TerminalSubscriptionArgs): Promise { @@ -93,7 +93,7 @@ export async function runTerminalJsonSubscription(args: TerminalSubscriptionArgs const unsubscribeStreamData = runtime.subscribeToTerminalData(ptyId, (data) => { outputBatcher?.push(data) }) - // Why: the legacy JSON stream can feed a live xterm view, so register as a view subscriber; worst case is a withheld model reply, safer than a double reply. + // Why: the terminal.subscribe JSON stream can feed a live xterm view, so register as a view subscriber; worst case is a withheld model reply, safer than a double reply. const releaseViewSubscriber = runtime.registerRemoteTerminalViewSubscriber(ptyId) unsubscribeData = () => { releaseViewSubscriber() diff --git a/src/main/runtime/rpc/methods/terminal/terminal-subscribe-method.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-method.ts index 0b1ae4e54b4..cc5ae0d7796 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-subscribe-method.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-method.ts @@ -1,12 +1,12 @@ import { defineStreamingMethod } from '../../core' import { TerminalSubscribe } from '../../../../../shared/rpc-contract/terminal-stream-params' import { isTerminalReadPayloadIncomplete } from './terminal-stream-replay' -import { runTerminalBinarySubscription } from './terminal-legacy-subscribe-binary' +import { runTerminalBinarySubscription } from './terminal-subscribe-binary' import { runTerminalJsonSubscription, runTerminalLeaseSubscription -} from './terminal-legacy-simple-subscriptions' -import type { TerminalSubscriptionArgs } from './terminal-legacy-subscription-types' +} from './terminal-subscribe-json-and-lease' +import type { TerminalSubscriptionArgs } from './terminal-subscribe-types' import { registerTerminalSubscription } from './terminal-subscription-registration' export const TERMINAL_SUBSCRIBE_METHODS = [ diff --git a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscription-types.ts b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-types.ts similarity index 97% rename from src/main/runtime/rpc/methods/terminal/terminal-legacy-subscription-types.ts rename to src/main/runtime/rpc/methods/terminal/terminal-subscribe-types.ts index 543760e3b65..de4b1f5bdce 100644 --- a/src/main/runtime/rpc/methods/terminal/terminal-legacy-subscription-types.ts +++ b/src/main/runtime/rpc/methods/terminal/terminal-subscribe-types.ts @@ -27,7 +27,7 @@ export type TerminalSubscriptionArgs = { serializerGenerationBeforeMobileFit: number } -export type LegacyBinarySubscriptionState = { +export type TerminalSubscribeBinaryState = { readonly streamId: number readonly remoteDesktopSubscriptionKey: string closed: boolean