@cleocode/core 2026.3.60 → 2026.3.62

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.
Files changed (45) hide show
  1. package/dist/cleo.js +36 -1
  2. package/dist/cleo.js.map +1 -1
  3. package/dist/index.js +120 -30
  4. package/dist/index.js.map +3 -3
  5. package/dist/internal.d.ts +6 -3
  6. package/dist/internal.d.ts.map +1 -1
  7. package/dist/internal.js +4 -2
  8. package/dist/internal.js.map +1 -1
  9. package/dist/phases/deps.d.ts +1 -1
  10. package/dist/phases/deps.d.ts.map +1 -1
  11. package/dist/phases/deps.js +5 -2
  12. package/dist/phases/deps.js.map +1 -1
  13. package/dist/repair.d.ts +7 -0
  14. package/dist/repair.d.ts.map +1 -1
  15. package/dist/repair.js +43 -2
  16. package/dist/repair.js.map +1 -1
  17. package/dist/routing/capability-matrix.d.ts.map +1 -1
  18. package/dist/routing/capability-matrix.js +7 -0
  19. package/dist/routing/capability-matrix.js.map +1 -1
  20. package/dist/sequence/index.js +1 -1
  21. package/dist/sequence/index.js.map +1 -1
  22. package/dist/stats/index.d.ts.map +1 -1
  23. package/dist/stats/index.js +4 -2
  24. package/dist/stats/index.js.map +1 -1
  25. package/dist/store/sqlite.d.ts.map +1 -1
  26. package/dist/store/sqlite.js +59 -5
  27. package/dist/store/sqlite.js.map +1 -1
  28. package/dist/system/backup.d.ts +15 -0
  29. package/dist/system/backup.d.ts.map +1 -1
  30. package/dist/system/backup.js +43 -1
  31. package/dist/system/backup.js.map +1 -1
  32. package/dist/tasks/add.d.ts.map +1 -1
  33. package/dist/tasks/add.js +66 -4
  34. package/dist/tasks/add.js.map +1 -1
  35. package/package.json +5 -5
  36. package/src/internal.ts +7 -4
  37. package/src/phases/deps.ts +5 -3
  38. package/src/repair.ts +53 -2
  39. package/src/routing/capability-matrix.ts +7 -0
  40. package/src/sequence/index.ts +1 -1
  41. package/src/stats/index.ts +4 -2
  42. package/src/store/sqlite.ts +72 -5
  43. package/src/system/backup.ts +52 -1
  44. package/src/tasks/__tests__/add.test.ts +3 -1
  45. package/src/tasks/add.ts +66 -5
package/dist/cleo.js CHANGED
@@ -17,6 +17,10 @@ import path from 'node:path';
17
17
  // Admin
18
18
  import { exportTasks } from './admin/export.js';
19
19
  import { importTasks } from './admin/import.js';
20
+ // Agents
21
+ import { checkAgentHealth, deregisterAgent, detectCrashedAgents, getAgentCapacity, heartbeat, isOverloaded, listAgentInstances, registerAgent, } from './agents/index.js';
22
+ // Intelligence
23
+ import { calculateBlastRadius, predictImpact, } from './intelligence/index.js';
20
24
  // Lifecycle
21
25
  import { checkGate, completeStage, failGate, getLifecycleHistory, getLifecycleStatus, PIPELINE_STAGES, passGate, resetStage, skipStage, startStage, } from './lifecycle/index.js';
22
26
  // Memory
@@ -40,6 +44,8 @@ import { computeBriefing, computeHandoff, endSession, findSessions, gcSessions,
40
44
  import { addSticky, archiveSticky, convertStickyToMemory, convertStickyToTask, getSticky, listStickies, purgeSticky, } from './sticky/index.js';
41
45
  // Store
42
46
  import { getAccessor } from './store/data-accessor.js';
47
+ // Task Work (start/stop/current)
48
+ import { currentTask, startTask, stopTask } from './task-work/index.js';
43
49
  // Tasks
44
50
  import { addTask } from './tasks/add.js';
45
51
  import { archiveTasks } from './tasks/archive.js';
@@ -104,6 +110,9 @@ export class Cleo {
104
110
  complete: (p) => completeTask({ taskId: p.taskId, notes: p.notes }, root, store),
105
111
  delete: (p) => deleteTask({ taskId: p.taskId, force: p.force }, root, store),
106
112
  archive: (p) => archiveTasks({ before: p?.before, taskIds: p?.taskIds, dryRun: p?.dryRun }, root, store),
113
+ start: (taskId) => startTask(taskId, root, store),
114
+ stop: () => stopTask(root, store),
115
+ current: () => currentTask(root, store),
107
116
  };
108
117
  }
