ticket: close worker adapter

This commit is contained in:
Keisuke Hirata 2026-06-28 06:45:04 +09:00
parent c3ed223dfd
commit 235cd88db9
No known key found for this signature in database
3 changed files with 145 additions and 2 deletions

View File

@ -1,8 +1,8 @@
---
title: 'embedded worker-runtimeをworker crate実行に接続する'
state: 'inprogress'
state: 'closed'
created_at: '2026-06-27T18:26:46Z'
updated_at: '2026-06-27T21:42:24Z'
updated_at: '2026-06-27T21:45:00Z'
assignee: null
queued_by: 'workspace-panel'
queued_at: '2026-06-27T19:06:30Z'

View File

@ -0,0 +1,35 @@
embedded `worker-runtime` を既存 `worker` crate の実行 lifecycle に接続する adapter を実装し、reviewer approval 後に orchestration branch へ merge した。
実装内容:
- `worker` crate に `runtime-adapter` feature と `WorkerRuntimeExecutionBackend` adapter を追加。
- `worker-runtime``worker` に依存しない下位境界のまま維持し、crate dependency cycle を回避。
- embedded Runtime 作成時に `workspace-server` が adapter を install。
- Backend Worker input API から embedded Runtime execution backend に委譲し、既存 Worker run lifecycle (`Method::Run`) に接続。
- Worker の `protocol::Event` を Runtime observation bus / transcript projection に bridge。
- builtin profile selector double-prefix を修正。
- run_state/status projection を実 Worker lifecycle event に合わせて更新。
- spawn execution failure は Browser-facing API で sanitized `Rejected` diagnostic として扱い、failed/unconnected 状態を input-capable に見せない。
- fake/providerless/canned assistant response は導入していない。
- Browser-facing API に raw worker handle / execution handle / socket / session path / credential / secret ref / raw manifest path を出していない。
- `can_stream_events` / `can_read_bounded_transcript` public capability は復活させていない。
Integrated commits:
- `18526ee36264610048f48b07b5db50ce86852fd2 feat: connect runtime worker execution adapter`
- `9069b035041d17e7c52a454a7563cc5f0b7e1f61 fix: connect embedded runtime input lifecycle`
- `7e29ff5ec99dcc748fa5a511cda5bae31fec124b fix: reject embedded spawn execution failures`
- merge: `c3ed223d merge: worker runtime worker adapter`
Validation:
- `cargo fmt --all --check`: success
- `cargo test -p worker --features runtime-adapter runtime_adapter`: success
- `cargo test -p worker-runtime --features ws-server`: success
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
- `cargo test -p yoi-workspace-server`: success
- `cargo check -p yoi`: success
- `git diff --check`: success
- `nix build .#yoi --no-link`: success
Known non-blocking warning:
- `cargo test -p yoi-workspace-server` reports existing warning `field next_sequence is never read` in `crates/workspace-server/src/companion.rs`.
Cleanup は child implementation worktree / branch と related role Pods のみを対象に実施する。

View File

