pm-orchestrator-runner 1.0.14 → 1.0.16

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.
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/config/namespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/config/namespace.ts"],"names":[],"mappings":"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"}
@@ -1,41 +1,16 @@
1
1
  /**
2
- * Queue Module
2
+ * Queue Module (v2)
3
3
  * Per spec/20_QUEUE_STORE.md
4
4
  *
5
+ * v2 Changes:
6
+ * - Single fixed table: pm-runner-queue
7
+ * - Namespace is a required config field
8
+ * - Runner heartbeat support
9
+ *
5
10
  * Exports:
6
11
  * - QueueStore: DynamoDB-backed queue storage
7
12
  * - QueuePoller: Polling and task execution
8
- * - createNamespacedQueueStore: Factory for namespace-separated QueueStore
9
13
  */
10
- export { QueueStore, QueueStoreConfig, QueueItem, QueueItemStatus, ClaimResult, TaskGroupSummary, StatusUpdateResult, VALID_STATUS_TRANSITIONS, isValidStatusTransition, } from './queue-store';
14
+ export { QueueStore, QueueStoreConfig, QueueItem, QueueItemStatus, ClaimResult, TaskGroupSummary, StatusUpdateResult, NamespaceSummary, RunnerRecord, RunnerStatus, VALID_STATUS_TRANSITIONS, isValidStatusTransition, QUEUE_TABLE_NAME, RUNNERS_TABLE_NAME, } from './queue-store';
11
15
  export { QueuePoller, QueuePollerConfig, QueuePollerState, QueuePollerEvents, TaskExecutor, } from './queue-poller';
12
- import { QueueStore, QueueStoreConfig } from './queue-store';
13
- /**
14
- * Namespace configuration for QueueStore
15
- * Per spec/21_STABLE_DEV.md
16
- */
17
- export interface NamespaceQueueConfig {
18
- /** Namespace name (e.g., 'stable', 'dev') */
19
- namespace: string;
20
- /** Table name derived from namespace */
21
- tableName: string;
22
- }
23
- /**
24
- * Create a QueueStore instance with namespace separation
25
- * Per spec/21_STABLE_DEV.md
26
- *
27
- * @param namespaceConfig - Namespace configuration with tableName
28
- * @param storeConfig - Optional additional QueueStore configuration
29
- * @returns Configured QueueStore instance
30
- *
31
- * @example
32
- * ```typescript
33
- * const namespaceConfig = buildNamespaceConfig({ namespace: 'dev', projectRoot: '/path' });
34
- * const store = createNamespacedQueueStore({
35
- * namespace: namespaceConfig.namespace,
36
- * tableName: namespaceConfig.tableName,
37
- * });
38
- * ```
39
- */
40
- export declare function createNamespacedQueueStore(namespaceConfig: NamespaceQueueConfig, storeConfig?: Omit<QueueStoreConfig, 'tableName'>): QueueStore;
41
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CACxC,eAAe,EAAE,oBAAoB,EACrC,WAAW,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAChD,UAAU,CAKZ"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,GACb,MAAM,gBAAgB,CAAC"}
@@ -1,44 +1,25 @@
1
1
  "use strict";
2
2
  /**
3
- * Queue Module
3
+ * Queue Module (v2)
4
4
  * Per spec/20_QUEUE_STORE.md
5
5
  *
6
+ * v2 Changes:
7
+ * - Single fixed table: pm-runner-queue
8
+ * - Namespace is a required config field
9
+ * - Runner heartbeat support
10
+ *
6
11
  * Exports:
7
12
  * - QueueStore: DynamoDB-backed queue storage
8
13
  * - QueuePoller: Polling and task execution
9
- * - createNamespacedQueueStore: Factory for namespace-separated QueueStore
10
14
  */
11
15
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.QueuePoller = exports.isValidStatusTransition = exports.VALID_STATUS_TRANSITIONS = exports.QueueStore = void 0;
13
- exports.createNamespacedQueueStore = createNamespacedQueueStore;
16
+ exports.QueuePoller = exports.RUNNERS_TABLE_NAME = exports.QUEUE_TABLE_NAME = exports.isValidStatusTransition = exports.VALID_STATUS_TRANSITIONS = exports.QueueStore = void 0;
14
17
  var queue_store_1 = require("./queue-store");
