@orangepro/orangepro-mcp 0.2.2 → 0.2.4
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 +65 -12
- package/dist/local/analyze/analyzer.js +61 -2
- package/dist/local/analyze/parseCache.js +1 -1
- package/dist/local/analyze/treeSitter/engine.js +141 -5
- package/dist/local/autoProve.js +39 -21
- package/dist/local/cli.js +7 -1
- package/dist/local/flows/llmFlowDiscovery.js +16 -5
- package/dist/local/graph/ontology.js +3 -1
- package/dist/local/mcp.js +1 -1
- package/dist/local/operations.js +36 -5
- package/dist/local/util/walk.js +5 -4
- package/dist/local/viz/behaviorReportData.js +2 -3
- package/dist/local/viz/behaviorReportHtml.js +9 -8
- package/dist/local/viz/coverageReveal.js +29 -0
- package/dist/local/workspace.js +25 -2
- package/package.json +6 -2
- package/scripts/spikes/go-dynamic-proof-spike.mjs +17 -13
- package/scripts/spikes/go-mutate.go +103 -21
- package/scripts/spikes/java-dynamic-proof-spike.mjs +6 -4
- package/scripts/spikes/java-mutate.mjs +3 -2
|
@@ -21,9 +21,11 @@
|
|
|
21
21
|
// classify as `unrunnable`, never `proven`. An equivalent-value mutation survives ->
|
|
22
22
|
// `associated_survived`. An ambiguous method name is refused -> `unrunnable`.
|
|
23
23
|
//
|
|
24
|
-
//
|
|
25
|
-
//
|
|
26
|
-
//
|
|
24
|
+
// PRODUCT-WIRED: `opro` routes Java dynamic proof through this script (operations.ts
|
|
25
|
+
// dynamicProofSpikePathFor("java")). The script itself writes no graph edges or
|
|
26
|
+
// product artifacts — it emits a JSON verdict; the orchestrator is the sole
|
|
27
|
+
// interpreter and the only place proof is minted. Pin: Maven + Surefire + JUnit 5
|
|
28
|
+
// (the Spring Boot default). Gradle / JUnit4 are later parsers.
|
|
27
29
|
import { spawnSync } from "node:child_process";
|
|
28
30
|
import { cpSync, existsSync, lstatSync, mkdtempSync, mkdirSync, readFileSync, readdirSync, rmSync } from "node:fs";
|
|
29
31
|
import { tmpdir } from "node:os";
|
|
@@ -40,7 +42,7 @@ function usage() {
|
|
|
40
42
|
"",
|
|
41
43
|
"Runs ONE Surefire target test on a byte-copy of a single-module Maven + JUnit 5 project, mutates the target method body via a signature-derived sentinel, reruns the SAME test, and classifies from the structured surefire report.",
|
|
42
44
|
"J-1 scope: SIMPLEST SHAPE ONLY — a concrete non-void return, a single top-level return, no generics, no overloads. Equivalent-value mutations survive (associated_survived). Ambiguous names are refused (unrunnable).",
|
|
43
|
-
"
|
|
45
|
+
"Product wiring: opro prove/auto-prove invokes this script for Java targets; it writes no graph edges or product artifacts itself — the caller interprets the JSON verdict."
|
|
44
46
|
].join("\n");
|
|
45
47
|
}
|
|
46
48
|
|
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
// by exact name via tree-sitter Java (the SAME grammar the static layer already
|
|
6
6
|
// uses — tree-sitter-wasms + web-tree-sitter, no new dependency) and replaces its
|
|
7
7
|
// BODY with a signature-derived, type-compatible sentinel by splicing the body
|
|
8
|
-
// block's byte range.
|
|
9
|
-
//
|
|
8
|
+
// block's byte range. Invoked by java-dynamic-proof-spike.mjs (the product Java
|
|
9
|
+
// proof path); it writes ONLY the mutated file inside the sandbox copy — no graph
|
|
10
|
+
// or product artifacts.
|
|
10
11
|
//
|
|
11
12
|
// J-1 scope is the SIMPLEST SHAPE ONLY: a concrete non-void, non-type-variable
|
|
12
13
|
// return type, EXACTLY one top-level `return <expr>;` (no nested return in an
|