@yuaone/core 0.1.3 → 0.3.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/dist/agent-loop.d.ts +152 -0
- package/dist/agent-loop.d.ts.map +1 -1
- package/dist/agent-loop.js +893 -9
- package/dist/agent-loop.js.map +1 -1
- package/dist/benchmark-runner.d.ts +141 -0
- package/dist/benchmark-runner.d.ts.map +1 -0
- package/dist/benchmark-runner.js +526 -0
- package/dist/benchmark-runner.js.map +1 -0
- package/dist/codebase-context.d.ts +49 -0
- package/dist/codebase-context.d.ts.map +1 -1
- package/dist/codebase-context.js +146 -0
- package/dist/codebase-context.js.map +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +8 -0
- package/dist/constants.js.map +1 -1
- package/dist/context-budget.d.ts +1 -1
- package/dist/context-budget.d.ts.map +1 -1
- package/dist/context-budget.js +4 -2
- package/dist/context-budget.js.map +1 -1
- package/dist/context-compressor.d.ts +1 -1
- package/dist/context-compressor.d.ts.map +1 -1
- package/dist/context-compressor.js +5 -3
- package/dist/context-compressor.js.map +1 -1
- package/dist/context-manager.d.ts +7 -1
- package/dist/context-manager.d.ts.map +1 -1
- package/dist/context-manager.js +34 -2
- package/dist/context-manager.js.map +1 -1
- package/dist/continuation-engine.d.ts +168 -0
- package/dist/continuation-engine.d.ts.map +1 -0
- package/dist/continuation-engine.js +421 -0
- package/dist/continuation-engine.js.map +1 -0
- package/dist/cost-optimizer.d.ts +159 -0
- package/dist/cost-optimizer.d.ts.map +1 -0
- package/dist/cost-optimizer.js +406 -0
- package/dist/cost-optimizer.js.map +1 -0
- package/dist/execution-engine.d.ts.map +1 -1
- package/dist/execution-engine.js +9 -4
- package/dist/execution-engine.js.map +1 -1
- package/dist/execution-policy-engine.d.ts +133 -0
- package/dist/execution-policy-engine.d.ts.map +1 -0
- package/dist/execution-policy-engine.js +367 -0
- package/dist/execution-policy-engine.js.map +1 -0
- package/dist/failure-recovery.d.ts +228 -0
- package/dist/failure-recovery.d.ts.map +1 -0
- package/dist/failure-recovery.js +664 -0
- package/dist/failure-recovery.js.map +1 -0
- package/dist/hierarchical-planner.d.ts +69 -1
- package/dist/hierarchical-planner.d.ts.map +1 -1
- package/dist/hierarchical-planner.js +117 -0
- package/dist/hierarchical-planner.js.map +1 -1
- package/dist/impact-analyzer.d.ts +92 -0
- package/dist/impact-analyzer.d.ts.map +1 -0
- package/dist/impact-analyzer.js +615 -0
- package/dist/impact-analyzer.js.map +1 -0
- package/dist/index.d.ts +28 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -1
- package/dist/llm-client.d.ts +1 -1
- package/dist/llm-client.d.ts.map +1 -1
- package/dist/llm-client.js +74 -7
- package/dist/llm-client.js.map +1 -1
- package/dist/memory-updater.d.ts +189 -0
- package/dist/memory-updater.d.ts.map +1 -0
- package/dist/memory-updater.js +481 -0
- package/dist/memory-updater.js.map +1 -0
- package/dist/prompt-defense.d.ts +59 -0
- package/dist/prompt-defense.d.ts.map +1 -0
- package/dist/prompt-defense.js +311 -0
- package/dist/prompt-defense.js.map +1 -0
- package/dist/reflexion.d.ts +211 -0
- package/dist/reflexion.d.ts.map +1 -0
- package/dist/reflexion.js +559 -0
- package/dist/reflexion.js.map +1 -0
- package/dist/system-prompt.d.ts +19 -3
- package/dist/system-prompt.d.ts.map +1 -1
- package/dist/system-prompt.js +203 -38
- package/dist/system-prompt.js.map +1 -1
- package/dist/task-classifier.d.ts +92 -0
- package/dist/task-classifier.d.ts.map +1 -0
- package/dist/task-classifier.js +566 -0
- package/dist/task-classifier.js.map +1 -0
- package/dist/token-budget.d.ts +131 -0
- package/dist/token-budget.d.ts.map +1 -0
- package/dist/token-budget.js +321 -0
- package/dist/token-budget.js.map +1 -0
- package/dist/types.d.ts +20 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +18 -1
- package/dist/types.js.map +1 -1
- package/dist/world-state.d.ts +87 -0
- package/dist/world-state.d.ts.map +1 -0
- package/dist/world-state.js +435 -0
- package/dist/world-state.js.map +1 -0
- package/package.json +11 -21
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compressor.js","sourceRoot":"","sources":["../src/context-compressor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-compressor.js","sourceRoot":"","sources":["../src/context-compressor.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @description 컨텍스트 윈도우 관리.
|
|
4
4
|
* 메시지 히스토리 관리, 토큰 카운팅 (근사), 컨텍스트 압축.
|
|
5
5
|
*/
|
|
6
|
-
import type
|
|
6
|
+
import { type Message } from "./types.js";
|
|
7
7
|
/** ContextManager 설정 */
|
|
8
8
|
export interface ContextManagerConfig {
|
|
9
9
|
/** 최대 컨텍스트 토큰 수 */
|
|
@@ -41,6 +41,12 @@ export declare class ContextManager {
|
|
|
41
41
|
* @param messages 추가할 메시지 목록
|
|
42
42
|
*/
|
|
43
43
|
addMessages(messages: Message[]): void;
|
|
44
|
+
/**
|
|
45
|
+
* 시스템 메시지를 교체.
|
|
46
|
+
* init() 후 향상된 프롬프트로 갱신할 때 사용.
|
|
47
|
+
* @param content 새 시스템 프롬프트 내용
|
|
48
|
+
*/
|
|
49
|
+
replaceSystemMessage(content: string): void;
|
|
44
50
|
/**
|
|
45
51
|
* 현재 메시지 히스토리 반환.
|
|
46
52
|
* 컨텍스트 윈도우 내에 맞도록 자동 압축.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-manager.d.ts","sourceRoot":"","sources":["../src/context-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"context-manager.d.ts","sourceRoot":"","sources":["../src/context-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAmB,MAAM,YAAY,CAAC;AAI3D,wBAAwB;AACxB,MAAM,WAAW,oBAAoB;IACnC,mBAAmB;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,yBAAyB;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB;IACjB,UAAU,CAAC,EAAE;QACX,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;gBAE3B,MAAM,EAAE,oBAAoB;IASxC;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlC;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAItC;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAS3C;;;OAGG;IACH,WAAW,IAAI,OAAO,EAAE;IAIxB;;;OAGG;IACH,aAAa,IAAI,OAAO,EAAE;IAmB1B;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM;IAoC3C;;;;;OAKG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAe5D;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAID;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IA8FtB,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,kBAAkB;IAM1B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,oBAAoB;CAM7B"}
|
package/dist/context-manager.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* @description 컨텍스트 윈도우 관리.
|
|
4
4
|
* 메시지 히스토리 관리, 토큰 카운팅 (근사), 컨텍스트 압축.
|
|
5
5
|
*/
|
|
6
|
+
import { contentToString } from "./types.js";
|
|
6
7
|
import { TOOL_RESULT_LIMITS, HISTORY_COMPACTION } from "./constants.js";
|
|
7
8
|
import { ContextOverflowError } from "./errors.js";
|
|
8
9
|
/**
|
|
@@ -41,6 +42,20 @@ export class ContextManager {
|
|
|
41
42
|
addMessages(messages) {
|
|
42
43
|
this.messages.push(...messages);
|
|
43
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* 시스템 메시지를 교체.
|
|
47
|
+
* init() 후 향상된 프롬프트로 갱신할 때 사용.
|
|
48
|
+
* @param content 새 시스템 프롬프트 내용
|
|
49
|
+
*/
|
|
50
|
+
replaceSystemMessage(content) {
|
|
51
|
+
const idx = this.messages.findIndex((m) => m.role === "system");
|
|
52
|
+
if (idx >= 0) {
|
|
53
|
+
this.messages[idx] = { role: "system", content };
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.messages.unshift({ role: "system", content });
|
|
57
|
+
}
|
|
58
|
+
}
|
|
44
59
|
/**
|
|
45
60
|
* 현재 메시지 히스토리 반환.
|
|
46
61
|
* 컨텍스트 윈도우 내에 맞도록 자동 압축.
|
|
@@ -77,7 +92,24 @@ export class ContextManager {
|
|
|
77
92
|
// 메시지 오버헤드 (~4 토큰)
|
|
78
93
|
total += 4;
|
|
79
94
|
if (msg.content) {
|
|
80
|
-
|
|
95
|
+
if (typeof msg.content === "string") {
|
|
96
|
+
total += this.estimateStringTokens(msg.content);
|
|
97
|
+
}
|
|
98
|
+
else if (Array.isArray(msg.content)) {
|
|
99
|
+
// 멀티모달 콘텐츠 블록
|
|
100
|
+
for (const block of msg.content) {
|
|
101
|
+
if (block.type === "text") {
|
|
102
|
+
total += this.estimateStringTokens(block.text);
|
|
103
|
+
}
|
|
104
|
+
else if (block.type === "image") {
|
|
105
|
+
// 이미지는 대략 85 토큰 (low detail) ~ 1000+ (high detail)
|
|
106
|
+
total += 300;
|
|
107
|
+
}
|
|
108
|
+
else if (block.type === "file") {
|
|
109
|
+
total += this.estimateStringTokens(block.content) + 10;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
81
113
|
}
|
|
82
114
|
if (msg.tool_calls) {
|
|
83
115
|
for (const tc of msg.tool_calls) {
|
|
@@ -160,7 +192,7 @@ export class ContextManager {
|
|
|
160
192
|
if (msg.role === "tool" && msg.content) {
|
|
161
193
|
result.push({
|
|
162
194
|
...msg,
|
|
163
|
-
content: this.truncateToolResult(msg.content),
|
|
195
|
+
content: this.truncateToolResult(contentToString(msg.content)),
|
|
164
196
|
});
|
|
165
197
|
}
|
|
166
198
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../src/context-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../src/context-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module continuation-engine
|
|
3
|
+
* @description Continuation Engine — 컨텍스트 소진 시 자동 체크포인트 저장/복원.
|
|
4
|
+
*
|
|
5
|
+
* 에이전트 세션이 토큰 예산에 근접하면 자동으로 체크포인트를 저장하고,
|
|
6
|
+
* 새 세션 시작 시 이전 체크포인트에서 이어갈 수 있도록 한다.
|
|
7
|
+
*
|
|
8
|
+
* 주요 기능:
|
|
9
|
+
* - 토큰 사용량 기반 체크포인트 트리거 감지
|
|
10
|
+
* - `.yuan/checkpoints/` 디렉토리에 JSON 파일로 체크포인트 저장
|
|
11
|
+
* - Atomic write (`.tmp` → `rename`) 로 데이터 손실 방지
|
|
12
|
+
* - 세션 체인 추적 (parent → child → ...)
|
|
13
|
+
* - 이전 세션에서 이어갈 수 있는 continuation prompt 생성
|
|
14
|
+
* - 오래된 체크포인트 자동 정리 (pruning)
|
|
15
|
+
*
|
|
16
|
+
* 모든 파일 I/O는 node:fs/promises 기반이며, 에러 시 throw하지 않고
|
|
17
|
+
* null/false/0 등 안전한 기본값을 반환한다.
|
|
18
|
+
*/
|
|
19
|
+
import type { ContinuationCheckpoint } from "./types.js";
|
|
20
|
+
/** ContinuationEngine 설정 */
|
|
21
|
+
export interface ContinuationEngineConfig {
|
|
22
|
+
/** 프로젝트 루트 경로 */
|
|
23
|
+
projectPath: string;
|
|
24
|
+
/** 체크포인트 트리거 토큰 사용 비율 (기본 0.8) */
|
|
25
|
+
checkpointThreshold?: number;
|
|
26
|
+
/** 세션 체인당 최대 체크포인트 수 (기본 10) */
|
|
27
|
+
maxCheckpoints?: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Continuation Engine.
|
|
31
|
+
*
|
|
32
|
+
* 컨텍스트/토큰 소진 시 자동 체크포인트를 저장하고,
|
|
33
|
+
* 새 세션에서 이전 상태를 복원하여 이어가기를 지원한다.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const engine = new ContinuationEngine({
|
|
38
|
+
* projectPath: "/home/user/project",
|
|
39
|
+
* checkpointThreshold: 0.8,
|
|
40
|
+
* maxCheckpoints: 10,
|
|
41
|
+
* });
|
|
42
|
+
*
|
|
43
|
+
* // 토큰 사용량 체크
|
|
44
|
+
* if (engine.shouldCheckpoint(tokensUsed, totalBudget)) {
|
|
45
|
+
* const filePath = await engine.saveCheckpoint(checkpoint);
|
|
46
|
+
* console.log("Checkpoint saved:", filePath);
|
|
47
|
+
* }
|
|
48
|
+
*
|
|
49
|
+
* // 이전 세션 복원
|
|
50
|
+
* const latest = await engine.findLatestCheckpoint();
|
|
51
|
+
* if (latest) {
|
|
52
|
+
* const prompt = engine.formatContinuationPrompt(latest);
|
|
53
|
+
* // prompt를 새 세션의 system prompt에 주입
|
|
54
|
+
* }
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare class ContinuationEngine {
|
|
58
|
+
private readonly projectPath;
|
|
59
|
+
private readonly checkpointDir;
|
|
60
|
+
private readonly threshold;
|
|
61
|
+
private readonly maxCheckpoints;
|
|
62
|
+
/** 디렉토리 생성 여부 캐시 (중복 mkdir 방지) */
|
|
63
|
+
private dirEnsured;
|
|
64
|
+
constructor(config: ContinuationEngineConfig);
|
|
65
|
+
/**
|
|
66
|
+
* 토큰 사용량 기반으로 체크포인트를 저장해야 하는지 판단한다.
|
|
67
|
+
*
|
|
68
|
+
* `tokensUsed / totalBudget >= threshold` 이면 true.
|
|
69
|
+
*
|
|
70
|
+
* @param tokensUsed - 현재까지 사용한 토큰 수
|
|
71
|
+
* @param totalBudget - 전체 토큰 예산
|
|
72
|
+
* @returns 체크포인트 저장 필요 여부
|
|
73
|
+
*/
|
|
74
|
+
shouldCheckpoint(tokensUsed: number, totalBudget: number): boolean;
|
|
75
|
+
/**
|
|
76
|
+
* 체크포인트를 파일로 저장한다.
|
|
77
|
+
*
|
|
78
|
+
* - sessionId가 없으면 crypto.randomUUID()로 자동 생성
|
|
79
|
+
* - `.yuan/checkpoints/checkpoint-{sessionId}.json` 경로에 저장
|
|
80
|
+
* - Atomic write: `.tmp` 파일에 먼저 쓰고 `rename()`
|
|
81
|
+
*
|
|
82
|
+
* @param checkpoint - 저장할 체크포인트 데이터
|
|
83
|
+
* @returns 저장된 파일 경로 (실패 시 빈 문자열)
|
|
84
|
+
*/
|
|
85
|
+
saveCheckpoint(checkpoint: ContinuationCheckpoint): Promise<string>;
|
|
86
|
+
/**
|
|
87
|
+
* 이 프로젝트의 가장 최근 체크포인트를 찾는다.
|
|
88
|
+
*
|
|
89
|
+
* 체크포인트 디렉토리를 스캔하여 `createdAt` 기준으로 정렬,
|
|
90
|
+
* 가장 최신 체크포인트를 반환한다.
|
|
91
|
+
*
|
|
92
|
+
* @returns 최신 체크포인트 (없으면 null)
|
|
93
|
+
*/
|
|
94
|
+
findLatestCheckpoint(): Promise<ContinuationCheckpoint | null>;
|
|
95
|
+
/**
|
|
96
|
+
* 특정 세션 ID의 체크포인트를 찾는다.
|
|
97
|
+
*
|
|
98
|
+
* @param sessionId - 찾을 세션 ID
|
|
99
|
+
* @returns 체크포인트 (없으면 null)
|
|
100
|
+
*/
|
|
101
|
+
findCheckpoint(sessionId: string): Promise<ContinuationCheckpoint | null>;
|
|
102
|
+
/**
|
|
103
|
+
* 세션 체인을 추적한다 (parent → child → ...).
|
|
104
|
+
*
|
|
105
|
+
* 주어진 sessionId에서 시작하여 parentSessionId를 따라
|
|
106
|
+
* 루트까지 올라간 뒤, 시간순으로 정렬하여 반환한다.
|
|
107
|
+
*
|
|
108
|
+
* @param sessionId - 시작 세션 ID
|
|
109
|
+
* @returns 시간순 정렬된 세션 체인 (빈 배열 가능)
|
|
110
|
+
*/
|
|
111
|
+
getSessionChain(sessionId: string): Promise<ContinuationCheckpoint[]>;
|
|
112
|
+
/**
|
|
113
|
+
* 체크포인트를 기반으로 continuation prompt를 생성한다.
|
|
114
|
+
*
|
|
115
|
+
* 새 세션의 시스템 프롬프트에 주입하여 이전 작업을 이어갈 수 있다.
|
|
116
|
+
*
|
|
117
|
+
* @param checkpoint - 이전 세션의 체크포인트
|
|
118
|
+
* @returns 포맷팅된 continuation prompt 문자열
|
|
119
|
+
*/
|
|
120
|
+
formatContinuationPrompt(checkpoint: ContinuationCheckpoint): string;
|
|
121
|
+
/**
|
|
122
|
+
* 오래된 체크포인트를 정리한다.
|
|
123
|
+
*
|
|
124
|
+
* `maxCheckpoints`를 초과하는 가장 오래된 체크포인트를 삭제한다.
|
|
125
|
+
* createdAt 기준 내림차순 정렬 → 최신 N개 유지 → 나머지 삭제.
|
|
126
|
+
*
|
|
127
|
+
* @returns 삭제된 체크포인트 수 (실패 시 0)
|
|
128
|
+
*/
|
|
129
|
+
pruneOldCheckpoints(): Promise<number>;
|
|
130
|
+
/**
|
|
131
|
+
* 특정 세션의 체크포인트를 삭제한다.
|
|
132
|
+
*
|
|
133
|
+
* @param sessionId - 삭제할 세션 ID
|
|
134
|
+
* @returns 삭제 성공 여부
|
|
135
|
+
*/
|
|
136
|
+
deleteCheckpoint(sessionId: string): Promise<boolean>;
|
|
137
|
+
/**
|
|
138
|
+
* 체크포인트 디렉토리가 존재하는지 확인하고, 없으면 생성한다.
|
|
139
|
+
* 한 번 생성 확인되면 이후 호출에서는 스킵 (dirEnsured 캐시).
|
|
140
|
+
*/
|
|
141
|
+
private ensureDir;
|
|
142
|
+
/**
|
|
143
|
+
* 체크포인트 파일 하나를 읽어 ContinuationCheckpoint로 파싱한다.
|
|
144
|
+
*
|
|
145
|
+
* JSON의 `createdAt` 문자열을 Date 객체로 복원한다.
|
|
146
|
+
*
|
|
147
|
+
* @param filePath - 체크포인트 파일 절대 경로
|
|
148
|
+
* @returns 파싱된 체크포인트 (실패 시 null)
|
|
149
|
+
*/
|
|
150
|
+
private readCheckpointFile;
|
|
151
|
+
/**
|
|
152
|
+
* 체크포인트 디렉토리의 모든 체크포인트를 로드한다.
|
|
153
|
+
*
|
|
154
|
+
* 유효하지 않은 파일(파싱 실패 등)은 건너뛴다.
|
|
155
|
+
*
|
|
156
|
+
* @returns 모든 유효한 체크포인트 배열
|
|
157
|
+
*/
|
|
158
|
+
private loadAllCheckpoints;
|
|
159
|
+
/**
|
|
160
|
+
* 모든 체크포인트를 파일 경로와 함께 로드한다.
|
|
161
|
+
*
|
|
162
|
+
* pruneOldCheckpoints에서 삭제할 파일 경로가 필요하므로 별도 메서드.
|
|
163
|
+
*
|
|
164
|
+
* @returns { checkpoint, filePath } 배열
|
|
165
|
+
*/
|
|
166
|
+
private loadAllCheckpointsWithPaths;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=continuation-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation-engine.d.ts","sourceRoot":"","sources":["../src/continuation-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAIzD,4BAA4B;AAC5B,MAAM,WAAW,wBAAwB;IACvC,iBAAiB;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gCAAgC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA+BD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,kCAAkC;IAClC,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,wBAAwB;IAS5C;;;;;;;;OAQG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAKlE;;;;;;;;;OASG;IACG,cAAc,CAAC,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;IAkCzE;;;;;;;OAOG;IACG,oBAAoB,IAAI,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAgBpE;;;;;OAKG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAU/E;;;;;;;;OAQG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAoD3E;;;;;;;OAOG;IACH,wBAAwB,CAAC,UAAU,EAAE,sBAAsB,GAAG,MAAM;IAiEpE;;;;;;;OAOG;IACG,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IA6B5C;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa3D;;;OAGG;YACW,SAAS;IAavB;;;;;;;OAOG;YACW,kBAAkB;IAehC;;;;;;OAMG;YACW,kBAAkB;IAuBhC;;;;;;OAMG;YACW,2BAA2B;CAwB1C"}
|