15
18
  Object.defineProperty(exports, "QueueStore", { enumerable: true, get: function () { return queue_store_1.QueueStore; } });
16
19
  Object.defineProperty(exports, "VALID_STATUS_TRANSITIONS", { enumerable: true, get: function () { return queue_store_1.VALID_STATUS_TRANSITIONS; } });
17
20
  Object.defineProperty(exports, "isValidStatusTransition", { enumerable: true, get: function () { return queue_store_1.isValidStatusTransition; } });
21
+ Object.defineProperty(exports, "QUEUE_TABLE_NAME", { enumerable: true, get: function () { return queue_store_1.QUEUE_TABLE_NAME; } });
22
+ Object.defineProperty(exports, "RUNNERS_TABLE_NAME", { enumerable: true, get: function () { return queue_store_1.RUNNERS_TABLE_NAME; } });
18
23
  var queue_poller_1 = require("./queue-poller");
19
24
  Object.defineProperty(exports, "QueuePoller", { enumerable: true, get: function () { return queue_poller_1.QueuePoller; } });
20
- const queue_store_2 = require("./queue-store");
21
- /**
22
- * Create a QueueStore instance with namespace separation
23
- * Per spec/21_STABLE_DEV.md
24
- *
25
- * @param namespaceConfig - Namespace configuration with tableName
26
- * @param storeConfig - Optional additional QueueStore configuration
27
- * @returns Configured QueueStore instance
28
- *
29
- * @example
30
- * ```typescript
31
- * const namespaceConfig = buildNamespaceConfig({ namespace: 'dev', projectRoot: '/path' });
32
- * const store = createNamespacedQueueStore({
33
- * namespace: namespaceConfig.namespace,
34
- * tableName: namespaceConfig.tableName,
35
- * });
36
- * ```
37
- */
38
- function createNamespacedQueueStore(namespaceConfig, storeConfig) {
39
- return new queue_store_2.QueueStore({
40
- ...storeConfig,
41
- tableName: namespaceConfig.tableName,
42
- });
43
- }
44
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAoDH,gEAQC;AA1DD,6CAUuB;AATrB,yGAAA,UAAU,OAAA;AAOV,uHAAA,wBAAwB,OAAA;AACxB,sHAAA,uBAAuB,OAAA;AAGzB,+CAMwB;AALtB,2GAAA,WAAW,OAAA;AAOb,+CAA6D;AAa7D;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,0BAA0B,CACxC,eAAqC,EACrC,WAAiD;IAEjD,OAAO,IAAI,wBAAU,CAAC;QACpB,GAAG,WAAW;QACd,SAAS,EAAE,eAAe,CAAC,SAAS;KACrC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH,6CAeuB;AAdrB,yGAAA,UAAU,OAAA;AAUV,uHAAA,wBAAwB,OAAA;AACxB,sHAAA,uBAAuB,OAAA;AACvB,+GAAA,gBAAgB,OAAA;AAChB,iHAAA,kBAAkB,OAAA;AAGpB,+CAMwB;AALtB,2GAAA,WAAW,OAAA"}
@@ -28,6 +28,10 @@ export interface QueuePollerConfig {
28
28
  maxStaleTaskAgeMs?: number;
29
29
  /** Recover stale tasks on startup (default: true) */
30
30
  recoverOnStartup?: boolean;
31
+ /** Runner ID for heartbeat tracking (v2) */
32
+ runnerId?: string;
33
+ /** Project root for runner identification (v2) */
34
+ projectRoot?: string;
31
35
  }
32
36
  /**
33
37
  * Poller state
@@ -38,6 +42,10 @@ export interface QueuePollerState {
38
42
  lastPollAt: string | null;
39
43
  tasksProcessed: number;
40
44
  errors: number;
45
+ /** Runner ID (v2) */
46
+ runnerId: string;
47
+ /** Project root (v2) */
48
+ projectRoot: string;
41
49
  }
