diff --git a/work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/.gitkeep b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/.gitkeep similarity index 100% rename from work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/.gitkeep rename to work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/.gitkeep diff --git a/work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/delegation-intent.md b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/delegation-intent.md similarity index 100% rename from work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/delegation-intent.md rename to work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/delegation-intent.md diff --git a/work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/implementation-report.md b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/implementation-report.md similarity index 100% rename from work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/implementation-report.md rename to work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/implementation-report.md diff --git a/work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/review.md b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/review.md similarity index 100% rename from work-items/open/20260605-203006-yoi-ticket-cli-parity/artifacts/review.md rename to work-items/closed/20260605-203006-yoi-ticket-cli-parity/artifacts/review.md diff --git a/work-items/open/20260605-203006-yoi-ticket-cli-parity/item.md b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/item.md similarity index 98% rename from work-items/open/20260605-203006-yoi-ticket-cli-parity/item.md rename to work-items/closed/20260605-203006-yoi-ticket-cli-parity/item.md index 8249fdd0..f823700d 100644 --- a/work-items/open/20260605-203006-yoi-ticket-cli-parity/item.md +++ b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/item.md @@ -2,12 +2,12 @@ id: 20260605-203006-yoi-ticket-cli-parity slug: yoi-ticket-cli-parity title: Yoi ticket CLI parity -status: open +status: closed kind: task priority: P1 labels: [ticket, cli, backend] created_at: 2026-06-05T20:30:06Z -updated_at: 2026-06-05T20:56:42Z +updated_at: 2026-06-05T20:58:21Z assignee: null legacy_ticket: null --- diff --git a/work-items/closed/20260605-203006-yoi-ticket-cli-parity/resolution.md b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/resolution.md new file mode 100644 index 00000000..2acba20d --- /dev/null +++ b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/resolution.md @@ -0,0 +1,45 @@ +Yoi ticket CLI parity is complete and merged. + +Implementation: + +- `4d5068b feat: add yoi ticket CLI` +- merge commit: `4ba1b2f merge: add yoi ticket cli` + +Summary: + +- Added `yoi ticket ...` subcommands to the product `yoi` binary. +- Implemented: + - `yoi ticket create` + - `yoi ticket list` + - `yoi ticket show` + - `yoi ticket comment` + - `yoi ticket review` + - `yoi ticket status` + - `yoi ticket close` + - `yoi ticket doctor` +- The CLI uses `crates/ticket` backend APIs directly. +- The CLI does not shell out to `tickets.sh`. +- Active storage remains unchanged for this ticket: absent `.yoi/ticket.config.toml`, the backend defaults to `/work-items`. +- `yoi ticket status ... closed` is intentionally rejected with guidance to use `yoi ticket close`, because status-only close would not write `resolution.md`. + +Review: + +- External sibling reviewer approved with no blockers. +- Non-blocker follow-ups: + - `yoi ticket doctor` currently hides warning-only diagnostics when there are no errors. + - `show`, `list`, and doctor diagnostic output are not explicitly bounded. + - Body-source error text is generic and can mention `--resolution` for comment/review commands. + +Post-merge validation passed: + +- `cargo test -p yoi ticket` +- `cargo test -p ticket` +- `cargo check --workspace --all-targets` +- `cargo fmt --check` +- `git diff --check` +- `./tickets.sh doctor` +- `cargo build -p yoi` +- `target/debug/yoi ticket doctor` +- `nix build .#yoi --no-link` + +This clears the CLI prerequisite for the next migration step: `builtin-yoi-local-ticket-backend-config`. diff --git a/work-items/open/20260605-203006-yoi-ticket-cli-parity/thread.md b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/thread.md similarity index 88% rename from work-items/open/20260605-203006-yoi-ticket-cli-parity/thread.md rename to work-items/closed/20260605-203006-yoi-ticket-cli-parity/thread.md index e5358d67..c9ab08b7 100644 --- a/work-items/open/20260605-203006-yoi-ticket-cli-parity/thread.md +++ b/work-items/closed/20260605-203006-yoi-ticket-cli-parity/thread.md @@ -265,4 +265,57 @@ Reviewer-rerun validation passed: Yes. +--- + + + +## Closed + +Yoi ticket CLI parity is complete and merged. + +Implementation: + +- `4d5068b feat: add yoi ticket CLI` +- merge commit: `4ba1b2f merge: add yoi ticket cli` + +Summary: + +- Added `yoi ticket ...` subcommands to the product `yoi` binary. +- Implemented: + - `yoi ticket create` + - `yoi ticket list` + - `yoi ticket show` + - `yoi ticket comment` + - `yoi ticket review` + - `yoi ticket status` + - `yoi ticket close` + - `yoi ticket doctor` +- The CLI uses `crates/ticket` backend APIs directly. +- The CLI does not shell out to `tickets.sh`. +- Active storage remains unchanged for this ticket: absent `.yoi/ticket.config.toml`, the backend defaults to `/work-items`. +- `yoi ticket status ... closed` is intentionally rejected with guidance to use `yoi ticket close`, because status-only close would not write `resolution.md`. + +Review: + +- External sibling reviewer approved with no blockers. +- Non-blocker follow-ups: + - `yoi ticket doctor` currently hides warning-only diagnostics when there are no errors. + - `show`, `list`, and doctor diagnostic output are not explicitly bounded. + - Body-source error text is generic and can mention `--resolution` for comment/review commands. + +Post-merge validation passed: + +- `cargo test -p yoi ticket` +- `cargo test -p ticket` +- `cargo check --workspace --all-targets` +- `cargo fmt --check` +- `git diff --check` +- `./tickets.sh doctor` +- `cargo build -p yoi` +- `target/debug/yoi ticket doctor` +- `nix build .#yoi --no-link` + +This clears the CLI prerequisite for the next migration step: `builtin-yoi-local-ticket-backend-config`. + + ---