codekin 0.6.3 → 0.6.4

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 (102) hide show
  1. package/README.md +3 -2
  2. package/dist/assets/index-BRB_Ksyk.js +182 -0
  3. package/dist/assets/index-Q2WSVlHo.css +1 -0
  4. package/dist/index.html +2 -2
  5. package/package.json +3 -3
  6. package/server/dist/auth-routes.js +6 -0
  7. package/server/dist/auth-routes.js.map +1 -1
  8. package/server/dist/claude-process.js +3 -2
  9. package/server/dist/claude-process.js.map +1 -1
  10. package/server/dist/commit-event-handler.d.ts +2 -1
  11. package/server/dist/commit-event-handler.js +4 -3
  12. package/server/dist/commit-event-handler.js.map +1 -1
  13. package/server/dist/commit-event-hooks.d.ts +11 -0
  14. package/server/dist/commit-event-hooks.js +61 -11
  15. package/server/dist/commit-event-hooks.js.map +1 -1
  16. package/server/dist/config.d.ts +7 -0
  17. package/server/dist/config.js +19 -1
  18. package/server/dist/config.js.map +1 -1
  19. package/server/dist/docs-routes.js +4 -7
  20. package/server/dist/docs-routes.js.map +1 -1
  21. package/server/dist/json-parse.d.ts +8 -0
  22. package/server/dist/json-parse.js +9 -0
  23. package/server/dist/json-parse.js.map +1 -0
  24. package/server/dist/opencode-process.js +8 -1
  25. package/server/dist/opencode-process.js.map +1 -1
  26. package/server/dist/orchestrator-learning-router.d.ts +8 -0
  27. package/server/dist/orchestrator-learning-router.js +126 -0
  28. package/server/dist/orchestrator-learning-router.js.map +1 -0
  29. package/server/dist/orchestrator-learning.d.ts +0 -5
  30. package/server/dist/orchestrator-learning.js +2 -9
  31. package/server/dist/orchestrator-learning.js.map +1 -1
  32. package/server/dist/orchestrator-memory-router.d.ts +10 -0
  33. package/server/dist/orchestrator-memory-router.js +148 -0
  34. package/server/dist/orchestrator-memory-router.js.map +1 -0
  35. package/server/dist/orchestrator-memory.js +2 -1
  36. package/server/dist/orchestrator-memory.js.map +1 -1
  37. package/server/dist/orchestrator-monitor.d.ts +6 -0
  38. package/server/dist/orchestrator-monitor.js +14 -0
  39. package/server/dist/orchestrator-monitor.js.map +1 -1
  40. package/server/dist/orchestrator-reports.d.ts +0 -4
  41. package/server/dist/orchestrator-reports.js +8 -10
  42. package/server/dist/orchestrator-reports.js.map +1 -1
  43. package/server/dist/orchestrator-routes.d.ts +2 -2
  44. package/server/dist/orchestrator-routes.js +11 -506
  45. package/server/dist/orchestrator-routes.js.map +1 -1
  46. package/server/dist/orchestrator-session-router.d.ts +13 -0
  47. package/server/dist/orchestrator-session-router.js +312 -0
  48. package/server/dist/orchestrator-session-router.js.map +1 -0
  49. package/server/dist/process-coordinator.d.ts +83 -0
  50. package/server/dist/process-coordinator.js +167 -0
  51. package/server/dist/process-coordinator.js.map +1 -0
  52. package/server/dist/prompt-router.js +2 -1
  53. package/server/dist/prompt-router.js.map +1 -1
  54. package/server/dist/session-archive.js +2 -1
  55. package/server/dist/session-archive.js.map +1 -1
  56. package/server/dist/session-lifecycle.js +14 -36
  57. package/server/dist/session-lifecycle.js.map +1 -1
  58. package/server/dist/session-manager.d.ts +4 -0
  59. package/server/dist/session-manager.js +56 -73
  60. package/server/dist/session-manager.js.map +1 -1
  61. package/server/dist/session-persistence.js +3 -1
  62. package/server/dist/session-persistence.js.map +1 -1
  63. package/server/dist/session-routes.d.ts +18 -0
  64. package/server/dist/session-routes.js +56 -11
  65. package/server/dist/session-routes.js.map +1 -1
  66. package/server/dist/stepflow-handler.js +5 -1
  67. package/server/dist/stepflow-handler.js.map +1 -1
  68. package/server/dist/stepflow-prompt.js +16 -12
  69. package/server/dist/stepflow-prompt.js.map +1 -1
  70. package/server/dist/tsconfig.tsbuildinfo +1 -1
  71. package/server/dist/types.d.ts +4 -0
  72. package/server/dist/types.js +1 -0
  73. package/server/dist/types.js.map +1 -1
  74. package/server/dist/upload-routes.d.ts +5 -0
  75. package/server/dist/upload-routes.js +48 -11
  76. package/server/dist/upload-routes.js.map +1 -1
  77. package/server/dist/version-check.js +3 -2
  78. package/server/dist/version-check.js.map +1 -1
  79. package/server/dist/webhook-rate-limiter.js +9 -1
  80. package/server/dist/webhook-rate-limiter.js.map +1 -1
  81. package/server/dist/webhook-workspace.d.ts +12 -0
  82. package/server/dist/webhook-workspace.js +126 -3
  83. package/server/dist/webhook-workspace.js.map +1 -1
  84. package/server/dist/workflow-engine.d.ts +80 -7
  85. package/server/dist/workflow-engine.js +209 -28
  86. package/server/dist/workflow-engine.js.map +1 -1
  87. package/server/dist/workflow-loader.d.ts +6 -1
  88. package/server/dist/workflow-loader.js +97 -27
  89. package/server/dist/workflow-loader.js.map +1 -1
  90. package/server/dist/workflow-routes.d.ts +13 -0
  91. package/server/dist/workflow-routes.js +106 -4
  92. package/server/dist/workflow-routes.js.map +1 -1
  93. package/server/dist/ws-origin-check.d.ts +11 -0
  94. package/server/dist/ws-origin-check.js +20 -0
  95. package/server/dist/ws-origin-check.js.map +1 -0
  96. package/server/dist/ws-rate-limit.d.ts +19 -0
  97. package/server/dist/ws-rate-limit.js +30 -0
  98. package/server/dist/ws-rate-limit.js.map +1 -0
  99. package/server/dist/ws-server.js +41 -22
  100. package/server/dist/ws-server.js.map +1 -1
  101. package/dist/assets/index-CxlBrS5y.js +0 -182
  102. package/dist/assets/index-DgeUVGjz.css +0 -1
