-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Apps, Agents, and Automations currently use inconsistent lifecycle patterns and ambiguous terminology (Draft, Publish, Live). This creates confusion around what is deployed, what is running, and what is visible.
This work standardizes lifecycle states, terminology, and activation patterns across all object types.
Goals
- Use one consistent lifecycle model across Apps, Agents, and Automations.
- Separate deployment from runtime clearly in the UI.
- Remove ambiguous terms (Draft, Off).
- Reduce cognitive load without adding system complexity.
Problem
1. Inconsistent activation patterns
- Agents use “Set Live”.
- Apps and Automations use a Draft toggle.
Same concept, different interaction models.
2. “Publish” is misleading
“Publish” implies exposure.
In practice, it snapshots and deploys workspace changes.
3. “Draft” is incorrect
Draft currently means:
- Never deployed
- Edited but not deployed
- Not live
These are different states presented as one.
4. Two dimensions forced into one status
There are two independent questions:
- Is it deployed?
- Is it live?
The current UI mixes these into a single status field.
Solution
1. Workspace Button
Rename:
Publish → Publish changes (X)
- X = number of modified items.
- Clarifies scope and intent.
2. Unified Object States
Each object has:
Primary State (mutually exclusive)
- 🟢 Live — Deployed and running [green text]
- ⚪ Stopped — Deployed but not running [grey text]
- 🟡 Not Deployed — Never deployed [orange text]
Primary state reflects runtime only.
Deployment Modifier (optional)
- ● Unpublished
Shown when changes exist but haven’t been published.
Examples:
- Live
- Live · Unpublished
- Stopped
- Stopped · Unpublished
- Not Deployed
3. Unified Activation Pattern
Remove Draft toggles.
Every object gets:
- Set Live
- Stop
This matches the Agent model and makes activation explicit and intentional.
Non-Goals
- No changes to underlying deployment architecture.
- No environment support (dev/staging/prod).
- No version history redesign.
Success Criteria
- Draft toggle removed across all object types.
- All objects use the same activation controls.
- Clear visual separation between runtime state and deployment status.
- Reduced confusion around Publish vs Live in user feedback.
Outcome
Objects feel operational, not document-like.
Users can clearly see what’s running and what hasn’t been published at a glance.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status