2.5 KiB
2.5 KiB
| id | slug | title | status | kind | priority | labels | created_at | updated_at | assignee | legacy_ticket | |||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 20260605-203006-migrate-ticket-storage-to-yoi-tickets | migrate-ticket-storage-to-yoi-tickets | Migrate Ticket storage to .yoi/tickets | open | task | P1 |
|
2026-06-05T20:30:06Z | 2026-06-05T21:28:37Z | null | null |
Background
The active Ticket storage should move from top-level work-items/ to .yoi/tickets/ so Yoi project orchestration state lives under .yoi/ with workflows and Ticket config.
This is a project-record migration. Preserve all existing Ticket ids, thread history, artifacts, and resolutions.
Requirements
- Move active storage:
work-items/open/ -> .yoi/tickets/open/
work-items/pending/ -> .yoi/tickets/pending/
work-items/closed/ -> .yoi/tickets/closed/
- Use
git mvor equivalent tracked moves so history remains inspectable. - Update code defaults/tests/docs/workflows to refer to
.yoi/ticketsas active storage. - Update
.yoi/ticket.config.tomlexamples/defaults toroot = ".yoi/tickets". - Update worktree workflow guidance if necessary: child worktrees still exclude
.yoi; Ticket mutation remains main-workspace/orchestrator authority. - Ensure
.yoi/ticketsis tracked project state, not ignored generated memory. - Adjust
.gitignoreif needed so.yoi/tickets,.yoi/workflow,.yoi/knowledge, and.yoi/ticket.config.tomlcan be tracked while generated.yoi/memoryremains ignored. - Do not rewrite historical thread/artifact body references unless they are current docs/config paths. Historical mentions of
work-items/may remain as history.
Non-goals
- Removing
tickets.sh; handled later. - Changing Ticket ids/slugs/status semantics.
- External tracker migration.
- Scheduler/lease/queue automation.
Acceptance criteria
- All active Ticket records are under
.yoi/tickets/. - Top-level
work-items/no longer exists as active storage. yoi ticket list/show/doctorworks against.yoi/tickets/.- Ticket tools and TUI role actions use
.yoi/tickets/through configured backend root. - Documentation no longer tells users to use
work-items/as active storage. git statusshows intentional tracked moves, not delete/recreate loss of records.- Validation passes:
yoi ticket doctor- transitional
./tickets.sh doctoronly if still present and intentionally updated; cargo check --workspace --all-targets;cargo fmt --check;git diff --check.
Dependency
Prefer after:
yoi-ticket-cli-paritybuiltin-yoi-local-ticket-backend-config