109
118
  // === Sessions ===
@@ -111,7 +120,7 @@ export class Cleo {
111
120
  const root = this.projectRoot;
112
121
  const store = this._store ?? undefined;
113
122
  return {
114
- start: (p) => startSession({ name: p.name, scope: p.scope, agent: p.agent }, root, store),
123
+ start: (p) => startSession({ name: p.name, scope: p.scope, agent: p.agent, startTask: p.startTask }, root, store),
115
124
  end: (p) => endSession({ note: p?.note }, root, store),
116
125
  status: () => sessionStatus(root, store),
117
126
  resume: (id) => resumeSession(id, root, store),
@@ -245,6 +254,32 @@ export class Cleo {
245
254
  sharingStatus: () => getSharingStatus(),
246
255
  };
247
256
  }
257
+ // === Agents ===
258
+ get agents() {
259
+ const root = this.projectRoot;
260
+ return {
261
+ register: (opts) => registerAgent(opts, root),
262
+ deregister: (agentId) => deregisterAgent(agentId, root),
263
+ health: (agentId) => checkAgentHealth(agentId, undefined, root),
264
+ detectCrashed: (thresholdMs) => detectCrashedAgents(thresholdMs, root),
265
+ recordHeartbeat: (agentId) => heartbeat(agentId, root),
266
+ capacity: (agentId) => getAgentCapacity(agentId, root),
267
+ isOverloaded: (threshold) => isOverloaded(threshold, root),
268
+ list: (p) => listAgentInstances({
269
+ status: p?.status,
270
+ agentType: p?.agentType,
271
+ }, root),
272
+ };
273
+ }
274
+ // === Intelligence ===
275
+ get intelligence() {
276
+ const root = this.projectRoot;
277
+ const store = this._store ?? undefined;
278
+ return {
279
+ predictImpact: (change) => predictImpact(change, root, store ?? undefined),
280
+ blastRadius: (taskId) => calculateBlastRadius(taskId, store ?? undefined, root),
281
+ };
282
+ }
248
283
  // === Sync (Task Reconciliation) ===
249
284
  get sync() {
250
285
  const root = this.projectRoot;
package/dist/cleo.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cleo.js","sourceRoot":"","sources":["../src/cleo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cleo.js","sourceRoot":"","sources":["../src/cleo.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11225,16 +11225,33 @@ function runMigrations(nativeDb, db) {
11225
11225
  );
11226
11226
  }
11227
11227
  }
