diff --git a/.yoi/tickets/00001KWW9DYH4/item.md b/.yoi/tickets/00001KWW9DYH4/item.md index d40a7bc8..cb2ba290 100644 --- a/.yoi/tickets/00001KWW9DYH4/item.md +++ b/.yoi/tickets/00001KWW9DYH4/item.md @@ -1,8 +1,8 @@ --- title: 'Add local Git worktree Execution Workspace materializer' -state: 'inprogress' +state: 'closed' created_at: '2026-07-06T18:00:46Z' -updated_at: '2026-07-06T19:23:01Z' +updated_at: '2026-07-06T19:24:25Z' assignee: null queued_by: 'workspace-panel' queued_at: '2026-07-06T18:28:26Z' diff --git a/.yoi/tickets/00001KWW9DYH4/resolution.md b/.yoi/tickets/00001KWW9DYH4/resolution.md new file mode 100644 index 00000000..158108c8 --- /dev/null +++ b/.yoi/tickets/00001KWW9DYH4/resolution.md @@ -0,0 +1,32 @@ +完了。 + +実装内容: +- Runtime-side Execution Workspace materialization boundary を追加した。 +- v0 local Git materializer として、configured repository から resolved commit / tree evidence を取り、Runtime root 配下 `execution-workspaces//root/` に detached Git worktree を作成するようにした。 +- Worker spawn 時の workspace root / cwd / scope は source repository root ではなく materialized worktree path を使うようにした。 +- 同一 source repository に対する複数 Worker が distinct materialized paths を使えるようにした。 +- dirty source state は `clean_point_only` policy で拒否し、remote URI / non-Git provider / unsupported policy は typed diagnostics で fail closed するようにした。 +- allocation evidence / cleanup target / cleanup policy / status を記録し、Worker stop cleanup hook で worktree cleanup と record update を行うようにした。 +- Browser/API-facing spawn boundary は raw `ExecutionWorkspaceRequest` / `local_path` を受け取らないようにし、safe `repository_id` / optional `selector` から host/server 内部で materialization request を構築するようにした。 +- Focused worker-runtime / workspace-server tests を追加した。 + +主な commit / merge: +- implementation: `8b7a5da0 feat: materialize execution workspaces` +- review fix: `c90ebf24 fix: keep execution workspace paths internal` +- merge into orchestration: `c4cdf1c3 merge: execution workspace materializer` + +Review: +- 初回 external review は request_changes。 +- follow-up external review は approve。merge-blocking issue なし。 + +Final validation in Orchestrator worktree: +- `git diff --check`: pass +- `cargo test -p worker-runtime --features ws-server,fs-store`: pass(34 lib tests + 5 main tests + doc tests) +- `cargo test -p yoi-workspace-server`: pass(65 lib tests + 2 main tests) +- `cargo check -p yoi`: pass +- `cd web/workspace && deno task check`: pass(0 errors / 0 warnings) +- `cd web/workspace && deno task test`: pass(15 tests) +- `yoi ticket doctor`: ok + +未実行: +- `nix build .#yoi --no-link` は Cargo.lock / dependency / resource packaging / Nix 変更ではないため未実行。 \ No newline at end of file diff --git a/.yoi/tickets/00001KWW9DYH4/thread.md b/.yoi/tickets/00001KWW9DYH4/thread.md index de257ded..90542c72 100644 --- a/.yoi/tickets/00001KWW9DYH4/thread.md +++ b/.yoi/tickets/00001KWW9DYH4/thread.md @@ -288,3 +288,77 @@ Non-blocking note: No merge-blocking issues found. --- + + + +## State changed + +Merge/validation acceptance: + +- Follow-up external review approved the implementation after blocker fix。 +- Implementation branch `work/00001KWW9DYH4-execution-workspace-materializer` was merged into the orchestration branch with merge commit `c4cdf1c3 merge: execution workspace materializer`。 +- Final validation in Orchestrator worktree passed: + - `git diff --check`: pass + - `cargo test -p worker-runtime --features ws-server,fs-store`: pass(34 lib tests + 5 main tests + doc tests) + - `cargo test -p yoi-workspace-server`: pass(65 lib tests + 2 main tests) + - `cargo check -p yoi`: pass + - `cd web/workspace && deno task check`: pass(0 errors / 0 warnings) + - `cd web/workspace && deno task test`: pass(15 tests) + - `yoi ticket doctor`: ok +- `nix build .#yoi --no-link` は Cargo.lock / dependency / resource packaging / Nix 変更ではないため未実行。 + +Implementation commits: +- `8b7a5da0 feat: materialize execution workspaces` +- `c90ebf24 fix: keep execution workspace paths internal` + +No merge-blocking issues remain. + +--- + + + +## State changed + +Ticket を closed にしました。 + + +--- + + + +## 完了 + +完了。 + +実装内容: +- Runtime-side Execution Workspace materialization boundary を追加した。 +- v0 local Git materializer として、configured repository から resolved commit / tree evidence を取り、Runtime root 配下 `execution-workspaces//root/` に detached Git worktree を作成するようにした。 +- Worker spawn 時の workspace root / cwd / scope は source repository root ではなく materialized worktree path を使うようにした。 +- 同一 source repository に対する複数 Worker が distinct materialized paths を使えるようにした。 +- dirty source state は `clean_point_only` policy で拒否し、remote URI / non-Git provider / unsupported policy は typed diagnostics で fail closed するようにした。 +- allocation evidence / cleanup target / cleanup policy / status を記録し、Worker stop cleanup hook で worktree cleanup と record update を行うようにした。 +- Browser/API-facing spawn boundary は raw `ExecutionWorkspaceRequest` / `local_path` を受け取らないようにし、safe `repository_id` / optional `selector` から host/server 内部で materialization request を構築するようにした。 +- Focused worker-runtime / workspace-server tests を追加した。 + +主な commit / merge: +- implementation: `8b7a5da0 feat: materialize execution workspaces` +- review fix: `c90ebf24 fix: keep execution workspace paths internal` +- merge into orchestration: `c4cdf1c3 merge: execution workspace materializer` + +Review: +- 初回 external review は request_changes。 +- follow-up external review は approve。merge-blocking issue なし。 + +Final validation in Orchestrator worktree: +- `git diff --check`: pass +- `cargo test -p worker-runtime --features ws-server,fs-store`: pass(34 lib tests + 5 main tests + doc tests) +- `cargo test -p yoi-workspace-server`: pass(65 lib tests + 2 main tests) +- `cargo check -p yoi`: pass +- `cd web/workspace && deno task check`: pass(0 errors / 0 warnings) +- `cd web/workspace && deno task test`: pass(15 tests) +- `yoi ticket doctor`: ok + +未実行: +- `nix build .#yoi --no-link` は Cargo.lock / dependency / resource packaging / Nix 変更ではないため未実行。 + +---