rapidkit 0.38.0 → 0.40.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.
- package/README.md +96 -31
- package/contracts/agent-customization-pack.v1.json +159 -0
- package/contracts/extension-cli-compatibility.v1.json +10 -0
- package/contracts/runtime-command-surface.v1.json +33 -0
- package/contracts/workspace-intelligence/workspace-dependency-graph.v1.json +92 -0
- package/contracts/workspace-intelligence/workspace-impact.v1.json +32 -2
- package/contracts/workspace-intelligence/workspace-model.v1.json +5 -0
- package/contracts/workspace-intelligence/workspace-verify.v1.json +103 -1
- package/dist/analyze-RHQM4AB2.js +1 -0
- package/dist/autopilot-release-S32GYUAQ.js +1 -0
- package/dist/chunk-3YLMCP3V.js +1 -0
- package/dist/chunk-4FJQWL7P.js +4 -0
- package/dist/chunk-4Q2ZZKGB.js +1 -0
- package/dist/chunk-6G2KSHP6.js +2 -0
- package/dist/{chunk-PPQYTYQG.js → chunk-6KD5F6LX.js} +4 -4
- package/dist/{chunk-NKNMGWAZ.js → chunk-CY2WXWYQ.js} +1 -1
- package/dist/{chunk-TVIOAZ6E.js → chunk-ERCD6NFF.js} +15 -15
- package/dist/chunk-G76C74EV.js +1 -0
- package/dist/chunk-GOM3RFB3.js +2 -0
- package/dist/chunk-HTYMXMQM.js +1 -0
- package/dist/chunk-KYH364KQ.js +1 -0
- package/dist/chunk-NAMOYGLS.js +2 -0
- package/dist/chunk-OWNGSAO3.js +2 -0
- package/dist/chunk-PYCJWW4B.js +1 -0
- package/dist/chunk-QPEBI6AB.js +2 -0
- package/dist/{chunk-5NBYSXOZ.js → chunk-RXWM5DSC.js} +2 -2
- package/dist/chunk-S5KTATOU.js +1 -0
- package/dist/chunk-TYZPPUBH.js +1 -0
- package/dist/chunk-VQMZC5TC.js +9 -0
- package/dist/{chunk-JBDQADHY.js → chunk-WHCON2VN.js} +11 -11
- package/dist/chunk-X7PWDIQW.js +1 -0
- package/dist/{chunk-7XW2I6MP.js → chunk-ZWKLRZE5.js} +2 -2
- package/dist/{create-Y3XJOKL5.js → create-XVDDQA42.js} +1 -1
- package/dist/{demo-kit-3VTLJBP7.js → demo-kit-RWGOEDW4.js} +1 -1
- package/dist/{doctor-QC662YLH.js → doctor-UOLOGJ2Z.js} +1 -1
- package/dist/{dotnet-webapi-clean-FX533F5U.js → dotnet-webapi-clean-RTBRPDPL.js} +1 -1
- package/dist/{gofiber-standard-35CJZ7S3.js → gofiber-standard-UGIRKPKL.js} +1 -1
- package/dist/{gogin-standard-SAX6C4ZK.js → gogin-standard-HJ7SPFNT.js} +1 -1
- package/dist/index.d.ts +32 -1
- package/dist/index.js +154 -154
- package/dist/pipeline-M52LR5FJ.js +5 -0
- package/dist/{springboot-standard-SFMSLTX4.js → springboot-standard-IWJSVDLZ.js} +1 -1
- package/dist/{workspace-WBKFXH4Z.js → workspace-L4ITCKMM.js} +1 -1
- package/dist/workspace-agent-sync-G7JU77IK.js +25 -0
- package/dist/{workspace-context-V4UGIHSC.js → workspace-context-NMMQMHNU.js} +1 -1
- package/dist/{workspace-foundation-T45HAWKL.js → workspace-foundation-HNIRAIBF.js} +1 -1
- package/dist/workspace-graph-ICB7OVAZ.js +3 -0
- package/dist/workspace-history-LHUTLE3S.js +1 -0
- package/dist/{workspace-intelligence-MGL3Z25K.js → workspace-intelligence-64IWAYHS.js} +1 -1
- package/dist/workspace-model-SDHH5RBC.js +1 -0
- package/dist/workspace-run-A26PEGQT.js +1 -0
- package/dist/workspace-verify-6Q6MGRG6.js +1 -0
- package/dist/workspace-watch-JDXVGW4H.js +1 -0
- package/docs/ci-workflows.md +21 -18
- package/docs/commands-reference.md +1 -1
- package/docs/contracts/ARTIFACT_CATALOG.md +194 -32
- package/docs/contracts/CLI_LOG_EVENT_STREAM.md +123 -0
- package/docs/contracts/README.md +9 -7
- package/docs/examples/ci-agent-grounding.yml +5 -2
- package/package.json +11 -6
- package/scripts/check-agent-customization-drift.mjs +75 -0
- package/dist/analyze-6RFG7C7Z.js +0 -1
- package/dist/autopilot-release-SBPGNGAB.js +0 -1
- package/dist/chunk-2ED6SPXP.js +0 -1
- package/dist/chunk-3R7UJAX5.js +0 -1
- package/dist/chunk-6E5TBB2C.js +0 -2
- package/dist/chunk-6P5DCHBQ.js +0 -4
- package/dist/chunk-ABPDGFVD.js +0 -2
- package/dist/chunk-B2KOIORF.js +0 -1
- package/dist/chunk-C7WILE56.js +0 -1
- package/dist/chunk-HEG6DIGW.js +0 -2
- package/dist/chunk-IW3KLQXE.js +0 -2
- package/dist/chunk-RELR4O5E.js +0 -2
- package/dist/chunk-T5LN7EO5.js +0 -9
- package/dist/chunk-XESEBTPE.js +0 -1
- package/dist/pipeline-C4UCLETO.js +0 -5
- package/dist/workspace-agent-sync-3FFFJYKF.js +0 -17
- package/dist/workspace-model-IKMGY2BX.js +0 -1
- package/dist/workspace-run-HOR56FON.js +0 -1
- package/dist/workspace-verify-A3J6D7T2.js +0 -1
package/README.md
CHANGED
|
@@ -148,6 +148,7 @@ For the visual experience, install the [Workspai VS Code extension](https://mark
|
|
|
148
148
|
- [Typical workflows](#typical-workflows)
|
|
149
149
|
- [Mental model](#mental-model)
|
|
150
150
|
- [Workspace Intelligence Commands](#workspace-intelligence-commands)
|
|
151
|
+
- [Agent Customization Pack](#agent-customization-pack)
|
|
151
152
|
- [Requirements](#requirements)
|
|
152
153
|
- [Install](#install)
|
|
153
154
|
- [Project workflows](#project-workflows)
|
|
@@ -182,7 +183,8 @@ npx rapidkit workspace model --json
|
|
|
182
183
|
|
|
183
184
|
```bash
|
|
184
185
|
npx rapidkit workspace context --for-agent --json --write
|
|
185
|
-
npx rapidkit workspace agent-sync --write --refresh-context
|
|
186
|
+
npx rapidkit workspace agent-sync --write --refresh-context --preset enterprise
|
|
187
|
+
npx rapidkit workspace agent-sync --write --refresh-context --preset enterprise --experimental-hooks
|
|
186
188
|
```
|
|
187
189
|
|
|
188
190
|
### Release verification
|
|
@@ -237,52 +239,115 @@ Every tool gets the same answers: what projects exist, what stack they use, whic
|
|
|
237
239
|
|
|
238
240
|
Workspace Intelligence provides a shared understanding of projects, dependencies, operational context, and release readiness for developers, CI pipelines, and AI agents.
|
|
239
241
|
|
|
240
|
-
| Command
|
|
241
|
-
|
|
|
242
|
-
| `workspace model --json`
|
|
243
|
-
| `workspace context --for-agent --json --write`
|
|
244
|
-
| `workspace agent-sync --write`
|
|
245
|
-
| `workspace snapshot --json`
|
|
246
|
-
| `workspace diff --from <file\|git[:ref]> --json`
|
|
247
|
-
| `workspace impact --from <file> --json`
|
|
248
|
-
| `workspace verify [--strict] --json`
|
|
242
|
+
| Command | Purpose |
|
|
243
|
+
| ------------------------------------------------- | ------------------------------------------------------------------------------------ |
|
|
244
|
+
| `workspace model [--cache\|--incremental] --json` | Canonical workspace model (graph-aware, incremental rebuilds) |
|
|
245
|
+
| `workspace context --for-agent --json --write` | Agent-ready context pack + auto agent grounding sync |
|
|
246
|
+
| `workspace agent-sync --write` | Agent Customization Pack (AGENTS.md, Copilot, Cursor, Claude, INDEX, skills, agents) |
|
|
247
|
+
| `workspace snapshot --json` | Persist model snapshot |
|
|
248
|
+
| `workspace diff --from <file\|git[:ref]> --json` | Diff against snapshot or git |
|
|
249
|
+
| `workspace impact --from <file> --json` | Graph-aware transitive blast-radius evidence |
|
|
250
|
+
| `workspace verify [--strict] --json` | Definitive verification gate (subgraph + freshness + policy) |
|
|
251
|
+
| `workspace graph <emit\|explain\|dot\|mermaid>` | Inspect and visualize the dependency graph |
|
|
252
|
+
| `workspace watch [--json] [--once]` | Daemon mode: keep model + graph in memory, stream change events |
|
|
249
253
|
|
|
250
254
|
JSON schemas: `contracts/workspace-intelligence/`. Details: [commands-reference.md](docs/commands-reference.md).
|
|
251
255
|
|
|
252
|
-
###
|
|
253
|
-
|
|
254
|
-
|
|
256
|
+
### Graph-aware intelligence engine
|
|
257
|
+
|
|
258
|
+
The workspace model carries a deterministic, first-class **dependency graph** that
|
|
259
|
+
`impact`, `verify`, and `graph` all reason over — so the same evidence drives blast
|
|
260
|
+
radius, gating, and visualization:
|
|
261
|
+
|
|
262
|
+
- **Transitive blast radius** — `workspace impact` reports each affected project's
|
|
263
|
+
`distance`, `path`, and `via` edge back to the change, plus centrality-weighted
|
|
264
|
+
**critical-path hotspots**.
|
|
265
|
+
- **Whole-subgraph gate** — `workspace verify` gates the changed projects **and** their
|
|
266
|
+
transitive dependents, surfaces graph **integrity** issues (cycles, dangling edges,
|
|
267
|
+
orphans), and emits a structured `gate` (`passed`/`mode`/`exitCode`/`reasons`).
|
|
268
|
+
- **Transitive freshness** — a deterministic `fresh | stale | unknown` verdict chained
|
|
269
|
+
through the graph: a dependency change makes every dependent stale, not just by
|
|
270
|
+
timestamp.
|
|
271
|
+
- **Policy violations** — model/contract violations are surfaced as structured
|
|
272
|
+
`policyViolations[]` (not just an exit code) so IDEs and CI can render blockers.
|
|
273
|
+
- **Health history** — every verify run appends to a bounded
|
|
274
|
+
`.rapidkit/reports/workspace-intelligence-history.json` ring buffer for trends.
|
|
275
|
+
- **Fast rebuilds** — `workspace model --cache` / `--incremental` reuse unchanged
|
|
276
|
+
project models and re-infer only incident edges, keyed by a structural `inputsHash`.
|
|
277
|
+
- **Watch / daemon** — `workspace watch` keeps the model + graph in memory and streams
|
|
278
|
+
deterministic `workspace-watch-event.v1` change events (changed projects, graph edge
|
|
279
|
+
deltas, structural hash) via fast incremental rebuilds.
|
|
280
|
+
|
|
281
|
+
### Agent Customization Pack
|
|
282
|
+
|
|
283
|
+
RapidKit can generate a versioned **Agent Customization Pack** so AI tools do
|
|
284
|
+
not start from an ungrounded repository scan. They start from the same workspace
|
|
285
|
+
truth developers and CI use: reports, commands, contracts, blockers, scope, and
|
|
286
|
+
verification evidence.
|
|
287
|
+
|
|
288
|
+
This is CLI-only and does not require the Workspai extension:
|
|
255
289
|
|
|
256
290
|
```bash
|
|
257
|
-
# Full
|
|
258
|
-
|
|
291
|
+
# Full enterprise pack:
|
|
292
|
+
# context pack + INDEX + AGENTS.md + Copilot/Cursor/Claude/Codex surfaces + MCP-ready design
|
|
293
|
+
npx rapidkit workspace agent-sync --write --refresh-context --preset enterprise
|
|
294
|
+
|
|
295
|
+
# Optional advisory VS Code agent hooks (disabled by default in the generated file)
|
|
296
|
+
npx rapidkit workspace agent-sync --write --refresh-context --preset enterprise --experimental-hooks
|
|
259
297
|
|
|
260
298
|
# Context pack write also syncs grounding by default
|
|
261
299
|
npx rapidkit workspace context --for-agent --json --write
|
|
262
300
|
|
|
263
301
|
# CI strict gate (fail if required reports missing/stale)
|
|
264
302
|
npx rapidkit workspace agent-sync --write --strict --json
|
|
303
|
+
|
|
304
|
+
# CI drift gate after sync
|
|
305
|
+
npm run check:agent-customization-drift -- --workspace <workspace-root>
|
|
265
306
|
```
|
|
266
307
|
|
|
267
|
-
| Artifact / file
|
|
268
|
-
|
|
|
269
|
-
| `.rapidkit/reports/
|
|
270
|
-
| `.rapidkit/reports/
|
|
271
|
-
| `.rapidkit/
|
|
272
|
-
|
|
|
273
|
-
| `.
|
|
274
|
-
|
|
|
275
|
-
| `.github/
|
|
276
|
-
| `.github/
|
|
277
|
-
| `.
|
|
278
|
-
|
|
|
279
|
-
| `.
|
|
280
|
-
|
|
281
|
-
|
|
308
|
+
| Artifact / file | Purpose |
|
|
309
|
+
| ----------------------------------------------------------------------- | -------------------------------------------------------- |
|
|
310
|
+
| `.rapidkit/reports/agent-customization-pack.json` | Versioned output inventory, target matrix, drift state |
|
|
311
|
+
| `.rapidkit/reports/rapidkit-mcp-design.json` | Read-mostly MCP-ready tool design manifest |
|
|
312
|
+
| `.rapidkit/reports/INDEX.json` | Read order, blockers, report timestamps |
|
|
313
|
+
| `.rapidkit/reports/workspace-context-agent.json` | Canonical agent context pack |
|
|
314
|
+
| `.rapidkit/AGENT-GROUNDING.md` | Tool-agnostic grounding doc |
|
|
315
|
+
| `AGENTS.md` | Open standard for all agents (managed RapidKit section) |
|
|
316
|
+
| `.github/copilot-instructions.md` | GitHub Copilot / VS Code Chat always-on rules |
|
|
317
|
+
| `.github/instructions/rapidkit-workspace.instructions.md` | Copilot workspace scope and command discipline |
|
|
318
|
+
| `.github/instructions/rapidkit-evidence.instructions.md` | Copilot scoped rules for `.rapidkit/**` |
|
|
319
|
+
| `.github/prompts/rapidkit-diagnose.prompt.md` | Copilot reusable diagnose prompt |
|
|
320
|
+
| `.github/skills/rapidkit-workspace-intelligence/SKILL.md` | Workspace Intelligence skill workflow |
|
|
321
|
+
| `.github/skills/rapidkit-workspace-intelligence/resources/mcp-tools.md` | Future MCP tool design reference |
|
|
322
|
+
| `.github/agents/workspai-advisor.agent.md` | Read-only workspace advisor agent |
|
|
323
|
+
| `.github/agents/workspai-repair.agent.md` | Blocker repair agent |
|
|
324
|
+
| `.github/agents/workspai-release.agent.md` | Release safety agent |
|
|
325
|
+
| `.github/agents/workspai-project-onboarder.agent.md` | Project onboarding agent |
|
|
326
|
+
| `.cursor/rules/rapidkit-grounding.mdc` | Cursor always-on project rule |
|
|
327
|
+
| `CLAUDE.md` | Claude Code entry (`@AGENTS.md` + managed notes) |
|
|
328
|
+
| `.claude/rules/rapidkit-evidence.md` | Claude Code scoped evidence rules |
|
|
329
|
+
| `.vscode/rapidkit-agent-hooks.json` | Optional advisory VS Code hooks (`--experimental-hooks`) |
|
|
330
|
+
|
|
331
|
+
The pack also publishes a standard answer contract for agent-facing output:
|
|
332
|
+
|
|
333
|
+
```text
|
|
334
|
+
Scope -> Evidence -> Diagnosis -> Fix Plan -> Run -> Verify -> Assumptions
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
That contract is what keeps agent responses operational: every recommendation
|
|
338
|
+
should name the workspace/project scope, cite the evidence it used, explain the
|
|
339
|
+
diagnosis, propose the command or file action, and tell the user how to verify
|
|
340
|
+
the result.
|
|
341
|
+
|
|
342
|
+
Agents cannot be **forced** probabilistically. This stack makes the desired
|
|
343
|
+
behavior explicit, versioned, and easy for IDEs, CI, and Workspai to audit.
|
|
282
344
|
|
|
283
345
|
Skip auto-sync after context write: `--no-agent-sync`. Target specific ecosystems: `--target copilot,cursor,claude`.
|
|
284
346
|
|
|
285
|
-
After `pipeline`, grounding syncs automatically (refresh context + INDEX +
|
|
347
|
+
After `pipeline`, grounding syncs automatically (refresh context + INDEX + agent surfaces). Disable with `--no-agent-sync` or `RAPIDKIT_NO_AGENT_SYNC=1`.
|
|
348
|
+
|
|
349
|
+
Contract: `contracts/agent-customization-pack.v1.json`. Artifact map:
|
|
350
|
+
[docs/contracts/ARTIFACT_CATALOG.md](docs/contracts/ARTIFACT_CATALOG.md).
|
|
286
351
|
|
|
287
352
|
CI template: [docs/examples/ci-agent-grounding.yml](docs/examples/ci-agent-grounding.yml).
|
|
288
353
|
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "rapidkit-agent-customization-pack.v1",
|
|
3
|
+
"presets": {
|
|
4
|
+
"minimal": {
|
|
5
|
+
"meaning": "Generate the portable grounding index, AGENTS.md, and provider-specific lightweight instructions.",
|
|
6
|
+
"requiredOutputs": [
|
|
7
|
+
".rapidkit/reports/INDEX.json",
|
|
8
|
+
".rapidkit/reports/agent-customization-pack.json",
|
|
9
|
+
"AGENTS.md"
|
|
10
|
+
]
|
|
11
|
+
},
|
|
12
|
+
"enterprise": {
|
|
13
|
+
"meaning": "Generate the full VS Code-native pack: instructions, prompts, skills, custom agents, and validation metadata.",
|
|
14
|
+
"requiredOutputs": [
|
|
15
|
+
".rapidkit/reports/INDEX.json",
|
|
16
|
+
".rapidkit/reports/agent-customization-pack.json",
|
|
17
|
+
"AGENTS.md",
|
|
18
|
+
".github/instructions/rapidkit-workspace.instructions.md",
|
|
19
|
+
".github/prompts/rapidkit-diagnose.prompt.md",
|
|
20
|
+
".github/skills/rapidkit-workspace-intelligence/SKILL.md",
|
|
21
|
+
".github/agents/workspai-advisor.agent.md",
|
|
22
|
+
".rapidkit/reports/rapidkit-mcp-design.json"
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"targets": {
|
|
27
|
+
"all": {
|
|
28
|
+
"meaning": "Generate every supported customization surface.",
|
|
29
|
+
"outputFamilies": [
|
|
30
|
+
"portable",
|
|
31
|
+
"vscode",
|
|
32
|
+
"copilot",
|
|
33
|
+
"cursor",
|
|
34
|
+
"claude"
|
|
35
|
+
]
|
|
36
|
+
},
|
|
37
|
+
"vscode": {
|
|
38
|
+
"meaning": "Generate VS Code-native customizations for Copilot Chat and agent workflows.",
|
|
39
|
+
"outputFamilies": [
|
|
40
|
+
"instructions",
|
|
41
|
+
"prompts",
|
|
42
|
+
"skills",
|
|
43
|
+
"agents",
|
|
44
|
+
"hooks"
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
"agents": {
|
|
48
|
+
"meaning": "Generate portable AGENTS.md grounding for any agent.",
|
|
49
|
+
"outputFamilies": [
|
|
50
|
+
"portable"
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
"copilot": {
|
|
54
|
+
"meaning": "Generate GitHub Copilot instructions, prompts, and skills.",
|
|
55
|
+
"outputFamilies": [
|
|
56
|
+
"instructions",
|
|
57
|
+
"prompts",
|
|
58
|
+
"skills"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
"cursor": {
|
|
62
|
+
"meaning": "Generate Cursor rules.",
|
|
63
|
+
"outputFamilies": [
|
|
64
|
+
"rules"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
"claude": {
|
|
68
|
+
"meaning": "Generate Claude Code grounding files.",
|
|
69
|
+
"outputFamilies": [
|
|
70
|
+
"rules",
|
|
71
|
+
"portable"
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
"codex": {
|
|
75
|
+
"meaning": "Use AGENTS.md and the report index as the Codex grounding layer.",
|
|
76
|
+
"outputFamilies": [
|
|
77
|
+
"portable"
|
|
78
|
+
]
|
|
79
|
+
},
|
|
80
|
+
"orca": {
|
|
81
|
+
"meaning": "Use AGENTS.md and the report index as the Orca/Grok grounding layer.",
|
|
82
|
+
"outputFamilies": [
|
|
83
|
+
"portable"
|
|
84
|
+
]
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
"standardAnswerContract": [
|
|
88
|
+
"Scope",
|
|
89
|
+
"Evidence",
|
|
90
|
+
"Diagnosis",
|
|
91
|
+
"Fix Plan",
|
|
92
|
+
"Run",
|
|
93
|
+
"Verify",
|
|
94
|
+
"Assumptions"
|
|
95
|
+
],
|
|
96
|
+
"requiredReports": [
|
|
97
|
+
{
|
|
98
|
+
"path": ".rapidkit/reports/workspace-context-agent.json",
|
|
99
|
+
"label": "Agent context pack",
|
|
100
|
+
"required": true
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"path": ".rapidkit/reports/workspace-model.json",
|
|
104
|
+
"label": "Workspace model graph",
|
|
105
|
+
"required": false
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"path": ".rapidkit/reports/doctor-last-run.json",
|
|
109
|
+
"label": "Workspace doctor",
|
|
110
|
+
"required": false
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"path": ".rapidkit/reports/analyze-last-run.json",
|
|
114
|
+
"label": "Workspace analyze",
|
|
115
|
+
"required": false
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"path": ".rapidkit/reports/pipeline-last-run.json",
|
|
119
|
+
"label": "Governance pipeline",
|
|
120
|
+
"required": false
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"path": ".rapidkit/reports/release-readiness-last-run.json",
|
|
124
|
+
"label": "Release readiness",
|
|
125
|
+
"required": false
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"path": ".rapidkit/reports/workspace-impact-last-run.json",
|
|
129
|
+
"label": "Workspace impact",
|
|
130
|
+
"required": false
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"path": ".rapidkit/reports/workspace-verify-last-run.json",
|
|
134
|
+
"label": "Workspace verify",
|
|
135
|
+
"required": false
|
|
136
|
+
}
|
|
137
|
+
],
|
|
138
|
+
"strictRules": [
|
|
139
|
+
"Required reports must exist.",
|
|
140
|
+
"Generated report paths must stay inside the workspace root.",
|
|
141
|
+
"Generated customization text must be English-only.",
|
|
142
|
+
"Agent answers must not claim pass, ready, or healthy without cited evidence.",
|
|
143
|
+
"Commands must distinguish display guidance from execution requests.",
|
|
144
|
+
"Agent hook files must be advisory and disabled by default unless the user explicitly enables them.",
|
|
145
|
+
"MCP design artifacts must stay read-mostly until write tools have explicit approval boundaries."
|
|
146
|
+
],
|
|
147
|
+
"outputKinds": [
|
|
148
|
+
"report",
|
|
149
|
+
"grounding",
|
|
150
|
+
"instruction",
|
|
151
|
+
"prompt",
|
|
152
|
+
"skill",
|
|
153
|
+
"skill-resource",
|
|
154
|
+
"agent",
|
|
155
|
+
"rule",
|
|
156
|
+
"hook",
|
|
157
|
+
"mcp-design"
|
|
158
|
+
]
|
|
159
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "rapidkit-extension-cli-compatibility.v1",
|
|
3
|
+
"cli": "rapidkit-npm",
|
|
4
|
+
"minimumVerifiedCliVersion": "0.40.0",
|
|
5
|
+
"publishedContractSchemas": {
|
|
6
|
+
"runtimeCommandSurface": "rapidkit-runtime-command-surface-v1",
|
|
7
|
+
"cliLogEvent": "cli-log-event-v1",
|
|
8
|
+
"freshnessMetadata": "rapidkit-freshness-metadata-v1"
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -39,6 +39,39 @@
|
|
|
39
39
|
"coreProjectCommands": [
|
|
40
40
|
"docs"
|
|
41
41
|
],
|
|
42
|
+
"workspaceSubcommands": [
|
|
43
|
+
"list",
|
|
44
|
+
"sync",
|
|
45
|
+
"registry",
|
|
46
|
+
"foundation",
|
|
47
|
+
"model",
|
|
48
|
+
"snapshot",
|
|
49
|
+
"diff",
|
|
50
|
+
"impact",
|
|
51
|
+
"verify",
|
|
52
|
+
"graph",
|
|
53
|
+
"watch",
|
|
54
|
+
"context",
|
|
55
|
+
"agent-sync",
|
|
56
|
+
"policy",
|
|
57
|
+
"contract",
|
|
58
|
+
"share",
|
|
59
|
+
"export",
|
|
60
|
+
"archive",
|
|
61
|
+
"hydrate",
|
|
62
|
+
"import",
|
|
63
|
+
"run",
|
|
64
|
+
"init"
|
|
65
|
+
],
|
|
66
|
+
"workspaceIntelligenceSubcommands": [
|
|
67
|
+
"model",
|
|
68
|
+
"snapshot",
|
|
69
|
+
"diff",
|
|
70
|
+
"impact",
|
|
71
|
+
"verify",
|
|
72
|
+
"context",
|
|
73
|
+
"agent-sync"
|
|
74
|
+
],
|
|
42
75
|
"moduleSuggestionFrameworks": [
|
|
43
76
|
"fastapi",
|
|
44
77
|
"nestjs"
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://getrapidkit.com/schemas/workspace-dependency-graph.v1.json",
|
|
4
|
+
"title": "RapidKit Workspace Dependency Graph",
|
|
5
|
+
"description": "First-class, versioned dependency graph of inter-project relationships consumed by impact, verify, run --blast-radius, and risk weighting.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["schemaVersion", "generatedAt", "nodes", "edges", "stats"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"schemaVersion": {
|
|
10
|
+
"const": "workspace-dependency-graph.v1"
|
|
11
|
+
},
|
|
12
|
+
"generatedAt": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"format": "date-time"
|
|
15
|
+
},
|
|
16
|
+
"nodes": {
|
|
17
|
+
"type": "array",
|
|
18
|
+
"items": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"required": ["id", "path"],
|
|
21
|
+
"properties": {
|
|
22
|
+
"id": { "type": "string", "minLength": 1 },
|
|
23
|
+
"path": { "type": "string", "minLength": 1 },
|
|
24
|
+
"runtime": { "type": "string" },
|
|
25
|
+
"framework": { "type": "string" },
|
|
26
|
+
"kind": { "type": "string" }
|
|
27
|
+
},
|
|
28
|
+
"additionalProperties": true
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"edges": {
|
|
32
|
+
"type": "array",
|
|
33
|
+
"items": {
|
|
34
|
+
"type": "object",
|
|
35
|
+
"required": ["from", "to", "kind", "source", "confidence", "evidence"],
|
|
36
|
+
"properties": {
|
|
37
|
+
"from": { "type": "string", "minLength": 1 },
|
|
38
|
+
"to": { "type": "string", "minLength": 1 },
|
|
39
|
+
"kind": {
|
|
40
|
+
"enum": [
|
|
41
|
+
"code-import",
|
|
42
|
+
"package-dep",
|
|
43
|
+
"event-pub-sub",
|
|
44
|
+
"service-dependsOn",
|
|
45
|
+
"shared-resource"
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
"source": {
|
|
49
|
+
"enum": ["inferred", "contract", "manual"]
|
|
50
|
+
},
|
|
51
|
+
"confidence": {
|
|
52
|
+
"enum": ["high", "medium", "low"]
|
|
53
|
+
},
|
|
54
|
+
"evidence": {
|
|
55
|
+
"type": "array",
|
|
56
|
+
"items": {
|
|
57
|
+
"type": "object",
|
|
58
|
+
"required": ["file"],
|
|
59
|
+
"properties": {
|
|
60
|
+
"file": { "type": "string", "minLength": 1 },
|
|
61
|
+
"detail": { "type": "string" }
|
|
62
|
+
},
|
|
63
|
+
"additionalProperties": true
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
"additionalProperties": true
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"stats": {
|
|
71
|
+
"type": "object",
|
|
72
|
+
"required": [
|
|
73
|
+
"nodeCount",
|
|
74
|
+
"edgeCount",
|
|
75
|
+
"inferredEdges",
|
|
76
|
+
"contractEdges",
|
|
77
|
+
"manualEdges",
|
|
78
|
+
"hasCycle"
|
|
79
|
+
],
|
|
80
|
+
"properties": {
|
|
81
|
+
"nodeCount": { "type": "integer", "minimum": 0 },
|
|
82
|
+
"edgeCount": { "type": "integer", "minimum": 0 },
|
|
83
|
+
"inferredEdges": { "type": "integer", "minimum": 0 },
|
|
84
|
+
"contractEdges": { "type": "integer", "minimum": 0 },
|
|
85
|
+
"manualEdges": { "type": "integer", "minimum": 0 },
|
|
86
|
+
"hasCycle": { "type": "boolean" }
|
|
87
|
+
},
|
|
88
|
+
"additionalProperties": true
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"additionalProperties": true
|
|
92
|
+
}
|
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
"workspace",
|
|
12
12
|
"summary",
|
|
13
13
|
"affectedProjects",
|
|
14
|
+
"transitiveImpact",
|
|
15
|
+
"criticalPathHotspots",
|
|
14
16
|
"workspaceImpact",
|
|
15
17
|
"verificationPlan",
|
|
16
18
|
"agentBrief",
|
|
@@ -43,7 +45,8 @@
|
|
|
43
45
|
"risk",
|
|
44
46
|
"affectedProjects",
|
|
45
47
|
"workspaceItems",
|
|
46
|
-
"recommendedCommands"
|
|
48
|
+
"recommendedCommands",
|
|
49
|
+
"blastRadius"
|
|
47
50
|
],
|
|
48
51
|
"properties": {
|
|
49
52
|
"changed": { "type": "boolean" },
|
|
@@ -52,11 +55,38 @@
|
|
|
52
55
|
},
|
|
53
56
|
"affectedProjects": { "type": "integer", "minimum": 0 },
|
|
54
57
|
"workspaceItems": { "type": "integer", "minimum": 0 },
|
|
55
|
-
"recommendedCommands": { "type": "integer", "minimum": 0 }
|
|
58
|
+
"recommendedCommands": { "type": "integer", "minimum": 0 },
|
|
59
|
+
"blastRadius": {
|
|
60
|
+
"type": "object",
|
|
61
|
+
"required": ["directlyAffected", "transitivelyAffected", "maxDistance", "graphEdges"],
|
|
62
|
+
"properties": {
|
|
63
|
+
"directlyAffected": { "type": "integer", "minimum": 0 },
|
|
64
|
+
"transitivelyAffected": { "type": "integer", "minimum": 0 },
|
|
65
|
+
"maxDistance": { "type": "integer", "minimum": 0 },
|
|
66
|
+
"graphEdges": { "type": "integer", "minimum": 0 }
|
|
67
|
+
},
|
|
68
|
+
"additionalProperties": false
|
|
69
|
+
}
|
|
56
70
|
},
|
|
57
71
|
"additionalProperties": false
|
|
58
72
|
},
|
|
59
73
|
"affectedProjects": { "type": "array", "items": { "type": "object", "additionalProperties": true } },
|
|
74
|
+
"transitiveImpact": { "type": "array", "items": { "type": "object", "additionalProperties": true } },
|
|
75
|
+
"criticalPathHotspots": {
|
|
76
|
+
"type": "array",
|
|
77
|
+
"items": {
|
|
78
|
+
"type": "object",
|
|
79
|
+
"required": ["project", "fanIn", "fanOut", "reach", "betweenness"],
|
|
80
|
+
"properties": {
|
|
81
|
+
"project": { "type": "string" },
|
|
82
|
+
"fanIn": { "type": "integer", "minimum": 0 },
|
|
83
|
+
"fanOut": { "type": "integer", "minimum": 0 },
|
|
84
|
+
"reach": { "type": "integer", "minimum": 0 },
|
|
85
|
+
"betweenness": { "type": "number", "minimum": 0 }
|
|
86
|
+
},
|
|
87
|
+
"additionalProperties": true
|
|
88
|
+
}
|
|
89
|
+
},
|
|
60
90
|
"workspaceImpact": { "type": "array", "items": { "type": "object", "additionalProperties": true } },
|
|
61
91
|
"verificationPlan": { "type": "array", "items": { "type": "object", "additionalProperties": true } },
|
|
62
92
|
"agentBrief": {
|
|
@@ -41,6 +41,11 @@
|
|
|
41
41
|
"items": { "type": "object", "additionalProperties": true }
|
|
42
42
|
},
|
|
43
43
|
"contracts": { "type": "object", "additionalProperties": true },
|
|
44
|
+
"graph": {
|
|
45
|
+
"type": "object",
|
|
46
|
+
"description": "First-class inferred dependency graph (workspace-dependency-graph.v1). Additive/optional.",
|
|
47
|
+
"additionalProperties": true
|
|
48
|
+
},
|
|
44
49
|
"evidence": { "type": "object", "additionalProperties": true },
|
|
45
50
|
"discovery": { "type": "object", "additionalProperties": true },
|
|
46
51
|
"policies": { "type": "object", "additionalProperties": true },
|
|
@@ -13,7 +13,12 @@
|
|
|
13
13
|
"steps",
|
|
14
14
|
"missingEvidence",
|
|
15
15
|
"blockingReasons",
|
|
16
|
-
"verificationPlan"
|
|
16
|
+
"verificationPlan",
|
|
17
|
+
"affectedSubgraph",
|
|
18
|
+
"graphIntegrity",
|
|
19
|
+
"freshness",
|
|
20
|
+
"policyMode",
|
|
21
|
+
"policyViolations"
|
|
17
22
|
],
|
|
18
23
|
"properties": {
|
|
19
24
|
"schemaVersion": {
|
|
@@ -105,6 +110,103 @@
|
|
|
105
110
|
"verificationPlan": {
|
|
106
111
|
"type": "array",
|
|
107
112
|
"items": { "type": "object", "additionalProperties": true }
|
|
113
|
+
},
|
|
114
|
+
"affectedSubgraph": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"required": [
|
|
117
|
+
"totalProjects",
|
|
118
|
+
"directlyChanged",
|
|
119
|
+
"transitiveDependents",
|
|
120
|
+
"covered",
|
|
121
|
+
"uncovered",
|
|
122
|
+
"unverifiable"
|
|
123
|
+
],
|
|
124
|
+
"properties": {
|
|
125
|
+
"totalProjects": { "type": "integer", "minimum": 0 },
|
|
126
|
+
"directlyChanged": { "type": "array", "items": { "type": "string" } },
|
|
127
|
+
"transitiveDependents": { "type": "array", "items": { "type": "string" } },
|
|
128
|
+
"covered": { "type": "array", "items": { "type": "string" } },
|
|
129
|
+
"uncovered": { "type": "array", "items": { "type": "string" } },
|
|
130
|
+
"unverifiable": { "type": "array", "items": { "type": "string" } }
|
|
131
|
+
},
|
|
132
|
+
"additionalProperties": false
|
|
133
|
+
},
|
|
134
|
+
"graphIntegrity": {
|
|
135
|
+
"type": "object",
|
|
136
|
+
"required": ["ok", "cycles", "danglingEdges", "orphans", "stats"],
|
|
137
|
+
"properties": {
|
|
138
|
+
"ok": { "type": "boolean" },
|
|
139
|
+
"cycles": {
|
|
140
|
+
"type": "array",
|
|
141
|
+
"items": { "type": "array", "items": { "type": "string" } }
|
|
142
|
+
},
|
|
143
|
+
"danglingEdges": {
|
|
144
|
+
"type": "array",
|
|
145
|
+
"items": {
|
|
146
|
+
"type": "object",
|
|
147
|
+
"required": ["from", "to", "kind", "missing"],
|
|
148
|
+
"properties": {
|
|
149
|
+
"from": { "type": "string" },
|
|
150
|
+
"to": { "type": "string" },
|
|
151
|
+
"kind": { "type": "string" },
|
|
152
|
+
"missing": { "enum": ["from", "to", "both"] }
|
|
153
|
+
},
|
|
154
|
+
"additionalProperties": true
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
"orphans": { "type": "array", "items": { "type": "string" } },
|
|
158
|
+
"stats": {
|
|
159
|
+
"type": "object",
|
|
160
|
+
"required": [
|
|
161
|
+
"nodeCount",
|
|
162
|
+
"edgeCount",
|
|
163
|
+
"cycleCount",
|
|
164
|
+
"danglingCount",
|
|
165
|
+
"orphanCount"
|
|
166
|
+
],
|
|
167
|
+
"properties": {
|
|
168
|
+
"nodeCount": { "type": "integer", "minimum": 0 },
|
|
169
|
+
"edgeCount": { "type": "integer", "minimum": 0 },
|
|
170
|
+
"cycleCount": { "type": "integer", "minimum": 0 },
|
|
171
|
+
"danglingCount": { "type": "integer", "minimum": 0 },
|
|
172
|
+
"orphanCount": { "type": "integer", "minimum": 0 }
|
|
173
|
+
},
|
|
174
|
+
"additionalProperties": false
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
"additionalProperties": false
|
|
178
|
+
},
|
|
179
|
+
"freshness": {
|
|
180
|
+
"type": "object",
|
|
181
|
+
"required": ["verdict", "baseline", "changed", "added", "removed", "projectHashes"],
|
|
182
|
+
"properties": {
|
|
183
|
+
"verdict": { "enum": ["fresh", "stale", "unknown"] },
|
|
184
|
+
"baseline": { "enum": ["none", "recorded"] },
|
|
185
|
+
"changed": { "type": "array", "items": { "type": "string" } },
|
|
186
|
+
"added": { "type": "array", "items": { "type": "string" } },
|
|
187
|
+
"removed": { "type": "array", "items": { "type": "string" } },
|
|
188
|
+
"projectHashes": {
|
|
189
|
+
"type": "object",
|
|
190
|
+
"additionalProperties": { "type": "string" }
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
"additionalProperties": false
|
|
194
|
+
},
|
|
195
|
+
"policyMode": { "type": "string" },
|
|
196
|
+
"policyViolations": {
|
|
197
|
+
"type": "array",
|
|
198
|
+
"items": {
|
|
199
|
+
"type": "object",
|
|
200
|
+
"required": ["source", "severity", "code", "message"],
|
|
201
|
+
"properties": {
|
|
202
|
+
"source": { "enum": ["model", "contract"] },
|
|
203
|
+
"severity": { "enum": ["error", "warning"] },
|
|
204
|
+
"code": { "type": "string" },
|
|
205
|
+
"message": { "type": "string" },
|
|
206
|
+
"target": { "type": "string" }
|
|
207
|
+
},
|
|
208
|
+
"additionalProperties": false
|
|
209
|
+
}
|
|
108
210
|
}
|
|
109
211
|
},
|
|
110
212
|
"additionalProperties": true
|