@ -485,3 +485,111 @@ approve
検証は指示通り read-only の静的確認のみで、テスト実行やファイル変更はしていない。
---
<!-- event: implementation_report author: yoi-orchestrator at: 2026-06-27T21:44:40Z -->
## Implementation report
Merge / validation report:
Implementation branch was integrated into the orchestration branch after reviewer approval.
Integrated commits:
- `18526ee36264610048f48b07b5db50ce86852fd2 feat: connect runtime worker execution adapter`
- `9069b035041d17e7c52a454a7563cc5f0b7e1f61 fix: connect embedded runtime input lifecycle`
- `7e29ff5ec99dcc748fa5a511cda5bae31fec124b fix: reject embedded spawn execution failures`
Merge commit:
- `c3ed223d merge: worker runtime worker adapter`
Validation in orchestration worktree:
- `cargo fmt --all --check`: success
- `cargo test -p worker --features runtime-adapter runtime_adapter`: success
- `cargo test -p worker-runtime --features ws-server`: success
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
- `cargo test -p yoi-workspace-server`: success
- `cargo check -p yoi`: success
- `git diff --check`: success
- `nix build .#yoi --no-link`: success
Known non-blocking warning:
- `cargo test -p yoi-workspace-server` reports existing warning `field next_sequence is never read` in `crates/workspace-server/src/companion.rs`.
Outcome:
- Embedded Runtime now installs a `worker` crate execution adapter via `worker/runtime-adapter` feature without making `worker-runtime` depend on `worker`.
- Backend input path delegates to the Runtime execution backend and reaches real Worker run lifecycle.
- `protocol::Event` output bridges to Runtime observation / transcript projection.
- Browser-facing spawn failure is reported as sanitized rejected diagnostic, not accepted fake output.
- Failed/unconnected execution states are not projected as input-capable.
- No public `can_stream_events` / `can_read_bounded_transcript` capability flags were revived.
---
<!-- event: state_changed author: yoi-orchestrator at: 2026-06-27T21:44:46Z 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 worker --features runtime-adapter runtime_adapter`: success
- `cargo test -p worker-runtime --features ws-server`: success
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
- `cargo test -p yoi-workspace-server`: success
- `cargo check -p yoi`: success
- `git diff --check`: success
- `nix build .#yoi --no-link`: success
---
<!-- event: state_changed author: hare at: 2026-06-27T21:45:00Z from: done to: closed reason: closed field: state -->
## State changed
Ticket を closed にしました。
---
<!-- event: close author: hare at: 2026-06-27T21:45:00Z status: closed -->
## 完了
embedded `worker-runtime` を既存 `worker` crate の実行 lifecycle に接続する adapter を実装し、reviewer approval 後に orchestration branch へ merge した。
実装内容:
- `worker` crate に `runtime-adapter` feature と `WorkerRuntimeExecutionBackend` adapter を追加。
- `worker-runtime``worker` に依存しない下位境界のまま維持し、crate dependency cycle を回避。
- embedded Runtime 作成時に `workspace-server` が adapter を install。
- Backend Worker input API から embedded Runtime execution backend に委譲し、既存 Worker run lifecycle (`Method::Run`) に接続。
- Worker の `protocol::Event` を Runtime observation bus / transcript projection に bridge。
- builtin profile selector double-prefix を修正。
- run_state/status projection を実 Worker lifecycle event に合わせて更新。
- spawn execution failure は Browser-facing API で sanitized `Rejected` diagnostic として扱い、failed/unconnected 状態を input-capable に見せない。
- fake/providerless/canned assistant response は導入していない。
- Browser-facing API に raw worker handle / execution handle / socket / session path / credential / secret ref / raw manifest path を出していない。
- `can_stream_events` / `can_read_bounded_transcript` public capability は復活させていない。
Integrated commits:
- `18526ee36264610048f48b07b5db50ce86852fd2 feat: connect runtime worker execution adapter`
- `9069b035041d17e7c52a454a7563cc5f0b7e1f61 fix: connect embedded runtime input lifecycle`
- `7e29ff5ec99dcc748fa5a511cda5bae31fec124b fix: reject embedded spawn execution failures`
- merge: `c3ed223d merge: worker runtime worker adapter`
Validation:
- `cargo fmt --all --check`: success
- `cargo test -p worker --features runtime-adapter runtime_adapter`: success
- `cargo test -p worker-runtime --features ws-server`: success
- `cargo test -p worker-runtime --features "ws-server fs-store"`: success
- `cargo test -p yoi-workspace-server`: success
- `cargo check -p yoi`: success
- `git diff --check`: success
- `nix build .#yoi --no-link`: success
Known non-blocking warning:
- `cargo test -p yoi-workspace-server` reports existing warning `field next_sequence is never read` in `crates/workspace-server/src/companion.rs`.
Cleanup は child implementation worktree / branch と related role Pods のみを対象に実施する。
---