@sagmans/dsh-tui 0.11.2 → 0.13.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.
- package/README.md +49 -2
- package/cordis.patch.yml +4 -0
- package/lib/agent/status.d.ts +5 -0
- package/lib/agent/status.d.ts.map +1 -1
- package/lib/agent/status.js +2 -0
- package/lib/agent/status.js.map +1 -1
- package/lib/gates/questions.d.ts.map +1 -1
- package/lib/gates/questions.js +9 -6
- package/lib/gates/questions.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +14 -1
- package/lib/index.js.map +1 -1
- package/lib/input/action-catalog.d.ts +3 -1
- package/lib/input/action-catalog.d.ts.map +1 -1
- package/lib/input/action-catalog.js +7 -2
- package/lib/input/action-catalog.js.map +1 -1
- package/lib/input/actions.d.ts +8 -3
- package/lib/input/actions.d.ts.map +1 -1
- package/lib/input/actions.js +22 -12
- package/lib/input/actions.js.map +1 -1
- package/lib/input/completion.js +4 -2
- package/lib/input/completion.js.map +1 -1
- package/lib/input/file-search.d.ts +3 -1
- package/lib/input/file-search.d.ts.map +1 -1
- package/lib/input/file-search.js +22 -6
- package/lib/input/file-search.js.map +1 -1
- package/lib/input/keymap-conflicts.d.ts +5 -4
- package/lib/input/keymap-conflicts.d.ts.map +1 -1
- package/lib/input/keymap-conflicts.js +12 -12
- package/lib/input/keymap-conflicts.js.map +1 -1
- package/lib/input/keymap-settings.d.ts +4 -7
- package/lib/input/keymap-settings.d.ts.map +1 -1
- package/lib/input/keymap-settings.js +6 -5
- package/lib/input/keymap-settings.js.map +1 -1
- package/lib/input/keymap.d.ts.map +1 -1
- package/lib/input/keymap.js +6 -6
- package/lib/input/keymap.js.map +1 -1
- package/lib/input/submission.d.ts +3 -0
- package/lib/input/submission.d.ts.map +1 -1
- package/lib/input/submission.js.map +1 -1
- package/lib/input.d.ts +6 -0
- package/lib/input.d.ts.map +1 -1
- package/lib/input.js +32 -1
- package/lib/input.js.map +1 -1
- package/lib/keymaps.d.ts +56 -0
- package/lib/keymaps.d.ts.map +1 -0
- package/lib/keymaps.js +106 -0
- package/lib/keymaps.js.map +1 -0
- package/lib/keys-command.d.ts.map +1 -1
- package/lib/keys-command.js +4 -4
- package/lib/keys-command.js.map +1 -1
- package/lib/surface/appearance.d.ts +3 -0
- package/lib/surface/appearance.d.ts.map +1 -1
- package/lib/surface/appearance.js +15 -3
- package/lib/surface/appearance.js.map +1 -1
- package/lib/surface/commands.d.ts +2 -0
- package/lib/surface/commands.d.ts.map +1 -1
- package/lib/surface/commands.js +3 -0
- package/lib/surface/commands.js.map +1 -1
- package/lib/surface/modal-input.d.ts +1 -0
- package/lib/surface/modal-input.d.ts.map +1 -1
- package/lib/surface/modal-input.js +77 -45
- package/lib/surface/modal-input.js.map +1 -1
- package/lib/surface/model-choice.d.ts +5 -0
- package/lib/surface/model-choice.d.ts.map +1 -1
- package/lib/surface/model-choice.js +6 -2
- package/lib/surface/model-choice.js.map +1 -1
- package/lib/surface/plugin-actions.d.ts +18 -0
- package/lib/surface/plugin-actions.d.ts.map +1 -0
- package/lib/surface/plugin-actions.js +45 -0
- package/lib/surface/plugin-actions.js.map +1 -0
- package/lib/surface/prompt-input.d.ts.map +1 -1
- package/lib/surface/prompt-input.js +4 -0
- package/lib/surface/prompt-input.js.map +1 -1
- package/lib/terminal/host-writes.d.ts.map +1 -1
- package/lib/terminal/host-writes.js +15 -9
- package/lib/terminal/host-writes.js.map +1 -1
- package/lib/terminal/warning-screen.d.ts +9 -2
- package/lib/terminal/warning-screen.d.ts.map +1 -1
- package/lib/terminal/warning-screen.js +148 -22
- package/lib/terminal/warning-screen.js.map +1 -1
- package/lib/terminal-text.d.ts.map +1 -1
- package/lib/terminal-text.js +12 -6
- package/lib/terminal-text.js.map +1 -1
- package/lib/theme-settings.d.ts +2 -10
- package/lib/theme-settings.d.ts.map +1 -1
- package/lib/transcript.d.ts +5 -0
- package/lib/transcript.d.ts.map +1 -1
- package/lib/transcript.js +30 -13
- package/lib/transcript.js.map +1 -1
- package/lib/ui/copy.js +3 -0
- package/lib/ui/copy.js.map +1 -1
- package/lib/ui/dock.d.ts +8 -0
- package/lib/ui/dock.d.ts.map +1 -1
- package/lib/ui/dock.js +17 -0
- package/lib/ui/dock.js.map +1 -1
- package/lib/ui/editor.d.ts +16 -11
- package/lib/ui/editor.d.ts.map +1 -1
- package/lib/ui/editor.js +62 -39
- package/lib/ui/editor.js.map +1 -1
- package/lib/ui/frame.d.ts +11 -5
- package/lib/ui/frame.d.ts.map +1 -1
- package/lib/ui/frame.js +23 -7
- package/lib/ui/frame.js.map +1 -1
- package/lib/ui/layout.d.ts +3 -4
- package/lib/ui/layout.d.ts.map +1 -1
- package/lib/ui/layout.js +12 -7
- package/lib/ui/layout.js.map +1 -1
- package/lib/ui/picker.d.ts +1 -0
- package/lib/ui/picker.d.ts.map +1 -1
- package/lib/ui/picker.js +22 -9
- package/lib/ui/picker.js.map +1 -1
- package/lib/ui/queue.d.ts +1 -1
- package/lib/ui/queue.d.ts.map +1 -1
- package/lib/ui/queue.js +14 -3
- package/lib/ui/queue.js.map +1 -1
- package/lib/ui/status.d.ts +2 -0
- package/lib/ui/status.d.ts.map +1 -1
- package/lib/ui/status.js +4 -3
- package/lib/ui/status.js.map +1 -1
- package/lib/ui/view/document.d.ts +30 -0
- package/lib/ui/view/document.d.ts.map +1 -0
- package/lib/ui/view/document.js +87 -0
- package/lib/ui/view/document.js.map +1 -0
- package/lib/ui/view/transcript-message.d.ts.map +1 -1
- package/lib/ui/view/transcript-message.js +4 -3
- package/lib/ui/view/transcript-message.js.map +1 -1
- package/lib/ui/view.d.ts +45 -76
- package/lib/ui/view.d.ts.map +1 -1
- package/lib/ui/view.js +71 -148
- package/lib/ui/view.js.map +1 -1
- package/package.json +6 -1
|
@@ -1,15 +1,80 @@
|
|
|
1
|
+
import { Buffer } from 'node:buffer';
|
|
1
2
|
import { TuiAltScreen } from '@earendil-works/pi-tui';
|
|
2
|
-
import { holdHostWrites, HOST_WRITE_TARGETS } from "./host-writes.js";
|
|
3
|
+
import { holdHostWrites, HOST_WRITE_LIMIT, HOST_WRITE_TARGETS } from "./host-writes.js";
|
|
4
|
+
const FOCUS_IN = '\x1b[I';
|
|
5
|
+
const FOCUS_OUT = '\x1b[O';
|
|
6
|
+
/** Preserve shell preferences without changing cursor shape or scheduling blink frames. */
|
|
7
|
+
const SAVE_CURSOR_MODES = '\x1b[?12s\x1b[?1004s';
|
|
8
|
+
const ENABLE_CURSOR_MODES = '\x1b[?12h\x1b[?1004h';
|
|
9
|
+
const RESTORE_CURSOR_MODES = '\x1b[?1004r\x1b[?12r';
|
|
3
10
|
const WARNING_EVENT = 'warning';
|
|
11
|
+
const WARNING_EVENT_LIMIT = 256;
|
|
12
|
+
const ERROR_STACK_FIELD = 'stack';
|
|
13
|
+
const WARNING_TEXT_FIELDS = ['name', 'message', ERROR_STACK_FIELD, 'code', 'detail'];
|
|
14
|
+
const HIGH_SURROGATE = /^[\ud800-\udbff]$/u;
|
|
15
|
+
const LOW_SURROGATE = /^[\udc00-\udfff]$/u;
|
|
16
|
+
const WARNING_DROPPED = '… warnings dropped';
|
|
17
|
+
const FRAME_REPORTER_FAILURE = 'frame error reporter failed';
|
|
18
|
+
const NATIVE_ERROR_STACK = Object.getOwnPropertyDescriptor(new Error(), ERROR_STACK_FIELD);
|
|
4
19
|
const RESTORE_SHELL = '\x1b[?1049l\x1b[0m\x1b[?7h\x1b[?25h';
|
|
20
|
+
/** Budget standard warning text without replacing the producer's retained event identity. */
|
|
21
|
+
function warningBytes(args) {
|
|
22
|
+
let bytes = 0;
|
|
23
|
+
try {
|
|
24
|
+
for (const argument of args) {
|
|
25
|
+
const values = [];
|
|
26
|
+
if (argument instanceof Error) {
|
|
27
|
+
// Retaining identity also retains every own metadata graph, not just the text Node prints.
|
|
28
|
+
for (const field of new Set([...WARNING_TEXT_FIELDS, ...Reflect.ownKeys(argument)])) {
|
|
29
|
+
const descriptor = Object.getOwnPropertyDescriptor(argument, field);
|
|
30
|
+
// Native lazy stacks preserve trace locations; custom accessors can hide an unbounded closure.
|
|
31
|
+
if (descriptor !== undefined && (descriptor.get !== undefined || descriptor.set !== undefined)
|
|
32
|
+
&& !(field === ERROR_STACK_FIELD && descriptor.get === NATIVE_ERROR_STACK?.get && descriptor.set === NATIVE_ERROR_STACK?.set)) {
|
|
33
|
+
return HOST_WRITE_LIMIT + 1;
|
|
34
|
+
}
|
|
35
|
+
bytes += Buffer.byteLength(String(field));
|
|
36
|
+
values.push(Reflect.get(argument, field));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else
|
|
40
|
+
values.push(argument);
|
|
41
|
+
for (const value of values) {
|
|
42
|
+
if ((value !== null && typeof value === 'object') || typeof value === 'function')
|
|
43
|
+
return HOST_WRITE_LIMIT + 1;
|
|
44
|
+
if (value !== undefined)
|
|
45
|
+
bytes += Buffer.byteLength(String(value));
|
|
46
|
+
if (bytes > HOST_WRITE_LIMIT)
|
|
47
|
+
return bytes;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
// Opaque metadata or throwing getters cannot establish a safe retention budget.
|
|
53
|
+
return HOST_WRITE_LIMIT + 1;
|
|
54
|
+
}
|
|
55
|
+
return bytes;
|
|
56
|
+
}
|
|
5
57
|
/** Node's default warning listener writes outside the renderer, so delivery must wait for the shell. */
|
|
6
58
|
function deferWarnings() {
|
|
7
59
|
const emit = process.emit;
|
|
8
60
|
const pending = [];
|
|
61
|
+
let bytes = 0;
|
|
62
|
+
let dropped = 0;
|
|
9
63
|
let active = true;
|
|
10
64
|
const deferredEmit = function (event, ...args) {
|
|
11
65
|
if (active && this === process && event === WARNING_EVENT) {
|
|
12
|
-
|
|
66
|
+
// Root-cause warnings survive a burst; later repetitions must not grow the hold or repeatedly format stacks.
|
|
67
|
+
if (pending.length >= WARNING_EVENT_LIMIT || bytes >= HOST_WRITE_LIMIT)
|
|
68
|
+
dropped += 1;
|
|
69
|
+
else {
|
|
70
|
+
const size = warningBytes(args);
|
|
71
|
+
if (size > HOST_WRITE_LIMIT - bytes)
|
|
72
|
+
dropped += 1;
|
|
73
|
+
else {
|
|
74
|
+
pending.push(args);
|
|
75
|
+
bytes += size;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
13
78
|
return process.listenerCount(WARNING_EVENT) > 0;
|
|
14
79
|
}
|
|
15
80
|
return Reflect.apply(emit, this, [event, ...args]);
|
|
@@ -23,6 +88,7 @@ function deferWarnings() {
|
|
|
23
88
|
if (process.emit === deferredEmit)
|
|
24
89
|
process.emit = emit;
|
|
25
90
|
const failures = [];
|
|
91
|
+
bytes = 0;
|
|
26
92
|
for (const args of pending.splice(0)) {
|
|
27
93
|
try {
|
|
28
94
|
Reflect.apply(emit, process, [WARNING_EVENT, ...args]);
|
|
@@ -31,6 +97,15 @@ function deferWarnings() {
|
|
|
31
97
|
failures.push(error);
|
|
32
98
|
}
|
|
33
99
|
}
|
|
100
|
+
// One-shot consumers need the original root cause before an aggregate loss notification.
|
|
101
|
+
if (dropped > 0) {
|
|
102
|
+
try {
|
|
103
|
+
Reflect.apply(emit, process, [WARNING_EVENT, new Error(`${WARNING_DROPPED}: ${dropped}`)]);
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
failures.push(error);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
34
109
|
if (failures.length > 0)
|
|
35
110
|
throw failures[0];
|
|
36
111
|
};
|
|
@@ -44,7 +119,12 @@ export class WarningSafeTui extends TuiAltScreen {
|
|
|
44
119
|
releaseWarnings;
|
|
45
120
|
hostWrites;
|
|
46
121
|
frameFailed = false;
|
|
47
|
-
|
|
122
|
+
highSurrogate;
|
|
123
|
+
/** A stopped surface must never alter the cursor of an external editor. */
|
|
124
|
+
cursorModesActive = false;
|
|
125
|
+
/** Initialization follows super(): only the native constructor listener needs interception. */
|
|
126
|
+
applicationListenersReady = true;
|
|
127
|
+
/** Each failure episode deserves a report, but repeated retries must not flood the surface. */
|
|
48
128
|
onFrameError;
|
|
49
129
|
/**
|
|
50
130
|
* The screen as this surface runs it, with the framework's other two parameters
|
|
@@ -53,12 +133,41 @@ export class WarningSafeTui extends TuiAltScreen {
|
|
|
53
133
|
* ever has to name.
|
|
54
134
|
*/
|
|
55
135
|
constructor(terminal, options) {
|
|
56
|
-
super(terminal,
|
|
136
|
+
super(terminal, true, undefined, options);
|
|
137
|
+
// The pinned stdin buffer splits legacy text into UTF-16 units; filters must receive complete Unicode scalars.
|
|
138
|
+
this.addInputListener(data => {
|
|
139
|
+
if (HIGH_SURROGATE.test(data)) {
|
|
140
|
+
this.highSurrogate = data;
|
|
141
|
+
return { consume: true };
|
|
142
|
+
}
|
|
143
|
+
const previous = this.highSurrogate;
|
|
144
|
+
this.highSurrogate = undefined;
|
|
145
|
+
if (LOW_SURROGATE.test(data)) {
|
|
146
|
+
return previous === undefined ? { consume: true } : { data: previous + data };
|
|
147
|
+
}
|
|
148
|
+
return undefined;
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
/** The native viewport listener consumes focus reports, so observation must precede that listener's cleanup. */
|
|
152
|
+
addInputListener(listener) {
|
|
153
|
+
if (this.applicationListenersReady)
|
|
154
|
+
return super.addInputListener(listener);
|
|
155
|
+
return super.addInputListener(data => {
|
|
156
|
+
if (this.cursorModesActive && (data === FOCUS_IN || data === FOCUS_OUT)) {
|
|
157
|
+
this.setShowHardwareCursor(data === FOCUS_IN);
|
|
158
|
+
}
|
|
159
|
+
return listener(data);
|
|
160
|
+
});
|
|
57
161
|
}
|
|
58
162
|
start() {
|
|
59
163
|
this.releaseWarnings ??= deferWarnings();
|
|
60
164
|
this.hostWrites ??= holdHostWrites({ terminal: this.terminal, targets: HOST_WRITE_TARGETS });
|
|
61
165
|
try {
|
|
166
|
+
if (!this.cursorModesActive) {
|
|
167
|
+
this.cursorModesActive = true;
|
|
168
|
+
this.terminal.write(SAVE_CURSOR_MODES + ENABLE_CURSOR_MODES);
|
|
169
|
+
}
|
|
170
|
+
this.setShowHardwareCursor(true);
|
|
62
171
|
super.start();
|
|
63
172
|
}
|
|
64
173
|
catch (error) {
|
|
@@ -78,15 +187,23 @@ export class WarningSafeTui extends TuiAltScreen {
|
|
|
78
187
|
doRender() {
|
|
79
188
|
try {
|
|
80
189
|
super.doRender();
|
|
190
|
+
this.frameFailed = false;
|
|
81
191
|
}
|
|
82
192
|
catch (error) {
|
|
83
193
|
if (this.frameFailed)
|
|
84
194
|
return;
|
|
85
195
|
this.frameFailed = true;
|
|
86
|
-
|
|
196
|
+
try {
|
|
197
|
+
this.onFrameError?.(error);
|
|
198
|
+
}
|
|
199
|
+
catch {
|
|
200
|
+
// A broken reporter cannot replace a contained frame failure with an uncaught render-timer exception.
|
|
201
|
+
process.emitWarning(FRAME_REPORTER_FAILURE);
|
|
202
|
+
}
|
|
87
203
|
}
|
|
88
204
|
}
|
|
89
205
|
stop(options) {
|
|
206
|
+
this.highSurrogate = undefined;
|
|
90
207
|
try {
|
|
91
208
|
super.stop(options);
|
|
92
209
|
}
|
|
@@ -96,26 +213,35 @@ export class WarningSafeTui extends TuiAltScreen {
|
|
|
96
213
|
throw error;
|
|
97
214
|
}
|
|
98
215
|
finally {
|
|
99
|
-
// Warnings go first, while the hold is still in place, so what they print
|
|
100
|
-
// joins the host text in the order it arrived; the release then writes it
|
|
101
|
-
// all out behind the exit sequence this call already wrote.
|
|
102
|
-
const release = this.releaseWarnings;
|
|
103
|
-
this.releaseWarnings = undefined;
|
|
104
|
-
let warningFailure;
|
|
105
216
|
try {
|
|
106
|
-
|
|
217
|
+
// Native stop disables focus reporting; restore saved modes only after its final write.
|
|
218
|
+
if (this.cursorModesActive) {
|
|
219
|
+
this.cursorModesActive = false;
|
|
220
|
+
this.terminal.write(RESTORE_CURSOR_MODES);
|
|
221
|
+
}
|
|
107
222
|
}
|
|
108
|
-
|
|
109
|
-
//
|
|
110
|
-
//
|
|
111
|
-
//
|
|
112
|
-
|
|
223
|
+
finally {
|
|
224
|
+
// Warnings go first, while the hold is still in place, so what they print
|
|
225
|
+
// joins the host text in the order it arrived; the release then writes it
|
|
226
|
+
// all out behind the exit sequence this call already wrote.
|
|
227
|
+
const release = this.releaseWarnings;
|
|
228
|
+
this.releaseWarnings = undefined;
|
|
229
|
+
let warningFailure;
|
|
230
|
+
try {
|
|
231
|
+
release?.();
|
|
232
|
+
}
|
|
233
|
+
catch (error) {
|
|
234
|
+
// A listener that throws must not strand the host's own writing: the
|
|
235
|
+
// hold below is the terminal's, and it goes back on every path out of
|
|
236
|
+
// stop() — only then is the listener's failure surfaced again.
|
|
237
|
+
warningFailure = { error };
|
|
238
|
+
}
|
|
239
|
+
const writes = this.hostWrites;
|
|
240
|
+
this.hostWrites = undefined;
|
|
241
|
+
writes?.release();
|
|
242
|
+
if (warningFailure !== undefined)
|
|
243
|
+
throw warningFailure.error;
|
|
113
244
|
}
|
|
114
|
-
const writes = this.hostWrites;
|
|
115
|
-
this.hostWrites = undefined;
|
|
116
|
-
writes?.release();
|
|
117
|
-
if (warningFailure !== undefined)
|
|
118
|
-
throw warningFailure.error;
|
|
119
245
|
}
|
|
120
246
|
}
|
|
121
247
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warning-screen.js","sourceRoot":"","sources":["../../src/terminal/warning-screen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"warning-screen.js","sourceRoot":"","sources":["../../src/terminal/warning-screen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-text.d.ts","sourceRoot":"","sources":["../src/terminal-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAIvD,wFAAwF;AACxF,eAAO,MAAM,QAAQ,IAAI,CAAA;AAEzB,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAA;AAEzC,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,yFAAyF;IACzF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC;AA8BD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAkCvF;AASD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"terminal-text.d.ts","sourceRoot":"","sources":["../src/terminal-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAIvD,wFAAwF;AACxF,eAAO,MAAM,QAAQ,IAAI,CAAA;AAEzB,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAA;AAEzC,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,yFAAyF;IACzF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC;AA8BD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAkCvF;AASD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAgFlF;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAwBvE"}
|
package/lib/terminal-text.js
CHANGED
|
@@ -118,17 +118,23 @@ export function renderTerminalText(raw, options) {
|
|
|
118
118
|
let cursor = column;
|
|
119
119
|
let out = '';
|
|
120
120
|
const write = (text, width) => {
|
|
121
|
+
const last = cells[cells.length - 1];
|
|
121
122
|
if (width === 0) {
|
|
122
|
-
const last = cells[cells.length - 1];
|
|
123
123
|
if (last !== undefined && last.col + last.width === cursor)
|
|
124
124
|
last.text += text;
|
|
125
125
|
return;
|
|
126
126
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
127
|
+
// Styled append-only output must not rescan its whole row for each grapheme.
|
|
128
|
+
if (last === undefined || cursor >= last.col + last.width) {
|
|
129
|
+
cells.push({ col: cursor, width, text, style });
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
cells = cells.filter(cell => cell.col >= cursor + width || cell.col + cell.width <= cursor);
|
|
133
|
+
let at = cells.findIndex(cell => cell.col >= cursor + width);
|
|
134
|
+
if (at < 0)
|
|
135
|
+
at = cells.length;
|
|
136
|
+
cells.splice(at, 0, { col: cursor, width, text, style });
|
|
137
|
+
}
|
|
132
138
|
cursor += width;
|
|
133
139
|
};
|
|
134
140
|
const flush = () => {
|
package/lib/terminal-text.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-text.js","sourceRoot":"","sources":["../src/terminal-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAc,MAAM,yBAAyB,CAAA;AACxF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAgC,MAAM,wBAAwB,CAAA;AAEhG,wFAAwF;AACxF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AAmBzB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAA;AAE5E,4FAA4F;AAC5F,SAAS,aAAa,CAAC,KAAY;IACjC,QAAQ,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;gBAAE,KAAK,IAAI,CAAC,CAAA;YACxD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,KAAK,KAAK,CAAC;QACX,KAAK,UAAU,CAAC;QAChB,KAAK,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;QAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,CAAA;IACnB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,QAAQ,CAAC,MAAc;IAC9B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAA;AACvD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,UAA6B,EAAE;IAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,QAAQ,CAAA;IACnC,MAAM,UAAU,GAAG,GAAG,KAAK,QAAQ,CAAA;IACnC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;IAChC,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,QAAQ,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACzB,KAAK,MAAM;gBACT,GAAG,IAAI,KAAK,CAAC,GAAG,CAAA;gBAChB,IAAI,UAAU;oBAAE,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACjD,MAAK;YACP,KAAK,UAAU;gBACb,GAAG,IAAI,IAAI,CAAA;gBACX,MAAM,GAAG,CAAC,CAAA;gBACV,MAAK;YACP,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,GAAG,IAAI,IAAI,CAAA;oBACX,MAAK;gBACP,CAAC;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAC7B,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,CAAA;gBAChC,MAAM,GAAG,IAAI,CAAA;gBACb,MAAK;YACP,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5C,GAAG,IAAI,WAAW,CAAA;gBAClB,MAAM,IAAI,WAAW,CAAC,MAAM,CAAA;gBAC5B,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AASD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,OAA0B;IACxE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAA;IACxC,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,OAAO,CAAA;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAClC,IAAI,KAAK,GAAc,MAAM,CAAA;IAC7B,IAAI,QAAQ,GAAc,MAAM,CAAA;IAChC,IAAI,KAAK,GAAW,EAAE,CAAA;IACtB,IAAI,MAAM,GAAG,MAAM,CAAA;IACnB,IAAI,GAAG,GAAG,EAAE,CAAA;IAEZ,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,KAAa,EAAQ,EAAE;QAClD,IAAI,
|
|
1
|
+
{"version":3,"file":"terminal-text.js","sourceRoot":"","sources":["../src/terminal-text.ts"],"names":[],"mappings":"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"}
|
package/lib/theme-settings.d.ts
CHANGED
|
@@ -79,11 +79,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<NoInfer<{
|
|
|
79
79
|
mermaid: z<"off" | "final" | "streaming", "off" | "final" | "streaming", "defined">;
|
|
80
80
|
prefix: z<string, string, "plain">;
|
|
81
81
|
prefixWindow: z<number, number, "defined">;
|
|
82
|
-
keys: z<
|
|
83
|
-
[k: string]: z<string | string[], string | string[], "plain">;
|
|
84
|
-
}>>, Schemastery.ObjectT<NoInfer<{
|
|
85
|
-
[k: string]: z<string | string[], string | string[], "plain">;
|
|
86
|
-
}>>, "defined">;
|
|
82
|
+
keys: z<any, any, "defined">;
|
|
87
83
|
history: z<Schemastery.ObjectS<NoInfer<{
|
|
88
84
|
enabled: z<boolean, boolean, "defined">;
|
|
89
85
|
ghost: z<boolean, boolean, "defined">;
|
|
@@ -155,11 +151,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<NoInfer<{
|
|
|
155
151
|
mermaid: z<"off" | "final" | "streaming", "off" | "final" | "streaming", "defined">;
|
|
156
152
|
prefix: z<string, string, "plain">;
|
|
157
153
|
prefixWindow: z<number, number, "defined">;
|
|
158
|
-
keys: z<
|
|
159
|
-
[k: string]: z<string | string[], string | string[], "plain">;
|
|
160
|
-
}>>, Schemastery.ObjectT<NoInfer<{
|
|
161
|
-
[k: string]: z<string | string[], string | string[], "plain">;
|
|
162
|
-
}>>, "defined">;
|
|
154
|
+
keys: z<any, any, "defined">;
|
|
163
155
|
history: z<Schemastery.ObjectS<NoInfer<{
|
|
164
156
|
enabled: z<boolean, boolean, "defined">;
|
|
165
157
|
ghost: z<boolean, boolean, "defined">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-settings.d.ts","sourceRoot":"","sources":["../src/theme-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAGxC,OAAO,EAA4D,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG1G,OAAO,EAIL,KAAK,gBAAgB,EAGtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAiB,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAQrF,OAAO,EAAiC,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AAE1E,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEtF,wDAAwD;AACxD,eAAO,MAAM,sBAAsB,YAAY,CAAA;AAE/C,oGAAoG;AACpG,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAA;AAcnD,uFAAuF;AACvF,eAAO,MAAM,aAAa,wCAAyC,CAAA;AACnE,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AA6DxD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"theme-settings.d.ts","sourceRoot":"","sources":["../src/theme-settings.ts"],"names":[],"mappings":"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"}
|
package/lib/transcript.d.ts
CHANGED
|
@@ -57,6 +57,7 @@ export declare class TranscriptModel {
|
|
|
57
57
|
*/
|
|
58
58
|
private readonly clock;
|
|
59
59
|
private readonly settled;
|
|
60
|
+
private contentRevision;
|
|
60
61
|
private live;
|
|
61
62
|
private liveReasoning;
|
|
62
63
|
private reasoningStartedAt;
|
|
@@ -92,6 +93,8 @@ export declare class TranscriptModel {
|
|
|
92
93
|
* only way for the number on screen and the cache key to agree.
|
|
93
94
|
*/
|
|
94
95
|
now(): number;
|
|
96
|
+
/** Renderers retain a document until its folded content changes, independent of keyboard frames. */
|
|
97
|
+
get revision(): number;
|
|
95
98
|
/** Rows to render: settled rows, the in-flight reasoning, then the in-flight text. */
|
|
96
99
|
entries(): readonly TranscriptEntry[];
|
|
97
100
|
/**
|
|
@@ -131,6 +134,8 @@ export declare class TranscriptModel {
|
|
|
131
134
|
/** Settle the reasoning streamed so far into a row of its own. */
|
|
132
135
|
private settleReasoning;
|
|
133
136
|
apply(event: FoldableEvent): void;
|
|
137
|
+
/** Surface-local and durable rows share the revision that invalidates retained documents. */
|
|
138
|
+
private append;
|
|
134
139
|
/** Commit the rows the call fold drew: appends in order, replacements in place. */
|
|
135
140
|
private commit;
|
|
136
141
|
/** The card a settled tool row holds, so the call fold can restate a row it drew earlier. */
|
package/lib/transcript.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../src/transcript.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAKzD,OAAO,EAAgB,KAAK,aAAa,EAAwB,MAAM,4BAA4B,CAAA;AAEnG,qCAAqC;AACrC,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC5H;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAE7B,yGAAyG;AACzG,eAAO,MAAM,oBAAoB,QAAS,CAAA;AAgB1C;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CACxB;AAkBD;;;;;;;;;GASG;AACH,qBAAa,eAAe;
|
|
1
|
+
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../src/transcript.ts"],"names":[],"mappings":"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"}
|
package/lib/transcript.js
CHANGED
|
@@ -46,6 +46,7 @@ function messageOf(value) {
|
|
|
46
46
|
export class TranscriptModel {
|
|
47
47
|
clock;
|
|
48
48
|
settled = [];
|
|
49
|
+
contentRevision = 0;
|
|
49
50
|
live = '';
|
|
50
51
|
liveReasoning = '';
|
|
51
52
|
reasoningStartedAt;
|
|
@@ -86,6 +87,10 @@ export class TranscriptModel {
|
|
|
86
87
|
now() {
|
|
87
88
|
return this.clock();
|
|
88
89
|
}
|
|
90
|
+
/** Renderers retain a document until its folded content changes, independent of keyboard frames. */
|
|
91
|
+
get revision() {
|
|
92
|
+
return this.contentRevision;
|
|
93
|
+
}
|
|
89
94
|
/** Rows to render: settled rows, the in-flight reasoning, then the in-flight text. */
|
|
90
95
|
entries() {
|
|
91
96
|
const entries = [...this.settled];
|
|
@@ -126,6 +131,7 @@ export class TranscriptModel {
|
|
|
126
131
|
return this.calls.liveCall(callId);
|
|
127
132
|
}
|
|
128
133
|
reset() {
|
|
134
|
+
this.contentRevision++;
|
|
129
135
|
this.settled.length = 0;
|
|
130
136
|
// The call fold's records name rows of the transcript being dropped, so the
|
|
131
137
|
// fold is reset with it rather than left holding stale row indices.
|
|
@@ -138,11 +144,11 @@ export class TranscriptModel {
|
|
|
138
144
|
}
|
|
139
145
|
/** Append a surface-local line that is not part of the durable conversation. */
|
|
140
146
|
notice(text) {
|
|
141
|
-
this.
|
|
147
|
+
this.append({ kind: 'notice', text });
|
|
142
148
|
}
|
|
143
149
|
/** Mark a boundary in the conversation: compaction, or work that ran elsewhere. */
|
|
144
150
|
marker(text) {
|
|
145
|
-
this.
|
|
151
|
+
this.append({ kind: 'marker', text });
|
|
146
152
|
}
|
|
147
153
|
/** Apply one transient assistant-stream chunk. */
|
|
148
154
|
applyStreamChunk(chunk) {
|
|
@@ -151,12 +157,15 @@ export class TranscriptModel {
|
|
|
151
157
|
return;
|
|
152
158
|
switch (record.type) {
|
|
153
159
|
case 'text-delta':
|
|
154
|
-
if (typeof record.text === 'string')
|
|
160
|
+
if (typeof record.text === 'string' && record.text !== '') {
|
|
155
161
|
this.live += record.text;
|
|
162
|
+
this.contentRevision++;
|
|
163
|
+
}
|
|
156
164
|
return;
|
|
157
165
|
case 'reasoning-delta':
|
|
158
166
|
if (typeof record.text !== 'string')
|
|
159
167
|
return;
|
|
168
|
+
this.contentRevision++;
|
|
160
169
|
this.reasoningStartedAt ??= this.clock();
|
|
161
170
|
this.liveReasoningId ??= String(++this.thoughtSeq);
|
|
162
171
|
this.liveReasoning += record.text;
|
|
@@ -188,21 +197,21 @@ export class TranscriptModel {
|
|
|
188
197
|
return;
|
|
189
198
|
if (kind === 'error') {
|
|
190
199
|
const failure = messageOf(reason.error);
|
|
191
|
-
this.
|
|
200
|
+
this.append({ kind: 'notice', text: `turn failed: ${failure === '' ? 'model request failed' : failure}` });
|
|
192
201
|
return;
|
|
193
202
|
}
|
|
194
203
|
if (kind === 'aborted') {
|
|
195
204
|
const cause = asRecord(reason.reason);
|
|
196
205
|
const by = typeof cause?.kind === 'string' ? cause.kind : 'user';
|
|
197
|
-
this.
|
|
206
|
+
this.append({ kind: 'notice', text: `turn aborted (${by})` });
|
|
198
207
|
return;
|
|
199
208
|
}
|
|
200
|
-
this.
|
|
209
|
+
this.append({ kind: 'notice', text: `turn ended: ${kind}` });
|
|
201
210
|
}
|
|
202
211
|
/** Report a live agent failure the durable log never carries as a message. */
|
|
203
212
|
reportError(error) {
|
|
204
213
|
const text = error instanceof Error ? error.message : messageOf(error);
|
|
205
|
-
this.
|
|
214
|
+
this.append({ kind: 'notice', text: `error: ${text === '' ? 'agent failed' : text}` });
|
|
206
215
|
}
|
|
207
216
|
/**
|
|
208
217
|
* Settle one thought into a row of its own.
|
|
@@ -218,7 +227,7 @@ export class TranscriptModel {
|
|
|
218
227
|
// recorded message carries takes the next one.
|
|
219
228
|
const id = this.liveReasoningId ?? String(++this.thoughtSeq);
|
|
220
229
|
this.liveReasoningId = undefined;
|
|
221
|
-
this.
|
|
230
|
+
this.append({
|
|
222
231
|
kind: 'reasoning',
|
|
223
232
|
id,
|
|
224
233
|
summary: `reasoning · ${describeTokens(text)}${timing}`,
|
|
@@ -248,19 +257,20 @@ export class TranscriptModel {
|
|
|
248
257
|
// work apart from the next one's. Reading the loop's own event rather than
|
|
249
258
|
// inferring a break from the rows is what makes a step that says nothing
|
|
250
259
|
// and only calls tools still read as a step of its own.
|
|
251
|
-
this.
|
|
260
|
+
this.append({ kind: 'step' });
|
|
252
261
|
return;
|
|
253
262
|
}
|
|
254
263
|
case 'user/message': {
|
|
255
264
|
const text = textOfContent(data.content);
|
|
256
265
|
if (text === '')
|
|
257
266
|
return;
|
|
258
|
-
this.
|
|
267
|
+
this.append(sourceKind(data) === 'user'
|
|
259
268
|
? { kind: 'user', text }
|
|
260
269
|
: { kind: 'notice', text: injectionSummary(data, text) });
|
|
261
270
|
return;
|
|
262
271
|
}
|
|
263
272
|
case 'turn/end': {
|
|
273
|
+
this.contentRevision++;
|
|
264
274
|
this.reportTurnEnd(asRecord(data.reason) ?? {});
|
|
265
275
|
// A turn that ended without a recorded message must not leave streamed
|
|
266
276
|
// text on screen as though it had settled.
|
|
@@ -300,10 +310,11 @@ export class TranscriptModel {
|
|
|
300
310
|
// An attempt that settled without a message still has to explain itself.
|
|
301
311
|
const failure = data.error === undefined ? '' : messageOf(data.error);
|
|
302
312
|
if (failure !== '')
|
|
303
|
-
this.
|
|
313
|
+
this.append({ kind: 'notice', text: `request failed: ${failure}` });
|
|
304
314
|
return;
|
|
305
315
|
}
|
|
306
316
|
case 'assistant/message': {
|
|
317
|
+
this.contentRevision++;
|
|
307
318
|
const content = asRecord(data.message)?.content;
|
|
308
319
|
const text = textOfContent(content);
|
|
309
320
|
// Settle whatever the stream held, then decide whether the recorded
|
|
@@ -317,7 +328,7 @@ export class TranscriptModel {
|
|
|
317
328
|
}
|
|
318
329
|
this.live = '';
|
|
319
330
|
if (text !== '')
|
|
320
|
-
this.
|
|
331
|
+
this.append({ kind: 'assistant', text });
|
|
321
332
|
return;
|
|
322
333
|
}
|
|
323
334
|
case 'tool/call':
|
|
@@ -334,10 +345,16 @@ export class TranscriptModel {
|
|
|
334
345
|
return;
|
|
335
346
|
}
|
|
336
347
|
}
|
|
348
|
+
/** Surface-local and durable rows share the revision that invalidates retained documents. */
|
|
349
|
+
append(entry) {
|
|
350
|
+
this.settled.push(entry);
|
|
351
|
+
this.contentRevision++;
|
|
352
|
+
}
|
|
337
353
|
/** Commit the rows the call fold drew: appends in order, replacements in place. */
|
|
338
354
|
commit(outcome) {
|
|
355
|
+
this.contentRevision++;
|
|
339
356
|
for (const entry of outcome.appends)
|
|
340
|
-
this.
|
|
357
|
+
this.append(entry);
|
|
341
358
|
for (const { index, entry } of outcome.replacements)
|
|
342
359
|
this.settled[index] = entry;
|
|
343
360
|
}
|
package/lib/transcript.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../src/transcript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../src/transcript.ts"],"names":[],"mappings":"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"}
|
package/lib/ui/copy.js
CHANGED
|
@@ -78,6 +78,9 @@ function readLine(line, rows, whole) {
|
|
|
78
78
|
// itself there was the shape and nothing more.
|
|
79
79
|
const from = Math.max(hit.column, frame.lead);
|
|
80
80
|
const to = Math.min(hit.column + visibleWidth(line), visibleWidth(drawn) - frame.trail);
|
|
81
|
+
// Whole empty message rows preserve paragraph breaks; rail-only fragments do not.
|
|
82
|
+
if (hit.whole && own.trimEnd() === '')
|
|
83
|
+
return '';
|
|
81
84
|
if (to <= from)
|
|
82
85
|
return undefined;
|
|
83
86
|
return sliceByColumn(own, from - frame.lead, to - from, true).trimEnd();
|