-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Problem
Agent status selection currently allows scaffolded, deprecated, and human, but behavior is inconsistent and not fully defined across UI, reconcile, auth, and runtime config paths.
Observed confusion:
- Setting status in UI may appear to not persist or gets overridden by reconcile/runtime-derived state in some flows.
humanis not a first-class runtime mode in the DB model (agentsCHECK allows scaffolded|active|deprecated only), requiring internal mapping hacks.- Users can choose statuses that do not have clearly documented, end-to-end semantics.
Decision (for now)
Temporarily remove/disable user-facing status options:
scaffoldeddeprecatedhuman
Keep only active selectable in AgentEditModal until lifecycle semantics are formally defined and implemented end-to-end.
Why
We should not expose controls that imply behavior we don’t reliably implement.
Scope
- UI: AgentEditModal status select should only allow
active(or hide status field entirely for now). - API: reject unsupported status inputs with 400 (or normalize to active) while feature-flagging future lifecycle modes.
- Docs: note that lifecycle statuses are reserved/not yet supported.
Follow-up design work required
Define explicit lifecycle semantics before re-enabling status controls:
- Source of truth for status (DB vs runtime-derived)
- Reconcile interaction rules
- Auth interaction rules (who is blocked and when)
- Runtime config implications (whether non-active statuses affect OpenClaw config writes)
- UI display rules and transitions (who can set/clear, with audit trail)
Once semantics are defined, reintroduce statuses with tests and migration plan.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working