From 9c3677ff671446321af6a8310572598938ab5873 Mon Sep 17 00:00:00 2001 From: Hare Date: Mon, 13 Jul 2026 22:58:54 +0900 Subject: [PATCH] ticket: stop worker before cleanup delete --- .yoi/tickets/00001KXDWAXTS/artifacts/.gitkeep | 0 .yoi/tickets/00001KXDWAXTS/item.md | 25 +++++++++++++++++++ .yoi/tickets/00001KXDWAXTS/thread.md | 7 ++++++ 3 files changed, 32 insertions(+) create mode 100644 .yoi/tickets/00001KXDWAXTS/artifacts/.gitkeep create mode 100644 .yoi/tickets/00001KXDWAXTS/item.md create mode 100644 .yoi/tickets/00001KXDWAXTS/thread.md diff --git a/.yoi/tickets/00001KXDWAXTS/artifacts/.gitkeep b/.yoi/tickets/00001KXDWAXTS/artifacts/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/.yoi/tickets/00001KXDWAXTS/item.md b/.yoi/tickets/00001KXDWAXTS/item.md new file mode 100644 index 00000000..479124c8 --- /dev/null +++ b/.yoi/tickets/00001KXDWAXTS/item.md @@ -0,0 +1,25 @@ +--- +title: 'Stop Worker before cleanup deletion' +state: 'planning' +created_at: '2026-07-13T13:58:15Z' +updated_at: '2026-07-13T13:58:45Z' +assignee: null +--- + +## 背景 + +Worker cleanup execution で selected Worker を削除すると、Runtime 側では Worker status がまだ active/running のため `delete_worker` が rejected し、workspace-server は `workspace_cleanup_worker_runtime_delete_rejected: Runtime did not delete selected Worker` を返す。 + +Cleanup の Worker delete action は、対象が cleanup plan で許可された場合、Runtime record を削除する前に Runtime 側 Worker を stopped に遷移させてから delete する必要がある。 + +## 要件 + +- Worker cleanup execution は Runtime delete の前に `stop_worker` を実行する。 +- stop が rejected/error の場合は typed diagnostic を返して registry record を削除しない。 +- stop 後の delete が成功した場合だけ backend registry row を削除する。 +- 既に stopped / missing など delete 可能なケースを壊さない。 + +## 受け入れ条件 + +- Runtime が active Worker の delete を直接 reject するケースでも cleanup execution が stop -> delete の順に実行できる。 +- workspace-server tests が通る。 diff --git a/.yoi/tickets/00001KXDWAXTS/thread.md b/.yoi/tickets/00001KXDWAXTS/thread.md new file mode 100644 index 00000000..68be69a0 --- /dev/null +++ b/.yoi/tickets/00001KXDWAXTS/thread.md @@ -0,0 +1,7 @@ + + +## 作成 + +LocalTicketBackend によって作成されました。 + +---