Recovery and archival / Capability contract
Workspace Archive Capabilities V1
Defines the versioned workspace archive capabilities v1 boundary used by Workspai and its consumers.
- Schema version
workspai-workspace-archive-capabilities-v1- Contract path
contracts/workspace-archive-capabilities.v1.json- Publication
- capability-contract
- Defined fields
- 54
- Artifact bindings
- 0
Why this contract exists
Architecture role
Preserves recoverable state and records the safety boundary of destructive operations.
Consumption boundary
- • Workspai CLI
- • Workspace Intelligence consumers
- • IDEs and agents
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.
This is a supporting, capability, cache, compatibility, or consumer contract. It has no single direct producer command in the canonical Workspace Intelligence execution registry.
Produced artifacts
These durable files are emitted by registered commands and validated against this contract.
No canonical file artifact is registered for this contract. It may describe capabilities, embedded data, runtime exchange, or supporting state instead of a standalone report.
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 |
|---|---|---|---|---|
| cliFlags | object | Yes | Published cliflags capability data. | — |
| cliFlags.archiveCompression | object | Yes | Published archivecompression capability data. | — |
| cliFlags.archiveCompression.appliesTo | array | Yes | Published appliesto capability data. | — |
| cliFlags.archiveCompression.appliesTo[] | string | Yes | Published appliesto[] capability data. | — |
| cliFlags.archiveCompression.description | string | Yes | Published description capability data. | — |
| cliFlags.archiveCompression.signature | string | Yes | Published signature capability data. | — |
| cliFlags.downloadTimeoutMs | object | Yes | Published downloadtimeoutms capability data. | — |
| cliFlags.downloadTimeoutMs.appliesTo | array | Yes | Published appliesto capability data. | — |
| cliFlags.downloadTimeoutMs.appliesTo[] | string | Yes | Published appliesto[] capability data. | — |
| cliFlags.downloadTimeoutMs.description | string | Yes | Published description capability data. | — |
| cliFlags.downloadTimeoutMs.signature | string | Yes | Published signature capability data. | — |
| cliFlags.maxDownloadSize | object | Yes | Published maxdownloadsize capability data. | — |
| cliFlags.maxDownloadSize.appliesTo | array | Yes | Published appliesto capability data. | — |
| cliFlags.maxDownloadSize.appliesTo[] | string | Yes | Published appliesto[] capability data. | — |
| cliFlags.maxDownloadSize.description | string | Yes | Published description capability data. | — |
| cliFlags.maxDownloadSize.signature | string | Yes | Published signature capability data. | — |
| cliFlags.maxExpandedSize | object | Yes | Published maxexpandedsize capability data. | — |
| cliFlags.maxExpandedSize.appliesTo | array | Yes | Published appliesto capability data. | — |
| cliFlags.maxExpandedSize.appliesTo[] | string | Yes | Published appliesto[] capability data. | — |
| cliFlags.maxExpandedSize.description | string | Yes | Published description capability data. | — |
| cliFlags.maxExpandedSize.signature | string | Yes | Published signature capability data. | — |
| commands | array | Yes | Published commands capability data. | — |
| commands[] | string | Yes | Published commands[] capability data. | — |
| container | object | Yes | Published container capability data. | — |
| container.compressionModes | array | Yes | Published compressionmodes capability data. | — |
| container.compressionModes[] | string | Yes | Published compressionmodes[] capability data. | — |
| container.defaultCompression | string | Yes | Published defaultcompression capability data. | — |
| container.readFormats | array | Yes | Published readformats capability data. | — |
| container.readFormats[] | string | Yes | Published readformats[] capability data. | — |
| container.writeFormat | string | Yes | Published writeformat capability data. | — |
| contracts | object | Yes | Published contracts capability data. | — |
| contracts.manifest | object | Yes | Published manifest capability data. | — |
| contracts.manifest.path | string | Yes | Published path capability data. | — |
| contracts.manifest.schemaVersion | string | Yes | Published schemaversion capability data. | — |
| contracts.operationResult | object | Yes | Published operationresult capability data. | — |
| contracts.operationResult.path | string | Yes | Published path capability data. | — |
| contracts.operationResult.schemaVersion | string | Yes | Published schemaversion capability data. | — |
| integrity | object | Yes | Published integrity capability data. | — |
| integrity.algorithm | string | Yes | Published algorithm capability data. | — |
| integrity.manifestRequired | boolean | Yes | Published manifestrequired capability data. | — |
| integrity.strictVerificationRequiresChecksums | boolean | Yes | Published strictverificationrequireschecksums capability data. | — |
| schemaVersion | string | Yes | Published schemaversion capability data. | — |
| sizePolicy | object | Yes | Published sizepolicy capability data. | — |
| sizePolicy.manifestMemoryLimitBytes | number | Yes | Published manifestmemorylimitbytes capability data. | — |
| sizePolicy.remoteDownloadTimeoutDefaultMs | number | Yes | Published remotedownloadtimeoutdefaultms capability data. | — |
| sizePolicy.safetyBudgets | string | Yes | Published safetybudgets capability data. | — |
| sizePolicy.workspacePayloadDefault | string | Yes | Published workspacepayloaddefault capability data. | — |
| streaming | object | Yes | Published streaming capability data. | — |
| streaming.export | boolean | Yes | Published export capability data. | — |
| streaming.hydrate | boolean | Yes | Published hydrate capability data. | — |
| streaming.inspect | boolean | Yes | Published inspect capability data. | — |
| streaming.payloadBufferedInMemory | boolean | Yes | Published payloadbufferedinmemory capability data. | — |
| streaming.remoteDownload | boolean | Yes | Published remotedownload capability data. | — |
| streaming.verify | boolean | Yes | Published verify capability data. | — |
Canonical machine-readable definition
The raw synchronized contract remains authoritative. The educational sections above are projections of this definition.
Show raw JSON
{
"schemaVersion": "workspai-workspace-archive-capabilities-v1",
"commands": [
"export",
"inspect",
"verify",
"doctor",
"hydrate"
],
"container": {
"writeFormat": "zip64",
"readFormats": [
"zip",
"zip64"
],
"compressionModes": [
"store",
"deflate"
],
"defaultCompression": "store"
},
"streaming": {
"export": true,
"remoteDownload": true,
"inspect": true,
"verify": true,
"hydrate": true,
"payloadBufferedInMemory": false
},
"sizePolicy": {
"workspacePayloadDefault": "unlimited",
"safetyBudgets": "opt-in",
"manifestMemoryLimitBytes": 268435456,
"remoteDownloadTimeoutDefaultMs": 1800000
},
"integrity": {
"algorithm": "sha256",
"manifestRequired": true,
"strictVerificationRequiresChecksums": true
},
"cliFlags": {
"archiveCompression": {
"signature": "--archive-compression <mode>",
"description": "Archive compression: store (default) or deflate",
"appliesTo": [
"export"
]
},
"maxDownloadSize": {
"signature": "--max-download-size <size>",
"description": "Optional maximum remote archive download size (for example 8gb)",
"appliesTo": [
"inspect",
"verify",
"doctor",
"hydrate"
]
},
"maxExpandedSize": {
"signature": "--max-expanded-size <size>",
"description": "Optional maximum expanded archive payload size (for example 20gb)",
"appliesTo": [
"inspect",
"verify",
"doctor",
"hydrate"
]
},
"downloadTimeoutMs": {
"signature": "--download-timeout-ms <ms>",
"description": "Remote archive download timeout in milliseconds; 0 disables it",
"appliesTo": [
"inspect",
"verify",
"doctor",
"hydrate"
]
}
},
"contracts": {
"manifest": {
"schemaVersion": "workspai-workspace-archive-manifest-v1",
"path": "contracts/workspace-archive-manifest.v1.json"
},
"operationResult": {
"schemaVersion": "workspai-workspace-archive-operation-result-v1",
"path": "contracts/workspace-archive-operation-result.v1.json"
}
}
}