282 lines
14 KiB
Markdown
282 lines
14 KiB
Markdown
<!-- event: create author: LocalTicketBackend at: 2026-06-09T09:55:18Z -->
|
|
|
|
## 作成
|
|
|
|
LocalTicketBackend によって作成されました。
|
|
|
|
---
|
|
|
|
<!-- event: intake_summary author: ticket-intake at: 2026-06-09T10:02:25Z -->
|
|
|
|
## Intake summary
|
|
|
|
既存 Ticket を精査し、重複ではなく実装可能な concrete work item と判断した。目的は `action_required` / `attention_required` を current Ticket schema、TicketCreate/TicketList/TicketShow などの tool/API output、Panel action 判定から削除し、routing を止める不足は `state: planning`・typed thread reason・relation metadata に寄せること。非目標は typed relation metadata / Objective / 新しい Panel 確認 UX / planning-return policy 全体の再設計。リスク/レビュー重点は ticket-schema、tool-api、panel-behavior、workflow/docs 更新、legacy/current record compatibility。実装は current output から両 field を消し、ready Ticket の Queue 判定を `attention_required` に依存させず、既存 docs/workflows/tests/examples の current 記述を更新し、historical audit mention は残してよい。検証は Ticket doctor、focused Ticket/Panel/tool output tests、cargo fmt --check、git diff --check、必要に応じて `nix build .#yoi` を含める。関連する既存作業として explicit workflow state 導入 `00001KTFEVH3R`、YAML frontmatter strict 化 `00001KTJ3EQZ8`、Panel close safety `00001KTJM0QY0`、Ticket state commit policy `00001KTJ1YA5G` を確認済みで、いずれもこの Ticket の duplicate ではない。
|
|
|
|
---
|
|
|
|
<!-- event: state_changed author: ticket-intake at: 2026-06-09T10:02:25Z from: planning to: ready reason: intake_ready field: state -->
|
|
|
|
## State changed
|
|
|
|
Intake classified this Ticket as ready to queue: the purpose, schema/tool/panel/doc scope, non-goals, acceptance criteria, validation expectations, and migration/compatibility boundary are explicit enough for Orchestrator routing.
|
|
|
|
---
|
|
|
|
<!-- event: state_changed author: workspace-panel at: 2026-06-09T10:11:38Z from: ready to: queued reason: queued field: state -->
|
|
|
|
## State changed
|
|
|
|
Ticket を `workspace-panel` が queued にしました。
|
|
|
|
|
|
---
|
|
|
|
<!-- event: decision author: orchestrator at: 2026-06-09T10:12:07Z -->
|
|
|
|
## Decision
|
|
|
|
Routing decision: waiting_for_active_tool_api_migration
|
|
|
|
This Ticket is queued and appears implementation-ready, but I am intentionally not accepting it to `inprogress` yet.
|
|
|
|
Reason:
|
|
- `00001KTNVGT8G` (`Tool実行にToolExecutionContextを渡す`) is already active, with Coder Pod `coder-tool-execution-context` running in `.worktree/tool-execution-context`.
|
|
- This Ticket touches Ticket schema, Ticket tool API output/input, and Panel action behavior.
|
|
- Running it in parallel with a core Tool execution API migration would create avoidable conflict across tool/Ticket surfaces and make review less reliable.
|
|
|
|
State decision:
|
|
- Leave this Ticket `queued`.
|
|
- Do not create a worktree or spawn a coder yet.
|
|
|
|
Next action:
|
|
- Complete and merge `00001KTNVGT8G` first.
|
|
- Re-read this Ticket after that lands, then accept from queued if still unblocked.
|
|
|
|
---
|
|
|
|
<!-- event: decision author: orchestrator at: 2026-06-09T10:19:34Z -->
|
|
|
|
## Decision
|
|
|
|
Routing decision update: still_waiting_due_surface_overlap
|
|
|
|
The user asked to prefer parallel work when conflicts are absent or expected to be small. I re-evaluated this Ticket under that policy and am still leaving it queued.
|
|
|
|
Reason:
|
|
- This Ticket removes `action_required` / `attention_required` from Ticket schema/tool API/Panel behavior.
|
|
- `00001KTNSA2K0` now runs in parallel and also changes TicketList/tool output.
|
|
- `00001KTNS1AA8` now runs in parallel and changes Panel behavior/key/display.
|
|
- Running this cleanup at the same time would overlap both active Ticket tool output and Panel behavior surfaces; this is more than a small mechanical conflict.
|
|
|
|
State decision:
|
|
- Leave this Ticket `queued`.
|
|
- Re-read and route it after either TicketList output slimming or Panel display work lands, depending on which surface remains active.
|
|
|
|
---
|
|
|
|
<!-- event: state_changed author: orchestrator at: 2026-06-09T11:30:25Z from: queued to: inprogress reason: orchestrator_acceptance_parallel_capacity field: state -->
|
|
|
|
## State changed
|
|
|
|
Accepted queued implementation after TicketList and Panel display work landed and workspace is clean. This Ticket removes obsolete action/attention fields from current Ticket schema/tool/API/panel behavior and can proceed in parallel with Profile feature-flag work because expected conflicts are small/manageable.
|
|
|
|
---
|
|
|
|
<!-- event: decision author: orchestrator at: 2026-06-09T11:30:25Z -->
|
|
|
|
## Decision
|
|
|
|
Routing decision: implementation_ready_parallel
|
|
|
|
Reason:
|
|
- The earlier blockers are resolved: ToolExecutionContext, TicketList output slimming, and Panel composer/display work have landed.
|
|
- This Ticket is a bounded Ticket schema/API/panel cleanup to remove obsolete `action_required` and `attention_required` fields.
|
|
- It can run in parallel with Profile feature flags work because expected overlap is small/manageable.
|
|
|
|
IntentPacket:
|
|
|
|
Intent:
|
|
- Remove `action_required` and `attention_required` from current Ticket schema/tool/API/panel behavior, replacing any remaining current behavior with existing state/relation/orchestration-plan concepts where appropriate.
|
|
|
|
Binding decisions / invariants:
|
|
- New/current Ticket frontmatter must not include `action_required` or `attention_required`.
|
|
- Current parser/schema/tool/CLI/panel surfaces must not expose those fields as current metadata.
|
|
- Existing local Ticket records must be migrated to remove the fields.
|
|
- Do not replace them with another generic vague field.
|
|
- Use canonical `state`, Ticket relations, OrchestrationPlan waiting/blocker notes, and thread events for concrete state/context where appropriate.
|
|
- Historical thread/resolution prose may remain audit history unless it is a current fixture or maintained guidance.
|
|
- Do not change Ticket identity, lifecycle state model, relation metadata semantics, or Objective semantics.
|
|
- Do not implement a broad panel UX redesign here.
|
|
|
|
Reviewer focus:
|
|
- Verify all current frontmatter records are migrated.
|
|
- Verify TicketCreate/List/Show/tool schemas and Panel view models no longer carry action/attention fields.
|
|
- Verify maintained guidance no longer treats these fields as current authority.
|
|
- Verify doctor catches obsolete fields if appropriate.
|
|
|
|
Validation:
|
|
- Focused Ticket schema/parser/writer/tool tests.
|
|
- Focused yoi CLI/list/show tests and panel/view model tests if touched.
|
|
- `cargo fmt --check`, `git diff --check`, `cargo run -q -p yoi -- ticket doctor`, `cargo check --workspace`, `nix build .#yoi`.
|
|
|
|
---
|
|
|
|
<!-- event: implementation_report author: orchestrator at: 2026-06-09T11:31:52Z -->
|
|
|
|
## Implementation report
|
|
|
|
Implementation routing started in parallel with the Profile feature-flag work.
|
|
|
|
Worktree/branch:
|
|
- Worktree: `.worktree/remove-action-attention-ticket-fields`
|
|
- Branch: `remove-action-attention-ticket-fields`
|
|
- Base/routing commit: `41133e0 ticket: route feature flags and attention cleanup`
|
|
|
|
Spawned sibling Coder Pod:
|
|
- `coder-remove-action-attention-ticket-fields`
|
|
- Scope: non-recursive read on parent workspace root plus recursive write limited to the child worktree.
|
|
|
|
Parallel-routing rationale:
|
|
- ToolExecutionContext, TicketList, and Panel work have landed.
|
|
- This Ticket is primarily Ticket schema/tool/API/panel metadata cleanup.
|
|
- It is expected to have only small/manageable overlap with Profile feature-flag work.
|
|
|
|
---
|
|
|
|
<!-- event: implementation_report author: coder at: 2026-06-09T12:04:53Z -->
|
|
|
|
## Implementation report
|
|
|
|
Implemented removal of `action_required` and `attention_required` from current Ticket schema/tool/API/panel behavior.
|
|
|
|
Summary:
|
|
- Removed both fields from `NewTicket`, parsed/public metadata structs, list/show JSON output, TicketCreate params/schema, CLI list hints, and workspace panel row state.
|
|
- Removed Panel ready-ticket blocker and safe-close guards that depended on those fields; relation blockers continue to block via existing relation metadata.
|
|
- Added doctor obsolete-frontmatter diagnostics for both fields and updated focused tests to assert new writes/schema/output omit them.
|
|
- Updated maintained Intake/Orchestrator workflow guidance and development routing classification text away from the obsolete fields.
|
|
- Checked local `.yoi/tickets/**/item.md` frontmatter: no `action_required` or `attention_required` entries were present, so no non-null current values required migration or replacement.
|
|
|
|
Validation:
|
|
- `cargo test -p ticket`
|
|
- `cargo test -p tui workspace_panel`
|
|
- `cargo test -p tui ticket_close_action`
|
|
- `cargo test -p yoi ticket`
|
|
- `cargo fmt --check`
|
|
- `git diff --check`
|
|
- `cargo run -q -p yoi -- ticket doctor`
|
|
- `cargo check --workspace`
|
|
- frontmatter grep/awk check for `.yoi/tickets/*/item.md`
|
|
- `nix build .#yoi`
|
|
|
|
---
|
|
|
|
<!-- event: implementation_report author: orchestrator at: 2026-06-09T12:10:16Z -->
|
|
|
|
## Implementation report
|
|
|
|
Reviewer routed after coder implementation commit `3afdd89`.
|
|
|
|
Reviewer Pod:
|
|
- `reviewer-remove-action-attention-ticket-fields`
|
|
- Worktree: `.worktree/remove-action-attention-ticket-fields`
|
|
|
|
Review focus includes schema/tool/API/output removal, doctor behavior for obsolete fields, panel ready→Queue behavior despite historical overlays, maintained docs/workflows/resources cleanup, no replacement vague field, and no unrelated lifecycle/identity/relation changes.
|
|
|
|
Note: the initial reviewer prompt accidentally included a stale full commit hash; the branch HEAD in the worktree is the authority and is `3afdd89`.
|
|
|
|
---
|
|
|
|
<!-- event: implementation_report author: orchestrator at: 2026-06-09T12:22:09Z -->
|
|
|
|
## Implementation report
|
|
|
|
Reviewer requested changes on the initial implementation because CLI `show` still printed obsolete legacy frontmatter keys through the raw-frontmatter fallback. Fix applied on branch `remove-action-attention-ticket-fields`:
|
|
|
|
- Added `action_required` and `attention_required` to the obsolete frontmatter key filter used by CLI show output.
|
|
- Added a regression test that injects legacy obsolete overlay fields and verifies `ticket show` omits both keys and values.
|
|
|
|
Fix commit: `94db2dc fix: hide obsolete ticket fields in cli show`
|
|
|
|
Validation after fix:
|
|
- `cargo test -p yoi ticket_cli_show_omits_obsolete_overlay_fields_from_legacy_frontmatter`
|
|
- `cargo fmt --check`
|
|
- `git diff --check`
|
|
- `cargo run -q -p yoi -- ticket doctor`
|
|
- `cargo check --workspace`
|
|
|
|
---
|
|
|
|
<!-- event: review author: reviewer at: 2026-06-09T12:28:22Z status: approve -->
|
|
|
|
## Review: approve
|
|
|
|
Re-review result: approve.
|
|
|
|
Focus:
|
|
- Verified prior finding is addressed: CLI `ticket show` now filters `action_required` and `attention_required` from `ticket.document.raw_frontmatter` through `is_obsolete_ticket_frontmatter_key`.
|
|
- Verified regression coverage: `ticket_cli_show_omits_obsolete_overlay_fields_from_legacy_frontmatter` injects both obsolete overlay fields into legacy frontmatter and asserts both keys and values are absent from `ticket show` output.
|
|
- Checked repository search for remaining current-surface mentions; remaining `action_required` / `attention_required` occurrences are obsolete-field diagnostics/filters and tests only.
|
|
- No new regression found in the fix commit.
|
|
|
|
Validation run in `.worktree/remove-action-attention-ticket-fields`:
|
|
- `cargo test -p yoi ticket_cli::tests::ticket_cli_show_omits_obsolete_overlay_fields_from_legacy_frontmatter -- --exact` — pass (1 test).
|
|
- `cargo test -p yoi ticket_cli::tests -- --nocapture` — pass (12 tests).
|
|
- `cargo check -p yoi` — pass.
|
|
- `git diff --check` — pass.
|
|
- `cargo fmt --check` — pass.
|
|
- `cargo run -q -p yoi -- ticket doctor` — pass (`doctor: ok`).
|
|
- `nix build .#yoi` — pass; `result` points to `/nix/store/n4bxl2fmwk85gfpq7bf59fd8mny1dl9r-yoi-0.1.0`.
|
|
|
|
Merge readiness:
|
|
- Approved and merge-ready from review perspective.
|
|
|
|
Residual risks:
|
|
- No branch-specific residual risk found. Existing live reviewer/orchestrator processes built before this branch may still expose old Ticket tool schemas until restarted/rebuilt, but that is a runtime refresh concern rather than a code issue in this branch.
|
|
|
|
---
|
|
|
|
<!-- event: state_changed author: hare at: 2026-06-09T12:33:25Z from: inprogress to: closed reason: closed field: state -->
|
|
|
|
## State changed
|
|
|
|
Ticket を closed にしました。
|
|
|
|
|
|
---
|
|
|
|
<!-- event: close author: hare at: 2026-06-09T12:33:25Z status: closed -->
|
|
|
|
## 完了
|
|
|
|
Merged and closed.
|
|
|
|
Implementation:
|
|
- Removed `action_required` and `attention_required` from current Ticket metadata/schema surfaces.
|
|
- Removed these fields from `TicketCreate` input and current list/show outputs.
|
|
- Updated CLI show raw-frontmatter fallback so legacy obsolete overlay keys and values are not printed.
|
|
- Removed Panel blocking/action behavior derived from `attention_required`; ready Tickets can Queue based on workflow state and real blockers instead of the old overlay.
|
|
- Updated maintained workflow/docs references away from those fields as current authority.
|
|
- Added obsolete-field diagnostics/regression coverage.
|
|
|
|
Commits:
|
|
- `3afdd89 ticket: remove action attention fields`
|
|
- `94db2dc fix: hide obsolete ticket fields in cli show`
|
|
- merge: `6f36c93 merge: remove ticket attention fields`
|
|
|
|
Review:
|
|
- Initial review requested the CLI show legacy fallback fix.
|
|
- Re-review approved after `94db2dc`; merge-ready with no remaining blockers.
|
|
|
|
Post-merge validation:
|
|
- `cargo test -p ticket obsolete_overlay_fields_are_rejected --lib` (no matching tests, command succeeded)
|
|
- `cargo test -p ticket tool_schema_omits_removed_ticket_create_fields --lib` (no matching tests, command succeeded)
|
|
- `cargo test -p tui ready_ticket_with_legacy_attention_overlay_still_can_queue --lib` (no matching tests, command succeeded)
|
|
- `cargo test -p yoi ticket_cli_show_omits_obsolete_overlay_fields_from_legacy_frontmatter`
|
|
- `cargo fmt --check`
|
|
- `git diff --check`
|
|
- `cargo run -q -p yoi -- ticket doctor`
|
|
- `cargo check --workspace`
|
|
- `nix build .#yoi`
|
|
|
|
---
|