Client Instance Recovery v1¶
Source schema: doc/schemas/client-instance-recovery.v1.schema.json
Machine-readable schema for a pod-layer artifact that recovers client access after a detachment, device loss, migration, or other interruption, while reusing the same participant-over-channel boundary as the attachment and detachment artifacts.
Governing Basis¶
doc/project/40-proposals/006-pod-access-layer-for-thin-clients.mddoc/project/40-proposals/007-pod-identity-and-tenancy-model.mddoc/schemas/client-instance-attachment.v1.schema.jsondoc/schemas/client-instance-detachment.v1.schema.jsondoc/schemas/participant-bind.v1.schema.json
Project Lineage¶
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema/v |
yes |
const: 1 |
Schema version. |
recovery/id |
yes |
string | Stable identifier of this client-instance recovery artifact. |
recovered-at |
yes |
string | Timestamp when the recovery path was accepted. |
serving-node/id |
yes |
string | Serving node that accepts the recovered client access. |
client-instance/id |
yes |
string | Concrete client, device, or install instance being recovered or re-established. |
recovery/mode |
yes |
enum: reattach-existing-device, replace-device, migrate-to-new-host, resume-after-suspension |
Coarse recovery mode used for the resumed client path. |
recovery/from-detachment-id |
yes |
string | Reference to the detachment artifact or equivalent termination event being recovered from. |
recovery/token-ref |
no |
string | Optional reference to a migration bundle, export token, or recovery token used in the process. |
participant-bind |
yes |
ref: participant-bind.v1.schema.json |
Participant-scoped bind proving who is resuming access over the already established channel. |
proof/node-attestation |
no |
ref: #/$defs/signature |
Optional future-facing serving-node attestation over the recovery artifact. |
policy_annotations |
no |
object | Optional local or federation policy annotations that do not change the core recovery semantics. |
Definitions¶
| Definition | Shape | Description |
|---|---|---|
signature |
object | |
| ## Field Semantics |
schema/v¶
- Required:
yes - Shape: const:
1
Schema version.
recovery/id¶
- Required:
yes - Shape: string
Stable identifier of this client-instance recovery artifact.
recovered-at¶
- Required:
yes - Shape: string
Timestamp when the recovery path was accepted.
serving-node/id¶
- Required:
yes - Shape: string
Serving node that accepts the recovered client access.
client-instance/id¶
- Required:
yes - Shape: string
Concrete client, device, or install instance being recovered or re-established.
recovery/mode¶
- Required:
yes - Shape: enum:
reattach-existing-device,replace-device,migrate-to-new-host,resume-after-suspension
Coarse recovery mode used for the resumed client path.
recovery/from-detachment-id¶
- Required:
yes - Shape: string
Reference to the detachment artifact or equivalent termination event being recovered from.
recovery/token-ref¶
- Required:
no - Shape: string
Optional reference to a migration bundle, export token, or recovery token used in the process.
participant-bind¶
- Required:
yes - Shape: ref:
participant-bind.v1.schema.json
Participant-scoped bind proving who is resuming access over the already established channel.
proof/node-attestation¶
- Required:
no - Shape: ref:
#/$defs/signature
Optional future-facing serving-node attestation over the recovery artifact.
policy_annotations¶
- Required:
no - Shape: object
Optional local or federation policy annotations that do not change the core recovery semantics.
Definition Semantics¶
$defs.signature¶
- Shape: object