bb-cc-lite 0.1.8 → 0.1.10

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 (59) hide show
  1. package/README.md +60 -7
  2. package/dist/baseline-builder.d.ts +5 -0
  3. package/dist/baseline-builder.js +126 -9
  4. package/dist/baseline-builder.js.map +1 -1
  5. package/dist/baseline-refresh.d.ts +4 -0
  6. package/dist/baseline-refresh.js +10 -1
  7. package/dist/baseline-refresh.js.map +1 -1
  8. package/dist/baseline.d.ts +40 -0
  9. package/dist/baseline.js +83 -4
  10. package/dist/baseline.js.map +1 -1
  11. package/dist/cli.js +50 -19
  12. package/dist/cli.js.map +1 -1
  13. package/dist/doctor.d.ts +2 -0
  14. package/dist/doctor.js +55 -7
  15. package/dist/doctor.js.map +1 -1
  16. package/dist/event-store-persistence.d.ts +7 -0
  17. package/dist/event-store-persistence.js +68 -4
  18. package/dist/event-store-persistence.js.map +1 -1
  19. package/dist/event-store-queries.d.ts +7 -0
  20. package/dist/event-store-queries.js +49 -0
  21. package/dist/event-store-queries.js.map +1 -1
  22. package/dist/feedback-policy.d.ts +43 -0
  23. package/dist/feedback-policy.js +245 -0
  24. package/dist/feedback-policy.js.map +1 -0
  25. package/dist/historical-replay.d.ts +7 -0
  26. package/dist/historical-replay.js +153 -2
  27. package/dist/historical-replay.js.map +1 -1
  28. package/dist/hook-control.d.ts +11 -0
  29. package/dist/hook-control.js +122 -0
  30. package/dist/hook-control.js.map +1 -0
  31. package/dist/hook-response.d.ts +3 -0
  32. package/dist/hook-response.js +27 -0
  33. package/dist/hook-response.js.map +1 -0
  34. package/dist/hook-summary.d.ts +7 -0
  35. package/dist/hook-summary.js +7 -0
  36. package/dist/hook-summary.js.map +1 -1
  37. package/dist/memory-lessons.d.ts +54 -0
  38. package/dist/memory-lessons.js +211 -0
  39. package/dist/memory-lessons.js.map +1 -0
  40. package/dist/paths.d.ts +7 -0
  41. package/dist/paths.js +10 -0
  42. package/dist/paths.js.map +1 -1
  43. package/dist/settings.d.ts +3 -0
  44. package/dist/settings.js +56 -15
  45. package/dist/settings.js.map +1 -1
  46. package/dist/signals.d.ts +13 -2
  47. package/dist/signals.js +205 -2
  48. package/dist/signals.js.map +1 -1
  49. package/dist/status-input.js +10 -9
  50. package/dist/status-input.js.map +1 -1
  51. package/dist/statusline.js +11 -3
  52. package/dist/statusline.js.map +1 -1
  53. package/dist/store.d.ts +9 -0
  54. package/dist/store.js +46 -20
  55. package/dist/store.js.map +1 -1
  56. package/dist/transcript.js +22 -0
  57. package/dist/transcript.js.map +1 -1
  58. package/dist/types.d.ts +24 -1
  59. package/package.json +1 -1
package/dist/signals.js CHANGED
@@ -1,6 +1,11 @@
1
1
  import { sessionKeyFromId } from "./session.js";
2
2
  import { mergeUsage } from "./status-input.js";
3
3
  import { recoveryInsight } from "./recovery-stats.js";
