@wrongstack/core 0.265.1 → 0.267.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-bridge-DrkBxszZ.d.ts → agent-bridge-STJ3JwwK.d.ts} +1 -1
- package/dist/{agent-subagent-runner-DM2pP-B6.d.ts → agent-subagent-runner-CzPGP3jA.d.ts} +25 -7
- package/dist/{brain-BXd_61kQ.d.ts → brain-Cdg77tVN.d.ts} +73 -1
- package/dist/{compactor-B8pOf45Y.d.ts → compactor-iMZ84CXq.d.ts} +19 -1
- package/dist/{config-BMCj_XDs.d.ts → config-Du3pYYln.d.ts} +54 -3
- package/dist/{context-MRk5PhNv.d.ts → context-dT5Ueund.d.ts} +65 -1
- package/dist/coordination/index.d.ts +17 -17
- package/dist/coordination/index.js +138 -114
- package/dist/coordination/index.js.map +1 -1
- package/dist/defaults/index.d.ts +25 -25
- package/dist/defaults/index.js +1729 -781
- package/dist/defaults/index.js.map +1 -1
- package/dist/execution/index.d.ts +15 -15
- package/dist/execution/index.js +1119 -229
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/prompt-enhancer.d.ts +1 -1
- package/dist/extension/index.d.ts +6 -6
- package/dist/{goal-preamble-DvHDSKSe.d.ts → goal-preamble-SulMTowG.d.ts} +28 -11
- package/dist/{goal-store-DtLMySNb.d.ts → goal-store-CABDwdFE.d.ts} +1 -1
- package/dist/{index-CEDeNodM.d.ts → index-Bms0m4oy.d.ts} +5 -5
- package/dist/{index-B-ch8K9C.d.ts → index-DtCVWel4.d.ts} +8 -8
- package/dist/index-IEuxQd-E.d.ts +82 -0
- package/dist/index.d.ts +118 -45
- package/dist/index.js +3083 -1602
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/index.d.ts +6 -6
- package/dist/infrastructure/index.js +72 -1
- package/dist/infrastructure/index.js.map +1 -1
- package/dist/kernel/index.d.ts +9 -9
- package/dist/kernel/index.js.map +1 -1
- package/dist/{mcp-servers-2x4w6Jn9.d.ts → mcp-servers-C2cBTxUR.d.ts} +3 -3
- package/dist/models/index.d.ts +5 -5
- package/dist/models/index.js +30 -1
- package/dist/models/index.js.map +1 -1
- package/dist/{models-registry-DmJlKuNp.d.ts → models-registry-BqGZNJQ-.d.ts} +1 -1
- package/dist/{multi-agent-coordinator-DyCkCZnU.d.ts → multi-agent-coordinator-B8R43uPz.d.ts} +1 -1
- package/dist/{null-fleet-bus-CG9QY2aP.d.ts → null-fleet-bus-CnXa5oTH.d.ts} +14 -9
- package/dist/observability/index.d.ts +2 -2
- package/dist/{parallel-eternal-engine-Jw9uhEoT.d.ts → parallel-eternal-engine-DdNnw9BQ.d.ts} +11 -9
- package/dist/{path-resolver-Dy2ej-gE.d.ts → path-resolver-COIMLCQL.d.ts} +3 -3
- package/dist/{permission-B9SB45lp.d.ts → permission-B75JAi3-.d.ts} +1 -1
- package/dist/{permission-policy-CkjSXabK.d.ts → permission-policy-DlR9eJAM.d.ts} +2 -2
- package/dist/{pipeline-DPDxH_7m.d.ts → pipeline-BfD2k1rT.d.ts} +2 -2
- package/dist/{plan-templates-CzD9GnAU.d.ts → plan-templates-DSIKCXZN.d.ts} +5 -5
- package/dist/{llm-selector-C0tfTCUe.d.ts → provider-model-resolve-BNRsNuJx.d.ts} +40 -3
- package/dist/{provider-runner-DMa70ODu.d.ts → provider-runner-CX7iIvox.d.ts} +3 -3
- package/dist/{retry-policy-CN0khdlj.d.ts → retry-policy-BilV1ujH.d.ts} +1 -1
- package/dist/sdd/index.d.ts +8 -8
- package/dist/sdd/index.js +12 -12
- package/dist/sdd/index.js.map +1 -1
- package/dist/{secret-vault-B2yw84VT.d.ts → secret-vault-gkvEZZfE.d.ts} +2 -2
- package/dist/security/index.d.ts +5 -67
- package/dist/security/index.js +96 -76
- package/dist/security/index.js.map +1 -1
- package/dist/{selector-CzHh_igB.d.ts → selector-Bc7eWtT3.d.ts} +1 -1
- package/dist/{session-event-bridge-BUI6Jf-4.d.ts → session-event-bridge-D-araDEz.d.ts} +1 -1
- package/dist/{session-reader-CMgdMSRP.d.ts → session-reader-D7Dapswh.d.ts} +1 -1
- package/dist/storage/index.d.ts +11 -11
- package/dist/storage/index.js +81 -84
- package/dist/storage/index.js.map +1 -1
- package/dist/tools/index.d.ts +4 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/types/index.d.ts +19 -19
- package/dist/types/index.js +1265 -400
- package/dist/types/index.js.map +1 -1
- package/dist/utils/index.d.ts +454 -406
- package/dist/utils/index.js +2191 -1201
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as ContentBlock, S as SessionEvent, h as SessionMetadata, i as SessionStore } from './context-
|
|
1
|
+
import { g as ContentBlock, S as SessionEvent, h as SessionMetadata, i as SessionStore } from './context-dT5Ueund.js';
|
|
2
2
|
|
|
3
3
|
type AttachmentKind = 'text' | 'image' | 'file';
|
|
4
4
|
interface AttachmentMeta {
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { M as MemoryBackend, j as FileMemoryBackendOptions } from '../plan-templates-
|
|
2
|
-
export { A as AbandonedSession, a as AttachmentStoreOptions, C as ConfigLoaderOptions, b as ConfigMigration, c as ConfigMigrationError, d as ConfigSource, D as DEFAULT_CONFIG_MIGRATIONS, e as DefaultAttachmentStore, f as DefaultConfigLoader, g as DefaultConfigStore, h as DefaultMemoryStore, i as DefaultSessionStore, F as FileMemoryBackend, k as MemoryStoreOptions, l as MigrationContext, m as MigrationResult, P as PersistedQueueItem, n as PlanFile, o as PlanItem, p as PlanTemplate, Q as QueueStore, R as RecoveryLock, q as RecoveryLockOptions, S as SessionAnalyzer, r as SessionStoreOptions, T as TodosCheckpointFile, s as addPlanItem, t as attachPlanCheckpoint, u as attachTodosCheckpoint, v as clearPlan, w as deriveTodosFromPlanItem, x as emptyPlan, y as formatPlan, z as formatPlanTemplates, B as getPlanTemplate, E as listPlanTemplates, G as loadPlan, H as loadTodosCheckpoint, I as mutatePlan, J as parseEntries, K as removePlanItem, L as runConfigMigrations, N as savePlan, O as saveTodosCheckpoint, U as setPlanItemStatus } from '../plan-templates-
|
|
3
|
-
import { M as MemoryScope, b as MemoryEntry, c as MemoryStore, E as EventBus } from '../brain-
|
|
4
|
-
import { l as AgentExtension, j as AfterRunHook } from '../index-
|
|
5
|
-
import { P as Provider, R as Request, b as Response, S as SessionEvent } from '../context-
|
|
6
|
-
export { D as DefaultSessionReader, f as DefaultSessionReaderOptions, S as SessionReader } from '../session-reader-
|
|
1
|
+
import { M as MemoryBackend, j as FileMemoryBackendOptions } from '../plan-templates-DSIKCXZN.js';
|
|
2
|
+
export { A as AbandonedSession, a as AttachmentStoreOptions, C as ConfigLoaderOptions, b as ConfigMigration, c as ConfigMigrationError, d as ConfigSource, D as DEFAULT_CONFIG_MIGRATIONS, e as DefaultAttachmentStore, f as DefaultConfigLoader, g as DefaultConfigStore, h as DefaultMemoryStore, i as DefaultSessionStore, F as FileMemoryBackend, k as MemoryStoreOptions, l as MigrationContext, m as MigrationResult, P as PersistedQueueItem, n as PlanFile, o as PlanItem, p as PlanTemplate, Q as QueueStore, R as RecoveryLock, q as RecoveryLockOptions, S as SessionAnalyzer, r as SessionStoreOptions, T as TodosCheckpointFile, s as addPlanItem, t as attachPlanCheckpoint, u as attachTodosCheckpoint, v as clearPlan, w as deriveTodosFromPlanItem, x as emptyPlan, y as formatPlan, z as formatPlanTemplates, B as getPlanTemplate, E as listPlanTemplates, G as loadPlan, H as loadTodosCheckpoint, I as mutatePlan, J as parseEntries, K as removePlanItem, L as runConfigMigrations, N as savePlan, O as saveTodosCheckpoint, U as setPlanItemStatus } from '../plan-templates-DSIKCXZN.js';
|
|
3
|
+
import { M as MemoryScope, b as MemoryEntry, c as MemoryStore, E as EventBus } from '../brain-Cdg77tVN.js';
|
|
4
|
+
import { l as AgentExtension, j as AfterRunHook } from '../index-Bms0m4oy.js';
|
|
5
|
+
import { P as Provider, R as Request, b as Response, S as SessionEvent } from '../context-dT5Ueund.js';
|
|
6
|
+
export { D as DefaultSessionReader, f as DefaultSessionReaderOptions, S as SessionReader } from '../session-reader-D7Dapswh.js';
|
|
7
7
|
import { S as SessionRewinder, C as CheckpointInfo, a as RewindResultExtended } from '../session-rewinder-C9HnMkhP.js';
|
|
8
8
|
import { T as TaskItem } from '../task-format-vGOIftmK.js';
|
|
9
9
|
export { a as DirectorStateCheckpoint, D as DirectorStateSnapshot, b as DirectorSubagentState, c as DirectorTaskState, l as loadDirectorState } from '../director-state-BfeCUbmk.js';
|
|
10
|
-
export { G as GoalFile, J as JournalEntry, M as MAX_JOURNAL_ENTRIES, a as MAX_PROGRESS_HISTORY, P as ProgressSnapshot, b as appendJournal, e as emptyGoal, f as formatGoal, g as goalFilePath, l as loadGoal, p as parseProgressFromText, r as recordProgress, s as saveGoal, c as setProgress, d as summarizeUsage } from '../goal-store-
|
|
10
|
+
export { G as GoalFile, J as JournalEntry, M as MAX_JOURNAL_ENTRIES, a as MAX_PROGRESS_HISTORY, P as ProgressSnapshot, b as appendJournal, e as emptyGoal, f as formatGoal, g as goalFilePath, l as loadGoal, p as parseProgressFromText, r as recordProgress, s as saveGoal, c as setProgress, d as summarizeUsage } from '../goal-store-CABDwdFE.js';
|
|
11
11
|
import { W as WstackPaths } from '../wstack-paths-hOpNLmvf.js';
|
|
12
|
-
import { G as SyncCategory,
|
|
13
|
-
export { A as AuditLevel, C as CORE_RECONSTRUCT_EVENTS, a as STANDARD_AUDIT_EVENTS, S as SessionEventBridge, b as SessionEventBridgeOptions, c as SessionSamplingOptions, T as ToolProgressSamplingOptions, d as createSessionEventBridge, r as resolveAuditLevel, e as resolveSessionLoggingConfig } from '../session-event-bridge-
|
|
14
|
-
import '../permission-
|
|
12
|
+
import { G as SyncCategory, l as SyncConfig } from '../config-Du3pYYln.js';
|
|
13
|
+
export { A as AuditLevel, C as CORE_RECONSTRUCT_EVENTS, a as STANDARD_AUDIT_EVENTS, S as SessionEventBridge, b as SessionEventBridgeOptions, c as SessionSamplingOptions, T as ToolProgressSamplingOptions, d as createSessionEventBridge, r as resolveAuditLevel, e as resolveSessionLoggingConfig } from '../session-event-bridge-D-araDEz.js';
|
|
14
|
+
import '../permission-B75JAi3-.js';
|
|
15
15
|
import '../secret-vault-BAKpgFw_.js';
|
|
16
16
|
import '../logger-B63L5bTg.js';
|
|
17
|
-
import '../pipeline-
|
|
17
|
+
import '../pipeline-BfD2k1rT.js';
|
|
18
18
|
import '../observability-D-HZN_mF.js';
|
|
19
19
|
import '../task-graph-u1q9Jkyk.js';
|
|
20
20
|
|
package/dist/storage/index.js
CHANGED
|
@@ -219,26 +219,6 @@ function isEmptyMessage(msg) {
|
|
|
219
219
|
return msg.content.length === 0;
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
-
// src/utils/error.ts
|
|
223
|
-
function toErrorMessage(err) {
|
|
224
|
-
return err instanceof Error ? err.message : String(err);
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
// src/utils/safe-json.ts
|
|
228
|
-
function safeParse(input, maxBytes = 5e6) {
|
|
229
|
-
if (input.length > maxBytes) {
|
|
230
|
-
return { ok: false, error: `Input exceeds limit (${maxBytes} bytes)` };
|
|
231
|
-
}
|
|
232
|
-
try {
|
|
233
|
-
return { ok: true, value: JSON.parse(input) };
|
|
234
|
-
} catch (err) {
|
|
235
|
-
return {
|
|
236
|
-
ok: false,
|
|
237
|
-
error: toErrorMessage(err)
|
|
238
|
-
};
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
|
|
242
222
|
// src/utils/term.ts
|
|
243
223
|
var hasStdout = () => typeof process !== "undefined" && !!process.stdout;
|
|
244
224
|
function isStdoutTTY() {
|
|
@@ -276,63 +256,6 @@ var color = {
|
|
|
276
256
|
bgRed: wrap("41", "49"),
|
|
277
257
|
bgGreen: wrap("42", "49")
|
|
278
258
|
};
|
|
279
|
-
function projectHash(absRoot) {
|
|
280
|
-
return createHash("sha256").update(path2.resolve(absRoot)).digest("hex").slice(0, 12);
|
|
281
|
-
}
|
|
282
|
-
function projectSlug(absRoot) {
|
|
283
|
-
const base = slugify(path2.basename(absRoot));
|
|
284
|
-
const hash = createHash("sha256").update(path2.resolve(absRoot)).digest("hex").slice(0, 6);
|
|
285
|
-
return `${base}-${hash}`;
|
|
286
|
-
}
|
|
287
|
-
function slugify(name) {
|
|
288
|
-
return name.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 40) || "project";
|
|
289
|
-
}
|
|
290
|
-
function wstackGlobalRoot() {
|
|
291
|
-
const fromEnv = process.env["WRONGSTACK_HOME"];
|
|
292
|
-
if (fromEnv && fromEnv.trim().length > 0) return path2.resolve(fromEnv);
|
|
293
|
-
return path2.join(os.homedir(), ".wrongstack");
|
|
294
|
-
}
|
|
295
|
-
function resolveWstackPaths(opts) {
|
|
296
|
-
const globalRoot = opts.globalRoot ?? (opts.userHome ? path2.join(opts.userHome, ".wrongstack") : wstackGlobalRoot());
|
|
297
|
-
const hash = projectHash(opts.projectRoot);
|
|
298
|
-
const slug = projectSlug(opts.projectRoot);
|
|
299
|
-
const projectDir = path2.join(globalRoot, "projects", slug);
|
|
300
|
-
return {
|
|
301
|
-
globalRoot,
|
|
302
|
-
configDir: globalRoot,
|
|
303
|
-
globalConfig: path2.join(globalRoot, "config.json"),
|
|
304
|
-
secretsKey: path2.join(globalRoot, ".key"),
|
|
305
|
-
globalMemory: path2.join(globalRoot, "memory.md"),
|
|
306
|
-
globalSkills: path2.join(globalRoot, "skills"),
|
|
307
|
-
globalPrompts: path2.join(globalRoot, "prompts"),
|
|
308
|
-
cacheDir: path2.join(globalRoot, "cache"),
|
|
309
|
-
modelsCache: path2.join(globalRoot, "cache", "models.dev.json"),
|
|
310
|
-
modelsOverlayCache: path2.join(globalRoot, "cache", "models-overlay.json"),
|
|
311
|
-
historyFile: path2.join(globalRoot, "history"),
|
|
312
|
-
logFile: path2.join(globalRoot, "logs", "wrongstack.log"),
|
|
313
|
-
projectDir,
|
|
314
|
-
projectCodebaseIndex: path2.join(projectDir, "codebase-index"),
|
|
315
|
-
projectMemory: path2.join(projectDir, "memory.md"),
|
|
316
|
-
projectSessions: path2.join(projectDir, "sessions"),
|
|
317
|
-
projectTrust: path2.join(projectDir, "trust.json"),
|
|
318
|
-
projectMeta: path2.join(projectDir, "meta.json"),
|
|
319
|
-
projectLocalConfig: path2.join(projectDir, "config.local.json"),
|
|
320
|
-
inProjectConfig: path2.join(opts.projectRoot, ".wrongstack", "config.json"),
|
|
321
|
-
inProjectAgentsFile: path2.join(opts.projectRoot, ".wrongstack", "AGENTS.md"),
|
|
322
|
-
inProjectSkills: path2.join(opts.projectRoot, ".wrongstack", "skills"),
|
|
323
|
-
inProjectWorktrees: path2.join(opts.projectRoot, ".wrongstack", "worktrees"),
|
|
324
|
-
projectHash: hash,
|
|
325
|
-
projectSlug: slug,
|
|
326
|
-
projectGoal: path2.join(projectDir, "goal.json"),
|
|
327
|
-
projectSpecs: path2.join(projectDir, "specs"),
|
|
328
|
-
projectTaskGraphs: path2.join(projectDir, "task-graphs"),
|
|
329
|
-
projectSddSession: path2.join(projectDir, "sdd-session.json"),
|
|
330
|
-
projectPlan: path2.join(projectDir, "plan.json"),
|
|
331
|
-
projectAutophase: path2.join(projectDir, "autophase"),
|
|
332
|
-
syncConfig: path2.join(globalRoot, "sync.json"),
|
|
333
|
-
projectStatus: (projectHash2) => path2.join(globalRoot, "projects", projectHash2, "status.json")
|
|
334
|
-
};
|
|
335
|
-
}
|
|
336
259
|
|
|
337
260
|
// src/utils/deep-merge.ts
|
|
338
261
|
var FORBIDDEN_PROTO_KEYS = /* @__PURE__ */ new Set([
|
|
@@ -393,6 +316,11 @@ function deepMerge(base, patch, options = {}) {
|
|
|
393
316
|
return out;
|
|
394
317
|
}
|
|
395
318
|
|
|
319
|
+
// src/utils/error.ts
|
|
320
|
+
function toErrorMessage(err) {
|
|
321
|
+
return err instanceof Error ? err.message : String(err);
|
|
322
|
+
}
|
|
323
|
+
|
|
396
324
|
// src/utils/regex-guard.ts
|
|
397
325
|
var MAX_PATTERN_LEN = 512;
|
|
398
326
|
var DANGEROUS_PATTERNS = [
|
|
@@ -429,6 +357,78 @@ function compileUserRegex(pattern, flags) {
|
|
|
429
357
|
}
|
|
430
358
|
}
|
|
431
359
|
|
|
360
|
+
// src/utils/safe-json.ts
|
|
361
|
+
function safeParse(input, maxBytes = 5e6) {
|
|
362
|
+
if (input.length > maxBytes) {
|
|
363
|
+
return { ok: false, error: `Input exceeds limit (${maxBytes} bytes)` };
|
|
364
|
+
}
|
|
365
|
+
try {
|
|
366
|
+
return { ok: true, value: JSON.parse(input) };
|
|
367
|
+
} catch (err) {
|
|
368
|
+
return {
|
|
369
|
+
ok: false,
|
|
370
|
+
error: toErrorMessage(err)
|
|
371
|
+
};
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
function projectHash(absRoot) {
|
|
375
|
+
return createHash("sha256").update(path2.resolve(absRoot)).digest("hex").slice(0, 12);
|
|
376
|
+
}
|
|
377
|
+
function projectSlug(absRoot) {
|
|
378
|
+
const base = slugify(path2.basename(absRoot));
|
|
379
|
+
const hash = createHash("sha256").update(path2.resolve(absRoot)).digest("hex").slice(0, 6);
|
|
380
|
+
return `${base}-${hash}`;
|
|
381
|
+
}
|
|
382
|
+
function slugify(name) {
|
|
383
|
+
return name.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 40) || "project";
|
|
384
|
+
}
|
|
385
|
+
function wstackGlobalRoot() {
|
|
386
|
+
const fromEnv = process.env["WRONGSTACK_HOME"];
|
|
387
|
+
if (fromEnv && fromEnv.trim().length > 0) return path2.resolve(fromEnv);
|
|
388
|
+
return path2.join(os.homedir(), ".wrongstack");
|
|
389
|
+
}
|
|
390
|
+
function resolveWstackPaths(opts) {
|
|
391
|
+
const globalRoot = opts.globalRoot ?? (opts.userHome ? path2.join(opts.userHome, ".wrongstack") : wstackGlobalRoot());
|
|
392
|
+
const hash = projectHash(opts.projectRoot);
|
|
393
|
+
const slug = projectSlug(opts.projectRoot);
|
|
394
|
+
const projectDir = path2.join(globalRoot, "projects", slug);
|
|
395
|
+
return {
|
|
396
|
+
globalRoot,
|
|
397
|
+
configDir: globalRoot,
|
|
398
|
+
globalConfig: path2.join(globalRoot, "config.json"),
|
|
399
|
+
secretsKey: path2.join(globalRoot, ".key"),
|
|
400
|
+
globalMemory: path2.join(globalRoot, "memory.md"),
|
|
401
|
+
globalSkills: path2.join(globalRoot, "skills"),
|
|
402
|
+
globalPrompts: path2.join(globalRoot, "prompts"),
|
|
403
|
+
cacheDir: path2.join(globalRoot, "cache"),
|
|
404
|
+
modelsCache: path2.join(globalRoot, "cache", "models.dev.json"),
|
|
405
|
+
modelsOverlayCache: path2.join(globalRoot, "cache", "models-overlay.json"),
|
|
406
|
+
historyFile: path2.join(globalRoot, "history"),
|
|
407
|
+
logFile: path2.join(globalRoot, "logs", "wrongstack.log"),
|
|
408
|
+
projectDir,
|
|
409
|
+
projectCodebaseIndex: path2.join(projectDir, "codebase-index"),
|
|
410
|
+
projectMemory: path2.join(projectDir, "memory.md"),
|
|
411
|
+
projectSessions: path2.join(projectDir, "sessions"),
|
|
412
|
+
projectTrust: path2.join(projectDir, "trust.json"),
|
|
413
|
+
projectMeta: path2.join(projectDir, "meta.json"),
|
|
414
|
+
projectLocalConfig: path2.join(projectDir, "config.local.json"),
|
|
415
|
+
inProjectConfig: path2.join(opts.projectRoot, ".wrongstack", "config.json"),
|
|
416
|
+
inProjectAgentsFile: path2.join(opts.projectRoot, ".wrongstack", "AGENTS.md"),
|
|
417
|
+
inProjectSkills: path2.join(opts.projectRoot, ".wrongstack", "skills"),
|
|
418
|
+
inProjectWorktrees: path2.join(opts.projectRoot, ".wrongstack", "worktrees"),
|
|
419
|
+
projectHash: hash,
|
|
420
|
+
projectSlug: slug,
|
|
421
|
+
projectGoal: path2.join(projectDir, "goal.json"),
|
|
422
|
+
projectSpecs: path2.join(projectDir, "specs"),
|
|
423
|
+
projectTaskGraphs: path2.join(projectDir, "task-graphs"),
|
|
424
|
+
projectSddSession: path2.join(projectDir, "sdd-session.json"),
|
|
425
|
+
projectPlan: path2.join(projectDir, "plan.json"),
|
|
426
|
+
projectAutophase: path2.join(projectDir, "autophase"),
|
|
427
|
+
syncConfig: path2.join(globalRoot, "sync.json"),
|
|
428
|
+
projectStatus: (projectHash2) => path2.join(globalRoot, "projects", projectHash2, "status.json")
|
|
429
|
+
};
|
|
430
|
+
}
|
|
431
|
+
|
|
432
432
|
// src/storage/session-store.ts
|
|
433
433
|
function sanitizeModel(model) {
|
|
434
434
|
return model.replace(/[^a-zA-Z0-9_-]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "").slice(0, 40);
|
|
@@ -5985,13 +5985,10 @@ var FleetNotifier = class {
|
|
|
5985
5985
|
}
|
|
5986
5986
|
};
|
|
5987
5987
|
async function defaultPost(url) {
|
|
5988
|
-
|
|
5989
|
-
|
|
5990
|
-
|
|
5991
|
-
|
|
5992
|
-
} finally {
|
|
5993
|
-
clearTimeout(t);
|
|
5994
|
-
}
|
|
5988
|
+
await fetch(url, {
|
|
5989
|
+
method: "POST",
|
|
5990
|
+
signal: AbortSignal.timeout(POST_TIMEOUT_MS)
|
|
5991
|
+
});
|
|
5995
5992
|
}
|
|
5996
5993
|
var DefaultSessionRewinder = class {
|
|
5997
5994
|
constructor(sessionsDir, projectRoot) {
|