ticket: close embedded runtime fs-store
This commit is contained in:
parent
888e7b68e5
commit
44be40451b
|
|
@ -1,8 +1,8 @@
|
||||||
---
|
---
|
||||||
title: 'Workspace Backendのembedded Runtimeをfs-store永続化に切り替える'
|
title: 'Workspace Backendのembedded Runtimeをfs-store永続化に切り替える'
|
||||||
state: 'inprogress'
|
state: 'closed'
|
||||||
created_at: '2026-06-28T13:34:29Z'
|
created_at: '2026-06-28T13:34:29Z'
|
||||||
updated_at: '2026-06-28T19:15:12Z'
|
updated_at: '2026-06-28T19:16:31Z'
|
||||||
assignee: null
|
assignee: null
|
||||||
queued_by: 'workspace-panel'
|
queued_by: 'workspace-panel'
|
||||||
queued_at: '2026-06-28T17:12:16Z'
|
queued_at: '2026-06-28T17:12:16Z'
|
||||||
|
|
|
||||||
27
.yoi/tickets/00001KW76E8EG/resolution.md
Normal file
27
.yoi/tickets/00001KW76E8EG/resolution.md
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
Workspace Backend embedded Runtime を memory-backed から fs-store backed `worker-runtime` へ切り替え、reviewer approval 後に orchestration branch へ merge した。
|
||||||
|
|
||||||
|
実装内容:
|
||||||
|
- `workspace-server` で `worker-runtime` の `fs-store` feature を有効化。
|
||||||
|
- `ServerConfig` に `embedded_runtime_store_root` を追加。
|
||||||
|
- default store root を user data 配下の `workspace-server/<workspace_id>/embedded-runtime` に設定し、project records / `.yoi/tickets` と混ぜない設計にした。
|
||||||
|
- 通常の `WorkspaceApi::new` / `new_with_execution_backend` 経路を fs-store backed `EmbeddedWorkerRuntime::new_fs_store_with_execution_backend(...)` に切り替え。
|
||||||
|
- `Runtime::with_fs_store_and_execution_backend(...)` を使う constructor を追加。
|
||||||
|
- Backend restart 後に Runtime catalog / Worker snapshot / transcript / ConfigBundle store が復元されることを focused tests で確認。
|
||||||
|
- restart 後の live execution handle は connected として偽装せず、stale/unconnected diagnostic/projection として扱う。
|
||||||
|
- Browser-facing API に Runtime store root / raw path / execution handle を出さないことを確認。
|
||||||
|
- production path が memory-backed runtime に戻らないよう通常 constructor を fs-store backed にした。
|
||||||
|
|
||||||
|
Integrated commit:
|
||||||
|
- `736b05c6 feat: persist embedded workspace runtime in fs store`
|
||||||
|
- merge: `888e7b68 merge: embedded runtime fs-store`
|
||||||
|
|
||||||
|
Validation:
|
||||||
|
- `cargo fmt --all --check`: success
|
||||||
|
- `cargo test -p yoi-workspace-server`: success (`38 passed`)
|
||||||
|
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
|
||||||
|
- `cargo check -p yoi`: success
|
||||||
|
- `git diff --check`: success
|
||||||
|
- `nix build .#yoi --no-link`: success
|
||||||
|
|
||||||
|
Operational note:
|
||||||
|
- User instructed not to use `StopPod` for now after repeated stop/hang symptoms. Cleanup will skip role-Pod shutdown and remove only child implementation worktree / branch.
|
||||||
|
|
@ -259,3 +259,94 @@ read-only 方針に合わせ、worktree 内のソース/Ticket は変更せず
|
||||||
- `nix build .#yoi` は reviewer 側では再実行していません。ただし `Cargo.lock` / `package.nix` の更新と Rust 側の check/test は整合しており、報告されているビルド系コマンドは十分 plausible と判断します。
|
- `nix build .#yoi` は reviewer 側では再実行していません。ただし `Cargo.lock` / `package.nix` の更新と Rust 側の check/test は整合しており、報告されているビルド系コマンドは十分 plausible と判断します。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<!-- event: implementation_report author: yoi-orchestrator at: 2026-06-28T19:16:09Z -->
|
||||||
|
|
||||||
|
## Implementation report
|
||||||
|
|
||||||
|
Merge / validation report:
|
||||||
|
|
||||||
|
Implementation branch was integrated into the orchestration branch after reviewer approval.
|
||||||
|
|
||||||
|
Integrated commit:
|
||||||
|
- `736b05c6 feat: persist embedded workspace runtime in fs store`
|
||||||
|
|
||||||
|
Merge commit:
|
||||||
|
- `888e7b68 merge: embedded runtime fs-store`
|
||||||
|
|
||||||
|
Validation in orchestration worktree:
|
||||||
|
- `cargo fmt --all --check`: success
|
||||||
|
- `cargo test -p yoi-workspace-server`: success (`38 passed`)
|
||||||
|
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success (`26 passed` + rest server tests)
|
||||||
|
- `cargo check -p yoi`: success
|
||||||
|
- `git diff --check`: success
|
||||||
|
- `nix build .#yoi --no-link`: success
|
||||||
|
|
||||||
|
Outcome:
|
||||||
|
- Workspace Backend embedded Runtime now uses fs-store backed `worker-runtime` for normal `WorkspaceApi` construction.
|
||||||
|
- `ServerConfig` carries `embedded_runtime_store_root`, with default user-data/workspace-id local state path rather than project records / `.yoi/tickets`.
|
||||||
|
- Restart restores catalog / Worker snapshot / ConfigBundle / transcript.
|
||||||
|
- Restart does not falsely restore live execution handles as connected; stale/unconnected diagnostic/projection remains explicit.
|
||||||
|
- Browser-facing APIs do not expose Runtime store root / raw path / execution handle.
|
||||||
|
- Production path no longer uses `new_memory_with_execution_backend`; memory constructor remains for explicit low-level/test use only.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- event: state_changed author: yoi-orchestrator at: 2026-06-28T19:16:18Z from: inprogress to: done reason: implementation_merged_and_validated field: state -->
|
||||||
|
|
||||||
|
## State changed
|
||||||
|
|
||||||
|
Reviewer approval後に implementation branch を orchestration branch へ merge し、要求された validation が成功したため done に遷移する。
|
||||||
|
|
||||||
|
Validation:
|
||||||
|
- `cargo fmt --all --check`: success
|
||||||
|
- `cargo test -p yoi-workspace-server`: success (`38 passed`)
|
||||||
|
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
|
||||||
|
- `cargo check -p yoi`: success
|
||||||
|
- `git diff --check`: success
|
||||||
|
- `nix build .#yoi --no-link`: success
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- event: state_changed author: hare at: 2026-06-28T19:16:31Z from: done to: closed reason: closed field: state -->
|
||||||
|
|
||||||
|
## State changed
|
||||||
|
|
||||||
|
Ticket を closed にしました。
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- event: close author: hare at: 2026-06-28T19:16:31Z status: closed -->
|
||||||
|
|
||||||
|
## 完了
|
||||||
|
|
||||||
|
Workspace Backend embedded Runtime を memory-backed から fs-store backed `worker-runtime` へ切り替え、reviewer approval 後に orchestration branch へ merge した。
|
||||||
|
|
||||||
|
実装内容:
|
||||||
|
- `workspace-server` で `worker-runtime` の `fs-store` feature を有効化。
|
||||||
|
- `ServerConfig` に `embedded_runtime_store_root` を追加。
|
||||||
|
- default store root を user data 配下の `workspace-server/<workspace_id>/embedded-runtime` に設定し、project records / `.yoi/tickets` と混ぜない設計にした。
|
||||||
|
- 通常の `WorkspaceApi::new` / `new_with_execution_backend` 経路を fs-store backed `EmbeddedWorkerRuntime::new_fs_store_with_execution_backend(...)` に切り替え。
|
||||||
|
- `Runtime::with_fs_store_and_execution_backend(...)` を使う constructor を追加。
|
||||||
|
- Backend restart 後に Runtime catalog / Worker snapshot / transcript / ConfigBundle store が復元されることを focused tests で確認。
|
||||||
|
- restart 後の live execution handle は connected として偽装せず、stale/unconnected diagnostic/projection として扱う。
|
||||||
|
- Browser-facing API に Runtime store root / raw path / execution handle を出さないことを確認。
|
||||||
|
- production path が memory-backed runtime に戻らないよう通常 constructor を fs-store backed にした。
|
||||||
|
|
||||||
|
Integrated commit:
|
||||||
|
- `736b05c6 feat: persist embedded workspace runtime in fs store`
|
||||||
|
- merge: `888e7b68 merge: embedded runtime fs-store`
|
||||||
|
|
||||||
|
Validation:
|
||||||
|
- `cargo fmt --all --check`: success
|
||||||
|
- `cargo test -p yoi-workspace-server`: success (`38 passed`)
|
||||||
|
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
|
||||||
|
- `cargo check -p yoi`: success
|
||||||
|
- `git diff --check`: success
|
||||||
|
- `nix build .#yoi --no-link`: success
|
||||||
|
|
||||||
|
Operational note:
|
||||||
|
- User instructed not to use `StopPod` for now after repeated stop/hang symptoms. Cleanup will skip role-Pod shutdown and remove only child implementation worktree / branch.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user