@ecoma-io/archkeep 0.14.0 → 0.16.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.
Files changed (68) hide show
  1. package/README.md +11 -5
  2. package/cli.mjs +571 -61
  3. package/commands.mjs +57 -0
  4. package/lsp.mjs +15 -2
  5. package/package.json +8 -2
  6. package/src/analysis/analyze.mjs +15 -0
  7. package/src/analysis/contract.md +36 -18
  8. package/src/analysis/csharp.mjs +485 -0
  9. package/src/analysis/dotnet/csproj.mjs +380 -0
  10. package/src/analysis/dotnet/mask.mjs +178 -0
  11. package/src/analysis/dotnet/namespaces.mjs +172 -0
  12. package/src/analysis/dotnet/resolve.mjs +89 -0
  13. package/src/analysis/go.mjs +289 -5
  14. package/src/analysis/java.mjs +329 -0
  15. package/src/analysis/jvm/gradle.mjs +545 -0
  16. package/src/analysis/jvm/mask.mjs +170 -0
  17. package/src/analysis/jvm/maven.mjs +612 -0
  18. package/src/analysis/jvm/packages.mjs +209 -0
  19. package/src/analysis/jvm/resolve.mjs +139 -0
  20. package/src/analysis/kotlin.mjs +210 -0
  21. package/src/analysis/manifest-util.mjs +30 -0
  22. package/src/analysis/python.mjs +3 -2
  23. package/src/analysis/registry.mjs +11 -0
  24. package/src/analysis/rust.mjs +171 -17
  25. package/src/analysis/source-util.mjs +155 -6
  26. package/src/analysis/typescript.mjs +11 -3
  27. package/src/commands/README.md +52 -1
  28. package/src/commands/change-intent.mjs +461 -0
  29. package/src/commands/change.mjs +612 -0
  30. package/src/commands/check.mjs +2 -1
  31. package/src/commands/context.mjs +124 -16
  32. package/src/commands/custom-rules.mjs +286 -2
  33. package/src/commands/delta-classify.mjs +195 -33
  34. package/src/commands/delta-snapshot.mjs +156 -1
  35. package/src/commands/delta.mjs +142 -17
  36. package/src/commands/diff.mjs +41 -13
  37. package/src/commands/evolution.mjs +473 -0
  38. package/src/commands/history.mjs +130 -103
  39. package/src/commands/policy.mjs +57 -0
  40. package/src/commands/provenance.mjs +7 -44
  41. package/src/commands/rules.mjs +775 -0
  42. package/src/commands/trajectory.mjs +437 -0
  43. package/src/governance/profile-registry.mjs +0 -1
  44. package/src/graph/create-dependencies.mjs +138 -15
  45. package/src/lsp/diagnose.mjs +1 -1
  46. package/src/lsp/server.mjs +97 -1
  47. package/src/lsp/workspace-index.mjs +106 -15
  48. package/src/options.mjs +30 -7
  49. package/src/path-util.mjs +40 -0
  50. package/src/process.mjs +10 -1
  51. package/src/providers/moon.mjs +287 -36
  52. package/src/providers/native/differential.fixtures.mjs +32 -6
  53. package/src/providers/native/discover.mjs +83 -4
  54. package/src/providers/native/graph.mjs +58 -0
  55. package/src/providers/native/model.mjs +59 -1
  56. package/src/report/change-text.mjs +148 -0
  57. package/src/report/delta-text.mjs +82 -1
  58. package/src/report/evolution-text.mjs +83 -0
  59. package/src/report/history-text.mjs +4 -114
  60. package/src/report/sarif.mjs +255 -0
  61. package/src/report/snapshot-text.mjs +123 -0
  62. package/src/report/trajectory-text.mjs +143 -0
  63. package/src/rules/index.mjs +21 -6
  64. package/src/rules/reachability.mjs +2 -0
  65. package/src/rules/tags.mjs +7 -5
  66. package/src/rules/topology.mjs +5 -3
  67. package/src/tsconfig-paths.mjs +3 -2
  68. package/src/workspace.mjs +115 -23
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  **Architecture governance for polyglot repositories** — a deterministic
4
4
  authority that keeps the architecture your team declared aligned with the code
