weavatrix 0.2.11 → 0.2.12
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 +94 -0
- package/docs/releases/v0.2.12.md +45 -0
- package/package.json +2 -2
- package/skill/SKILL.md +14 -5
- package/docs/releases/v0.2.11.md +0 -23
package/README.md
CHANGED
|
@@ -49,6 +49,100 @@ Weavatrix answers questions a text index cannot:
|
|
|
49
49
|
impact, bounded call-argument flow, Git graph drift, architecture/duplicate/API ratchets, and
|
|
50
50
|
affected-test evidence.
|
|
51
51
|
|
|
52
|
+
## Worked examples
|
|
53
|
+
|
|
54
|
+
These are representative sequences from local dogfooding, not fabricated chat transcripts. Counts
|
|
55
|
+
describe the observed repository snapshots and will move with the code.
|
|
56
|
+
|
|
57
|
+
### Understand an unfamiliar backend without reading it linearly
|
|
58
|
+
|
|
59
|
+
```text
|
|
60
|
+
Question: Where does an attack-mitigation request go?
|
|
61
|
+
|
|
62
|
+
module_map
|
|
63
|
+
-> production territories and strongest module dependencies
|
|
64
|
+
list_endpoints
|
|
65
|
+
-> 462 routes observed in a 1,076-file backend snapshot
|
|
66
|
+
trace_endpoint
|
|
67
|
+
-> composed router mount -> controller -> service -> task/messaging
|
|
68
|
+
-> bounded call-site excerpts around decisive edges
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Use `module_map` for the initial application shape, then switch to the exact endpoint or symbol. Do
|
|
72
|
+
not lead with a broad natural-language `query_graph` when the route or identifier is already known.
|
|
73
|
+
|
|
74
|
+
### Check whether a backend handler is used by another repository
|
|
75
|
+
|
|
76
|
+
```text
|
|
77
|
+
Question: Can this handler be removed?
|
|
78
|
+
|
|
79
|
+
list_known_repos -> trace_api_contract
|
|
80
|
+
backend endpoints observed: 163
|
|
81
|
+
client callsites joined: 267 across two registered clients
|
|
82
|
+
handler liveness: NOT_DEAD_EXTERNAL_USE
|
|
83
|
+
unresolved dynamic URLs: POSSIBLE_EXTERNAL_USE / UNKNOWN
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
This joins separately cached local graphs; it does not upload source. Medium/high-confidence
|
|
87
|
+
external use can keep a handler out of the dead-code queue, while dynamic or ambiguous calls remain
|
|
88
|
+
explicitly incomplete evidence.
|
|
89
|
+
|
|
90
|
+
### Change one method with an evidence trail
|
|
91
|
+
|
|
92
|
+
```text
|
|
93
|
+
inspect_symbol -> context_bundle -> get_dependents -> coverage_map
|
|
94
|
+
-> edit the bounded workset
|
|
95
|
+
-> verified_change phase=verify base_ref=<merge-base>
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
On an observed BranchPilot diff, `change_impact` separated removed methods/signatures from additive
|
|
99
|
+
exports and ranked a 98-node radius without collapsing runtime and type-only coupling. If measured
|
|
100
|
+
coverage, the architecture contract, or requested tests are missing, the final state is `UNKNOWN`,
|
|
101
|
+
not a cosmetic pass.
|
|
102
|
+
|
|
103
|
+
### Review Health and clone debt without auto-deleting code
|
|
104
|
+
|
|
105
|
+
```text
|
|
106
|
+
run_audit category=dependencies debt=all
|
|
107
|
+
-> missing direct dependency (observed: mongodb)
|
|
108
|
+
-> lockfile drift and unresolved imports
|
|
109
|
+
run_audit debt=all
|
|
110
|
+
-> runtime cycles separated from compile/type-only coupling
|
|
111
|
+
find_duplicates
|
|
112
|
+
-> clone families and same-name divergence
|
|
113
|
+
-> homogeneous router boilerplate suppressed by default
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Every dead-code, orphan, dependency and duplicate item remains review evidence. Confirm framework
|
|
117
|
+
conventions and source use before editing; Weavatrix does not auto-delete or merge findings.
|
|
118
|
+
|
|
119
|
+
## Benchmarks
|
|
120
|
+
|
|
121
|
+
Two different gates ship in the repository:
|
|
122
|
+
|
|
123
|
+
- `npm run benchmark` is a reproducible golden suite for TypeScript, JavaScript, Python, Go, Java
|
|
124
|
+
and Rust, plus cross-repository HTTP matching, framework conventions and the MCP graph lifecycle.
|
|
125
|
+
- `npm run benchmark:real` compares revision-pinned local application snapshots with the checked-in
|
|
126
|
+
0.2.1 relation baseline. It fails on unexplained signal loss; `MISSING`, `STALE` and `UNBASELINED`
|
|
127
|
+
remain incomplete, not green.
|
|
128
|
+
|
|
129
|
+
Latest local release run (Windows x64, Node 24.15.0, July 18, 2026):
|
|
130
|
+
|
|
131
|
+
| Gate | Result | Selected evidence |
|
|
132
|
+
|---|---:|---|
|
|
133
|
+
| Six language fixtures | 6/6 PASS | exact symbols/edges and complete edge provenance |
|
|
134
|
+
| Cross-repo fixture | PASS, 431.79 ms cold | endpoint match, typed wrapper, external use, affected screen |
|
|
135
|
+
| Lifecycle | PASS | `full -> incremental -> none -> reconnect/none`; 1,376-byte text response |
|
|
136
|
+
| Total fixture cold build | 1.31 s | all six language graphs; 6.4 KB bounded report |
|
|
137
|
+
| Real-repository baseline | 6/6 PASS | TS, JS, Python, Go, Java and Rust snapshots |
|
|
138
|
+
|
|
139
|
+
Real snapshots ranged from 473 nodes / 1,165 edges in 0.22 s (Go) to 8,192 nodes / 21,814 edges
|
|
140
|
+
in 9.44 s (TypeScript). The Java snapshot built 7,143 nodes / 23,708 edges in 2.61 s, including
|
|
141
|
+
receiver-aware cross-file calls. These are regression measurements on one machine, not competitor
|
|
142
|
+
benchmarks or universal latency claims. See [benchmark/cases.mjs](benchmark/cases.mjs),
|
|
143
|
+
[benchmark/real-repositories.json](benchmark/real-repositories.json), and run the commands above to
|
|
144
|
+
reproduce them on your own repositories.
|
|
145
|
+
|
|
52
146
|
## Quick start
|
|
53
147
|
|
|
54
148
|
Requires Node ≥ 18. One command:
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Weavatrix 0.2.12
|
|
2
|
+
|
|
3
|
+
## Agent workflow routing and cross-repository API clarity
|
|
4
|
+
|
|
5
|
+
0.2.12 incorporates a second hands-on evaluation across Weavatrix, BranchPilot,
|
|
6
|
+
controller-rest-api and its registered clients. It does not reduce the product to a short list: the
|
|
7
|
+
skill still maps all 38 methods across application understanding, graph views, Health, dependencies,
|
|
8
|
+
dead code, duplicates, coverage, history, endpoints, impact, architecture and Hosted governance.
|
|
9
|
+
|
|
10
|
+
The skill now makes three high-leverage routing decisions explicit:
|
|
11
|
+
|
|
12
|
+
- prefer `trace_api_contract` over disconnected per-repository searches when a backend change can
|
|
13
|
+
affect registered clients;
|
|
14
|
+
- use `change_impact` as a diff-risk classifier that separates additive exports from
|
|
15
|
+
signature/body/removal risk, runtime/type-only radius and honest coverage evidence;
|
|
16
|
+
- treat `verified_change` as a proof layer around an agent's edit, never a hidden source editor or
|
|
17
|
+
auto-fix.
|
|
18
|
+
|
|
19
|
+
The one-symbol refactor workflow now carries exact context, dependents and coverage through the
|
|
20
|
+
post-edit `verified_change` ratchet. The public site also surfaces cross-repository API contract
|
|
21
|
+
tracing as a first-class graph capability rather than hiding it under generic multi-repository mode.
|
|
22
|
+
|
|
23
|
+
## Worked examples and public benchmark evidence
|
|
24
|
+
|
|
25
|
+
The README and public site now show four concrete dogfood scenarios instead of relying on feature
|
|
26
|
+
names alone: orienting inside a 1,076-file backend and tracing one of 462 observed routes; proving
|
|
27
|
+
external handler use across three registered repositories; classifying a BranchPilot change before
|
|
28
|
+
editing; and turning Health plus clone evidence into a bounded review queue. The examples preserve
|
|
29
|
+
uncertainty for dynamic URLs, advisory coverage and review-required findings.
|
|
30
|
+
|
|
31
|
+
The public benchmark section reports reproducible fixture and revision-pinned real-repository
|
|
32
|
+
regression gates with dates, environment, commands and explicit limits. It does not present these
|
|
33
|
+
machine-dependent local measurements as competitor benchmarks. A lightweight CSS motion sequence
|
|
34
|
+
illustrates the graph-to-verdict workflow and respects `prefers-reduced-motion`; no synthetic product
|
|
35
|
+
screenshots are used.
|
|
36
|
+
|
|
37
|
+
## Compatibility and verification
|
|
38
|
+
|
|
39
|
+
- Runtime implementation, tool names, schemas and result envelopes are unchanged from 0.2.11.
|
|
40
|
+
- Hosted sync payload v2/v3 and architecture-contract transport are unchanged.
|
|
41
|
+
- Skill inventory: all 38 current methods are routed; 0 missing.
|
|
42
|
+
- Full Node suite baseline: 506 tests, 503 passed, 3 platform skips, 0 failed.
|
|
43
|
+
- Six-language fixture, cross-repository and lifecycle benchmark: `PASS`.
|
|
44
|
+
- Six locally available revision-pinned real-repository baselines: `PASS`.
|
|
45
|
+
- Release metadata, 99-character MCP Registry description and MCPB validation: `PASS`.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "weavatrix",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Local repository intelligence MCP for AI coding agents: reusable architecture graph for fast application understanding, Health, dead code, clones, history, blast radius and architecture safeguards.",
|
|
6
6
|
"author": "Sergii Ziborov <sergii.ziborov@gmail.com>",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"skill",
|
|
27
27
|
"scripts/run-agent-task-benchmark.mjs",
|
|
28
28
|
"docs/agent-task-benchmark.md",
|
|
29
|
-
"docs/releases/v0.2.
|
|
29
|
+
"docs/releases/v0.2.12.md",
|
|
30
30
|
"README.md",
|
|
31
31
|
"SECURITY.md",
|
|
32
32
|
"LICENSE"
|
package/skill/SKILL.md
CHANGED
|
@@ -59,16 +59,21 @@ projection; expand only when the answer requires it.
|
|
|
59
59
|
- **Trace one endpoint through the application**: `trace_endpoint` for route -> handler -> bounded
|
|
60
60
|
downstream call flow with edge-centered excerpts.
|
|
61
61
|
- **Trace an API contract across repositories**: `list_known_repos` -> `trace_api_contract` with an
|
|
62
|
-
explicit backend/client set;
|
|
62
|
+
explicit backend/client set; prefer this over separate per-repository endpoint/search passes when
|
|
63
|
+
a backend change may affect registered clients, and inspect each graph reconciliation state before
|
|
64
|
+
using the verdict.
|
|
63
65
|
- **Measure one symbol's transitive blast radius**: `get_dependents`.
|
|
64
|
-
- **Review the current branch, diff, or external patch**: `change_impact
|
|
66
|
+
- **Review the current branch, diff, or external patch**: `change_impact`; it distinguishes additive
|
|
67
|
+
exports from signature/body/removal risk and separates runtime/type-only radius plus available
|
|
68
|
+
measured coverage or explicitly static reachability.
|
|
65
69
|
- **Compare structural graph revisions**: `graph_diff base_ref=<merge-base>` for module edges, cycles,
|
|
66
70
|
orphans and lost callers; without `base_ref`, compare the last rebuild snapshots.
|
|
67
71
|
- **Use behavioral history**: `git_history` for churn x connectivity, hidden co-change and expected
|
|
68
72
|
test/source coupling from bounded local Git numstat evidence.
|
|
69
73
|
- **Plan and verify a serious change or pre-commit gate**: `verified_change phase=plan` -> edit ->
|
|
70
74
|
`verified_change phase=verify base_ref=<same-ref>`. It composes exact context, impact, graph,
|
|
71
|
-
architecture, duplicate, optional API and test proof into one PASS/BLOCKED/UNKNOWN envelope.
|
|
75
|
+
architecture, duplicate, optional API and test proof into one PASS/BLOCKED/UNKNOWN envelope. It is
|
|
76
|
+
a proof layer around an agent's edit, not a source editor or hidden auto-fix.
|
|
72
77
|
|
|
73
78
|
### Health, debt and testing scenarios
|
|
74
79
|
|
|
@@ -110,6 +115,9 @@ TypeScript/JavaScript overlay. Java receiver-type call edges are parser-resolved
|
|
|
110
115
|
|
|
111
116
|
## Ground rules
|
|
112
117
|
|
|
118
|
+
- **No hidden source mutation**: Weavatrix builds derived graph/cache artifacts and can run explicitly
|
|
119
|
+
authorized tests, but it does not edit repository source, auto-delete debt, merge clones, or rewrite
|
|
120
|
+
architecture policy. The coding agent remains responsible for the change and its tests.
|
|
113
121
|
- **Evidence, not verdicts**: treat audit, hub, orphan and duplicate output as hypotheses. Confirm a
|
|
114
122
|
finding in source and check framework/runtime conventions before deleting, merging or redesigning
|
|
115
123
|
code. A same-name/different-body pair is a divergence candidate, not proof of duplication.
|
|
@@ -195,8 +203,9 @@ TypeScript/JavaScript overlay. Java receiver-type call edges are parser-resolved
|
|
|
195
203
|
- **Orient in the configured repo**: `module_map` → `list_communities` → `god_nodes`. Hub ranking
|
|
196
204
|
is production-only by default; use `include_classified:true` only when tests/generated/build
|
|
197
205
|
surfaces are deliberately part of the question.
|
|
198
|
-
- **Refactor safety for one symbol**: `inspect_symbol` → `
|
|
199
|
-
dependents ⇒ write tests first) →
|
|
206
|
+
- **Refactor safety for one symbol**: `inspect_symbol` → `context_bundle` → `get_dependents` →
|
|
207
|
+
`coverage_map` (low coverage × many dependents ⇒ write tests first) → edit →
|
|
208
|
+
`verified_change phase=verify base_ref=<merge-base>`.
|
|
200
209
|
- **Performance review**: `hot_path_review` → inspect its local evidence with `read_source` → use
|
|
201
210
|
`get_dependents` for change risk → confirm with the repository's profiler/benchmark before editing.
|
|
202
211
|
- **Pre-PR review of your current changes**: `change_impact` (auto merge-base; includes uncommitted
|
package/docs/releases/v0.2.11.md
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# Weavatrix 0.2.11
|
|
2
|
-
|
|
3
|
-
## MCP Registry publication hotfix
|
|
4
|
-
|
|
5
|
-
0.2.11 is the immutable follow-up to 0.2.10. The 0.2.10 npm package published successfully, but
|
|
6
|
-
the official MCP Registry rejected its expanded server description because that field exceeded the
|
|
7
|
-
Registry's 100-character limit. This patch shortens only the Registry summary while preserving the
|
|
8
|
-
broad product positioning across the package, MCPB, skill, README and public site. The release
|
|
9
|
-
verifier now enforces the same 1-100 character boundary before a tag can publish.
|
|
10
|
-
|
|
11
|
-
The runtime is otherwise the verified 0.2.10 release: 38 graph-backed methods for fast application
|
|
12
|
-
understanding, Health, dependencies, dead-code and duplicate review, history, endpoint and impact
|
|
13
|
-
tracing, proof-carrying changes, target-architecture ratchets and explicit Hosted governance. Its
|
|
14
|
-
Java receiver-aware call resolver and product-code-only architecture starter are unchanged.
|
|
15
|
-
|
|
16
|
-
## Compatibility and verification
|
|
17
|
-
|
|
18
|
-
- Tool names, input schemas, result envelopes and Hosted sync payload v2/v3 remain unchanged.
|
|
19
|
-
- Full Node suite: 506 tests, 503 passed, 3 platform skips, 0 failed.
|
|
20
|
-
- Six-language, cross-repository, framework and MCP lifecycle benchmark: `PASS`.
|
|
21
|
-
- Six available real-repository baselines: 6/6 `PASS`.
|
|
22
|
-
- Repo Lens portable analyzer parity: 21/21 methods present in the default offline profile.
|
|
23
|
-
- Release metadata, MCP Registry description length and MCPB manifest validation: `PASS`.
|