gaunt-sloth 2.0.0-beta.8 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/.gsloth.review-discovery.md +19 -0
  2. package/cli.js +49 -0
  3. package/dist/cli.js +37 -3
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/adkEvalRunner.d.ts +7 -6
  6. package/dist/commands/adkEvalRunner.js +3 -3
  7. package/dist/commands/adkEvalRunner.js.map +1 -1
  8. package/dist/commands/agUiEvalRunner.d.ts +4 -4
  9. package/dist/commands/agUiEvalRunner.js +8 -7
  10. package/dist/commands/agUiEvalRunner.js.map +1 -1
  11. package/dist/commands/askCommand.js +9 -1
  12. package/dist/commands/askCommand.js.map +1 -1
  13. package/dist/commands/batchCommand.d.ts +2 -2
  14. package/dist/commands/batchCommand.js +10 -5
  15. package/dist/commands/batchCommand.js.map +1 -1
  16. package/dist/commands/commandIntrospection.d.ts +1 -1
  17. package/dist/commands/commandIntrospection.js +6 -3
  18. package/dist/commands/commandIntrospection.js.map +1 -1
  19. package/dist/commands/configCommand.d.ts +1 -1
  20. package/dist/commands/configCommand.js +1 -1
  21. package/dist/commands/configSetup.d.ts +1 -1
  22. package/dist/commands/discoveryConfigSchemaAgreement.d.ts +45 -0
  23. package/dist/commands/discoveryConfigSchemaAgreement.js +2 -0
  24. package/dist/commands/discoveryConfigSchemaAgreement.js.map +1 -0
  25. package/dist/commands/evalCommand.d.ts +27 -1
  26. package/dist/commands/evalCommand.js +155 -13
  27. package/dist/commands/evalCommand.js.map +1 -1
  28. package/dist/commands/execCommand.d.ts +1 -1
  29. package/dist/commands/execCommand.js +9 -2
  30. package/dist/commands/execCommand.js.map +1 -1
  31. package/dist/commands/firstRunDialog.d.ts +3 -3
  32. package/dist/commands/firstRunDialog.js +2 -2
  33. package/dist/commands/getCommand.js +10 -1
  34. package/dist/commands/getCommand.js.map +1 -1
  35. package/dist/commands/historyCommand.d.ts +1 -1
  36. package/dist/commands/historyCommand.js +16 -4
  37. package/dist/commands/historyCommand.js.map +1 -1
  38. package/dist/commands/prCommand.js +45 -16
  39. package/dist/commands/prCommand.js.map +1 -1
  40. package/dist/commands/prDiscovery.d.ts +24 -25
  41. package/dist/commands/prDiscovery.js +55 -132
  42. package/dist/commands/prDiscovery.js.map +1 -1
  43. package/dist/commands/requirementsDiscovery.d.ts +82 -0
  44. package/dist/commands/requirementsDiscovery.js +127 -0
  45. package/dist/commands/requirementsDiscovery.js.map +1 -0
  46. package/dist/commands/reviewCommand.js +75 -8
  47. package/dist/commands/reviewCommand.js.map +1 -1
  48. package/dist/commands/reviewDiscovery.d.ts +96 -0
  49. package/dist/commands/reviewDiscovery.js +180 -0
  50. package/dist/commands/reviewDiscovery.js.map +1 -0
  51. package/dist/tui/approvalBridges.d.ts +86 -0
  52. package/dist/tui/approvalBridges.js +147 -0
  53. package/dist/tui/approvalBridges.js.map +1 -0
  54. package/dist/tui/components/App.js +272 -27
  55. package/dist/tui/components/App.js.map +1 -1
  56. package/dist/tui/components/DebugPanel.d.ts +6 -3
  57. package/dist/tui/components/DebugPanel.js +32 -10
  58. package/dist/tui/components/DebugPanel.js.map +1 -1
  59. package/dist/tui/components/FetchProgress.d.ts +1 -1
  60. package/dist/tui/components/LaunchBanner.d.ts +4 -3
  61. package/dist/tui/components/LaunchBanner.js +8 -6
  62. package/dist/tui/components/LaunchBanner.js.map +1 -1
  63. package/dist/tui/components/LiveTurn.d.ts +15 -9
  64. package/dist/tui/components/LiveTurn.js +15 -14
  65. package/dist/tui/components/LiveTurn.js.map +1 -1
  66. package/dist/tui/components/PromptInput.d.ts +2 -2
  67. package/dist/tui/components/PromptInput.js +11 -6
  68. package/dist/tui/components/PromptInput.js.map +1 -1
  69. package/dist/tui/components/ResumePicker.d.ts +69 -0
  70. package/dist/tui/components/ResumePicker.js +93 -0
  71. package/dist/tui/components/ResumePicker.js.map +1 -0
  72. package/dist/tui/components/SelectList.d.ts +1 -1
  73. package/dist/tui/components/SelectList.js +1 -1
  74. package/dist/tui/components/SlashCommandMenu.d.ts +1 -1
  75. package/dist/tui/components/SlashCommandMenu.js +1 -1
  76. package/dist/tui/components/StatusBar.d.ts +27 -1
  77. package/dist/tui/components/StatusBar.js +13 -2
  78. package/dist/tui/components/StatusBar.js.map +1 -1
  79. package/dist/tui/debugRender.d.ts +26 -3
  80. package/dist/tui/debugRender.js +232 -2
  81. package/dist/tui/debugRender.js.map +1 -1
  82. package/dist/tui/fixtureAgent.d.ts +2 -2
  83. package/dist/tui/fixtureAgent.js +2 -2
  84. package/dist/tui/keyBindings.js +7 -1
  85. package/dist/tui/keyBindings.js.map +1 -1
  86. package/dist/tui/keyGuards.d.ts +1 -1
  87. package/dist/tui/keyGuards.js +1 -1
  88. package/dist/tui/ruleWidth.d.ts +1 -1
  89. package/dist/tui/ruleWidth.js +1 -1
  90. package/dist/tui/selectCancelled.d.ts +1 -1
  91. package/dist/tui/selectCancelled.js +1 -1
  92. package/dist/tui/transcriptWindow.js +7 -1
  93. package/dist/tui/transcriptWindow.js.map +1 -1
  94. package/dist/tui/tuiSessionModule.js +89 -190
  95. package/dist/tui/tuiSessionModule.js.map +1 -1
  96. package/dist/tui/types.d.ts +77 -18
  97. package/dist/tui/useMouse.d.ts +1 -1
  98. package/dist/tui/useMouse.js +1 -1
  99. package/dist/tui/useSlothAnimation.d.ts +1 -1
  100. package/dist/tui/viewModel.d.ts +64 -12
  101. package/dist/tui/viewModel.js +43 -11
  102. package/dist/tui/viewModel.js.map +1 -1
  103. package/dist/utils/configErrorGuard.d.ts +11 -3
  104. package/dist/utils/configErrorGuard.js +11 -3
  105. package/dist/utils/configErrorGuard.js.map +1 -1
  106. package/package.json +18 -18
