@zerone-agent/open-agent-sdk 0.5.9 → 0.6.1
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/agent.d.ts +49 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +148 -0
- package/dist/agent.js.map +1 -1
- package/dist/engine.d.ts +19 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +88 -2
- package/dist/engine.js.map +1 -1
- package/dist/index.d.ts +9 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/dist/providers/types.d.ts +7 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/revert/index.d.ts +63 -0
- package/dist/revert/index.d.ts.map +1 -0
- package/dist/revert/index.js +125 -0
- package/dist/revert/index.js.map +1 -0
- package/dist/session.d.ts +20 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +40 -6
- package/dist/session.js.map +1 -1
- package/dist/snapshot/git-detector.d.ts +9 -0
- package/dist/snapshot/git-detector.d.ts.map +1 -0
- package/dist/snapshot/git-detector.js +26 -0
- package/dist/snapshot/git-detector.js.map +1 -0
- package/dist/snapshot/index.d.ts +76 -0
- package/dist/snapshot/index.d.ts.map +1 -0
- package/dist/snapshot/index.js +288 -0
- package/dist/snapshot/index.js.map +1 -0
- package/dist/snapshot/semaphore.d.ts +11 -0
- package/dist/snapshot/semaphore.d.ts.map +1 -0
- package/dist/snapshot/semaphore.js +27 -0
- package/dist/snapshot/semaphore.js.map +1 -0
- package/dist/types.d.ts +15 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/compact.d.ts +5 -0
- package/dist/utils/compact.d.ts.map +1 -1
- package/dist/utils/compact.js +30 -0
- package/dist/utils/compact.js.map +1 -1
- package/dist/utils/messages.js +2 -2
- package/dist/utils/messages.js.map +1 -1
- package/package.json +1 -1
package/dist/agent.d.ts
CHANGED
|
@@ -18,8 +18,10 @@
|
|
|
18
18
|
* })
|
|
19
19
|
*/
|
|
20
20
|
import type { AgentOptions, QueryResult, SDKMessage, SDKCompactMessage, Message, PermissionMode } from './types.js';
|
|
21
|
+
import { type RevertResult } from './revert/index.js';
|
|
21
22
|
import type { SkillDefinition } from './skills/types.js';
|
|
22
23
|
import { type ApiType } from './providers/index.js';
|
|
24
|
+
import type { NormalizedMessageParam } from './providers/types.js';
|
|
23
25
|
export declare class Agent {
|
|
24
26
|
private cfg;
|
|
25
27
|
private toolPool;
|
|
@@ -37,6 +39,7 @@ export declare class Agent {
|
|
|
37
39
|
private hookRegistry;
|
|
38
40
|
private lastInputTokens;
|
|
39
41
|
private lastOutputTokens;
|
|
42
|
+
private revertService;
|
|
40
43
|
constructor(options?: AgentOptions);
|
|
41
44
|
/**
|
|
42
45
|
* Resolve API type from options, env, or model name heuristic.
|
|
@@ -73,6 +76,52 @@ export declare class Agent {
|
|
|
73
76
|
* Interrupt the current query.
|
|
74
77
|
*/
|
|
75
78
|
interrupt(): Promise<void>;
|
|
79
|
+
/**
|
|
80
|
+
* Ensure a QueryEngine exists with the current history loaded.
|
|
81
|
+
* Creates one from this.history if currentEngine is null (scenario B:
|
|
82
|
+
* agent reopened from session).
|
|
83
|
+
*/
|
|
84
|
+
private ensureEngine;
|
|
85
|
+
/**
|
|
86
|
+
* Ensure SnapshotEngine is initialized.
|
|
87
|
+
*/
|
|
88
|
+
private ensureSnapshotEngine;
|
|
89
|
+
/**
|
|
90
|
+
* Get conversation messages with IDs (for revert/fork targeting).
|
|
91
|
+
* Returns NormalizedMessageParam[] — same format as engine messages.
|
|
92
|
+
*/
|
|
93
|
+
getMessageHistory(): Promise<NormalizedMessageParam[]>;
|
|
94
|
+
/**
|
|
95
|
+
* Revert conversation (and optionally files) to before the given message.
|
|
96
|
+
*
|
|
97
|
+
* Works even after the agent's prompt() has completed — the engine is
|
|
98
|
+
* reconstructed from session history if needed (scenario B).
|
|
99
|
+
*/
|
|
100
|
+
revert(messageId: string): Promise<RevertResult>;
|
|
101
|
+
/**
|
|
102
|
+
* Undo a revert — restore conversation and files to pre-revert state.
|
|
103
|
+
*/
|
|
104
|
+
unrevert(): Promise<void>;
|
|
105
|
+
/**
|
|
106
|
+
* Permanently commit a revert. The reverted messages are gone forever.
|
|
107
|
+
* Called implicitly when the user sends a new prompt after revert.
|
|
108
|
+
*/
|
|
109
|
+
commitRevert(): void;
|
|
110
|
+
/**
|
|
111
|
+
* Whether a revert is currently active.
|
|
112
|
+
*/
|
|
113
|
+
isReverted(): boolean;
|
|
114
|
+
/**
|
|
115
|
+
* Get current revert state for persistence/display.
|
|
116
|
+
*/
|
|
117
|
+
getRevertState(): {
|
|
118
|
+
messageId: string;
|
|
119
|
+
snapshotHash?: string;
|
|
120
|
+
} | null;
|
|
121
|
+
/**
|
|
122
|
+
* Persist current history to session file.
|
|
123
|
+
*/
|
|
124
|
+
private persistSession;
|
|
76
125
|
/**
|
|
77
126
|
* Fire lifecycle hooks. Returns hook outputs; never throws.
|
|
78
127
|
*/
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,iBAAiB,EAGjB,OAAO,EACP,cAAc,EACf,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/agent.js
CHANGED
|
@@ -23,6 +23,7 @@ import { connectMCPServer } from './mcp/client.js';
|
|
|
23
23
|
import { isSdkServerConfig } from './sdk-mcp-server.js';
|
|
24
24
|
import { registerAgents } from './tools/task-tool.js';
|
|
25
25
|
import { saveSession, loadSession, } from './session.js';
|
|
26
|
+
import { RevertService } from './revert/index.js';
|
|
26
27
|
import { createHookRegistry } from './hooks.js';
|
|
27
28
|
import { loadSkillsFromFilesystem, registerSkill as registryRegisterSkill, unregisterSkill as registryUnregisterSkill, clearSkills, getUserInvocableSkills } from './skills/index.js';
|
|
28
29
|
import { createProvider } from './providers/index.js';
|
|
@@ -49,6 +50,7 @@ export class Agent {
|
|
|
49
50
|
hookRegistry;
|
|
50
51
|
lastInputTokens = 0;
|
|
51
52
|
lastOutputTokens = 0;
|
|
53
|
+
revertService = null;
|
|
52
54
|
constructor(options = {}) {
|
|
53
55
|
// Shallow copy to avoid mutating caller's object
|
|
54
56
|
this.cfg = { ...options };
|
|
@@ -280,6 +282,11 @@ export class Agent {
|
|
|
280
282
|
baseURL: overrides.baseURL ?? this.apiCredentials.baseUrl,
|
|
281
283
|
});
|
|
282
284
|
}
|
|
285
|
+
// Sync from previous engine — external modifications (e.g. revert)
|
|
286
|
+
// may have changed engine.messages without updating this.history
|
|
287
|
+
if (this.currentEngine) {
|
|
288
|
+
this.history = this.currentEngine.getMessages();
|
|
289
|
+
}
|
|
283
290
|
// Create query engine with current conversation state
|
|
284
291
|
const engine = new QueryEngine({
|
|
285
292
|
cwd,
|
|
@@ -304,6 +311,7 @@ export class Agent {
|
|
|
304
311
|
allowedSkills: opts.allowedSkills,
|
|
305
312
|
contextWindow: opts.contextWindow,
|
|
306
313
|
maxRequestBodyBytes: opts.maxRequestBodyBytes,
|
|
314
|
+
snapshotEngine: opts.snapshotEngine ?? this.cfg.snapshotEngine,
|
|
307
315
|
}, { lastInputTokens: this.lastInputTokens, lastOutputTokens: this.lastOutputTokens });
|
|
308
316
|
this.currentEngine = engine;
|
|
309
317
|
// Inject existing conversation history
|
|
@@ -406,6 +414,146 @@ export class Agent {
|
|
|
406
414
|
async interrupt() {
|
|
407
415
|
this.abortCtrl?.abort();
|
|
408
416
|
}
|
|
417
|
+
// --------------------------------------------------------------------------
|
|
418
|
+
// Revert API
|
|
419
|
+
// --------------------------------------------------------------------------
|
|
420
|
+
/**
|
|
421
|
+
* Ensure a QueryEngine exists with the current history loaded.
|
|
422
|
+
* Creates one from this.history if currentEngine is null (scenario B:
|
|
423
|
+
* agent reopened from session).
|
|
424
|
+
*/
|
|
425
|
+
async ensureEngine() {
|
|
426
|
+
await this.setupDone;
|
|
427
|
+
if (this.currentEngine && this.currentEngine.messages.length > 0) {
|
|
428
|
+
return this.currentEngine;
|
|
429
|
+
}
|
|
430
|
+
// Reconstruct engine from history
|
|
431
|
+
const engine = new QueryEngine({
|
|
432
|
+
cwd: this.cfg.cwd || process.cwd(),
|
|
433
|
+
model: this.modelId,
|
|
434
|
+
provider: this.provider,
|
|
435
|
+
tools: this.toolPool,
|
|
436
|
+
maxTurns: 1,
|
|
437
|
+
maxTokens: DEFAULT_MAX_TOKENS,
|
|
438
|
+
canUseTool: async () => ({ behavior: 'allow' }),
|
|
439
|
+
includePartialMessages: false,
|
|
440
|
+
agentId: 'revert',
|
|
441
|
+
snapshotEngine: this.cfg.snapshotEngine,
|
|
442
|
+
});
|
|
443
|
+
for (const msg of this.history) {
|
|
444
|
+
engine.messages.push(msg);
|
|
445
|
+
}
|
|
446
|
+
this.currentEngine = engine;
|
|
447
|
+
return engine;
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Ensure SnapshotEngine is initialized.
|
|
451
|
+
*/
|
|
452
|
+
async ensureSnapshotEngine() {
|
|
453
|
+
const se = this.cfg.snapshotEngine;
|
|
454
|
+
if (se && !se._gitDir) {
|
|
455
|
+
await se.init();
|
|
456
|
+
}
|
|
457
|
+
return se;
|
|
458
|
+
}
|
|
459
|
+
/**
|
|
460
|
+
* Get conversation messages with IDs (for revert/fork targeting).
|
|
461
|
+
* Returns NormalizedMessageParam[] — same format as engine messages.
|
|
462
|
+
*/
|
|
463
|
+
async getMessageHistory() {
|
|
464
|
+
await this.setupDone;
|
|
465
|
+
return [...this.history];
|
|
466
|
+
}
|
|
467
|
+
/**
|
|
468
|
+
* Revert conversation (and optionally files) to before the given message.
|
|
469
|
+
*
|
|
470
|
+
* Works even after the agent's prompt() has completed — the engine is
|
|
471
|
+
* reconstructed from session history if needed (scenario B).
|
|
472
|
+
*/
|
|
473
|
+
async revert(messageId) {
|
|
474
|
+
await this.setupDone;
|
|
475
|
+
const engine = await this.ensureEngine();
|
|
476
|
+
const snapshotEngine = this.cfg.snapshotEngine;
|
|
477
|
+
if (snapshotEngine && !snapshotEngine._gitDir) {
|
|
478
|
+
await snapshotEngine.init();
|
|
479
|
+
}
|
|
480
|
+
// Sync history → engine in case of external changes
|
|
481
|
+
if (this.currentEngine && this.history.length > 0 && this.currentEngine.messages.length === 0) {
|
|
482
|
+
for (const msg of this.history) {
|
|
483
|
+
this.currentEngine.messages.push(msg);
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
this.revertService = new RevertService({
|
|
487
|
+
engine: {
|
|
488
|
+
messages: engine.messages,
|
|
489
|
+
snapshot: () => engine.snapshot(),
|
|
490
|
+
restore: (snap) => engine.restore(snap),
|
|
491
|
+
isRunning: false,
|
|
492
|
+
compactBoundaryId: engine.compactBoundaryId,
|
|
493
|
+
},
|
|
494
|
+
snapshotEngine,
|
|
495
|
+
engineSnapshot: engine.snapshot(),
|
|
496
|
+
});
|
|
497
|
+
const result = await this.revertService.revert(messageId);
|
|
498
|
+
// Sync truncated messages back to history
|
|
499
|
+
this.history = engine.getMessages();
|
|
500
|
+
// Persist
|
|
501
|
+
await this.persistSession();
|
|
502
|
+
return result;
|
|
503
|
+
}
|
|
504
|
+
/**
|
|
505
|
+
* Undo a revert — restore conversation and files to pre-revert state.
|
|
506
|
+
*/
|
|
507
|
+
async unrevert() {
|
|
508
|
+
if (!this.revertService) {
|
|
509
|
+
throw new Error('No active revert to undo');
|
|
510
|
+
}
|
|
511
|
+
await this.revertService.unrevert();
|
|
512
|
+
const engine = this.currentEngine;
|
|
513
|
+
if (engine) {
|
|
514
|
+
this.history = engine.getMessages();
|
|
515
|
+
}
|
|
516
|
+
await this.persistSession();
|
|
517
|
+
}
|
|
518
|
+
/**
|
|
519
|
+
* Permanently commit a revert. The reverted messages are gone forever.
|
|
520
|
+
* Called implicitly when the user sends a new prompt after revert.
|
|
521
|
+
*/
|
|
522
|
+
commitRevert() {
|
|
523
|
+
this.revertService?.cleanup();
|
|
524
|
+
this.revertService = null;
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* Whether a revert is currently active.
|
|
528
|
+
*/
|
|
529
|
+
isReverted() {
|
|
530
|
+
return this.revertService?.isReverted() ?? false;
|
|
531
|
+
}
|
|
532
|
+
/**
|
|
533
|
+
* Get current revert state for persistence/display.
|
|
534
|
+
*/
|
|
535
|
+
getRevertState() {
|
|
536
|
+
return this.revertService?.getState() ?? null;
|
|
537
|
+
}
|
|
538
|
+
/**
|
|
539
|
+
* Persist current history to session file.
|
|
540
|
+
*/
|
|
541
|
+
async persistSession() {
|
|
542
|
+
if (this.cfg.persistSession === false || this.history.length === 0)
|
|
543
|
+
return;
|
|
544
|
+
try {
|
|
545
|
+
await saveSession(this.sid, this.history, {
|
|
546
|
+
cwd: this.cfg.cwd || process.cwd(),
|
|
547
|
+
model: this.modelId,
|
|
548
|
+
provider: this.apiType,
|
|
549
|
+
lastInputTokens: this.lastInputTokens,
|
|
550
|
+
lastOutputTokens: this.lastOutputTokens,
|
|
551
|
+
});
|
|
552
|
+
}
|
|
553
|
+
catch {
|
|
554
|
+
// best-effort
|
|
555
|
+
}
|
|
556
|
+
}
|
|
409
557
|
/**
|
|
410
558
|
* Fire lifecycle hooks. Returns hook outputs; never throws.
|
|
411
559
|
*/
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
export declare const DEFAULT_MAX_TOKENS: number;
|
|
15
15
|
export declare const MAX_TOKENS_NON_STREAMING: number;
|
|
16
|
-
import type { SDKMessage, SDKCompactMessage, QueryEngineConfig, TokenUsage } from './types.js';
|
|
16
|
+
import type { SDKMessage, SDKCompactMessage, QueryEngineConfig, TokenUsage, EngineSnapshot } from './types.js';
|
|
17
17
|
import type { NormalizedMessageParam } from './providers/types.js';
|
|
18
18
|
export declare class QueryEngine {
|
|
19
19
|
private config;
|
|
@@ -26,6 +26,9 @@ export declare class QueryEngine {
|
|
|
26
26
|
private sessionId;
|
|
27
27
|
private apiTimeMs;
|
|
28
28
|
private hookRegistry?;
|
|
29
|
+
private snapshotEngine?;
|
|
30
|
+
private currentTurnSnapshot?;
|
|
31
|
+
private _compactBoundaryId?;
|
|
29
32
|
constructor(config: QueryEngineConfig, initialUsage?: {
|
|
30
33
|
lastInputTokens?: number;
|
|
31
34
|
lastOutputTokens?: number;
|
|
@@ -59,6 +62,21 @@ export declare class QueryEngine {
|
|
|
59
62
|
* Get current messages for session persistence.
|
|
60
63
|
*/
|
|
61
64
|
getMessages(): NormalizedMessageParam[];
|
|
65
|
+
/**
|
|
66
|
+
* Take a deep-copy snapshot of the current engine state.
|
|
67
|
+
* Used by RevertService for conversation rollback.
|
|
68
|
+
*/
|
|
69
|
+
snapshot(): EngineSnapshot;
|
|
70
|
+
/**
|
|
71
|
+
* Restore engine state from a snapshot.
|
|
72
|
+
* Modifies messages in-place so existing array references stay valid.
|
|
73
|
+
*/
|
|
74
|
+
restore(snap: EngineSnapshot): void;
|
|
75
|
+
/**
|
|
76
|
+
* ID of the oldest message that survived auto-compaction.
|
|
77
|
+
* Messages before this boundary were summarized and can no longer be reverted to.
|
|
78
|
+
*/
|
|
79
|
+
get compactBoundaryId(): string | undefined;
|
|
62
80
|
getUsage(): TokenUsage;
|
|
63
81
|
/**
|
|
64
82
|
* Get total cost.
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,kBAAkB,QAAY,CAAA;AAC3C,eAAO,MAAM,wBAAwB,QAAY,CAAA;AAEjD,OAAO,KAAK,EACV,UAAU,EAEV,iBAAiB,EACjB,iBAAiB,EAIjB,UAAU,
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,kBAAkB,QAAY,CAAA;AAC3C,eAAO,MAAM,wBAAwB,QAAY,CAAA;AAEjD,OAAO,KAAK,EACV,UAAU,EAEV,iBAAiB,EACjB,iBAAiB,EAIjB,UAAU,EACV,cAAc,EACf,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAGV,sBAAsB,EAEvB,MAAM,sBAAsB,CAAA;AAsH7B,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,QAAQ,CAAa;IACtB,QAAQ,EAAE,sBAAsB,EAAE,CAAK;IAC9C,OAAO,CAAC,UAAU,CAAoD;IACtE,OAAO,CAAC,SAAS,CAAI;IACrB,OAAO,CAAC,SAAS,CAAI;IACrB,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAAI;IACrB,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,cAAc,CAAC,CAA8C;IACrE,OAAO,CAAC,mBAAmB,CAAC,CAAQ;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAQ;gBAEvB,MAAM,EAAE,iBAAiB,EAAE,YAAY,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE;IAe7G;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAyE/B;;;OAGG;YACW,YAAY;IAiB1B;;;OAGG;IACI,aAAa,CAClB,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,GACrB,cAAc,CAAC,UAAU,CAAC;IAuf7B;;;;;OAKG;YACW,YAAY;IAoE1B;;OAEG;YACW,iBAAiB;IAwK/B;;OAEG;IACH,WAAW,IAAI,sBAAsB,EAAE;IAIvC;;;OAGG;IACH,QAAQ,IAAI,cAAc;IAgB1B;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAenC;;;OAGG;IACH,IAAI,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAE1C;IAED,QAAQ,IAAI,UAAU;IAItB;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,QAAQ,IAAI;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE;IAOjE;;;;;;;OAOG;IACI,aAAa,IAAI,cAAc,CAAC,iBAAiB,CAAC;IA+BzD;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;CASlE"}
|
package/dist/engine.js
CHANGED
|
@@ -102,6 +102,9 @@ export class QueryEngine {
|
|
|
102
102
|
sessionId;
|
|
103
103
|
apiTimeMs = 0;
|
|
104
104
|
hookRegistry;
|
|
105
|
+
snapshotEngine;
|
|
106
|
+
currentTurnSnapshot;
|
|
107
|
+
_compactBoundaryId;
|
|
105
108
|
constructor(config, initialUsage) {
|
|
106
109
|
this.config = config;
|
|
107
110
|
this.provider = config.provider;
|
|
@@ -114,6 +117,7 @@ export class QueryEngine {
|
|
|
114
117
|
}
|
|
115
118
|
this.sessionId = config.sessionId || crypto.randomUUID();
|
|
116
119
|
this.hookRegistry = config.hookRegistry;
|
|
120
|
+
this.snapshotEngine = config.snapshotEngine;
|
|
117
121
|
}
|
|
118
122
|
/**
|
|
119
123
|
* Build complete response from stream chunks
|
|
@@ -232,7 +236,16 @@ export class QueryEngine {
|
|
|
232
236
|
return;
|
|
233
237
|
}
|
|
234
238
|
// Add user message
|
|
235
|
-
this.messages.push({ role: 'user', content: prompt });
|
|
239
|
+
this.messages.push({ role: 'user', content: prompt, id: crypto.randomUUID() });
|
|
240
|
+
// Snapshot workspace before processing (Mode A)
|
|
241
|
+
if (this.snapshotEngine) {
|
|
242
|
+
try {
|
|
243
|
+
this.currentTurnSnapshot = await this.snapshotEngine.track();
|
|
244
|
+
}
|
|
245
|
+
catch {
|
|
246
|
+
this.currentTurnSnapshot = undefined;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
236
249
|
// Build tool definitions for provider
|
|
237
250
|
const tools = this.config.tools.map(toProviderTool);
|
|
238
251
|
// Build system prompt
|
|
@@ -403,6 +416,8 @@ export class QueryEngine {
|
|
|
403
416
|
const result = await compactConversation(this.provider, this.config.model, this.messages, this.compactState);
|
|
404
417
|
this.messages = result.compactedMessages;
|
|
405
418
|
this.compactState = result.state;
|
|
419
|
+
// All messages were summarized — nothing to revert to
|
|
420
|
+
this._compactBoundaryId = undefined;
|
|
406
421
|
turnsRemaining++; // Retry this turn
|
|
407
422
|
this.turnCount--;
|
|
408
423
|
continue;
|
|
@@ -436,7 +451,25 @@ export class QueryEngine {
|
|
|
436
451
|
}
|
|
437
452
|
pruneMessages(this.messages);
|
|
438
453
|
// Add assistant message to conversation
|
|
439
|
-
this.messages.push({ role: 'assistant', content: response.content, rawUsage: response.rawUsage });
|
|
454
|
+
this.messages.push({ role: 'assistant', content: response.content, rawUsage: response.rawUsage, id: crypto.randomUUID() });
|
|
455
|
+
// Attach snapshot metadata to assistant message (Mode A)
|
|
456
|
+
if (this.snapshotEngine && this.currentTurnSnapshot) {
|
|
457
|
+
try {
|
|
458
|
+
const changedFiles = await this.snapshotEngine.patchList(this.currentTurnSnapshot);
|
|
459
|
+
if (changedFiles.length > 0) {
|
|
460
|
+
const assistantMsg = this.messages[this.messages.length - 1];
|
|
461
|
+
if (assistantMsg.role === 'assistant') {
|
|
462
|
+
assistantMsg._snapshot = {
|
|
463
|
+
beforeHash: this.currentTurnSnapshot,
|
|
464
|
+
changedFiles,
|
|
465
|
+
};
|
|
466
|
+
}
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
catch {
|
|
470
|
+
// non-fatal — snapshot tracking is best-effort
|
|
471
|
+
}
|
|
472
|
+
}
|
|
440
473
|
// Yield assistant message
|
|
441
474
|
yield {
|
|
442
475
|
type: 'assistant',
|
|
@@ -465,6 +498,7 @@ export class QueryEngine {
|
|
|
465
498
|
maxOutputRecoveryAttempts++;
|
|
466
499
|
this.messages.push({
|
|
467
500
|
role: 'user',
|
|
501
|
+
id: crypto.randomUUID(),
|
|
468
502
|
content: 'Please continue from where you left off.',
|
|
469
503
|
});
|
|
470
504
|
continue;
|
|
@@ -554,6 +588,7 @@ export class QueryEngine {
|
|
|
554
588
|
// generator is force-returned during yield, messages are already persisted.
|
|
555
589
|
this.messages.push({
|
|
556
590
|
role: 'user',
|
|
591
|
+
id: crypto.randomUUID(),
|
|
557
592
|
content: toolResults.map((r) => ({
|
|
558
593
|
type: 'tool_result',
|
|
559
594
|
tool_use_id: r.tool_use_id,
|
|
@@ -846,6 +881,50 @@ export class QueryEngine {
|
|
|
846
881
|
getMessages() {
|
|
847
882
|
return [...this.messages];
|
|
848
883
|
}
|
|
884
|
+
/**
|
|
885
|
+
* Take a deep-copy snapshot of the current engine state.
|
|
886
|
+
* Used by RevertService for conversation rollback.
|
|
887
|
+
*/
|
|
888
|
+
snapshot() {
|
|
889
|
+
return {
|
|
890
|
+
messages: this.messages.map((msg) => ({
|
|
891
|
+
...msg,
|
|
892
|
+
content: typeof msg.content === 'string'
|
|
893
|
+
? msg.content
|
|
894
|
+
: Array.isArray(msg.content)
|
|
895
|
+
? msg.content.map((b) => ({ ...b }))
|
|
896
|
+
: msg.content,
|
|
897
|
+
})),
|
|
898
|
+
totalUsage: { ...this.totalUsage },
|
|
899
|
+
totalCost: this.totalCost,
|
|
900
|
+
turnCount: this.turnCount,
|
|
901
|
+
};
|
|
902
|
+
}
|
|
903
|
+
/**
|
|
904
|
+
* Restore engine state from a snapshot.
|
|
905
|
+
* Modifies messages in-place so existing array references stay valid.
|
|
906
|
+
*/
|
|
907
|
+
restore(snap) {
|
|
908
|
+
this.messages.length = 0;
|
|
909
|
+
this.messages.push(...snap.messages.map((msg) => ({
|
|
910
|
+
...msg,
|
|
911
|
+
content: typeof msg.content === 'string'
|
|
912
|
+
? msg.content
|
|
913
|
+
: Array.isArray(msg.content)
|
|
914
|
+
? msg.content.map((b) => ({ ...b }))
|
|
915
|
+
: msg.content,
|
|
916
|
+
})));
|
|
917
|
+
this.totalUsage = { ...snap.totalUsage };
|
|
918
|
+
this.totalCost = snap.totalCost;
|
|
919
|
+
this.turnCount = snap.turnCount;
|
|
920
|
+
}
|
|
921
|
+
/**
|
|
922
|
+
* ID of the oldest message that survived auto-compaction.
|
|
923
|
+
* Messages before this boundary were summarized and can no longer be reverted to.
|
|
924
|
+
*/
|
|
925
|
+
get compactBoundaryId() {
|
|
926
|
+
return this._compactBoundaryId;
|
|
927
|
+
}
|
|
849
928
|
getUsage() {
|
|
850
929
|
return { ...this.totalUsage };
|
|
851
930
|
}
|
|
@@ -881,6 +960,13 @@ export class QueryEngine {
|
|
|
881
960
|
if (next.done) {
|
|
882
961
|
this.messages = next.value.messages;
|
|
883
962
|
this.compactState = next.value.state;
|
|
963
|
+
// Record compact boundary: first surviving message after summary
|
|
964
|
+
// Compacted messages = [summary-user, summary-assistant, ...tail, lastMsg]
|
|
965
|
+
// tail starts at index 2
|
|
966
|
+
if (this.messages.length > 2) {
|
|
967
|
+
const tailStart = this.messages[2];
|
|
968
|
+
this._compactBoundaryId = tailStart?.id;
|
|
969
|
+
}
|
|
884
970
|
break;
|
|
885
971
|
}
|
|
886
972
|
yield next.value;
|