@bradygaster/squad-cli 0.9.2-insider.6 → 0.9.4-insider.1

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 (141) hide show
  1. package/README.md +33 -0
  2. package/dist/cli/commands/doctor.d.ts +2 -0
  3. package/dist/cli/commands/doctor.d.ts.map +1 -1
  4. package/dist/cli/commands/doctor.js +27 -5
  5. package/dist/cli/commands/doctor.js.map +1 -1
  6. package/dist/cli/commands/externalize.d.ts +27 -0
  7. package/dist/cli/commands/externalize.d.ts.map +1 -0
  8. package/dist/cli/commands/externalize.js +207 -0
  9. package/dist/cli/commands/externalize.js.map +1 -0
  10. package/dist/cli/commands/loop.d.ts +56 -0
  11. package/dist/cli/commands/loop.d.ts.map +1 -0
  12. package/dist/cli/commands/loop.js +352 -0
  13. package/dist/cli/commands/loop.js.map +1 -0
  14. package/dist/cli/commands/migrate.js +2 -2
  15. package/dist/cli/commands/migrate.js.map +1 -1
  16. package/dist/cli/commands/rc.js +2 -2
  17. package/dist/cli/commands/rc.js.map +1 -1
  18. package/dist/cli/commands/watch/capabilities/cleanup.d.ts +18 -0
  19. package/dist/cli/commands/watch/capabilities/cleanup.d.ts.map +1 -0
  20. package/dist/cli/commands/watch/capabilities/cleanup.js +135 -0
  21. package/dist/cli/commands/watch/capabilities/cleanup.js.map +1 -0
  22. package/dist/cli/commands/watch/capabilities/execute.d.ts +15 -3
  23. package/dist/cli/commands/watch/capabilities/execute.d.ts.map +1 -1
  24. package/dist/cli/commands/watch/capabilities/execute.js +106 -86
  25. package/dist/cli/commands/watch/capabilities/execute.js.map +1 -1
  26. package/dist/cli/commands/watch/capabilities/fleet-dispatch.d.ts +20 -0
  27. package/dist/cli/commands/watch/capabilities/fleet-dispatch.d.ts.map +1 -0
  28. package/dist/cli/commands/watch/capabilities/fleet-dispatch.js +144 -0
  29. package/dist/cli/commands/watch/capabilities/fleet-dispatch.js.map +1 -0
  30. package/dist/cli/commands/watch/capabilities/index.d.ts +0 -2
  31. package/dist/cli/commands/watch/capabilities/index.d.ts.map +1 -1
  32. package/dist/cli/commands/watch/capabilities/index.js +4 -12
  33. package/dist/cli/commands/watch/capabilities/index.js.map +1 -1
  34. package/dist/cli/commands/watch/capabilities/self-pull.d.ts +4 -1
  35. package/dist/cli/commands/watch/capabilities/self-pull.d.ts.map +1 -1
  36. package/dist/cli/commands/watch/capabilities/self-pull.js +53 -5
  37. package/dist/cli/commands/watch/capabilities/self-pull.js.map +1 -1
  38. package/dist/cli/commands/watch/config.d.ts +10 -15
  39. package/dist/cli/commands/watch/config.d.ts.map +1 -1
  40. package/dist/cli/commands/watch/config.js +14 -47
  41. package/dist/cli/commands/watch/config.js.map +1 -1
  42. package/dist/cli/commands/watch/health.d.ts +41 -0
  43. package/dist/cli/commands/watch/health.d.ts.map +1 -0
  44. package/dist/cli/commands/watch/health.js +141 -0
  45. package/dist/cli/commands/watch/health.js.map +1 -0
  46. package/dist/cli/commands/watch/index.d.ts +9 -16
  47. package/dist/cli/commands/watch/index.d.ts.map +1 -1
  48. package/dist/cli/commands/watch/index.js +117 -63
  49. package/dist/cli/commands/watch/index.js.map +1 -1
  50. package/dist/cli/commands/watch/types.d.ts +2 -0
  51. package/dist/cli/commands/watch/types.d.ts.map +1 -1
  52. package/dist/cli/commands/watch/verbose.d.ts +12 -0
  53. package/dist/cli/commands/watch/verbose.d.ts.map +1 -0
  54. package/dist/cli/commands/watch/verbose.js +28 -0
  55. package/dist/cli/commands/watch/verbose.js.map +1 -0
  56. package/dist/cli/core/detect-squad-dir.d.ts.map +1 -1
  57. package/dist/cli/core/detect-squad-dir.js +9 -12
  58. package/dist/cli/core/detect-squad-dir.js.map +1 -1
  59. package/dist/cli/core/email-scrub.js +2 -2
  60. package/dist/cli/core/email-scrub.js.map +1 -1
  61. package/dist/cli/core/init.d.ts.map +1 -1
  62. package/dist/cli/core/init.js +4 -1
  63. package/dist/cli/core/init.js.map +1 -1
  64. package/dist/cli/core/migrations.js +1 -1
  65. package/dist/cli/core/migrations.js.map +1 -1
  66. package/dist/cli/core/nap.js +2 -2
  67. package/dist/cli/core/nap.js.map +1 -1
  68. package/dist/cli/core/project-type.js +1 -1
  69. package/dist/cli/core/project-type.js.map +1 -1
  70. package/dist/cli/core/templates.d.ts.map +1 -1
  71. package/dist/cli/core/templates.js +48 -0
  72. package/dist/cli/core/templates.js.map +1 -1
  73. package/dist/cli/core/upgrade.d.ts +20 -0
  74. package/dist/cli/core/upgrade.d.ts.map +1 -1
  75. package/dist/cli/core/upgrade.js +141 -15
  76. package/dist/cli/core/upgrade.js.map +1 -1
  77. package/dist/cli/shell/session-store.js +2 -2
  78. package/dist/cli/shell/session-store.js.map +1 -1
  79. package/dist/cli-entry.js +201 -89
  80. package/dist/cli-entry.js.map +1 -1
  81. package/package.json +6 -2
  82. package/templates/casting-reference.md +104 -104
  83. package/templates/ceremonies.md +28 -0
  84. package/templates/fact-checker-charter.md +83 -0
  85. package/templates/issue-lifecycle.md +2 -1
  86. package/templates/loop.md +46 -0
  87. package/templates/ralph-triage.js +3 -1
  88. package/templates/scribe-charter.md +20 -1
  89. package/templates/skills/external-comms/SKILL.md +329 -329
  90. package/templates/skills/gh-auth-isolation/SKILL.md +183 -183
  91. package/templates/skills/humanizer/SKILL.md +105 -105
  92. package/templates/skills/pr-review-response/SKILL.md +268 -0
  93. package/templates/skills/pr-screenshots/SKILL.md +149 -149
  94. package/templates/skills/versioning-policy/SKILL.md +119 -0
  95. package/templates/squad.agent.md.template +9 -7
  96. package/templates/workflows/squad-triage.yml +4 -2
  97. package/templates/workflows/sync-squad-labels.yml +3 -1
  98. package/dist/cli/commands/watch/capabilities/budget-check.d.ts +0 -29
  99. package/dist/cli/commands/watch/capabilities/budget-check.d.ts.map +0 -1
  100. package/dist/cli/commands/watch/capabilities/budget-check.js +0 -38
  101. package/dist/cli/commands/watch/capabilities/budget-check.js.map +0 -1
  102. package/dist/cli/commands/watch/capabilities/circuit-breaker.d.ts +0 -52
  103. package/dist/cli/commands/watch/capabilities/circuit-breaker.d.ts.map +0 -1
  104. package/dist/cli/commands/watch/capabilities/circuit-breaker.js +0 -152
  105. package/dist/cli/commands/watch/capabilities/circuit-breaker.js.map +0 -1
  106. package/dist/cli/commands/watch/capabilities/health-check.d.ts +0 -29
  107. package/dist/cli/commands/watch/capabilities/health-check.d.ts.map +0 -1
  108. package/dist/cli/commands/watch/capabilities/health-check.js +0 -139
  109. package/dist/cli/commands/watch/capabilities/health-check.js.map +0 -1
  110. package/dist/cli/commands/watch/capabilities/heartbeat.d.ts +0 -48
  111. package/dist/cli/commands/watch/capabilities/heartbeat.d.ts.map +0 -1
  112. package/dist/cli/commands/watch/capabilities/heartbeat.js +0 -115
  113. package/dist/cli/commands/watch/capabilities/heartbeat.js.map +0 -1
  114. package/dist/cli/commands/watch/capabilities/lockfile.d.ts +0 -30
  115. package/dist/cli/commands/watch/capabilities/lockfile.d.ts.map +0 -1
  116. package/dist/cli/commands/watch/capabilities/lockfile.js +0 -100
  117. package/dist/cli/commands/watch/capabilities/lockfile.js.map +0 -1
  118. package/dist/cli/commands/watch/capabilities/machine-capabilities.d.ts +0 -30
  119. package/dist/cli/commands/watch/capabilities/machine-capabilities.d.ts.map +0 -1
  120. package/dist/cli/commands/watch/capabilities/machine-capabilities.js +0 -103
  121. package/dist/cli/commands/watch/capabilities/machine-capabilities.js.map +0 -1
  122. package/dist/cli/commands/watch/capabilities/post-failure.d.ts +0 -19
  123. package/dist/cli/commands/watch/capabilities/post-failure.d.ts.map +0 -1
  124. package/dist/cli/commands/watch/capabilities/post-failure.js +0 -58
  125. package/dist/cli/commands/watch/capabilities/post-failure.js.map +0 -1
  126. package/dist/cli/commands/watch/capabilities/priority.d.ts +0 -59
  127. package/dist/cli/commands/watch/capabilities/priority.d.ts.map +0 -1
  128. package/dist/cli/commands/watch/capabilities/priority.js +0 -101
  129. package/dist/cli/commands/watch/capabilities/priority.js.map +0 -1
  130. package/dist/cli/commands/watch/capabilities/rate-pool.d.ts +0 -67
  131. package/dist/cli/commands/watch/capabilities/rate-pool.d.ts.map +0 -1
  132. package/dist/cli/commands/watch/capabilities/rate-pool.js +0 -187
  133. package/dist/cli/commands/watch/capabilities/rate-pool.js.map +0 -1
  134. package/dist/cli/commands/watch/capabilities/stale-reclaim.d.ts +0 -23
  135. package/dist/cli/commands/watch/capabilities/stale-reclaim.d.ts.map +0 -1
  136. package/dist/cli/commands/watch/capabilities/stale-reclaim.js +0 -87
  137. package/dist/cli/commands/watch/capabilities/stale-reclaim.js.map +0 -1
  138. package/dist/cli/commands/watch/capabilities/webhook-alerts.d.ts +0 -29
  139. package/dist/cli/commands/watch/capabilities/webhook-alerts.d.ts.map +0 -1
  140. package/dist/cli/commands/watch/capabilities/webhook-alerts.js +0 -114
  141. package/dist/cli/commands/watch/capabilities/webhook-alerts.js.map +0 -1
