@devrik-tools/claude-gates 0.3.0 → 0.3.1

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.
@@ -11,13 +11,13 @@
11
11
  "name": "gates",
12
12
  "source": "./plugins/gates",
13
13
  "description": "PreToolUse gates: destructive-command blocks, protected paths, delegation/spec/quality rules, tool-discovery and forge-pipeline enforcement. Which gates run is decided by .ai/config.json (project) or ~/.claude/claude-gates/config.json (global).",
14
- "version": "0.3.0"
14
+ "version": "0.3.1"
15
15
  },
16
16
  {
17
17
  "name": "tasks",
18
18
  "source": "./plugins/tasks",
19
19
  "description": "Deterministic task tracking: the model registers tasks via the CLI, a UserPromptSubmit hook reminds of open tasks every few messages, and a SessionStart hook lists active tasks when a session opens.",
20
- "version": "0.3.0"
20
+ "version": "0.3.1"
21
21
  }
22
22
  ]
23
23
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devrik-tools/claude-gates",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Installable, deterministic gates (hooks) for Claude Code: block destructive commands, protected paths, and enforce delegation/spec/quality rules. Configurable per project.",
5
5
  "keywords": [
6
6
  "claude-code",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gates",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Deterministic gates for Claude Code: destructive-command blocks, protected paths, delegation briefs, spec-driven flow and session-start validation. Selection lives in config, not in code.",
5
5
  "author": {
6
6
  "name": "Devrik"
@@ -130,7 +130,12 @@ function main() {
130
130
  if (payload?.stop_hook_active === true) return allow();
131
131
 
132
132
  const cwd = process.cwd();
133
- if (!isGateEnabled(CONFIG_KEY, false, cwd)) return allow();
133
+ // registryDefault MUST match this gate's `default` in registry.json (true). The gate
134
+ // does not read the registry — this literal IS its default when a project config is
135
+ // silent about the key. It was false while the registry said false; both moved to true
136
+ // so the pending-task reminder actually fires on a fresh install, not only when the
137
+ // user's config names the key explicitly.
138
+ if (!isGateEnabled(CONFIG_KEY, true, cwd)) return allow();
134
139
 
135
140
  const root = projectRootOf(cwd);
136
141
  if (!root) return allow(); // no project: nothing to check
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tasks",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Deterministic task tracking for Claude Code: persists tasks the model registers via the CLI, reminds of open tasks on a message counter, and lists active tasks on session start.",
5
5
  "author": {
6
6
  "name": "Devrik"