1.7 KiB
1.7 KiB
Implemented, reviewed, merged, and validated.
Summary:
- Added typed, durable, non-hierarchical Ticket relation metadata.
- Stored forward project-level relations as typed JSON artifacts at
.yoi/tickets/<ticket-id>/artifacts/relations.json. - Supported first-version relation kinds:
depends_on,blocks,related,supersedes, andduplicate_of. - Derived inverse views such as
blocked_by,dependency_of,superseded_by, andduplicated_byfrom forward relations rather than storing inverse relation kinds. - Added Ticket backend validation and
ticket doctordiagnostics for relation artifacts, dangling references, self relations, duplicate relations, and bounded dependency/blocking cycles. - Added TicketRelation LLM tools, CLI relation add/list surfaces, TicketShow/List relation metadata, and workspace panel unresolved blocker hints.
- Kept relation metadata distinct from OrchestrationPlan execution records and from Pod/session/worktree/runtime claims.
Implementation:
- Coder commit:
4601ad2 ticket: add typed relation metadata - Reviewer approved with no blocking findings.
- Merge commit:
2225311 merge: add typed ticket relation metadata
Validation after merge:
cargo test -q -p ticket ticket_relationscargo test -q -p ticket queue_gate_rejectscargo test -q -p ticket doctor_validates_ticket_relationscargo test -q -p ticket ticket_relation_tools_recordcargo test -q -p ticket ticket_tool_name_partitions_are_explicitcargo test -q -p yoi ticket_cli_records_lists_and_shows_relationscargo test -q -p tui workspace_panel_marks_ready_ticket_with_unresolved_relation_blockedcargo fmt --checkgit diff --checkcargo run -q -p yoi -- ticket doctorcargo check --workspacenix build .#yoi