diff --git a/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/item.md b/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/item.md index d6e6b8c6..b88fbe94 100644 --- a/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/item.md +++ b/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/item.md @@ -8,7 +8,7 @@ priority: P1 labels: [ticket, orchestrator, planning, workflow, tools] workflow_state: 'queued' created_at: 2026-06-07T03:57:10Z -updated_at: '2026-06-08T11:21:42Z' +updated_at: '2026-06-08T12:10:29Z' assignee: null legacy_ticket: null queued_by: 'workspace-panel' diff --git a/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/thread.md b/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/thread.md index a6d6bd28..f011f765 100644 --- a/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/thread.md +++ b/.yoi/tickets/open/20260607-035710-ticket-orchestration-plan-tool/thread.md @@ -105,3 +105,26 @@ Escalate if: - The intended implementation should be done directly by the current Orchestrator despite missing delegation authority; that would bypass the sibling coder/reviewer workflow and needs explicit instruction. --- + + + +## Decision + +Routing decision: waiting_for_schema_cleanup + +`ticket-orchestration-plan-tool` remains queued, but implementation is intentionally ordered after `remove-legacy-ticket-schema-fields`. + +Reason: +- The plan tool introduces a new durable Ticket-domain API/storage/query surface. +- `remove-legacy-ticket-schema-fields` is a lower-level cleanup of current Ticket schema/tool/API output and local Ticket record migration. +- Running both in parallel would create unnecessary conflict risk across the Ticket backend/tool surfaces and local `.yoi/tickets` records. + +Next action: +- Complete and merge `remove-legacy-ticket-schema-fields` first. +- Re-read this Ticket against the stricter schema after that lands, then accept or re-plan it from queued state. + +State decision: +- Leave this Ticket `queued`. +- Do not create a worktree or spawn coder/reviewer for it yet. + +--- diff --git a/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/item.md b/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/item.md index 0ca0e676..63123e1d 100644 --- a/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/item.md +++ b/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/item.md @@ -6,9 +6,9 @@ status: 'open' kind: 'task' priority: 'P1' labels: ['ticket', 'schema', 'migration', 'cleanup'] -workflow_state: 'queued' +workflow_state: 'inprogress' created_at: '2026-06-08T10:38:42Z' -updated_at: '2026-06-08T11:21:33Z' +updated_at: '2026-06-08T12:10:29Z' assignee: null legacy_ticket: null queued_by: 'workspace-panel' diff --git a/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/thread.md b/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/thread.md index 08bf9e66..40fcf11e 100644 --- a/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/thread.md +++ b/.yoi/tickets/open/20260608-103842-remove-legacy-ticket-schema-fields/thread.md @@ -69,4 +69,62 @@ Intake refinement が完了し、Orchestrator が routing できる状態にな Ticket を `workspace-panel` が queued にしました。 +--- + + + +## State changed + +Accepted queued implementation after reading the Ticket, intake refinement, current workspace state, and queued Ticket set. This Ticket is a lower-level Ticket schema/API cleanup and should land before implementing the queued orchestration plan tool to avoid overlapping Ticket backend/tool API churn. + +--- + + + +## Decision + +Routing decision: implementation_ready + +Reason: +- The Ticket has clear implementation-ready requirements from Intake: remove obsolete `legacy_ticket` and `needs_preflight` current schema/API surfaces, reject `workflow_state: intake`, and migrate local Ticket records. +- The change is broad but bounded to Ticket schema/tool/API/panel/docs/tests and local Ticket record migration. +- This should run before `ticket-orchestration-plan-tool`, because the plan tool introduces a new durable Ticket-domain surface and should be implemented on top of the stricter current Ticket schema. + +Evidence checked: +- Ticket body and thread, including Intake refinement and queued event. +- Open queued Ticket list: `remove-legacy-ticket-schema-fields` and `ticket-orchestration-plan-tool` are the current queued Tickets. +- Main workspace dirty state was only Ticket-record updates/new Ticket records; those have been committed separately before implementation routing. + +IntentPacket: + +Intent: +- Remove obsolete Ticket schema compatibility and current API exposure for `legacy_ticket`, `needs_preflight`, and `workflow_state: intake`. + +Binding decisions / invariants: +- New/current Ticket frontmatter must not write `legacy_ticket` or `needs_preflight`. +- `TicketCreate`, `TicketShow`, `TicketList`, panel/view-model output, and current tool/CLI surfaces must stop exposing those fields as current metadata. +- `workflow_state: intake` must be rejected, not normalized to `planning`. +- Missing workflow_state may remain a bounded migration fallback to `planning` if needed, but must not reintroduce `intake` vocabulary. +- Existing local `.yoi/tickets/**/item.md` records must be migrated to the stricter schema; historical `thread.md` / `resolution.md` prose remains audit history unless a fixture requires explicit rewrite. +- Do not introduce a replacement generic external issue field; typed relations are out of scope and belong to `typed-ticket-relation-metadata`. +- Do not change role workflow semantics or the planning/ready/queued/inprogress/done model beyond rejecting the legacy `intake` alias. + +Implementation latitude: +- Coder may choose whether migration is performed by a temporary script/manual rewrite, but the resulting diff should stay schema-focused. +- Coder may keep internal migration-only parsing helpers if strictly needed and not exposed as current API. +- Coder should update tests/fixtures/prompts/docs narrowly where they assert legacy fields or intake alias. + +Escalate if: +- Any non-null `legacy_ticket` value is found whose deletion would lose current relation information. +- External/runtime compatibility requirements are found that still require `needs_preflight` or `workflow_state: intake` acceptance. +- The change requires adding typed relation metadata or broader Ticket identity redesign. + +Validation: +- Focused Ticket schema/parser/writer/tool output tests. +- Focused yoi Ticket CLI/tool tests and panel/view-model tests if outputs change. +- `cargo fmt --check`. +- `git diff --check`. +- `cargo run -q -p yoi -- ticket doctor` with migrated local records. +- `cargo check --workspace` and final `nix build .#yoi` because code/tool/schema/resources may change. + ---