Repository navigation
docs: propose persistent Agent runtime lifecycle - #71
freeqaz-openai wants to merge 8 commits into
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
Codex review: blocked before merge. What this changesAdds an illustrated RFC for persistent Agent replacement, durable stop intent, compatible recovery, and separately authorized result delivery. Example: An Agent replacement is requested while predecessor termination remains unknown.
Review scores
ProductKind: Docs · Worth it: Needs a maintainer decision Merge readiness⛔ Blocked before merge - 1 item remains This PR adds a coherent lifecycle proposal that current main does not contain; adopting its staged requirements needs a maintainer product decision. Priority: P3 Decision needed
Before merge
FindingsNone. Agent review detailsHow this fits togetherThe proposed OpenClaw control plane admits lifecycle intent, delegates execution to compute and sandbox drivers, and reports authority withdrawal, physical termination, and cleanup separately. flowchart TD
A[Authorized lifecycle request] --> B[Control plane admission]
B --> C[Durable intent and current authority]
C --> D[Compute and sandbox drivers]
D --> E[Observe predecessor termination]
E --> F{Writers stopped}
F -->|Yes| G[Activate successor]
F -->|Unknown| H[Retain data and block replacement]
Technical reviewBest possible solution: Accept a staged lifecycle contract that preserves observed writer termination while leaving public Stop defaults and optional recovery profiles for later decisions. Do we have a high-confidence way to reproduce the issue? Runtime reproduction is not applicable to this documentation proposal; source inspection verifies its narrowly stated activation-before-retirement claim without establishing concurrent writers. Is this the best way to solve the issue? The staged proposal preserves the accepted deployment order and separates initial safety obligations from later controls, making it a reasonable design direction subject to owner acceptance. AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning medium; reviewed against 967d9aac7472. TestingProof path: in-process harness. SecurityNone. EvidenceWhat I checked:
Likely related people:
Review metrics
LabelsLabel changes: No label changes. Label justifications:
Rating scale6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior. WorkflowClawSweeper edits this one comment on every review. Comment HistoryReview history (10 earlier review cycles; latest 8 shown)
Reviewed October 13, 2026, 10:52 PM ET / October 14, 2026, 02:52 UTC (Revision 11). |
What Problem This Solves
A restart or accepted stop request does not establish safe continuation or physical termination. Operators need clear outcomes when retained files, helper processes or remote effects remain unresolved.
Why This Change Was Made
The current ordinary Kubernetes controller selects and requests activation of the successor before requesting predecessor retirement. That path does not yet establish observed predecessor termination and writer exclusion before successor writes. This proposal requires that contract and accepts the resulting availability gap. Managed reads, then approved publication, need this replacement discipline, root work and complete ownership of any supported helpers. Public Stop task / Stop Agent / Start Agent controls, completed-state recovery and broader durable Work and child coordination are later delivery stages.
User Impact
The proposed controls distinguish accepted intent, authority withdrawal, physical termination and credential cleanup. Recovery begins with compatible same-build, same-cluster retained storage; unknown creates or termination block writable replacement. Fresh execution rechecks current authority and preserves effect receipts without replaying uncertain operations. Execution may be uncapped; leases, operation deadlines and any selected drain or delivery remain finite. Public Stop defaults remain open.
This is a documentation proposal extending RFC 0027. It remains draft with a blank implementation issue pending acceptance.
Reading Guide
Evidence