2.8 KiB
2.8 KiB
作成
LocalTicketBackend によって作成されました。
Intake summary
Marked ready by yoi ticket state.
State changed
Marked ready by yoi ticket state.
State changed
Ticket を yoi ticket が queued にしました。
State changed
State changed to inprogress.
Implementation report
runtime workspace と process cwd を分離する実装を行った。
--workspaceは runtime workspace / project context の基準として維持し、child process の current directory とは分離した。SpawnConfig/ Ticket role launch plan は内部値としてcwdを持ち、CLI argument にはせずCommand::current_dirにのみ使うようにした。- Panel Orchestrator launch/restore は
workspace_root = original workspace、cwd = dedicated orchestration worktreeとして起動する。 SpawnPod.cwdは child process cwd 指定として扱い、--workspaceは spawner の runtime workspace を渡すままにした。- Pod entrypoint は process cwd を起動時に snapshot し、workspace root とは別に Pod construction へ渡す。
--tool-cwdは作らない。 pwdとcwdの意図的な意味差がない主要 runtime path はcwdに統一した。- metadata snapshot restore では、現在の launch manifest の scope/delegation scope を復元後 manifest に反映できるようにした。
検証:
cargo checkcargo test -p clientcargo test -p pod entrypoint::tests:: -- --nocapturecargo test -p pod spawn_pod_launches_runtime_in_workspace_and_process_cwd -- --nocapturecargo test -p pod spawn_pod_omitted_cwd_preserves_spawner_cwd -- --nocapturecargo fmt --checkgit diff --checkyoi ticket doctornix build .#yoi
補足:
cargo test -p toolsは doctest の既存不整合 (core_builtin_toolsの引数数) で失敗したため、この実装の検証対象からは外した。通常 unit/integration tests は通っている。
State changed
State changed to done.