diff --git a/.claude/settings.json b/.claude/settings.json
index bc45ff2..38e9482 100644
--- a/.claude/settings.json
+++ b/.claude/settings.json
@@ -1,33 +1,99 @@
{
- "enabledPlugins": {
- "rust-analyzer-lsp@claude-plugins-official": true
- },
"permissions": {
"allow": [
+ "Agent(*)",
"Bash(./gradlew:*)",
"Bash(./x.py check:*)",
+ "Bash(basename:*)",
+ "Bash(cargo test:*)",
+ "Bash(cat:*)",
"Bash(claude plugins:*)",
+ "Bash(cmake:*)",
+ "Bash(date:*)",
+ "Bash(diff:*)",
+ "Bash(dirname:*)",
+ "Bash(echo:*)",
+ "Bash(env:*)",
+ "Bash(file:*)",
"Bash(find:*)",
- "Bash(git -C /home/mernst/research/types/checker-framework-fork-mernst-branch-override-order diff master..override-order --stat)",
- "Bash(git -C /home/mernst/research/types/checker-framework-fork-mernst-branch-override-order log master..override-order --oneline)",
+ "Bash(gh issue list:*)",
+ "Bash(gh issue view:*)",
+ "Bash(gh pr create:*)",
+ "Bash(gh pr list:*)",
+ "Bash(gh pr view:*)",
+ "Bash(gh repo view:*)",
+ "Bash(git -C * diff:*)",
+ "Bash(git -C * log:*)",
+ "Bash(git add:*)",
+ "Bash(git branch:*)",
+ "Bash(git checkout:*)",
+ "Bash(git commit:*)",
+ "Bash(git diff:*)",
+ "Bash(git log:*)",
+ "Bash(git remote -v:*)",
+ "Bash(git remote get-url:*)",
+ "Bash(git rev-parse:*)",
+ "Bash(git show:*)",
+ "Bash(git stash list:*)",
+ "Bash(git stash:*)",
+ "Bash(git status:*)",
+ "Bash(git switch:*)",
+ "Bash(git tag:*)",
+ "Bash(go test:*)",
"Bash(grep:*)",
+ "Bash(head:*)",
"Bash(java:*)",
"Bash(javac:*)",
"Bash(javap:*)",
"Bash(ls:*)",
+ "Bash(make:*)",
+ "Bash(md5sum:*)",
"Bash(mkdir:*)",
+ "Bash(npm ci:*)",
+ "Bash(npm install:*)",
+ "Bash(npm test:*)",
+ "Bash(pip install:*)",
+ "Bash(pip3 install:*)",
+ "Bash(printenv:*)",
+ "Bash(pwd:*)",
+ "Bash(pytest:*)",
"Bash(python3 -m json.tool)",
- "Bash(timeout 300 ./gradlew:*)",
+ "Bash(python3 -m pytest:*)",
+ "Bash(realpath:*)",
+ "Bash(sha256sum:*)",
+ "Bash(sort:*)",
+ "Bash(stat:*)",
+ "Bash(tail:*)",
+ "Bash(uniq:*)",
"Bash(wc:*)",
- "Bash(xargs cat:*)",
+ "Bash(which:*)",
+ "Edit(*)",
"Edit(./**)",
+ "Glob(*)",
+ "Grep(*)",
+ "NotebookEdit(*)",
+ "Read(*)",
"Read(//home/mernst/research/types/checker-framework-fork*/**)",
"Read(//scratch/**)",
"Read(//tmp/**)",
- "WebFetch(domain:checkerframework.org)"
+ "Skill(*)",
+ "TaskCreate(*)",
+ "TaskUpdate(*)",
+ "WebFetch(*)",
+ "WebFetch(domain:checkerframework.org)",
+ "WebSearch(*)",
+ "Write(*)"
],
"deny": [],
"ask": []
},
- "skipDangerousModePermissionPrompt": true
+ "enabledPlugins": {
+ "rust-analyzer-lsp@claude-plugins-official": true,
+ "code-review@claude-plugins-official": true
+ },
+ "skipDangerousModePermissionPrompt": true,
+ "spinnerVerbs": {
+ "mode": "replace",
+ "verbs": ["Thinking", "Processing", "Working"]
+ }
}
diff --git a/.pmd-ruleset.xml b/.pmd-ruleset.xml
index 3628a47..9acdf55 100644
--- a/.pmd-ruleset.xml
+++ b/.pmd-ruleset.xml
@@ -24,7 +24,7 @@
-
+
@@ -86,18 +86,15 @@
-
-
-
@@ -112,11 +109,12 @@
@@ -178,7 +176,7 @@
-->
-
+
@@ -210,18 +207,11 @@
-
-
-
-
-
-
@@ -239,6 +229,7 @@
+
@@ -276,7 +267,6 @@
-
@@ -304,11 +294,10 @@
False positive in OptionsDoclet.
Triggers for `return` as well as for branches within the method.
-
- CloseResource ought to warn only when the RHS is "new ..."
-->
-
-
diff --git a/Makefile b/Makefile
index 26992c7..457cd27 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,6 @@
# Code style; defines `style-check` and `style-fix`.
-ifeq (,$(wildcard .plume-scripts))
-dummy := $(shell git clone --depth=1 -q https://github.com/plume-lib/plume-scripts.git .plume-scripts)
+PLUME_SCRIPTS ?= .plume-scripts
+ifeq (,$(wildcard ${PLUME_SCRIPTS}))
+dummy := $(shell git clone --depth=1 -q https://github.com/plume-lib/plume-scripts.git ${PLUME_SCRIPTS})
endif
-include .plume-scripts/code-style.mak
+include ${PLUME_SCRIPTS}/code-style.mak