Evidence and release gates / JSON Schema
RapidKit Analyze Last Run Evidence
Defines the versioned analyze last run v1 boundary used by Workspai and its consumers.
- Schema version
rapidkit-analyze-v1- Contract path
contracts/analyze-last-run.v1.json- Publication
- embedded-type
- Defined fields
- 33
- Artifact bindings
- 1
Why this contract exists
Architecture role
Defines a versioned interoperability boundary used by Workspai and contract-aware consumers.
Consumption boundary
- • Workspai CLI
- • Contract-aware integrations
Related commands
Commands are linked only when the runtime contract identifies a direct production relationship. Supporting contracts may be consumed without having a single producer command.
Produced artifacts
These durable files are emitted by registered commands and validated against this contract.
| Artifact path | Schema | Producer |
|---|---|---|
| .workspai/reports/analyze-last-run.json | rapidkit-analyze-v1 | workspai analyze --json |
Field reference
Every declared schema property or published capability path is listed here. Required means the contract declares or publishes that field at the shown boundary.
| Field path | Type | Required | Meaning | Constraints |
|---|---|---|---|---|
| dependencyGraph | object | No | Defines the dependencygraph value at this contract boundary. | additionalProperties: true |
| dependencyGraph.edges | array | No | Defines the edges value at this contract boundary. | — |
| dependencyGraph.status | enum | No | Defines the status value at this contract boundary. | enum: generated, empty |
| dependencyGraph.topImpactedProjects | array | No | Defines the topimpactedprojects value at this contract boundary. | — |
| enterpriseControls | object | Yes | Defines the enterprisecontrols value at this contract boundary. | additionalProperties: true |
| enterpriseControls.ciGateCommand | string | Yes | Defines the cigatecommand value at this contract boundary. | — |
| enterpriseControls.evidencePath | string | Yes | Defines the evidencepath value at this contract boundary. | — |
| enterpriseControls.jsonReady | boolean | Yes | Defines the jsonready value at this contract boundary. | — |
| enterpriseControls.releaseGateCommand | string | Yes | Defines the releasegatecommand value at this contract boundary. | — |
| findings | array | Yes | Defines the findings value at this contract boundary. | — |
| findings[].detail | string | Yes | Defines the detail value at this contract boundary. | — |
| findings[].id | string | Yes | Defines the id value at this contract boundary. | — |
| findings[].remediation | string | Yes | Defines the remediation value at this contract boundary. | — |
| findings[].severity | enum | Yes | Defines the severity value at this contract boundary. | enum: info, warn, fail |
| findings[].target | string | Yes | Defines the target value at this contract boundary. | — |
| findings[].title | string | Yes | Defines the title value at this contract boundary. | — |
| generatedAt | string | Yes | Defines the generatedat value at this contract boundary. | format: date-time |
| nextActions | array | No | Defines the nextactions value at this contract boundary. | — |
| profile | string | null | No | Defines the profile value at this contract boundary. | — |
| projects | array | Yes | Defines the projects value at this contract boundary. | — |
| runtimes | object | No | Defines the runtimes value at this contract boundary. | — |
| schemaVersion | string | Yes | Defines the schemaversion value at this contract boundary. | const: "rapidkit-analyze-v1" |
| summary | object | Yes | Defines the summary value at this contract boundary. | additionalProperties: true |
| summary.findings | object | Yes | Defines the findings value at this contract boundary. | additionalProperties: true |
| summary.findings.fail | integer | Yes | Defines the fail value at this contract boundary. | minimum: 0 |
| summary.findings.info | integer | Yes | Defines the info value at this contract boundary. | minimum: 0 |
| summary.findings.warn | integer | Yes | Defines the warn value at this contract boundary. | minimum: 0 |
| summary.projectCount | integer | Yes | Defines the projectcount value at this contract boundary. | minimum: 0 |
| summary.runtimeCount | integer | Yes | Defines the runtimecount value at this contract boundary. | minimum: 0 |
| summary.score | number | Yes | Defines the score value at this contract boundary. | — |
| summary.verdict | enum | Yes | Defines the verdict value at this contract boundary. | enum: ready, needs-attention, blocked |
| workspaceDetected | boolean | Yes | Defines the workspacedetected value at this contract boundary. | — |
| workspacePath | string | Yes | Defines the workspacepath value at this contract boundary. | minLength: 1 |
Canonical machine-readable definition
The raw synchronized contract remains authoritative. The educational sections above are projections of this definition.
Show raw JSON
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://getrapidkit.com/schemas/analyze-last-run.v1.json",
"title": "RapidKit Analyze Last Run Evidence",
"type": "object",
"required": [
"schemaVersion",
"generatedAt",
"workspacePath",
"workspaceDetected",
"summary",
"projects",
"findings",
"enterpriseControls"
],
"properties": {
"schemaVersion": {
"const": "rapidkit-analyze-v1"
},
"generatedAt": {
"type": "string",
"format": "date-time"
},
"workspacePath": {
"type": "string",
"minLength": 1
},
"workspaceDetected": {
"type": "boolean"
},
"profile": {
"type": [
"string",
"null"
]
},
"summary": {
"type": "object",
"required": [
"score",
"verdict",
"projectCount",
"runtimeCount",
"findings"
],
"properties": {
"score": {
"type": "number"
},
"verdict": {
"enum": [
"ready",
"needs-attention",
"blocked"
]
},
"projectCount": {
"type": "integer",
"minimum": 0
},
"runtimeCount": {
"type": "integer",
"minimum": 0
},
"findings": {
"type": "object",
"required": [
"fail",
"warn",
"info"
],
"properties": {
"fail": {
"type": "integer",
"minimum": 0
},
"warn": {
"type": "integer",
"minimum": 0
},
"info": {
"type": "integer",
"minimum": 0
}
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"runtimes": {
"type": "object",
"additionalProperties": {
"type": "integer",
"minimum": 0
}
},
"projects": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"dependencyGraph": {
"type": "object",
"properties": {
"status": {
"enum": [
"generated",
"empty"
]
},
"edges": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
"topImpactedProjects": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
}
},
"additionalProperties": true
},
"findings": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"severity",
"title",
"detail",
"target",
"remediation"
],
"properties": {
"id": {
"type": "string"
},
"severity": {
"enum": [
"info",
"warn",
"fail"
]
},
"title": {
"type": "string"
},
"detail": {
"type": "string"
},
"target": {
"type": "string"
},
"remediation": {
"type": "string"
}
},
"additionalProperties": true
}
},
"nextActions": {
"type": "array",
"items": {
"type": "string"
}
},
"enterpriseControls": {
"type": "object",
"required": [
"jsonReady",
"ciGateCommand",
"releaseGateCommand",
"evidencePath"
],
"properties": {
"jsonReady": {
"type": "boolean"
},
"ciGateCommand": {
"type": "string"
},
"releaseGateCommand": {
"type": "string"
},
"evidencePath": {
"type": "string"
}
},
"additionalProperties": true
}
},
"additionalProperties": true
}