@@ -1,5 +1,8 @@
1
1
  import { mapChatMessagesToStoredMessages } from '@langchain/core/messages';
2
2
  import { z } from 'zod';
3
+ import { APPROVAL_RUNG_LABELS, isRatedRung } from '@gaunt-sloth/core/config.js';
4
+ import { neutralizeUntrustedText } from '@gaunt-sloth/core/core/shell/framing.js';
5
+ import { redactForToolDisplay } from '@gaunt-sloth/core/core/toolDisplay.js';
3
6
  import { MCP_TOOL_NAME_PREFIX } from '@gaunt-sloth/core/constants.js';
4
7
  /**
5
8
  * Pure renderers turning the agent's debug captures into the JSON strings the `/debug`
@@ -111,7 +114,7 @@ const MCP_TAB_DESCRIPTION = 'MCP server overview. For each connected MCP server:
111
114
  /**
112
115
  * TUI-C20: gather the session-stable inputs the MCP debug tab needs — the configured MCP server
113
116
  * list and each server's captured discovery instructions. Instructions come from EXT-32's
114
- * {@link AgentResolvers.getMcpServerInstructions} accessor (captured once during tool resolution and
117
+ * `AgentResolvers.getMcpServerInstructions` accessor (captured once during tool resolution and
115
118
  * reused here, NOT re-queried), so the tab shows exactly the same instruction text the system prompt
116
119
  * was composed with. React-free + defensive (missing config / accessor → empty) so it is unit
117
120
  * testable and can never blank or crash the panel. The per-server tool grouping is left to
@@ -130,7 +133,7 @@ export function collectMcpOverview(config, resolvers) {
130
133
  * contributed tools by their server-prefixed name (`mcp__<server>__<tool>`) with a one-line
131
134
  * description. Tool SCHEMAS are deliberately NOT rendered here — the intro points at the Tools tab
132
135
  * for those. `servers` is the full configured server list; `extras.tools` is the live per-turn tool
133
- * catalogue, regrouped by the shared {@link MCP_TOOL_NAME_PREFIX} prefix so the grouping can't drift
136
+ * catalogue, regrouped by the shared {@link @gaunt-sloth/core!constants.MCP_TOOL_NAME_PREFIX | MCP_TOOL_NAME_PREFIX} prefix so the grouping can't drift
134
137
  * from how the resolver named them. No servers → a neutral empty state (never a throw).
135
138
  */
