12 KiB
作成
LocalTicketBackend によって作成されました。
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 導入 20260606-215403-001、YAML frontmatter strict 化 20260607-223233-001、Panel close safety 20260608-032200-001、Ticket state commit policy 20260607-220606-001 を確認済みで、いずれもこの Ticket の duplicate ではない。
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.
State changed
Ticket を workspace-panel が queued にしました。
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:
20260609-093050-001(Tool実行にToolExecutionContextを渡す) is already active, with Coder Podcoder-tool-execution-contextrunning 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
20260609-093050-001first. - Re-read this Ticket after that lands, then accept from queued if still unblocked.
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_requiredfrom Ticket schema/tool API/Panel behavior. 20260609-085212-001now runs in parallel and also changes TicketList/tool output.20260609-084725-001now 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.
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.
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_requiredandattention_requiredfields. - It can run in parallel with Profile feature flags work because expected overlap is small/manageable.
IntentPacket:
Intent:
- Remove
action_requiredandattention_requiredfrom 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_requiredorattention_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.
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.
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.mdfrontmatter: noaction_requiredorattention_requiredentries were present, so no non-null current values required migration or replacement.
Validation:
cargo test -p ticketcargo test -p tui workspace_panelcargo test -p tui ticket_close_actioncargo test -p yoi ticketcargo fmt --checkgit diff --checkcargo run -q -p yoi -- ticket doctorcargo check --workspace- frontmatter grep/awk check for
.yoi/tickets/*/item.md nix build .#yoi
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.
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_requiredandattention_requiredto the obsolete frontmatter key filter used by CLI show output. - Added a regression test that injects legacy obsolete overlay fields and verifies
ticket showomits 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_frontmattercargo fmt --checkgit diff --checkcargo run -q -p yoi -- ticket doctorcargo check --workspace
Review: approve
Re-review result: approve.
Focus:
- Verified prior finding is addressed: CLI
ticket shownow filtersaction_requiredandattention_requiredfromticket.document.raw_frontmatterthroughis_obsolete_ticket_frontmatter_key. - Verified regression coverage:
ticket_cli_show_omits_obsolete_overlay_fields_from_legacy_frontmatterinjects both obsolete overlay fields into legacy frontmatter and asserts both keys and values are absent fromticket showoutput. - Checked repository search for remaining current-surface mentions; remaining
action_required/attention_requiredoccurrences 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;resultpoints 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.