@0xcraft/powershot 1.1.3 → 1.1.5
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/README.md +2 -2
- package/dist/git.js +5 -3
- package/dist/ground.js +61 -13
- package/dist/lang/packs.js +170 -8
- package/dist/langtest.js +1144 -2
- package/dist/reinvention.js +334 -0
- package/dist/report/sarif.js +2 -2
- package/dist/review.js +5 -1
- package/dist/selftest.js +575 -8
- package/dist/verifiers/dropped-guard.js +188 -84
- package/dist/verifiers/foreign-dropped-guard.js +174 -50
- package/dist/verifiers/foreign-reinvented.js +87 -26
- package/dist/verifiers/foreign-tokens.js +232 -20
- package/dist/verifiers/guard-diff.js +138 -0
- package/dist/verifiers/reinvented.js +31 -11
- package/docs/architecture.md +26 -1
- package/package.json +1 -1
package/docs/architecture.md
CHANGED
|
@@ -59,7 +59,7 @@ engine. The engine does not depend on a workflow provider or terminal layout.
|
|
|
59
59
|
|---|---|---|
|
|
60
60
|
| `src/cli/` | Argument parsing, command dispatch, report publication, exit mapping | Review algorithms |
|
|
61
61
|
| `src/review.ts` | One review run and its stage orchestration | CLI parsing or presentation |
|
|
62
|
-
| `src/ground.ts` | Change-scoped TypeScript projects, parse trees, manifests,
|
|
62
|
+
| `src/ground.ts` | Change-scoped TypeScript projects, parse trees, manifests, base-aware implementation index | Check selection |
|
|
63
63
|
| `src/plan.ts` | File selection and per-file capability accounting | Finding generation |
|
|
64
64
|
| `src/manifest.ts` | Completion state and the authoritative run record | Rendering |
|
|
65
65
|
| `src/verifiers/` | Deterministic check implementations | Model calls |
|
|
@@ -151,6 +151,31 @@ Python dependency grounding follows the same rule. Local modules are discovered
|
|
|
151
151
|
direct entries on each changed file's ancestor chain and conventional `src`, `lib`, or
|
|
152
152
|
`python` roots. It never recursively crawls an unrelated monorepo tree.
|
|
153
153
|
|
|
154
|
+
### Proven findings have one proof shape
|
|
155
|
+
|
|
156
|
+
A syntax oracle abstains when a refactor falls outside the exact fact it can prove.
|
|
157
|
+
`dropped-guard` pairs stable module bindings, owner, bodyless callable contract, and
|
|
158
|
+
structural block path. It then removes only the candidate guard nodes from the old file
|
|
159
|
+
and requires every remaining compiler-visible token to equal the new file. Any other
|
|
160
|
+
executable change in a supported source file also makes the check abstain, because the
|
|
161
|
+
guard may have moved across that boundary. An import, type, ancestor condition, sibling
|
|
162
|
+
statement, helper extraction, or moved continuation therefore cannot become a
|
|
163
|
+
HIGH/proven defect. The check also abstains when the same token-normalized guard remains
|
|
164
|
+
elsewhere in the callable. The changed-source index is built once from the complete diff
|
|
165
|
+
inventory, including renamed, deleted, and policy-waived paths, so the proof stays linear
|
|
166
|
+
in a large monorepo instead of rescanning the change for every callable.
|
|
167
|
+
|
|
168
|
+
`reinvented` follows only language-declared module wrappers, includes decorators and
|
|
169
|
+
templates in the token fingerprint, and keeps package and namespace identity separate.
|
|
170
|
+
Its syntax evidence does not claim semantic accessibility: it requires matching declared
|
|
171
|
+
visibility, wrappers, imports, referenced module bindings, conditional compilation, and
|
|
172
|
+
relative binding directory before calling a declaration plausibly reusable.
|
|
173
|
+
Go also requires the same source directory because its import path, not its package
|
|
174
|
+
clause alone, defines cross-file reuse. Anonymous namespaces and file-private
|
|
175
|
+
declarations are excluded. Type bodies, receiver implementations, and nested test
|
|
176
|
+
support are not treated as interchangeable module-level alternatives. Ambiguous
|
|
177
|
+
identities stay available to the optional judge instead of becoming verified facts.
|
|
178
|
+
|
|
154
179
|
### Grammar memory is isolated by language
|
|
155
180
|
|
|
156
181
|
Tree-sitter WASM compilation outlives its JavaScript parser objects. Keeping every
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xcraft/powershot",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.5",
|
|
4
4
|
"description": "Oracle-first code review for machine-written code, with deterministic verification and CI-ready reports.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "aglumova <alina.glumova@gmail.com>",
|