136
139
  export function renderMcpDetails(extras, servers, instructions, failures = []) {
@@ -182,6 +185,233 @@ export function renderMcpDetails(extras, servers, instructions, failures = []) {
182
185
  }
183
186
  return withDescription(MCP_TAB_DESCRIPTION, sections.join('\n'));
184
187
  }
188
+ const AUTO_TAB_DESCRIPTION = 'Auto-mode: what the approvals gate did with each gated tool call, and — the point of this tab — ' +
189
+ 'WHICH STAGE decided it. "Escalated" on its own does not distinguish a rater verdict from a ' +
190
+ 'deterministic floor match from a deny-list hit, and those need different answers. Most recent ' +
191
+ 'call first. The rater config in force is at the top; the full rater prompt and its raw answer ' +
192
+ 'are not drawn here — they are in the /debug-dump archive.';
193
+ /**
194
+ * **Which stage decided**, in the words a reader of this tab needs.
195
+ *
196
+ * A total `Record` on purpose, for two reasons. A stage added to
197
+ * {@link @gaunt-sloth/core!core/shell/approvalCapture.ApprovalDecidingStage | ApprovalDecidingStage} is a compile error until someone writes its sentence,
198
+ * which is the same guarantee `MECHANISM_NOTES` and `APPROVAL_RUNG_LABELS` buy. And it puts the
199
+ * distinction this whole tab exists for in ONE table, so a test can pin each stage to its own
200
+ * wording rather than to an enum value that reads the same for every branch.
201
+ */
202
+ const STAGE_LABELS = {
203
+ 'not-gated': 'the rung in force does not gate this tool',
204
+ 'deny-list': 'a declared deny entry (or an earlier "always reject")',
205
+ bypass: 'nothing — the gate is off for this session',
206
+ 'hardline-floor': 'the deterministic hardline floor, before any rating',
207
+ 'escalate-entry': 'a declared escalate entry — straight to a person, no rating',
208
+ 'allow-list': 'a declared allow entry, with no rating',
209
+ 'allow-tripwire': 'a declared allow entry that kept the rater on as a tripwire',
210
+ rater: 'the auto-rater',
211
+ 'tool-open-world-floor': 'the open-world floor on a non-shell tool call',
212
+ 'unrated-rung': 'the rung itself — it consults no model, so a person decides',
213
+ };
214
+ /** What became of the call, in the words the notices use. */
215
+ const ACTION_LABELS = {
216
+ approve: 'approved — the tool ran',
217
+ reject: 'rejected',
218
+ escalate: 'escalated to a person',
219
+ halt: 'halted the run',
220
+ error: 'the decision itself errored',
221
+ };
222
+ /**
223
+ * How an escalation ended once it reached (or failed to reach) a person.
224
+ *
225
+ * [[EXT-110]] — the non-answers read differently on purpose. `no-human` is a question that was
226
+ * never put to anybody, because the surface wired no way to ask; `teardown` is one that was put to
227
+ * a surface and went away unanswered, whoever or whatever ended it; and [[EXT-193]]'s
228
+ * `unrecognised` is one that came back answered in a dialect this build cannot read. All of them
229
+ * mean the command did not run, and
230
+ * a reader chasing an incident needs to know which happened — above all, that none of them is the
231
+ * refusal `reject` alone reports.
232
+ */
233
+ const HUMAN_ANSWER_LABELS = {
234
+ approve: 'yes, and they approved',
235
+ reject: 'yes, and they refused',
236
+ 'no-human': 'no — nobody was at the keyboard',
237
+ teardown: 'asked, but the session ended before anyone answered',
238
+ unrecognised: 'asked, but the answer came back in a form this build could not read',
239
+ };
240
+ /**
241
+ * Render the "Auto-mode" tab ([[TUI-C27]]): the approvals gate's own record of every gated tool
242
+ * call this session, plus the rater config in force.
243
+ *
244
+ * **Newest first, which deliberately differs from `approvals.json` in the `/debug-dump` archive.**
245
+ * The archive is read in a text editor with the whole file in reach, so chronological order is the
246
+ * natural one there. This tab is an eight-row viewport, and the call a person opened it about is
247
+ * almost always the last one — putting the oldest of fifty records under the description would make
248
+ * the common case a scroll to the bottom.
249
+ *
250
+ * **The rater's prompt and raw answer are deliberately not drawn.** They are the archive's job (the
251
+ * capture holds them and `/debug-dump` writes them), each is kilobytes, and they are the most
252
+ * sensitive thing the record carries. The description says where they live so nobody reads their
253
+ * absence as them not being recorded.
254
+ *
255
+ * **Every free-text leaf goes through the SAME on-screen policy the tool panels use** —
256
+ * {@link @gaunt-sloth/core!core/toolDisplay.redactForToolDisplay | redactForToolDisplay} then {@link @gaunt-sloth/core!core/shell/framing.neutralizeUntrustedText | neutralizeUntrustedText}, in that order
257
+ * (see this module's `safeText`) — because these records carry the user's own commands. Applied per LEAF and
258
+ * never to the assembled block: the neutraliser escapes newlines, so neutralising the whole thing
259
+ * would collapse the tab into one unreadable line.
260
+ */
261
+ export function renderApprovalDetails(captures, approvals) {
262
+ const sections = [];
263
+ sections.push('=== RATER CONFIG ===');
264
+ if (approvals) {
265
+ sections.push(`rung in force: ${APPROVAL_RUNG_LABELS[approvals.rung]} ` +
266
+ `(${isRatedRung(approvals.rung) ? 'consults the rater' : 'consults no model'})`);
267
+ sections.push(`rater profile: ${safeText(approvals.rater ?? '(the session model)')}`);
268
+ sections.push(`alignment checker profile: ${safeText(approvals.alignmentChecker ?? '(the session model)')}`);
269
+ sections.push(`rater timeout: ${approvals.raterTimeoutMs === undefined ? '(the default)' : `${approvals.raterTimeoutMs} ms`}`);
270
+ sections.push(`declared entries: ${approvals.allow.length} allow · ${approvals.deny.length} deny · ` +
271
+ `${approvals.escalate.length} escalate`);
272
+ }
273
+ else {
274
+ sections.push('(this session has no approvals surface)');
275
+ }
276
+ sections.push('');
277
+ sections.push(`=== GATED CALLS (${captures.length}) — most recent first ===`);
278
+ if (captures.length === 0) {
279
+ sections.push('(no tool call has been through the gate yet)');
280
+ return withDescription(AUTO_TAB_DESCRIPTION, sections.join('\n'));
281
+ }
282
+ const newestFirst = [...captures].reverse();
283
+ newestFirst.forEach((record, i) => {
284
+ sections.push('');
285
+ for (const line of approvalRecordLines(record, i + 1, newestFirst.length))
286
+ sections.push(line);
287
+ });
288
+ return withDescription(AUTO_TAB_DESCRIPTION, sections.join('\n'));
289
+ }
290
+ /** One gated call, from arrival to outcome. */
291
+ function approvalRecordLines(record, position, total) {
292
+ const lines = [];
293
+ lines.push(`── ${position} of ${total} · ${safeText(record.at)} · ${safeText(record.tool)} ──`);
294
+ if (record.command !== undefined)
295
+ lines.push(` command: ${safeText(record.command)}`);
296
+ lines.push(` rung in force: ${APPROVAL_RUNG_LABELS[record.rung]}`);
297
+ // The headline. `stage` is absent only when the decision threw before reaching one, and that is
298
+ // said outright rather than left as a blank a reader would read as the recorder having failed.
299
+ lines.push(` decided by: ${record.stage ? STAGE_LABELS[record.stage] : '(the decision ended before any stage decided)'}`);
300
+ lines.push(` outcome: ${record.action ? ACTION_LABELS[record.action] : '(no outcome recorded)'}`);
301
+ if (record.scope)
302
+ lines.push(` granted for: ${record.scope}`);
303
+ if (record.humanAnswer) {
304
+ lines.push(` a person was asked: ${HUMAN_ANSWER_LABELS[record.humanAnswer]}`);
305
+ }
306
+ if (record.hardline) {
307
+ lines.push(` hardline floor: ${safeText(record.hardline.description)}`);
308
+ // Naming the matched pattern is the §8.1 resolution this node took, and the same one the
309
+ // archive took: §8.1 governs rung descriptions and promotional copy, not a diagnostic view a
310
+ // user opens about their own session, where "a floor matched" is not actionable.
311
+ lines.push(` matched pattern: ${safeText(record.hardline.pattern)}`);
312
+ }
313
+ if (record.ruleMatch) {
314
+ lines.push(` list entry: ${record.ruleMatch.action} — ${safeText(record.ruleMatch.entry)}`);
315
+ if (record.ruleMatch.rate !== undefined) {
316
+ lines.push(` rater kept on as a tripwire: ${yesNo(record.ruleMatch.rate)}`);
317
+ }
318
+ }
319
+ if (record.preflight) {
320
+ lines.push(` preflight: ${record.preflight.kind} — ${safeText(record.preflight.reason)}`);
321
+ // Two different questions, and reporting either one alone misattributes the decision: whether
322
+ // the rating sat below the floor, and whether the decision's readers applied the floor at all.
323
+ lines.push(` rewrote the rating: ${yesNo(record.preflight.rewroteRating)}`);
324
+ lines.push(` applied to the decision: ${yesNo(record.preflight.floorApplied)}`);
325
+ if (record.preflight.carvedHosts?.length) {
326
+ lines.push(` hosts the user named: ${record.preflight.carvedHosts.map(safeText).join(', ')}`);
327
+ }
328
+ }
329
+ if (record.parserUnresolved) {
330
+ // This is what remains of "was the call an abstain": not an outcome of its own, but the gate
331
+ // parser's shape report on a command it could not statically resolve, carried into the rating
332
+ // as neutral context. A rated call with this block and a rated call without it are two
333
+ // different stories about the same stage.
334
+ lines.push(` command not statically resolvable: ${record.parserUnresolved.mechanism}`);
335
+ for (const note of record.parserUnresolved.notes)
336
+ lines.push(` note: ${safeText(note)}`);
337
+ }
338
+ lines.push(...ratingLines(record));
339
+ lines.push(...alignmentLines(record));
340
+ lines.push(` negotiation budget: ${record.budget.consecutiveRejections}/${record.budget.maxConsecutive} ` +
341
+ `consecutive rejections · ${record.budget.rejectionsSinceHuman}/${record.budget.maxBeforeHuman} ` +
342
+ 'since a person was involved');
343
+ if (record.error)
344
+ lines.push(` error: ${safeText(record.error)}`);
345
+ return lines;
346
+ }
347
+ /** The rating call, when one was made. Its absence is itself reported — it names the stage. */
348
+ function ratingLines(record) {
349
+ const rating = record.rating;
350
+ if (!rating)
351
+ return [' rating: none — no model was consulted for this call'];
352
+ const lines = [];
353
+ lines.push(rating.verdict
354
+ ? ` rating: ${rating.verdict.outcome} — ${safeText(rating.verdict.reason)}`
355
+ : ' rating: sent, but no answer was recorded');
356
+ lines.push(` rater model: ${safeText(rating.model ?? '(not recorded)')}` +
357
+ ` · profile: ${safeText(rating.profile ?? '(the session model)')}` +
358
+ ` · ${rating.durationMs === undefined ? 'still in flight' : `${rating.durationMs} ms`}` +
359
+ ` (budget ${rating.timeoutMs} ms)`);
360
+ lines.push(` a rejection would go back to the agent: ${yesNo(rating.negotiable)}`);
361
+ if (rating.failClosed) {
362
+ // The distinction a bug report cannot make without this line: the gate decided, not the model.
363
+ lines.push(` fail-closed: ${rating.failClosed} — the gate decided this, not the rater`);
364
+ }
365
+ if (rating.providerError) {
366
+ const parts = [];
367
+ if (rating.providerError.status !== undefined)
368
+ parts.push(`HTTP ${rating.providerError.status}`);
369
+ if (rating.providerError.message)
370
+ parts.push(safeText(rating.providerError.message));
371
+ if (rating.providerError.withheld)
372
+ parts.push('(provider message withheld)');
373
+ lines.push(` provider error: ${parts.length ? parts.join(' — ') : '(no detail)'}`);
374
+ }
375
+ return lines;
376
+ }
377
+ /** The alignment check, when the classifier declined and a checker was consulted. */
378
+ function alignmentLines(record) {
379
+ const alignment = record.alignment;
380
+ if (!alignment)
381
+ return [];
382
+ const lines = [];
383
+ lines.push(alignment.decision
384
+ ? ` alignment check: ${alignment.decision.kind} — ${safeText(alignment.decision.reason)}`
385
+ : ' alignment check: sent, but no decision was recorded');
386
+ if (alignment.decision?.suggestedCommand) {
387
+ lines.push(` suggested instead: ${safeText(alignment.decision.suggestedCommand)}`);
388
+ }
389
+ lines.push(` checker profile: ${safeText(alignment.profile ?? '(the session model)')}` +
390
+ ` · ${alignment.durationMs === undefined ? 'still in flight' : `${alignment.durationMs} ms`}` +
391
+ ` (budget ${alignment.timeoutMs} ms)`);
392
+ if (alignment.failClosed) {
393
+ lines.push(` fail-closed: ${alignment.failClosed} — the gate decided this, not the checker`);
394
+ }
395
+ return lines;
396
+ }
397
+ /**
398
+ * One free-text leaf, ready for the screen.
399
+ *
400
+ * **Redact first, neutralise second — never the reverse**, the same order and the same reasoning as
401
+ * the tool panels (`parseChecklistArgs`, `toolDisplay.formatParamValue`): a literal secret carrying
402
+ * a control character stops matching the moment that character is rewritten to a printable escape,
403
+ * so neutralising first can leave a secret on screen that redacting first would have caught.
404
+ *
405
+ * The secret SET is `toolDisplay`'s, not one harvested here — a second harvest outside core has no
406
+ * registered config to read the inline `apiKey` literals from, and would be a visibly-redacted
407
+ * surface with a weaker guarantee than the panel beside it.
408
+ */
409
+ function safeText(value) {
410
+ return neutralizeUntrustedText(redactForToolDisplay(value));
411
+ }
412
+ function yesNo(value) {
413
+ return value ? 'yes' : 'no';
414
+ }
185
415
  /** Format one tool definition: name, description, then its JSON-schema params. */
