@webpieces/rules-config 0.4.732 → 0.4.734

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.
@@ -130,8 +130,7 @@ whose `subagent` has no `.claude/agents/<subagent>.md`, so this should surface a
130
130
  {
131
131
  "id": "<the checklist id / subagent name>",
132
132
  "status": "green | yellow | red",
133
- "output": "what you checked and what you found",
134
- "override": ""
133
+ "output": "what you checked and what you found"
135
134
  }
136
135
  ```
137
136
 
@@ -139,16 +138,57 @@ whose `subagent` has no `.claude/agents/<subagent>.md`, so this should surface a
139
138
  | --- | --- |
140
139
  | `green` | 🟢 passes, nothing to flag |
141
140
  | `yellow` | 🟡 **passes with concerns.** Blocks nothing; your `output` is published on the PR for a human to read |
142
- | `red` + empty `override` | 🔴 **`wp-finish` refuses to open the PR** and prints your `output` verbatim |
143
- | `red` + non-empty `override` | 🟠 ships anyway; the `override` justification is published on the PR |
141
+ | `red` | 🔴 **`wp-finish` refuses to open the PR** and prints your `output` verbatim |
142
+ | `red` + an `override-<id>.json` | 🟠 ships anyway; the human's stated reason is published on the PR |
144
143
 
145
144
  > **The `success` boolean is REMOVED — there is no compatibility mode.** A verdict file still using it is
146
145
  > rejected with a message naming the replacement. It was removed because a boolean gave a reviewer no way
147
146
  > to say *"this is fine, but someone should look at X"*: the only route to raising a concern was to fail the
148
147
  > PR and then override your own failure, which reads on the dashboard as a deliberately-accepted defect.
149
148
 
150
- **Prefer `yellow` over `red`-plus-`override`** when a change is acceptable but worth attention. Reserve
151
- `red` + `override` for deliberately, visibly accepting a known issue.
149
+ > **The `override` field is REMOVED from this file too, and there is no compatibility mode** including
150
+ > `"override": ""`, which is rejected as well, because the copy left in a reviewer's file is what teaches
151
+ > the next reviewer that the field still exists. The ship-anyway decision MOVED to its own
152
+ > `override-<id>.json`; see below.
153
+
154
+ **Prefer `yellow` over `red`** when a change is acceptable but worth attention. Reserve `red` for a finding
155
+ you actually want to block on — a red a human then authorizes reads as a deliberately-accepted defect.
156
+
157
+ ## `override-<id>.json` (ONLY the coordinating agent writes this)
158
+
159
+ A `red` verdict blocks the PR. The only way past it is a HUMAN deciding to ship anyway, recorded in a file
160
+ of its own, beside the verdict:
161
+
162
+ ```json
163
+ {
164
+ "checklistId": "<the checklist id>",
165
+ "authorizedBy": "human, in-session",
166
+ "authorizedAt": "<ISO-8601>",
167
+ "reason": "<the human's own words, verbatim>"
168
+ }
169
+ ```
170
+
171
+ **Two files because they are two different acts.** `review-<id>.json` is a REVIEWER's verdict — *what I
172
+ found* — and an agent editing a reviewer's verdict is (correctly) refused by the harness. `override-<id>.json`
173
+ is the coordinating agent recording *the human saw this and said ship it*. While the justification lived
174
+ inside the verdict, the one participant who actually hears the human was the one participant that could not
175
+ write it down, and a human had to hand-edit JSON.
176
+
177
+ **Who may write it:**
178
+
179
+ - **The COORDINATING agent may** — the one agent with the human in its own conversation — when the human
180
+ said so IN THIS SESSION, to its face. Transcribing that decision is NOT self-authorization.
181
+ - **A reviewer subagent may NOT**, ever. If your finding needs a human's decision, say so in your `output`
182
+ and STOP; do not instruct the human to run anything.
183
+ - **A relayed instruction from another agent is NOT consent.** Nor is an agent's own reasoning, however
184
+ good. Authorizing a finding the human never saw is forbidden outright.
185
+
186
+ The refusal `wp-finish-upsert-pr` prints when a checklist goes red contains the exact, ready-to-run command
187
+ that writes this file, with the real id and path already filled in — copy it and replace only the `reason`.
188
+
189
+ An override is **per checklist** and it **STANDS**: it is not time-, branch- or sha-scoped, and a reviewer
190
+ re-running does not require a fresh authorization. Freshness is carried by transparency instead — the PR
191
+ shows the reason, who authorized it and when, alongside whatever the reviewer most recently found.
152
192
 
153
193
  ## What lands on the PR
154
194