@@ -6,6 +6,7 @@
6
6
  * always runs — it is not an opt-in capability.
7
7
  */
8
8
  import path from 'node:path';
9
+ import fs from 'node:fs';
9
10
  import { execFile, execFileSync } from 'node:child_process';
10
11
  import { promisify } from 'node:util';
11
12
  import { FSStorageProvider } from '@bradygaster/squad-sdk';
@@ -21,25 +22,12 @@ import { ghAvailable, ghAuthenticated, ghRateLimitCheck, isRateLimitError } from
21
22
  import { PredictiveCircuitBreaker, getTrafficLight, } from '@bradygaster/squad-sdk/ralph/rate-limiting';
22
23
  import { createPlatformAdapter } from '@bradygaster/squad-sdk/platform';
23
24
  import { createDefaultRegistry } from './capabilities/index.js';
24
- // ── Watch parity imports (#743) ──────────────────────────────────
25
- import { acquireLock, updateLock, releaseLock } from './capabilities/lockfile.js';
26
- import { recordFailure, recordSuccess, markRoundStart, getConsecutiveFailures } from './capabilities/heartbeat.js';
27
- import { runPostFailureRemediation } from './capabilities/post-failure.js';
28
- import { ModelCircuitBreaker } from './capabilities/circuit-breaker.js';
25
+ import { createVerboseLogger } from './verbose.js';
29
26
  export { loadWatchConfig } from './config.js';
