yoi/.yoi/tickets/00001KXTKS0VG/item.md

1.4 KiB

title state created_at updated_at assignee queued_by queued_at
Preserve Workdirs when Workers stop or delete closed 2026-07-18T12:38:47Z 2026-07-18T12:49:12Z null yoi ticket 2026-07-18T12:39:18Z

背景

Backend-managed Workdir は Worker とは独立した再利用可能 resource として扱う。現在は Worker stop/delete 時に runtime が Worker の working directory binding を materializer.cleanup してしまい、workspace-server 側の Workdir record だけが残って corrupted と表示される。

Worker lifecycle と Workdir lifecycle を分離し、Worker の削除は Workdir の占有を解放するだけにする。Workdir 実体の削除は明示的な Workdir cleanup/delete API に限定する。

要件

  • Worker stop/delete では Workdir 実体を削除しない。
  • Worker spawn failure rollback では、その spawn request で新規 materialize した Workdir だけ cleanup する。
  • 既存 Workdir に bind した spawn failure では Workdir を cleanup しない。
  • Workdir cleanup API 経由の明示 cleanup は維持する。

受け入れ条件

  • stop_worker 後も Worker に bind されていた Workdir 実体が残る。
  • Worker spawn failure で既存 Workdir bind が使われた場合、Workdir 実体は残る。
  • Worker spawn failure で新規 materialize した場合だけ rollback cleanup される。
  • focused worker-runtime tests が通る。