jonah-fleet 1.34.0 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ All notable changes to `jonah-fleet` will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.35.0](https://github.com/Jonah-Projects/jonah-fleet/compare/v1.34.0...v1.35.0) (2026-10-09)
9
+
10
+
11
+ ### Features
12
+
13
+ * **daemon,telemetry:** halt daemon when plan quota drops below 20% unless full burn enabled ([#663](https://github.com/Jonah-Projects/jonah-fleet/issues/663)) ([33e0dc2](https://github.com/Jonah-Projects/jonah-fleet/commit/33e0dc202585944ce209bf54475b8465e19507d1))
14
+
8
15
  ## [1.34.0](https://github.com/Jonah-Projects/jonah-fleet/compare/v1.33.0...v1.34.0) (2026-10-03)
9
16
 
10
17
 
@@ -33,6 +40,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
33
40
 
34
41
  * **peer-review,runner:** mention target PR with native GitHub links in run logs ([#599](https://github.com/Jonah-Projects/jonah-fleet/issues/599)) ([e22a1fb](https://github.com/Jonah-Projects/jonah-fleet/commit/e22a1fb42141b3748633289d9ac9582a70ffe631))
35
42
 
43
+ ## [Unreleased] - 2026-10-08
44
+
45
+ ### Features
46
+
47
+ * **daemon,telemetry:** halt daemon execution when plan quota drops below 20% in either 5h or 7-day windows, with `--full-burn` CLI flag, environment variable, manifest configuration, and interactive hotkey override
48
+
36
49
  ## [Unreleased] - 2026-10-03
37
50
 
38
51
  ### Features
@@ -6,6 +6,7 @@ export interface DaemonCommandOptions {
6
6
  model?: string;
7
7
  foreground?: boolean;
8
8
  verbose?: boolean;
9
+ fullBurn?: boolean;
9
10
  }
10
11
  export declare function runDaemonCommand(action?: string, options?: DaemonCommandOptions): Promise<void>;
11
12
  //# sourceMappingURL=daemon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/commands/daemon.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0IzG"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/commands/daemon.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAsB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkJzG"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6IA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA8IA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1793,6 +1793,94 @@ async function fetchActualPlanQuota(options = {}) {
1793
1793
  };
1794
1794
  }
1795
1795
  }
1796
+ function checkPlanQuotaDepletion(quota, options = {}) {
1797
+ const threshold = options.thresholdPct ?? 20;
1798
+ if (!quota || !quota.available) {
1799
+ return { depleted: false, thresholdPct: threshold };
1800
+ }
1801
+ const model = options.model?.toLowerCase() || "";
1802
+ const isClaude = model.includes("claude") || model.includes("gpt") || model.includes("openai") || model.includes("anthropic");
1803
+ let groupName = isClaude ? "Claude and GPT models" : "Gemini Models";
1804
+ let weeklyPct = isClaude ? quota.claudeWeeklyRemainingPct : quota.geminiWeeklyRemainingPct;
1805
+ let weeklyReset = isClaude ? quota.claudeWeeklyResetTime : quota.geminiWeeklyResetTime;
1806
+ let window5hPct = isClaude ? quota.claude5hRemainingPct : quota.gemini5hRemainingPct;
1807
+ let window5hReset = isClaude ? quota.claude5hResetTime : quota.gemini5hResetTime;
1808
+ if (quota.groups) {
1809
+ const targetGroup = quota.groups[groupName];
1810
+ if (targetGroup) {
1811
+ if (weeklyPct === void 0) {
1812
+ weeklyPct = targetGroup.weeklyRemainingPct;
1813
+ weeklyReset = targetGroup.weeklyResetTime;
1814
+ }
1815
+ if (window5hPct === void 0) {
1816
+ window5hPct = targetGroup.window5hRemainingPct;
1817
+ window5hReset = targetGroup.window5hResetTime;
1818
+ }
1819
+ if (weeklyPct === void 0 || window5hPct === void 0) {
1820
+ for (const b of targetGroup.buckets || []) {
1821
+ if ((b.window === "5h" || b.id.includes("5h")) && window5hPct === void 0) {
1822
+ window5hPct = b.remainingPercentage;
1823
+ window5hReset = b.resetTime;
1824
+ } else if ((b.window === "weekly" || b.id.includes("weekly")) && weeklyPct === void 0) {
1825
+ weeklyPct = b.remainingPercentage;
1826
+ weeklyReset = b.resetTime;
1827
+ }
1828
+ }
1829
+ }
1830
+ } else if (weeklyPct === void 0 && window5hPct === void 0) {
1831
+ const groupKeys = Object.keys(quota.groups);
1832
+ if (groupKeys.length > 0) {
1833
+ const fallbackGroup = quota.groups[groupKeys[0]];
1834
+ if (fallbackGroup) {
1835
+ groupName = fallbackGroup.name;
1836
+ weeklyPct = fallbackGroup.weeklyRemainingPct;
1837
+ weeklyReset = fallbackGroup.weeklyResetTime;
1838
+ window5hPct = fallbackGroup.window5hRemainingPct;
1839
+ window5hReset = fallbackGroup.window5hResetTime;
1840
+ }
1841
+ }
1842
+ }
1843
+ }
1844
+ const is5hDepleted = window5hPct !== void 0 && window5hPct < threshold;
1845
+ const isWeeklyDepleted = weeklyPct !== void 0 && weeklyPct < threshold;
1846
+ if (is5hDepleted || isWeeklyDepleted) {
1847
+ if (is5hDepleted && isWeeklyDepleted) {
1848
+ const lowerWindow = window5hPct <= weeklyPct ? "5h" : "7days";
1849
+ const remainingPct = Math.min(window5hPct, weeklyPct);
1850
+ const resetTime = lowerWindow === "5h" ? window5hReset : weeklyReset;
1851
+ return {
1852
+ depleted: true,
1853
+ thresholdPct: threshold,
1854
+ window: lowerWindow,
1855
+ remainingPct,
1856
+ resetTime,
1857
+ groupName,
1858
+ message: `${groupName} quota is below ${threshold}% in both 5h (${window5hPct.toFixed(1)}%) and 7days (${weeklyPct.toFixed(1)}%) windows`
1859
+ };
1860
+ }
1861
+ if (is5hDepleted) {
1862
+ return {
1863
+ depleted: true,
1864
+ thresholdPct: threshold,
1865
+ window: "5h",
1866
+ remainingPct: window5hPct,
1867
+ resetTime: window5hReset,
1868
+ groupName,
1869
+ message: `${groupName} 5h quota is at ${window5hPct.toFixed(1)}% remaining (<${threshold}% floor)`
1870
+ };
1871
+ }
1872
+ return {
1873
+ depleted: true,
1874
+ thresholdPct: threshold,
1875
+ window: "7days",
1876
+ remainingPct: weeklyPct,
1877
+ resetTime: weeklyReset,
1878
+ groupName,
1879
+ message: `${groupName} 7days weekly quota is at ${weeklyPct.toFixed(1)}% remaining (<${threshold}% floor)`
1880
+ };
1881
+ }
1882
+ return { depleted: false, thresholdPct: threshold };
1883
+ }
1796
1884
  function formatPlanQuotaSummary(quota, options = {}) {
1797
1885
  if (!quota || !quota.available) {
1798
1886
  return "Plan Quota: Unavailable";
@@ -6398,6 +6486,10 @@ var KeyboardController = class {
6398
6486
  this.options.onToggleVerbose?.();
6399
6487
  return;
6400
6488
  }
6489
+ if (str === "b" || str === "B" || keyName === "b") {
6490
+ this.options.onToggleFullBurn?.();
6491
+ return;
6492
+ }
6401
6493
  if (str === "l" || str === "L" || keyName === "l") {
6402
6494
  this.options.onTailLog?.();
6403
6495
  return;
@@ -6589,6 +6681,7 @@ function printKeybindingCheatSheet() {
6589
6681
  console.log(` ${pc13.bold(pc13.green("p"))} Pause / resume automated polling intervals`);
6590
6682
  console.log(` ${pc13.bold(pc13.green("s"))} Print current daemon status summary card`);
6591
6683
  console.log(` ${pc13.bold(pc13.green("v"))} Toggle verbose streaming logging live`);
6684
+ console.log(` ${pc13.bold(pc13.green("b"))} Toggle full burn mode (override <20% plan quota floor)`);
6592
6685
  console.log(` ${pc13.bold(pc13.green("l"))} Tail recent lines from .jonah-fleet/daemon.log`);
6593
6686
  console.log(` ${pc13.bold(pc13.green("w"))} Inspect active worktrees and clean stale ones`);
6594
6687
  console.log(` ${pc13.bold(pc13.green("q"))} Graceful shutdown (waits for active routine to finish)`);
@@ -6622,6 +6715,11 @@ function printDaemonStatusSummary(options) {
6622
6715
  ` Verbose Mode: ${verbose ? pc13.green("ENABLED (streaming tokens)") : pc13.gray("DISABLED (compact spinner)")}`
6623
6716
  );
6624
6717
  }
6718
+ if (state.fullBurn !== void 0) {
6719
+ console.log(
6720
+ ` Full Burn: ${state.fullBurn ? pc13.red(pc13.bold("ENABLED (quota floor bypassed)")) : pc13.green("DISABLED (stops at <20% quota)")}`
6721
+ );
6722
+ }
6625
6723
  if (pendingRoutine) {
6626
6724
  console.log(` Queued Routine: ${pc13.cyan(pc13.bold(pendingRoutine))}`);
6627
6725
  }
@@ -6680,10 +6778,11 @@ function formatDaemonStatusLine(options = {}) {
6680
6778
  const columns = options.columns !== void 0 ? options.columns : process.stderr.columns || 80;
6681
6779
  const maxCols = Math.max(20, (columns || 80) - 2);
6682
6780
  const includeTip = columns >= 55;
6781
+ const burnBadge = options.fullBurn ? pc13.red(" [FULL BURN]") : "";
6683
6782
  let core;
6684
6783
  if (options.isPaused) {
6685
6784
  const queueStr = options.pendingRoutine ? pc13.cyan(` [Queued: ${options.pendingRoutine}]`) : "";
6686
- core = `${pc13.dim("[" + timeString + "]")} \u23F8 ${pc13.yellow("PAUSED")}${queueStr}`;
6785
+ core = `${pc13.dim("[" + timeString + "]")} \u23F8 ${pc13.yellow("PAUSED")}${burnBadge}${queueStr}`;
6687
6786
  } else {
6688
6787
  const nextCheck = options.nextCheckTime !== void 0 ? options.nextCheckTime : nowMs;
6689
6788
  const diffMs = Math.max(0, nextCheck - nowMs);
@@ -6693,7 +6792,7 @@ function formatDaemonStatusLine(options = {}) {
6693
6792
  const timeStr = `${mins}m ${secs < 10 ? "0" : ""}${secs}s`;
6694
6793
  const prStr = options.lastOpenPRCount !== void 0 ? ` (${options.lastOpenPRCount} ready PRs)` : "";
6695
6794
  const queueStr = options.pendingRoutine ? pc13.cyan(` [Queued: ${options.pendingRoutine}]`) : "";
6696
- core = `${pc13.dim("[" + timeString + "]")} \u26A1 ${pc13.dim("Watchdog Idle \xB7 Next check in " + timeStr + prStr)}${queueStr}`;
6795
+ core = `${pc13.dim("[" + timeString + "]")} \u26A1 ${pc13.dim("Watchdog Idle \xB7 Next check in " + timeStr + prStr)}${burnBadge}${queueStr}`;
6697
6796
  }
6698
6797
  if (!includeTip) {
6699
6798
  return truncateAnsi(core, maxCols);
@@ -6751,6 +6850,46 @@ function isDaemonRunning(repoRoot) {
6751
6850
  return false;
6752
6851
  }
6753
6852
  }
6853
+ function isFullBurnEnabled(options = {}, state, repoRoot) {
6854
+ if (options.fullBurn === true || state?.fullBurn === true) return true;
6855
+ if (process.env.JONAH_FLEET_FULL_BURN === "true" || process.env.JONAH_FLEET_FULL_BURN === "1" || process.env.FULL_BURN === "true" || process.env.FULL_BURN === "1") {
6856
+ return true;
6857
+ }
6858
+ if (repoRoot) {
6859
+ try {
6860
+ const manifest = loadManifest(repoRoot);
6861
+ if (manifest?.budgets?.fullBurn === true || manifest?.daemon?.fullBurn === true) {
6862
+ return true;
6863
+ }
6864
+ } catch {
6865
+ }
6866
+ }
6867
+ return false;
6868
+ }
6869
+ async function checkDaemonQuotaGuard(repoRoot, options = {}, state, cachedQuota) {
6870
+ if (isFullBurnEnabled(options, state, repoRoot)) {
6871
+ return { shouldStop: false };
6872
+ }
6873
+ let quota = cachedQuota;
6874
+ if (!quota) {
6875
+ if (options.getPlanQuota) {
6876
+ quota = await options.getPlanQuota(repoRoot);
6877
+ } else {
6878
+ quota = await fetchActualPlanQuota({ repoRoot });
6879
+ }
6880
+ }
6881
+ if (!quota || !quota.available) {
6882
+ return { shouldStop: false };
6883
+ }
6884
+ const depletion = checkPlanQuotaDepletion(quota, {
6885
+ thresholdPct: options.quotaThresholdPct ?? 20,
6886
+ model: options.model
6887
+ });
6888
+ if (depletion.depleted) {
6889
+ return { shouldStop: true, depletion };
6890
+ }
6891
+ return { shouldStop: false };
6892
+ }
6754
6893
  function isBotLogin(login) {
6755
6894
  if (!login) return false;
6756
6895
  const l = login.toLowerCase().trim();
@@ -7072,9 +7211,16 @@ async function startBackgroundDaemon(repoRoot, options = {}) {
7072
7211
  const existing = readDaemonState(repoRoot);
7073
7212
  throw new Error(`Daemon is already running with PID ${existing?.pid}`);
7074
7213
  }
7214
+ const guard = await checkDaemonQuotaGuard(repoRoot, options);
7215
+ if (guard.shouldStop) {
7216
+ throw new Error(
7217
+ `Plan quota is below 20% (${guard.depletion?.message}). Daemon stopped to protect compute budget. Run with --full-burn to bypass this guard.`
7218
+ );
7219
+ }
7075
7220
  const reviewInterval = options.reviewInterval || 3;
7076
7221
  const autoworkInterval = options.autoworkInterval || options.interval || 30;
7077
7222
  const routines = options.routines || ["peer-review", "autowork"];
7223
+ const fullBurn = isFullBurnEnabled(options, void 0, repoRoot);
7078
7224
  const logFilePath = path15.join(repoRoot, ".jonah-fleet", "daemon.log");
7079
7225
  fs15.mkdirSync(path15.dirname(logFilePath), { recursive: true });
7080
7226
  const logFd = fs15.openSync(logFilePath, "a");
@@ -7095,11 +7241,14 @@ async function startBackgroundDaemon(repoRoot, options = {}) {
7095
7241
  if (options.verbose) {
7096
7242
  args.push("--verbose");
7097
7243
  }
7244
+ if (fullBurn) {
7245
+ args.push("--full-burn");
7246
+ }
7098
7247
  const child = spawn2(process.execPath, [cliPath, ...args], {
7099
7248
  cwd: repoRoot,
7100
7249
  detached: true,
7101
7250
  stdio: ["ignore", logFd, logFd],
7102
- env: { ...process.env, JONAH_FLEET_DAEMON: "true" }
7251
+ env: { ...process.env, JONAH_FLEET_DAEMON: "true", ...fullBurn ? { JONAH_FLEET_FULL_BURN: "true" } : {} }
7103
7252
  });
7104
7253
  child.unref();
7105
7254
  const state = {
@@ -7108,7 +7257,8 @@ async function startBackgroundDaemon(repoRoot, options = {}) {
7108
7257
  reviewIntervalMinutes: reviewInterval,
7109
7258
  autoworkIntervalMinutes: autoworkInterval,
7110
7259
  routines,
7111
- status: "idle"
7260
+ status: "idle",
7261
+ fullBurn
7112
7262
  };
7113
7263
  writeDaemonState(repoRoot, state);
7114
7264
  return state;
@@ -7246,9 +7396,22 @@ async function drainReviewQueue(drainOptions) {
7246
7396
  runRoutine = runLocalRoutine,
7247
7397
  onAttempted,
7248
7398
  failureCooldowns,
7249
- onQuotaExhausted
7399
+ onQuotaExhausted,
7400
+ onQuotaDepleted
7250
7401
  } = drainOptions;
7251
7402
  if (isStopping()) return;
7403
+ const guard = await checkDaemonQuotaGuard(repoRoot, options, state);
7404
+ if (guard.shouldStop) {
7405
+ if (clearTicker) clearTicker();
7406
+ console.warn(
7407
+ pc14.red(
7408
+ `
7409
+ \u{1F6D1} Peer Review Watchdog stopped: Plan quota is below 20% (${guard.depletion?.message}).`
7410
+ )
7411
+ );
7412
+ onQuotaDepleted?.(guard.depletion);
7413
+ return;
7414
+ }
7252
7415
  if (state) {
7253
7416
  state.lastReviewCheckAt = (/* @__PURE__ */ new Date()).toISOString();
7254
7417
  writeDaemonState(repoRoot, state);
@@ -7292,6 +7455,18 @@ async function drainReviewQueue(drainOptions) {
7292
7455
  const currentPR = candidatePRs[0];
7293
7456
  const targetLabel = formatTargetLabel(`PR #${currentPR.number}`, currentPR.title);
7294
7457
  let targetPRStr = targetLabel;
7458
+ const loopGuard = await checkDaemonQuotaGuard(repoRoot, options, state);
7459
+ if (loopGuard.shouldStop) {
7460
+ if (clearTicker) clearTicker();
7461
+ console.warn(
7462
+ pc14.red(
7463
+ `
7464
+ \u{1F6D1} Peer Review Watchdog stopped: Plan quota is below 20% (${loopGuard.depletion?.message}).`
7465
+ )
7466
+ );
7467
+ onQuotaDepleted?.(loopGuard.depletion);
7468
+ break;
7469
+ }
7295
7470
  try {
7296
7471
  if (clearTicker) clearTicker();
7297
7472
  if (state) {
@@ -7325,6 +7500,20 @@ async function drainReviewQueue(drainOptions) {
7325
7500
  }
7326
7501
  }
7327
7502
  });
7503
+ if (result.planQuota) {
7504
+ const postGuard = await checkDaemonQuotaGuard(repoRoot, options, state, result.planQuota);
7505
+ if (postGuard.shouldStop) {
7506
+ if (clearTicker) clearTicker();
7507
+ console.warn(
7508
+ pc14.red(
7509
+ `
7510
+ \u{1F6D1} Peer Review Watchdog stopped: Plan quota dropped below 20% after routine (${postGuard.depletion?.message}).`
7511
+ )
7512
+ );
7513
+ onQuotaDepleted?.(postGuard.depletion);
7514
+ break;
7515
+ }
7516
+ }
7328
7517
  const activeTargetStr = targetPRStr;
7329
7518
  const match = activeTargetStr?.match(/PR\s*#?([0-9]+)/i);
7330
7519
  const prNum = match ? parseInt(match[1], 10) : currentPR.number;
@@ -7437,6 +7626,18 @@ async function performAutoworkScan(scanOptions) {
7437
7626
  onDiagnosticCard
7438
7627
  } = scanOptions;
7439
7628
  if (isStopping()) return { executed: false, reason: "stopping" };
7629
+ const initialGuard = await checkDaemonQuotaGuard(repoRoot, options, state);
7630
+ if (initialGuard.shouldStop) {
7631
+ if (clearTicker) clearTicker();
7632
+ console.warn(
7633
+ pc14.red(
7634
+ `
7635
+ \u{1F6D1} Autowork Backlog Scan stopped: Plan quota depleted (<20% remaining). ${initialGuard.depletion?.message}`
7636
+ )
7637
+ );
7638
+ scanOptions.onQuotaDepleted?.(initialGuard.depletion);
7639
+ return { executed: false, reason: "quota_depleted" };
7640
+ }
7440
7641
  const routines = options.routines || ["peer-review", "autowork"];
7441
7642
  if (routines.includes("peer-review")) {
7442
7643
  const pendingPRs = (await getPRs(repoRoot)).length;
@@ -7457,7 +7658,8 @@ async function performAutoworkScan(scanOptions) {
7457
7658
  runRoutine,
7458
7659
  onAttempted: scanOptions.onAttempted,
7459
7660
  failureCooldowns: scanOptions.failureCooldowns,
7460
- onQuotaExhausted: scanOptions.onQuotaExhausted
7661
+ onQuotaExhausted: scanOptions.onQuotaExhausted,
7662
+ onQuotaDepleted: scanOptions.onQuotaDepleted
7461
7663
  });
7462
7664
  const remainingPRs = (await getPRs(repoRoot)).length;
7463
7665
  if (remainingPRs > 0) {
@@ -7507,6 +7709,20 @@ async function performAutoworkScan(scanOptions) {
7507
7709
  }
7508
7710
  });
7509
7711
  recordDaemonSessionUsage(repoRoot, state, result.usage);
7712
+ if (result.planQuota) {
7713
+ const postRoutineGuard = await checkDaemonQuotaGuard(repoRoot, options, state, result.planQuota);
7714
+ if (postRoutineGuard.shouldStop) {
7715
+ if (clearTicker) clearTicker();
7716
+ console.warn(
7717
+ pc14.red(
7718
+ `
7719
+ \u{1F6D1} Autowork Scan stopped: Plan quota dropped below 20% after routine (${postRoutineGuard.depletion?.message}).`
7720
+ )
7721
+ );
7722
+ scanOptions.onQuotaDepleted?.(postRoutineGuard.depletion);
7723
+ return { executed: true, reason: "quota_depleted" };
7724
+ }
7725
+ }
7510
7726
  const isQuota = result.quotaPaused || !result.success && detectQuotaExceeded(result.output || "", result.stderr || "").isQuota;
7511
7727
  if (isQuota) {
7512
7728
  const resetInfo = result.quotaResetInfo || detectQuotaExceeded(result.output || "", result.stderr || "").resetInfo;
@@ -7552,7 +7768,8 @@ function initializeDaemonState(repoRoot, options = {}) {
7552
7768
  routines,
7553
7769
  status: "idle",
7554
7770
  evaluatedPRs: existingState?.evaluatedPRs,
7555
- failureCooldowns: existingState?.failureCooldowns
7771
+ failureCooldowns: existingState?.failureCooldowns,
7772
+ fullBurn: isFullBurnEnabled(options, existingState, repoRoot)
7556
7773
  };
7557
7774
  writeDaemonState(repoRoot, state);
7558
7775
  const failureCooldowns = /* @__PURE__ */ new Map();
@@ -7568,6 +7785,21 @@ async function runDaemonLoop(repoRoot, options = {}) {
7568
7785
  const autoworkInterval = options.autoworkInterval || options.interval || 30;
7569
7786
  const routines = options.routines || ["peer-review", "autowork"];
7570
7787
  const { state, failureCooldowns } = initializeDaemonState(repoRoot, options);
7788
+ const initialGuard = await checkDaemonQuotaGuard(repoRoot, options, state);
7789
+ if (initialGuard.shouldStop) {
7790
+ console.warn(
7791
+ pc14.red(
7792
+ `
7793
+ \u{1F6D1} Daemon stopped: Plan quota is below 20% (${initialGuard.depletion?.message}).
7794
+ Remaining quota must stay >= 20% for 5h and 7days windows.
7795
+ To bypass this safety limit, start with --full-burn or set FULL_BURN=true.
7796
+ `
7797
+ )
7798
+ );
7799
+ clearDaemonState(repoRoot);
7800
+ return;
7801
+ }
7802
+ const isFullBurn = isFullBurnEnabled(options, state, repoRoot);
7571
7803
  console.log(
7572
7804
  renderFleetBanner({
7573
7805
  command: "DAEMON",
@@ -7577,8 +7809,9 @@ async function runDaemonLoop(repoRoot, options = {}) {
7577
7809
  { label: "Review Watchdog", value: `Every ${reviewInterval}m (zero-token preflight)` },
7578
7810
  { label: "Autowork Scan", value: `Every ${autoworkInterval}m` },
7579
7811
  { label: "Routines", value: routines.join(", ") },
7812
+ { label: "Full Burn", value: isFullBurn ? "ENABLED" : "DISABLED (stops at <20% quota)" },
7580
7813
  { label: "Target", value: repoRoot },
7581
- { label: "Hotkeys", value: "'r' review \xB7 'a' autowork \xB7 'p' pause \xB7 's' status \xB7 '?' help" }
7814
+ { label: "Hotkeys", value: "'r' review \xB7 'a' autowork \xB7 'p' pause \xB7 's' status \xB7 'b' burn \xB7 '?' help" }
7582
7815
  ]
7583
7816
  })
7584
7817
  );
@@ -7667,7 +7900,10 @@ Stopping local agent daemon...`));
7667
7900
  getPRs: getPRsFn,
7668
7901
  runRoutine: runRoutineFn,
7669
7902
  failureCooldowns,
7670
- onQuotaExhausted: handleQuotaPause
7903
+ onQuotaExhausted: handleQuotaPause,
7904
+ onQuotaDepleted: async () => {
7905
+ await handleStop();
7906
+ }
7671
7907
  });
7672
7908
  try {
7673
7909
  const prs = await getPRsFn(repoRoot);
@@ -7725,7 +7961,10 @@ Stopping local agent daemon...`));
7725
7961
  getBacklog: options.getBacklog || getBacklogTriageReport,
7726
7962
  runRoutine: runRoutineFn,
7727
7963
  failureCooldowns,
7728
- onQuotaExhausted: handleQuotaPause
7964
+ onQuotaExhausted: handleQuotaPause,
7965
+ onQuotaDepleted: async () => {
7966
+ await handleStop();
7967
+ }
7729
7968
  });
7730
7969
  try {
7731
7970
  const prs = await getPRsFn(repoRoot);
@@ -7786,6 +8025,19 @@ Stopping local agent daemon...`));
7786
8025
  };
7787
8026
  const runTargetedReview = async (prNumber) => {
7788
8027
  if (isStopping || isWorking) return;
8028
+ const guard = await checkDaemonQuotaGuard(repoRoot, options, state);
8029
+ if (guard.shouldStop) {
8030
+ clearTicker();
8031
+ console.warn(
8032
+ pc14.red(
8033
+ `
8034
+ \u{1F6D1} Cannot start targeted review: Plan quota is below 20% (${guard.depletion?.message}).
8035
+ Press 'b' to toggle full-burn mode if you wish to proceed.`
8036
+ )
8037
+ );
8038
+ updateTicker();
8039
+ return;
8040
+ }
7789
8041
  try {
7790
8042
  isWorking = true;
7791
8043
  clearTicker();
@@ -7810,6 +8062,20 @@ Stopping local agent daemon...`));
7810
8062
  writeDaemonState(repoRoot, state);
7811
8063
  }
7812
8064
  });
8065
+ if (result.planQuota) {
8066
+ const postGuard = await checkDaemonQuotaGuard(repoRoot, options, state, result.planQuota);
8067
+ if (postGuard.shouldStop) {
8068
+ clearTicker();
8069
+ console.warn(
8070
+ pc14.red(
8071
+ `
8072
+ \u{1F6D1} Daemon stopped after targeted review: Plan quota dropped below 20% (${postGuard.depletion?.message}).`
8073
+ )
8074
+ );
8075
+ await handleStop();
8076
+ return;
8077
+ }
8078
+ }
7813
8079
  if (result.success) {
7814
8080
  const outcome = result.outcome || detectPeerReviewOutcome({
7815
8081
  output: result.output,
@@ -7853,6 +8119,19 @@ Stopping local agent daemon...`));
7853
8119
  };
7854
8120
  const runTargetedAutowork = async (issueNumber) => {
7855
8121
  if (isStopping || isWorking) return;
8122
+ const guard = await checkDaemonQuotaGuard(repoRoot, options, state);
8123
+ if (guard.shouldStop) {
8124
+ clearTicker();
8125
+ console.warn(
8126
+ pc14.red(
8127
+ `
8128
+ \u{1F6D1} Cannot start targeted autowork: Plan quota is below 20% (${guard.depletion?.message}).
8129
+ Press 'b' to toggle full-burn mode if you wish to proceed.`
8130
+ )
8131
+ );
8132
+ updateTicker();
8133
+ return;
8134
+ }
7856
8135
  try {
7857
8136
  isWorking = true;
7858
8137
  clearTicker();
@@ -7877,6 +8156,20 @@ Stopping local agent daemon...`));
7877
8156
  writeDaemonState(repoRoot, state);
7878
8157
  }
7879
8158
  });
8159
+ if (result.planQuota) {
8160
+ const postGuard = await checkDaemonQuotaGuard(repoRoot, options, state, result.planQuota);
8161
+ if (postGuard.shouldStop) {
8162
+ clearTicker();
8163
+ console.warn(
8164
+ pc14.red(
8165
+ `
8166
+ \u{1F6D1} Daemon stopped after targeted autowork: Plan quota dropped below 20% (${postGuard.depletion?.message}).`
8167
+ )
8168
+ );
8169
+ await handleStop();
8170
+ return;
8171
+ }
8172
+ }
7880
8173
  if (result.success) {
7881
8174
  console.log(pc14.green(`\u2713 Targeted autowork on Issue #${issueNumber} completed successfully.
7882
8175
  `));
@@ -8071,6 +8364,27 @@ ${pc14.cyan("Enter Issue # to work (Esc/Enter to cancel):")} `, {
8071
8364
  }
8072
8365
  updateTicker();
8073
8366
  },
8367
+ onToggleFullBurn: () => {
8368
+ if (isStopping || isGracefulStopping) return;
8369
+ options.fullBurn = !isFullBurnEnabled(options, state, repoRoot);
8370
+ if (state) {
8371
+ state.fullBurn = options.fullBurn;
8372
+ writeDaemonState(repoRoot, state);
8373
+ }
8374
+ clearTicker();
8375
+ if (options.fullBurn) {
8376
+ console.log(
8377
+ pc14.red(`
8378
+ [${(/* @__PURE__ */ new Date()).toLocaleTimeString()}] \u{1F525} Full burn mode ENABLED (ignoring <20% quota floor).`)
8379
+ );
8380
+ } else {
8381
+ console.log(
8382
+ pc14.green(`
8383
+ [${(/* @__PURE__ */ new Date()).toLocaleTimeString()}] \u{1F6E1}\uFE0F Full burn mode DISABLED (daemon will stop if quota < 20%).`)
8384
+ );
8385
+ }
8386
+ updateTicker();
8387
+ },
8074
8388
  onTailLog: () => {
8075
8389
  if (isStopping || isGracefulStopping) return;
8076
8390
  clearTicker();
@@ -8165,6 +8479,18 @@ ${pc14.cyan("Enter Issue # to work (Esc/Enter to cancel):")} `, {
8165
8479
  isTicking = true;
8166
8480
  try {
8167
8481
  if (!isPaused) {
8482
+ const tickGuard = await checkDaemonQuotaGuard(repoRoot, options, state);
8483
+ if (tickGuard.shouldStop) {
8484
+ clearTicker();
8485
+ console.warn(
8486
+ pc14.red(
8487
+ `
8488
+ \u{1F6D1} Daemon stopped by quota guard: Plan quota is below 20% (${tickGuard.depletion?.message}). Stopping daemon...`
8489
+ )
8490
+ );
8491
+ await handleStop();
8492
+ return;
8493
+ }
8168
8494
  const now = Date.now();
8169
8495
  if (routines.includes("peer-review") && now >= nextReviewCheckTime) {
8170
8496
  await performReviewDrain();
@@ -8200,7 +8526,8 @@ async function runDaemonCommand(action, options = {}) {
8200
8526
  routines: options.routines ? options.routines.split(",").map((r) => r.trim()) : void 0,
8201
8527
  model: options.model,
8202
8528
  foreground: options.foreground,
8203
- verbose: options.verbose
8529
+ verbose: options.verbose,
8530
+ fullBurn: options.fullBurn
8204
8531
  };
8205
8532
  if (act === "start") {
8206
8533
  if (options.foreground) {
@@ -8224,6 +8551,7 @@ async function runDaemonCommand(action, options = {}) {
8224
8551
  { label: "Review Watchdog", value: `Every ${state2.reviewIntervalMinutes}m (zero-token preflight)` },
8225
8552
  { label: "Autowork Scan", value: `Every ${state2.autoworkIntervalMinutes}m` },
8226
8553
  { label: "Routines", value: state2.routines.join(", ") },
8554
+ { label: "Full Burn", value: state2.fullBurn ? "ENABLED" : "DISABLED (stops at <20% quota)" },
8227
8555
  { label: "Log", value: ".jonah-fleet/daemon.log" }
8228
8556
  ]
8229
8557
  })
@@ -8278,6 +8606,7 @@ Stopping background agent daemon (PID ${state2?.pid})...`));
8278
8606
  details: [
8279
8607
  { label: "Status", value: running && state ? state.status.toUpperCase() : "STOPPED" },
8280
8608
  ...running && state ? [{ label: "PID", value: String(state.pid) }] : [],
8609
+ ...running && state && state.fullBurn !== void 0 ? [{ label: "Full Burn", value: state.fullBurn ? "ENABLED" : "DISABLED" }] : [],
8281
8610
  { label: "Target", value: cwd }
8282
8611
  ]
8283
8612
  })
@@ -8292,6 +8621,11 @@ Stopping background agent daemon (PID ${state2?.pid})...`));
8292
8621
  console.log(` Peer Review Cadence: Every ${state.reviewIntervalMinutes} minutes (0-token fast preflight)`);
8293
8622
  console.log(` Autowork Cadence: Every ${state.autoworkIntervalMinutes} minutes`);
8294
8623
  console.log(` Routines: ${state.routines.join(", ")}`);
8624
+ if (state.fullBurn !== void 0) {
8625
+ console.log(
8626
+ ` Full Burn: ${state.fullBurn ? pc15.red(pc15.bold("ENABLED (quota floor bypassed)")) : pc15.green("DISABLED (stops at <20% quota)")}`
8627
+ );
8628
+ }
8295
8629
  let currentStateText = pc15.green("IDLE");
8296
8630
  if (state.status === "working") {
8297
8631
  const workingDesc = state.activeRoutine + (state.activeTarget ? ` (${pc15.bold(state.activeTarget)})` : "");
@@ -8462,7 +8796,7 @@ program.name("jonah-fleet").description("Manage autonomous agent fleet, prompt r
8462
8796
  program.command("run <routine>").description("Run a specific prompt routine locally in an isolated git worktree").option("-i, --issue <number>", "Targeted issue number for autowork").option("-p, --pr <number>", "Targeted pull request number for peer-review").option("-m, --model <model>", "LLM model override (defaults to gemini-3.8-flash-high)").option("--timeout <duration>", "CLI execution print timeout (default: 30m)").option("--no-worktree", "Execute directly in current directory without creating a git worktree").option("--keep-worktree", "Preserve the git worktree after routine execution completes").option("-d, --dry-run", "Preview prompt and execution parameters without launching agent").option("-v, --verbose", "Stream raw agent tokens and logs directly to stdout").action(async (routine, options) => {
8463
8797
  await runRoutineCommand(routine, options);
8464
8798
  });
8465
- program.command("daemon [action]").description("Manage background local worker daemon polling for unclaimed issues and pull requests").option("-i, --interval <minutes>", "Legacy global polling interval in minutes (default: 30)").option("--review-interval <minutes>", "Peer Review watchdog cadence in minutes (default: 3)").option("--autowork-interval <minutes>", "Autowork backlog cadence in minutes (default: 30)").option("-r, --routines <list>", "Comma-separated routines to run (default: peer-review,autowork)").option("-m, --model <model>", "LLM model override").option("--foreground", "Run daemon in foreground with live console logs").option("-v, --verbose", "Stream raw agent tokens and logs directly to stdout").action(async (action, options) => {
8799
+ program.command("daemon [action]").description("Manage background local worker daemon polling for unclaimed issues and pull requests").option("-i, --interval <minutes>", "Legacy global polling interval in minutes (default: 30)").option("--review-interval <minutes>", "Peer Review watchdog cadence in minutes (default: 3)").option("--autowork-interval <minutes>", "Autowork backlog cadence in minutes (default: 30)").option("-r, --routines <list>", "Comma-separated routines to run (default: peer-review,autowork)").option("-m, --model <model>", "LLM model override").option("--foreground", "Run daemon in foreground with live console logs").option("-v, --verbose", "Stream raw agent tokens and logs directly to stdout").option("--full-burn", "Run in full burn mode without stopping on <20% plan quota limit").action(async (action, options) => {
8466
8800
  await runDaemonCommand(action, options);
8467
8801
  });
8468
8802
  program.command("labels [action]").description("Audit, prune, or provision repository labels for autonomous fleet taxonomy (audit | prune | provision)").option("-d, --dry-run", "Preview prunable labels without deleting them", false).option("-y, --yes", "Confirm automatic deletion of prunable labels", false).option("-r, --repo <repo>", "Target GitHub repository (defaults to current)").option("-j, --json", "Output results as JSON", false).action(async (action, options) => {
@@ -13,6 +13,7 @@ export interface KeyboardControllerOptions {
13
13
  onPauseToggle?: () => void;
14
14
  onStatus?: () => void;
15
15
  onToggleVerbose?: () => void;
16
+ onToggleFullBurn?: () => void;
16
17
  onTailLog?: () => Promise<void> | void;
17
18
  onCleanWorktrees?: () => Promise<void> | void;
18
19
  onGracefulStop?: () => void;
@@ -95,6 +96,7 @@ export interface FormatDaemonStatusLineOptions {
95
96
  columns?: number;
96
97
  tipIndex?: number;
97
98
  tips?: readonly string[];
99
+ fullBurn?: boolean;
98
100
  }
99
101
  /**
100
102
  * Formats the single-line daemon idle/paused status ticker with rotating tips and viewport width clamping.
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-keys.d.ts","sourceRoot":"","sources":["../../src/lib/daemon-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon-keys.d.ts","sourceRoot":"","sources":["../../src/lib/daemon-keys.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type BacklogTriageReport, type BacklogIssueInfo } from './terminal-card.js';
2
- import type { RunUsageMetrics } from './telemetry.js';
2
+ import { type RunUsageMetrics, type ActualPlanQuota, type QuotaDepletionResult } from './telemetry.js';
3
3
  export type BacklogIssue = BacklogIssueInfo;
4
4
  export type { BacklogTriageReport };
5
5
  export type EvaluatedPROutcome = 'approved' | 'approved_pending_ci' | 'bounced' | 'bounced_to_draft' | 'merged' | 'rejected' | 'failed' | string;
@@ -30,6 +30,7 @@ export interface DaemonState {
30
30
  evaluatedPRs?: Record<number, EvaluatedPRRecord>;
31
31
  failureCooldowns?: Record<number, PRFailureRecord>;
32
32
  sessionTokens?: number;
33
+ fullBurn?: boolean;
33
34
  }
34
35
  export interface DaemonOptions {
35
36
  interval?: number;
@@ -41,6 +42,9 @@ export interface DaemonOptions {
41
42
  model?: string;
42
43
  foreground?: boolean;
43
44
  verbose?: boolean;
45
+ fullBurn?: boolean;
46
+ quotaThresholdPct?: number;
47
+ getPlanQuota?: (repoRoot: string) => Promise<ActualPlanQuota> | ActualPlanQuota;
44
48
  stdin?: any;
45
49
  getPRs?: (repoRoot: string) => Promise<ReviewablePR[]>;
46
50
  getBacklog?: (repoRoot: string) => Promise<BacklogTriageReport>;
@@ -53,6 +57,7 @@ export interface DaemonOptions {
53
57
  output?: string;
54
58
  stderr?: string;
55
59
  usage?: RunUsageMetrics;
60
+ planQuota?: ActualPlanQuota;
56
61
  }>;
57
62
  }
58
63
  export declare function getDaemonStatePath(repoRoot: string): string;
@@ -64,6 +69,17 @@ export declare function writeDaemonState(repoRoot: string, state: DaemonState):
64
69
  export declare function recordDaemonSessionUsage(repoRoot: string, state: DaemonState | undefined, usage?: RunUsageMetrics): void;
65
70
  export declare function clearDaemonState(repoRoot: string): void;
66
71
  export declare function isDaemonRunning(repoRoot: string): boolean;
72
+ /**
73
+ * Checks whether full burn mode is enabled across options, daemon state, environment variables, or manifest.
74
+ */
75
+ export declare function isFullBurnEnabled(options?: DaemonOptions, state?: DaemonState | null, repoRoot?: string): boolean;
76
+ /**
77
+ * Checks real-time plan quota against the safety floor (<20% in 5h or 7days window) unless full-burn is enabled.
78
+ */
79
+ export declare function checkDaemonQuotaGuard(repoRoot: string, options?: DaemonOptions, state?: DaemonState | null, cachedQuota?: ActualPlanQuota): Promise<{
80
+ shouldStop: boolean;
81
+ depletion?: QuotaDepletionResult;
82
+ }>;
67
83
  export interface ReviewablePR {
68
84
  number: number;
69
85
  headRefName: string;
@@ -219,10 +235,12 @@ export interface DrainReviewQueueOptions {
219
235
  output?: string;
220
236
  stderr?: string;
221
237
  usage?: RunUsageMetrics;
238
+ planQuota?: ActualPlanQuota;
222
239
  }>;
223
240
  onAttempted?: (prNumber: number) => void;
224
241
  failureCooldowns?: Map<number, PRFailureRecord>;
225
242
  onQuotaExhausted?: (resetInfo?: string) => void;
243
+ onQuotaDepleted?: (depletion: QuotaDepletionResult) => void;
226
244
  }
227
245
  /**
228
246
  * Sequentially drains all open reviewable PRs by executing peer-review in isolated worktrees.
@@ -246,11 +264,13 @@ export interface PerformAutoworkScanOptions {
246
264
  output?: string;
247
265
  stderr?: string;
248
266
  usage?: RunUsageMetrics;
267
+ planQuota?: ActualPlanQuota;
249
268
  }>;
250
269
  onDiagnosticCard?: (card: string) => void;
251
270
  onAttempted?: (prNumber: number) => void;
252
271
  failureCooldowns?: Map<number, PRFailureRecord>;
253
272
  onQuotaExhausted?: (resetInfo?: string) => void;
273
+ onQuotaDepleted?: (depletion: QuotaDepletionResult) => void;
254
274
  }
255
275
  /**
256
276
  * Performs an autowork backlog scan with zero-token preflight check.
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/lib/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/lib/daemon.ts"],"names":[],"mappings":"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"}
@@ -124,6 +124,23 @@ export declare function fetchActualPlanQuota(options?: {
124
124
  cacheTtlMs?: number;
125
125
  executor?: () => Promise<string> | string;
126
126
  }): Promise<ActualPlanQuota>;
127
+ export interface QuotaDepletionOptions {
128
+ thresholdPct?: number;
129
+ model?: string;
130
+ }
131
+ export interface QuotaDepletionResult {
132
+ depleted: boolean;
133
+ thresholdPct: number;
134
+ window?: '5h' | '7days';
135
+ remainingPct?: number;
136
+ resetTime?: string;
137
+ groupName?: string;
138
+ message?: string;
139
+ }
140
+ /**
141
+ * Checks whether real-time plan quota is depleted below the safety threshold (<20% for 5h or 7days window).
142
+ */
143
+ export declare function checkPlanQuotaDepletion(quota: ActualPlanQuota | null | undefined, options?: QuotaDepletionOptions): QuotaDepletionResult;
127
144
  /**
128
145
  * Formats a clean human-readable summary of plan quota for display.
129
146
  */
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/lib/telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/lib/telemetry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jonah-fleet",
3
- "version": "1.34.0",
3
+ "version": "1.35.0",
4
4
  "description": "Standalone autonomous agent fleet with Symphony orchestration, claim protocols, and continuous improvement loops",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",