@mechanai/deepreview 2.4.2 → 2.5.0

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.
@@ -6,10 +6,17 @@ permission:
6
6
  edit: allow
7
7
  bash:
8
8
  "git diff*": allow
9
+ "mise tasks ls*": allow
9
10
  "mise run fmt*": allow
10
11
  "mise run lint*": allow
11
12
  "mise run check*": allow
12
13
  "mise run test*": allow
14
+ "npm run format*": allow
15
+ "npm run lint*": allow
16
+ "npm run test*": allow
17
+ "make fmt*": allow
18
+ "make lint*": allow
19
+ "make test*": allow
13
20
  "*": deny
14
21
  ---
15
22
 
@@ -44,13 +51,25 @@ If a fix cannot be applied (file doesn't exist, code doesn't match what was expe
44
51
 
45
52
  ## Verification (after all fixes are applied)
46
53
 
47
- After applying all fixes, run verification if `mise.toml` exists in the project root:
54
+ After applying all fixes, run verification using the project's configured tooling.
48
55
 
49
- 1. Run `mise run fmt` (auto-fix formatting this is expected to modify files)
50
- 2. Run `mise run lint` or `mise run check` (whichever exists)
51
- 3. Run `mise run test`
56
+ **Determining commands:** Check `AGENTS.md` (or `CLAUDE.md`) in the project root for explicit format/lint/test commands. If found, use those. Otherwise, auto-detect:
52
57
 
53
- If lint/check/test fails:
58
+ - `mise.toml` exists: run `mise tasks ls`, then `mise run <task>` for tasks matching `fmt`/`format`, `lint`/`check`, `test`
59
+ - `package.json` exists with matching scripts: `npm run format`, `npm run lint`, `npm run test`
60
+ - `Makefile` exists with matching targets: `make fmt`, `make lint`, `make test`
61
+
62
+ If no commands are found and no config files exist, skip verification and report `VERIFICATION: SKIPPED — no fmt/lint/test commands found`.
63
+
64
+ **Steps:**
65
+
66
+ 1. **Format:** Run the format command (expected to modify files)
67
+ 2. **Lint:** Run the lint command
68
+ - If lint fails, fix errors **only in files you modified** this session. Do not fix pre-existing lint issues.
69
+ - Re-run format then lint. Attempt up to 2 fix-and-recheck cycles; if lint still fails, stop and report remaining errors.
70
+ 3. **Test:** Run the test command
71
+
72
+ If lint/check/test still fails:
54
73
 
55
74
  - Include the error output in your response
56
75
  - Mark the relevant fix as FAILED with the error
package/README.md CHANGED
@@ -83,6 +83,35 @@ its own context, keeping token usage minimal.
83
83
  - `git`
84
84
  - `gh` CLI (only for PR commands)
85
85
 
86
+ ## Configuration
87
+
88
+ ### Verification (formatting, linting, tests)
89
+
90
+ After applying fixes, the applier agent runs formatting, linting, and tests. It auto-detects
91
+ commands based on what exists in your project root:
92
+
93
+ | File detected | Format | Lint | Test |
94
+ | -------------- | ---------------- | ---------------------------------- | --------------- |
95
+ | `mise.toml` | `mise run fmt` | `mise run lint` / `mise run check` | `mise run test` |
96
+ | `package.json` | `npm run format` | `npm run lint` | `npm run test` |
97
+ | `Makefile` | `make fmt` | `make lint` | `make test` |
98
+
99
+ If your project uses different commands (e.g., `cargo fmt`, `ruff check --fix`),
100
+ specify them in `AGENTS.md`. The applier looks for commands labeled **Format**, **Lint**, and
101
+ **Test** (or similar). For example:
102
+
103
+ ```markdown
104
+ - **Format:** `cargo fmt`
105
+ - **Lint:** `cargo clippy -- -D warnings`
106
+ - **Tests:** `cargo test`
107
+ ```
108
+
109
+ The applier checks `AGENTS.md` (or `CLAUDE.md`) first, falling back to auto-detection.
110
+ If no commands are found and no config files exist, verification is skipped.
111
+
112
+ When lint fails, the applier attempts to fix errors in the files it modified (up to 2 retry
113
+ cycles) before reporting the failure.
114
+
86
115
  ## Upgrade
87
116
 
88
117
  OpenCode caches plugins on first install and does not automatically check for newer versions.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mechanai/deepreview",
3
- "version": "2.4.2",
3
+ "version": "2.5.0",
4
4
  "description": "Multi-agent parallel code/spec review for OpenCode",
5
5
  "license": "MIT",
6
6
  "repository": {