ticket: accept e2e binary build followup
This commit is contained in:
parent
8fa5239102
commit
a4df975415
|
|
@ -1,8 +1,8 @@
|
|||
---
|
||||
title: 'E2E harness が最新 yoi binary を自動 build して使うようにする'
|
||||
state: 'queued'
|
||||
state: 'inprogress'
|
||||
created_at: '2026-06-13T15:46:07Z'
|
||||
updated_at: '2026-06-13T15:46:29Z'
|
||||
updated_at: '2026-06-13T15:47:00Z'
|
||||
assignee: null
|
||||
readiness: 'ready'
|
||||
queued_by: 'yoi ticket'
|
||||
|
|
|
|||
|
|
@ -30,4 +30,57 @@ Ticket planning が完了しました。state planning -> ready。
|
|||
Ticket を `yoi ticket` が queued にしました。
|
||||
|
||||
|
||||
---
|
||||
|
||||
<!-- event: decision author: orchestrator at: 2026-06-13T15:46:54Z -->
|
||||
|
||||
## Decision
|
||||
|
||||
Routing decision: implementation_ready
|
||||
|
||||
Reason:
|
||||
- ユーザーが方針を明示した: `cargo run` を PTY の process-under-test にせず、E2E harness が `cargo build -p yoi --features e2e-test --bin yoi` を実行し、生成された binary を直接 spawn する。
|
||||
- Ticket は `queued` で、要件・受け入れ条件は具体的。blocking relation はなく、既存 E2E harness の小さな follow-up として実装可能。
|
||||
- 既存 production/non-production boundary、mouse capture check、quit pending barrier は維持すべき invariant として明記済み。
|
||||
|
||||
Evidence checked:
|
||||
- Ticket body / relation to `00001KSKBP9YG`。
|
||||
- Existing E2E harness code: `tests/e2e/src/lib.rs::yoi_binary()` currently prefers `YOI_E2E_BIN`, then infers `target/debug/yoi`, but does not build it。
|
||||
- Orchestrator worktree is clean。
|
||||
|
||||
IntentPacket:
|
||||
|
||||
Intent:
|
||||
- `cargo test -p yoi-e2e --features e2e ...` を任意タイミングで実行しても、harness が最新 source から E2E 用 `yoi` binary を build して直接 PTY spawn するようにする。
|
||||
|
||||
Binding decisions / invariants:
|
||||
- `cargo run` を process-under-test にしない。
|
||||
- `YOI_E2E_BIN` explicit override は残してよい。
|
||||
- default path は harness 内 `cargo build -p yoi --features e2e-test --bin yoi` + direct binary spawn。
|
||||
- production/non-production boundary と `e2e-test` feature gating を壊さない。
|
||||
- mouse capture tracking / quit pending barrier を壊さない。
|
||||
|
||||
Requirements / acceptance criteria:
|
||||
- 事前 manual build なしに `cargo test -p yoi-e2e --features e2e --test panel -- --nocapture` が pass する。
|
||||
- `YOI_E2E_BIN=<path>` 指定時は override としてその path が使われる。
|
||||
- Build command / binary path が artifact または diagnostics から分かる。
|
||||
- `cargo fmt --check`、`git diff --check`、関連 checks が pass。
|
||||
|
||||
Implementation latitude:
|
||||
- `OnceLock` 等で同一 test process 内の build を 1 回にまとめてよい。
|
||||
- Workspace root detection は `CARGO_MANIFEST_DIR` parent traversal、`cargo metadata`、または robust helper のいずれでもよい。
|
||||
- Cargo executable は `CARGO` env を尊重する。
|
||||
|
||||
Escalate if:
|
||||
- workspace/package layout 上、E2E test process 内から cargo build するのが大きな cyclic/build-system 問題を起こす場合。
|
||||
- Nix/package source filter 等の追加変更が必要になる場合。
|
||||
|
||||
---
|
||||
|
||||
<!-- event: state_changed author: orchestrator at: 2026-06-13T15:47:00Z from: queued to: inprogress reason: orchestrator_acceptance_user_requested_fix field: state -->
|
||||
|
||||
## State changed
|
||||
|
||||
Ticket evidence、existing E2E harness code map、Orchestrator worktree clean state を確認した。ユーザーが明示的に修正を依頼しており、blocking relation はない。実装 side effect の前に inprogress acceptance を記録する。
|
||||
|
||||
---
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user