Skip to the content.

ADR-0005: CheckIn/CheckOut model

Status: Accepted Date: 2026-08-14

Context

Multiple Studio instances may try to connect to the same agent. Need a model to prevent conflicting concurrent operations (like document check-in/check-out).

Decision

CheckIn/CheckOut with heartbeat TTL 60s.

Endpoint Key Description
POST /api/system/checkin contribute Studio checks out agent. Body: {studioId, studioName}. Returns success or refusal if already checked out
POST /api/system/checkout contribute Release agent
POST /api/system/checkin/heartbeat contribute Heartbeat (60s TTL). Missing → auto checkout
GET /api/system/checkin/status any {checkedOut, checkedOutBy, checkedOutAt, ttlSeconds}
POST /api/system/checkin/force system Force checkout (admin override)

Rules

Consequences

Alternatives considered