42
50
  /**
43
51
  * Poller events
@@ -65,6 +73,8 @@ export declare class QueuePoller extends EventEmitter {
65
73
  private readonly pollIntervalMs;
66
74
  private readonly maxStaleTaskAgeMs;
67
75
  private readonly recoverOnStartup;
76
+ private readonly runnerId;
77
+ private readonly projectRoot;
68
78
  private pollTimer;
69
79
  private inFlight;
70
80
  private isRunning;
@@ -72,6 +82,10 @@ export declare class QueuePoller extends EventEmitter {
72
82
  private tasksProcessed;
73
83
  private errors;
74
84
  constructor(store: QueueStore, executor: TaskExecutor, config?: QueuePollerConfig);
85
+ /**
86
+ * Generate a unique runner ID
87
+ */
88
+ private generateRunnerId;
75
89
  /**
76
90
  * Start polling
77
91
  */
@@ -79,9 +93,10 @@ export declare class QueuePoller extends EventEmitter {
79
93
  /**
80
94
  * Stop polling
81
95
  */
82
- stop(): void;
96
+ stop(): Promise<void>;
83
97
  /**
84
98
  * Single poll iteration
99
+ * - Update heartbeat (v2)
85
100
  * - Skip if task in-flight
86
101
  * - Claim oldest QUEUED task
87
102
  * - Execute and update status
@@ -91,6 +106,10 @@ export declare class QueuePoller extends EventEmitter {
91
106
  * Get current state
92
107
  */
93
108
  getState(): QueuePollerState;
109
+ /**
110
+ * Get runner ID (v2)
111
+ */
112
+ getRunnerId(): string;
94
113
  /**
95
114
  * Check if poller is running
96
115
  */
@@ -1 +1 @@
1
- {"version":3,"file":"queue-poller.d.ts","sourceRoot":"","sources":["../../src/queue/queue-poller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAmB,MAAM,eAAe,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CACzB,IAAI,EAAE,SAAS,KACZ,OAAO,CAAC;IAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,EAAE,CAAC;IACZ,OAAO,EAAE,EAAE,CAAC;IACZ,IAAI,EAAE,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IACrB,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1B,SAAS,EAAE,EAAE,CAAC;IACd,iBAAiB,EAAE,CAAC,MAAM,CAAC,CAAC;IAC5B,iBAAiB,EAAE,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED;;;GAGG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAU;IAE3C,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,MAAM,CAAa;gBAGzB,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,YAAY,EACtB,MAAM,GAAE,iBAAsB;IAUhC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC5B;;OAEG;IACH,IAAI,IAAI,IAAI;IAeZ;;;;;OAKG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoE3B;;OAEG;IACH,QAAQ,IAAI,gBAAgB;IAU5B;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,WAAW,IAAI,SAAS,GAAG,IAAI;CAGhC"}
1
+ {"version":3,"file":"queue-poller.d.ts","sourceRoot":"","sources":["../../src/queue/queue-poller.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,8 @@ class QueuePoller extends events_1.EventEmitter {
22
22
  pollIntervalMs;
23
23
  maxStaleTaskAgeMs;
24
24
  recoverOnStartup;
25
+ runnerId;
26
+ projectRoot;
25
27
  pollTimer = null;
26
28
  inFlight = null;
27
29
  isRunning = false;
@@ -35,6 +37,16 @@ class QueuePoller extends events_1.EventEmitter {
35
37
  this.pollIntervalMs = config.pollIntervalMs ?? 1000;
36
38
  this.maxStaleTaskAgeMs = config.maxStaleTaskAgeMs ?? 5 * 60 * 1000;
37
39
  this.recoverOnStartup = config.recoverOnStartup ?? true;
40
+ this.runnerId = config.runnerId ?? this.generateRunnerId();
41
+ this.projectRoot = config.projectRoot ?? process.cwd();
42
+ }
43
+ /**
44
+ * Generate a unique runner ID
45
+ */
46
+ generateRunnerId() {
47
+ const timestamp = Date.now().toString(36);
48
+ const random = Math.random().toString(36).substring(2, 8);
49
+ return 'runner-' + timestamp + '-' + random;
38
50
  }
39
51
  /**
40
52
  * Start polling
@@ -72,7 +84,7 @@ class QueuePoller extends events_1.EventEmitter {
72
84
  /**
73
85
  * Stop polling
74
86
  */
75
- stop() {
87
+ async stop() {
76
88
  if (!this.isRunning) {
77
89
  return;
78
90
  }
@@ -81,10 +93,20 @@ class QueuePoller extends events_1.EventEmitter {
81
93
  clearInterval(this.pollTimer);
82
94
  this.pollTimer = null;
83
95
  }
96
+ // Mark runner as stopped (v2)
97
+ try {
98
+ await this.store.markRunnerStopped(this.runnerId);
99
+ }
100
+ catch (error) {
101
+ // Log but don't fail stop - marking stopped is best-effort
102
+ // eslint-disable-next-line no-console
103
+ console.error('[QueuePoller] Failed to mark runner as stopped:', error);
104
+ }
84
105
  this.emit('stopped');
85
106
  }
86
107
  /**
87
108
  * Single poll iteration
109
+ * - Update heartbeat (v2)
88
110
  * - Skip if task in-flight
89
111
  * - Claim oldest QUEUED task
90
112
  * - Execute and update status
@@ -94,6 +116,15 @@ class QueuePoller extends events_1.EventEmitter {
94
116
  return;
95
117
  }
96
118
  this.lastPollAt = new Date().toISOString();
119
+ // Update heartbeat (v2) - register this runner as alive
120
+ try {
121
+ await this.store.updateRunnerHeartbeat(this.runnerId, this.projectRoot);
122
+ }
123
+ catch (error) {
124
+ // Log but don't fail poll - heartbeat is best-effort
125
+ // eslint-disable-next-line no-console
126
+ console.error('[QueuePoller] Heartbeat update failed:', error);
127
+ }
97
128
  // In-flight limit: 1
98
129
  if (this.inFlight) {
99
130
  return;
@@ -156,8 +187,16 @@ class QueuePoller extends events_1.EventEmitter {
156
187
  lastPollAt: this.lastPollAt,
157
188
  tasksProcessed: this.tasksProcessed,
158
189
  errors: this.errors,
190
+ runnerId: this.runnerId,
191
+ projectRoot: this.projectRoot,
159
192
  };
160
193
  }
194
+ /**
195
+ * Get runner ID (v2)
196
+ */
197
+ getRunnerId() {
198
+ return this.runnerId;
199
+ }
161
200
  /**
162
201
  * Check if poller is running
163
202
  */
@@ -1 +1 @@
1
- {"version":3,"file":"queue-poller.js","sourceRoot":"","sources":["../../src/queue/queue-poller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue-poller.js","sourceRoot":"","sources":["../../src/queue/queue-poller.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,mCAAsC;AAyDtC;;;GAGG;AACH,MAAa,WAAY,SAAQ,qBAAY;IAC1B,KAAK,CAAa;IAClB,QAAQ,CAAe;IACvB,cAAc,CAAS;IACvB,iBAAiB,CAAS;IAC1B,gBAAgB,CAAU;IAC1B,QAAQ,CAAS;IACjB,WAAW,CAAS;IAE7B,SAAS,GAA0C,IAAI,CAAC;IACxD,QAAQ,GAAqB,IAAI,CAAC;IAClC,SAAS,GAAY,KAAK,CAAC;IAC3B,UAAU,GAAkB,IAAI,CAAC;IACjC,cAAc,GAAW,CAAC,CAAC;IAC3B,MAAM,GAAW,CAAC,CAAC;IAE3B,YACE,KAAiB,EACjB,QAAsB,EACtB,SAA4B,EAAE;QAE9B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC;QACpD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACnE,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC3D,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1D,OAAO,SAAS,GAAG,SAAS,GAAG,GAAG,GAAG,MAAM,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,+CAA+C;QAC/C,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAC7E,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;oBAClB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,6BAA6B;gBAC7B,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErB,qBAAqB;QACrB,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACxB,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAExB,uBAAuB;QACvB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,8BAA8B;QAC9B,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2DAA2D;YAC3D,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,wDAAwD;QACxD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qDAAqD;YACrD,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC;QAED,qBAAqB;QACrB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAE7C,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBACtB,sCAAsC;gBACtC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,oBAAoB;gBACpB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvB,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,CAAC,IAAK,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAE3B,IAAI,CAAC;YACH,mBAAmB;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEzC,gBAAgB;YAChB,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAC3B,IAAI,CAAC,OAAO,EACZ,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,YAAY,CACpB,CAAC;YAEF,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6BAA6B;YAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEzD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,6CAA6C;gBAC7C,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,WAAW,CAAC,CAAC;YAC7E,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtF,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF;AAvOD,kCAuOC"}
@@ -1,12 +1,26 @@
1
1
  /**
2
- * Queue Store - DynamoDB Local implementation
2
+ * Queue Store - DynamoDB Local implementation (v2)
3
3
  * Per spec/20_QUEUE_STORE.md
4
4
  *
5
+ * v2 Changes:
6
+ * - Single fixed table: pm-runner-queue
7
+ * - Composite key: PK=namespace, SK=task_id
8
+ * - GSI: status-index (status + created_at)
9
+ * - Namespace-based separation in single table
10
+ *
5
11
  * Provides queue operations with:
6
12
  * - Atomic QUEUED -> RUNNING transitions (conditional update)
7
13
  * - Double execution prevention
8
14
  * - Fail-closed error handling
9
15
  */
16
+ /**
17
+ * Fixed table name (v2: single table for all namespaces)
18
+ */
19
+ export declare const QUEUE_TABLE_NAME = "pm-runner-queue";
20
+ /**
21
+ * Runners table name (v2: heartbeat tracking)
22
+ */
23
+ export declare const RUNNERS_TABLE_NAME = "pm-runner-runners";
10
24
  /**
11
25
  * Queue Item status
12
26
  * Per spec/20: QUEUED / RUNNING / COMPLETE / ERROR / CANCELLED
@@ -22,10 +36,11 @@ export declare const VALID_STATUS_TRANSITIONS: Record<QueueItemStatus, QueueItem
22
36
  */
23
37
  export declare function isValidStatusTransition(fromStatus: QueueItemStatus, toStatus: QueueItemStatus): boolean;
24
38
  /**
25
- * Queue Item schema
39
+ * Queue Item schema (v2)
26
40
  * Per spec/20_QUEUE_STORE.md
27
41
  */
28
42
  export interface QueueItem {
43
+ namespace: string;
29
44
  task_id: string;
30
45
  task_group_id: string;
31
46
  session_id: string;
@@ -35,16 +50,32 @@ export interface QueueItem {
35
50
  updated_at: string;
36
51
  error_message?: string;
37
52
  }
53
+ /**
54
+ * Runner status for heartbeat tracking
55
+ */
56
+ export type RunnerStatus = 'RUNNING' | 'STOPPED';
57
+ /**
58
+ * Runner record schema (v2)
59
+ * Per spec/20_QUEUE_STORE.md
60
+ */
61
+ export interface RunnerRecord {
62
+ namespace: string;
63
+ runner_id: string;
64
+ last_heartbeat: string;
65
+ started_at: string;
66
+ status: RunnerStatus;
67
+ project_root: string;
68
+ }
38
69
  /**
39
70
  * Queue Store configuration
40
71
  */
41
72
  export interface QueueStoreConfig {
42
73
  /** DynamoDB endpoint (default: http://localhost:8000) */
43
74
  endpoint?: string;
44
- /** Table name (default: pm-runner-queue) */
45
- tableName?: string;
46
75
  /** AWS region (default: local) */
47
76
  region?: string;
77
+ /** Namespace for this store instance */
78
+ namespace: string;
48
79
  }
49
80
  /**
50
81
  * Claim result
@@ -77,19 +108,33 @@ export interface TaskGroupSummary {
77
108
  latest_updated_at: string;
78
109
  }
79
110
  /**
80
- * Queue Store
111
+ * Namespace summary for listing
112
+ */
113
+ export interface NamespaceSummary {
114
+ namespace: string;
115
+ task_count: number;
116
+ runner_count: number;
117
+ active_runner_count: number;
118
+ }
119
+ /**
120
+ * Queue Store (v2)
81
121
  * Manages task queue with DynamoDB Local
122
+ * Single table design with namespace-based separation
82
123
  */
83
124
  export declare class QueueStore {
84
125
  private readonly client;
85
126
  private readonly docClient;
86
- private readonly tableName;
127
+ private readonly namespace;
87
128
  private readonly endpoint;
88
- constructor(config?: QueueStoreConfig);
129
+ constructor(config: QueueStoreConfig);
89
130
  /**
90
- * Get table name
131
+ * Get fixed table name (v2: always returns pm-runner-queue)
91
132
  */
92
133
  getTableName(): string;
134
+ /**
135
+ * Get namespace
136
+ */
137
+ getNamespace(): string;
93
138
  /**
94
139
  * Get endpoint
95
140
  */
@@ -99,12 +144,25 @@ export declare class QueueStore {
99
144
  */
100
145
  tableExists(): Promise<boolean>;
101
146
  /**
102
- * Create table with required GSIs
103
- * Per spec/20_QUEUE_STORE.md table definition
147
+ * Delete queue table (for testing)
148
+ */
149
+ deleteTable(): Promise<void>;
150
+ /**
151
+ * Create queue table with composite key (v2)
152
+ * PK: namespace, SK: task_id
104
153
  */
105
154
  createTable(): Promise<void>;
106
155
  /**
107
- * Ensure table exists, create if not
156
+ * Create runners table (v2)
157
+ * PK: namespace, SK: runner_id
158
+ */
159
+ createRunnersTable(): Promise<void>;
160
+ /**
161
+ * Check if runners table exists
162
+ */
163
+ runnersTableExists(): Promise<boolean>;
164
+ /**
165
+ * Ensure both tables exist
108
166
  */
109
167
  ensureTable(): Promise<void>;
110
168
  /**
@@ -114,77 +172,78 @@ export declare class QueueStore {
114
172
  /**
115
173
  * Enqueue a new task
116
174
  * Creates item with status=QUEUED
117
- *
118
- * @param sessionId - Session ID
119
- * @param taskGroupId - Task Group ID
120
- * @param prompt - User prompt
121
- * @param taskId - Optional task ID (generates if not provided)
122
- * @returns Created queue item
123
175
  */
124
176
  enqueue(sessionId: string, taskGroupId: string, prompt: string, taskId?: string): Promise<QueueItem>;
125
177
  /**
126
- * Get item by task_id
178
+ * Get item by task_id (v2: uses composite key)
127
179
  */
128
- getItem(taskId: string): Promise<QueueItem | null>;
180
+ getItem(taskId: string, targetNamespace?: string): Promise<QueueItem | null>;
129
181
  /**
130
- * Claim the oldest QUEUED task (atomic QUEUED -> RUNNING)
131
- * Per spec: Uses conditional update for double execution prevention
132
- *
133
- * @returns ClaimResult with success flag and item if claimed
182
+ * Claim the oldest QUEUED task for this namespace
134
183
  */
135
184
  claim(): Promise<ClaimResult>;
136
185
  /**
137
186
  * Update task status
138
- * Per spec: RUNNING -> COMPLETE or RUNNING -> ERROR
139
- *
140
- * @param taskId - Task ID
141
- * @param status - New status
142
- * @param errorMessage - Optional error message (for ERROR status)
143
187
  */
144
188
  updateStatus(taskId: string, status: QueueItemStatus, errorMessage?: string): Promise<void>;
145
189
  /**
146
190
  * Update task status with validation
147
- * Per spec/19_WEB_UI.md: PATCH /api/tasks/:task_id/status
148
- *
149
- * @param taskId - Task ID
150
- * @param newStatus - Target status
151
- * @returns StatusUpdateResult with success/error info
152
191
  */
153
192
  updateStatusWithValidation(taskId: string, newStatus: QueueItemStatus): Promise<StatusUpdateResult>;
154
193
  /**
155
- * Get items by session ID
156
- * Uses session-index GSI
194
+ * Get items by status for this namespace
157
195
  */
158
- getBySession(sessionId: string): Promise<QueueItem[]>;
196
+ getByStatus(status: QueueItemStatus): Promise<QueueItem[]>;
159
197
  /**
160
- * Get items by status
161
- * Uses status-index GSI
198
+ * Get items by task group ID for this namespace
162
199
  */
163
- getByStatus(status: QueueItemStatus): Promise<QueueItem[]>;
200
+ getByTaskGroup(taskGroupId: string, targetNamespace?: string): Promise<QueueItem[]>;
164
201
  /**
165
- * Get items by task group ID
166
- * Uses task-group-index GSI
167
- * Per spec/19_WEB_UI.md: for listing tasks in a task group
202
+ * Get all items in a namespace
168
203
  */
169
- getByTaskGroup(taskGroupId: string): Promise<QueueItem[]>;
204
+ getAllItems(targetNamespace?: string): Promise<QueueItem[]>;
170
205
  /**
171
- * Get all distinct task groups with summary
172
- * Per spec/19_WEB_UI.md: for task group list view
173
- * Note: Uses Scan - consider pagination for large datasets
206
+ * Get all distinct task groups for a namespace with summary
174
207
  */
175
- getAllTaskGroups(): Promise<TaskGroupSummary[]>;
208
+ getAllTaskGroups(targetNamespace?: string): Promise<TaskGroupSummary[]>;
209
+ /**
210
+ * Get all distinct namespaces (scan entire table)
211
+ */
212
+ getAllNamespaces(): Promise<NamespaceSummary[]>;
176
213
  /**
177
214
  * Delete item (for testing)
178
215
  */
179
216
  deleteItem(taskId: string): Promise<void>;
180
217
  /**
181
218
  * Mark stale RUNNING tasks as ERROR
182
- * Per spec: fail-closed - don't leave tasks in "limbo"
183
- *
184
- * @param maxAgeMs - Max age in milliseconds for RUNNING tasks
185
- * @returns Number of tasks marked as ERROR
186
219
  */
187
220
  recoverStaleTasks(maxAgeMs?: number): Promise<number>;
221
+ /**
222
+ * Register or update runner heartbeat
223
+ */
224
+ updateRunnerHeartbeat(runnerId: string, projectRoot: string): Promise<void>;
225
+ /**
226
+ * Get runner by ID
227
+ */
228
+ getRunner(runnerId: string): Promise<RunnerRecord | null>;
229
+ /**
230
+ * Get all runners for this namespace
231
+ */
232
+ getAllRunners(targetNamespace?: string): Promise<RunnerRecord[]>;
233
+ /**
234
+ * Get runners with their alive status
235
+ */
236
+ getRunnersWithStatus(heartbeatTimeoutMs?: number, targetNamespace?: string): Promise<Array<RunnerRecord & {
237
+ isAlive: boolean;
238
+ }>>;
239
+ /**
240
+ * Mark runner as stopped
241
+ */
242
+ markRunnerStopped(runnerId: string): Promise<void>;
243
+ /**
244
+ * Delete runner record
245
+ */
246
+ deleteRunner(runnerId: string): Promise<void>;
188
247
  /**
189
248
  * Close the client connection
190
249
  */
@@ -1 +1 @@
1
- {"version":3,"file":"queue-store.d.ts","sourceRoot":"","sources":["../../src/queue/queue-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue-store.d.ts","sourceRoot":"","sources":["../../src/queue/queue-store.ts"],"names":[],"mappings":"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"}