docs(0.23.1): P6 reflex — a reflex, not a request, and never a question (BRO-1288)#69
Conversation
…on (BRO-1288) Closes the permission-to-document anti-pattern: agents asking "do you want me to file this into the knowledge graph?" instead of capturing autonomously. P6 already said "a reflex, not a request" but framed it as run-the-pipeline- unprompted — never forbade the interrogative form. Adds the third clause "and never a question" (file first, report after; user vetoes after via git revert, never gates before). Statement-tightening of P6, NOT a new primitive (same failure-mode class; respects L3 budget lambda3~=0.006; mirrors the 2026-05-29 PR-comment decision). Primitive count stays 20. Changed (canonical installable surfaces — propagate to every bstack install): - references/primitives.md: P6 reflex (trigger #4 + "Never a question") - assets/templates/AGENTS.md.template: same reflex tightening - assets/templates/CLAUDE.md.template: P6 invariant cell - VERSION 0.23.0 -> 0.23.1 + CHANGELOG Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Warning Review limit reached
More reviews will be available in 51 minutes and 14 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. 📝 WalkthroughWalkthroughVersion 0.23.1 tightens the P6 "Reflexive Trigger Rule" across documentation and workspace templates by adding explicit "never a question" constraints and expanded proactive capture guidance. The version and changelog are updated, and the core rule is propagated through reference and template files with consistent messaging about knowledge-graph capture as a reflex rather than an interrogative choice. ChangesP6 Reflex Rule Tightening Release
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related issues
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@CHANGELOG.md`:
- Line 3: The release header "## 0.23.1 — 2026-06-01" must match the exact
validator format; change that heading to "## 0.23.1" and move the date
"2026-06-01" onto the next line (e.g., as plain text or a separate subheading),
ensuring the header exactly equals "## 0.23.1" so the release validator can
locate the section.
In `@VERSION`:
- Line 1: The VERSION file contains hidden/byte-order-mark characters causing
semver validation to fail; open the VERSION file and rewrite it as a single
plain ASCII token "0.23.1" with no BOM or hidden bytes and a trailing newline
(e.g., re-save with a plain-text editor or run a text-level rewrite such as
printf '0.23.1\n' > VERSION) so the file contains only the ASCII token 0.23.1
and nothing else.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: a253a4dd-10bb-495d-ba51-2d9e9895ea9b
📒 Files selected for processing (5)
CHANGELOG.mdVERSIONassets/templates/AGENTS.md.templateassets/templates/CLAUDE.md.templatereferences/primitives.md
… to P6 reflex (BRO-1288) P20 cross-review flagged the rule "reads as unconditional". Adds the two bounds to references/primitives.md "Never a question": (a) Nous-gate (low-confidence → synthesis note), (b) explicit do-not-record / sensitive-material override — the only withholding cases; agent withholds silently, never asks permission. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Re: CodeRabbit threads on Both flag a speculative format mismatch with the release validator. Verified against ground truth — both are incorrect:
The authoritative check is CI, not a guessed format: |
…mission-to-document anti-pattern (BRO-1288) (#12) This is the source-of-truth P6 Reflexive Trigger Rule that every other bstack surface defers to ("supplements the When-to-Invoke section"). It still carried the old wording while the workspace + bstack-package surfaces were tightened — flagged by the BRO-1288 P20 cross-review as the highest-value missing surface. Closes the permission-to-document anti-pattern: agents asking "do you want me to file this into the knowledge graph?" instead of capturing autonomously. - Opening: "a reflex, not a request, and never a question". - New trigger #5: file discrete graph-worthy items proactively (numbered #5, not #4 — #4 is already the replay-vs-run trigger). - "Never a question" paragraph naming the anti-pattern, with two safety bounds: (a) Nous-gate (low-confidence -> synthesis note), (b) explicit do-not-record / sensitive-material override (the only withholding cases; withhold silently). Statement-tightening of P6, not a new primitive. Paired PRs: broomva/workspace#111, broomva/bstack#69 (v0.23.1). Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Problem
Agents repeatedly ask "do you want me to create an entry / file this into the knowledge graph?" instead of capturing proactively. bstack should define autonomous documentation by default in every workspace it installs into.
Diagnosis
P6 already said "Bookkeeping is a reflex, not a request" — but every statement framed it as run the
bookkeeping runpipeline unprompted (the pipeline invocation), never the capture act. So an agent could honor "not a request" while still gating creation of the artifact behind a user yes/no. The fix adds the third clause: "a reflex, not a request — and never a question."Classification — statement-tightening, not a new primitive
Same failure-mode class P6 owns; states it sharply enough to catch the interrogative form. Respects the L3 stability budget (λ₃≈0.006); mirrors the 2026-05-29 PR-comment decision. Primitive count stays 20 (no Self-Documenting-Standards drift).
Changes (canonical installable surfaces)
references/primitives.mdassets/templates/AGENTS.md.templatebstackbootstrapsassets/templates/CLAUDE.md.templateVERSIONCHANGELOG.mdCapture stays bounded by the Nous gate (proactive ≠ indiscriminate) — low-confidence inferences still go to a synthesis note, not a committed entity.
Scope notes
AGENTS.md/CLAUDE.mdare untracked self-dogfood artifacts (bootstrapped from the templates) — intentionally left alone.Validation
Closes part of BRO-1288.
🤖 Generated with Claude Code
Summary by CodeRabbit
Documentation
Chores