11228
- let lastError;
11228
+ if (tableExists3(nativeDb, "__drizzle_migrations") && tableExists3(nativeDb, "tasks")) {
11229
+ const localMigrations = readMigrationFiles({ migrationsFolder });
11230
+ const localHashes = new Set(localMigrations.map((m) => m.hash));
11231
+ const dbEntries = nativeDb.prepare('SELECT hash FROM "__drizzle_migrations"').all();
11232
+ const hasOrphanedEntries = dbEntries.some((e) => !localHashes.has(e.hash));
11233
+ if (hasOrphanedEntries) {
11234
+ const log9 = getLogger("sqlite");
11235
+ log9.warn(
11236
+ { orphaned: dbEntries.filter((e) => !localHashes.has(e.hash)).length },
11237
+ "Detected stale migration journal entries from a previous CLEO version. Reconciling."
11238
+ );
11239
+ nativeDb.exec('DELETE FROM "__drizzle_migrations"');
11240
+ for (const m of localMigrations) {
11241
+ nativeDb.exec(
11242
+ `INSERT INTO "__drizzle_migrations" ("hash", "created_at") VALUES ('${m.hash}', ${m.folderMillis})`
11243
+ );
11244
+ }
11245
+ }
11246
+ }
11229
11247
  for (let attempt = 1; attempt <= MAX_MIGRATION_RETRIES; attempt++) {
11230
11248
  try {
11231
11249
  migrate(db, { migrationsFolder });
11232
- return;
11250
+ break;
11233
11251
  } catch (err) {
11234
11252
  if (!isSqliteBusy(err) || attempt === MAX_MIGRATION_RETRIES) {
11235
11253
  throw err;
11236
11254
  }
11237
- lastError = err;
11238
11255
  const delay = Math.min(
11239
11256
  MIGRATION_RETRY_BASE_DELAY_MS * 2 ** (attempt - 1) * (1 + Math.random() * 0.5),
11240
11257
  MIGRATION_RETRY_MAX_DELAY_MS
@@ -11242,7 +11259,19 @@ function runMigrations(nativeDb, db) {
11242
11259
  Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, Math.round(delay));
11243
11260
  }
11244
11261
  }
11245
- throw lastError;
11262
+ ensureRequiredColumns(nativeDb);
11263
+ }
11264
+ function ensureRequiredColumns(nativeDb) {
11265
+ if (!tableExists3(nativeDb, "tasks")) return;
11266
+ const columns = nativeDb.prepare("PRAGMA table_info(tasks)").all();
11267
+ const existingCols = new Set(columns.map((c) => c.name));
11268
+ for (const req of REQUIRED_TASK_COLUMNS) {
11269
+ if (!existingCols.has(req.name)) {
11270
+ const log9 = getLogger("sqlite");
11271
+ log9.warn({ column: req.name }, `Adding missing column tasks.${req.name} via ALTER TABLE`);
11272
+ nativeDb.exec(`ALTER TABLE tasks ADD COLUMN ${req.name} ${req.ddl}`);
11273
+ }
11274
+ }
11246
11275
  }
