@jamesaphoenix/tx-cli 0.5.0 → 0.5.8

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/cli.js +46 -6
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/claim.d.ts +2 -2
  4. package/dist/commands/claim.d.ts.map +1 -1
  5. package/dist/commands/claim.js +20 -1
  6. package/dist/commands/claim.js.map +1 -1
  7. package/dist/commands/cycle.d.ts.map +1 -1
  8. package/dist/commands/cycle.js +14 -3
  9. package/dist/commands/cycle.js.map +1 -1
  10. package/dist/commands/dashboard.d.ts.map +1 -1
  11. package/dist/commands/dashboard.js +151 -32
  12. package/dist/commands/dashboard.js.map +1 -1
  13. package/dist/commands/dashboard.test.js +117 -50
  14. package/dist/commands/dashboard.test.js.map +1 -1
  15. package/dist/commands/doc.d.ts +2 -1
  16. package/dist/commands/doc.d.ts.map +1 -1
  17. package/dist/commands/doc.js +193 -4
  18. package/dist/commands/doc.js.map +1 -1
  19. package/dist/commands/doctor.d.ts.map +1 -1
  20. package/dist/commands/doctor.js +32 -21
  21. package/dist/commands/doctor.js.map +1 -1
  22. package/dist/commands/group-context.d.ts +6 -0
  23. package/dist/commands/group-context.d.ts.map +1 -0
  24. package/dist/commands/group-context.js +42 -0
  25. package/dist/commands/group-context.js.map +1 -0
  26. package/dist/commands/scaffold.d.ts +52 -0
  27. package/dist/commands/scaffold.d.ts.map +1 -0
  28. package/dist/commands/scaffold.js +388 -0
  29. package/dist/commands/scaffold.js.map +1 -0
  30. package/dist/commands/trace.d.ts +15 -2
  31. package/dist/commands/trace.d.ts.map +1 -1
  32. package/dist/commands/trace.js +138 -18
  33. package/dist/commands/trace.js.map +1 -1
  34. package/dist/help.d.ts.map +1 -1
  35. package/dist/help.js +135 -8
  36. package/dist/help.js.map +1 -1
  37. package/dist/output.d.ts.map +1 -1
  38. package/dist/output.js +5 -1
  39. package/dist/output.js.map +1 -1
  40. package/package.json +7 -1
  41. package/dist/commands/orchestrator.d.ts +0 -11
  42. package/dist/commands/orchestrator.d.ts.map +0 -1
  43. package/dist/commands/orchestrator.js +0 -129
  44. package/dist/commands/orchestrator.js.map +0 -1
  45. package/dist/tx +0 -0
package/dist/cli.js CHANGED
@@ -7,7 +7,7 @@
7
7
  import { Effect, Cause, Option, Layer } from "effect";
8
8
  import { resolve } from "node:path";
9
9
  import { existsSync, mkdirSync, writeFileSync } from "node:fs";
10
- import { makeAppLayer, AgentServiceLive, CycleScanServiceLive } from "@jamesaphoenix/tx-core";
10
+ import { makeAppLayer, AgentServiceLive, CycleScanServiceLive, SqliteClient } from "@jamesaphoenix/tx-core";
11
11
  import { HELP_TEXT, commandHelp } from "./help.js";
12
12
  import { CliExitError } from "./cli-exit.js";
13
13
  import { CLI_VERSION } from "./version.js";
@@ -31,6 +31,9 @@ import { dashboard } from "./commands/dashboard.js";
31
31
  import { send, inbox, ack, ackAll, outboxPending, outboxGc } from "./commands/outbox.js";
32
32
  import { doc } from "./commands/doc.js";
33
33
  import { invariant } from "./commands/invariant.js";
34
+ import { groupContextSet, groupContextClear } from "./commands/group-context.js";
35
+ import { scaffoldClaude, scaffoldCodex, scaffoldWatchdog, parseWatchdogRuntimeMode, interactiveScaffold } from "./commands/scaffold.js";
36
+ import * as p from "@clack/prompts";
34
37
  // --- Argv parsing helpers ---
