@coralai/sps-cli 0.33.0 → 0.34.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 +33 -5
- package/dist/commands/cardDashboard.d.ts.map +1 -1
- package/dist/commands/cardDashboard.js +7 -2
- package/dist/commands/cardDashboard.js.map +1 -1
- package/dist/commands/pipelineTick.d.ts.map +1 -1
- package/dist/commands/pipelineTick.js +12 -6
- package/dist/commands/pipelineTick.js.map +1 -1
- package/dist/commands/qaTick.d.ts.map +1 -1
- package/dist/commands/qaTick.js +13 -6
- package/dist/commands/qaTick.js.map +1 -1
- package/dist/commands/tick.d.ts.map +1 -1
- package/dist/commands/tick.js +27 -19
- package/dist/commands/tick.js.map +1 -1
- package/dist/commands/workerDashboard.js +2 -2
- package/dist/commands/workerDashboard.js.map +1 -1
- package/dist/commands/workerLaunch.d.ts.map +1 -1
- package/dist/commands/workerLaunch.js +11 -6
- package/dist/commands/workerLaunch.js.map +1 -1
- package/dist/core/config.d.ts +4 -9
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +3 -17
- package/dist/core/config.js.map +1 -1
- package/dist/core/config.test.js +2 -19
- package/dist/core/config.test.js.map +1 -1
- package/dist/core/memory.d.ts +86 -0
- package/dist/core/memory.d.ts.map +1 -0
- package/dist/core/memory.js +415 -0
- package/dist/core/memory.js.map +1 -0
- package/dist/core/projectPipelineAdapter.d.ts +12 -6
- package/dist/core/projectPipelineAdapter.d.ts.map +1 -1
- package/dist/core/projectPipelineAdapter.js +55 -28
- package/dist/core/projectPipelineAdapter.js.map +1 -1
- package/dist/core/sessionLiveness.d.ts.map +1 -1
- package/dist/core/sessionLiveness.js +1 -2
- package/dist/core/sessionLiveness.js.map +1 -1
- package/dist/core/state.d.ts +2 -2
- package/dist/core/state.d.ts.map +1 -1
- package/dist/engines/CloseoutEngine.js +1 -1
- package/dist/engines/CloseoutEngine.js.map +1 -1
- package/dist/engines/EventHandler.d.ts.map +1 -1
- package/dist/engines/EventHandler.js +6 -9
- package/dist/engines/EventHandler.js.map +1 -1
- package/dist/engines/ExecutionEngine.d.ts.map +1 -1
- package/dist/engines/ExecutionEngine.js +6 -18
- package/dist/engines/ExecutionEngine.js.map +1 -1
- package/dist/engines/MonitorEngine.d.ts.map +1 -1
- package/dist/engines/MonitorEngine.js +11 -7
- package/dist/engines/MonitorEngine.js.map +1 -1
- package/dist/engines/SchedulerEngine.js +1 -1
- package/dist/engines/SchedulerEngine.js.map +1 -1
- package/dist/engines/StageEngine.d.ts +80 -0
- package/dist/engines/StageEngine.d.ts.map +1 -0
- package/dist/engines/StageEngine.js +1101 -0
- package/dist/engines/StageEngine.js.map +1 -0
- package/dist/engines/engine-pipeline-adapter.test.js +26 -21
- package/dist/engines/engine-pipeline-adapter.test.js.map +1 -1
- package/dist/main.js +100 -5
- package/dist/main.js.map +1 -1
- package/dist/manager/integration-queue.d.ts +1 -1
- package/dist/manager/integration-queue.d.ts.map +1 -1
- package/dist/manager/integration-queue.test.js +1 -1
- package/dist/manager/integration-queue.test.js.map +1 -1
- package/dist/manager/pm-client.js +1 -1
- package/dist/manager/runtime-coordinator.js +1 -1
- package/dist/manager/runtime-coordinator.js.map +1 -1
- package/dist/manager/supervisor.d.ts +6 -10
- package/dist/manager/supervisor.d.ts.map +1 -1
- package/dist/manager/supervisor.js +6 -102
- package/dist/manager/supervisor.js.map +1 -1
- package/dist/manager/supervisor.test.js +7 -51
- package/dist/manager/supervisor.test.js.map +1 -1
- package/dist/manager/worker-manager-impl.d.ts.map +1 -1
- package/dist/manager/worker-manager-impl.js +19 -34
- package/dist/manager/worker-manager-impl.js.map +1 -1
- package/dist/manager/worker-manager-impl.test.js +20 -139
- package/dist/manager/worker-manager-impl.test.js.map +1 -1
- package/dist/manager/worker-manager.d.ts +2 -2
- package/dist/manager/worker-manager.d.ts.map +1 -1
- package/dist/providers/MarkdownTaskBackend.d.ts +6 -1
- package/dist/providers/MarkdownTaskBackend.d.ts.map +1 -1
- package/dist/providers/MarkdownTaskBackend.js +50 -24
- package/dist/providers/MarkdownTaskBackend.js.map +1 -1
- package/dist/providers/registry.d.ts +1 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +2 -2
- package/dist/providers/registry.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Memory system — persistent project-level knowledge for SPS workers and agents.
|
|
3
|
+
*
|
|
4
|
+
* Design follows Claude Code's approach:
|
|
5
|
+
* - File-based storage with YAML frontmatter (name / description / type)
|
|
6
|
+
* - MEMORY.md index file (one line per entry, max 200 lines)
|
|
7
|
+
* - Agents read/write memory files directly via bash
|
|
8
|
+
* - CLI provides `sps memory context` for prompt injection
|
|
9
|
+
*
|
|
10
|
+
* Directory layout:
|
|
11
|
+
* ~/.coral/memory/projects/<project>/
|
|
12
|
+
* ├── MEMORY.md ← index (loaded into every prompt)
|
|
13
|
+
* ├── api-naming.md ← convention
|
|
14
|
+
* ├── use-phaser.md ← decision
|
|
15
|
+
* └── migration-order.md ← lesson
|
|
16
|
+
*
|
|
17
|
+
* Types: convention (no decay), decision (slow decay), lesson (normal decay), reference (no decay)
|
|
18
|
+
*/
|
|
19
|
+
import { existsSync, readdirSync, readFileSync, writeFileSync, mkdirSync, statSync } from 'node:fs';
|
|
20
|
+
import { resolve, basename } from 'node:path';
|
|
21
|
+
import { homedir } from 'node:os';
|
|
22
|
+
// ─── Types ──────────────────────────────────────────────────────
|
|
23
|
+
export const MEMORY_TYPES = ['convention', 'decision', 'lesson', 'reference'];
|
|
24
|
+
export const MEMORY_INDEX = 'MEMORY.md';
|
|
25
|
+
const MAX_INDEX_LINES = 200;
|
|
26
|
+
const MAX_MEMORY_FILES = 200;
|
|
27
|
+
const MAX_FILE_LINES = 200;
|
|
28
|
+
const MAX_CONTEXT_ENTRIES = 10;
|
|
29
|
+
const FRONTMATTER_MAX_LINES = 30;
|
|
30
|
+
// Types that don't decay — always relevant
|
|
31
|
+
const NO_DECAY_TYPES = ['convention', 'reference'];
|
|
32
|
+
// ─── Paths ──────────────────────────────────────────────────────
|
|
33
|
+
/** Get the user-level memory directory (cross-project preferences) */
|
|
34
|
+
export function getUserMemoryDir() {
|
|
35
|
+
return resolve(homedir(), '.coral', 'memory', 'user');
|
|
36
|
+
}
|
|
37
|
+
/** Get the agent-level memory directory (per daemon instance) */
|
|
38
|
+
export function getAgentMemoryDir(agentId) {
|
|
39
|
+
return resolve(homedir(), '.coral', 'memory', 'agents', agentId);
|
|
40
|
+
}
|
|
41
|
+
/** Get the memory directory for a project */
|
|
42
|
+
export function getProjectMemoryDir(project) {
|
|
43
|
+
return resolve(homedir(), '.coral', 'memory', 'projects', project);
|
|
44
|
+
}
|
|
45
|
+
/** Ensure project memory directory exists */
|
|
46
|
+
export function ensureMemoryDir(project) {
|
|
47
|
+
const dir = getProjectMemoryDir(project);
|
|
48
|
+
if (!existsSync(dir))
|
|
49
|
+
mkdirSync(dir, { recursive: true });
|
|
50
|
+
return dir;
|
|
51
|
+
}
|
|
52
|
+
/** Ensure user memory directory exists */
|
|
53
|
+
export function ensureUserMemoryDir() {
|
|
54
|
+
return ensureDir(getUserMemoryDir());
|
|
55
|
+
}
|
|
56
|
+
/** Ensure agent memory directory exists */
|
|
57
|
+
export function ensureAgentMemoryDir(agentId) {
|
|
58
|
+
return ensureDir(getAgentMemoryDir(agentId));
|
|
59
|
+
}
|
|
60
|
+
/** Ensure any memory directory exists (generic) */
|
|
61
|
+
function ensureDir(dir) {
|
|
62
|
+
if (!existsSync(dir))
|
|
63
|
+
mkdirSync(dir, { recursive: true });
|
|
64
|
+
return dir;
|
|
65
|
+
}
|
|
66
|
+
// ─── Scanning ───────────────────────────────────────────────────
|
|
67
|
+
/** Parse simple YAML frontmatter from file content (first N lines) */
|
|
68
|
+
function parseFrontmatter(content) {
|
|
69
|
+
const lines = content.split('\n');
|
|
70
|
+
if (lines[0]?.trim() !== '---')
|
|
71
|
+
return {};
|
|
72
|
+
const result = {};
|
|
73
|
+
for (let i = 1; i < lines.length; i++) {
|
|
74
|
+
if (lines[i].trim() === '---')
|
|
75
|
+
break;
|
|
76
|
+
const match = lines[i].match(/^(\w+):\s*(.+)$/);
|
|
77
|
+
if (match) {
|
|
78
|
+
result[match[1]] = match[2].trim();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return result;
|
|
82
|
+
}
|
|
83
|
+
/** Scan memory directory for .md files, return headers sorted newest-first */
|
|
84
|
+
export function scanMemoryFiles(memoryDir) {
|
|
85
|
+
if (!existsSync(memoryDir))
|
|
86
|
+
return [];
|
|
87
|
+
try {
|
|
88
|
+
const files = readdirSync(memoryDir, { recursive: true })
|
|
89
|
+
.map(f => typeof f === 'string' ? f : f.toString())
|
|
90
|
+
.filter(f => f.endsWith('.md') && basename(f) !== MEMORY_INDEX);
|
|
91
|
+
const headers = [];
|
|
92
|
+
for (const relativePath of files) {
|
|
93
|
+
try {
|
|
94
|
+
const filePath = resolve(memoryDir, relativePath);
|
|
95
|
+
const stat = statSync(filePath);
|
|
96
|
+
const content = readFileSync(filePath, 'utf-8');
|
|
97
|
+
// Only read first N lines for frontmatter
|
|
98
|
+
const head = content.split('\n').slice(0, FRONTMATTER_MAX_LINES).join('\n');
|
|
99
|
+
const fm = parseFrontmatter(head);
|
|
100
|
+
headers.push({
|
|
101
|
+
filename: relativePath,
|
|
102
|
+
filePath,
|
|
103
|
+
mtimeMs: stat.mtimeMs,
|
|
104
|
+
name: fm.name || null,
|
|
105
|
+
description: fm.description || null,
|
|
106
|
+
type: MEMORY_TYPES.find(t => t === fm.type),
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
catch { /* skip unreadable files */ }
|
|
110
|
+
}
|
|
111
|
+
return headers
|
|
112
|
+
.sort((a, b) => b.mtimeMs - a.mtimeMs)
|
|
113
|
+
.slice(0, MAX_MEMORY_FILES);
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
return [];
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
// ─── Reading ────────────────────────────────────────────────────
|
|
120
|
+
/** Read MEMORY.md index content, truncated to max lines */
|
|
121
|
+
export function readMemoryIndex(memoryDir) {
|
|
122
|
+
const indexPath = resolve(memoryDir, MEMORY_INDEX);
|
|
123
|
+
if (!existsSync(indexPath))
|
|
124
|
+
return '';
|
|
125
|
+
const content = readFileSync(indexPath, 'utf-8').trim();
|
|
126
|
+
const lines = content.split('\n');
|
|
127
|
+
if (lines.length > MAX_INDEX_LINES) {
|
|
128
|
+
return lines.slice(0, MAX_INDEX_LINES).join('\n')
|
|
129
|
+
+ `\n\n> WARNING: ${MEMORY_INDEX} has ${lines.length} lines (limit: ${MAX_INDEX_LINES}). Truncated.`;
|
|
130
|
+
}
|
|
131
|
+
return content;
|
|
132
|
+
}
|
|
133
|
+
/** Read a memory file, truncated to max lines */
|
|
134
|
+
export function readMemoryFile(filePath) {
|
|
135
|
+
if (!existsSync(filePath))
|
|
136
|
+
return '';
|
|
137
|
+
const content = readFileSync(filePath, 'utf-8');
|
|
138
|
+
const lines = content.split('\n');
|
|
139
|
+
if (lines.length > MAX_FILE_LINES) {
|
|
140
|
+
return lines.slice(0, MAX_FILE_LINES).join('\n')
|
|
141
|
+
+ `\n\n> [Truncated — ${lines.length} lines total. Use file read for full content.]`;
|
|
142
|
+
}
|
|
143
|
+
return content;
|
|
144
|
+
}
|
|
145
|
+
/** Memory age in days */
|
|
146
|
+
function memoryAgeDays(mtimeMs) {
|
|
147
|
+
return Math.floor((Date.now() - mtimeMs) / (1000 * 60 * 60 * 24));
|
|
148
|
+
}
|
|
149
|
+
/** Staleness caveat for old memories */
|
|
150
|
+
function stalenessCaveat(mtimeMs) {
|
|
151
|
+
const days = memoryAgeDays(mtimeMs);
|
|
152
|
+
if (days <= 1)
|
|
153
|
+
return null;
|
|
154
|
+
return `> This memory is ${days} days old. Verify against current code before acting on it.`;
|
|
155
|
+
}
|
|
156
|
+
// ─── Context Generation ─────────────────────────────────────────
|
|
157
|
+
/**
|
|
158
|
+
* Select relevant memories for a worker prompt.
|
|
159
|
+
* Priority: convention (always) > card-related > decision > lesson > reference
|
|
160
|
+
* No decay types are always included. Lessons decay by age.
|
|
161
|
+
*/
|
|
162
|
+
function selectRelevantMemories(headers, _cardSeq) {
|
|
163
|
+
const selected = [];
|
|
164
|
+
// 1. All conventions and references (no decay, always relevant)
|
|
165
|
+
for (const h of headers) {
|
|
166
|
+
if (h.type && NO_DECAY_TYPES.includes(h.type)) {
|
|
167
|
+
selected.push(h);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
// 2. Decisions (sorted newest-first, already in that order)
|
|
171
|
+
for (const h of headers) {
|
|
172
|
+
if (h.type === 'decision' && !selected.includes(h)) {
|
|
173
|
+
selected.push(h);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
// 3. Lessons (normal decay — skip if older than 30 days)
|
|
177
|
+
for (const h of headers) {
|
|
178
|
+
if (h.type === 'lesson' && !selected.includes(h)) {
|
|
179
|
+
if (memoryAgeDays(h.mtimeMs) <= 30) {
|
|
180
|
+
selected.push(h);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
// 4. Untyped memories (legacy)
|
|
185
|
+
for (const h of headers) {
|
|
186
|
+
if (!h.type && !selected.includes(h)) {
|
|
187
|
+
selected.push(h);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
return selected.slice(0, MAX_CONTEXT_ENTRIES);
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Build the memory context string for prompt injection.
|
|
194
|
+
* Includes: MEMORY.md index + selected file contents.
|
|
195
|
+
*/
|
|
196
|
+
export function buildMemoryContext(project, cardSeq) {
|
|
197
|
+
const memoryDir = getProjectMemoryDir(project);
|
|
198
|
+
if (!existsSync(memoryDir))
|
|
199
|
+
return '';
|
|
200
|
+
const sections = [];
|
|
201
|
+
// 1. Read index
|
|
202
|
+
const index = readMemoryIndex(memoryDir);
|
|
203
|
+
// 2. Scan and select relevant memories
|
|
204
|
+
const headers = scanMemoryFiles(memoryDir);
|
|
205
|
+
if (headers.length === 0 && !index)
|
|
206
|
+
return '';
|
|
207
|
+
const selected = selectRelevantMemories(headers, cardSeq);
|
|
208
|
+
sections.push('# Project Memory');
|
|
209
|
+
sections.push('');
|
|
210
|
+
if (index) {
|
|
211
|
+
sections.push('## Index');
|
|
212
|
+
sections.push(index);
|
|
213
|
+
sections.push('');
|
|
214
|
+
}
|
|
215
|
+
// 3. Include selected memory file contents
|
|
216
|
+
if (selected.length > 0) {
|
|
217
|
+
sections.push('## Relevant Memories');
|
|
218
|
+
sections.push('');
|
|
219
|
+
for (const h of selected) {
|
|
220
|
+
const content = readMemoryFile(h.filePath);
|
|
221
|
+
const caveat = stalenessCaveat(h.mtimeMs);
|
|
222
|
+
const age = memoryAgeDays(h.mtimeMs);
|
|
223
|
+
const ageLabel = age === 0 ? 'today' : age === 1 ? 'yesterday' : `${age} days ago`;
|
|
224
|
+
sections.push(`### ${h.name || h.filename} (saved ${ageLabel})`);
|
|
225
|
+
if (caveat)
|
|
226
|
+
sections.push(caveat);
|
|
227
|
+
sections.push(content);
|
|
228
|
+
sections.push('');
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return sections.join('\n').trim();
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Build user-level memory context (cross-project preferences).
|
|
235
|
+
* Injected into every agent/worker prompt.
|
|
236
|
+
*/
|
|
237
|
+
export function buildUserMemoryContext() {
|
|
238
|
+
const memoryDir = getUserMemoryDir();
|
|
239
|
+
if (!existsSync(memoryDir))
|
|
240
|
+
return '';
|
|
241
|
+
const headers = scanMemoryFiles(memoryDir);
|
|
242
|
+
const index = readMemoryIndex(memoryDir);
|
|
243
|
+
if (headers.length === 0 && !index)
|
|
244
|
+
return '';
|
|
245
|
+
const sections = ['# User Preferences', ''];
|
|
246
|
+
if (index) {
|
|
247
|
+
sections.push(index);
|
|
248
|
+
sections.push('');
|
|
249
|
+
}
|
|
250
|
+
// Include all user memories (small set, no filtering needed)
|
|
251
|
+
for (const h of headers.slice(0, MAX_CONTEXT_ENTRIES)) {
|
|
252
|
+
const content = readMemoryFile(h.filePath);
|
|
253
|
+
sections.push(`### ${h.name || h.filename}`);
|
|
254
|
+
sections.push(content);
|
|
255
|
+
sections.push('');
|
|
256
|
+
}
|
|
257
|
+
return sections.join('\n').trim();
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Build agent-level memory context (daemon instance experience).
|
|
261
|
+
* Injected when attaching to a daemon session.
|
|
262
|
+
*/
|
|
263
|
+
export function buildAgentMemoryContext(agentId) {
|
|
264
|
+
const memoryDir = getAgentMemoryDir(agentId);
|
|
265
|
+
if (!existsSync(memoryDir))
|
|
266
|
+
return '';
|
|
267
|
+
const headers = scanMemoryFiles(memoryDir);
|
|
268
|
+
const index = readMemoryIndex(memoryDir);
|
|
269
|
+
if (headers.length === 0 && !index)
|
|
270
|
+
return '';
|
|
271
|
+
const sections = ['# Agent Memory', ''];
|
|
272
|
+
if (index) {
|
|
273
|
+
sections.push(index);
|
|
274
|
+
sections.push('');
|
|
275
|
+
}
|
|
276
|
+
for (const h of headers.slice(0, MAX_CONTEXT_ENTRIES)) {
|
|
277
|
+
const content = readMemoryFile(h.filePath);
|
|
278
|
+
const caveat = stalenessCaveat(h.mtimeMs);
|
|
279
|
+
const age = memoryAgeDays(h.mtimeMs);
|
|
280
|
+
const ageLabel = age === 0 ? 'today' : age === 1 ? 'yesterday' : `${age} days ago`;
|
|
281
|
+
sections.push(`### ${h.name || h.filename} (saved ${ageLabel})`);
|
|
282
|
+
if (caveat)
|
|
283
|
+
sections.push(caveat);
|
|
284
|
+
sections.push(content);
|
|
285
|
+
sections.push('');
|
|
286
|
+
}
|
|
287
|
+
return sections.join('\n').trim();
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Build combined memory context for all applicable layers.
|
|
291
|
+
* Used by StageEngine (user + project) and agent commands (user + agent).
|
|
292
|
+
*/
|
|
293
|
+
export function buildFullMemoryContext(opts) {
|
|
294
|
+
const parts = [];
|
|
295
|
+
// Layer 1: User preferences (always)
|
|
296
|
+
const userCtx = buildUserMemoryContext();
|
|
297
|
+
if (userCtx)
|
|
298
|
+
parts.push(userCtx);
|
|
299
|
+
// Layer 2: Agent memory (if daemon)
|
|
300
|
+
if (opts.agentId) {
|
|
301
|
+
const agentCtx = buildAgentMemoryContext(opts.agentId);
|
|
302
|
+
if (agentCtx)
|
|
303
|
+
parts.push(agentCtx);
|
|
304
|
+
}
|
|
305
|
+
// Layer 3: Project memory (if project context)
|
|
306
|
+
if (opts.project) {
|
|
307
|
+
const projectCtx = buildMemoryContext(opts.project, opts.cardSeq);
|
|
308
|
+
if (projectCtx)
|
|
309
|
+
parts.push(projectCtx);
|
|
310
|
+
}
|
|
311
|
+
return parts.join('\n\n---\n\n');
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Build memory write instructions for prompt injection.
|
|
315
|
+
* Tells the agent how and where to write memories across all three layers.
|
|
316
|
+
*/
|
|
317
|
+
export function buildMemoryWriteInstructions(project, agentId) {
|
|
318
|
+
const userDir = getUserMemoryDir();
|
|
319
|
+
const projectDir = getProjectMemoryDir(project);
|
|
320
|
+
const agentDir = agentId ? getAgentMemoryDir(agentId) : null;
|
|
321
|
+
const agentSection = agentDir ? `
|
|
322
|
+
- **Agent memory** (\`${agentDir}/\`): Your personal experience — interaction patterns, user communication preferences observed by you, pitfalls you encountered. Only you read this.` : '';
|
|
323
|
+
return `# Memory System
|
|
324
|
+
|
|
325
|
+
You have a three-layer persistent memory system. Write directly to these directories (they exist, do not mkdir).
|
|
326
|
+
|
|
327
|
+
- **User memory** (\`${userDir}/\`): Cross-project user preferences — coding style, language, workflow habits. Shared across all projects and agents.${agentSection}
|
|
328
|
+
- **Project memory** (\`${projectDir}/\`): Project-specific knowledge — conventions, decisions, lessons, references. Shared across all workers on this project.
|
|
329
|
+
|
|
330
|
+
## Memory Types
|
|
331
|
+
|
|
332
|
+
- **convention**: Project rules and standards (e.g., "API uses camelCase"). Never expires.
|
|
333
|
+
- **decision**: Architecture/tech choices (e.g., "chose Phaser over PixiJS"). Slow decay.
|
|
334
|
+
- **lesson**: Lessons learned, pitfalls (e.g., "migration must be schema-first"). Decays after 30 days.
|
|
335
|
+
- **reference**: Pointers to external resources (e.g., "design docs in Figma"). Never expires.
|
|
336
|
+
|
|
337
|
+
## How to Write
|
|
338
|
+
|
|
339
|
+
Write each memory as a markdown file with this frontmatter:
|
|
340
|
+
|
|
341
|
+
\`\`\`markdown
|
|
342
|
+
---
|
|
343
|
+
name: Short title
|
|
344
|
+
description: One-line summary for index search
|
|
345
|
+
type: convention | decision | lesson | reference
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
Content here. For decision/lesson types, include:
|
|
349
|
+
**Why:** reason
|
|
350
|
+
**Scope:** where this applies
|
|
351
|
+
\`\`\`
|
|
352
|
+
|
|
353
|
+
Then add one line to the \`${MEMORY_INDEX}\` in the same directory:
|
|
354
|
+
\`- [Title](filename.md) — one-line hook\`
|
|
355
|
+
|
|
356
|
+
## When to Write
|
|
357
|
+
|
|
358
|
+
- User states a project rule or preference → convention
|
|
359
|
+
- A technical choice is made → decision
|
|
360
|
+
- Something unexpected happened or a pitfall was found → lesson
|
|
361
|
+
- An external resource location is mentioned → reference
|
|
362
|
+
|
|
363
|
+
Most conversations do NOT need memory. Only save what is non-obvious and useful for future tasks.
|
|
364
|
+
|
|
365
|
+
## What NOT to Save
|
|
366
|
+
|
|
367
|
+
- Code structure, file paths (derivable from code)
|
|
368
|
+
- Git history (use git log)
|
|
369
|
+
- Temporary task state
|
|
370
|
+
- Anything in CLAUDE.md or AGENTS.md`;
|
|
371
|
+
}
|
|
372
|
+
// ─── Writing (for CLI use) ──────────────────────────────────────
|
|
373
|
+
/**
|
|
374
|
+
* Add a memory entry via CLI. Creates the file and updates MEMORY.md.
|
|
375
|
+
*/
|
|
376
|
+
export function addMemory(project, opts) {
|
|
377
|
+
const memoryDir = ensureMemoryDir(project);
|
|
378
|
+
// Generate filename from name
|
|
379
|
+
const slug = opts.name
|
|
380
|
+
.toLowerCase()
|
|
381
|
+
.replace(/[^a-z0-9]+/g, '-')
|
|
382
|
+
.replace(/^-|-$/g, '')
|
|
383
|
+
.slice(0, 50);
|
|
384
|
+
const filename = `${slug}.md`;
|
|
385
|
+
const filePath = resolve(memoryDir, filename);
|
|
386
|
+
// Write memory file
|
|
387
|
+
const content = `---
|
|
388
|
+
name: ${opts.name}
|
|
389
|
+
description: ${opts.description}
|
|
390
|
+
type: ${opts.type}
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
${opts.body}
|
|
394
|
+
`;
|
|
395
|
+
writeFileSync(filePath, content);
|
|
396
|
+
// Update MEMORY.md index
|
|
397
|
+
const indexPath = resolve(memoryDir, MEMORY_INDEX);
|
|
398
|
+
let indexContent = '';
|
|
399
|
+
if (existsSync(indexPath)) {
|
|
400
|
+
indexContent = readFileSync(indexPath, 'utf-8').trim();
|
|
401
|
+
}
|
|
402
|
+
// Check for duplicate entry (same filename)
|
|
403
|
+
const lines = indexContent ? indexContent.split('\n') : [];
|
|
404
|
+
const existingIdx = lines.findIndex(l => l.includes(`(${filename})`));
|
|
405
|
+
const newLine = `- [${opts.name}](${filename}) — ${opts.description}`;
|
|
406
|
+
if (existingIdx >= 0) {
|
|
407
|
+
lines[existingIdx] = newLine;
|
|
408
|
+
}
|
|
409
|
+
else {
|
|
410
|
+
lines.push(newLine);
|
|
411
|
+
}
|
|
412
|
+
writeFileSync(indexPath, lines.join('\n') + '\n');
|
|
413
|
+
return filePath;
|
|
414
|
+
}
|
|
415
|
+
//# sourceMappingURL=memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/core/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,14 +51,20 @@ export declare class ProjectPipelineAdapter {
|
|
|
51
51
|
getStage(name: string): StageDefinition | undefined;
|
|
52
52
|
/** Find stage by trigger state (which PM state activates it) */
|
|
53
53
|
getStageByTrigger(pmState: string): StageDefinition | undefined;
|
|
54
|
-
/** Get the
|
|
54
|
+
/** Get the first stage (responsible for prepare: branch + worktree) */
|
|
55
|
+
get firstStage(): StageDefinition;
|
|
56
|
+
/** Get the last stage (responsible for release: worktree cleanup) */
|
|
57
|
+
get lastStage(): StageDefinition;
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated Use firstStage instead. Kept for backward compatibility during migration.
|
|
60
|
+
*/
|
|
55
61
|
get developStage(): StageDefinition;
|
|
56
|
-
/**
|
|
62
|
+
/**
|
|
63
|
+
* @deprecated Use lastStage or getStage() instead. Kept for backward compatibility during migration.
|
|
64
|
+
*/
|
|
57
65
|
get integrateStage(): StageDefinition | undefined;
|
|
58
|
-
/**
|
|
59
|
-
|
|
60
|
-
/** Is this a review/integration-phase state? */
|
|
61
|
-
isReviewState(pmState: string): boolean;
|
|
66
|
+
/** Find the stage whose activeState matches the given PM state */
|
|
67
|
+
getStageByActiveState(pmState: string): StageDefinition | undefined;
|
|
62
68
|
/** All states where cards are "active" (not done, not backlog) */
|
|
63
69
|
get activeStates(): string[];
|
|
64
70
|
/** Labels to clean when card goes back to backlog */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectPipelineAdapter.d.ts","sourceRoot":"","sources":["../../src/core/projectPipelineAdapter.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yCAAyC;AACzC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,2DAA2D;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,kDAAkD;IAClD,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AA4CD,qBAAa,sBAAsB;IACjC,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC;gBAE/B,MAAM,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,MAAM;IAUtD,2BAA2B;IAC3B,IAAI,MAAM,IAAI,UAAU,CAEvB;IAED,gCAAgC;IAChC,IAAI,MAAM,IAAI,eAAe,EAAE,CAE9B;IAED,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAInD,gEAAgE;IAChE,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI/D,
|
|
1
|
+
{"version":3,"file":"projectPipelineAdapter.d.ts","sourceRoot":"","sources":["../../src/core/projectPipelineAdapter.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yCAAyC;AACzC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,2DAA2D;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,kDAAkD;IAClD,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AA4CD,qBAAa,sBAAsB;IACjC,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC;gBAE/B,MAAM,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,MAAM;IAUtD,2BAA2B;IAC3B,IAAI,MAAM,IAAI,UAAU,CAEvB;IAED,gCAAgC;IAChC,IAAI,MAAM,IAAI,eAAe,EAAE,CAE9B;IAED,yBAAyB;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAInD,gEAAgE;IAChE,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI/D,uEAAuE;IACvE,IAAI,UAAU,IAAI,eAAe,CAEhC;IAED,qEAAqE;IACrE,IAAI,SAAS,IAAI,eAAe,CAE/B;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,eAAe,CAElC;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,eAAe,GAAG,SAAS,CAGhD;IAED,kEAAkE;IAClE,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAInE,kEAAkE;IAClE,IAAI,YAAY,IAAI,MAAM,EAAE,CAE3B;IAED,qDAAqD;IACrD,IAAI,eAAe,IAAI,MAAM,EAAE,CAE9B;IAED,uCAAuC;IACvC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM;CAkBnE;AASD,8DAA8D;AAC9D,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKvE;AAED,mCAAmC;AACnC,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMxE"}
|
|
@@ -74,22 +74,30 @@ export class ProjectPipelineAdapter {
|
|
|
74
74
|
getStageByTrigger(pmState) {
|
|
75
75
|
return this.settings.stages.find(s => s.triggerState === pmState);
|
|
76
76
|
}
|
|
77
|
-
/** Get the
|
|
77
|
+
/** Get the first stage (responsible for prepare: branch + worktree) */
|
|
78
|
+
get firstStage() {
|
|
79
|
+
return this.settings.stages[0];
|
|
80
|
+
}
|
|
81
|
+
/** Get the last stage (responsible for release: worktree cleanup) */
|
|
82
|
+
get lastStage() {
|
|
83
|
+
return this.settings.stages[this.settings.stages.length - 1];
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* @deprecated Use firstStage instead. Kept for backward compatibility during migration.
|
|
87
|
+
*/
|
|
78
88
|
get developStage() {
|
|
79
89
|
return this.settings.stages[0];
|
|
80
90
|
}
|
|
81
|
-
/**
|
|
91
|
+
/**
|
|
92
|
+
* @deprecated Use lastStage or getStage() instead. Kept for backward compatibility during migration.
|
|
93
|
+
*/
|
|
82
94
|
get integrateStage() {
|
|
83
95
|
return this.settings.stages.find(s => s.queue === 'fifo')
|
|
84
96
|
|| this.settings.stages[this.settings.stages.length - 1];
|
|
85
97
|
}
|
|
86
|
-
/**
|
|
87
|
-
|
|
88
|
-
return
|
|
89
|
-
}
|
|
90
|
-
/** Is this a review/integration-phase state? */
|
|
91
|
-
isReviewState(pmState) {
|
|
92
|
-
return pmState === this.settings.states.review;
|
|
98
|
+
/** Find the stage whose activeState matches the given PM state */
|
|
99
|
+
getStageByActiveState(pmState) {
|
|
100
|
+
return this.settings.stages.find(s => s.activeState === pmState);
|
|
93
101
|
}
|
|
94
102
|
/** All states where cards are "active" (not done, not backlog) */
|
|
95
103
|
get activeStates() {
|
|
@@ -188,19 +196,26 @@ function buildFromYaml(yaml, config) {
|
|
|
188
196
|
// Stages: build from YAML or use defaults
|
|
189
197
|
let stages;
|
|
190
198
|
if (yaml.stages && Array.isArray(yaml.stages) && yaml.stages.length > 0) {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
199
|
+
const yamlStages = yaml.stages;
|
|
200
|
+
stages = yamlStages.map((s, idx) => {
|
|
201
|
+
// Default on_complete fallback: next stage's trigger state, or done for last stage
|
|
202
|
+
const nextTrigger = idx < yamlStages.length - 1
|
|
203
|
+
? (parseTrigger(yamlStages[idx + 1].trigger) || yamlStages[idx + 1].card_state || states.done)
|
|
204
|
+
: states.done;
|
|
205
|
+
return {
|
|
206
|
+
name: s.name,
|
|
207
|
+
triggerState: parseTrigger(s.trigger) || s.card_state || states.ready,
|
|
208
|
+
activeState: s.card_state || states.active,
|
|
209
|
+
agent: s.agent || config.WORKER_TOOL || 'claude',
|
|
210
|
+
profile: s.profile,
|
|
211
|
+
completion: s.completion || 'git-evidence',
|
|
212
|
+
onCompleteState: parseOnComplete(s.on_complete, nextTrigger),
|
|
213
|
+
onFailLabel: parseOnFailLabel(s.on_fail),
|
|
214
|
+
onFailComment: parseOnFailComment(s.on_fail),
|
|
215
|
+
queue: s.queue,
|
|
216
|
+
timeout: s.timeout,
|
|
217
|
+
};
|
|
218
|
+
});
|
|
204
219
|
}
|
|
205
220
|
else {
|
|
206
221
|
stages = defaultStages(config);
|
|
@@ -212,7 +227,19 @@ function buildFromYaml(yaml, config) {
|
|
|
212
227
|
stages[1].activeState = states.review;
|
|
213
228
|
stages[1].onCompleteState = states.done;
|
|
214
229
|
}
|
|
215
|
-
|
|
230
|
+
// Derive activeStates from stages (all non-done states)
|
|
231
|
+
const activeStateSet = new Set();
|
|
232
|
+
if (states.planning)
|
|
233
|
+
activeStateSet.add(states.planning);
|
|
234
|
+
activeStateSet.add(states.backlog);
|
|
235
|
+
activeStateSet.add(states.ready);
|
|
236
|
+
for (const stage of stages) {
|
|
237
|
+
if (stage.triggerState)
|
|
238
|
+
activeStateSet.add(stage.triggerState);
|
|
239
|
+
if (stage.activeState)
|
|
240
|
+
activeStateSet.add(stage.activeState);
|
|
241
|
+
}
|
|
242
|
+
const activeStates = Array.from(activeStateSet);
|
|
216
243
|
return {
|
|
217
244
|
states,
|
|
218
245
|
stages,
|
|
@@ -236,19 +263,19 @@ function parseTrigger(raw) {
|
|
|
236
263
|
const match = raw.match(/card_enters\s+["']?(\S+?)["']?\s*$/);
|
|
237
264
|
return match ? match[1] : raw;
|
|
238
265
|
}
|
|
239
|
-
/** Parse on_complete to target state */
|
|
240
|
-
function parseOnComplete(raw,
|
|
266
|
+
/** Parse on_complete to target state. fallbackState is used when on_complete is not defined. */
|
|
267
|
+
function parseOnComplete(raw, fallbackState) {
|
|
241
268
|
if (!raw)
|
|
242
|
-
return
|
|
269
|
+
return fallbackState;
|
|
243
270
|
if (typeof raw === 'string') {
|
|
244
271
|
const match = raw.match(/move_card\s+["']?(\S+?)["']?\s*$/);
|
|
245
272
|
return match ? match[1] : raw;
|
|
246
273
|
}
|
|
247
274
|
if (typeof raw === 'object' && raw.action) {
|
|
248
275
|
const match = raw.action.match(/move_card\s+["']?(\S+?)["']?\s*$/);
|
|
249
|
-
return match ? match[1] :
|
|
276
|
+
return match ? match[1] : fallbackState;
|
|
250
277
|
}
|
|
251
|
-
return
|
|
278
|
+
return fallbackState;
|
|
252
279
|
}
|
|
253
280
|
/** Parse on_fail to label */
|
|
254
281
|
function parseOnFailLabel(raw) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectPipelineAdapter.js","sourceRoot":"","sources":["../../src/core/projectPipelineAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAiD1C,oEAAoE;AAEpE,MAAM,cAAc,GAAe;IACjC,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,wBAAwB,GAAG;IAC/B,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,sBAAsB,EAAE,eAAe,EAAE,SAAS;CACvF,CAAC;AAEF,SAAS,aAAa,CAAC,MAAqB;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC;IAC5C,OAAO;QACL;YACE,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,MAAM;YACpB,WAAW,EAAE,YAAY;YACzB,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,cAAc;YAC1B,eAAe,EAAE,IAAI;YACrB,WAAW,EAAE,WAAW;YACxB,aAAa,EAAE,qCAAqC;SACrD;QACD;YACE,IAAI,EAAE,WAAW;YACjB,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;YAC/B,UAAU,EAAE,oBAAoB;YAChC,eAAe,EAAE,MAAM;YACvB,KAAK,EAAE,MAAM;SACd;KACF,CAAC;AACJ,CAAC;AAED,mEAAmE;AAEnE,MAAM,OAAO,sBAAsB;IACxB,QAAQ,CAA0B;IAE3C,YAAY,MAAqB,EAAE,UAAmB;QACpD,MAAM,UAAU,GAAG,uBAAuB,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC;QAE7E,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,gCAAgC;IAChC,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,yBAAyB;IACzB,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,gEAAgE;IAChE,iBAAiB,CAAC,OAAe;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,CAAC;IACpE,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"projectPipelineAdapter.js","sourceRoot":"","sources":["../../src/core/projectPipelineAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionLiveness.d.ts","sourceRoot":"","sources":["../../src/core/sessionLiveness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAQtE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,MAAM,CAAC,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"sessionLiveness.d.ts","sourceRoot":"","sources":["../../src/core/sessionLiveness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAQtE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,MAAM,CAAC,GAAG,OAAO,CAM1F;AAED,wBAAgB,0BAA0B,CACxC,OAAO,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,GAAG,WAAW,CAAC,GAAG,IAAI,GAC3D,MAAM,GAAG,IAAI,CAGf;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,cAAc,CAAC,EAC3C,OAAO,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,GAAG,YAAY,CAAC,GAAG,IAAI,GACrE,MAAM,GAAG,IAAI,CAKf;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE9E;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,MAAM,CAAC,EACjD,OAAO,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,cAAc,GAAG,KAAK,CAAC,GAAG,IAAI,GAC5E,OAAO,CAQT;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,MAAM,GAAG,cAAc,CAAC,EAClE,OAAO,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,cAAc,GAAG,KAAK,GAAG,cAAc,GAAG,YAAY,CAAC,GAAG,IAAI,GAC5G,OAAO,CAGT"}
|