weavatrix 1.16.1 → 1.16.3

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 CHANGED
@@ -9,13 +9,18 @@
9
9
 
10
10
  **Give your coding agent repository evidence before it starts guessing.**
11
11
 
12
- Weavatrix is the native MCP product for repository intelligence. It gives
13
- Codex, Claude Code, and other coding agents 64 read-only operations over one
14
- revision-bound evidence graph: impact, architecture, APIs, Git history,
15
- duplicates, dead code, search, semantic links, temporal memory, exported
16
- n8n workflows, Dify YAML apps, Agent packages, Mermaid flowcharts, and
17
- Web3 ABI/consumer impact. Those parsers are domains on Weavatrix
18
- Core, not new MCP products. See
12
+ Weavatrix answers the questions agents otherwise invent: what breaks if this
13
+ file changes, who consumes this n8n field, whether an MCP schema still
14
+ accepts yesterday’s request, which viem call sites follow an ABI layout
15
+ change, and whether `.weavatrix/architecture.json` still holds. **64
16
+ read-only operations**, one revision-bound graph, no LSP and no prompt pack.
17
+
18
+ Codex, Claude Code, Cursor, and Grok get impact, architecture, APIs, Git
19
+ history, duplicates, dead code, search, semantic links, temporal memory,
20
+ exported n8n workflows (`n8n_*`), Dify YAML apps (`dify_*`), Agent
21
+ Plugins/Skills/MCP catalogs (`agent_*`), Mermaid flowcharts (`diagram_*`),
22
+ and Web3 ABI/consumer impact (`web3_*`). Those parsers are domains on
23
+ Weavatrix Core, not new MCP products. See
19
24
  [n8n](https://weavatrix.com/n8n), [Dify](https://weavatrix.com/dify), and
20
25
  [parsers](https://weavatrix.com/parsers).
21
26
 
@@ -53,7 +58,7 @@ weavatrix mcp .
53
58
  ```toml
54
59
  [mcp_servers.weavatrix]
55
60
  command = "npx"
56
- args = ["-y", "weavatrix@1.16.1", "mcp", "."]
61
+ args = ["-y", "weavatrix@1.16.3", "mcp", "."]
57
62
  ```
58
63
 
59
64
  Pass an absolute repository path when the Codex process cwd is not the project
@@ -62,7 +67,7 @@ you intend to analyze.
62
67
  ### Claude Code
63
68
 
64
69
  ```sh
65
- claude mcp add weavatrix -- npx -y weavatrix@1.16.1 mcp .
70
+ claude mcp add weavatrix -- npx -y weavatrix@1.16.3 mcp .
66
71
  ```
67
72
 
68
73
  ### Cursor
@@ -75,7 +80,7 @@ the plugin for the same server name:
75
80
  "mcpServers": {
76
81
  "weavatrix": {
77
82
  "command": "npx",
78
- "args": ["-y", "weavatrix@1.16.1", "mcp", "${workspaceFolder}"]
83
+ "args": ["-y", "weavatrix@1.16.3", "mcp", "${workspaceFolder}"]
79
84
  }
80
85
  }
81
86
  }
@@ -84,14 +89,14 @@ the plugin for the same server name:
84
89
  Profiles expose bounded views of the same engine:
85
90
 
86
91
  ```sh
87
- npx -y weavatrix@1.16.1 mcp . --profile=all
88
- npx -y weavatrix@1.16.1 mcp . --profile=code
89
- npx -y weavatrix@1.16.1 mcp . --profile=seo
90
- npx -y weavatrix@1.16.1 mcp . --profile=n8n
91
- npx -y weavatrix@1.16.1 mcp . --profile=dify
92
- npx -y weavatrix@1.16.1 mcp . --profile=agent
93
- npx -y weavatrix@1.16.1 mcp . --profile=diagram
94
- npx -y weavatrix@1.16.1 mcp . --profile=web3
92
+ npx -y weavatrix@1.16.3 mcp . --profile=all
93
+ npx -y weavatrix@1.16.3 mcp . --profile=code
94
+ npx -y weavatrix@1.16.3 mcp . --profile=seo
95
+ npx -y weavatrix@1.16.3 mcp . --profile=n8n
96
+ npx -y weavatrix@1.16.3 mcp . --profile=dify
97
+ npx -y weavatrix@1.16.3 mcp . --profile=agent
98
+ npx -y weavatrix@1.16.3 mcp . --profile=diagram
99
+ npx -y weavatrix@1.16.3 mcp . --profile=web3
95
100
  ```
96
101
 
97
102
  The package contains native binaries for Windows x64/arm64, macOS x64/arm64,
@@ -117,6 +122,17 @@ same, and a call that names its own `output_format` still wins.
117
122
  `json` is the default and keeps the mirror, because a client that ignores
118
123
  `structuredContent` would otherwise see an empty result.
119
124
 
125
+ ### What the new domains actually answer
126
+
127
+ | Ask | Tool | Honest limit |
128
+ | --- | --- | --- |
129
+ | Will this MCP schema still accept yesterday’s request? | `agent_change_impact` | `string` → `integer` is incompatible. A missing tool in a partial catalog is `unconfirmed`, not removed. |
130
+ | Who calls this ABI after an event layout change? | `web3_impact` | Comment/string “calls” are not consumers. ABI equality is not a live deployment. |
131
+ | Who reads this field in an exported n8n workflow? | `n8n_trace` | Secrets stay off the graph. |
132
+ | Which Dify nodes consume `start_node.query`? | `dify_trace` | Conversation variables are directed edges, not string presence. |
133
+ | Does this Mermaid arrow prove a code call? | `diagram_*` | Arrows are `declared_architecture`, never `Calls`. |
134
+ | Does `.weavatrix/architecture.json` still hold? | `verify_architecture` | Unknown rules fail closed. |
135
+
120
136
  ## What an agent can ask
121
137
 
122
138
  ```text
@@ -131,6 +147,9 @@ Build the smallest source bundle needed to edit this symbol safely.
131
147
  Show me this file as it was two commits ago, without a checkout.
132
148
  If I change the email recipient in this exported n8n workflow, who reads it?
133
149
  If I change start_node.query in this Dify YAML, which nodes consume it?
150
+ Did this MCP catalog make `id` an integer so old string requests fail?
151
+ Which viem `decodeEventLog` sites still assume the old Deposit layout?
152
+ Is this Mermaid arrow a real call, or only declared architecture?
134
153
  ```
135
154
 
136
155
  ## See it answer
@@ -216,6 +235,10 @@ instead of being decoded into garbage.
216
235
  | Change impact | `get_dependents`, `change_impact`, `select_tests`, `verified_change`, `prepare_change`, `graph_diff` |
217
236
  | Exact source context | `search_code`, `read_source`, `inspect_symbol`, `go_to_definition`, `find_references`, `context_bundle`, `map_stacktrace` |
218
237
  | Health and quality | `find_duplicates`, `find_dead_code`, `run_audit`, `coverage_map`, `hot_path_review`, `perf_attribution` |
238
+
239
+ Need measured coverage from this MCP host? Run Weavatrix Quality first, then
240
+ `coverage_map`. The host will not invent percentages from an empty search
241
+ path. Quality publishes `.weavatrix/coverage/lcov.info`.
219
242
  | APIs and transports | `list_endpoints`, `trace_endpoint`, `trace_api_contract` |
220
243
  | Architecture | `get_architecture_contract`, `verify_architecture`, `verify_capabilities`, `explain_architecture_violation`, `propose_architecture_exception` |
221
244
  | Git and repositories | `git_history`, `git_read_blob`, `cross_repo_git`, `open_repo`, `list_known_repos`, `rebuild_graph` |
@@ -256,7 +279,7 @@ export in git → existing JSON/YAML parse → typed domain → inventory / trac
256
279
  | [Dify](https://weavatrix.com/dify) | `dify_inventory`, `dify_trace`, `dify_context` | Product 1.13.0 |
257
280
  | Agent packages | `agent_inventory`, `agent_trace`, `agent_context`, `agent_change_impact` | Product 1.14.0 |
258
281
  | Mermaid diagrams | `diagram_inventory`, `diagram_trace`, `diagram_context` | Product 1.14.0 |
259
- | Web3 integration | `web3_inventory`, `web3_trace`, `web3_impact`, `web3_context` | Product 1.16.1 |
282
+ | Web3 integration | `web3_inventory`, `web3_trace`, `web3_impact`, `web3_context` | Product 1.16.3 |
260
283
 
261
284
  | Need | Use |
262
285
  | --- | --- |
@@ -276,11 +299,11 @@ coding agent
276
299
  |
277
300
  | MCP over stdio
278
301
  v
279
- weavatrix 1.16.1
302
+ weavatrix 1.16.3
280
303
  profile catalog · refresh · watcher · MCP framing
281
304
  |
282
305
  v
283
- weavatrix-rust 2.16.1
306
+ weavatrix-rust 2.16.3
284
307
  typed graph · analysis · 64 product operations including n8n, Dify, agent packages, Mermaid, and Web3
285
308
  ```
286
309
 
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "weavatrix",
3
- "version": "1.16.1",
4
- "weavatrixEngineVersion": "2.16.1",
3
+ "version": "1.16.3",
4
+ "weavatrixEngineVersion": "2.16.3",
5
5
  "description": "Native repository intelligence for coding agents: 64 read-only MCP operations backed by typed evidence graphs, impact, architecture, APIs, Git, search, semantics, memory, n8n workflows, Dify apps, agent packages, Mermaid diagrams, and Web3 ABIs.",
6
6
  "author": "Sergii Ziborov <sergii.ziborov@gmail.com>",
7
7
  "license": "MIT",
package/server.json CHANGED
@@ -7,14 +7,14 @@
7
7
  "url": "https://github.com/Weavatrix/weavatrix",
8
8
  "source": "github"
9
9
  },
10
- "version": "1.16.1",
10
+ "version": "1.16.3",
11
11
  "websiteUrl": "https://weavatrix.com",
12
12
  "packages": [
13
13
  {
14
14
  "registryType": "npm",
15
15
  "registryBaseUrl": "https://registry.npmjs.org",
16
16
  "identifier": "weavatrix",
17
- "version": "1.16.1",
17
+ "version": "1.16.3",
18
18
  "runtimeHint": "npx",
19
19
  "transport": {
20
20
  "type": "stdio"
package/skill/SKILL.md CHANGED
@@ -38,7 +38,12 @@ contracts. Do not call it merely because the server is available.
38
38
  `web3_trace` / `web3_impact` / `web3_context` for supplied ABI,
39
39
  artifacts, and static viem/wagmi consumers. Those paths are static graph
40
40
  evidence, not a live n8n, Dify, MCP, Mermaid, or blockchain runtime.
41
- 5. Use repository-native tests or benchmarks for behavioral proof.
41
+ 5. Use repository-native tests or benchmarks for behavioral proof. For
42
+ measured line coverage, run Weavatrix Quality `quality_run` so it writes
43
+ `.weavatrix/coverage/lcov.info`, then call `coverage_map`. Do not start
44
+ with `coverage_map` — it never runs tests. A missing report is
45
+ unmeasured, not 0%. See
46
+ [references/tools/coverage_map.md](references/tools/coverage_map.md).
42
47
 
43
48
  Do not call `open_repo` "just in case". Cross-repository tools take explicit
44
49
  roots in their arguments. Multi-root retarget requires launching with
@@ -58,6 +63,7 @@ audit and coverage results.
58
63
  - Keep source spans, graph revision, relation type, extractor, and confidence
59
64
  attached to findings.
60
65
  - Treat static reachability and audit output as candidates, not runtime proof.
66
+ `coverage_map` is an ingest. Quality builds the LCOV file.
61
67
  - Preserve exact transport identity; do not merge Kafka, AMQP/RabbitMQ, NATS,
62
68
  SNS/SQS, JMS, GraphQL, and gRPC evidence because operation names match.
63
69
  - The core is local, offline, and read-only. Use `weavatrix-refactor` only for
@@ -44,7 +44,7 @@ cannot silently switch to another repository. Pass an explicit
44
44
  - [`find_duplicates`](tools/find_duplicates.md) — Deterministic Type-1/2/3 clone families.
45
45
  - [`find_dead_code`](tools/find_dead_code.md) — Conservative unreferenced-symbol review queue.
46
46
  - [`run_audit`](tools/run_audit.md) — Repository structure and evidence completeness audit.
47
- - [`coverage_map`](tools/coverage_map.md) — Measured coverage discovery or explicit static reachability.
47
+ - [`coverage_map`](tools/coverage_map.md) — Ingest a report Quality already built. Does not run tests. Missing report is unmeasured, not 0%.
48
48
  - [`hot_path_review`](tools/hot_path_review.md) — Rank functions by static complexity times resolved call fan-in.
49
49
  - [`perf_attribution`](tools/perf_attribution.md) — Correlate a measurement series with the declarations that changed between the revisions that produced it.
50
50
  - [`get_architecture_contract`](tools/get_architecture_contract.md) — Read or preview the local target-architecture contract.
@@ -112,7 +112,7 @@ engine `weavatrix-rust` 2.14.3.
112
112
 
113
113
  Local ABI JSON, supplied solc/Foundry artifacts, and static viem/wagmi
114
114
  sources only. Not a compiler, RPC client, or wallet. Requires engine
115
- `weavatrix-rust` 2.16.1.
115
+ `weavatrix-rust` 2.16.3.
116
116
 
117
117
  - [`web3_inventory`](tools/web3_inventory.md) — List ABIs, artifacts, and static consumers.
118
118
  - [`web3_trace`](tools/web3_trace.md) — Walk proven ABI, artifact, and consumer bindings.
@@ -1,29 +1,69 @@
1
1
  # `coverage_map`
2
2
 
3
- Measured coverage discovery or explicit static reachability.
3
+ Ingest a measured coverage report and hang it on graph nodes. This is not a
4
+ test runner.
4
5
 
5
- ## When to use
6
+ ## Do not get lost
6
7
 
7
- Attach measured coverage reports to graph nodes and keep static reachability separately labeled.
8
+ | Product | Job |
9
+ | --- | --- |
10
+ | Weavatrix Quality (`quality_run` / `wvq run`) | **Build** the report with the project's own frozen runner and write `.weavatrix/coverage/lcov.info`. |
11
+ | Weavatrix `coverage_map` | **Ingest** a report that already exists. Never spawn `cargo test`, Vitest, Jest, Bun, Go, or Playwright. |
8
12
 
9
- A missing measured report must not be described as clean coverage.
13
+ Call Quality first when you need measured numbers. Then call `coverage_map`.
14
+ Calling `coverage_map` alone on a repository that has no report is a successful
15
+ empty ingest: `measured_coverage.present = false`, plus separately labeled
16
+ static reachability. That is not 0% and not 100%.
10
17
 
11
- ## Inputs
18
+ Cortex Loom "coverage certificates" are packet facts. They are not line
19
+ coverage and they do not feed this tool.
12
20
 
13
- - `output_format` ("text" | "json" | "structured", default "json") — text returns the concise text block only; json returns structured output and mirrors it into text for clients that read only content; structured drops that mirror, which is the larger copy, and is safe only where the client reads structuredContent.
14
- - `path` (string).
15
- - `top_n` (integer, min 0).
21
+ ## Search paths (first file wins)
16
22
 
17
- ## Minimal call
23
+ 1. `lcov.info`
24
+ 2. `coverage/lcov.info`
25
+ 3. `.weavatrix/coverage/lcov.info` — the path Quality publishes
26
+ 4. `tarpaulin-report.json`
27
+ 5. `target/tarpaulin/tarpaulin-report.json`
28
+ 6. `target/llvm-cov/coverage.json`
29
+ 7. `coverage/coverage-final.json`
18
30
 
19
- ```json
20
- {
21
- "name": "coverage_map",
22
- "arguments": {
23
- "output_format": "text"
24
- }
25
- }
26
- ```
31
+ ## Arguments
27
32
 
28
- Use `output_format:"text"` for compact agent interaction. The live MCP
29
- `tools/list` schema remains authoritative for this installed version.
33
+ - `path` — substring filter on report file paths
34
+ - `top_n` — cap the returned file list
35
+
36
+ ## How to read the reply
37
+
38
+ - `measured_coverage.present = true` — a report was parsed. `report` is the
39
+ repository-relative path. `source` states that Weavatrix did not execute
40
+ tests.
41
+ - `measured_coverage.present = false` — none of the search paths existed.
42
+ `files` is empty. `static_reachability` may still list likely tests. The
43
+ `warning` field repeats that this is not measured coverage.
44
+ - `status: COMPLETE` with `present = false` is not a green coverage gate.
45
+
46
+ ## Quality builds the report
47
+
48
+ Weavatrix Quality does not invent a second test stack. Discovery uses what
49
+ the repository already has:
50
+
51
+ - Rust: `cargo llvm-cov` when that Cargo subcommand exists (skipped on
52
+ `windows-gnu`, which lacks `profiler_builtins`), else `cargo tarpaulin`,
53
+ else plain `cargo test` (no measured report).
54
+ - JavaScript/TypeScript: Vitest with an already-declared coverage provider,
55
+ else Jest `--coverage`, else Bun `--coverage`. Playwright is used only
56
+ when no other JS runner owns the package.
57
+ - Go: the registered `go-test` coverprofile is normalized and then published
58
+ as LCOV on the Weavatrix search path.
59
+
60
+ Policy bindings may still say `cargo-test`. Discovery may upgrade the spawn
61
+ to `cargo-llvm-cov` or `cargo-tarpaulin`. Mutation stays on `cargo-test` so
62
+ each mutant is not measured as if it were a coverage run.
63
+
64
+ ## Agent sequence
65
+
66
+ 1. `quality_run` (or `wvq run`) on the same repository, **or** place one of
67
+ the files above yourself.
68
+ 2. `coverage_map` (optionally `path` / `top_n`).
69
+ 3. Treat `present = false` as "unmeasured", not as "uncovered" or "safe".