clud-bug 0.6.26 → 0.6.27

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/lib/prompts.js CHANGED
@@ -201,6 +201,36 @@ Rules:
201
201
  every file's verdict so a maintainer can verify nothing was
202
202
  skipped.
203
203
 
204
+ Mid-review self-check-in (v0.6.27 / §5.5 Layer 3):
205
+ After every 5 tool_uses, write a single-line budget heartbeat as a
206
+ free-text "thinking" message (not a tool call — these don't cost a
207
+ turn) of the form:
208
+
209
+ [budget] files_reviewed=X/N, turns_used=Y/M, pace=ok|behind
210
+
211
+ Where:
212
+ - X / N is the count of files you've meaningfully looked at so far
213
+ over the total in this PR's diff.
214
+ - Y / M is your current turn count over max_turns.
215
+ - pace = "ok" when X / N >= Y / (M - 5). The denominator subtracts the
216
+ 5-turn emit reservation: over the (M - 5) turns available for file
217
+ review, your file-coverage rate must match where you actually are
218
+ in the budget. (Don't subtract from Y — that would be saying "I've
219
+ used Y minus 5 turns" which double-counts the reservation.)
220
+ pace = "behind" otherwise.
221
+
222
+ When pace = "behind", immediately pivot strategy:
223
+ 1. Stop deep-dive analysis on the current file.
224
+ 2. Switch to one-sentence verdicts for every remaining file.
225
+ 3. Keep going through the whole diff — silent skipping is
226
+ non-negotiable. Cover everything, even if some files only get
227
+ "no issues found in this file" as their verdict.
228
+
229
+ The heartbeat serves two purposes: (a) forces internal pacing — you
230
+ can't drift past budget without noticing; (b) lands in the action's
231
+ streaming output for post-hoc calibration of the per-line cost
232
+ coefficients used by paths-check's Layer 1 estimator.
233
+
204
234
  Incremental-diff handshake (v0.6.10+) — emit the SHA marker:
205
235
  At the very end of the summary (after the Skills-referenced footer,
206
236
  on its own line), append:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clud-bug",
3
- "version": "0.6.26",
3
+ "version": "0.6.27",
4
4
  "description": "Skill-driven Claude PR review. Ship a brand-voice skill, get brand reviews. Each finding cites the skill that motivated it. CLI installs the workflow + a baseline kit; add more from skills.sh.",
5
5
  "homepage": "https://cludbug.dev",
6
6
  "bugs": "https://github.com/thrillmade/clud-bug/issues",
@@ -339,7 +339,7 @@ jobs:
339
339
  # Strict-mode gate — composite action; see workflow.yml.tmpl for design notes.
340
340
  - name: Strict mode — fail check on critical findings
341
341
  if: success()
342
- uses: thrillmade/clud-bug/.github/actions/strict-mode-gate@v0.6.26
342
+ uses: thrillmade/clud-bug/.github/actions/strict-mode-gate@v0.6.27
343
343
  with:
344
344
  github-token: ${{ secrets.GITHUB_TOKEN }}
345
345
  # v0.6.22 / 0.0.O: summary now posted by github-actions[bot].
@@ -339,7 +339,7 @@ jobs:
339
339
  # Strict-mode gate — composite action; see workflow.yml.tmpl for design notes.
340
340
  - name: Strict mode — fail check on critical findings
341
341
  if: success()
342
- uses: thrillmade/clud-bug/.github/actions/strict-mode-gate@v0.6.26
342
+ uses: thrillmade/clud-bug/.github/actions/strict-mode-gate@v0.6.27
343
343
  with:
344
344
  github-token: ${{ secrets.GITHUB_TOKEN }}
345
345
  # v0.6.22 / 0.0.O: summary now posted by github-actions[bot].
@@ -589,7 +589,7 @@ jobs:
589
589
  # Letting the action's own failure fail the check is louder and right.
590
590
  - name: Strict mode — fail check on critical findings
591
591
  if: success()
592
- uses: thrillmade/clud-bug/.github/actions/strict-mode-gate@v0.6.26
592
+ uses: thrillmade/clud-bug/.github/actions/strict-mode-gate@v0.6.27
593
593
  with:
594
594
  github-token: ${{ secrets.GITHUB_TOKEN }}
595
595
  # v0.6.22 / 0.0.O: the summary is now posted by the workflow