openhorse 0.2.22 → 0.2.23
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.
- package/dist/harness/capsule.d.ts +1 -0
- package/dist/harness/capsule.d.ts.map +1 -1
- package/dist/harness/capsule.js +38 -9
- package/dist/harness/capsule.js.map +1 -1
- package/dist/harness/contract.d.ts +2 -0
- package/dist/harness/contract.d.ts.map +1 -1
- package/dist/harness/contract.js +78 -14
- package/dist/harness/contract.js.map +1 -1
- package/dist/harness/index.d.ts +2 -2
- package/dist/harness/index.d.ts.map +1 -1
- package/dist/harness/index.js +4 -1
- package/dist/harness/index.js.map +1 -1
- package/dist/harness/state.d.ts.map +1 -1
- package/dist/harness/state.js +37 -7
- package/dist/harness/state.js.map +1 -1
- package/dist/runtime/aggregate-tool-presenter.d.ts +13 -0
- package/dist/runtime/aggregate-tool-presenter.d.ts.map +1 -0
- package/dist/runtime/aggregate-tool-presenter.js +44 -0
- package/dist/runtime/aggregate-tool-presenter.js.map +1 -0
- package/dist/runtime/chat-controller.d.ts +9 -2
- package/dist/runtime/chat-controller.d.ts.map +1 -1
- package/dist/runtime/chat-controller.js +129 -17
- package/dist/runtime/chat-controller.js.map +1 -1
- package/dist/runtime/tool-detail-repository.d.ts +45 -0
- package/dist/runtime/tool-detail-repository.d.ts.map +1 -0
- package/dist/runtime/tool-detail-repository.js +131 -0
- package/dist/runtime/tool-detail-repository.js.map +1 -0
- package/dist/runtime/tool-output-presentation.d.ts +89 -0
- package/dist/runtime/tool-output-presentation.d.ts.map +1 -0
- package/dist/runtime/tool-output-presentation.js +329 -0
- package/dist/runtime/tool-output-presentation.js.map +1 -0
- package/dist/runtime/ui-events.d.ts +4 -0
- package/dist/runtime/ui-events.d.ts.map +1 -1
- package/dist/runtime/ui-events.js.map +1 -1
- package/dist/services/model-context.d.ts.map +1 -1
- package/dist/services/model-context.js +7 -0
- package/dist/services/model-context.js.map +1 -1
- package/dist/services/session-storage.d.ts +3 -0
- package/dist/services/session-storage.d.ts.map +1 -1
- package/dist/services/session-storage.js +55 -28
- package/dist/services/session-storage.js.map +1 -1
- package/dist/services/storage-maintenance.d.ts.map +1 -1
- package/dist/services/storage-maintenance.js +3 -2
- package/dist/services/storage-maintenance.js.map +1 -1
- package/dist/terminal-ui/editor.d.ts.map +1 -1
- package/dist/terminal-ui/editor.js +14 -3
- package/dist/terminal-ui/editor.js.map +1 -1
- package/dist/terminal-ui/launch.d.ts +19 -0
- package/dist/terminal-ui/launch.d.ts.map +1 -1
- package/dist/terminal-ui/launch.js +138 -24
- package/dist/terminal-ui/launch.js.map +1 -1
- package/dist/terminal-ui/output-queue.d.ts +43 -0
- package/dist/terminal-ui/output-queue.d.ts.map +1 -0
- package/dist/terminal-ui/output-queue.js +139 -0
- package/dist/terminal-ui/output-queue.js.map +1 -0
- package/dist/terminal-ui/raw-editor.d.ts +33 -0
- package/dist/terminal-ui/raw-editor.d.ts.map +1 -1
- package/dist/terminal-ui/raw-editor.js +142 -23
- package/dist/terminal-ui/raw-editor.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +133 -58
- package/dist/tools/index.js.map +1 -1
- package/dist/tui-core/input-parser.d.ts +9 -2
- package/dist/tui-core/input-parser.d.ts.map +1 -1
- package/dist/tui-core/input-parser.js +37 -2
- package/dist/tui-core/input-parser.js.map +1 -1
- package/dist/tui-ui/inline-surface.d.ts +7 -1
- package/dist/tui-ui/inline-surface.d.ts.map +1 -1
- package/dist/tui-ui/inline-surface.js +23 -2
- package/dist/tui-ui/inline-surface.js.map +1 -1
- package/dist/tui-ui/input-ownership.d.ts +46 -0
- package/dist/tui-ui/input-ownership.d.ts.map +1 -0
- package/dist/tui-ui/input-ownership.js +74 -0
- package/dist/tui-ui/input-ownership.js.map +1 -0
- package/dist/tui-ui/launch.d.ts +1 -0
- package/dist/tui-ui/launch.d.ts.map +1 -1
- package/dist/tui-ui/launch.js +104 -2
- package/dist/tui-ui/launch.js.map +1 -1
- package/dist/tui-ui/layout.d.ts +1 -0
- package/dist/tui-ui/layout.d.ts.map +1 -1
- package/dist/tui-ui/layout.js +5 -1
- package/dist/tui-ui/layout.js.map +1 -1
- package/dist/tui-ui/runner.d.ts +32 -0
- package/dist/tui-ui/runner.d.ts.map +1 -1
- package/dist/tui-ui/runner.js +553 -24
- package/dist/tui-ui/runner.js.map +1 -1
- package/dist/tui-ui/state.d.ts +65 -0
- package/dist/tui-ui/state.d.ts.map +1 -1
- package/dist/tui-ui/state.js +187 -2
- package/dist/tui-ui/state.js.map +1 -1
- package/dist/tui-ui/theme-profile.d.ts +25 -0
- package/dist/tui-ui/theme-profile.d.ts.map +1 -0
- package/dist/tui-ui/theme-profile.js +130 -0
- package/dist/tui-ui/theme-profile.js.map +1 -0
- package/dist/tui-ui/transcript-inspector-layout.d.ts +9 -0
- package/dist/tui-ui/transcript-inspector-layout.d.ts.map +1 -0
- package/dist/tui-ui/transcript-inspector-layout.js +97 -0
- package/dist/tui-ui/transcript-inspector-layout.js.map +1 -0
- package/dist/tui-ui/transcript-inspector-surface.d.ts +18 -0
- package/dist/tui-ui/transcript-inspector-surface.d.ts.map +1 -0
- package/dist/tui-ui/transcript-inspector-surface.js +88 -0
- package/dist/tui-ui/transcript-inspector-surface.js.map +1 -0
- package/dist/tui-ui/transcript-inspector.d.ts +35 -0
- package/dist/tui-ui/transcript-inspector.d.ts.map +1 -0
- package/dist/tui-ui/transcript-inspector.js +128 -0
- package/dist/tui-ui/transcript-inspector.js.map +1 -0
- package/dist/tui-ui/transcript-layout.d.ts +1 -0
- package/dist/tui-ui/transcript-layout.d.ts.map +1 -1
- package/dist/tui-ui/transcript-layout.js +44 -3
- package/dist/tui-ui/transcript-layout.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/terminal-ui/editor.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/terminal-ui/editor.ts"],"names":[],"mappings":";;AAkBA,oCAEC;AAED,gDAkCC;AAxDD,2BAAiF;AACjF,2BAA4B;AAC5B,mCAAoC;AACpC,+BAA4B;AAC5B,iDAAkF;AAclF,SAAgB,YAAY,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC/D,OAAO,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC;AAC1C,CAAC;AAED,SAAgB,kBAAkB,CAAC,UAAyB,EAAE;IAC5D,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,IAAI,yBAAa,CAAC;IACjD,sEAAsE;IACtE,MAAM,GAAG,GAAG,IAAA,gBAAW,EAAC,IAAA,WAAI,EAAC,IAAA,WAAM,GAAE,EAAE,kBAAkB,IAAA,mBAAU,GAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAEpC,IAAI,CAAC;QACH,IAAA,kBAAa,EAAC,IAAI,EAAE,OAAO,CAAC,cAAc,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACrF,uEAAuE;QACvE,IAAI,CAAC;YAAC,IAAA,cAAS,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YACnC,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACzC,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,6BAA6B,MAAM,CAAC,MAAM,IAAI,SAAS,GAAG,EAAE,CAAC;QAC/E,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,iBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACpB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC7B,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC3E,CAAC;YAAS,CAAC;QACT,2CAA2C;QAC3C,IAAI,CAAC;YAAC,IAAA,WAAM,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACpF,CAAC;AACH,CAAC"}
|
|
@@ -21,6 +21,7 @@ export declare function formatTerminalStatusMessage(message: string, width?: num
|
|
|
21
21
|
export declare function formatTerminalSessionRestored(event: RuntimeSessionRestoredEvent): string;
|
|
22
22
|
export interface TerminalWriter {
|
|
23
23
|
write(text: string): void;
|
|
24
|
+
writeAsync?: (text: string) => Promise<boolean>;
|
|
24
25
|
}
|
|
25
26
|
export declare function visibleLength(text: string): number;
|
|
26
27
|
export declare function terminalContentWidth(fallback?: number): number;
|
|
@@ -36,6 +37,7 @@ export declare class TerminalEventSink implements UiEventSink {
|
|
|
36
37
|
private readonly entries;
|
|
37
38
|
private readonly printedContent;
|
|
38
39
|
private readonly pendingAssistantOutput;
|
|
40
|
+
private readonly finalizedEntryIds;
|
|
39
41
|
private idCounter;
|
|
40
42
|
private pendingPicker;
|
|
41
43
|
private pickerOffset;
|
|
@@ -48,6 +50,9 @@ export declare class TerminalEventSink implements UiEventSink {
|
|
|
48
50
|
* future timeline rendering.
|
|
49
51
|
*/
|
|
50
52
|
private readonly subtaskTimeline;
|
|
53
|
+
private static readonly MAX_FINALIZED_METADATA;
|
|
54
|
+
private static readonly MAX_PRINTED_CONTENT;
|
|
55
|
+
private static readonly MAX_SUBTASK_TIMELINE;
|
|
51
56
|
constructor(runtime: OpenHorseUiRuntime, writer?: TerminalWriter);
|
|
52
57
|
append(entry: TranscriptAppendEntry): string;
|
|
53
58
|
update(id: string, patch: Partial<Omit<TranscriptEntry, 'id'>>): void;
|
|
@@ -66,6 +71,7 @@ export declare class TerminalEventSink implements UiEventSink {
|
|
|
66
71
|
private moveSessionPickerPage;
|
|
67
72
|
private printEntry;
|
|
68
73
|
private printAssistantDelta;
|
|
74
|
+
private writeWithAcknowledgement;
|
|
69
75
|
/**
|
|
70
76
|
* R8: consume the typed subagent event into the shared timeline view-model.
|
|
71
77
|
* Does not print (the chat-controller transcript summary already drives
|
|
@@ -74,6 +80,19 @@ export declare class TerminalEventSink implements UiEventSink {
|
|
|
74
80
|
subtaskEvent(event: RuntimeSubtaskEvent): void;
|
|
75
81
|
/** R8: read-only access to the typed subagent timeline (for parity tests). */
|
|
76
82
|
getSubtaskTimeline(): SubtaskTimelineEntry[];
|
|
83
|
+
/**
|
|
84
|
+
* After finalize, the entry content is in native scrollback.
|
|
85
|
+
* Replace the full body with a lightweight marker so memory doesn't grow
|
|
86
|
+
* with scrollback length.
|
|
87
|
+
*/
|
|
88
|
+
private releaseEntryBody;
|
|
89
|
+
/**
|
|
90
|
+
* Evict oldest entries from a Map when it exceeds the configured limit.
|
|
91
|
+
* Uses Map's insertion-order iteration — oldest entries are evicted first.
|
|
92
|
+
* Mirrors evictOldest in session-storage.ts; kept private to avoid a shared
|
|
93
|
+
* dependency on session-storage internals.
|
|
94
|
+
*/
|
|
95
|
+
private evictIfNeeded;
|
|
77
96
|
}
|
|
78
97
|
export declare function renderTerminalBanner(runtime: OpenHorseUiRuntime): string;
|
|
79
98
|
export declare function renderTerminalContextStatus(runtime: OpenHorseUiRuntime): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../src/terminal-ui/launch.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,qCAAqC,CAAC;AAG7C,OAAO,EAUL,KAAK,iBAAiB,EAEtB,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../src/terminal-ui/launch.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ const redaction_1 = require("../services/redaction");
|
|
|
36
36
|
const completion_1 = require("./completion");
|
|
37
37
|
const editor_1 = require("./editor");
|
|
38
38
|
const raw_editor_1 = require("./raw-editor");
|
|
39
|
+
const output_queue_1 = require("./output-queue");
|
|
39
40
|
const ACCENT = chalk_1.default.hex('#80E6E8');
|
|
40
41
|
const DIM = chalk_1.default.hex('#567089');
|
|
41
42
|
const ERROR = chalk_1.default.hex('#FF7A7A');
|
|
@@ -359,6 +360,7 @@ class TerminalEventSink {
|
|
|
359
360
|
this.entries = new Map();
|
|
360
361
|
this.printedContent = new Map();
|
|
361
362
|
this.pendingAssistantOutput = new Map();
|
|
363
|
+
this.finalizedEntryIds = new Set();
|
|
362
364
|
this.idCounter = 0;
|
|
363
365
|
this.pendingPicker = null;
|
|
364
366
|
this.pickerOffset = 0;
|
|
@@ -374,14 +376,25 @@ class TerminalEventSink {
|
|
|
374
376
|
}
|
|
375
377
|
append(entry) {
|
|
376
378
|
const id = `terminal-${++this.idCounter}`;
|
|
379
|
+
const { live, ...transcriptEntry } = entry;
|
|
377
380
|
const fullEntry = {
|
|
378
381
|
id,
|
|
379
|
-
|
|
380
|
-
title: entry.title,
|
|
381
|
-
content: entry.content,
|
|
382
|
+
...transcriptEntry,
|
|
382
383
|
};
|
|
383
384
|
this.entries.set(id, fullEntry);
|
|
384
|
-
|
|
385
|
+
const finalized = live !== true;
|
|
386
|
+
const write = this.printEntry(fullEntry, finalized);
|
|
387
|
+
if (finalized) {
|
|
388
|
+
if (write instanceof Promise) {
|
|
389
|
+
void write.then(written => {
|
|
390
|
+
if (written)
|
|
391
|
+
this.releaseEntryBody(id);
|
|
392
|
+
});
|
|
393
|
+
}
|
|
394
|
+
else {
|
|
395
|
+
this.releaseEntryBody(id);
|
|
396
|
+
}
|
|
397
|
+
}
|
|
385
398
|
return id;
|
|
386
399
|
}
|
|
387
400
|
update(id, patch) {
|
|
@@ -398,11 +411,22 @@ class TerminalEventSink {
|
|
|
398
411
|
return;
|
|
399
412
|
const next = patch ? { ...existing, ...patch } : existing;
|
|
400
413
|
this.entries.set(id, next);
|
|
401
|
-
this.printEntry(next, true);
|
|
414
|
+
const write = this.printEntry(next, true);
|
|
415
|
+
if (write instanceof Promise) {
|
|
416
|
+
void write.then(written => {
|
|
417
|
+
if (written)
|
|
418
|
+
this.releaseEntryBody(id);
|
|
419
|
+
});
|
|
420
|
+
}
|
|
421
|
+
else {
|
|
422
|
+
this.releaseEntryBody(id);
|
|
423
|
+
}
|
|
402
424
|
}
|
|
403
425
|
remove(id) {
|
|
404
426
|
this.entries.delete(id);
|
|
405
427
|
this.printedContent.delete(id);
|
|
428
|
+
this.pendingAssistantOutput.delete(id);
|
|
429
|
+
this.finalizedEntryIds.delete(id);
|
|
406
430
|
}
|
|
407
431
|
replaceTranscript(entries) {
|
|
408
432
|
this.entries.clear();
|
|
@@ -546,16 +570,17 @@ class TerminalEventSink {
|
|
|
546
570
|
if (!entry.content)
|
|
547
571
|
return;
|
|
548
572
|
if (entry.role === 'assistant') {
|
|
549
|
-
this.printAssistantDelta(entry, finalized);
|
|
550
|
-
return;
|
|
573
|
+
return this.printAssistantDelta(entry, finalized);
|
|
551
574
|
}
|
|
552
575
|
const previous = this.printedContent.get(entry.id);
|
|
553
576
|
if (previous === entry.content && !finalized)
|
|
554
577
|
return;
|
|
555
578
|
this.printedContent.set(entry.id, entry.content);
|
|
579
|
+
// v0.2.23: bound printed content.
|
|
580
|
+
this.evictIfNeeded(this.printedContent, TerminalEventSink.MAX_PRINTED_CONTENT);
|
|
556
581
|
const formatted = formatTranscriptEntry(entry);
|
|
557
582
|
if (formatted) {
|
|
558
|
-
this.
|
|
583
|
+
return this.writeWithAcknowledgement(`${formatted}\n`);
|
|
559
584
|
}
|
|
560
585
|
}
|
|
561
586
|
printAssistantDelta(entry, finalized) {
|
|
@@ -566,19 +591,26 @@ class TerminalEventSink {
|
|
|
566
591
|
const delta = next.startsWith(previous) ? next.slice(previous.length) : `\n${next}`;
|
|
567
592
|
const pending = `${this.pendingAssistantOutput.get(entry.id) ?? ''}${delta}`;
|
|
568
593
|
this.printedContent.set(entry.id, next);
|
|
594
|
+
// v0.2.23: bound printed content.
|
|
595
|
+
this.evictIfNeeded(this.printedContent, TerminalEventSink.MAX_PRINTED_CONTENT);
|
|
569
596
|
const shouldFlush = finalized || pending.includes('\n') || visibleLength(pending) >= 80;
|
|
570
597
|
if (shouldFlush) {
|
|
571
598
|
this.pendingAssistantOutput.delete(entry.id);
|
|
572
599
|
if (pending) {
|
|
573
|
-
this.
|
|
600
|
+
return this.writeWithAcknowledgement(pending);
|
|
574
601
|
}
|
|
575
602
|
else if (finalized && next && !next.endsWith('\n')) {
|
|
576
|
-
this.
|
|
603
|
+
return this.writeWithAcknowledgement('\n');
|
|
577
604
|
}
|
|
578
605
|
return;
|
|
579
606
|
}
|
|
580
607
|
this.pendingAssistantOutput.set(entry.id, pending);
|
|
581
608
|
}
|
|
609
|
+
writeWithAcknowledgement(text) {
|
|
610
|
+
if (this.writer.writeAsync)
|
|
611
|
+
return this.writer.writeAsync(text);
|
|
612
|
+
this.writer.write(text);
|
|
613
|
+
}
|
|
582
614
|
/**
|
|
583
615
|
* R8: consume the typed subagent event into the shared timeline view-model.
|
|
584
616
|
* Does not print (the chat-controller transcript summary already drives
|
|
@@ -586,13 +618,61 @@ class TerminalEventSink {
|
|
|
586
618
|
*/
|
|
587
619
|
subtaskEvent(event) {
|
|
588
620
|
this.subtaskTimeline.set(event.taskId, (0, ui_view_model_1.subtaskEventToTimelineEntry)(event));
|
|
621
|
+
// v0.2.23: bound subtask timeline.
|
|
622
|
+
this.evictIfNeeded(this.subtaskTimeline, TerminalEventSink.MAX_SUBTASK_TIMELINE);
|
|
589
623
|
}
|
|
590
624
|
/** R8: read-only access to the typed subagent timeline (for parity tests). */
|
|
591
625
|
getSubtaskTimeline() {
|
|
592
626
|
return Array.from(this.subtaskTimeline.values());
|
|
593
627
|
}
|
|
628
|
+
// --- v0.2.23: bounded state helpers ---
|
|
629
|
+
/**
|
|
630
|
+
* After finalize, the entry content is in native scrollback.
|
|
631
|
+
* Replace the full body with a lightweight marker so memory doesn't grow
|
|
632
|
+
* with scrollback length.
|
|
633
|
+
*/
|
|
634
|
+
releaseEntryBody(id) {
|
|
635
|
+
const entry = this.entries.get(id);
|
|
636
|
+
if (!entry)
|
|
637
|
+
return;
|
|
638
|
+
// Keep role/id/title but replace heavy content with a marker.
|
|
639
|
+
this.entries.set(id, {
|
|
640
|
+
...entry,
|
|
641
|
+
content: `[scrollback:${entry.role} posted ${entry.content.length} chars]`,
|
|
642
|
+
});
|
|
643
|
+
this.printedContent.delete(id);
|
|
644
|
+
this.pendingAssistantOutput.delete(id);
|
|
645
|
+
this.finalizedEntryIds.delete(id);
|
|
646
|
+
this.finalizedEntryIds.add(id);
|
|
647
|
+
while (this.finalizedEntryIds.size > TerminalEventSink.MAX_FINALIZED_METADATA) {
|
|
648
|
+
const oldest = this.finalizedEntryIds.values().next().value;
|
|
649
|
+
if (!oldest)
|
|
650
|
+
break;
|
|
651
|
+
this.finalizedEntryIds.delete(oldest);
|
|
652
|
+
this.entries.delete(oldest);
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
/**
|
|
656
|
+
* Evict oldest entries from a Map when it exceeds the configured limit.
|
|
657
|
+
* Uses Map's insertion-order iteration — oldest entries are evicted first.
|
|
658
|
+
* Mirrors evictOldest in session-storage.ts; kept private to avoid a shared
|
|
659
|
+
* dependency on session-storage internals.
|
|
660
|
+
*/
|
|
661
|
+
evictIfNeeded(map, limit) {
|
|
662
|
+
while (map.size > limit) {
|
|
663
|
+
const firstKey = map.keys().next().value;
|
|
664
|
+
if (firstKey !== undefined)
|
|
665
|
+
map.delete(firstKey);
|
|
666
|
+
else
|
|
667
|
+
break;
|
|
668
|
+
}
|
|
669
|
+
}
|
|
594
670
|
}
|
|
595
671
|
exports.TerminalEventSink = TerminalEventSink;
|
|
672
|
+
// --- v0.2.23: bounded state configuration ---
|
|
673
|
+
TerminalEventSink.MAX_FINALIZED_METADATA = 512;
|
|
674
|
+
TerminalEventSink.MAX_PRINTED_CONTENT = 512;
|
|
675
|
+
TerminalEventSink.MAX_SUBTASK_TIMELINE = 100;
|
|
596
676
|
function renderTerminalBanner(runtime) {
|
|
597
677
|
const width = Math.max(2, terminalContentWidth(88));
|
|
598
678
|
const line = '─'.repeat(Math.max(0, width - 2));
|
|
@@ -833,12 +913,36 @@ function normalizeTerminalAnswer(input) {
|
|
|
833
913
|
}
|
|
834
914
|
async function launchTerminalUI(runtime) {
|
|
835
915
|
printBanner(runtime);
|
|
836
|
-
let
|
|
837
|
-
|
|
838
|
-
|
|
916
|
+
let agentController;
|
|
917
|
+
let writer;
|
|
918
|
+
const editor = new raw_editor_1.RawTerminalEditor({
|
|
919
|
+
cwd: runtime.cwd,
|
|
920
|
+
onSubmit: input => handleInput(input),
|
|
921
|
+
onCtrlC: () => handleSigint(),
|
|
922
|
+
onNotice: message => { void writer.write(`${DIM(message)}\n`); },
|
|
923
|
+
});
|
|
924
|
+
const outputAdapter = {
|
|
925
|
+
write: text => editor.writeExternalBatch([text]),
|
|
926
|
+
on: (event, listener) => { process.stdout.on(event, listener); },
|
|
927
|
+
off: (event, listener) => { process.stdout.off(event, listener); },
|
|
928
|
+
};
|
|
929
|
+
const outputQueue = new output_queue_1.TerminalOutputQueue(outputAdapter);
|
|
930
|
+
let outputBatchSequence = 0;
|
|
931
|
+
writer = {
|
|
932
|
+
write: text => {
|
|
933
|
+
void outputQueue.enqueue({
|
|
934
|
+
id: `terminal-output-${++outputBatchSequence}`,
|
|
935
|
+
chunks: [text],
|
|
936
|
+
releaseEntryIds: [],
|
|
937
|
+
}).catch(() => undefined);
|
|
938
|
+
},
|
|
939
|
+
writeAsync: text => outputQueue.enqueue({
|
|
940
|
+
id: `terminal-output-${++outputBatchSequence}`,
|
|
941
|
+
chunks: [text],
|
|
942
|
+
releaseEntryIds: [],
|
|
943
|
+
}).then(() => true, () => false),
|
|
839
944
|
};
|
|
840
945
|
const events = new TerminalEventSink(runtime, writer);
|
|
841
|
-
let agentController;
|
|
842
946
|
let stopping = false;
|
|
843
947
|
let settled = false;
|
|
844
948
|
let resolveLaunch = null;
|
|
@@ -901,12 +1005,6 @@ async function launchTerminalUI(runtime) {
|
|
|
901
1005
|
events.append({ role: 'error', content: message });
|
|
902
1006
|
},
|
|
903
1007
|
});
|
|
904
|
-
editor = new raw_editor_1.RawTerminalEditor({
|
|
905
|
-
cwd: runtime.cwd,
|
|
906
|
-
onSubmit: input => handleInput(input),
|
|
907
|
-
onCtrlC: () => handleSigint(),
|
|
908
|
-
onNotice: message => writer.write(`${DIM(message)}\n`),
|
|
909
|
-
});
|
|
910
1008
|
const prompt = () => {
|
|
911
1009
|
if (stopping)
|
|
912
1010
|
return;
|
|
@@ -923,8 +1021,16 @@ async function launchTerminalUI(runtime) {
|
|
|
923
1021
|
return;
|
|
924
1022
|
stopping = true;
|
|
925
1023
|
await agentController.stopActiveTurn();
|
|
926
|
-
|
|
927
|
-
|
|
1024
|
+
try {
|
|
1025
|
+
await outputQueue.close();
|
|
1026
|
+
}
|
|
1027
|
+
catch {
|
|
1028
|
+
// Terminal output failure must not block shutdown.
|
|
1029
|
+
}
|
|
1030
|
+
finally {
|
|
1031
|
+
editor.stop();
|
|
1032
|
+
await runtime.shutdown();
|
|
1033
|
+
}
|
|
928
1034
|
process.stdout.write('\n');
|
|
929
1035
|
finishLaunch();
|
|
930
1036
|
};
|
|
@@ -1035,8 +1141,16 @@ async function launchTerminalUI(runtime) {
|
|
|
1035
1141
|
finally {
|
|
1036
1142
|
if (!stopping) {
|
|
1037
1143
|
stopping = true;
|
|
1038
|
-
|
|
1039
|
-
|
|
1144
|
+
try {
|
|
1145
|
+
await outputQueue.close();
|
|
1146
|
+
}
|
|
1147
|
+
catch {
|
|
1148
|
+
// Terminal output failure must not block shutdown.
|
|
1149
|
+
}
|
|
1150
|
+
finally {
|
|
1151
|
+
editor.stop();
|
|
1152
|
+
await runtime.shutdown();
|
|
1153
|
+
}
|
|
1040
1154
|
process.stdout.write('\n');
|
|
1041
1155
|
}
|
|
1042
1156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/terminal-ui/launch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/terminal-ui/launch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v0.2.23 — Terminal Output Queue.
|
|
3
|
+
*
|
|
4
|
+
* Single-writer FIFO queue for all Terminal UI runtime output. Handles
|
|
5
|
+
* backpressure (write() returns false → wait for drain), batch coalescing,
|
|
6
|
+
* flush, close, and safe shutdown. Replaces the ad-hoc pattern of each
|
|
7
|
+
* event handler calling editor.writeExternal() directly.
|
|
8
|
+
*/
|
|
9
|
+
export interface TerminalOutputBatch {
|
|
10
|
+
id: string;
|
|
11
|
+
chunks: readonly string[];
|
|
12
|
+
/** Entry IDs whose heavy state can be released after this batch is written. */
|
|
13
|
+
releaseEntryIds: readonly string[];
|
|
14
|
+
}
|
|
15
|
+
export interface TerminalOutputWriter {
|
|
16
|
+
write(text: string): boolean;
|
|
17
|
+
on(event: 'drain', listener: () => void): void;
|
|
18
|
+
off(event: 'drain', listener: () => void): void;
|
|
19
|
+
on(event: 'error', listener: (error: Error) => void): void;
|
|
20
|
+
off(event: 'error', listener: (error: Error) => void): void;
|
|
21
|
+
}
|
|
22
|
+
export declare class TerminalOutputQueue {
|
|
23
|
+
private readonly writer;
|
|
24
|
+
private readonly pending;
|
|
25
|
+
private closed;
|
|
26
|
+
private draining;
|
|
27
|
+
private flushPromise;
|
|
28
|
+
private failure;
|
|
29
|
+
constructor(writer: TerminalOutputWriter);
|
|
30
|
+
/** Enqueue a batch for ordered write. Resolves when the batch has been written. */
|
|
31
|
+
enqueue(batch: TerminalOutputBatch): Promise<void>;
|
|
32
|
+
/** Flush all pending batches. Returns a promise that resolves when done. */
|
|
33
|
+
flush(): Promise<void>;
|
|
34
|
+
/** Close the queue: prevent new enqueues, flush remaining, and clean up. */
|
|
35
|
+
close(): Promise<void>;
|
|
36
|
+
/** True after close() is called. */
|
|
37
|
+
get isClosed(): boolean;
|
|
38
|
+
/** Number of pending (not yet written) batches. */
|
|
39
|
+
get pendingCount(): number;
|
|
40
|
+
private processQueue;
|
|
41
|
+
private writeBatch;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=output-queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output-queue.d.ts","sourceRoot":"","sources":["../../src/terminal-ui/output-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,+EAA+E;IAC/E,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAQD,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7B,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC/C,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAChD,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;IAC3D,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC;CAC7D;AAED,qBAAa,mBAAmB;IAOlB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,OAAO,CAAsB;gBAER,MAAM,EAAE,oBAAoB;IAEzD,mFAAmF;IACnF,OAAO,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlD,4EAA4E;IACtE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,4EAA4E;IACtE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5B,oCAAoC;IACpC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,mDAAmD;IACnD,IAAI,YAAY,IAAI,MAAM,CAEzB;YAEa,YAAY;IAmB1B,OAAO,CAAC,UAAU;CAkDnB"}
|