From 490d5ed674c8c9ae8ff0c699d46753a81ae6197c Mon Sep 17 00:00:00 2001 From: Hare Date: Mon, 13 Jul 2026 19:59:02 +0900 Subject: [PATCH] ticket: preserve typed workdir errors --- .yoi/tickets/00001KXDJ1V3D/artifacts/.gitkeep | 0 .yoi/tickets/00001KXDJ1V3D/item.md | 23 +++++++++++++++++++ .yoi/tickets/00001KXDJ1V3D/thread.md | 7 ++++++ 3 files changed, 30 insertions(+) create mode 100644 .yoi/tickets/00001KXDJ1V3D/artifacts/.gitkeep create mode 100644 .yoi/tickets/00001KXDJ1V3D/item.md create mode 100644 .yoi/tickets/00001KXDJ1V3D/thread.md diff --git a/.yoi/tickets/00001KXDJ1V3D/artifacts/.gitkeep b/.yoi/tickets/00001KXDJ1V3D/artifacts/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/.yoi/tickets/00001KXDJ1V3D/item.md b/.yoi/tickets/00001KXDJ1V3D/item.md new file mode 100644 index 00000000..6c1cc9dc --- /dev/null +++ b/.yoi/tickets/00001KXDJ1V3D/item.md @@ -0,0 +1,23 @@ +--- +title: 'Preserve typed Workdir not-found errors' +state: 'planning' +created_at: '2026-07-13T10:58:32Z' +updated_at: '2026-07-13T10:59:00Z' +assignee: null +--- + +## 背景 + +Workdir detail / sync で Runtime 側に存在しない Workdir を問い合わせた時、worker-runtime は `WorkingDirectoryDiagnostic { code: working_directory_not_found }` を一度作っているにもかかわらず、RuntimeError::InvalidRequest に変換して REST error code が `invalid_request` になっている。workspace-server 側は diagnostic code の substring match で not_found を推測しており、typed error が失われて `unknown` になる。 + +## 要件 + +- Worker Runtime REST error response に Workdir diagnostic code を preserve する。 +- workspace-server は diagnostic message / substring ではなく typed diagnostic code の exact match で Workdir not-found を扱う。 +- Runtime に存在しない Workdir は `unknown` ではなく `not_found` / NotFound として扱える。 + +## 受け入れ条件 + +- `working_directory_not_found` が REST response の error.code として返る。 +- workspace-server の `workdir_status_from_runtime_miss` が exact code match を使う。 +- worker-runtime / workspace-server の関連テストが通る。 diff --git a/.yoi/tickets/00001KXDJ1V3D/thread.md b/.yoi/tickets/00001KXDJ1V3D/thread.md new file mode 100644 index 00000000..acac1215 --- /dev/null +++ b/.yoi/tickets/00001KXDJ1V3D/thread.md @@ -0,0 +1,7 @@ + + +## 作成 + +LocalTicketBackend によって作成されました。 + +---