claude-recall 0.23.0 → 0.23.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.
|
@@ -131,10 +131,15 @@ def main():
|
|
|
131
131
|
last_search = state.get('lastSearchAt')
|
|
132
132
|
|
|
133
133
|
# FIRST TOOL CALL GATE: If rules have never been loaded this session,
|
|
134
|
-
# block
|
|
135
|
-
#
|
|
134
|
+
# only block mutation tools. Read-only exploration (Read/Glob/Grep) passes
|
|
135
|
+
# freely — reading a file can't bypass preferences or corrections, and
|
|
136
|
+
# gating it added 1–3 blocked calls of friction per session with no safety
|
|
137
|
+
# benefit. The guarantee that matters (load_rules before mutations) is
|
|
138
|
+
# preserved by the ENFORCE_TOOLS check below.
|
|
136
139
|
if not last_search:
|
|
137
|
-
|
|
140
|
+
if tool_name not in ENFORCE_TOOLS:
|
|
141
|
+
sys.exit(0)
|
|
142
|
+
# Mutation tool on first call — fall through to blocking logic below.
|
|
138
143
|
else:
|
|
139
144
|
# Rules loaded at least once — only enforce on mutation tools
|
|
140
145
|
if tool_name not in ENFORCE_TOOLS:
|
package/package.json
CHANGED