From 0bf5b117dad516389aa4ab932801ae6a981f2d8c Mon Sep 17 00:00:00 2001 From: Hare Date: Thu, 25 Jun 2026 23:15:08 +0900 Subject: [PATCH] ticket: route worker crate rename task --- .../artifacts/orchestration-plan.jsonl | 1 + .yoi/tickets/00001KVZG9BMS/item.md | 2 +- .yoi/tickets/00001KVZG9BMS/thread.md | 82 +++++++++++++++++++ 3 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 .yoi/tickets/00001KVZG9BMS/artifacts/orchestration-plan.jsonl diff --git a/.yoi/tickets/00001KVZG9BMS/artifacts/orchestration-plan.jsonl b/.yoi/tickets/00001KVZG9BMS/artifacts/orchestration-plan.jsonl new file mode 100644 index 00000000..87cc2559 --- /dev/null +++ b/.yoi/tickets/00001KVZG9BMS/artifacts/orchestration-plan.jsonl @@ -0,0 +1 @@ +{"id":"orch-plan-20260625-141406-1","ticket_id":"00001KVZG9BMS","kind":"accepted_plan","accepted_plan":{"summary":"Ticket `00001KVZG9BMS` は prerequisite `00001KVZD10ED` が done になったため implementation_ready。専用 worktree `/home/hare/Projects/yoi/.worktree/00001KVZG9BMS-worker-crate-rename` と branch `work/00001KVZG9BMS-worker-crate-rename` で、`crates/pod` を `crates/worker` へ rename し、public execution-unit API を Worker terminology へ整理する。`pod-store`/`pod-registry` standalone rename、worker-runtime実装、socket/session互換の完全削除は non-goals。","branch":"work/00001KVZG9BMS-worker-crate-rename","worktree":"/home/hare/Projects/yoi/.worktree/00001KVZG9BMS-worker-crate-rename","role_plan":"Orchestrator: accept/routing, worktree creation, final integration/validation/cleanup. Coder: repository-wide crate/API rename in dedicated child worktree. Reviewer: read-only review focusing on mechanical rename completeness, CLI/process launch consistency, no pod-store/registry rename, no responsibility rewrite, and validation evidence."},"author":"yoi-orchestrator","at":"2026-06-25T14:14:06Z"} diff --git a/.yoi/tickets/00001KVZG9BMS/item.md b/.yoi/tickets/00001KVZG9BMS/item.md index cebbe0f2..86068054 100644 --- a/.yoi/tickets/00001KVZG9BMS/item.md +++ b/.yoi/tickets/00001KVZG9BMS/item.md @@ -2,7 +2,7 @@ title: 'pod crateをworker crateへ改名する' state: 'queued' created_at: '2026-06-25T13:42:37Z' -updated_at: '2026-06-25T14:13:35Z' +updated_at: '2026-06-25T14:14:52Z' assignee: null queued_by: 'workspace-panel' queued_at: '2026-06-25T14:13:35Z' diff --git a/.yoi/tickets/00001KVZG9BMS/thread.md b/.yoi/tickets/00001KVZG9BMS/thread.md index f88188aa..a5e1f5a5 100644 --- a/.yoi/tickets/00001KVZG9BMS/thread.md +++ b/.yoi/tickets/00001KVZG9BMS/thread.md @@ -30,4 +30,86 @@ Marked ready by `yoi ticket state`. Ticket を `workspace-panel` が queued にしました。 +--- + + + +## Decision + +Routing decision: implementation_ready + +Reason: +- Dashboard Queue により人間が Orchestrator routing を許可した queued Ticket として確認した。 +- outgoing `depends_on` は `00001KVZD10ED` で、`00001KVZD10ED` は done / merged / reviewed / validated 済み。`TicketShow` derived blockers は空で、implementation acceptance blocker は残っていない。 +- incoming dependent `00001KVZBCQH4` は後続 worker-runtime creation であり、この Ticket の acceptance blocker ではない。 +- Ticket body は `crates/pod` -> `crates/worker` crate/package/import rename、public execution-unit API rename、CLI/process surface update、non-goals、validation を具体的に列挙している。 +- bounded context check で current active references to `crates/pod`, `pod::`, package `pod`, `yoi pod` process entrypoint, tests/docs/Nix を確認した。変更量は大きいが mechanical rename + bounded public surface alignment として進められる。 +- CLI/process surface は risk だが、Ticket は backward compatibility alias 不要、dogfooding runtime/spawn path/scripts/tests 影響を明示処理することを要求している。設計未決定というより implementation slice 内の bounded choice と判断する。 + +Evidence checked: +- Ticket body / thread: `item.md`, `thread.md`。thread は create、planning->ready、ready->queued のみで未解決 blocker は記録されていない。 +- Relations / orchestration plan: outgoing depends_on `00001KVZD10ED` is done; incoming dependent `00001KVZBCQH4`; routing 前 plan 0 件。accepted plan `orch-plan-20260625-141406-1` を記録済み。 +- Code context: `git grep` で `crates/pod`, `pod::`, package/dependency `pod`, `yoi pod`, `Pod` public API refs を確認。 +- Workspace state: `/home/hare/Projects/yoi/.worktree/orchestration` は clean。queued Ticket はこの 1 件、inprogress Ticket は 0 件。 + +IntentPacket: + +Intent: +- 現在の single execution-unit host crate `pod` を `worker` に rename し、実行単位としての `worker::Worker` と LLM turn engine `llm_engine::Engine` の命名境界を揃える。 + +Binding decisions / invariants: +- This is a rename / API terminology alignment Ticket, not a responsibility rewrite. +- `worker` crate remains the current single Worker host: input handling, llm-engine integration, event emission, session/transcript compatibility, tool registry, workflow integration, legacy socket compatibility. +- Do not implement `worker-runtime` crate or multi-worker Runtime API. +- Do not standalone-rename `pod-store` / `pod-registry` to `worker-store` / `worker-registry` in this Ticket. +- Do not change provider request/tool-call/history semantics. +- Do not create `pod` crate/import compatibility alias. +- Existing on-disk/socket/session compatibility may retain legacy `pod` strings only where explicitly legacy/internal and documented. + +Requirements / acceptance criteria: +- `crates/worker` exists; `crates/pod` does not remain. +- Cargo package/import path are `worker`. +- Public execution-unit type is `worker::Worker`, not `pod::Pod`. +- Active repository references to `pod` crate / `pod::` import / `crates/pod` are gone except intentional legacy context. +- Dependent crates compile against `worker` crate. +- `llm_engine::Engine` vs `worker::Worker` boundary is clear in code/docs/comments. +- Existing process/socket/session compatibility path still works or is explicitly updated without old-name alias. +- `pod-store` / `pod-registry` are not renamed as standalone crates. +- Validation target includes `cargo test -p worker`, `cargo test -p yoi` or relevant CLI tests, `cargo check -p yoi`, `git diff --check`, `nix build .#yoi --no-link`. + +Implementation latitude: +- Exact CLI command spelling may be updated according to Ticket requirement, but no backward alias should be added unless a hard blocker appears. If command migration threatens current runtime dogfooding assumptions, escalate. +- Internal legacy file/socket/session names may remain only when required for compatibility and must be clearly legacy/internal, not active API guidance. +- Type/module rename can be staged mechanically; prioritize compile/test correctness and grep evidence. + +Escalate if: +- Rename requires broad runtime architecture rewrite or worker-runtime implementation. +- Current process launch/spawn mechanics cannot work without a compatibility `pod` command/alias. +- `pod-store` / `pod-registry` must be renamed for compile correctness. +- Session/socket/on-disk migration would be required beyond explicit legacy compatibility labels. +- Behavior changes unrelated to naming are needed. + +Validation: +- `cargo test -p worker` +- `cargo test -p yoi` or focused process/CLI tests +- `cargo check -p yoi` +- `git diff --check` +- `nix build .#yoi --no-link` +- grep evidence for stale active references. + +Current code map: +- Primary: `crates/pod`, workspace `Cargo.toml`, dependent crates (`crates/yoi`, `crates/tui`, workspace-server/client as discovered), tests/docs/resources, `Cargo.lock`, `package.nix`. +- Avoid: `pod-store` / `pod-registry` standalone rename, worker-runtime implementation, root/original workspace operations. + +Critical risks / reviewer focus: +- stale active `pod` crate/import/directory references. +- hidden compatibility alias. +- breaking runtime process launch / spawn command path. +- accidentally renaming persistence crates out of scope. +- behavior changes mixed into mechanical rename. +- confusion between `llm_engine::Engine` and `worker::Worker` responsibilities. + +Next action: +- `queued -> inprogress` を記録してから worktree-workflow で `/home/hare/Projects/yoi/.worktree/00001KVZG9BMS-worker-crate-rename` を作成し、multi-agent-workflow で Coder/Reviewer sibling loop に進める。 + ---