( ctx: BootContext, input: RunRuntimeInput, state: RuntimeState, )
| 156 | const LOCAL_REPLAY_ROW_LIMIT = 100 |
| 157 | |
| 158 | async function resolveExitTitle( |
| 159 | ctx: BootContext, |
| 160 | input: RunRuntimeInput, |
| 161 | state: RuntimeState, |
| 162 | ): Promise<string | undefined> { |
| 163 | if (!state.shown || !hasSession(input, state)) { |
| 164 | return undefined |
| 165 | } |
| 166 | |
| 167 | return ctx.sdk.session |
| 168 | .get({ |
| 169 | sessionID: state.sessionID, |
| 170 | }) |
| 171 | .then((x) => x.data?.title) |
| 172 | .catch(() => undefined) |
| 173 | } |
| 174 | |
| 175 | // Core runtime loop. Boot resolves the SDK context, then we set up the |
| 176 | // lifecycle (renderer + footer), wire the stream transport for SDK events, |
no test coverage detected