@cleocode/cleo 2026.4.64 → 2026.4.65

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/cli/index.js CHANGED
@@ -13674,6 +13674,7 @@ __export(tasks_schema_exports, {
13674
13674
  ADR_STATUSES: () => ADR_STATUSES,
13675
13675
  AGENT_INSTANCE_STATUSES: () => AGENT_INSTANCE_STATUSES2,
13676
13676
  AGENT_TYPES: () => AGENT_TYPES2,
13677
+ BACKGROUND_JOB_STATUSES: () => BACKGROUND_JOB_STATUSES,
13677
13678
  EXTERNAL_LINK_TYPES: () => EXTERNAL_LINK_TYPES,
13678
13679
  GATE_STATUSES: () => GATE_STATUSES,
13679
13680
  LIFECYCLE_EVIDENCE_TYPES: () => LIFECYCLE_EVIDENCE_TYPES,
@@ -13699,6 +13700,7 @@ __export(tasks_schema_exports, {
13699
13700
  agentInstances: () => agentInstances,
13700
13701
  architectureDecisions: () => architectureDecisions,
13701
13702
  auditLog: () => auditLog,
13703
+ backgroundJobs: () => backgroundJobs,
13702
13704
  externalTaskLinks: () => externalTaskLinks,
13703
13705
  isValidStatus: () => isValidStatus,
13704
13706
  lifecycleEvidence: () => lifecycleEvidence,
@@ -13721,7 +13723,7 @@ __export(tasks_schema_exports, {
13721
13723
  warpChains: () => warpChains
13722
13724
  });
13723
13725
  import { sql as sql6 } from "drizzle-orm";
13724
- var TASK_PRIORITIES, TASK_TYPES, TASK_SIZES, LIFECYCLE_STAGE_NAMES, LIFECYCLE_GATE_RESULTS, LIFECYCLE_EVIDENCE_TYPES, TOKEN_USAGE_METHODS, TOKEN_USAGE_CONFIDENCE, TOKEN_USAGE_TRANSPORTS, TASK_RELATION_TYPES, LIFECYCLE_TRANSITION_TYPES, EXTERNAL_LINK_TYPES, SYNC_DIRECTIONS, tasks, taskDependencies, taskRelations, sessions, taskWorkHistory, lifecyclePipelines, lifecycleStages, lifecycleGateResults, lifecycleEvidence, lifecycleTransitions, manifestEntries, pipelineManifest, releaseManifests, schemaMeta, auditLog, tokenUsage, architectureDecisions, adrTaskLinks, adrRelations, externalTaskLinks, statusRegistryTable;
13726
+ var TASK_PRIORITIES, TASK_TYPES, TASK_SIZES, LIFECYCLE_STAGE_NAMES, LIFECYCLE_GATE_RESULTS, LIFECYCLE_EVIDENCE_TYPES, TOKEN_USAGE_METHODS, TOKEN_USAGE_CONFIDENCE, TOKEN_USAGE_TRANSPORTS, TASK_RELATION_TYPES, LIFECYCLE_TRANSITION_TYPES, EXTERNAL_LINK_TYPES, SYNC_DIRECTIONS, tasks, taskDependencies, taskRelations, sessions, taskWorkHistory, lifecyclePipelines, lifecycleStages, lifecycleGateResults, lifecycleEvidence, lifecycleTransitions, manifestEntries, pipelineManifest, releaseManifests, schemaMeta, auditLog, tokenUsage, architectureDecisions, adrTaskLinks, adrRelations, externalTaskLinks, BACKGROUND_JOB_STATUSES, backgroundJobs, statusRegistryTable;
13725
13727
  var init_tasks_schema = __esm({
13726
13728
  "packages/core/src/store/tasks-schema.ts"() {
13727
13729
  "use strict";
@@ -14278,6 +14280,45 @@ var init_tasks_schema = __esm({
14278
14280
  )
14279
14281
  ]
14280
14282
  );
14283
+ BACKGROUND_JOB_STATUSES = [
14284
+ "pending",
14285
+ "running",
14286
+ "complete",
14287
+ "failed",
14288
+ "cancelled",
14289
+ "orphaned"
14290
+ ];
14291
+ backgroundJobs = sqliteTable(
14292
+ "background_jobs",
14293
+ {
14294
+ /** Unique job identifier (UUID v4). */
14295
+ id: text("id").primaryKey(),
14296
+ /** Operation name, e.g. "nexus.analyze" or "tasks.sync.reconcile". */
14297
+ operation: text("operation").notNull(),
14298
+ /** Current lifecycle status. */
14299
+ status: text("status", { enum: BACKGROUND_JOB_STATUSES }).notNull().default("pending"),
14300
+ /** When the job was created (ms epoch). */
14301
+ startedAt: integer("started_at").notNull(),
14302
+ /** When the job finished (ms epoch); NULL while running. */
14303
+ completedAt: integer("completed_at"),
14304
+ /** JSON-serialised result payload; NULL on failure or while running. */
14305
+ result: text("result"),
14306
+ /** Human-readable error message; NULL on success or while running. */
14307
+ error: text("error"),
14308
+ /** Execution progress 0-100; NULL until progress is reported. */
14309
+ progress: integer("progress"),
14310
+ /** Last heartbeat timestamp (ms epoch). */
14311
+ heartbeatAt: integer("heartbeat_at").notNull(),
14312
+ /** Agent or session ID that claimed this job; NULL if unclaimed. */
14313
+ claimedBy: text("claimed_by")
14314
+ },
14315
+ (table) => [
14316
+ index("idx_background_jobs_status").on(table.status),
14317
+ index("idx_background_jobs_operation").on(table.operation),
14318
+ index("idx_background_jobs_claimed_by").on(table.claimedBy),
14319
+ index("idx_background_jobs_started_at").on(table.startedAt)
14320
+ ]
14321
+ );
14281
14322
  statusRegistryTable = sqliteTable(
14282
14323
  "status_registry",
14283
14324
  {