@@ -11,6 +11,7 @@ import { homedir } from 'os';
11
11
  import { join } from 'path';
12
12
  import { randomUUID } from 'crypto';
13
13
  import { EventEmitter } from 'events';
14
+ import { jsonParse } from './json-parse.js';
14
15
  /**
15
16
  * Throw this from any workflow step to cleanly skip a run without marking it as failed.
16
17
  * Useful for assessment workflows to short-circuit when no code changes have occurred.
@@ -21,6 +22,25 @@ export class WorkflowSkipped extends Error {
21
22
  this.name = 'WorkflowSkipped';
22
23
  }
23
24
  }
25
+ /**
26
+ * Thrown when a step references a session that no longer exists in the session manager —
27
+ * either because it was deleted, expired, or never persisted across a server restart.
28
+ * Carries enough context (run id, step key, session id, last heartbeat) for diagnostics.
29
+ */
30
+ export class SessionGoneError extends Error {
31
+ runId;
32
+ stepKey;
33
+ sessionId;
34
+ lastSeen;
35
+ constructor(runId, stepKey, sessionId, lastSeen) {
36
+ super(`Workflow session is no longer available — run=${runId} step=${stepKey} session=${sessionId} lastSeen=${lastSeen ?? 'unknown'}`);
37
+ this.runId = runId;
38
+ this.stepKey = stepKey;
39
+ this.sessionId = sessionId;
40
+ this.lastSeen = lastSeen;
41
+ this.name = 'SessionGoneError';
42
+ }
43
+ }
24
44
  // ---------------------------------------------------------------------------