35
38
  function parseArgs(argv) {
36
39
  const args = argv.slice(2);
@@ -82,11 +85,46 @@ function flag(flags, ...names) {
82
85
  }
83
86
  // --- Commands registry ---
84
87
  const commands = {
85
- init: (_pos, _flags) => Effect.sync(() => {
86
- // Layer construction already creates db + runs migrations
87
- // Just confirm it exists
88
- console.log("Initialized tx database");
89
- console.log(" Tables: tasks, task_dependencies, compaction_log, schema_version");
88
+ init: (_pos, initFlags) => Effect.gen(function* () {
89
+ const db = yield* SqliteClient;
90
+ const tables = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%' AND name NOT LIKE '%_fts%' ORDER BY name").all();
91
+ const projectDir = process.cwd();
92
+ p.intro("tx init");
93
+ p.log.success(`Database ready (${tables.length} tables, SQLite WAL mode)`);
94
+ p.log.info(`${projectDir}/.tx/tasks.db`);
95
+ // Non-interactive mode: explicit init flags skip prompts
96
+ const forceClaude = flag(initFlags, "claude");
97
+ const forceCodex = flag(initFlags, "codex");
98
+ const forceWatchdog = flag(initFlags, "watchdog");
99
+ if (initFlags["watchdog-runtime"] !== undefined && !forceWatchdog) {
100
+ throw new Error("--watchdog-runtime requires --watchdog.");
101
+ }
102
+ const watchdogRuntimeMode = parseWatchdogRuntimeMode(initFlags["watchdog-runtime"]);
103
+ if (forceClaude || forceCodex || forceWatchdog) {
104
+ const results = [];
105
+ if (forceClaude) {
106
+ const r = scaffoldClaude(projectDir);
107
+ results.push(...r.copied.map(f => `+ ${f}`), ...r.skipped.map(f => `~ ${f} (exists)`));
108
+ }
109
+ if (forceCodex) {
110
+ const r = scaffoldCodex(projectDir);
111
+ results.push(...r.copied.map(f => `+ ${f}`), ...r.skipped.map(f => `~ ${f} (exists)`));
112
+ }
113
+ if (forceWatchdog) {
114
+ const r = scaffoldWatchdog(projectDir, { runtimeMode: watchdogRuntimeMode });
115
+ results.push(...r.copied.map(f => `+ ${f}`), ...r.skipped.map(f => `~ ${f} (exists)`));
116
+ for (const warning of r.warnings) {
117
+ p.log.warn(warning);
118
+ }
119
+ }
120
+ if (results.length > 0)
121
+ p.note(results.join("\n"), "Files");
122
+ p.outro("Done! Run tx ready to get started.");
123
+ return;
124
+ }
125
+ // Interactive mode
126
+ yield* Effect.tryPromise(() => interactiveScaffold(projectDir, { watchdogRuntimeMode }));
127
+ p.outro("Done! Run tx ready to get started.");
90
128
  }),
91
129
  add,
92
130
  list,
@@ -105,6 +143,8 @@ const commands = {
105
143
  context,
106
144
  learn,
107
145
  recall,
146
+ "group-context:set": groupContextSet,
147
+ "group-context:clear": groupContextClear,
108
148
  // Attempt commands
109
149
  try: tryAttempt,
110
150
  attempts,
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7F,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,kBAAkB;AAClB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC5F,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC5I,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACxF,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,+BAA+B;AAE/B,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1B,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAqC,EAAE,CAAA;IAElD,wFAAwF;IACxF,8EAA8E;IAC9E,SAAS,WAAW,CAAC,GAAW,EAAE,gBAAwB;QACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;QACrB,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;QAC1B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/C,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;YACjB,OAAO,CAAC,CAAA;QACV,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;QACjB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,wEAAwE;IACxE,IAAI,OAAO,GAAG,MAAM,CAAA;IACpB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9B,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAA;YAChB,MAAK;QACP,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QAC/B,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9B,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAA;AACvC,CAAC;AAED,SAAS,IAAI,CAAC,KAAuC,EAAE,GAAG,KAAe;IACvE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED,4BAA4B;AAE5B,MAAM,QAAQ,GAA6H;IACzI,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CACrB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACf,0DAA0D;QAC1D,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;QACtC,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAA;IACnF,CAAC,CAAC;IAEJ,GAAG;IACH,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,MAAM;IACN,IAAI;IACJ,KAAK;IACL,MAAM,EAAE,UAAU;IAClB,KAAK;IACL,OAAO;IACP,QAAQ;IACR,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,OAAO;IACP,KAAK;IACL,MAAM;IAEN,mBAAmB;IACnB,GAAG,EAAE,UAAU;IACf,QAAQ;IAER,qCAAqC;IACrC,cAAc,EAAE,WAAW;IAC3B,iBAAiB,EAAE,cAAc;IACjC,iBAAiB,EAAE,cAAc;IACjC,kBAAkB,EAAE,eAAe;IACnC,gBAAgB,EAAE,aAAa;IAE/B,uBAAuB;IACvB,KAAK;IAEL,2BAA2B;IAC3B,KAAK;IACL,eAAe,EAAE,YAAY;IAC7B,aAAa,EAAE,UAAU;IAEzB,mCAAmC;IACnC,KAAK;IAEL,gCAAgC;IAChC,OAAO;IACP,OAAO;IAEP,qBAAqB;IACrB,QAAQ;IAER,sBAAsB;IACtB,MAAM;IAEN,gBAAgB;IAChB,KAAK;IAEL,kBAAkB;IAClB,IAAI;IAEJ,oBAAoB;IACpB,SAAS;IAET,4CAA4C;IAC5C,IAAI;IACJ,KAAK;IACL,GAAG;IACH,SAAS,EAAE,MAAM;IACjB,gBAAgB,EAAE,aAAa;IAC/B,WAAW,EAAE,QAAQ;IAErB,2CAA2C;IAC3C,GAAG;IACH,SAAS;IAET,eAAe;IACf,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CACZ,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACf,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAA;YACpC,OAAM;QACR,CAAC;QACD,8DAA8D;QAC9D,IAAI,UAAU,KAAK,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,MAAM,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;YACtC,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;gBACvC,OAAM;YACR,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACxB,CAAC,CAAC;CACL,CAAA;AAED,eAAe;AAEf,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAE3E,wDAAwD;AACxD,IAAI,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,OAAO,WAAW,EAAE,CAAC,CAAA;IACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,6FAA6F;AAC7F,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC;IACxD,kFAAkF;IAClF,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,MAAM,aAAa,GAAG,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC7C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,MAAM,aAAa,GAAG,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC7C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,OAAO,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC5C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAG,aAAa,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAClD,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,gDAAgD;IAChD,IAAI,OAAO,KAAK,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,+BAA+B;IAC/B,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,2CAA2C;AAC3C,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;IAChC,oFAAoF;IACpF,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC7C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,UAAU,KAAK,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,aAAa,GAAG,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,QAAQ,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC7C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,OAAO,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC5C,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,UAAU,KAAK,WAAW,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,MAAM,aAAa,GAAG,aAAa,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAClD,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,IAAI,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAA;IACtC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACxB,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,2DAA2D;AAC3D,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;IAC7B,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACjE,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAA;IAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;AACjC,IAAI,CAAC,OAAO,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAA;IAC5C,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,MAAM,MAAM,GAAG,OAAO,WAAW,CAAC,EAAE,KAAK,QAAQ;IAC/C,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;IACzB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;AAE7C,oCAAoC;AACpC,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAA;IACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACrC,CAAC;IACD,sCAAsC;IACtC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IAChD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/B,aAAa,CAAC,aAAa,EAAE,wCAAwC,CAAC,CAAA;IACxE,CAAC;AACH,CAAC;AAED,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;AAClC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;AAEhD,8DAA8D;AAC9D,MAAM,SAAS,GAAG,OAAO,KAAK,OAAO;IACnC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACpG,CAAC,CAAC,KAAK,CAAA;AAET,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAiC,CAAA;AAEnF,kFAAkF;AAClF,IAAI,SAAS,GAAG,CAAC,CAAA;AAEjB,kEAAkE;AAClE,MAAM,cAAc,GAA2B;IAC7C,iBAAiB,EAAE,CAAC;IACpB,qBAAqB,EAAE,CAAC;IACxB,mBAAmB,EAAE,CAAC;IACtB,kBAAkB,EAAE,CAAC;IACrB,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,CAAC;IAC1B,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,iBAAiB,EAAE,CAAC;IACpB,wBAAwB,EAAE,CAAC;IAC3B,0BAA0B,EAAE,CAAC;IAC7B,oBAAoB,EAAE,CAAC;IACvB,wBAAwB,EAAE,CAAC;IAC3B,gBAAgB,EAAE,CAAC;IACnB,cAAc,EAAE,CAAC;IACjB,mBAAmB,EAAE,CAAC;IACtB,sBAAsB,EAAE,CAAC;CAC1B,CAAA;AAED,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI;AAC3B,+DAA+D;AAC/D,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAc,EAAE,EAAE;IACjC,MAAM,GAAG,GAAG,KAA4C,CAAA;IACxD,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAA;IAE1B,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;QAC7D,IAAI,GAAG,KAAK,kBAAkB,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,iFAAiF,CAAC,CAAA;QAClG,CAAC;QACD,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpC,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IAED,IAAI,GAAG,KAAK,kBAAkB,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,kCAAkC,CAAC,CAAA;QAChE,OAAO,CAAC,KAAK,CAAC,iFAAiF,CAAC,CAAA;QAChG,SAAS,GAAG,CAAC,CAAA;QACb,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACvD,SAAS,GAAG,CAAC,CAAA;IACb,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAC;AACF,mEAAmE;AACnE,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACxC,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,KAAK,YAAY,YAAY,EAAE,CAAC;QACxE,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAA;QAChC,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IACD,qCAAqC;IACrC,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC9C,SAAS,GAAG,CAAC,CAAA;IACb,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAC,CACH,CAAA;AAED,qEAAqE;AACrE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;IACnC,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAC9C,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACxB,2DAA2D;IAC3D,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAA;IAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * Lease-based task claims for worker coordination.
7
7
  */
8
8
  import { Effect } from "effect";
9
- import { ClaimService } from "@jamesaphoenix/tx-core";
9
+ import { ClaimService, WorkerRepository } from "@jamesaphoenix/tx-core";
10
10
  import { type Flags } from "../utils/parse.js";
11
11
  /**
12
12
  * Claim a task for a worker with a lease.
@@ -17,7 +17,7 @@ import { type Flags } from "../utils/parse.js";
17
17
  * tx claim tx-abc123 worker-def456
18
18
  * tx claim tx-abc123 worker-def456 --lease 60
19
19
  */
20
- export declare const claim: (pos: string[], flags: Flags) => Effect.Effect<void, import("@jamesaphoenix/tx-core").DatabaseError | import("@jamesaphoenix/tx-core").TaskNotFoundError | import("@jamesaphoenix/tx-core").AlreadyClaimedError, ClaimService>;
20
+ export declare const claim: (pos: string[], flags: Flags) => Effect.Effect<void, import("@jamesaphoenix/tx-core").DatabaseError | import("@jamesaphoenix/tx-core").TaskNotFoundError | import("@jamesaphoenix/tx-core").AlreadyClaimedError, WorkerRepository | ClaimService>;
21
21
  /**
22
22
  * Release a claim on a task.
23
23
  *
@@ -1 +1 @@
1
- {"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../../src/commands/claim.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,OAAO,EAAE,KAAK,KAAK,EAAkC,MAAM,mBAAmB,CAAA;AAE9E;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,MAAM,EAAE,EAAE,OAAO,KAAK,kMA0B7C,CAAA;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,EAAE,EAAE,OAAO,KAAK,oMAmBpD,CAAA;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,EAAE,OAAO,KAAK,qTAqBlD,CAAA"}
1
+ {"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../../src/commands/claim.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEvE,OAAO,EAAE,KAAK,KAAK,EAAkC,MAAM,mBAAmB,CAAA;AAE9E;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,MAAM,EAAE,EAAE,OAAO,KAAK,qNA6C7C,CAAA;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,EAAE,EAAE,OAAO,KAAK,oMAmBpD,CAAA;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,EAAE,OAAO,KAAK,qTAqBlD,CAAA"}
@@ -6,7 +6,8 @@
6
6
  * Lease-based task claims for worker coordination.
7
7
  */
8
8
  import { Effect } from "effect";
9
- import { ClaimService } from "@jamesaphoenix/tx-core";
9
+ import * as os from "node:os";
10
+ import { ClaimService, WorkerRepository } from "@jamesaphoenix/tx-core";
10
11
  import { toJson } from "../output.js";
11
12
  import { flag, parseIntOpt, parseTaskId } from "../utils/parse.js";
12
13
  /**
@@ -31,6 +32,24 @@ export const claim = (pos, flags) => Effect.gen(function* () {
31
32
  }
32
33
  const taskId = parseTaskId(rawTaskId);
33
34
  const leaseMinutes = parseIntOpt(flags, "lease", "lease");
35
+ // Ensure worker exists for FK integrity when claiming manually via CLI.
36
+ const workerRepo = yield* WorkerRepository;
37
+ const existingWorker = yield* workerRepo.findById(workerId);
38
+ if (!existingWorker) {
39
+ const now = new Date();
40
+ yield* workerRepo.insert({
41
+ id: workerId,
42
+ name: workerId,
43
+ hostname: os.hostname(),
44
+ pid: process.pid,
45
+ status: "idle",
46
+ registeredAt: now,
47
+ lastHeartbeatAt: now,
48
+ currentTaskId: null,
49
+ capabilities: ["tx-cli"],
50
+ metadata: { source: "tx claim" },
51
+ });
52
+ }
34
53
  const svc = yield* ClaimService;
35
54
  const claim = yield* svc.claim(taskId, workerId, leaseMinutes);
36
55
  if (flag(flags, "json")) {
@@ -1 +1 @@
1
- {"version":3,"file":"claim.js","sourceRoot":"","sources":["../../src/commands/claim.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAc,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE9E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAa,EAAE,KAAY,EAAE,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IAEvB,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAA;QACnF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACjB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACzB,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAA;QACvE,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;IAErC,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAEzD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;IAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;IAE9D,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC5B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,MAAM,eAAe,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;QAChE,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;IACvE,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAa,EAAE,KAAY,EAAE,EAAE,CAC1D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IAEvB,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAA;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;IAErC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;IAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAEpC,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;IAC3D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,gBAAgB,QAAQ,EAAE,CAAC,CAAA;IAChE,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAa,EAAE,KAAY,EAAE,EAAE,CACxD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IAEvB,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;IAErC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAElD,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IAC9B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,MAAM,UAAU,CAAC,CAAA;QACtD,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACpE,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,YAAY,KAAK,CAAC,CAAA;IACvD,CAAC;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"claim.js","sourceRoot":"","sources":["../../src/commands/claim.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cycle.d.ts","sourceRoot":"","sources":["../../src/commands/cycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAO/B,8BAA8B;AAC9B,eAAO,MAAM,KAAK,GAChB,MAAM,MAAM,EAAE,EACd,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KACtC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAwHtC,CAAA"}
1
+ {"version":3,"file":"cycle.d.ts","sourceRoot":"","sources":["../../src/commands/cycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAO/B,8BAA8B;AAC9B,eAAO,MAAM,KAAK,GAChB,MAAM,MAAM,EAAE,EACd,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KACtC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAoItC,CAAA"}
@@ -62,13 +62,23 @@ export const cycle = (_pos, flags) => {
62
62
  console.log(` Model: ${model}, Fix: ${doFix}, Scan-only: ${scanOnly}, Dry-run: ${dryRun}`);
63
63
  console.log();
64
64
  }
65
+ let firstObservedCycle;
66
+ const displayCycle = (reportedCycle) => {
67
+ if (firstObservedCycle === undefined) {
68
+ firstObservedCycle = reportedCycle;
69
+ }
70
+ const localCycle = reportedCycle - firstObservedCycle + 1;
71
+ return localCycle > 0 ? localCycle : reportedCycle;
72
+ };
65
73
  const onProgress = jsonOutput
66
74
  ? undefined
67
75
  : (event) => {
68
76
  switch (event.type) {
69
- case "cycle_start":
70
- console.log(`=== Cycle ${event.cycle}/${event.totalCycles}: "${event.name}" ===`);
77
+ case "cycle_start": {
78
+ const cycle = displayCycle(event.cycle);
79
+ console.log(`=== Cycle ${cycle}/${event.totalCycles}: "${event.name}" ===`);
71
80
  break;
81
+ }
72
82
  case "scan_complete":
73
83
  console.log(` Round ${event.round}: Found ${event.findings} findings in ${(event.durationMs / 1000).toFixed(1)}s`);
74
84
  break;
@@ -83,7 +93,8 @@ export const cycle = (_pos, flags) => {
83
93
  break;
84
94
  case "cycle_complete": {
85
95
  const r = event.result;
86
- console.log(`\n Cycle ${r.cycle} complete: ${r.rounds} rounds, ${r.totalNewIssues} new issues, final loss ${r.finalLoss}${r.converged ? " -- CONVERGED" : ""}`);
96
+ const cycle = displayCycle(r.cycle);
97
+ console.log(`\n Cycle ${cycle} complete: ${r.rounds} rounds, ${r.totalNewIssues} new issues, final loss ${r.finalLoss}${r.converged ? " -- CONVERGED" : ""}`);
87
98
  break;
88
99
  }
89
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cycle.js","sourceRoot":"","sources":["../../src/commands/cycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cycle.js","sourceRoot":"","sources":["../../src/commands/cycle.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/commands/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAI/B,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,mBAAmB,CAAA;AAyCzD,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,EAAE,EAAE,OAAO,KAAK,sCAiElD,CAAA"}
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/commands/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAI/B,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,mBAAmB,CAAA;AAuFzD,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,EAAE,EAAE,OAAO,KAAK,sCA2IlD,CAAA"}
@@ -15,18 +15,60 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
15
15
  const PROJECT_ROOT = resolve(__dirname, "../../../..");
16
16
  const API_SERVER_ENTRY = resolve(PROJECT_ROOT, "apps/dashboard/server/index.ts");
17
17
  const DASHBOARD_DIR = resolve(PROJECT_ROOT, "apps/dashboard");
18
- function killPort(port) {
18
+ function getPortPids(port) {
19
19
  try {
20
- const pid = execSync(`lsof -ti :${port} 2>/dev/null`, { encoding: "utf-8" }).trim();
21
- if (pid) {
22
- console.log(`Killing existing process on port ${port} (PID ${pid})`);
23
- execSync(`kill ${pid} 2>/dev/null`);
24
- }
20
+ const raw = execSync(`lsof -ti :${port} 2>/dev/null`, { encoding: "utf-8" }).trim();
21
+ if (!raw)
22
+ return [];
23
+ return [...new Set(raw.split(/\s+/).filter(Boolean))];
25
24
  }
26
25
  catch {
27
- // No process on port — that's fine
26
+ return [];
27
+ }
28
+ }
29
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
30
+ async function waitForPortToClear(port, timeoutMs) {
31
+ const startedAt = Date.now();
32
+ while (Date.now() - startedAt < timeoutMs) {
33
+ if (getPortPids(port).length === 0)
34
+ return true;
35
+ await sleep(100);
36
+ }
37
+ return getPortPids(port).length === 0;
38
+ }
39
+ function killPids(pids, signal) {
40
+ for (const pid of pids) {
41
+ try {
42
+ execSync(`kill -${signal} ${pid} 2>/dev/null`);
43
+ }
44
+ catch {
45
+ // Ignore per-PID failures
46
+ }
47
+ }
48
+ }
49
+ async function killPort(port) {
50
+ const pids = getPortPids(port);
51
+ if (pids.length === 0)
52
+ return;
53
+ const label = pids.length === 1 ? "PID" : "PIDs";
54
+ console.log(`Killing existing process on port ${port} (${label} ${pids.join(", ")})`);
55
+ killPids(pids, "TERM");
56
+ if (await waitForPortToClear(port, 2000))
57
+ return;
58
+ const remainingPids = getPortPids(port);
59
+ if (remainingPids.length > 0) {
60
+ const remainingLabel = remainingPids.length === 1 ? "PID" : "PIDs";
61
+ console.log(`Port ${port} is still occupied, forcing shutdown (${remainingLabel} ${remainingPids.join(", ")})`);
62
+ killPids(remainingPids, "KILL");
63
+ }
64
+ if (!(await waitForPortToClear(port, 3000))) {
65
+ throw new Error(`Failed to free port ${port}. Stop the process manually or run with --port.`);
28
66
  }
29
67
  }
68
+ function extractViteLocalUrl(output) {
69
+ const match = output.match(/Local:\s*(https?:\/\/[^\s]+)/);
70
+ return match?.[1] ?? null;
71
+ }
30
72
  function openBrowser(url) {
31
73
  try {
32
74
  execSync(`open -a "Brave Browser" "${url}" 2>/dev/null`);
@@ -48,20 +90,25 @@ function openBrowser(url) {
48
90
  console.log(`Open ${url} in your browser`);
49
91
  }
50
92
  }
51
- export const dashboard = (_pos, flags) => Effect.sync(() => {
93
+ export const dashboard = (_pos, flags) => Effect.promise(async () => {
52
94
  const apiPort = Number(opt(flags, "port")) || 3001;
53
95
  const vitePort = 5173;
54
96
  const noOpen = flag(flags, "no-open");
97
+ // Resolve DB path from CWD (same logic as cli.ts)
98
+ const dbPath = typeof flags.db === "string"
99
+ ? resolve(flags.db)
100
+ : resolve(process.cwd(), ".tx", "tasks.db");
55
101
  console.log("Starting tx dashboard...");
102
+ console.log(`Database: ${dbPath}`);
56
103
  // Kill existing processes on our ports
57
- killPort(apiPort);
58
- killPort(vitePort);
104
+ await killPort(apiPort);
105
+ await killPort(vitePort);
59
106
  const runtime = process.argv[0];
60
- // Start API server
107
+ // Start API server — pass TX_DB_PATH so it uses the caller's database
61
108
  console.log(`Starting API server on port ${apiPort}...`);
62
109
  const apiProc = spawn(runtime, [API_SERVER_ENTRY], {
63
110
  stdio: "pipe",
64
- env: { ...process.env, PORT: String(apiPort) },
111
+ env: { ...process.env, PORT: String(apiPort), TX_DB_PATH: dbPath },
65
112
  detached: false,
66
113
  });
67
114
  // Start Vite dev server
@@ -69,37 +116,109 @@ export const dashboard = (_pos, flags) => Effect.sync(() => {
69
116
  const viteProc = spawn(runtime, ["run", "dev"], {
70
117
  cwd: DASHBOARD_DIR,
71
118
  stdio: "pipe",
119
+ env: { ...process.env, TX_DASHBOARD_API_PORT: String(apiPort) },
72
120
  detached: false,
73
121
  });
74
122
  const children = [apiProc, viteProc];
123
+ let dashboardUrl = `http://localhost:${vitePort}`;
124
+ let announced = false;
125
+ let openedUrl = null;
126
+ let shuttingDown = false;
127
+ let fallbackAnnounceTimer;
128
+ const announce = () => {
129
+ if (announced)
130
+ return;
131
+ announced = true;
132
+ if (!noOpen) {
133
+ openBrowser(dashboardUrl);
134
+ openedUrl = dashboardUrl;
135
+ }
136
+ console.log("");
137
+ console.log(` API: http://localhost:${apiPort}`);
138
+ console.log(` Dashboard: ${dashboardUrl}`);
139
+ console.log("");
140
+ console.log("Press Ctrl+C to stop.");
141
+ };
142
+ const onDetectedDashboardUrl = (viteUrl) => {
143
+ const changed = dashboardUrl !== viteUrl;
144
+ dashboardUrl = viteUrl;
145
+ if (!announced) {
146
+ announce();
147
+ return;
148
+ }
149
+ if (changed) {
150
+ console.log(`\n Dashboard URL updated: ${dashboardUrl}`);
151
+ if (!noOpen && openedUrl !== dashboardUrl) {
152
+ openBrowser(dashboardUrl);
153
+ openedUrl = dashboardUrl;
154
+ }
155
+ }
156
+ };
75
157
  // Forward output
76
158
  apiProc.stdout?.on("data", (d) => process.stdout.write(`[api] ${d}`));
77
159
  apiProc.stderr?.on("data", (d) => process.stderr.write(`[api] ${d}`));
78
- viteProc.stdout?.on("data", (d) => process.stdout.write(`[vite] ${d}`));
79
- viteProc.stderr?.on("data", (d) => process.stderr.write(`[vite] ${d}`));
80
- // Handle child exits
81
- for (const child of children) {
82
- child.on("error", (err) => console.error(`Process error: ${err.message}`));
83
- }
160
+ const onViteData = (prefix) => (d) => {
161
+ const text = d.toString();
162
+ const viteUrl = extractViteLocalUrl(text);
163
+ if (viteUrl) {
164
+ onDetectedDashboardUrl(viteUrl);
165
+ }
166
+ const sink = prefix === "stdout" ? process.stdout : process.stderr;
167
+ sink.write(`[vite] ${text}`);
168
+ };
169
+ viteProc.stdout?.on("data", onViteData("stdout"));
170
+ viteProc.stderr?.on("data", onViteData("stderr"));
84
171
  // Cleanup on exit
85
- const cleanup = () => {
172
+ const cleanup = (exitCode) => {
173
+ if (shuttingDown)
174
+ return;
175
+ shuttingDown = true;
176
+ if (fallbackAnnounceTimer)
177
+ clearTimeout(fallbackAnnounceTimer);
86
178
  console.log("\nShutting down dashboard...");
87
179
  for (const child of children) {
88
- child.kill();
180
+ if (!child.killed)
181
+ child.kill("SIGTERM");
89
182
  }
183
+ setTimeout(() => {
184
+ for (const child of children) {
185
+ if (!child.killed)
186
+ child.kill("SIGKILL");
187
+ }
188
+ process.exit(exitCode);
189
+ }, 300).unref();
90
190
  };
91
- process.on("SIGINT", () => { cleanup(); process.exit(0); });
92
- process.on("SIGTERM", () => { cleanup(); process.exit(0); });
93
- // Wait for servers then open browser
94
- setTimeout(() => {
95
- if (!noOpen) {
96
- openBrowser(`http://localhost:${vitePort}`);
191
+ const onUnexpectedExit = (name, code, signal) => {
192
+ if (shuttingDown)
193
+ return;
194
+ const detail = code === null ? `signal ${signal ?? "unknown"}` : `code ${code}`;
195
+ console.error(`\n${name} exited unexpectedly (${detail}).`);
196
+ if (name === "API server") {
197
+ console.error("Dashboard API is unavailable, stopping the dashboard.");
97
198
  }
98
- console.log("");
99
- console.log(` API: http://localhost:${apiPort}`);
100
- console.log(` Dashboard: http://localhost:${vitePort}`);
101
- console.log("");
102
- console.log("Press Ctrl+C to stop.");
103
- }, 3000);
199
+ cleanup(code === null || code === 0 ? 1 : code);
200
+ };
201
+ // Handle child exits
202
+ apiProc.on("error", (err) => {
203
+ if (shuttingDown)
204
+ return;
205
+ console.error(`API server process error: ${err.message}`);
206
+ cleanup(1);
207
+ });
208
+ viteProc.on("error", (err) => {
209
+ if (shuttingDown)
210
+ return;
211
+ console.error(`Vite process error: ${err.message}`);
212
+ cleanup(1);
213
+ });
214
+ apiProc.on("exit", (code, signal) => onUnexpectedExit("API server", code, signal));
215
+ viteProc.on("exit", (code, signal) => onUnexpectedExit("Vite dev server", code, signal));
216
+ process.on("SIGINT", () => cleanup(0));
217
+ process.on("SIGTERM", () => cleanup(0));
218
+ // Fallback: announce even if we didn't parse Vite "Local" line yet.
219
+ fallbackAnnounceTimer = setTimeout(() => {
220
+ if (!shuttingDown)
221
+ announce();
222
+ }, 6000);
104
223
  });
105
224
  //# sourceMappingURL=dashboard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/commands/dashboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/commands/dashboard.ts"],"names":[],"mappings":"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"}