rapidkit 0.41.2 → 0.41.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 +56 -52
- package/contracts/agent-customization-pack.v1.json +15 -0
- package/contracts/doctor-project-evidence.v1.json +260 -2
- package/contracts/doctor-remediation-plan.v1.json +496 -0
- package/contracts/doctor-workspace-evidence.v1.json +260 -2
- package/contracts/extension-cli-compatibility.v1.json +5 -2
- package/contracts/workspace-intelligence/doctor-fix-result.v1.json +11 -1
- package/contracts/workspace-intelligence/fact-freshness.v1.json +58 -0
- package/contracts/workspace-intelligence/workspace-context.v1.json +84 -1
- package/contracts/workspace-intelligence/workspace-intelligence-history.v1.json +6 -2
- package/contracts/workspace-intelligence/workspace-model.v1.json +80 -0
- package/dist/analyze-UTB3PNKM.js +1 -0
- package/dist/autopilot-release-GBH7PIIZ.js +1 -0
- package/dist/{chunk-ZPXMZCYG.js → chunk-3CYEVV6H.js} +1 -1
- package/dist/{chunk-RSYUNEH7.js → chunk-42ARJBM7.js} +1 -1
- package/dist/chunk-6UBWN4EE.js +2 -0
- package/dist/chunk-7BEZH5LE.js +2 -0
- package/dist/{chunk-ITJ6RKUW.js → chunk-AM5OJWXF.js} +1 -1
- package/dist/{chunk-KIUSCFHF.js → chunk-C4ASE2DV.js} +1 -1
- package/dist/chunk-COBMOVUK.js +1 -0
- package/dist/{chunk-ELU3G6DQ.js → chunk-DKNVDNT4.js} +1 -1
- package/dist/chunk-GD6VML5K.js +32 -0
- package/dist/chunk-GH674HP5.js +4 -0
- package/dist/chunk-HT3G7HOV.js +78 -0
- package/dist/{chunk-BFEBZABL.js → chunk-KZLRUBQ5.js} +19 -19
- package/dist/chunk-O74N26AD.js +1 -0
- package/dist/chunk-TDSIF42O.js +1 -0
- package/dist/chunk-TSUQQTHI.js +1 -0
- package/dist/chunk-ULIVVMT6.js +1 -0
- package/dist/{chunk-WCICO7ZB.js → chunk-XRGBKUJO.js} +1 -1
- package/dist/chunk-XY3SGMAJ.js +2 -0
- package/dist/{create-RNP5ACQL.js → create-XTKHAYH7.js} +1 -1
- package/dist/doctor-4UQZIELO.js +1 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.js +165 -140
- package/dist/pipeline-ZCJ6NVRC.js +5 -0
- package/dist/{workspace-E554C5SM.js → workspace-VKUBU4M4.js} +1 -1
- package/dist/{workspace-agent-sync-BHE2V4KS.js → workspace-agent-sync-QJWXK3RT.js} +1 -1
- package/dist/{workspace-context-VJTXW3K4.js → workspace-context-I5OXR6XB.js} +1 -1
- package/dist/workspace-explain-YFKDZRVX.js +1 -0
- package/dist/{workspace-feedback-65NR3EZH.js → workspace-feedback-KCDFF7YS.js} +1 -1
- package/dist/{workspace-foundation-LISDH53T.js → workspace-foundation-V6SLZRBY.js} +1 -1
- package/dist/workspace-history-DSCH7PQZ.js +1 -0
- package/dist/{workspace-intelligence-EC63CRVF.js → workspace-intelligence-4SGJDZ6H.js} +1 -1
- package/dist/{workspace-marker-IOPQ42A7.js → workspace-marker-HAC7BMEG.js} +1 -1
- package/dist/workspace-mcp-serve-4QN7ZU6C.js +3 -0
- package/dist/workspace-model-R6XYEQZO.js +1 -0
- package/dist/workspace-run-QRT3JJDB.js +1 -0
- package/dist/{workspace-verify-IAUHP6Y6.js → workspace-verify-TEQWZOXM.js} +1 -1
- package/dist/{workspace-watch-H2AETGFI.js → workspace-watch-WERGZE5P.js} +1 -1
- package/docs/contracts/ARTIFACT_CATALOG.md +59 -20
- package/docs/contracts/NAMING_AND_COEXISTENCE.md +3 -2
- package/docs/contracts/README.md +1 -0
- package/docs/doctor-command.md +217 -13
- package/package.json +1 -1
- package/scripts/enterprise-package-smoke.mjs +35 -36
- package/dist/analyze-QYHMGLSG.js +0 -1
- package/dist/autopilot-release-YDEUKRW6.js +0 -1
- package/dist/chunk-33LR2QEM.js +0 -2
- package/dist/chunk-46AGNYI7.js +0 -50
- package/dist/chunk-DWXRVGOY.js +0 -2
- package/dist/chunk-EN6YCX36.js +0 -1
- package/dist/chunk-HYAT2EG7.js +0 -1
- package/dist/chunk-JNXT6KJV.js +0 -32
- package/dist/chunk-RV6HBTFC.js +0 -2
- package/dist/chunk-VDTAPIHB.js +0 -2
- package/dist/chunk-VKLL63TL.js +0 -1
- package/dist/chunk-VMJA36WD.js +0 -1
- package/dist/doctor-XM6QDTDC.js +0 -1
- package/dist/pipeline-YD2DO7XY.js +0 -5
- package/dist/workspace-explain-XJ22ZXJY.js +0 -1
- package/dist/workspace-history-VPDADQKG.js +0 -1
- package/dist/workspace-mcp-serve-KOM2V35Q.js +0 -3
- package/dist/workspace-model-YL7W3573.js +0 -1
- package/dist/workspace-run-F5FADRY5.js +0 -1
|
@@ -28,10 +28,24 @@
|
|
|
28
28
|
"projectScanSignature": { "type": "string" },
|
|
29
29
|
"cachePath": { "type": ["string", "null"] },
|
|
30
30
|
"healthScore": { "type": "object", "additionalProperties": true },
|
|
31
|
+
"evidenceFreshness": { "$ref": "#/$defs/evidenceFreshness" },
|
|
31
32
|
"system": { "type": "object", "additionalProperties": true },
|
|
32
33
|
"projects": {
|
|
33
34
|
"type": "array",
|
|
34
|
-
"items": {
|
|
35
|
+
"items": {
|
|
36
|
+
"type": "object",
|
|
37
|
+
"properties": {
|
|
38
|
+
"probes": {
|
|
39
|
+
"type": "array",
|
|
40
|
+
"items": { "$ref": "#/$defs/probe" }
|
|
41
|
+
},
|
|
42
|
+
"repairCapabilities": {
|
|
43
|
+
"type": "array",
|
|
44
|
+
"items": { "$ref": "#/$defs/repairCapability" }
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"additionalProperties": true
|
|
48
|
+
}
|
|
35
49
|
},
|
|
36
50
|
"summary": {
|
|
37
51
|
"type": "object",
|
|
@@ -51,7 +65,251 @@
|
|
|
51
65
|
"type": "array",
|
|
52
66
|
"items": { "type": "object", "additionalProperties": true }
|
|
53
67
|
},
|
|
54
|
-
"contract": { "type": "object", "additionalProperties": true }
|
|
68
|
+
"contract": { "type": "object", "additionalProperties": true },
|
|
69
|
+
"policyProfile": { "$ref": "#/$defs/policyProfile" }
|
|
70
|
+
},
|
|
71
|
+
"$defs": {
|
|
72
|
+
"freshness": {
|
|
73
|
+
"type": "object",
|
|
74
|
+
"required": [
|
|
75
|
+
"category",
|
|
76
|
+
"generatedAt",
|
|
77
|
+
"ttlSeconds",
|
|
78
|
+
"status",
|
|
79
|
+
"verifyBeforeUse",
|
|
80
|
+
"reason"
|
|
81
|
+
],
|
|
82
|
+
"properties": {
|
|
83
|
+
"category": { "enum": ["structure", "verification", "state"] },
|
|
84
|
+
"generatedAt": { "type": "string", "format": "date-time" },
|
|
85
|
+
"ttlSeconds": { "type": ["integer", "null"], "minimum": 0 },
|
|
86
|
+
"expiresAt": { "type": "string", "format": "date-time" },
|
|
87
|
+
"status": { "enum": ["fresh", "stale", "unknown"] },
|
|
88
|
+
"verifyBeforeUse": { "type": "boolean" },
|
|
89
|
+
"reason": { "type": "string" }
|
|
90
|
+
},
|
|
91
|
+
"additionalProperties": false
|
|
92
|
+
},
|
|
93
|
+
"evidenceFreshness": {
|
|
94
|
+
"type": "object",
|
|
95
|
+
"required": [
|
|
96
|
+
"generatedAt",
|
|
97
|
+
"status",
|
|
98
|
+
"staleProbeCount",
|
|
99
|
+
"unknownProbeCount",
|
|
100
|
+
"liveStateProbeCount",
|
|
101
|
+
"verifyBeforeUseProbeCount"
|
|
102
|
+
],
|
|
103
|
+
"properties": {
|
|
104
|
+
"generatedAt": { "type": "string", "format": "date-time" },
|
|
105
|
+
"status": { "enum": ["fresh", "stale", "unknown"] },
|
|
106
|
+
"staleProbeCount": { "type": "integer", "minimum": 0 },
|
|
107
|
+
"unknownProbeCount": { "type": "integer", "minimum": 0 },
|
|
108
|
+
"liveStateProbeCount": { "type": "integer", "minimum": 0 },
|
|
109
|
+
"verifyBeforeUseProbeCount": { "type": "integer", "minimum": 0 },
|
|
110
|
+
"oldestProbeGeneratedAt": { "type": "string", "format": "date-time" }
|
|
111
|
+
},
|
|
112
|
+
"additionalProperties": false
|
|
113
|
+
},
|
|
114
|
+
"repairIntent": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"required": [
|
|
117
|
+
"mode",
|
|
118
|
+
"confidence",
|
|
119
|
+
"primaryActionLabel",
|
|
120
|
+
"requiresApproval",
|
|
121
|
+
"requiresFreshEvidence",
|
|
122
|
+
"reason",
|
|
123
|
+
"relatedCommands"
|
|
124
|
+
],
|
|
125
|
+
"properties": {
|
|
126
|
+
"mode": {
|
|
127
|
+
"enum": [
|
|
128
|
+
"none",
|
|
129
|
+
"run-command",
|
|
130
|
+
"edit-file",
|
|
131
|
+
"review-required",
|
|
132
|
+
"verify-before-fix",
|
|
133
|
+
"refresh-evidence",
|
|
134
|
+
"manual-guidance"
|
|
135
|
+
]
|
|
136
|
+
},
|
|
137
|
+
"confidence": { "enum": ["high", "medium", "low"] },
|
|
138
|
+
"primaryActionLabel": { "type": "string" },
|
|
139
|
+
"requiresApproval": { "type": "boolean" },
|
|
140
|
+
"requiresFreshEvidence": { "type": "boolean" },
|
|
141
|
+
"reason": { "type": "string" },
|
|
142
|
+
"relatedCommands": { "type": "array", "items": { "type": "string" } }
|
|
143
|
+
},
|
|
144
|
+
"additionalProperties": false
|
|
145
|
+
},
|
|
146
|
+
"policyProfile": {
|
|
147
|
+
"type": "object",
|
|
148
|
+
"required": [
|
|
149
|
+
"name",
|
|
150
|
+
"exitOnErrors",
|
|
151
|
+
"exitOnWarnings",
|
|
152
|
+
"warningExitCode",
|
|
153
|
+
"advisoryWarningsBlockRelease",
|
|
154
|
+
"description"
|
|
155
|
+
],
|
|
156
|
+
"properties": {
|
|
157
|
+
"name": { "enum": ["local", "ci", "release", "enterprise-strict"] },
|
|
158
|
+
"exitOnErrors": { "const": true },
|
|
159
|
+
"exitOnWarnings": { "type": "boolean" },
|
|
160
|
+
"warningExitCode": { "enum": [0, 1, 2] },
|
|
161
|
+
"advisoryWarningsBlockRelease": { "type": "boolean" },
|
|
162
|
+
"description": { "type": "string" }
|
|
163
|
+
},
|
|
164
|
+
"additionalProperties": false
|
|
165
|
+
},
|
|
166
|
+
"probe": {
|
|
167
|
+
"type": "object",
|
|
168
|
+
"properties": {
|
|
169
|
+
"id": { "type": "string", "minLength": 1 },
|
|
170
|
+
"label": { "type": "string", "minLength": 1 },
|
|
171
|
+
"status": { "enum": ["pass", "warn", "fail"] },
|
|
172
|
+
"severity": { "enum": ["info", "warn", "error"] },
|
|
173
|
+
"scope": { "type": "string" },
|
|
174
|
+
"reason": { "type": "string" },
|
|
175
|
+
"recommendation": { "type": "string" },
|
|
176
|
+
"freshness": { "$ref": "#/$defs/freshness" },
|
|
177
|
+
"issueClass": {
|
|
178
|
+
"enum": [
|
|
179
|
+
"dependency",
|
|
180
|
+
"environment",
|
|
181
|
+
"security",
|
|
182
|
+
"test",
|
|
183
|
+
"quality",
|
|
184
|
+
"container",
|
|
185
|
+
"deployment",
|
|
186
|
+
"runtime",
|
|
187
|
+
"workspace-contract",
|
|
188
|
+
"source-tree",
|
|
189
|
+
"framework",
|
|
190
|
+
"configuration",
|
|
191
|
+
"custom",
|
|
192
|
+
"unknown"
|
|
193
|
+
]
|
|
194
|
+
},
|
|
195
|
+
"operationalImpact": {
|
|
196
|
+
"enum": [
|
|
197
|
+
"none",
|
|
198
|
+
"developer-friction",
|
|
199
|
+
"ci-risk",
|
|
200
|
+
"release-risk",
|
|
201
|
+
"security-risk",
|
|
202
|
+
"runtime-risk",
|
|
203
|
+
"customer-risk"
|
|
204
|
+
]
|
|
205
|
+
},
|
|
206
|
+
"repairIntent": { "$ref": "#/$defs/repairIntent" },
|
|
207
|
+
"repairCapability": { "$ref": "#/$defs/repairCapability" }
|
|
208
|
+
},
|
|
209
|
+
"additionalProperties": true
|
|
210
|
+
},
|
|
211
|
+
"repairCapability": {
|
|
212
|
+
"type": "object",
|
|
213
|
+
"required": [
|
|
214
|
+
"id",
|
|
215
|
+
"issueId",
|
|
216
|
+
"title",
|
|
217
|
+
"status",
|
|
218
|
+
"fixKind",
|
|
219
|
+
"risk",
|
|
220
|
+
"canAutoFix",
|
|
221
|
+
"canEditFiles",
|
|
222
|
+
"requiresApproval",
|
|
223
|
+
"requiresReview",
|
|
224
|
+
"files",
|
|
225
|
+
"refreshCommands",
|
|
226
|
+
"reason"
|
|
227
|
+
],
|
|
228
|
+
"properties": {
|
|
229
|
+
"id": { "type": "string", "minLength": 1 },
|
|
230
|
+
"issueId": { "type": "string", "minLength": 1 },
|
|
231
|
+
"title": { "type": "string", "minLength": 1 },
|
|
232
|
+
"status": { "enum": ["available", "manual", "blocked"] },
|
|
233
|
+
"fixKind": {
|
|
234
|
+
"enum": [
|
|
235
|
+
"package-json-script",
|
|
236
|
+
"file-create",
|
|
237
|
+
"file-append",
|
|
238
|
+
"file-copy",
|
|
239
|
+
"dependency-sync",
|
|
240
|
+
"command",
|
|
241
|
+
"manual"
|
|
242
|
+
]
|
|
243
|
+
},
|
|
244
|
+
"risk": { "enum": ["safe", "guarded", "invasive"] },
|
|
245
|
+
"canAutoFix": { "type": "boolean" },
|
|
246
|
+
"canEditFiles": { "type": "boolean" },
|
|
247
|
+
"requiresApproval": { "type": "boolean" },
|
|
248
|
+
"requiresReview": { "type": "boolean" },
|
|
249
|
+
"files": { "type": "array", "items": { "type": "string" } },
|
|
250
|
+
"command": { "type": "string" },
|
|
251
|
+
"operation": { "$ref": "#/$defs/repairOperation" },
|
|
252
|
+
"verifyCommand": { "type": "string" },
|
|
253
|
+
"refreshCommands": { "type": "array", "items": { "type": "string" } },
|
|
254
|
+
"reason": { "type": "string" },
|
|
255
|
+
"limitations": { "type": "array", "items": { "type": "string" } }
|
|
256
|
+
},
|
|
257
|
+
"additionalProperties": true
|
|
258
|
+
},
|
|
259
|
+
"repairOperation": {
|
|
260
|
+
"type": "object",
|
|
261
|
+
"required": ["type", "path"],
|
|
262
|
+
"properties": {
|
|
263
|
+
"type": {
|
|
264
|
+
"enum": [
|
|
265
|
+
"file-create",
|
|
266
|
+
"file-append",
|
|
267
|
+
"file-copy",
|
|
268
|
+
"package-json-script",
|
|
269
|
+
"json-edit",
|
|
270
|
+
"env-key-add",
|
|
271
|
+
"makefile-target"
|
|
272
|
+
]
|
|
273
|
+
},
|
|
274
|
+
"sourcePath": { "type": "string", "minLength": 1 },
|
|
275
|
+
"path": { "type": "string", "minLength": 1 },
|
|
276
|
+
"content": { "type": "string" },
|
|
277
|
+
"overwrite": { "type": "boolean" },
|
|
278
|
+
"lines": { "type": "array", "items": { "type": "string" } },
|
|
279
|
+
"ensureNewline": { "type": "boolean" },
|
|
280
|
+
"scriptName": { "type": "string" },
|
|
281
|
+
"scriptValue": { "type": "string" },
|
|
282
|
+
"edits": {
|
|
283
|
+
"type": "array",
|
|
284
|
+
"items": {
|
|
285
|
+
"type": "object",
|
|
286
|
+
"required": ["pointer", "value"],
|
|
287
|
+
"properties": {
|
|
288
|
+
"pointer": { "type": "string" },
|
|
289
|
+
"value": { "type": ["string", "number", "boolean", "null"] }
|
|
290
|
+
},
|
|
291
|
+
"additionalProperties": false
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
"keys": {
|
|
295
|
+
"type": "array",
|
|
296
|
+
"items": {
|
|
297
|
+
"type": "object",
|
|
298
|
+
"required": ["name", "value"],
|
|
299
|
+
"properties": {
|
|
300
|
+
"name": { "type": "string" },
|
|
301
|
+
"value": { "type": "string" },
|
|
302
|
+
"comment": { "type": "string" }
|
|
303
|
+
},
|
|
304
|
+
"additionalProperties": false
|
|
305
|
+
}
|
|
306
|
+
},
|
|
307
|
+
"target": { "type": "string" },
|
|
308
|
+
"command": { "type": "string" },
|
|
309
|
+
"phony": { "type": "boolean" }
|
|
310
|
+
},
|
|
311
|
+
"additionalProperties": false
|
|
312
|
+
}
|
|
55
313
|
},
|
|
56
314
|
"additionalProperties": true
|
|
57
315
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "rapidkit-extension-cli-compatibility.v1",
|
|
3
3
|
"cli": "rapidkit-npm",
|
|
4
|
-
"minimumVerifiedCliVersion": "0.41.
|
|
4
|
+
"minimumVerifiedCliVersion": "0.41.3",
|
|
5
5
|
"publishedContractSchemas": {
|
|
6
6
|
"runtimeCommandSurface": "rapidkit-runtime-command-surface-v1",
|
|
7
7
|
"cliLogEvent": "cli-log-event-v1",
|
|
8
8
|
"freshnessMetadata": "rapidkit-freshness-metadata-v1",
|
|
9
|
+
"factFreshness": "rapidkit-fact-freshness-v1",
|
|
9
10
|
"blockerResolution": "rapidkit-blocker-resolution-v1",
|
|
10
11
|
"workspaceModel": "workspace-model.v1",
|
|
11
12
|
"workspaceImpact": "workspace-impact.v1",
|
|
@@ -17,6 +18,8 @@
|
|
|
17
18
|
"workspaceOperationalSkill": "workspace-operational-skill.v1",
|
|
18
19
|
"workspaceSkillsIndex": "workspace-skills-index.v1",
|
|
19
20
|
"workspaceExplain": "workspace-explain.v1",
|
|
20
|
-
"agentActionOutcome": "agent-action-outcome.v1"
|
|
21
|
+
"agentActionOutcome": "agent-action-outcome.v1",
|
|
22
|
+
"doctorRemediationPlan": "doctor-remediation-plan-v2",
|
|
23
|
+
"doctorFixResult": "rapidkit-doctor-fix-result-v1"
|
|
21
24
|
}
|
|
22
25
|
}
|
|
@@ -4,11 +4,21 @@
|
|
|
4
4
|
"title": "Doctor fix execution result",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"additionalProperties": true,
|
|
7
|
-
"required": [
|
|
7
|
+
"required": [
|
|
8
|
+
"schemaVersion",
|
|
9
|
+
"generatedAt",
|
|
10
|
+
"appliedFixes",
|
|
11
|
+
"remainingBlockers",
|
|
12
|
+
"verifyRecommended"
|
|
13
|
+
],
|
|
8
14
|
"properties": {
|
|
9
15
|
"schemaVersion": {
|
|
10
16
|
"const": "rapidkit-doctor-fix-result-v1"
|
|
11
17
|
},
|
|
18
|
+
"generatedAt": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"format": "date-time"
|
|
21
|
+
},
|
|
12
22
|
"appliedFixes": {
|
|
13
23
|
"type": "array",
|
|
14
24
|
"items": {
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://getrapidkit.com/schemas/fact-freshness.v1.json",
|
|
4
|
+
"title": "RapidKit Fact Freshness Contract",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"schemaVersion",
|
|
8
|
+
"kind",
|
|
9
|
+
"category",
|
|
10
|
+
"generatedAt",
|
|
11
|
+
"ttlSeconds",
|
|
12
|
+
"status",
|
|
13
|
+
"verifyBeforeUse",
|
|
14
|
+
"reason"
|
|
15
|
+
],
|
|
16
|
+
"properties": {
|
|
17
|
+
"schemaVersion": {
|
|
18
|
+
"const": "rapidkit-fact-freshness-v1"
|
|
19
|
+
},
|
|
20
|
+
"kind": {
|
|
21
|
+
"enum": ["durable", "derived", "evidence-backed", "live", "verify-before-use"]
|
|
22
|
+
},
|
|
23
|
+
"category": {
|
|
24
|
+
"enum": ["structure", "verification", "state"]
|
|
25
|
+
},
|
|
26
|
+
"generatedAt": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"format": "date-time"
|
|
29
|
+
},
|
|
30
|
+
"ttlSeconds": {
|
|
31
|
+
"type": ["integer", "null"],
|
|
32
|
+
"minimum": 0
|
|
33
|
+
},
|
|
34
|
+
"expiresAt": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"format": "date-time"
|
|
37
|
+
},
|
|
38
|
+
"status": {
|
|
39
|
+
"enum": ["fresh", "stale", "unknown"]
|
|
40
|
+
},
|
|
41
|
+
"verifyBeforeUse": {
|
|
42
|
+
"type": "boolean"
|
|
43
|
+
},
|
|
44
|
+
"sourceArtifact": {
|
|
45
|
+
"type": "string"
|
|
46
|
+
},
|
|
47
|
+
"sourcePath": {
|
|
48
|
+
"type": "string"
|
|
49
|
+
},
|
|
50
|
+
"inputsHash": {
|
|
51
|
+
"type": "string"
|
|
52
|
+
},
|
|
53
|
+
"reason": {
|
|
54
|
+
"type": "string"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"additionalProperties": false
|
|
58
|
+
}
|
|
@@ -41,7 +41,15 @@
|
|
|
41
41
|
},
|
|
42
42
|
"scope": { "type": "object", "additionalProperties": true },
|
|
43
43
|
"projects": { "type": "array", "items": { "type": "object", "additionalProperties": true } },
|
|
44
|
-
"safeCommands": {
|
|
44
|
+
"safeCommands": {
|
|
45
|
+
"type": "array",
|
|
46
|
+
"items": { "type": "object", "additionalProperties": true }
|
|
47
|
+
},
|
|
48
|
+
"factFreshness": { "$ref": "#/$defs/factFreshnessSummary" },
|
|
49
|
+
"facts": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"items": { "$ref": "#/$defs/workspaceFact" }
|
|
52
|
+
},
|
|
45
53
|
"validation": {
|
|
46
54
|
"type": "object",
|
|
47
55
|
"required": ["status", "errors", "warnings"],
|
|
@@ -55,5 +63,80 @@
|
|
|
55
63
|
"additionalProperties": true
|
|
56
64
|
}
|
|
57
65
|
},
|
|
66
|
+
"$defs": {
|
|
67
|
+
"factFreshness": {
|
|
68
|
+
"type": "object",
|
|
69
|
+
"required": [
|
|
70
|
+
"schemaVersion",
|
|
71
|
+
"kind",
|
|
72
|
+
"category",
|
|
73
|
+
"generatedAt",
|
|
74
|
+
"ttlSeconds",
|
|
75
|
+
"status",
|
|
76
|
+
"verifyBeforeUse",
|
|
77
|
+
"reason"
|
|
78
|
+
],
|
|
79
|
+
"properties": {
|
|
80
|
+
"schemaVersion": { "const": "rapidkit-fact-freshness-v1" },
|
|
81
|
+
"kind": {
|
|
82
|
+
"enum": ["durable", "derived", "evidence-backed", "live", "verify-before-use"]
|
|
83
|
+
},
|
|
84
|
+
"category": { "enum": ["structure", "verification", "state"] },
|
|
85
|
+
"generatedAt": { "type": "string", "format": "date-time" },
|
|
86
|
+
"ttlSeconds": { "type": ["integer", "null"], "minimum": 0 },
|
|
87
|
+
"expiresAt": { "type": "string", "format": "date-time" },
|
|
88
|
+
"status": { "enum": ["fresh", "stale", "unknown"] },
|
|
89
|
+
"verifyBeforeUse": { "type": "boolean" },
|
|
90
|
+
"sourceArtifact": { "type": "string" },
|
|
91
|
+
"sourcePath": { "type": "string" },
|
|
92
|
+
"inputsHash": { "type": "string" },
|
|
93
|
+
"reason": { "type": "string" }
|
|
94
|
+
},
|
|
95
|
+
"additionalProperties": false
|
|
96
|
+
},
|
|
97
|
+
"workspaceFact": {
|
|
98
|
+
"type": "object",
|
|
99
|
+
"required": ["id", "label", "scope", "value", "freshness"],
|
|
100
|
+
"properties": {
|
|
101
|
+
"id": { "type": "string" },
|
|
102
|
+
"label": { "type": "string" },
|
|
103
|
+
"scope": {
|
|
104
|
+
"enum": ["workspace", "project", "evidence", "policy", "contract", "command", "graph"]
|
|
105
|
+
},
|
|
106
|
+
"project": { "type": "string" },
|
|
107
|
+
"value": true,
|
|
108
|
+
"freshness": { "$ref": "#/$defs/factFreshness" }
|
|
109
|
+
},
|
|
110
|
+
"additionalProperties": false
|
|
111
|
+
},
|
|
112
|
+
"factFreshnessSummary": {
|
|
113
|
+
"type": "object",
|
|
114
|
+
"required": [
|
|
115
|
+
"schemaVersion",
|
|
116
|
+
"generatedAt",
|
|
117
|
+
"status",
|
|
118
|
+
"totalFacts",
|
|
119
|
+
"staleFacts",
|
|
120
|
+
"unknownFacts",
|
|
121
|
+
"liveFacts",
|
|
122
|
+
"verifyBeforeUseFacts",
|
|
123
|
+
"byKind",
|
|
124
|
+
"byCategory"
|
|
125
|
+
],
|
|
126
|
+
"properties": {
|
|
127
|
+
"schemaVersion": { "const": "rapidkit-fact-freshness-v1" },
|
|
128
|
+
"generatedAt": { "type": "string", "format": "date-time" },
|
|
129
|
+
"status": { "enum": ["fresh", "stale", "unknown"] },
|
|
130
|
+
"totalFacts": { "type": "integer", "minimum": 0 },
|
|
131
|
+
"staleFacts": { "type": "integer", "minimum": 0 },
|
|
132
|
+
"unknownFacts": { "type": "integer", "minimum": 0 },
|
|
133
|
+
"liveFacts": { "type": "integer", "minimum": 0 },
|
|
134
|
+
"verifyBeforeUseFacts": { "type": "integer", "minimum": 0 },
|
|
135
|
+
"byKind": { "type": "object", "additionalProperties": { "type": "integer" } },
|
|
136
|
+
"byCategory": { "type": "object", "additionalProperties": { "type": "integer" } }
|
|
137
|
+
},
|
|
138
|
+
"additionalProperties": false
|
|
139
|
+
}
|
|
140
|
+
},
|
|
58
141
|
"additionalProperties": true
|
|
59
142
|
}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"required": ["generatedAt"],
|
|
15
15
|
"properties": {
|
|
16
16
|
"generatedAt": { "type": "string", "format": "date-time" },
|
|
17
|
-
"kind": { "enum": ["verify", "agent-action"] },
|
|
17
|
+
"kind": { "enum": ["verify", "agent-action", "doctor-fix"] },
|
|
18
18
|
"verdict": { "enum": ["ready", "needs-attention", "blocked"] },
|
|
19
19
|
"risk": { "type": "string" },
|
|
20
20
|
"affectedProjects": { "type": "integer", "minimum": 0 },
|
|
@@ -26,7 +26,11 @@
|
|
|
26
26
|
"scope": { "type": "string" },
|
|
27
27
|
"summary": { "type": "string" },
|
|
28
28
|
"outcome": { "enum": ["ok", "failed"] },
|
|
29
|
-
"evidenceSha256": { "type": "string" }
|
|
29
|
+
"evidenceSha256": { "type": "string" },
|
|
30
|
+
"applied": { "type": "integer", "minimum": 0 },
|
|
31
|
+
"failed": { "type": "integer", "minimum": 0 },
|
|
32
|
+
"skipped": { "type": "integer", "minimum": 0 },
|
|
33
|
+
"remainingBlockers": { "type": "integer", "minimum": 0 }
|
|
30
34
|
},
|
|
31
35
|
"additionalProperties": true
|
|
32
36
|
}
|
|
@@ -36,6 +36,11 @@
|
|
|
36
36
|
},
|
|
37
37
|
"identity": { "type": "object", "additionalProperties": true },
|
|
38
38
|
"summary": { "type": "object", "additionalProperties": true },
|
|
39
|
+
"factFreshness": { "$ref": "#/$defs/factFreshnessSummary" },
|
|
40
|
+
"facts": {
|
|
41
|
+
"type": "array",
|
|
42
|
+
"items": { "$ref": "#/$defs/workspaceFact" }
|
|
43
|
+
},
|
|
39
44
|
"projects": {
|
|
40
45
|
"type": "array",
|
|
41
46
|
"items": { "type": "object", "additionalProperties": true }
|
|
@@ -51,5 +56,80 @@
|
|
|
51
56
|
"policies": { "type": "object", "additionalProperties": true },
|
|
52
57
|
"validation": { "type": "object", "additionalProperties": true }
|
|
53
58
|
},
|
|
59
|
+
"$defs": {
|
|
60
|
+
"factFreshness": {
|
|
61
|
+
"type": "object",
|
|
62
|
+
"required": [
|
|
63
|
+
"schemaVersion",
|
|
64
|
+
"kind",
|
|
65
|
+
"category",
|
|
66
|
+
"generatedAt",
|
|
67
|
+
"ttlSeconds",
|
|
68
|
+
"status",
|
|
69
|
+
"verifyBeforeUse",
|
|
70
|
+
"reason"
|
|
71
|
+
],
|
|
72
|
+
"properties": {
|
|
73
|
+
"schemaVersion": { "const": "rapidkit-fact-freshness-v1" },
|
|
74
|
+
"kind": {
|
|
75
|
+
"enum": ["durable", "derived", "evidence-backed", "live", "verify-before-use"]
|
|
76
|
+
},
|
|
77
|
+
"category": { "enum": ["structure", "verification", "state"] },
|
|
78
|
+
"generatedAt": { "type": "string", "format": "date-time" },
|
|
79
|
+
"ttlSeconds": { "type": ["integer", "null"], "minimum": 0 },
|
|
80
|
+
"expiresAt": { "type": "string", "format": "date-time" },
|
|
81
|
+
"status": { "enum": ["fresh", "stale", "unknown"] },
|
|
82
|
+
"verifyBeforeUse": { "type": "boolean" },
|
|
83
|
+
"sourceArtifact": { "type": "string" },
|
|
84
|
+
"sourcePath": { "type": "string" },
|
|
85
|
+
"inputsHash": { "type": "string" },
|
|
86
|
+
"reason": { "type": "string" }
|
|
87
|
+
},
|
|
88
|
+
"additionalProperties": false
|
|
89
|
+
},
|
|
90
|
+
"workspaceFact": {
|
|
91
|
+
"type": "object",
|
|
92
|
+
"required": ["id", "label", "scope", "value", "freshness"],
|
|
93
|
+
"properties": {
|
|
94
|
+
"id": { "type": "string" },
|
|
95
|
+
"label": { "type": "string" },
|
|
96
|
+
"scope": {
|
|
97
|
+
"enum": ["workspace", "project", "evidence", "policy", "contract", "command", "graph"]
|
|
98
|
+
},
|
|
99
|
+
"project": { "type": "string" },
|
|
100
|
+
"value": true,
|
|
101
|
+
"freshness": { "$ref": "#/$defs/factFreshness" }
|
|
102
|
+
},
|
|
103
|
+
"additionalProperties": false
|
|
104
|
+
},
|
|
105
|
+
"factFreshnessSummary": {
|
|
106
|
+
"type": "object",
|
|
107
|
+
"required": [
|
|
108
|
+
"schemaVersion",
|
|
109
|
+
"generatedAt",
|
|
110
|
+
"status",
|
|
111
|
+
"totalFacts",
|
|
112
|
+
"staleFacts",
|
|
113
|
+
"unknownFacts",
|
|
114
|
+
"liveFacts",
|
|
115
|
+
"verifyBeforeUseFacts",
|
|
116
|
+
"byKind",
|
|
117
|
+
"byCategory"
|
|
118
|
+
],
|
|
119
|
+
"properties": {
|
|
120
|
+
"schemaVersion": { "const": "rapidkit-fact-freshness-v1" },
|
|
121
|
+
"generatedAt": { "type": "string", "format": "date-time" },
|
|
122
|
+
"status": { "enum": ["fresh", "stale", "unknown"] },
|
|
123
|
+
"totalFacts": { "type": "integer", "minimum": 0 },
|
|
124
|
+
"staleFacts": { "type": "integer", "minimum": 0 },
|
|
125
|
+
"unknownFacts": { "type": "integer", "minimum": 0 },
|
|
126
|
+
"liveFacts": { "type": "integer", "minimum": 0 },
|
|
127
|
+
"verifyBeforeUseFacts": { "type": "integer", "minimum": 0 },
|
|
128
|
+
"byKind": { "type": "object", "additionalProperties": { "type": "integer" } },
|
|
129
|
+
"byCategory": { "type": "object", "additionalProperties": { "type": "integer" } }
|
|
130
|
+
},
|
|
131
|
+
"additionalProperties": false
|
|
132
|
+
}
|
|
133
|
+
},
|
|
54
134
|
"additionalProperties": true
|
|
55
135
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{b as printAnalyzeReport,a as runAnalyze}from'./chunk-DKNVDNT4.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{b as AUTOPILOT_RELEASE_ALIAS_FILENAME,a as AUTOPILOT_RELEASE_LAST_RUN_FILENAME,c as runAutopilotRelease}from'./chunk-3CYEVV6H.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {a}from'./chunk-
|
|
1
|
+
import {a}from'./chunk-GH674HP5.js';import {a as a$2}from'./chunk-KMUWWZRT.js';import {a as a$1,e}from'./chunk-64RTZBHU.js';import l from'chalk';import Y from'fs';import y from'path';import {execa}from'execa';var Z="autopilot-release-last-run.json",ee="autopilot-release.json";function $(s){try{return JSON.parse(s)}catch{return null}}function ge(s){let t=y.resolve(s),o=a$2(t);if(!o)throw new Error("No RapidKit workspace found in current directory or parents");return o}async function b(s,t){let o=process.argv[1];if(!o)return {exitCode:1,stdout:"",stderr:"RapidKit entrypoint is unavailable for autopilot execution.",crashed:true};try{let a=await execa(process.execPath,[o,...s],{cwd:t,reject:false,env:{...process.env,RAPIDKIT_AUTOPILOT_CHILD:"1"}});return {exitCode:Number(a.exitCode??1),stdout:a.stdout,stderr:a.stderr,crashed:false}}catch(a){return {exitCode:1,stdout:"",stderr:a instanceof Error?a.message:String(a),crashed:true}}}function te(s){let t=s.toLowerCase();return t==="pass"?"pass":t==="warn"?"warn":t==="fail"?"fail":"warn"}function se(s){return s.summary.failed>0||s.gates.results.some(t=>t.status==="fail")?"fail":s.gates.results.some(t=>t.status==="warn")?"warn":"pass"}function we(s){let t=s.filter(a=>a.status!=="skipped");if(t.length===0)return 100;let o=t.reduce((a,e)=>e.status==="pass"?a+1:e.status==="warn"?a+.6:a,0);return Math.round(o/t.length*100)}function he(s){return s.executionError?["Re-run: npx rapidkit autopilot release --mode audit --json","Inspect .rapidkit/reports/autopilot-release-last-run.json for execution failure details"]:s.blockers.length>0?["Run: npx rapidkit doctor workspace --plan","Run: npx rapidkit readiness --json --strict","Run: npx rapidkit workspace run test --affected --strict"]:s.hasWarnings&&s.mode!=="enforce"?["Review warning-level findings in autopilot report","Optionally run: npx rapidkit autopilot release --mode safe-fix"]:["Workspace is release-ready based on current autopilot policy"]}async function U(s,t){await Y.promises.mkdir(y.dirname(s),{recursive:true}),await Y.promises.writeFile(s,`${JSON.stringify(t,null,2)}
|
|
2
2
|
`,"utf-8");}async function je(s){let t=ge(s.workspacePath),o=s.mode,a$2=[],e$1=[],F,B,C,O,J,G=0,f=false,I=0,T=0,D=-1,N=-1,c="skipped",p="skipped",re=o==="enforce"?["doctor","workspace","--json","--strict"]:["doctor","workspace","--json","--ci"];if(s.skipPipelineStages)a$2.push({name:"doctor-workspace",status:"skipped",durationMs:0,summary:"doctor stage skipped (pipeline already executed)"},{name:"analyze",status:"skipped",durationMs:0,summary:"analyze stage skipped (pipeline already executed)"},{name:"readiness",status:"skipped",durationMs:0,summary:"readiness stage skipped (pipeline already executed)"});else {let r=Date.now(),i=await b([...re],t),m=Date.now()-r;if(c="pass",i.crashed)c="fail",f=true,e$1.push(`doctor workspace execution error: ${i.stderr||"unknown error"}`);else if(i.exitCode===1)c="fail",e$1.push("doctor workspace command failed or reported errors");else if(i.exitCode===2)c="warn",e$1.push("doctor workspace reported warnings");else if(i.exitCode!==0)c="fail",e$1.push("doctor workspace command failed");else {let d=$(i.stdout),j=d&&d.healthScore&&typeof d.healthScore=="object"?d.healthScore:{},k=Number(j.errors??0),E=Number(j.warnings??0);Number.isFinite(k)&&k>0?(c="fail",e$1.push(`doctor workspace reports ${k} error(s)`)):Number.isFinite(E)&&E>0&&(c="warn");}D=a$2.push({name:"doctor-workspace",status:c,durationMs:m,summary:c==="pass"?"doctor workspace passed":c==="warn"?"doctor workspace reported warnings":"doctor workspace reported errors"})-1,o==="enforce"&&c==="warn"&&e$1.push("doctor workspace reported warnings under enforce mode");let g=Date.now(),w=await b(["analyze","--json"],t),v=Date.now()-g;B=y.join(t,".rapidkit","reports","analyze-last-run.json");let n="pass";if(w.crashed)n="fail",f=true,e$1.push(`analyze execution error: ${w.stderr||"unknown error"}`);else if(w.exitCode!==0)n=w.exitCode===2?"warn":"fail",e$1.push(w.exitCode===2?"analyze reported needs-attention verdict":"analyze command failed or reported blocked verdict");else {let d=$(w.stdout),j=d&&d.summary&&typeof d.summary=="object"?d.summary:{},k=String(j.verdict??"ready");k==="blocked"?(n="fail",e$1.push("analyze reported blocked verdict")):k==="needs-attention"&&(n="warn");}a$2.push({name:"analyze",status:n,durationMs:v,summary:n==="pass"?"analyze passed":n==="warn"?"analyze reported needs-attention":"analyze reported blocked verdict"}),o==="enforce"&&n==="warn"&&e$1.push("analyze reported warnings under enforce mode");let P=Date.now(),h=await b(["readiness","--json"],t),R=Date.now()-P;if(p="fail",h.crashed)p="fail",f=true,e$1.push(`readiness execution error: ${h.stderr||"unknown error"}`);else if(h.exitCode!==0)p="fail",e$1.push("readiness command failed");else {let d=$(h.stdout),j=String(d?.overallStatus??"fail");if(p=te(j),typeof d?.evidencePath=="string"&&d.evidencePath.trim().length>0&&(F=d.evidencePath),p==="fail"){let k=Array.isArray(d?.blockingReasons)?d?.blockingReasons.filter(E=>typeof E=="string"):[];k.length>0?e$1.push(...k.map(E=>`readiness: ${E}`)):e$1.push("readiness overall status is fail");}}N=a$2.push({name:"readiness",status:p,durationMs:R,summary:`readiness overall status is ${p}`})-1,o==="enforce"&&p==="warn"&&e$1.push("readiness reported warnings under enforce mode");}let ae=Date.now(),M=await b(["doctor","workspace","--plan","--json"],t),oe=Date.now()-ae,S="warn";if(M.crashed)S="fail",f=true,e$1.push(`doctor remediation plan execution error: ${M.stderr||"unknown error"}`);else if(M.exitCode!==0)S="fail",e$1.push("doctor remediation plan command failed");else {let r=$(M.stdout),i=r&&r.remediationPlan&&typeof r.remediationPlan=="object"?r.remediationPlan:null,m=Number(i?.totalSteps??0),g=Number(i?.executableSteps??0);Number.isFinite(m)&&m>0&&(I=m),Number.isFinite(g)&&g>0&&(T=g),Number.isFinite(m)&&m===0?S="pass":S="warn";}if(a$2.push({name:"remediation-plan",status:S,durationMs:oe,summary:S==="pass"?"no remediation steps required":"remediation steps available"}),o==="enforce"&&S==="warn"&&e$1.push("remediation plan has pending steps under enforce mode"),o==="safe-fix"){let r=Date.now(),i=await b(["doctor","workspace","--apply"],t),m=Date.now()-r,g=i.crashed||i.exitCode!==0?"fail":"pass";if(i.crashed)f=true,e$1.push(`doctor remediation apply execution error: ${i.stderr||"unknown error"}`);else if(g==="fail")e$1.push("doctor remediation apply failed");else {G=T>0?T:I>0?I:1;let w=await b(["doctor","workspace","--json"],t);if(w.crashed)c="fail",f=true,e$1.push(`post-apply doctor execution error: ${w.stderr||"unknown error"}`);else if(w.exitCode!==0)c="fail",e$1.push("post-apply doctor workspace command failed");else {let n=$(w.stdout),P=n&&n.healthScore&&typeof n.healthScore=="object"?n.healthScore:{},h=Number(P.errors??0),R=Number(P.warnings??0);Number.isFinite(h)&&h>0?(c="fail",e$1.push(`post-apply doctor reports ${h} error(s)`)):Number.isFinite(R)&&R>0?c="warn":c="pass";}D>=0&&(a$2[D].status=c,a$2[D].summary=`doctor workspace post-apply status is ${c}`);let v=await b(["readiness","--json"],t);if(v.crashed)p="fail",f=true,e$1.push(`post-apply readiness execution error: ${v.stderr||"unknown error"}`);else if(v.exitCode!==0)p="fail",e$1.push("post-apply readiness command failed");else {let n=$(v.stdout),P=String(n?.overallStatus??"fail");if(p=te(P),typeof n?.evidencePath=="string"&&n.evidencePath.trim().length>0&&(F=n.evidencePath),p==="fail"){let h=Array.isArray(n?.blockingReasons)?n?.blockingReasons.filter(R=>typeof R=="string"):[];h.length>0?e$1.push(...h.map(R=>`post-apply readiness: ${R}`)):e$1.push("post-apply readiness overall status is fail");}}N>=0&&(a$2[N].status=p,a$2[N].summary=`readiness post-apply overall status is ${p}`);}a$2.push({name:"remediation-apply",status:g,durationMs:m,summary:g==="pass"?"safe remediation apply completed":"safe remediation apply failed"});}else a$2.push({name:"remediation-apply",status:"skipped",durationMs:0,summary:"remediation apply is skipped for this mode"});let ne=Date.now(),x="pass",A="workspace test/build completed for selected projects";try{let r=await a({workspacePath:t,stage:"test",affected:true,since:s.since,parallel:s.parallel,maxWorkers:s.maxWorkers,strict:true,json:true,enforceGates:false});C=y.join(t,".rapidkit","reports",a$1),await e(t,r),O=C;let i=se(r);if(i==="fail")x="fail",A="workspace test stage failed for selected projects",e$1.push("workspace run test failed for selected projects");else {i==="warn"&&(x="warn",A="workspace test stage completed with warnings",o==="enforce"&&e$1.push("workspace run test reported warnings under enforce mode"));let m=await a({workspacePath:t,stage:"build",affected:true,since:s.since,parallel:s.parallel,maxWorkers:s.maxWorkers,strict:true,json:true,enforceGates:false});await e(t,m),J=C;let g=se(m);g==="fail"?(x="fail",A="workspace build stage failed for selected projects",e$1.push("workspace run build failed for selected projects")):g==="warn"&&(x="warn",A="workspace test/build completed with warnings",o==="enforce"&&e$1.push("workspace run test/build reported warnings under enforce mode"));}}catch(r){x="fail",A="workspace test/build orchestration failed",f=true,e$1.push(`workspace run orchestration error: ${r instanceof Error?r.message:String(r)}`);}let ie=Date.now()-ne;a$2.push({name:"workspace-run-test-build",status:x,durationMs:ie,summary:A});let z=a$2.filter(r=>r.status==="warn").length,le=a$2.filter(r=>r.status==="fail").length,L=o==="enforce"?a$2.some(r=>r.status==="warn"||r.status==="fail"):le>0,W=[...new Set(e$1)],ce=f||L?Math.max(1,W.length):0,de=we(a$2),pe=f||L?"blocked":z>0?"partial":"approved",ue=f?3:L?1:z>0?2:0,fe=he({mode:o,executionError:f,blockers:W,hasWarnings:z>0}),V=y.join(t,".rapidkit","reports"),H=y.join(V,Z),q=y.join(V,ee),u={schemaVersion:"autopilot-release-v1",generatedAt:new Date().toISOString(),workspacePath:t,mode:o,summary:{releaseScore:de,verdict:pe,blockers:ce,warnings:z,safeFixesApplied:G,manualActions:W.length,exitCode:ue},stages:a$2,blockingReasons:W,nextActions:fe,artifacts:{reportPath:H,aliasEvidencePath:q,analyzeEvidencePath:B,readinessEvidencePath:F,workspaceRunEvidencePath:C,workspaceRunTestPath:O,workspaceRunBuildPath:J},enterpriseControls:{jsonReady:true,evidencePath:`.rapidkit/reports/${Z}`,aliasEvidencePath:`.rapidkit/reports/${ee}`}};if(await U(H,u),await U(q,u),s.output&&await U(y.resolve(s.output),u),!s.json){console.log(l.bold.cyan(`
|
|
3
3
|
\u{1F680} RapidKit Autopilot Release
|
|
4
4
|
`)),console.log(l.bold(`Workspace: ${l.cyan(y.basename(t))}`)),console.log(l.gray(`Path: ${t}`)),console.log(l.white(`Mode: ${o}`)),console.log(l.white(`Verdict: ${u.summary.verdict==="approved"?l.green("approved"):u.summary.verdict==="partial"?l.yellow("partial"):l.red("blocked")}`)),console.log(l.white(`Release score: ${u.summary.releaseScore}`));for(let r of u.stages){let i=r.status==="pass"?l.green("PASS"):r.status==="warn"?l.yellow("WARN"):r.status==="skipped"?l.gray("SKIP"):l.red("FAIL");console.log(` - ${r.name}: ${i} ${r.summary} (${r.durationMs}ms)`);}if(u.blockingReasons.length>0){console.log(l.bold.red(`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {k,e as e$1}from'./chunk-JU3VNLTY.js';import {b as b$2}from'./chunk-CDCYRBAY.js';import {e,g,f as f$1,b as b$4,c as c$1,d as d$1}from'./chunk-E5ZVQL3C.js';import {a,d,b as b$1}from'./chunk-
|
|
1
|
+
import {k,e as e$1}from'./chunk-JU3VNLTY.js';import {b as b$2}from'./chunk-CDCYRBAY.js';import {e,g,f as f$1,b as b$4,c as c$1,d as d$1}from'./chunk-E5ZVQL3C.js';import {a,d,b as b$1}from'./chunk-7BEZH5LE.js';import {b}from'./chunk-Q2KZIBV4.js';import {f,c,e as e$2}from'./chunk-OLDPVVSV.js';import {b as b$3,j,i,l,h,q}from'./chunk-WRMCPKGA.js';import {promises}from'fs';import*as P from'fs-extra';import m from'path';import t from'chalk';import {execa}from'execa';async function H(e,o={}){let n=m.resolve(e),r=o.workspaceName??m.basename(n);try{let{registerWorkspace:a}=await import('./workspace-VKUBU4M4.js');await a(n,r);}catch(a){o.silent||console.warn(t.gray(`Note: Could not register workspace in shared registry: ${a?.message??a}`));}try{let{syncWorkspaceContract:a}=await import('./workspace-contract-OO4GMENV.js'),c=await a({workspacePath:n});if(o.silent||console.log(t.gray(`\u2139\uFE0F Workspace intelligence synced (contract + registry summary, ${c.contract.projects.length} project(s)).`)),!o.silent&&c.verification.status!=="passed"){console.log(t.yellow("\u26A0\uFE0F Workspace contract verification reported issues."));for(let d of c.verification.violations)console.log(t.gray(` Violation: ${d}`));console.log(t.white(" Next: npx rapidkit workspace contract inspect"));}}catch(a){o.silent||console.warn(t.gray(`Note: Could not sync workspace intelligence layer: ${a?.message??a}`));}}function S(){return h()}async function B(e,o,n,r){let a=d(o,b(),n);r&&(a.metadata||(a.metadata={}),a.metadata.python={version:r}),await b$1(e,a);}async function z(e){await P.outputFile(m.join(e,".gitignore"),`.venv/
|
|
2
2
|
__pycache__/
|
|
3
3
|
*.pyc
|
|
4
4
|
.env
|