Workspaces Service Module
What This Service Is For
The Workspaces service owns workspace identity, business status and lifecycle, plus provisioning, loading/reset and retirement requests. Participants own the resources they prepare or remove; generic Jobs owns execution and monitoring.
Boundary
Participants own execution and removal of their resources under the lifecycle protocol; the final module boundary remains a planning decision. The Data Job Engine owns import runs admitted while loading. Licensing owns licenses and application state; commercial-link changes request refresh. Notifications owns sender identities, though provisioning writes their selected setting through the shared capability. Jobs owns durable execution, generic reconciliation and monitoring.
Operations in Words
Workspace operations group ordinary/HQ record reads and edits, shortcuts, provisioning and initialization, initial-load/reset/activation, commercial linking and controlled retirement/recovery.
The operation rows describe every declared route, including the direct-delete refusal and the separate commercial-link operation. No route declares a Submissions binding and no module path makes a model inference call.
Events and Jobs
The declared job inventory covers durable execution and queued background work. Event declarations distinguish actual provisioning notifications from the absence of domain-change events.
Consistency Guarantees
Durable intent commits before execution starts. Lifecycle availability, gateway authority and provider state have separate consistency bounds. Notification and external ledger effects are not atomic with the owning record.
Retirement remains cancellable until the destructive boundary. Purge recovery moves forward, and finalization can complete the retained request before the ledger succeeds. The module split, initial-import proof and recovery gaps stay recorded as planning disagreements and findings.