25
45
  // Cron expression parser (supports standard 5-field cron)
26
46
  // ---------------------------------------------------------------------------
@@ -103,6 +123,7 @@ export class WorkflowEngine extends EventEmitter {
103
123
  workflows = new Map();
104
124
  activeAbortControllers = new Map();
105
125
  cronTimer = null;
126
+ sessionResolver = null;
106
127
  constructor(dbPath) {
107
128
  super();
108
129
  const dir = join(homedir(), '.codekin');
@@ -114,6 +135,7 @@ export class WorkflowEngine extends EventEmitter {
114
135
  chmodSync(resolvedPath, 0o600);
115
136
  this.db.pragma('journal_mode = WAL');
116
137
  this.createTables();
138
+ this.migrateSchema();
117
139
  }
118
140
  createTables() {
119
141
  // WAL mode: allows concurrent reads while a write is in progress,
@@ -163,6 +185,42 @@ export class WorkflowEngine extends EventEmitter {
163
185
  CREATE INDEX IF NOT EXISTS idx_steps_run_id ON workflow_steps(run_id);
164
186
  `);
165
187
  }
188
+ /**
189
+ * Apply additive (backwards-compatible) schema migrations.
190
+ * Each ALTER TABLE is wrapped in try/catch so a re-run on a migrated DB is a no-op
191
+ * (SQLite has no `ADD COLUMN IF NOT EXISTS`). New columns are nullable so older rows
192
+ * keep working without backfill.
193
+ */
194
+ migrateSchema() {
195
+ const additions = [
196
+ // session id captured by create_session — lets resume locate the still-alive session.
197
+ `ALTER TABLE workflow_runs ADD COLUMN session_id TEXT`,
198
+ // heartbeat updated on every step start — distinguishes stuck runs from newly-started ones.
199
+ `ALTER TABLE workflow_runs ADD COLUMN last_step_at TEXT`,
200
+ // most recently running step key — tells resume where the work stopped.
201
+ `ALTER TABLE workflow_runs ADD COLUMN current_step_key TEXT`,
202
+ ];
203
+ for (const sql of additions) {
204
+ try {
205
+ this.db.exec(sql);
206
+ }
207
+ catch (err) {
208
+ // "duplicate column name" is the expected idempotent path; anything else is a real error.
209
+ const msg = err instanceof Error ? err.message : String(err);
210
+ if (!/duplicate column/i.test(msg))
211
+ throw err;
212
+ }
213
+ }
214
+ }
215
+ /**
216
+ * Register a callback used by `resumeInterrupted()` to decide whether a workflow's
217
+ * session is still alive. Pass `null` to clear. Without a resolver, all interrupted
218
+ * runs whose session_id is set are conservatively treated as resumable — but the
219
+ * step handler will still surface a typed error if the session has actually gone.
220
+ */
221
+ setSessionResolver(resolver) {
222
+ this.sessionResolver = resolver;
223
+ }
166
224
  // -------------------------------------------------------------------------
167
225
  // Workflow registration
168
226
  // -------------------------------------------------------------------------
@@ -226,19 +284,40 @@ export class WorkflowEngine extends EventEmitter {
226
284
  *
227
285
  * Cancellation: `cancelRun()` calls controller.abort(); the AbortSignal is
228
286
  * passed to each handler so long-running async work can exit cooperatively.
287
+ *
288
+ * Resume: when `opts.resumeFromKey` is set, steps before that key are skipped
289
+ * (their outputs come from `opts.priorOutput`) and the resumed step receives
290
+ * `resumed: true` in its context so the handler can avoid double side effects.
229
291
  */
230
- async executeRun(run, definition) {
292
+ async executeRun(run, definition, opts) {
231
293
  const abortController = new AbortController();
232
294
  this.activeAbortControllers.set(run.id, abortController);
233
- // Mark running
295
+ const resumeFromKey = opts?.resumeFromKey;
296
+ const isResume = !!resumeFromKey;
297
+ // Mark running (no-op timestamp on resume so we keep the original startedAt)
234
298
  run.status = 'running';
235
- run.startedAt = new Date().toISOString();
236
- this.db.prepare(`UPDATE workflow_runs SET status = 'running', started_at = ? WHERE id = ?`)
237
- .run(run.startedAt, run.id);
238
- this.emitEvent('run_started', run);
239
- let lastOutput = { ...run.input };
299
+ if (!isResume) {
300
+ run.startedAt = new Date().toISOString();
301
+ this.db.prepare(`UPDATE workflow_runs SET status = 'running', started_at = ? WHERE id = ?`)
302
+ .run(run.startedAt, run.id);
303
+ this.emitEvent('run_started', run);
304
+ }
305
+ else {
306
+ this.db.prepare(`UPDATE workflow_runs SET status = 'running' WHERE id = ?`).run(run.id);
307
+ this.emitEvent('run_resumed', run);
308
+ }
309
+ let lastOutput = isResume
310
+ ? { ...(opts?.priorOutput ?? {}) }
311
+ : { ...run.input };
312
+ let reachedResumePoint = !isResume;
240
313
  try {
241
314
  for (const stepDef of definition.steps) {
315
+ if (!reachedResumePoint) {
316
+ if (stepDef.key === resumeFromKey)
317
+ reachedResumePoint = true;
318
+ else
319
+ continue;
320
+ }
242
321
  if (abortController.signal.aborted) {
243
322
  throw new Error('Run canceled');
244
323
  }
@@ -246,16 +325,23 @@ export class WorkflowEngine extends EventEmitter {
246
325
  .get(run.id, stepDef.key);
247
326
  if (!stepRow)
248
327
  continue;
249
- // Mark step running
328
+ // Mark step running + bump heartbeat / current step key on the run
250
329
  const stepStarted = new Date().toISOString();
251
- this.db.prepare(`UPDATE workflow_steps SET status = 'running', input = ?, started_at = ? WHERE id = ?`)
330
+ this.db.prepare(`UPDATE workflow_steps SET status = 'running', input = ?, started_at = ?, completed_at = NULL, output = NULL, error = NULL WHERE id = ?`)
252
331
  .run(JSON.stringify(lastOutput), stepStarted, stepRow.id);
332
+ this.db.prepare(`UPDATE workflow_runs SET last_step_at = ?, current_step_key = ? WHERE id = ?`)
333
+ .run(stepStarted, stepDef.key, run.id);
334
+ run.lastStepAt = stepStarted;
335
+ run.currentStepKey = stepDef.key;
253
336
  this.emitEvent('step_started', run, stepDef.key);
337
+ const stepIsResumed = isResume && stepDef.key === resumeFromKey;
254
338
  try {
255
339
  const result = await stepDef.handler(lastOutput, {
256
340
  runId: run.id,
257
341
  run,
258
342
  abortSignal: abortController.signal,
343
+ resumed: stepIsResumed,
344
+ recordSessionId: (sessionId) => this.recordSessionId(run.id, sessionId),
259
345
  });
260
346
  // Mark step succeeded
261
347
  const stepCompleted = new Date().toISOString();
@@ -330,6 +416,15 @@ export class WorkflowEngine extends EventEmitter {
330
416
  }
331
417
  return false;
332
418
  }
419
+ /**
420
+ * Persist a session id on a run so that `resumeInterrupted()` can locate the
421
+ * still-alive session even if the server crashes before the `create_session`
422
+ * step's output row is committed. Called from inside the step handler via
423
+ * `ctx.recordSessionId(...)`.
424
+ */
425
+ recordSessionId(runId, sessionId) {
426
+ this.db.prepare(`UPDATE workflow_runs SET session_id = ? WHERE id = ?`).run(sessionId, runId);
427
+ }
333
428
  // -------------------------------------------------------------------------
334
429
  // Queries
335
430
  // -------------------------------------------------------------------------
@@ -344,8 +439,8 @@ export class WorkflowEngine extends EventEmitter {
344
439
  runId: s.run_id,
345
440
  key: s.key,
346
441
  status: s.status,
347
- input: s.input ? JSON.parse(s.input) : null,
348
- output: s.output ? JSON.parse(s.output) : null,
442
+ input: s.input ? jsonParse(s.input) : null,
443
+ output: s.output ? jsonParse(s.output) : null,
349
444
  error: s.error,
350
445
  startedAt: s.started_at,
351
446
  completedAt: s.completed_at,
@@ -354,12 +449,15 @@ export class WorkflowEngine extends EventEmitter {
354
449
  id: row.id,
355
450
  kind: row.kind,
356
451
  status: row.status,
357
- input: JSON.parse(row.input),
358
- output: row.output ? JSON.parse(row.output) : null,
452
+ input: jsonParse(row.input),
453
+ output: row.output ? jsonParse(row.output) : null,
359
454
  error: row.error,
360
455
  createdAt: row.created_at,
361
456
  startedAt: row.started_at,
362
457
  completedAt: row.completed_at,
458
+ sessionId: row.session_id ?? null,
459
+ lastStepAt: row.last_step_at ?? null,
460
+ currentStepKey: row.current_step_key ?? null,
363
461
  steps,
364
462
  };
365
463
  }
@@ -378,12 +476,15 @@ export class WorkflowEngine extends EventEmitter {
378
476
  id: row.id,
379
477
  kind: row.kind,
380
478
  status: row.status,
381
- input: JSON.parse(row.input),
382
- output: row.output ? JSON.parse(row.output) : null,
479
+ input: jsonParse(row.input),
480
+ output: row.output ? jsonParse(row.output) : null,
383
481
  error: row.error,
384
482
  createdAt: row.created_at,
385
483
  startedAt: row.started_at,
386
484
  completedAt: row.completed_at,
485
+ sessionId: row.session_id ?? null,
486
+ lastStepAt: row.last_step_at ?? null,
487
+ currentStepKey: row.current_step_key ?? null,
387
488
  }));
388
489
  }
389
490
  // -------------------------------------------------------------------------
@@ -418,7 +519,7 @@ export class WorkflowEngine extends EventEmitter {
418
519
  id: row.id,
419
520
  kind: row.kind,
420
521
  cronExpression: row.cron_expression,
421
- input: JSON.parse(row.input),
522
+ input: jsonParse(row.input),
422
523
  enabled: !!row.enabled,
423
524
  lastRunAt: row.last_run_at,
424
525
  nextRunAt: row.next_run_at,
@@ -433,7 +534,7 @@ export class WorkflowEngine extends EventEmitter {
433
534
  id: row.id,
434
535
  kind: row.kind,
435
536
  cronExpression: row.cron_expression,
436
- input: JSON.parse(row.input),
537
+ input: jsonParse(row.input),
437
538
  enabled: !!row.enabled,
438
539
  lastRunAt: row.last_run_at,
439
540
  nextRunAt: row.next_run_at,
@@ -487,21 +588,101 @@ export class WorkflowEngine extends EventEmitter {
487
588
  // Resume interrupted runs on startup
488
589
  // -------------------------------------------------------------------------
489
590
  /**
490
- * Mark any runs that were in-flight when the server last shut down as failed.
491
- * Called once at startup — a run left in 'running' state means the Node process
492
- * died mid-execution and the AbortController / step callbacks are gone, so there
493
- * is no safe way to resume; failing fast is cleaner than leaving them stuck.
591
+ * Resume runs that were in-flight when the server last shut down.
592
+ *
593
+ * Strategy:
594
+ * 1. Find all runs still marked `running` (no graceful completion happened).
595
+ * 2. For each, look at `session_id` + `current_step_key` — captured before the crash.
596
+ * 3. If the session is still alive (per `sessionResolver`) and the step is one we know how
597
+ * to resume (`run_prompt`, `save_report`), re-execute from there with `resumed: true`.
598
+ * 4. Otherwise mark the run failed with a clear, typed reason. We do NOT silently mark
599
+ * remaining steps `skipped` — the failure surface is loud so reports don't go missing.
600
+ *
601
+ * Earlier steps (`validate_repo`, `create_session`) are not resumed: by the time they were
602
+ * running, the workflow had no usable session yet, and re-creating one mid-way would risk
603
+ * spawning duplicate sessions or sending the prompt twice.
494
604
  */
495
605
  async resumeInterrupted() {
496
- const interrupted = this.db.prepare(`SELECT id FROM workflow_runs WHERE status = 'running'`).all();
606
+ const interrupted = this.db.prepare(`
607
+ SELECT id, kind, session_id, current_step_key, last_step_at, input
608
+ FROM workflow_runs WHERE status = 'running'
609
+ `).all();
497
610
  if (interrupted.length === 0)
498
611
  return;
499
- console.log(`[workflow] Found ${interrupted.length} interrupted run(s), marking as failed`);
500
- for (const { id } of interrupted) {
501
- this.db.prepare(`UPDATE workflow_runs SET status = 'failed', error = 'Server restarted during execution', completed_at = ? WHERE id = ?`)
502
- .run(new Date().toISOString(), id);
503
- this.db.prepare(`UPDATE workflow_steps SET status = 'skipped' WHERE run_id = ? AND status IN ('pending', 'running')`)
504
- .run(id);
612
+ console.log(`[workflow] Found ${interrupted.length} interrupted run(s), evaluating for resume`);
613
+ for (const row of interrupted) {
614
+ const definition = this.workflows.get(row.kind);
615
+ if (!definition) {
616
+ this.failInterrupted(row.id, `Server restarted during execution (workflow kind '${row.kind}' is no longer registered)`);
617
+ continue;
618
+ }
619
+ const stepKey = row.current_step_key;
620
+ const sessionId = row.session_id;
621
+ // Only the later steps are safely resumable: by then the session is established
622
+ // and the prompt has been (or is being) processed. Earlier steps are too short
623
+ // to bother resuming and re-running them risks duplicate side effects.
624
+ const RESUMABLE_STEPS = new Set(['run_prompt', 'save_report']);
625
+ if (!stepKey || !RESUMABLE_STEPS.has(stepKey)) {
626
+ this.failInterrupted(row.id, `Server restarted during '${stepKey ?? 'unknown'}' step before session was usable for resume`);
627
+ continue;
628
+ }
629
+ if (!sessionId) {
630
+ this.failInterrupted(row.id, `Server restarted during '${stepKey}' step but no session id was recorded — cannot resume`);
631
+ continue;
632
+ }
633
+ const liveness = this.sessionResolver?.(sessionId) ?? null;
634
+ if (this.sessionResolver && !liveness) {
635
+ const err = new SessionGoneError(row.id, stepKey, sessionId, row.last_step_at);
636
+ console.warn(`[workflow] resume: ${err.message}`);
637
+ this.failInterrupted(row.id, err.message);
638
+ continue;
639
+ }
640
+ console.log(`[workflow] Resuming run ${row.id} (${row.kind}) at step '${stepKey}' (session=${sessionId})`);
641
+ // Reconstruct the merged output of all previously succeeded steps so the resumed
642
+ // step receives the same `lastOutput` it would have during a normal run.
643
+ const stepRows = this.db.prepare(`
644
+ SELECT key, status, output FROM workflow_steps WHERE run_id = ? ORDER BY rowid
645
+ `).all(row.id);
646
+ let priorOutput = row.input ? jsonParse(row.input) : {};
647
+ for (const sr of stepRows) {
648
+ if (sr.key === stepKey)
649
+ break;
650
+ if (sr.status === 'succeeded' && sr.output) {
651
+ priorOutput = { ...priorOutput, ...jsonParse(sr.output) };
652
+ }
653
+ }
654
+ const run = this.getRun(row.id);
655
+ if (!run) {
656
+ this.failInterrupted(row.id, 'Run row disappeared before resume could start');
657
+ continue;
658
+ }
659
+ // Reset the in-flight step so executeRun can mark it running again
660
+ this.db.prepare(`UPDATE workflow_steps SET status = 'pending', error = NULL, completed_at = NULL WHERE run_id = ? AND key = ? AND status = 'running'`)
661
+ .run(row.id, stepKey);
662
+ // Kick off resume in the background — same fire-and-forget pattern as startRun
663
+ this.executeRun(run, definition, { resumeFromKey: stepKey, priorOutput }).catch(err => {
664
+ console.error(`[workflow] Unhandled error in resumed run ${row.id}:`, err);
665
+ });
666
+ }
667
+ }
668
+ /** Mark a run as failed during the resume scan (no AbortController, no in-memory run object). */
669
+ failInterrupted(runId, reason) {
670
+ const completedAt = new Date().toISOString();
671
+ this.db.prepare(`UPDATE workflow_runs SET status = 'failed', error = ?, completed_at = ? WHERE id = ?`)
672
+ .run(reason, completedAt, runId);
673
+ this.db.prepare(`UPDATE workflow_steps SET status = 'failed', error = ?, completed_at = ? WHERE run_id = ? AND status = 'running'`)
674
+ .run(reason, completedAt, runId);
675
+ this.db.prepare(`UPDATE workflow_steps SET status = 'skipped' WHERE run_id = ? AND status = 'pending'`)
676
+ .run(runId);
677
+ const row = this.db.prepare(`SELECT id, kind FROM workflow_runs WHERE id = ?`).get(runId);
678
+ if (row) {
679
+ this.emit('workflow_event', {
680
+ eventType: 'run_failed',
681
+ runId: row.id,
682
+ kind: row.kind,
683
+ status: 'failed',
684
+ timestamp: completedAt,
685
+ });
505
686
  }
506
687
  }
507
688
  // -------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-engine.js","sourceRoot":"","sources":["../workflow-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-engine.js","sourceRoot":"","sources":["../workflow-engine.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,8 @@
9
9
  * 1. validate_repo — verify path exists, is a git repo, check staleness
10
10
  * 2. create_session — create a Codekin session for the run
11
11
  * 3. run_prompt — start Claude, send the prompt, wait for result
12
- * 4. save_report — write Markdown output to outputDir, commit on codekin/reports branch, push
12
+ * 4. save_report — write Markdown output to outputDir, commit on a fresh
13
+ * audit/<kind>-<YYYY-MM-DD> branch, push
13
14
  *
14
15
  * MD file format — YAML frontmatter followed by the Claude prompt:
15
16
  *
@@ -45,6 +46,10 @@ export interface WorkflowDef {
45
46
  model?: string;
46
47
  prompt: string;
47
48
  }
49
+ /** Branch name for the per-run report commit. Kept short and stable per (kind, date). */
50
+ export declare function reportBranchName(kind: string, dateStr: string): string;
51
+ /** True when a branch name is one a workflow run produces (or used to produce). */
52
+ export declare function isWorkflowReportsBranch(branch: string): boolean;
48
53
  /**
49
54
  * Discover and register any standalone repo workflows (kinds not already
50
55
  * registered as built-ins). Called when a repo is configured or when listing