@webpieces/rules-config 0.4.711 → 0.4.712

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webpieces/rules-config",
3
- "version": "0.4.711",
3
+ "version": "0.4.712",
4
4
  "description": "Shared webpieces.config.json loader. Single source of truth for validation rule configuration consumed by @webpieces/ai-hook-rules, @webpieces/code-rules, and @webpieces/nx-webpieces-rules.",
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",
@@ -22,7 +22,7 @@ numbers from `L0_ROW_*`, both spelled in exactly one place (`core/l0-fault-codes
22
22
  | `X` | `guard-bin-missing` | guard bin missing (fresh clone / new worktree / package removed) | sh, before the bin runs | sh |
23
23
  | `U` | `guard-pkg-undeclared` | guard bin missing AND @webpieces/ai-hook-rules is not declared in package.json | sh, before the bin runs | sh |
24
24
  | `K` | `guard-bin-crashed` | guard bin present but CRASHED (exit code not 0 or 2 — corrupt node_modules) | sh, before the bin runs | sh |
25
- | `S` | `managed-hook-surface` | a webpieces-managed hook file, the .claude/settings.json registration or its managed env entry does not match this release | the guard bin | JS |
25
+ | `S` | `managed-hook-surface` | a webpieces-managed hook file, one of the harness hook registrations (.claude/settings.json, .codex/hooks.json) or the managed env entry does not match this release | the guard bin | JS |
26
26
  | `C` | `config-missing` | webpieces.config.json missing | the guard bin | JS |
27
27
  | `Y` | `config-out-of-sync` | a loaded rule has no webpieces.config.json key | the guard bin | JS |
28
28
 
@@ -52,9 +52,9 @@ the option you pick EXACTLY as written and run nothing else on that line.
52
52
 
53
53
  - **Option 1 (preferred)**: `rm -rf node_modules && pnpm install` ← pick this when this fault fires at all — a BARE pnpm install SKIPS the corrupt package, because pnpm sees the right version on disk and considers it installed; only the delete forces a rewrite
54
54
 
55
- ### `S` — a webpieces-managed hook file, the .claude/settings.json registration or its managed env entry does not match this release
55
+ ### `S` — a webpieces-managed hook file, one of the harness hook registrations (.claude/settings.json, .codex/hooks.json) or the managed env entry does not match this release
56
56
 
57
- - **Option 1 (preferred)**: `pnpm exec wp-upgrade-shim` ← pick this when this fault fires at all — it is the only cure that repairs all three managed things (ai-hook.sh, the settings.json registration and its managed env entry), and it also deletes the retired guarantee-root.sh and any entry still naming it, and it touches no config; needs installed @webpieces/ai-hook-rules 0.4.408 or newer
57
+ - **Option 1 (preferred)**: `pnpm exec wp-upgrade-shim` ← pick this when this fault fires at all — it is the only cure that repairs EVERY managed surface (ai-hook.sh, each harness hook registration, and the Claude settings env entry), and it also deletes the retired guarantee-root.sh and any entry still naming it, and it touches no config; needs installed @webpieces/ai-hook-rules 0.4.408 or newer
58
58
  - **Option 2**: `cp node_modules/@webpieces/ai-hook-rules/templates/ai-hook.sh .claude/webpieces/ai-hook.sh` ← pick this when the installed @webpieces/ai-hook-rules is OLDER than 0.4.408, so wp-upgrade-shim does not exist yet — it is PARTIAL (it repairs ai-hook.sh and NOTHING else), so upgrade @webpieces afterwards and run Option 1 to finish
59
59
 
60
60
  ### `C` — webpieces.config.json missing
@@ -92,18 +92,19 @@ that denied `rm -rf node_modules && pnpm install` while allowing a bare `pnpm in
92
92
  | # | allowed | outcome |
93
93
  |---|---|---|
94
94
  | 1 | any Read | PASS |
95
- | 2 | a Write/Edit whose target is webpieces.config.json | PASS |
96
- | 3 | a Write/Edit whose target is a tree ROOT's pnpm-workspace.yaml or package.json - the version pin | PASS |
97
- | 4 | pnpm|npm install | ALLOW |
98
- | 5 | rm -rf node_modules && pnpm install - the cure for a CORRUPT node_modules | ALLOW |
99
- | 6 | git fetch - a bare git pull and git merge are NOT on the list | ALLOW |
100
- | 7 | git checkout main && git pull origin main | ALLOW |
101
- | 8 | pnpm exec wp-upgrade-shim | ALLOW |
102
- | 9 | cp node_modules/@webpieces/ai-hook-rules/templates/ai-hook.sh .claude/webpieces/ai-hook.sh | ALLOW |
103
- | 10 | pnpm wp-prune-unknown-config | ALLOW |
104
- | 11 | pnpm exec wp-install-ai-hooks (flags allowed, e.g. --target=project) | ALLOW |
105
- | 12 | pnpm add -D @webpieces/ai-hook-rules (an @version and extra flags allowed) | ALLOW |
106
- | 13 | read-only orientation: pwd, git status/log/diff/show/branch/rev-parse, git worktree list | ALLOW |
95
+ | 2 | a Codex tool with nothing to judge: webrun, collaborationspawn_agent, collaborationwait_agent, view_image, update_plan | PASS |
96
+ | 3 | a Write/Edit whose target is webpieces.config.json | PASS |
97
+ | 4 | a Write/Edit whose target is a tree ROOT's pnpm-workspace.yaml or package.json - the version pin | PASS |
98
+ | 5 | pnpm|npm install | ALLOW |
99
+ | 6 | rm -rf node_modules && pnpm install - the cure for a CORRUPT node_modules | ALLOW |
100
+ | 7 | git fetch - a bare git pull and git merge are NOT on the list | ALLOW |
101
+ | 8 | git checkout main && git pull origin main | ALLOW |
102
+ | 9 | pnpm exec wp-upgrade-shim | ALLOW |
103
+ | 10 | cp node_modules/@webpieces/ai-hook-rules/templates/ai-hook.sh .claude/webpieces/ai-hook.sh | ALLOW |
104
+ | 11 | pnpm wp-prune-unknown-config | ALLOW |
105
+ | 12 | pnpm exec wp-install-ai-hooks (flags allowed, e.g. --target=project) | ALLOW |
106
+ | 13 | pnpm add -D @webpieces/ai-hook-rules (an @version and extra flags allowed) | ALLOW |
107
+ | 14 | read-only orientation: pwd, git status/log/diff/show/branch/rev-parse, git worktree list | ALLOW |
107
108
 
108
109
  - **PASS** — L0 has no objection; the call falls THROUGH so the downstream guards still judge it.
109
110
  - **ALLOW** — terminal; bypasses everything, because a cure must stay reachable even when a