Skip to content

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

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