30
27
  export { CapabilityRegistry } from './registry.js';
31
28
  export { createDefaultRegistry } from './capabilities/index.js';
32
- // ── Watch parity re-exports (#743) ──────────────────────────────
33
- export { ModelCircuitBreaker } from './capabilities/circuit-breaker.js';
34
- export { HealthCheckCapability } from './capabilities/health-check.js';
35
- export { scoreIssue, rankIssues } from './capabilities/priority.js';
36
- export { detectCapabilities, checkMachineCapability } from './capabilities/machine-capabilities.js';
37
- export { StaleReclaimCapability } from './capabilities/stale-reclaim.js';
38
- export { HeartbeatCapability } from './capabilities/heartbeat.js';
39
- export { WebhookAlertCapability } from './capabilities/webhook-alerts.js';
40
- export { checkBudget } from './capabilities/budget-check.js';
41
- export { acquireLock, updateLock, releaseLock } from './capabilities/lockfile.js';
42
- export { runPostFailureRemediation } from './capabilities/post-failure.js';
29
+ export { createVerboseLogger } from './verbose.js';
30
+ export { getWatchHealth, writePidFile, removePidFile, getPidPath, isProcessAlive } from './health.js';
43
31
  // ── SDK Mapping Helpers ──────────────────────────────────────────
44
32
  function toWatchWorkItem(wi) {
45
33
  return {
@@ -112,13 +100,21 @@ async function editWorkItem(adapter, id, options) {
112
100
  }
113
101
  }
114
102
  }
