Client Instance Detachment v1¶
Source schema: doc/schemas/client-instance-detachment.v1.schema.json
Machine-readable schema for a pod-layer artifact that detaches a concrete client instance from a serving-node session using the same participant-over-channel boundary as client-instance-attachment.v1.
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/participant-bind.v1.schema.json
Project Lineage¶
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema/v |
yes |
const: 1 |
Schema version. |
detachment/id |
yes |
string | Stable identifier of this client-instance detachment artifact. |
detached-at |
yes |
string | Timestamp when the client instance was detached or invalidated. |
attachment/id |
yes |
string | Reference to the earlier attachment artifact being terminated. |
serving-node/id |
yes |
string | Serving node that hosted the attached client session. |
client-instance/id |
yes |
string | Concrete client, device, or install instance being detached. |
detach/reason |
yes |
enum: user-request, device-loss, session-expired, policy, migration, operator-action |
Coarse detachment reason. It is intentionally bounded and does not require disclosure of detailed operational internals. |
detach/notes |
no |
string | Optional operator- or client-facing note describing the detachment in more detail. |
participant-bind |
yes |
ref: participant-bind.v1.schema.json |
Participant-scoped bind reused to prove whose session context is being detached. |
proof/node-attestation |
no |
ref: #/$defs/signature |
Optional future-facing serving-node attestation over the detachment artifact. |
policy_annotations |
no |
object | Optional local or federation policy annotations that do not change the core detachment semantics. |
Definitions¶
| Definition | Shape | Description |
|---|---|---|
signature |
object | |
| ## Field Semantics |
schema/v¶
- Required:
yes - Shape: const:
1
Schema version.
detachment/id¶
- Required:
yes - Shape: string
Stable identifier of this client-instance detachment artifact.
detached-at¶
- Required:
yes - Shape: string
Timestamp when the client instance was detached or invalidated.
attachment/id¶
- Required:
yes - Shape: string
Reference to the earlier attachment artifact being terminated.
serving-node/id¶
- Required:
yes - Shape: string
Serving node that hosted the attached client session.
client-instance/id¶
- Required:
yes - Shape: string
Concrete client, device, or install instance being detached.
detach/reason¶
- Required:
yes - Shape: enum:
user-request,device-loss,session-expired,policy,migration,operator-action
Coarse detachment reason. It is intentionally bounded and does not require disclosure of detailed operational internals.
detach/notes¶
- Required:
no - Shape: string
Optional operator- or client-facing note describing the detachment in more detail.
participant-bind¶
- Required:
yes - Shape: ref:
participant-bind.v1.schema.json
Participant-scoped bind reused to prove whose session context is being detached.
proof/node-attestation¶
- Required:
no - Shape: ref:
#/$defs/signature
Optional future-facing serving-node attestation over the detachment artifact.
policy_annotations¶
- Required:
no - Shape: object
Optional local or federation policy annotations that do not change the core detachment semantics.
Definition Semantics¶
$defs.signature¶
- Shape: object