11247
11276
  function closeDb() {
11248
11277
  if (_nativeDb2) {
@@ -11299,7 +11328,7 @@ async function closeAllDatabases() {
11299
11328
  } catch {
11300
11329
  }
11301
11330
  }
11302
- var _require2, DatabaseSync2, DB_FILENAME3, SQLITE_SCHEMA_VERSION, SCHEMA_VERSION, _db2, _nativeDb2, _dbPath2, _initPromise2, _gitTrackingChecked, MIN_BACKUP_TASK_COUNT, MAX_MIGRATION_RETRIES, MIGRATION_RETRY_BASE_DELAY_MS, MIGRATION_RETRY_MAX_DELAY_MS;
11331
+ var _require2, DatabaseSync2, DB_FILENAME3, SQLITE_SCHEMA_VERSION, SCHEMA_VERSION, _db2, _nativeDb2, _dbPath2, _initPromise2, _gitTrackingChecked, MIN_BACKUP_TASK_COUNT, MAX_MIGRATION_RETRIES, MIGRATION_RETRY_BASE_DELAY_MS, MIGRATION_RETRY_MAX_DELAY_MS, REQUIRED_TASK_COLUMNS;
11303
11332
  var init_sqlite2 = __esm({
11304
11333
  "packages/core/src/store/sqlite.ts"() {
11305
11334
  "use strict";
@@ -11324,6 +11353,9 @@ var init_sqlite2 = __esm({
11324
11353
  MAX_MIGRATION_RETRIES = 5;
11325
11354
  MIGRATION_RETRY_BASE_DELAY_MS = 100;
11326
11355
  MIGRATION_RETRY_MAX_DELAY_MS = 2e3;
11356
+ REQUIRED_TASK_COLUMNS = [
11357
+ { name: "pipeline_stage", ddl: "text" }
11358
+ ];
11327
11359
  }
11328
11360
  });
11329
11361
 
@@ -13223,7 +13255,7 @@ async function showSequence(cwd) {
13223
13255
  counter: seq.counter,
13224
13256
  lastId: seq.lastId,
13225
13257
  checksum: seq.checksum,
13226
- nextId: `T${seq.counter + 1}`
13258
+ nextId: `T${String(seq.counter + 1).padStart(3, "0")}`
13227
13259
  };
13228
13260
  }
13229
13261
  async function loadAllTasks(cwd, accessor) {
@@ -23365,6 +23397,58 @@ async function addTask(options, cwd, accessor) {
23365
23397
  if (duplicate) {
23366
23398
  return { task: duplicate, duplicate: true };
23367
23399
  }
23400
+ if (options.dryRun) {
23401
+ const previewNow = (/* @__PURE__ */ new Date()).toISOString();
23402
+ let previewParentForStage = null;
23403
+ if (parentId) {
23404
+ const previewParentTask = await dataAccessor.loadSingleTask(parentId);
23405
+ previewParentForStage = previewParentTask ? { pipelineStage: previewParentTask.pipelineStage, type: previewParentTask.type } : null;
23406
+ }
23407
+ const previewPipelineStage = resolveDefaultPipelineStage({
23408
+ explicitStage: options.pipelineStage,
23409
+ taskType: taskType ?? null,
23410
+ parentTask: previewParentForStage
23411
+ });
23412
+ const previewPosition = options.position !== void 0 ? options.position : await dataAccessor.getNextPosition(parentId);
23413
+ const previewTask = {
23414
+ id: "T???",
23415
+ title: options.title,
23416
+ description: options.description,
23417
+ status,
23418
+ priority,
23419
+ type: taskType,
23420
+ parentId: parentId || null,
23421
+ position: previewPosition,
23422
+ positionVersion: 0,
23423
+ size,
23424
+ pipelineStage: previewPipelineStage,
23425
+ createdAt: previewNow,
23426
+ updatedAt: previewNow
23427
+ };
23428
+ if (phase) previewTask.phase = phase;
23429
+ if (options.labels?.length) previewTask.labels = options.labels.map((l) => l.trim());
23430
+ if (options.files?.length) previewTask.files = options.files.map((f) => f.trim());
23431
+ if (options.acceptance?.length)
23432
+ previewTask.acceptance = options.acceptance.map((a) => a.trim());
23433
+ if (options.depends?.length) previewTask.depends = options.depends.map((d) => d.trim());
23434
+ if (options.notes) {
23435
+ const previewNote = `${(/* @__PURE__ */ new Date()).toISOString().replace("T", " ").replace(/\.\d+Z$/, " UTC")}: ${options.notes}`;
23436
+ previewTask.notes = [previewNote];
23437
+ }
23438
+ if (status === "blocked" && options.description) {
23439
+ previewTask.blockedBy = options.description;
23440
+ }
23441
+ if (status === "done") {
23442
+ previewTask.completedAt = previewNow;
23443
+ }
23444
+ if (taskType !== "epic") {
23445
+ const verificationEnabledRaw = await getRawConfigValue("verification.enabled", cwd);
23446
+ if (verificationEnabledRaw === true) {
23447
+ previewTask.verification = buildDefaultVerification(previewNow);
23448
+ }
23449
+ }
23450
+ return { task: previewTask, dryRun: true };
23451
+ }
23368
23452
  const taskId = await allocateNextTaskId(cwd);
23369
23453
  const now = (/* @__PURE__ */ new Date()).toISOString();
23370
23454
  let resolvedParentForStage = null;
@@ -23434,9 +23518,6 @@ async function addTask(options, cwd, accessor) {
23434
23518
  task.verification = buildDefaultVerification(now);
23435
23519
  }
23436
23520
  }
23437
- if (options.dryRun) {
23438
- return { task, dryRun: true };
23439
- }
23440
23521
  await dataAccessor.transaction(async (tx) => {
23441
23522
  if (options.position !== void 0) {
23442
23523
  await dataAccessor.shiftPositions(parentId, options.position, 1);
@@ -24869,7 +24950,7 @@ __export(init_exports, {
24869
24950
  isAutoInitEnabled: () => isAutoInitEnabled,
24870
24951
  updateDocs: () => updateDocs
24871
24952
  });
24872
- import { existsSync as existsSync100, readdirSync as readdirSync33, readFileSync as readFileSync74 } from "node:fs";
24953
+ import { existsSync as existsSync100, readdirSync as readdirSync34, readFileSync as readFileSync74 } from "node:fs";
24873
24954
  import { copyFile as copyFile3, lstat, mkdir as mkdir16, readFile as readFile17, symlink, unlink as unlink4, writeFile as writeFile11 } from "node:fs/promises";
24874
24955
  import { platform as platform4 } from "node:os";
24875
24956
  import { basename as basename17, dirname as dirname19, join as join101 } from "node:path";
@@ -24919,7 +25000,7 @@ async function initAgentDefinition(created, warnings) {
24919
25000
  } catch (_err) {
24920
25001
  try {
24921
25002
  await mkdir16(globalAgentsDir, { recursive: true });
24922
- const files = readdirSync33(agentSourceDir);
25003
+ const files = readdirSync34(agentSourceDir);
24923
25004
  for (const file2 of files) {
24924
25005
  await copyFile3(join101(agentSourceDir, file2), join101(globalAgentsDir, file2));
24925
25006
  }
@@ -25068,7 +25149,7 @@ async function installGitHubTemplates(projectRoot, created, skipped) {
25068
25149
  await mkdir16(issueTemplateDir, { recursive: true });
25069
25150
  const issueSrcDir = join101(templateSrcDir, "ISSUE_TEMPLATE");
25070
25151
  if (existsSync100(issueSrcDir)) {
25071
- const issueFiles = readdirSync33(issueSrcDir);
25152
+ const issueFiles = readdirSync34(issueSrcDir);
25072
25153
  for (const file2 of issueFiles) {
25073
25154
  const dest = join101(issueTemplateDir, file2);
25074
25155
  if (existsSync100(dest)) {
@@ -47602,8 +47683,10 @@ init_errors3();
47602
47683
  // packages/core/src/phases/deps.ts
47603
47684
  init_src();
47604
47685
  init_errors3();
47605
- async function loadAllTasks3(_cwd, accessor) {
47606
- const { tasks: tasks2 } = await accessor.queryTasks({});
47686
+ init_data_accessor();
47687
+ async function loadAllTasks3(cwd, accessor) {
47688
+ const acc = accessor ?? await getAccessor(cwd);
47689
+ const { tasks: tasks2 } = await acc.queryTasks({});
47607
47690
  return tasks2;
47608
47691
  }
47609
47692
  function buildGraph(tasks2) {
@@ -51766,6 +51849,13 @@ var CAPABILITY_MATRIX = [
51766
51849
  mode: "native",
51767
51850
  preferredChannel: "either"
51768
51851
  },
51852
+ {
51853
+ domain: "admin",
51854
+ operation: "backup",
51855
+ gateway: "query",
51856
+ mode: "native",
51857
+ preferredChannel: "either"
51858
+ },
51769
51859
  {
51770
51860
  domain: "admin",
51771
51861
  operation: "backup",
@@ -56837,7 +56927,7 @@ async function getProjectStats(opts, accessor) {
56837
56927
  dbAnd(dbEq(tasksTable.status, "archived"), dbEq(tasksTable.archiveReason, "completed"))
56838
56928
  ).get();
56839
56929
  archivedCompleted = archivedDoneRow?.c ?? 0;
56840
- totalCompleted = (statusMap["done"] ?? 0) + archivedCompleted;
56930
+ totalCompleted = entries.filter(isComplete).length;
56841
56931
  } catch {
56842
56932
  totalCreated = entries.filter(isCreate).length;
56843
56933
  totalCompleted = entries.filter(isComplete).length;
@@ -57803,7 +57893,7 @@ async function auditData(projectRoot, opts) {
57803
57893
  // packages/core/src/system/backup.ts
57804
57894
  init_src();
57805
57895
  init_errors3();
57806
- import { existsSync as existsSync81, mkdirSync as mkdirSync18, readFileSync as readFileSync59, writeFileSync as writeFileSync11 } from "node:fs";
57896
+ import { existsSync as existsSync81, mkdirSync as mkdirSync18, readdirSync as readdirSync27, readFileSync as readFileSync59, writeFileSync as writeFileSync11 } from "node:fs";
57807
57897
  import { join as join84 } from "node:path";
57808
57898
  function createBackup2(projectRoot, opts) {
57809
57899
  const cleoDir = join84(projectRoot, ".cleo");
@@ -57896,7 +57986,7 @@ function restoreBackup(projectRoot, params) {
57896
57986
 
57897
57987
  // packages/core/src/system/cleanup.ts
57898
57988
  init_src();
57899
- import { existsSync as existsSync82, readdirSync as readdirSync27, readFileSync as readFileSync60, unlinkSync as unlinkSync5, writeFileSync as writeFileSync12 } from "node:fs";
57989
+ import { existsSync as existsSync82, readdirSync as readdirSync28, readFileSync as readFileSync60, unlinkSync as unlinkSync5, writeFileSync as writeFileSync12 } from "node:fs";
57900
57990
  import { join as join86 } from "node:path";
57901
57991
 
57902
57992
  // packages/core/src/audit-prune.ts
@@ -58013,10 +58103,10 @@ async function cleanupSystem(projectRoot, params) {
58013
58103
  case "backups": {
58014
58104
  const backupBaseDir = join86(cleoDir, "backups");
58015
58105
  if (existsSync82(backupBaseDir)) {
58016
- for (const typeDir of readdirSync27(backupBaseDir)) {
58106
+ for (const typeDir of readdirSync28(backupBaseDir)) {
58017
58107
  const fullDir = join86(backupBaseDir, typeDir);
58018
58108
  try {
58019
- for (const file2 of readdirSync27(fullDir)) {
58109
+ for (const file2 of readdirSync28(fullDir)) {
58020
58110
  if (file2.endsWith(".meta.json")) {
58021
58111
  const metaFilePath = join86(fullDir, file2);
58022
58112
  try {
@@ -58025,7 +58115,7 @@ async function cleanupSystem(projectRoot, params) {
58025
58115
  items.push(file2.replace(".meta.json", ""));
58026
58116
  if (!dryRun) {
58027
58117
  unlinkSync5(metaFilePath);
58028
- for (const bf of readdirSync27(fullDir)) {
58118
+ for (const bf of readdirSync28(fullDir)) {
58029
58119
  if (bf.includes(meta.backupId)) {
58030
58120
  try {
58031
58121
  unlinkSync5(join86(fullDir, bf));
@@ -58055,7 +58145,7 @@ async function cleanupSystem(projectRoot, params) {
58055
58145
  }
58056
58146
  const auditPattern = /^audit-log-.*\.json$/;
58057
58147
  if (existsSync82(cleoDir)) {
58058
- for (const file2 of readdirSync27(cleoDir)) {
58148
+ for (const file2 of readdirSync28(cleoDir)) {
58059
58149
  if (auditPattern.test(file2)) {
58060
58150
  items.push(file2);
58061
58151
  if (!dryRun) {
@@ -58111,7 +58201,7 @@ import { randomBytes as randomBytes12 } from "node:crypto";
58111
58201
  import {
58112
58202
  existsSync as existsSync84,
58113
58203
  mkdirSync as mkdirSync20,
58114
- readdirSync as readdirSync28,
58204
+ readdirSync as readdirSync29,
58115
58205
  readFileSync as readFileSync61,
58116
58206
  renameSync as renameSync6,
58117
58207
  unlinkSync as unlinkSync6,
@@ -60656,7 +60746,7 @@ __export(templates_exports, {
60656
60746
  });
60657
60747
 
60658
60748
  // packages/core/src/templates/parser.ts
60659
- import { existsSync as existsSync92, readdirSync as readdirSync29, readFileSync as readFileSync67 } from "fs";
60749
+ import { existsSync as existsSync92, readdirSync as readdirSync30, readFileSync as readFileSync67 } from "fs";
60660
60750
  import { join as join96 } from "path";
60661
60751
  import { parse as parseYaml } from "yaml";
60662
60752
  var SUFFIX_PATTERNS = ["_report", "_request", "_question"];
@@ -60731,7 +60821,7 @@ function parseIssueTemplates2(projectRoot) {
60731
60821
  }
60732
60822
  let files;
60733
60823
  try {
60734
- files = readdirSync29(templateDir).filter((f) => /\.ya?ml$/i.test(f) && f !== "config.yml");
60824
+ files = readdirSync30(templateDir).filter((f) => /\.ya?ml$/i.test(f) && f !== "config.yml");
60735
60825
  } catch (error40) {
60736
60826
  return {
60737
60827
  success: false,
@@ -61142,7 +61232,7 @@ ${markdown}`);
61142
61232
  }
61143
61233
 
61144
61234
  // packages/core/src/ui/command-registry.ts
61145
- import { existsSync as existsSync95, readdirSync as readdirSync30, readFileSync as readFileSync70 } from "node:fs";
61235
+ import { existsSync as existsSync95, readdirSync as readdirSync31, readFileSync as readFileSync70 } from "node:fs";
61146
61236
  import { basename as basename16, join as join98 } from "node:path";
61147
61237
  var CLEO_HEADER_START = "###CLEO";
61148
61238
  var CLEO_HEADER_END = "###END";
@@ -61227,7 +61317,7 @@ function parseCommandHeader(scriptPath) {
61227
61317
  function scanAllCommands(scriptsDir) {
61228
61318
  const registry2 = /* @__PURE__ */ new Map();
61229
61319
  if (!existsSync95(scriptsDir)) return registry2;
61230
- for (const file2 of readdirSync30(scriptsDir)) {
61320
+ for (const file2 of readdirSync31(scriptsDir)) {
61231
61321
  if (!file2.endsWith(".sh") && !file2.endsWith(".ts")) continue;
61232
61322
  const meta = parseCommandHeader(join98(scriptsDir, file2));
61233
61323
  if (meta) {
@@ -62169,12 +62259,12 @@ function calculateOrchestrationOverhead(orchestratorTokens, totalSubagentTokens,
62169
62259
  }
62170
62260
 
62171
62261
  // packages/core/src/validation/docs-sync.ts
62172
- import { existsSync as existsSync96, readdirSync as readdirSync31, readFileSync as readFileSync71 } from "node:fs";
62262
+ import { existsSync as existsSync96, readdirSync as readdirSync32, readFileSync as readFileSync71 } from "node:fs";
62173
62263
  import { join as join99 } from "node:path";
62174
62264
  function getScriptCommands(scriptsDir) {
62175
62265
  if (!existsSync96(scriptsDir)) return [];
62176
62266
  try {
62177
- return readdirSync31(scriptsDir).filter((f) => f.endsWith(".sh")).map((f) => f.replace(/\.sh$/, "")).sort();
62267
+ return readdirSync32(scriptsDir).filter((f) => f.endsWith(".sh")).map((f) => f.replace(/\.sh$/, "")).sort();
62178
62268
  } catch {
62179
62269
  return [];
62180
62270
  }
@@ -63552,12 +63642,12 @@ async function validateAndLog(taskId, manifestPath = DEFAULT_MANIFEST_PATH, comp
63552
63642
 
63553
63643
  // packages/core/src/validation/protocol-common.ts
63554
63644
  init_src();
63555
- import { existsSync as existsSync99, readdirSync as readdirSync32, readFileSync as readFileSync73 } from "node:fs";
63645
+ import { existsSync as existsSync99, readdirSync as readdirSync33, readFileSync as readFileSync73 } from "node:fs";
63556
63646
  function checkOutputFileExists(taskId, expectedDir, pattern) {
63557
63647
  if (!existsSync99(expectedDir)) return false;
63558
63648
  const filePattern = pattern ?? `${taskId}`;
63559
63649
  try {
63560
- const files = readdirSync32(expectedDir);
63650
+ const files = readdirSync33(expectedDir);
63561
63651
  return files.some((f) => f.includes(filePattern) && f.endsWith(".md"));
63562
63652
  } catch {
63563
63653
  return false;