5
5
  your team keeps changing. Dependency graphs and module boundaries for Go, Rust,
6
- Python, TypeScript, JavaScript and Vue, with Nx and Moon as first-class
6
+ Python, TypeScript, JavaScript, Vue, Java, Kotlin and C#, with Nx and Moon as first-class
7
7
  integrations. Coding agents read the same verdicts, machine-readably, through
8
8
  the `arch-*` skills. The system boundary — what Archkeep is and what it is not —
9
9
  is owned by [architecture-authority.md](https://github.com/ecoma-io/archkeep/blob/main/docs/doctrine/architecture-authority.md).
@@ -182,7 +182,7 @@ a file it cannot edit ([overview.md](https://github.com/ecoma-io/archkeep/blob/m
182
182
 
183
183
  ## Support
184
184
 
185
- - **Languages** — Go, Rust, Python, TypeScript and JavaScript, and Vue. Analysis
185
+ - **Languages** — Go, Rust, Python, TypeScript and JavaScript, Vue, Java, Kotlin and C#. Analysis
186
186
  from source, never a build: nothing shells out to `go`, `cargo`, `uv` or `tsc`
187
187
  ([languages.md](https://github.com/ecoma-io/archkeep/blob/main/docs/reference/languages.md)).
188
188
  - **Workspaces** — any repository: Nx registers the plugin in `nx.json` and
@@ -191,7 +191,10 @@ a file it cannot edit ([overview.md](https://github.com/ecoma-io/archkeep/blob/m
191
191
  ([nx.md](https://github.com/ecoma-io/archkeep/blob/main/docs/integrations/nx.md) ·
192
192
  [moon.md](https://github.com/ecoma-io/archkeep/blob/main/docs/integrations/moon.md)).
193
193
  - **Agents** — Claude Code, Codex and opencode run the `arch-*` skills, which
194
- are host-independent ([supported-hosts.md](https://github.com/ecoma-io/archkeep/blob/main/docs/skills/supported-hosts.md)).
194
+ are host-independent ([supported-hosts.md](https://github.com/ecoma-io/archkeep/blob/main/docs/skills/supported-hosts.md));
195
+ agents whose host speaks MCP use `@ecoma-io/archkeep-mcp`, which runs this
196
+ package's own command layer in-process through the `./commands` subpath
197
+ ([mcp.md](https://github.com/ecoma-io/archkeep/blob/main/docs/integrations/mcp.md)).
195
198
 
196
199
  ## Install and quick start
197
200
 
@@ -219,8 +222,11 @@ Exit codes: 0 clean — and every selected file was analyzed; 1 findings;
219
222
 
220
223
  Ten minutes end to end, most of it spent deciding what your tags mean:
221
224
  [**Getting started →**](https://github.com/ecoma-io/archkeep/blob/main/docs/getting-started/installation.md). `graph`, `diff`,
222
- `history`, `drift`, `impact`, `explain`, `context` and the rest of the
223
- eighteen-command surface are in the [CLI reference](https://github.com/ecoma-io/archkeep/blob/main/docs/reference/cli.md).
225
+ Ten minutes end to end, most of it spent deciding what your tags mean:
226
+ [**Getting started →**](https://github.com/ecoma-io/archkeep/blob/main/docs/getting-started/installation.md). `graph`, `diff`,
227
+ `history`, `trajectory`, `evolution`, `drift`, `impact`, `explain`,
228
+ `context` and the rest of the 22-command surface are in the
229
+ [CLI reference](https://github.com/ecoma-io/archkeep/blob/main/docs/reference/cli.md).
224
230
 
225
231
  ## Documentation map
226
232