186
416
  function renderToolDef(tool) {
187
417
  const lines = [`• ${tool.name}`];
@@ -1 +1 @@
1
- {"version":3,"file":"debugRender.js","sourceRoot":"","sources":["../../src/tui/debugRender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debugRender.js","sourceRoot":"","sources":["../../src/tui/debugRender.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import type { TuiAgent } from '#src/tui/types.js';
2
2
  /**
3
- * Test-only deterministic agent. Replays recorded {@link AgentStreamEvent}s from a JSON
3
+ * Test-only deterministic agent. Replays recorded {@link @gaunt-sloth/core!core/types.AgentStreamEvent | AgentStreamEvent}s from a JSON
4
4
  * fixture instead of calling a model, so the PTY e2e (Stage D) drives the *real* TUI — the
5
5
  * `<App>` component, the `foldEvents` reducer, and Ink's renderer — with hermetic, key-free,
6
- * fully reproducible output. Selected by {@link import('#src/tui/tuiSessionModule.js')}'s
6
+ * fully reproducible output. Selected by {@link gaunt-sloth!tui/tuiSessionModule | tuiSessionModule}'s
7
7
  * `createTuiSession` only when `GTH_TUI_E2E_FIXTURE` points at a fixture file; the production
8
8
  * path never loads this module.
9
9
  *
@@ -45,10 +45,10 @@ function messagesOfTurn(userInput, events) {
45
45
  return messages;
46
46
  }
47
47
  /**
48
- * Test-only deterministic agent. Replays recorded {@link AgentStreamEvent}s from a JSON
48
+ * Test-only deterministic agent. Replays recorded {@link @gaunt-sloth/core!core/types.AgentStreamEvent | AgentStreamEvent}s from a JSON
49
49
  * fixture instead of calling a model, so the PTY e2e (Stage D) drives the *real* TUI — the
50
50
  * `<App>` component, the `foldEvents` reducer, and Ink's renderer — with hermetic, key-free,
51
- * fully reproducible output. Selected by {@link import('#src/tui/tuiSessionModule.js')}'s
51
+ * fully reproducible output. Selected by {@link gaunt-sloth!tui/tuiSessionModule | tuiSessionModule}'s
52
52
  * `createTuiSession` only when `GTH_TUI_E2E_FIXTURE` points at a fixture file; the production
53
53
  * path never loads this module.
54
54
  *
@@ -163,7 +163,13 @@ export const TUI_KEY_BINDINGS = [
163
163
  description: 'in the focused panel: search it, confirm, then next / previous match',
164
164
  },
165
165
  { keys: 'm', description: 'in the focused panel: maximise it, and back' },
166
- { keys: 'Esc', description: 'leave the focused panel (first Esc clears an active search)' },
166
+ {
167
+ // The restore clause is the binding, not a nicety: leaving a MAXIMISED panel has to give
168
+ // the rows back in the same press, or the prompt it returns control to has nowhere to draw
169
+ // (TUI-C107).
170
+ keys: 'Esc',
171
+ description: 'leave the focused panel, restoring it if maximised (first Esc clears an active search)',
172
+ },
167
173
  ],
168
174
  },
169
175
  {
@@ -1 +1 @@
1
- {"version":3,"file":"keyBindings.js","sourceRoot":"","sources":["../../src/tui/keyBindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyBindings.js","sourceRoot":"","sources":["../../src/tui/keyBindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,gCAAgC,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA+B;IAC1D;QACE,KAAK,EAAE,uEAAuE;QAC9E,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,mEAAmE;aACjF;YACD,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,8CAA8C,EAAE;YAC7F,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,yDAAyD,EAAE;YACzF;gBACE,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,wEAAwE;aACtF;YACD;gBACE,0FAA0F;gBAC1F,yFAAyF;gBACzF,qFAAqF;gBACrF,IAAI,EAAE,2BAA2B;gBACjC,WAAW,EAAE,6EAA6E;aAC3F;SACF;KACF;IACD;QACE,KAAK,EAAE,4BAA4B;QACnC,QAAQ,EAAE;YACR,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE;YAC7C,4FAA4F;YAC5F,8FAA8F;YAC9F,wFAAwF;YACxF,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wDAAwD,EAAE;SAC1F;KACF;IACD;QACE,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE;YACR,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,6BAA6B,EAAE;YACzD;gBACE,2FAA2F;gBAC3F,2FAA2F;gBAC3F,+EAA+E;gBAC/E,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE,sEAAsE;aACpF;YACD,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,kCAAkC,EAAE;YAChE;gBACE,sFAAsF;gBACtF,0FAA0F;gBAC1F,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,wEAAwE;aACtF;YACD,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE;YAChD;gBACE,sFAAsF;gBACtF,sFAAsF;gBACtF,6EAA6E;gBAC7E,IAAI,EAAE,0BAA0B;gBAChC,WAAW,EAAE,2DAA2D;aACzE;YACD;gBACE,qFAAqF;gBACrF,sFAAsF;gBACtF,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,kEAAkE;aAChF;YACD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE;YAC7C,EAAE,IAAI,EAAE,mCAAmC,EAAE,WAAW,EAAE,QAAQ,EAAE;YACpE;gBACE,IAAI,EAAE,gCAAgC;gBACtC,WAAW,EAAE,qCAAqC;aACnD;YACD,4FAA4F;YAC5F,2FAA2F;YAC3F,0FAA0F;YAC1F,wFAAwF;YACxF,4EAA4E;YAC5E,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,wCAAwC,EAAE;YAC5E;gBACE,4FAA4F;gBAC5F,gFAAgF;gBAChF,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE,6EAA6E;aAC3F;YACD,EAAE,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,mCAAmC,EAAE;YACtF,EAAE,IAAI,EAAE,4BAA4B,EAAE,WAAW,EAAE,kCAAkC,EAAE;YACvF;gBACE,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,8DAA8D;aAC5E;YACD;gBACE,4FAA4F;gBAC5F,2FAA2F;gBAC3F,yFAAyF;gBACzF,+CAA+C;gBAC/C,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8FAA8F;aACjG;YACD;gBACE,4FAA4F;gBAC5F,yFAAyF;gBACzF,eAAe;gBACf,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uDAAuD;aACrE;SACF;KACF;IACD;QACE,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6DAA6D;aAC3E;YACD;gBACE,IAAI,EAAE,KAAK;gBACX,WAAW,EACT,uFAAuF;aAC1F;YACD,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,4CAA4C,EAAE;YACtF,EAAE,IAAI,EAAE,oBAAoB,EAAE,WAAW,EAAE,sCAAsC,EAAE;YACnF;gBACE,6FAA6F;gBAC7F,2FAA2F;gBAC3F,6FAA6F;gBAC7F,IAAI,EAAE,2BAA2B;gBACjC,WAAW,EAAE,sEAAsE;aACpF;YACD,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,6CAA6C,EAAE;YACzE;gBACE,yFAAyF;gBACzF,2FAA2F;gBAC3F,cAAc;gBACd,IAAI,EAAE,KAAK;gBACX,WAAW,EACT,wFAAwF;aAC3F;SACF;KACF;IACD;QACE,gGAAgG;QAChG,6FAA6F;QAC7F,sBAAsB;QACtB,KAAK,EAAE,iEAAiE;QACxE,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,6BAA6B;gBACnC,WAAW,EAAE,iDAAiD;aAC/D;SACF;KACF;IACD;QACE,iGAAiG;QACjG,iGAAiG;QACjG,kFAAkF;QAClF,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,gDAAgD;gBACtD,WAAW,EAAE,gDAAgD;aAC9D;SACF;KACF;CACF,CAAC"}
@@ -117,7 +117,7 @@ export declare function isTypedText(input: string, key: ChordModifiers): boolean
117
117
  * in every terminal measured and parses cleanly as `{name: 'g', ctrl: true}`, so it needs no
118
118
  * raw-byte handler and nothing else on this surface claims it. `Ctrl+/` is the more memorable name
119
119
  * and works on Linux, but it emits nothing at all on macOS — so it can only ever be a second door,
120
- * and it arrives as the bare byte with no modifier flag (see {@link CTRL_SLASH}).
120
+ * and it arrives as the bare byte with no modifier flag (see `CTRL_SLASH`).
121
121
  *
122
122
  * Two near neighbours are deliberately NOT here. `Alt+/` on macOS emits `0xc3 0xb7`, which is the
123
123
  * printable `÷` — ordinary Option composition, indistinguishable from the user typing that
@@ -125,7 +125,7 @@ export function isTypedText(input, key) {
125
125
  * in every terminal measured and parses cleanly as `{name: 'g', ctrl: true}`, so it needs no
126
126
  * raw-byte handler and nothing else on this surface claims it. `Ctrl+/` is the more memorable name
127
127
  * and works on Linux, but it emits nothing at all on macOS — so it can only ever be a second door,
128
- * and it arrives as the bare byte with no modifier flag (see {@link CTRL_SLASH}).
128
+ * and it arrives as the bare byte with no modifier flag (see `CTRL_SLASH`).
129
129
  *
130
130
  * Two near neighbours are deliberately NOT here. `Alt+/` on macOS emits `0xc3 0xb7`, which is the
131
131
  * printable `÷` — ordinary Option composition, indistinguishable from the user typing that
@@ -10,7 +10,7 @@
10
10
  /**
11
11
  * Given the live `stdout.columns` (which Ink/Node leaves `undefined` when not attached to a
12
12
  * TTY), return the number of `─` glyphs to draw: the full column count, falling back to
13
- * {@link DEFAULT_COLUMNS} when unknown, and clamped to {@link MIN_WIDTH} so it can never
13
+ * `DEFAULT_COLUMNS` when unknown, and clamped to `MIN_WIDTH` so it can never
14
14
  * collapse to 0/negative.
15
15
  */
16
16
  export declare function ruleWidth(columns: number | undefined): number;
@@ -14,7 +14,7 @@ const MIN_WIDTH = 1;
14
14
  /**
15
15
  * Given the live `stdout.columns` (which Ink/Node leaves `undefined` when not attached to a
16
16
  * TTY), return the number of `─` glyphs to draw: the full column count, falling back to
17
- * {@link DEFAULT_COLUMNS} when unknown, and clamped to {@link MIN_WIDTH} so it can never
17
+ * `DEFAULT_COLUMNS` when unknown, and clamped to `MIN_WIDTH` so it can never
18
18
  * collapse to 0/negative.
19
19
  */
20
20
  export function ruleWidth(columns) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * CFG-20 — the abort signal shared by the {@link SelectFn} seam.
2
+ * CFG-20 — the abort signal shared by the {@link gaunt-sloth!commands/firstRunDialog.SelectFn | SelectFn} seam.
3
3
  *
4
4
  * The Ink `runInkSelect` host rejects its promise with this error when the user aborts a
5
5
  * selection (Ctrl+C at any time, or Esc with an empty filter), and `runFirstRunDialog`
@@ -1,5 +1,5 @@
1
1
  /**
2
- * CFG-20 — the abort signal shared by the {@link SelectFn} seam.
2
+ * CFG-20 — the abort signal shared by the {@link gaunt-sloth!commands/firstRunDialog.SelectFn | SelectFn} seam.
3
3
  *
4
4
  * The Ink `runInkSelect` host rejects its promise with this error when the user aborts a
5
5
  * selection (Ctrl+C at any time, or Esc with an empty filter), and `runFirstRunDialog`
@@ -30,7 +30,7 @@ import { approvalRequestRows } from '@gaunt-sloth/core/core/approvals/approvalRe
30
30
  import { displayWidth } from '@gaunt-sloth/core/utils/displayWidth.js';
31
31
  import { overflowCompactionNotice } from '@gaunt-sloth/agent/modules/slashCommands.js';
32
32
  import { renderMarkdown } from '#src/tui/markdown.js';
33
- import { approvalOutcomeLine, displaySegments, } from '#src/tui/viewModel.js';
33
+ import { approvalOutcomeLine, displaySegments, TURN_ENDED_IN_ERROR_MARK, } from '#src/tui/viewModel.js';
34
34
  /**
35
35
  * Items mounted above the ones the budget accounted for.
36
36
  *
@@ -167,6 +167,12 @@ function turnRows(turn, toolsExpanded, columns) {
167
167
  }
168
168
  rows += toolCallRows(segment.tool, toolsExpanded, columns);
169
169
  }
170
+ // [[EXT-92]] scope (e) — the ended-in-error line `LiveTurn` draws at the foot of the turn,
171
+ // counted from the SAME constant it paints, and with no blank row because it is drawn without
172
+ // one. A turn that stopped with nothing to say is otherwise a zero-row item that now paints one,
173
+ // which is exactly the direction this estimator must not be wrong in.
174
+ if (turn.endedInError)
175
+ rows += siblingRows(TURN_ENDED_IN_ERROR_MARK, columns);
170
176
  return rows;
171
177
  }
172
178
  /** A lower bound on the rows one committed transcript item occupies. */
@@ -1 +1 @@
1
- {"version":3,"file":"transcriptWindow.js","sourceRoot":"","sources":["../../src/tui/transcriptWindow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcriptWindow.js","sourceRoot":"","sources":["../../src/tui/transcriptWindow.ts"],"names":[],"mappings":"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"}