115
- export function reportBoard(state, round) {
103
+ export function reportBoard(state, round, options) {
104
+ const level = options?.notifyLevel ?? 'all';
116
105
  const total = Object.values(state).reduce((a, b) => a + b, 0);
106
+ if (level === 'none')
107
+ return;
108
+ if (level === 'important' && total === 0)
109
+ return;
117
110
  if (total === 0) {
118
111
  console.log(`${DIM}📋 Board is clear — Ralph is idling${RESET}`);
119
112
  return;
120
113
  }
121
- console.log(`\n${BOLD}🔄 Ralph Round ${round}${RESET}`);
114
+ const suffix = options?.machineName || options?.repoName
115
+ ? ` (${[options.machineName, options.repoName].filter(Boolean).join(' · ')})`
116
+ : '';
117
+ console.log(`\n${BOLD}🔄 Ralph — Round ${round}${suffix}${RESET}`);
122
118
  console.log('━'.repeat(30));
123
119
  if (state.untriaged > 0)
124
120
  console.log(` 🔴 Untriaged: ${state.untriaged}`);
@@ -141,10 +137,14 @@ export function reportBoard(state, round) {
141
137
  function emptyBoardState() {
142
138
  return { untriaged: 0, assigned: 0, drafts: 0, needsReview: 0, changesRequested: 0, ciFailures: 0, readyToMerge: 0, executed: 0 };
143
139
  }
144
- async function checkPRs(roster, adapter) {
140
+ async function checkPRs(roster, adapter, vlog) {
145
141
  const timestamp = new Date().toLocaleTimeString();
146
142
  const prs = await listWatchPullRequests(adapter, { state: 'open', limit: 20 });
147
143
  const squadPRs = prs.filter(pr => pr.labels.some(l => l.name.startsWith('squad')) || pr.headRefName.startsWith('squad/'));
144
+ vlog?.log(`PRs found: ${prs.length} total`);
145
+ for (const pr of squadPRs) {
146
+ vlog?.log(` PR #${pr.number}: "${pr.title}" draft=${pr.isDraft} review=${pr.reviewDecision ?? 'none'}`);
147
+ }
148
148
  if (squadPRs.length === 0) {
149
149
  return { drafts: 0, needsReview: 0, changesRequested: 0, ciFailures: 0, readyToMerge: 0, totalOpen: 0 };
150
150
  }
@@ -198,10 +198,16 @@ const BLOCKED_LABELS = new Set([
198
198
  'status:scheduled', 'status:needs-action', 'status:needs-decision',
199
199
  'status:needs-review', 'pending-user', 'do-not-merge',
200
200
  ]);
201
- async function runCheck(rules, modules, roster, hasCopilot, autoAssign, capabilities, adapter) {
201
+ async function runCheck(rules, modules, roster, hasCopilot, autoAssign, capabilities, adapter, vlog) {
202
202
  const timestamp = new Date().toLocaleTimeString();
203
203
  try {
204
204
  const issues = await listWatchWorkItems(adapter, { label: 'squad', state: 'open', limit: 20 });
205
+ vlog?.log(`Issues found: ${issues.length} total`);
206
+ for (const issue of issues) {
207
+ const labels = issue.labels?.map((l) => l.name).join(', ') ?? 'none';
208
+ const assignees = issue.assignees?.map((a) => a.login).join(', ') ?? 'none';
209
+ vlog?.log(` #${issue.number}: "${issue.title}" [${labels}] assignees=[${assignees}]`);
210
+ }
205
211
  const { filterByCapabilities } = await import('@bradygaster/squad-sdk/ralph/capabilities');
206
212
  const { handled: capableIssues, skipped: incapableIssues } = filterByCapabilities(issues, capabilities);
207
213
  for (const { issue, missing } of incapableIssues) {
@@ -251,7 +257,7 @@ async function runCheck(rules, modules, roster, hasCopilot, autoAssign, capabili
251
257
  console.error(`${RED}✗${RESET} [${timestamp}] Failed to assign @copilot to #${issue.number}: ${e.message}`);
252
258
  }
253
259
  }
254
- const prState = await checkPRs(roster, adapter);
260
+ const prState = await checkPRs(roster, adapter, vlog);
255
261
  return { untriaged: untriaged.length, assigned: assignedIssues.length, executed: 0, ...prState };
256
262
  }
257
263
  catch (e) {
@@ -329,7 +335,7 @@ async function runPhase(phase, enabled, context, config) {
329
335
  ...context,
330
336
  config: typeof capConfig === 'object' && capConfig !== null
331
337
  ? capConfig
332
- : { enabled: !!capConfig, maxConcurrent: config.maxConcurrent, timeout: config.timeout },
338
+ : { enabled: !!capConfig, maxConcurrent: config.maxConcurrent, timeout: config.timeout, dispatchMode: config.dispatchMode },
333
339
  };
334
340
  const result = await cap.execute(capContext);
335
341
  results.set(cap.name, result);
@@ -414,7 +420,7 @@ function legacyToConfig(options) {
414
420
  };
415
421
  }
416
422
  // ── Exported helpers (backward compat) ───────────────────────────
417
- export { findExecutableIssues } from './capabilities/execute.js';
423
+ export { findExecutableIssues, classifyIssue } from './capabilities/execute.js';
418
424
  export function buildAgentCommand(issue, teamRoot, options) {
419
425
  const prompt = `Work on issue #${issue.number}: ${issue.title}. Read the issue body for full details.`;
420
426
  if (options.agentCmd) {
@@ -500,6 +506,31 @@ export async function runWatch(dest, options) {
500
506
  catch (err) {
501
507
  return fatal(`Could not detect platform: ${err.message}`);
502
508
  }
509
+ // Verbose logger
510
+ const vlog = createVerboseLogger(config.verbose ?? false);
511
+ vlog.section('Startup');
512
+ vlog.table({
513
+ repo: teamRoot,
514
+ platform: adapter.type,
515
+ // This table only prints when verbose mode is active, so verbose is always true here.
516
+ verbose: config.verbose ?? false,
517
+ interval: `${config.interval}m`,
518
+ execute: config.execute ?? false,
519
+ agentCmd: config.agentCmd ?? '(default: gh copilot)',
520
+ dispatchMode: config.capabilities['wave-dispatch'] ? 'wave' : 'task',
521
+ maxConcurrent: config.maxConcurrent ?? 1,
522
+ });
523
+ // Auth check (verbose only — avoid unnecessary process spawn on every startup)
524
+ if (config.verbose && adapter.type === 'github') {
525
+ try {
526
+ const authOut = execFileSync('gh', ['auth', 'status'], { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
527
+ const activeAccount = authOut.match(/Logged in to .* account (\S+)/)?.[1];
528
+ vlog.log(`Auth: ${activeAccount ?? 'unknown'}`);
529
+ }
530
+ catch {
531
+ vlog.warn('gh auth status failed — API calls may fail silently');
532
+ }
533
+ }
503
534
  // Verify platform CLI availability
504
535
  if (adapter.type === 'github') {
505
536
  if (!(await ghAvailable()))
@@ -521,11 +552,6 @@ export async function runWatch(dest, options) {
521
552
  fatal('az CLI not authenticated — run: az login');
522
553
  }
523
554
  }
524
- // ── Lockfile guard (#743) ────────────────────────────────────────
525
- if (!acquireLock(teamRoot)) {
526
- console.log(`${YELLOW}⚠️${RESET} Another watch process holds the lock for this directory. Exiting.`);
527
- return;
528
- }
529
555
  // Parse team.md
530
556
  const content = storage.readSync(teamMd) ?? '';
531
557
  const roster = parseRoster(content);
@@ -541,6 +567,20 @@ export async function runWatch(dest, options) {
541
567
  if (roster.length === 0) {
542
568
  fatal('No squad members found in team.md');
543
569
  }
570
+ // Pre-create squad member labels so addTag never fails on missing labels
571
+ if (adapter.ensureTag) {
572
+ for (const member of roster) {
573
+ try {
574
+ await adapter.ensureTag(member.label, { color: 'd4c5f9', description: `Squad triage: ${member.name}` });
575
+ }
576
+ catch { /* best-effort — continue if label creation fails */ }
577
+ }
578
+ try {
579
+ await adapter.ensureTag('squad:copilot', { color: 'd4c5f9', description: 'Squad triage: Copilot coding agent' });
580
+ }
581
+ catch { /* best-effort */ }
582
+ console.log(`${DIM}Labels: ensured ${roster.length + 1} squad labels exist${RESET}`);
583
+ }
544
584
  const hasCopilot = content.includes('🤖 Coding Agent') || content.includes('@copilot');
545
585
  const autoAssign = content.includes('<!-- copilot-auto-assign: true -->');
546
586
  const monitorSessionId = 'ralph-watch';
@@ -566,6 +606,7 @@ export async function runWatch(dest, options) {
566
606
  config: {},
567
607
  agentCmd: config.agentCmd,
568
608
  copilotFlags: config.copilotFlags,
609
+ verbose: config.verbose,
569
610
  };
570
611
  const enabledCapabilities = await preflightCapabilities(registry, config, baseContext);
571
612
  // Print startup banner
@@ -579,29 +620,44 @@ export async function runWatch(dest, options) {
579
620
  if (config.execute) {
580
621
  console.log(`${DIM}Max concurrent: ${config.maxConcurrent} | Timeout: ${config.timeout}m${RESET}`);
581
622
  }
623
+ // Warn when fleet dispatch mode is set but the fleet-dispatch capability is not enabled
624
+ if ((config.dispatchMode === 'fleet' || config.dispatchMode === 'hybrid') &&
625
+ !enabledCapabilities.some(c => c.name === 'fleet-dispatch')) {
626
+ console.warn(`${YELLOW}⚠${RESET} dispatchMode="${config.dispatchMode}" but fleet-dispatch capability is not enabled. Read-heavy issues will not be batched.`);
627
+ }
582
628
  console.log();
629
+ // Fix 2: Set up log-file tee (after banner so the banner itself is captured too)
630
+ let logStream;
631
+ if (config.logFile) {
632
+ const resolvedLogFile = path.resolve(config.logFile);
633
+ logStream = fs.createWriteStream(resolvedLogFile, { flags: 'a' });
634
+ const origLog = console.log.bind(console);
635
+ console.log = (...args) => {
636
+ origLog(...args);
637
+ const timestamp = new Date().toISOString().replace('T', ' ').slice(0, 19);
638
+ const line = args.map(a => (typeof a === 'string' ? a : String(a))).join(' ');
639
+ // Strip ANSI escape codes for the file
640
+ const plain = line.replace(/\x1b\[[0-9;]*m/g, '');
641
+ logStream.write(`[${timestamp}] ${plain}\n`);
642
+ };
643
+ console.log(`${DIM}Log file: ${resolvedLogFile}${RESET}`);
644
+ }
645
+ // Fix 3: Immediate visual feedback after banner
646
+ console.log(`Running first check now...`);
583
647
  // Initialize circuit breaker (#515)
584
648
  const circuitBreaker = new PredictiveCircuitBreaker();
585
- // Enhanced model circuit breaker (#743)
586
- const modelCB = new ModelCircuitBreaker(squadDirInfo.path, {
587
- preferredModel: config.capabilities['circuit-breaker']?.['preferredModel'],
588
- fallbackChain: config.capabilities['circuit-breaker']?.['fallbackChain'],
589
- });
590
649
  let cbState = loadCBState(squadDirInfo.path);
591
650
  let round = 0;
592
651
  let roundInProgress = false;
593
652
  async function executeRound() {
594
653
  const ts = new Date().toLocaleTimeString();
595
- markRoundStart(); // (#743) Track round duration for heartbeat
596
- // (#743) Update lockfile to running
597
- updateLock(teamRoot, 'running', round + 1, 0, getConsecutiveFailures());
654
+ const roundStart = Date.now();
598
655
  // Circuit breaker gate
599
656
  if (cbState.status === 'open') {
600
657
  const elapsed = Date.now() - new Date(cbState.openedAt).getTime();
601
658
  if (elapsed < cbState.cooldownMinutes * 60_000) {
602
659
  const left = Math.ceil((cbState.cooldownMinutes * 60_000 - elapsed) / 1000);
603
660
  console.log(`${YELLOW}⏸${RESET} [${ts}] Circuit open — cooling down (${left}s left)`);
604
- updateLock(teamRoot, 'idle', round, 0, getConsecutiveFailures());
605
661
  return;
606
662
  }
607
663
  cbState.status = 'half-open';
@@ -624,9 +680,7 @@ export async function runWatch(dest, options) {
624
680
  cbState.consecutiveSuccesses = 0;
625
681
  cbState.cooldownMinutes = Math.min(cbState.cooldownMinutes * 2, 30);
626
682
  saveCBState(squadDirInfo.path, cbState);
627
- modelCB.onRateLimit(); // (#743) Cascade to model CB
628
683
  console.log(`${RED}🛑${RESET} [${ts}] Circuit opened — quota ${light === 'red' ? 'critical' : 'predicted low'} (${rl.remaining}/${rl.limit})`);
629
- updateLock(teamRoot, 'idle', round, 0, getConsecutiveFailures());
630
684
  return;
631
685
  }
632
686
  if (light === 'amber') {
@@ -638,7 +692,10 @@ export async function runWatch(dest, options) {
638
692
  }
639
693
  round++;
640
694
  const roundContext = { ...baseContext, round };
641
- // Phase 1: pre-scan (self-pull, health-check, stale-reclaim, subsquad discovery)
695
+ // Fix 1: Print round start marker
696
+ console.log(`\n${DIM}Starting round ${round}...${RESET}`);
697
+ vlog.section(`Round ${round}`);
698
+ // Phase 1: pre-scan (self-pull, subsquad discovery)
642
699
  await runPhase('pre-scan', enabledCapabilities, roundContext, config);
643
700
  // SubSquad discovery (informational, not a capability)
644
701
  const subSquads = discoverSubSquads(teamRoot);
@@ -646,7 +703,7 @@ export async function runWatch(dest, options) {
646
703
  console.log(`${DIM}📂 Discovered ${subSquads.length} subsquad(s): ${subSquads.map(s => s.name).join(', ')}${RESET}`);
647
704
  }
648
705
  // Core: triage (always runs — not a capability)
649
- const roundState = await runCheck(rules, modules, roster, hasCopilot, autoAssign, capabilities, adapter);
706
+ const roundState = await runCheck(rules, modules, roster, hasCopilot, autoAssign, capabilities, adapter, vlog);
650
707
  // Phase 2: post-triage (two-pass hydration)
651
708
  await runPhase('post-triage', enabledCapabilities, roundContext, config);
652
709
  // Phase 3: post-execute (execute issues, wave dispatch, board updates)
@@ -656,7 +713,7 @@ export async function runWatch(dest, options) {
656
713
  if (execResult?.data?.['executed']) {
657
714
  roundState.executed = execResult.data['executed'];
658
715
  }
659
- // Phase 4: housekeeping (monitoring, retro, decision hygiene, heartbeat, webhook-alerts)
716
+ // Phase 4: housekeeping (monitoring, retro, decision hygiene)
660
717
  await runPhase('housekeeping', enabledCapabilities, roundContext, config);
661
718
  await eventBus.emit({
662
719
  type: 'agent:milestone', sessionId: monitorSessionId,
@@ -665,10 +722,21 @@ export async function runWatch(dest, options) {
665
722
  timestamp: new Date(),
666
723
  });
667
724
  await monitor.healthCheck();
725
+ // Verbose board counters
726
+ vlog.table({
727
+ untriaged: roundState.untriaged,
728
+ assigned: roundState.assigned,
729
+ drafts: roundState.drafts,
730
+ needsReview: roundState.needsReview,
731
+ changesRequested: roundState.changesRequested,
732
+ ciFailures: roundState.ciFailures,
733
+ readyToMerge: roundState.readyToMerge,
734
+ executed: roundState.executed,
735
+ });
668
736
  reportBoard(roundState, round);
669
- // (#743) Record success for heartbeat tracking
670
- recordSuccess();
671
- modelCB.onSuccess();
737
+ // Fix 1: Print next poll time
738
+ const nextPollTime = new Date(Date.now() + interval * 60 * 1000);
739
+ console.log(`${DIM}Next poll at ${nextPollTime.toLocaleTimeString()}${RESET}`);
672
740
  // Post-round: update circuit breaker on success
673
741
  if (cbState.status === 'half-open') {
674
742
  cbState.consecutiveSuccesses++;
@@ -684,8 +752,9 @@ export async function runWatch(dest, options) {
684
752
  cbState.consecutiveFailures = 0;
685
753
  }
686
754
  saveCBState(squadDirInfo.path, cbState);
687
- // (#743) Update lockfile to idle
688
- updateLock(teamRoot, 'idle', round, 0, getConsecutiveFailures());
755
+ const roundEnd = Date.now();
756
+ const elapsed = ((roundEnd - roundStart) / 1000).toFixed(1);
757
+ vlog.log(`Round ${round} complete (${elapsed}s)`);
689
758
  }
690
759
  // Run immediately, then on interval
691
760
  await executeRound();
@@ -699,7 +768,6 @@ export async function runWatch(dest, options) {
699
768
  }
700
769
  catch (e) {
701
770
  const err = e;
702
- recordFailure(); // (#743) Track consecutive failures
703
771
  if (adapter.type === 'github' && isRateLimitError(err)) {
704
772
  cbState.status = 'open';
705
773
  cbState.openedAt = new Date().toISOString();
@@ -707,25 +775,11 @@ export async function runWatch(dest, options) {
707
775
  cbState.consecutiveSuccesses = 0;
708
776
  cbState.cooldownMinutes = Math.min(cbState.cooldownMinutes * 2, 30);
709
777
  saveCBState(squadDirInfo.path, cbState);
710
- modelCB.onRateLimit();
711
778
  console.log(`${RED}🛑${RESET} Rate limited — circuit opened, cooldown ${cbState.cooldownMinutes}m`);
712
779
  }
713
780
  else {
714
781
  console.error(`${RED}✗${RESET} Round error: ${err.message}`);
715
782
  }
716
- updateLock(teamRoot, 'error', round, 1, getConsecutiveFailures());
717
- // (#743) Post-failure remediation — tiered self-healing
718
- const failures = getConsecutiveFailures();
719
- if (failures >= 3) {
720
- const remediation = await runPostFailureRemediation(failures, round, teamRoot, modelCB);
721
- for (const action of remediation.actions) {
722
- console.log(`${YELLOW}🔧${RESET} [self-heal] ${action}`);
723
- }
724
- if (remediation.pauseSeconds > 0) {
725
- console.log(`${YELLOW}⏸${RESET} Pausing ${remediation.pauseSeconds / 60} minutes due to repeated failures`);
726
- await new Promise(r => setTimeout(r, remediation.pauseSeconds * 1000));
727
- }
728
- }
729
783
  }
730
784
  finally {
731
785
  roundInProgress = false;
@@ -746,8 +800,8 @@ export async function runWatch(dest, options) {
746
800
  });
747
801
  await monitor.stop();
748
802
  saveCBState(squadDirInfo.path, cbState);
749
- releaseLock(teamRoot); // (#743) Clean up lockfile
750
803
  console.log(`\n${DIM}🔄 Ralph — Watch stopped${RESET}`);
804
+ logStream?.end();
751
805
  resolve();
752
806
  };
753
807
  process.on('SIGINT', shutdown);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/watch/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/watch/index.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,8 @@ export interface WatchContext {
36
36
  /** Hidden --agent-cmd override. */
37
37
  agentCmd?: string;
38
38
  copilotFlags?: string;
39
+ /** Verbose diagnostic output enabled. */
40
+ verbose?: boolean;
39
41
  }
40
42
  /** Contract that every watch capability must implement. */
41
43
  export interface WatchCapability {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/watch/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,yCAAyC;AACzC,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;AAEtF,8CAA8C;AAC9C,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,8DAA8D;AAC9D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACpE,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,2DAA2D;AAC3D,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,uDAAuD;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,CAAC;IAE3C,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAE5B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B,2DAA2D;IAC3D,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3D,kCAAkC;IAClC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/watch/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,yCAAyC;AACzC,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;AAEtF,8CAA8C;AAC9C,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,8DAA8D;AAC9D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACpE,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,2DAA2D;AAC3D,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,uDAAuD;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,CAAC;IAE3C,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAE5B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B,2DAA2D;IAC3D,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3D,kCAAkC;IAClC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3D"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Verbose logger for squad watch debugging.
3
+ * Only outputs when --verbose is enabled.
4
+ */
5
+ export declare function createVerboseLogger(enabled: boolean): {
6
+ log: (...args: unknown[]) => void;
7
+ warn: (...args: unknown[]) => void;
8
+ section: (title: string) => void;
9
+ table: (data: Record<string, unknown>) => void;
10
+ };
11
+ export type VerboseLogger = ReturnType<typeof createVerboseLogger>;
12
+ //# sourceMappingURL=verbose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verbose.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/watch/verbose.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO;mBAEjC,OAAO,EAAE;oBAGR,OAAO,EAAE;qBAGR,MAAM;kBAGT,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;EAQxC;AAED,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Verbose logger for squad watch debugging.
3
+ * Only outputs when --verbose is enabled.
4
+ */
5
+ export function createVerboseLogger(enabled) {
6
+ return {
7
+ log: (...args) => {
8
+ if (enabled)
9
+ console.log('[verbose]', ...args);
10
+ },
11
+ warn: (...args) => {
12
+ if (enabled)
13
+ console.log('[verbose] ⚠️', ...args);
14
+ },
15
+ section: (title) => {
16
+ if (enabled)
17
+ console.log(`[verbose] ── ${title} ──`);
18
+ },
19
+ table: (data) => {
20
+ if (enabled) {
21
+ for (const [k, v] of Object.entries(data)) {
22
+ console.log(`[verbose] ${k}: ${v}`);
23
+ }
24
+ }
25
+ },
26
+ };
27
+ }
28
+ //# sourceMappingURL=verbose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verbose.js","sourceRoot":"","sources":["../../../../src/cli/commands/watch/verbose.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO;QACL,GAAG,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;YAC1B,IAAI,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;YAC3B,IAAI,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,EAAE,CAAC,KAAa,EAAE,EAAE;YACzB,IAAI,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,KAAK,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,EAAE,CAAC,IAA6B,EAAE,EAAE;YACvC,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1C,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"detect-squad-dir.d.ts","sourceRoot":"","sources":["../../../src/cli/core/detect-squad-dir.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsBtE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CA0BzD"}
1
+ {"version":3,"file":"detect-squad-dir.d.ts","sourceRoot":"","sources":["../../../src/cli/core/detect-squad-dir.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqBtE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CA0BzD"}