## 作成 LocalTicketBackend によって作成されました。 --- ## Decision Follow-up to 00001KX6BPY7M. Deletion/cleanup policy is intentionally manual-first: - No automatic prune based on age or capacity in this ticket. - Backend presents a plan with reasons, blockers, linked Worker/Workdir ids, retention, pinned state, and expected revision/digest. - User or explicit orchestration authority selects targets and executes cleanup. - Pinned Worker history is protected. - Clean workdir files are cache and may be manually cleaned when not linked to running Workers. - Dirty orphan workdirs require recovery/discard decision, not normal prune. --- ## Decision Clarification: because 00001KX6BPY7M is already in progress, this follow-up ticket explicitly owns implementation of Worker pinned state beyond merely consuming it in prune logic. Scope added here: - Persist pinned flag or equivalent Worker retention field in Backend registry. - Add Backend Worker pin/unpin mutation API. - Include pinned state in Worker list/detail and prune plan. - Ensure manual cleanup execution rejects pinned Worker history and protected linked records. --- ## Decision Lifecycle clarification: - Worker lifecycle should stay simple: running -> stopped -> delete. - Do not introduce archived as a Worker lifecycle state in this ticket. - Worker is the storage unit for Session/transcript history; deleting a Worker deletes or removes access to that history. - Pinned remains necessary and blocks Worker deletion. - Workdir files are cache and should be manually deletable. - Dirty workdir deletion is allowed only with explicit confirmation that changes will be discarded. - Compression/archive storage for Session history is out of scope and should be a separate storage policy if needed later. --- ## Intake summary Marked ready by `yoi ticket state`. --- ## State changed Marked ready by `yoi ticket state`. ---