7.8 KiB
7.8 KiB
作成
LocalTicketBackend によって作成されました。
Intake summary
Marked ready by yoi ticket state.
State changed
Marked ready by yoi ticket state.
State changed
Ticket を workspace-panel が queued にしました。
Decision
Routing decision: implementation_ready
Reason:
- Dashboard Queue により人間が Orchestrator routing を許可した queued Ticket として確認した。
- Ticket body は
llm-worker/llm-worker-macroscrate rename、Rust import path rename、major public type rename (Worker->Engine, config/result/error names)、repo-wide references、validation を具体的に列挙している。 TicketRelationQueryは blocking relation 0 件、TicketOrchestrationPlanQueryは routing 前 plan 0 件だった。- bounded context check で repository-wide
llm-worker/llm_workerreferences を確認し、主な変更 surface はcrates/llm-worker,crates/llm-worker-macros, workspace/dependency metadata,pod/manifestimports, docs/tests/examples/Nix/Cargo.lock である。これは大きめだが mechanical rename task として明確で、責務移動や WorkerRuntime 実装は non-goal として分離されている。 - risk は API/naming churn だが、受け入れ条件と validation が明確で、Coder の bounded implementation latitude に収まる。planning return が必要な未決定事項は見つからない。
Evidence checked:
- Ticket body / thread:
item.md,thread.md。thread は create、planning->ready、ready->queued のみで未解決 blocker は記録されていない。 - Relations / orchestration plan: relation 0 件、routing 前 plan 0 件。accepted plan
orch-plan-20260625-132518-1を記録済み。 - Code context:
git grepでcrates/llm-worker,crates/llm-worker-macros,llm_worker,llm_worker_macros,Workerimports/examples/tests/docs references を確認。 - Workspace state:
/home/hare/Projects/yoi/.worktree/orchestrationは clean。queued Ticket はこの 1 件、inprogress Ticket は 0 件。
IntentPacket:
Intent:
- LLM turn-processing crate を
llm-workerからllm-engineへ rename し、public turn-engine主体型をWorkerからEngine系へ rename することで、今後の Runtime-scoped Worker concept と衝突しない package/API naming に整理する。
Binding decisions / invariants:
llm-engineは LLM turn engine。Runtime / Worker identity / process lifecycle / socket protocol / session file authority は持たない。- 責務移動は最小限。provider request/stream handling、tool-call loop、reasoning/usage/retry/continuation/history/callback semantics は変えない。
crates/llm-worker/crates/llm-worker-macrosは残さない。llm-worker/llm_worker/llm_worker_macroscompatibility alias は作らない。podcrate and dependents should compile againstllm_engine::Engineand renamed config/result/error types.- New
worker-runtimecrate or Pod->Worker migration is non-goal.
Requirements / acceptance criteria:
crates/llm-engineandcrates/llm-engine-macrosexist; old directories gone.- Cargo package/dependency names and Rust import paths use
llm-engine/llm_engineandllm-engine-macros/llm_engine_macros. - Public turn-engine type is
llm_engine::Engine, notWorker; config/result/error names no longer useWorkerfor the turn engine concept. - Repository-wide old references are gone except intentional historical/migration notes if any.
pod,manifest,yoi, examples/tests/docs/Nix/Cargo.lock update consistently.- Existing runtime behavior is unchanged except names.
- Validation target includes
cargo test -p llm-engine,cargo test -p pod,cargo check -p yoi,git diff --check,nix build .#yoi --no-link.
Implementation latitude:
- Result/output type exact names may follow Ticket guidance (
EngineRunResult,EngineRunOutput, etc.) as long as public API no longer presents LLM turn engine as Worker. - Internal file names may be renamed for clarity (
worker.rs->engine.rs) if practical; otherwise public module/API must be clean. - Historical ticket ids or changelog-like references may remain only if clearly intentional and not active API/docs guidance.
Escalate if:
- Rename requires behavior changes to provider streaming/tool-loop/history semantics.
- A compatibility alias appears necessary to make internal crates compile.
- Existing macro/test generated names cannot be renamed without broader procedural macro redesign.
cargo test -p podfailure is not the known prompt guidance snapshot caveat but a rename regression.
Validation:
cargo test -p llm-enginecargo test -p podcargo check -p yoigit diff --checknix build .#yoi --no-link- Add focused grep evidence for old names.
Current code map:
- Primary:
crates/llm-worker,crates/llm-worker-macros, workspaceCargo.toml,Cargo.lock,package.nix。 - Secondary: dependent imports in
crates/pod,crates/manifest, examples/tests/docs/resources as found by grep。 - Avoid: worker-runtime implementation, Pod runtime migration, session/socket authority changes, provider/tool-loop behavior changes。
Critical risks / reviewer focus:
- stale old crate/import/type references。
- hidden compatibility alias left behind。
- behavior changes mixed into mechanical rename。
Workerremaining as public turn-engine主体名 where it conflicts with Runtime Worker concept。- Nix/Cargo lock/hash updates missed。
Next action:
queued -> inprogressを記録してから worktree-workflow で/home/hare/Projects/yoi/.worktree/00001KVZD10ED-llm-engine-renameを作成し、multi-agent-workflow で Coder/Reviewer sibling loop に進める。
State changed
Orchestrator acceptance: queued -> inprogress
- 直前確認で
TicketShowは statequeued、blocking relation は 0 件、accepted planorch-plan-20260625-132518-1を確認した。 - routing decision と IntentPacket は Ticket thread に記録済み。
- orchestration worktree は clean。この Ticket 用 worktree/branch はまだ作成していない。
- これ以降に worktree-workflow で
/home/hare/Projects/yoi/.worktree/00001KVZD10ED-llm-engine-renameを作成し、multi-agent-workflow に接続する。
Implementation report
Implementation orchestration update:
- worktree-workflow に従い、implementation worktree
/home/hare/Projects/yoi/.worktree/00001KVZD10ED-llm-engine-renameと branchwork/00001KVZD10ED-llm-engine-renameを作成した。 - child worktree では tracked
.yoiproject records を見える状態にし、.yoi/memory、local/runtime/log/lock/secret-like.yoipaths を sparse-checkout で除外する方針にした。 - Coder Pod
yoi-coder-00001KVZD10ED-llm-engineを sibling として起動した。write scope は child worktree に限定し、runtime workspace root/home/hare/Projects/yoiは startup 要件を満たすため non-recursive read のみにした。 - Coder には root/original workspace と orchestration worktree で read/write/validation/git operation を行わないよう明示した。