4
+ const DEFAULT_BUDGET_THRESHOLDS = {
5
+ costUsd: 2,
6
+ costDeltaUsd: 0.5,
7
+ durationMs: 45 * 60_000
8
+ };
4
9
  export function decide(input, transcript, options = {}) {
5
10
  const now = new Date().toISOString();
6
11
  const usage = mergeUsage(input.usage, transcript.usage);
@@ -8,6 +13,8 @@ export function decide(input, transcript, options = {}) {
8
13
  const sessionKey = sessionKeyFromId(input.sessionId);
9
14
  const costUsd = input.costUsd;
10
15
  const costSource = input.costSource;
16
+ const budgetThresholds = normalizeBudgetThresholds(options.budgetThresholds ?? budgetThresholdsFromEnv());
17
+ const costDelta = costUsd !== undefined && options.previous?.costUsd !== undefined ? costUsd - options.previous.costUsd : 0;
11
18
  if (!input.rawValid) {
12
19
  return baseDecision({
13
20
  state: "Careful",
@@ -132,6 +139,30 @@ export function decide(input, transcript, options = {}) {
132
139
  costSource
133
140
  });
134
141
  }
142
+ const budgetRepeatedFailure = transcript.repeatedFailures
143
+ .filter((item) => item.count >= 2)
144
+ .sort((a, b) => b.count - a.count)[0];
145
+ if (budgetRepeatedFailure &&
146
+ ((costUsd !== undefined && costUsd >= budgetThresholds.costUsd) || costDelta >= budgetThresholds.costDeltaUsd)) {
147
+ const costEvidence = costDelta >= budgetThresholds.costDeltaUsd ? `cost +${formatCost(costDelta)}` : budgetCostEvidence(costUsd || 0, costSource);
148
+ return baseDecision({
149
+ state: "Stop",
150
+ reasonCode: "budget_with_repeated_failure",
151
+ diagnosisCode: "budget_with_repeated_failure",
152
+ diagnosis: "high cost plus repeated failures",
153
+ confidence: "high",
154
+ primaryEvidence: `${costEvidence} plus ${repeatedFailureEvidence(budgetRepeatedFailure)}`,
155
+ impact: "high cost plus repeated failures",
156
+ action: "stop and inspect first failure",
157
+ input,
158
+ usage,
159
+ transcript,
160
+ now,
161
+ sessionKey,
162
+ costUsd,
163
+ costSource
164
+ });
165
+ }
135
166
  if (transcript.blindRetry && transcript.blindRetry.blindRetryFailureCount >= 2) {
136
167
  const blindRetry = transcript.blindRetry;
137
168
  return baseDecision({
@@ -304,8 +335,27 @@ export function decide(input, transcript, options = {}) {
304
335
  costSource
305
336
  });
306
337
  }
307
- const costDelta = costUsd !== undefined && options.previous?.costUsd !== undefined ? costUsd - options.previous.costUsd : 0;
308
- if (costDelta >= 0.5) {
338
+ const budgetCarefulEvidence = budgetCarefulEvidenceFor(input, costDelta, costSource, budgetThresholds, options.baseline);
339
+ if (budgetCarefulEvidence && isBusyWithoutProgress(transcript)) {
340
+ return baseDecision({
341
+ state: "Careful",
342
+ reasonCode: "budget_busy_no_observed_progress",
343
+ diagnosisCode: "budget_busy_no_observed_progress",
344
+ diagnosis: "budget is high and no progress was observed",
345
+ confidence: "medium",
346
+ primaryEvidence: `${budgetCarefulEvidence} plus ${transcript.toolCalls} tool calls, no check or recovery seen`,
347
+ impact: "Budget is high and no observed progress signal was seen",
348
+ action: "pause and ask Claude what changed before continuing",
349
+ input,
350
+ usage,
351
+ transcript,
352
+ now,
353
+ sessionKey,
354
+ costUsd,
355
+ costSource
356
+ });
357
+ }
358
+ if (costDelta >= budgetThresholds.costDeltaUsd) {
309
359
  return baseDecision({
310
360
  state: "Careful",
311
361
  reasonCode: "cost_growth",
@@ -321,6 +371,42 @@ export function decide(input, transcript, options = {}) {
321
371
  costSource
322
372
  });
323
373
  }
374
+ if (costUsd !== undefined &&
375
+ costUsd >= budgetThresholds.costUsd &&
376
+ !baselineSuppressesCostBudget(costUsd, options.baseline)) {
377
+ return baseDecision({
378
+ state: "Careful",
379
+ reasonCode: "cost_budget",
380
+ primaryEvidence: budgetCostEvidence(costUsd, costSource),
381
+ impact: "Session cost is above the budget threshold",
382
+ action: "ask Claude to summarize progress before continuing",
383
+ input,
384
+ usage,
385
+ transcript,
386
+ now,
387
+ sessionKey,
388
+ costUsd,
389
+ costSource
390
+ });
391
+ }
392
+ if (input.durationMs !== undefined &&
393
+ input.durationMs >= budgetThresholds.durationMs &&
394
+ !baselineSuppressesDurationBudget(input.durationMs, options.baseline)) {
395
+ return baseDecision({
396
+ state: "Careful",
397
+ reasonCode: "duration_budget",
398
+ primaryEvidence: `session ran ${formatDuration(input.durationMs)}`,
399
+ impact: "Session has been running longer than expected",
400
+ action: "ask Claude to summarize progress before continuing",
401
+ input,
402
+ usage,
403
+ transcript,
404
+ now,
405
+ sessionKey,
406
+ costUsd,
407
+ costSource
408
+ });
409
+ }
324
410
  if (transcript.validationRecovered) {
325
411
  return baseDecision({
326
412
  state: "Healthy",
@@ -340,6 +426,25 @@ export function decide(input, transcript, options = {}) {
340
426
  costSource
341
427
  });
342
428
  }
429
+ if (isBusyWithoutProgress(transcript)) {
430
+ return baseDecision({
431
+ state: "Careful",
432
+ reasonCode: "busy_no_observed_progress",
433
+ diagnosisCode: "busy_no_observed_progress",
434
+ diagnosis: `${transcript.toolCalls} tool calls, no check or recovery seen`,
435
+ confidence: "medium",
436
+ primaryEvidence: `${transcript.toolCalls} tool calls, no check or recovery seen`,
437
+ impact: "Many safe activity signals were seen, but no observed progress signal was seen",
438
+ action: "pause and ask Claude what changed",
439
+ input,
440
+ usage,
441
+ transcript,
442
+ now,
443
+ sessionKey,
444
+ costUsd,
445
+ costSource
446
+ });
447
+ }
343
448
  if (isReadHeavyCurrentSession(transcript) && supportsReadHeavyHealthy(options.baseline)) {
344
449
  return baseDecision({
345
450
  state: "Healthy",
@@ -449,6 +554,21 @@ function isReadHeavyCurrentSession(transcript) {
449
554
  transcript.failedToolResults === 0 &&
450
555
  !transcript.hasUnvalidatedEdits);
451
556
  }
557
+ function isBusyWithoutProgress(transcript) {
558
+ const nonReadToolCalls = Math.max(0, transcript.toolCalls - transcript.readToolCalls);
559
+ return (transcript.toolCalls >= 8 &&
560
+ nonReadToolCalls >= 6 &&
561
+ transcript.failedToolResults === 0 &&
562
+ !transcript.hasUnvalidatedEdits &&
563
+ !hasObservedProgress(transcript) &&
564
+ !isReadHeavyCurrentSession(transcript));
565
+ }
566
+ function hasObservedProgress(transcript) {
567
+ return Boolean(transcript.observedProgress ||
568
+ transcript.validationRecovered ||
569
+ (transcript.validationSuccesses || 0) > 0 ||
570
+ (transcript.toolRecoveryEvents || 0) > 0);
571
+ }
452
572
  function hasOpenCompactionBoundary(transcript) {
453
573
  return transcript.compactionEvents > 0 && transcript.postCompactionActivity === 0;
454
574
  }
@@ -491,6 +611,89 @@ function validationPurposeLabel(purpose) {
491
611
  function formatFailureCount(count) {
492
612
  return count === 2 ? "twice" : `${count}x`;
493
613
  }
614
+ function normalizeBudgetThresholds(thresholds) {
615
+ return {
616
+ costUsd: thresholdOrDefault(thresholds?.costTotalCarefulUsd ?? thresholds?.costUsd, DEFAULT_BUDGET_THRESHOLDS.costUsd),
617
+ costDeltaUsd: thresholdOrDefault(thresholds?.costDeltaCarefulUsd ?? thresholds?.costDeltaUsd, DEFAULT_BUDGET_THRESHOLDS.costDeltaUsd),
618
+ durationMs: thresholdOrDefault(thresholds?.durationCarefulMs ?? thresholds?.durationMs, DEFAULT_BUDGET_THRESHOLDS.durationMs)
619
+ };
620
+ }
621
+ function budgetThresholdsFromEnv(env = process.env) {
622
+ const costUsd = numberEnv(env, "BB_CC_LITE_BUDGET_COST_USD", "BB_CC_LITE_COST_BUDGET_USD");
623
+ const costDeltaUsd = numberEnv(env, "BB_CC_LITE_BUDGET_COST_DELTA_USD", "BB_CC_LITE_COST_DELTA_BUDGET_USD");
624
+ const durationMs = numberEnv(env, "BB_CC_LITE_BUDGET_DURATION_MS", "BB_CC_LITE_DURATION_BUDGET_MS") ??
625
+ minutesEnv(env, "BB_CC_LITE_BUDGET_DURATION_MINUTES", "BB_CC_LITE_DURATION_BUDGET_MINUTES");
626
+ return costUsd === undefined && costDeltaUsd === undefined && durationMs === undefined
627
+ ? undefined
628
+ : {
629
+ costUsd,
630
+ costDeltaUsd,
631
+ durationMs
632
+ };
633
+ }
634
+ function numberEnv(env, ...names) {
635
+ for (const name of names) {
636
+ const value = env[name];
637
+ if (value === undefined || value.trim() === "") {
638
+ continue;
639
+ }
640
+ const parsed = Number(value);
641
+ if (Number.isFinite(parsed) && parsed >= 0) {
642
+ return parsed;
643
+ }
644
+ }
645
+ return undefined;
646
+ }
647
+ function minutesEnv(env, ...names) {
648
+ const minutes = numberEnv(env, ...names);
649
+ return minutes === undefined ? undefined : minutes * 60_000;
650
+ }
651
+ function thresholdOrDefault(value, fallback) {
652
+ return value !== undefined && Number.isFinite(value) && value >= 0 ? value : fallback;
653
+ }
654
+ function budgetCostEvidence(costUsd, costSource) {
655
+ const cost = formatCost(costUsd);
656
+ return costSource === "estimated" ? `estimated cost ${cost}` : `cost ${cost}`;
657
+ }
658
+ function budgetCarefulEvidenceFor(input, costDelta, costSource, thresholds, baseline) {
659
+ if (costDelta >= thresholds.costDeltaUsd) {
660
+ return `cost +${formatCost(costDelta)}`;
661
+ }
662
+ if (input.costUsd !== undefined &&
663
+ input.costUsd >= thresholds.costUsd &&
664
+ !baselineSuppressesCostBudget(input.costUsd, baseline)) {
665
+ return budgetCostEvidence(input.costUsd, costSource);
666
+ }
667
+ if (input.durationMs !== undefined &&
668
+ input.durationMs >= thresholds.durationMs &&
669
+ !baselineSuppressesDurationBudget(input.durationMs, baseline)) {
670
+ return `session ran ${formatDuration(input.durationMs)}`;
671
+ }
672
+ return undefined;
673
+ }
674
+ function baselineSuppressesCostBudget(costUsd, baseline) {
675
+ const budget = baseline?.budget;
676
+ return Boolean(budget &&
677
+ (budget.costSamples || 0) >= 3 &&
678
+ budget.confidence !== "low" &&
679
+ (budget.p90CostUsd || 0) >= costUsd);
680
+ }
681
+ function baselineSuppressesDurationBudget(durationMs, baseline) {
682
+ const budget = baseline?.budget;
683
+ return Boolean(budget &&
684
+ (budget.durationSamples || 0) >= 3 &&
685
+ budget.confidence !== "low" &&
686
+ (budget.p90DurationMs || 0) >= durationMs);
687
+ }
688
+ function formatDuration(durationMs) {
689
+ const minutes = Math.max(1, Math.round(durationMs / 60_000));
690
+ if (minutes < 60) {
691
+ return `${minutes}m`;
692
+ }
693
+ const hours = Math.floor(minutes / 60);
694
+ const remainingMinutes = minutes % 60;
695
+ return remainingMinutes === 0 ? `${hours}h` : `${hours}h ${remainingMinutes}m`;
696
+ }
494
697
  function hasUnusualEditValidationLag(transcript, baseline) {
495
698
  const currentLag = transcript.unvalidatedEditToolSteps;
496
699
  const p75 = baseline?.editValidation?.p75ToolStepsFromEditToValidation || 0;
@@ -1 +1 @@
1
- {"version":3,"file":"signals.js","sourceRoot":"","sources":["../src/signals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signals.js","sourceRoot":"","sources":["../src/signals.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,10 @@ export function parseStatusLineInput(raw) {
34
34
  const workspace = asRecord(root.workspace);
35
35
  const cost = asRecord(root.cost);
36
36
  const contextWindow = asRecord(root.context_window) || asRecord(root.contextWindow);
37
+ const costUsd = numberField(cost?.total_cost_usd) ??
38
+ numberField(cost?.totalCostUsd) ??
39
+ numberField(cost?.cost_usd) ??
40
+ numberField(root.total_cost_usd);
37
41
  const usage = mergeUsage(extractUsage(root), extractUsage(asRecord(root.usage)), extractUsage(asRecord(root.token_usage)), extractUsage(asRecord(root.tokens)), extractUsage(asRecord(contextWindow?.current_usage) || asRecord(contextWindow?.currentUsage)), extractUsage(cost));
38
42
  return {
39
43
  rawValid: true,
@@ -48,18 +52,15 @@ export function parseStatusLineInput(raw) {
48
52
  stringField(model?.displayName) ||
49
53
  stringField(model?.name)
50
54
  },
51
- costUsd: numberField(cost?.total_cost_usd) ||
52
- numberField(cost?.totalCostUsd) ||
53
- numberField(cost?.cost_usd) ||
54
- numberField(root.total_cost_usd),
55
- costSource: numberField(cost?.total_cost_usd) === undefined ? undefined : "claude",
56
- durationMs: numberField(cost?.total_duration_ms) || numberField(root.duration_ms),
55
+ costUsd,
56
+ costSource: costUsd === undefined ? undefined : "claude",
57
+ durationMs: numberField(cost?.total_duration_ms) ?? numberField(root.duration_ms),
57
58
  contextPercent: extractPercent(root, ["context", "context_window", "contextWindow"]),
58
59
  rateLimitPercent: extractPercent(root, ["rate_limit", "rateLimit", "rate_limits", "rateLimits"]),
59
60
  usage,
60
- terminalWidth: numberField(root.terminal_width) ||
61
- numberField(root.terminalWidth) ||
62
- numberFromString(process.env.BB_CC_LITE_WIDTH) ||
61
+ terminalWidth: numberField(root.terminal_width) ??
62
+ numberField(root.terminalWidth) ??
63
+ numberFromString(process.env.BB_CC_LITE_WIDTH) ??
63
64
  numberFromString(process.env.COLUMNS)
64
65
  };
65
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"status-input.js","sourceRoot":"","sources":["../src/status-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status-input.js","sourceRoot":"","sources":["../src/status-input.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { mergeHookSummary } from "./hook-summary.js";
2
- import { readBaseline } from "./baseline.js";
2
+ import { readBaselineForProject } from "./baseline.js";
3
3
  import { maybeTriggerBaselineRefresh } from "./baseline-refresh.js";
4
4
  import { toDecisionPresentation } from "./decision-presentation.js";
5
5
  import { estimateCostUsd, loadPricing } from "./pricing.js";
@@ -12,6 +12,13 @@ import { parseTranscriptTail } from "./transcript.js";
12
12
  const EMPTY_HOOK_SUMMARY = {
13
13
  failedToolResults: 0,
14
14
  toolCalls: 0,
15
+ readToolCalls: 0,
16
+ successfulEditResults: 0,
17
+ validationChecks: 0,
18
+ validationSuccesses: 0,
19
+ validationRecovered: false,
20
+ hasUnvalidatedEdits: false,
21
+ unvalidatedEditToolSteps: undefined,
15
22
  compactionEvents: 0,
16
23
  postCompactionActivity: 0,
17
24
  repeatedFailures: [],
@@ -30,10 +37,11 @@ export async function createStatusLine(rawInput, terminalColumns, options = {})
30
37
  }
31
38
  }
32
39
  const previous = sessionKey ? await latestDecision(sessionKey) : undefined;
33
- const baseline = await readBaseline();
40
+ const baselineSelection = await readBaselineForProject({ projectDir: input.cwd });
41
+ const baseline = baselineSelection.baseline;
34
42
  const decision = decide(input, transcript, { previous, baseline });
35
43
  await recordDecision(decision);
36
- await maybeTriggerBaselineRefresh({ ...options.baselineRefresh, baseline });
44
+ await maybeTriggerBaselineRefresh({ ...options.baselineRefresh, baseline, projectDir: input.cwd, transcriptPath: input.transcriptPath });
37
45
  return renderStatusLine(toDecisionPresentation(decision), input.terminalWidth || terminalColumns);
38
46
  }
39
47
  //# sourceMappingURL=statusline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statusline.js","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAA2C,MAAM,uBAAuB,CAAC;AAC7G,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,MAAM,kBAAkB,GAAG;IACzB,iBAAiB,EAAE,CAAC;IACpB,SAAS,EAAE,CAAC;IACZ,gBAAgB,EAAE,CAAC;IACnB,sBAAsB,EAAE,CAAC;IACzB,gBAAgB,EAAE,EAAE;IACpB,UAAU,EAAE,SAAS;CACtB,CAAC;AAMF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,eAAwB,EACxB,UAAmC,EAAE;IAErC,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,gBAAgB,CACjC,MAAM,mBAAmB,CAAC,KAAK,CAAC,cAAc,CAAC,EAC/C,UAAU,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAChE,CAAC;IACF,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAExD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,WAAW,EAAE,CAAC,CAAC;QACzG,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;YAC1B,KAAK,CAAC,UAAU,GAAG,WAAW,CAAC;QACjC,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnE,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,2BAA2B,CAAC,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5E,OAAO,gBAAgB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,IAAI,eAAe,CAAC,CAAC;AACpG,CAAC"}
1
+ {"version":3,"file":"statusline.js","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"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"}
package/dist/store.d.ts CHANGED
@@ -1,5 +1,14 @@
1
+ import type { RecentFeedback } from "./feedback-policy.js";
1
2
  import type { Decision, DerivedHookEvent, StoredDecision, StoredHookEvent } from "./types.js";
2
3
  export { readStore } from "./event-store-persistence.js";
3
4
  export { hookSummary, latestDecision } from "./event-store-queries.js";
4
5
  export declare function recordDecision(decision: Decision, storePath?: string): Promise<StoredDecision>;
5
6
  export declare function recordHookEvent(event: DerivedHookEvent, storePath?: string): Promise<StoredHookEvent>;
7
+ export declare function recordFeedbackEvent(event: {
8
+ sessionKey?: string;
9
+ hookEventName: string;
10
+ feedbackAction: "coach" | "guard";
11
+ cooldownKey: string;
12
+ timestamp?: string;
13
+ }, storePath?: string): Promise<StoredHookEvent>;
14
+ export declare function recentFeedbackEvents(sessionKey: string | undefined, storePath?: string): Promise<RecentFeedback[]>;
package/dist/store.js CHANGED
@@ -1,30 +1,56 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import { HOOK_STORE_LIMIT, STORE_LIMIT, readStore, writeStore } from "./event-store-persistence.js";
2
+ import { HOOK_STORE_LIMIT, STORE_LIMIT, readStore, updateStore } from "./event-store-persistence.js";
3
3
  import { eventStorePath } from "./paths.js";
4
4
  export { readStore } from "./event-store-persistence.js";
5
5
  export { hookSummary, latestDecision } from "./event-store-queries.js";
6
6
  export async function recordDecision(decision, storePath = eventStorePath()) {
7
- const store = await readStore(storePath);
8
- const stored = {
9
- ...decision,
10
- id: randomUUID()
11
- };
12
- store.decisions.push(stored);
13
- store.decisions = store.decisions.slice(-STORE_LIMIT);
14
- store.updatedAt = new Date().toISOString();
15
- await writeStore(store, storePath);
16
- return stored;
7
+ return updateStore(storePath, (store) => {
8
+ const stored = {
9
+ ...decision,
10
+ id: randomUUID()
11
+ };
12
+ store.decisions.push(stored);
13
+ store.decisions = store.decisions.slice(-STORE_LIMIT);
14
+ store.updatedAt = new Date().toISOString();
15
+ return { store, result: stored };
16
+ });
17
17
  }
18
18
  export async function recordHookEvent(event, storePath = eventStorePath()) {
19
+ return updateStore(storePath, (store) => {
20
+ const stored = {
21
+ ...event,
22
+ id: randomUUID()
23
+ };
24
+ store.hookEvents.push(stored);
25
+ store.hookEvents = store.hookEvents.slice(-HOOK_STORE_LIMIT);
26
+ store.updatedAt = new Date().toISOString();
27
+ return { store, result: stored };
28
+ });
29
+ }
30
+ export async function recordFeedbackEvent(event, storePath = eventStorePath()) {
31
+ return recordHookEvent({
32
+ kind: "feedback",
33
+ sessionKey: event.sessionKey,
34
+ timestamp: event.timestamp || new Date().toISOString(),
35
+ hookEventName: event.hookEventName,
36
+ feedbackAction: event.feedbackAction,
37
+ cooldownKey: event.cooldownKey
38
+ }, storePath);
39
+ }
40
+ export async function recentFeedbackEvents(sessionKey, storePath = eventStorePath()) {
41
+ if (!sessionKey) {
42
+ return [];
43
+ }
19
44
  const store = await readStore(storePath);
20
- const stored = {
21
- ...event,
22
- id: randomUUID()
23
- };
24
- store.hookEvents.push(stored);
25
- store.hookEvents = store.hookEvents.slice(-HOOK_STORE_LIMIT);
26
- store.updatedAt = new Date().toISOString();
27
- await writeStore(store, storePath);
28
- return stored;
45
+ return store.hookEvents
46
+ .filter((event) => event.kind === "feedback" &&
47
+ event.sessionKey === sessionKey &&
48
+ event.cooldownKey &&
49
+ (event.feedbackAction === "coach" || event.feedbackAction === "guard"))
50
+ .map((event) => ({
51
+ cooldownKey: event.cooldownKey,
52
+ action: event.feedbackAction,
53
+ timestamp: event.timestamp
54
+ }));
29
55
  }
30
56
  //# sourceMappingURL=store.js.map
package/dist/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,UAAU,EACX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAEvE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAkB,EAAE,SAAS,GAAG,cAAc,EAAE;IACnF,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,MAAM,GAAmB;QAC7B,GAAG,QAAQ;QACX,EAAE,EAAE,UAAU,EAAE;KACjB,CAAC;IACF,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;IACtD,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAuB,EAAE,SAAS,GAAG,cAAc,EAAE;IACzF,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,MAAM,GAAoB;QAC9B,GAAG,KAAK;QACR,EAAE,EAAE,UAAU,EAAE;KACjB,CAAC;IACF,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC7D,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,10 @@ export function parseTranscriptLines(lines, bytesRead = Buffer.byteLength(lines.
23
23
  let toolResultStep = 0;
24
24
  let toolCalls = 0;
25
25
  let readToolCalls = 0;
26
+ let successfulEditResults = 0;
27
+ let validationChecks = 0;
28
+ let validationSuccesses = 0;
29
+ let toolRecoveryEvents = 0;
26
30
  let failedToolResults = 0;
27
31
  let malformedLines = 0;
28
32
  let compactionEvents = 0;
@@ -94,13 +98,21 @@ export function parseTranscriptLines(lines, bytesRead = Buffer.byteLength(lines.
94
98
  const purpose = meta.name === "Bash" ? toolResult.purpose || meta.purpose : meta.purpose;
95
99
  const key = failureKey(meta, purpose);
96
100
  const isValidation = meta.name === "Bash" && isValidationPurpose(purpose);
101
+ if (isValidation) {
102
+ validationChecks += 1;
103
+ }
97
104
  if (!toolResult.isError) {
105
+ if (failureCounts.has(key)) {
106
+ toolRecoveryEvents += 1;
107
+ }
98
108
  failureCounts.delete(key);
99
109
  if (meta.isEdit) {
110
+ successfulEditResults += 1;
100
111
  hasUnvalidatedEdits = true;
101
112
  unvalidatedEditStep = toolResultStep;
102
113
  }
103
114
  else if (isValidation) {
115
+ validationSuccesses += 1;
104
116
  if (validationFailedSinceSuccess) {
105
117
  validationRecovered = true;
106
118
  }
@@ -131,6 +143,10 @@ export function parseTranscriptLines(lines, bytesRead = Buffer.byteLength(lines.
131
143
  malformedLines,
132
144
  toolCalls,
133
145
  readToolCalls,
146
+ successfulEditResults,
147
+ validationChecks,
148
+ validationSuccesses,
149
+ toolRecoveryEvents,
134
150
  failedToolResults,
135
151
  repeatedFailures: [...failureCounts.values()].filter((item) => item.count >= 2),
136
152
  failureEpisodes,
@@ -139,6 +155,7 @@ export function parseTranscriptLines(lines, bytesRead = Buffer.byteLength(lines.
139
155
  hasUnvalidatedEdits,
140
156
  unvalidatedEditToolSteps: hasUnvalidatedEdits && unvalidatedEditStep !== undefined ? toolResultStep - unvalidatedEditStep : undefined,
141
157
  validationRecovered,
158
+ observedProgress: validationSuccesses > 0 || toolRecoveryEvents > 0,
142
159
  compactionEvents,
143
160
  postCompactionActivity,
144
161
  usage,
@@ -156,11 +173,16 @@ function emptySummary(pathReadable) {
156
173
  malformedLines: 0,
157
174
  toolCalls: 0,
158
175
  readToolCalls: 0,
176
+ successfulEditResults: 0,
177
+ validationChecks: 0,
178
+ validationSuccesses: 0,
179
+ toolRecoveryEvents: 0,
159
180
  failedToolResults: 0,
160
181
  repeatedFailures: [],
161
182
  editTestLoopFailures: 0,
162
183
  hasUnvalidatedEdits: false,
163
184
  validationRecovered: false,
185
+ observedProgress: false,
164
186
  compactionEvents: 0,
165
187
  postCompactionActivity: 0,
166
188
  usage: {}