From dcf800ed65bafb51e81614841d45b84991b5a685 Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Thu, 17 Sep 2026 12:20:56 -0400 Subject: [PATCH] fix(plugin): a line break split the token a guidance guard matches on (#4103) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CI 6973 — `test_guidance_ownership` on "rules are retrieved; ask before a consequential act": the using-scribe skill was missing the marker `content_type="rule"`. It was there. I had hard-wrapped the new bullet across `content_type=` / `"rule"`, and that guard matches its MARKERS raw while normalising whitespace only for the longer `statement` — which is why the failure reported the statement present and the marker absent in the same breath. Rewrapped so the token sits on one line. Worth noting rather than just fixing: the markers are deliberately raw-matched, since a marker IS a literal a reader copies. `tool_doc` flattens for exactly the opposite reason one layer over. Both are right; the trap is that they differ. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01821k5B3Ysecp9fNYs92Kuy --- plugin/skills/using-scribe/SKILL.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugin/skills/using-scribe/SKILL.md b/plugin/skills/using-scribe/SKILL.md index edc3a39..ea83b4b 100644 --- a/plugin/skills/using-scribe/SKILL.md +++ b/plugin/skills/using-scribe/SKILL.md @@ -82,12 +82,12 @@ Two constraints on *how* that's achieved: just underneath — right for something firing before every command, wrong for the one moment you actually want to be sure. Expect the tail to be noise; you are reading for the one record you would have missed. - - **When you already suspect a particular rule**: `search(content_type= - "rule")` for full statements, or `get_rule(id)` when it is about to bite. + - **When you already suspect a particular rule**: reach for + `search(content_type="rule")` to read full statements, or `get_rule(id)` + when one is about to bite. - When a project is in scope, pass - its `project_id`: the answer is then the global rules plus that project's - own, never another project's. `enter_project(id)` lists the project's own + Either way, when a project is in scope pass its `project_id`: the answer is + then the global rules plus that project's own, never another project's. `enter_project(id)` lists the project's own rules by title. **`kind` says how much force a record carries, and it is never something to