--- name: issue-description metadata: version: "0.24.9" description: Write rich, durable issue/ticket descriptions. Use when creating or updating tickets by hand, when composing bodies for ticket-sync, or when a work item needs a description a future reader (human or agent) can act on without archaeology. --- # Rich issue descriptions An issue is a durable intent record, not a task title. Issues outlive PRs and are read by more people — including future agents. Every issue should let a zero-context reader understand what, why, where it sits, and what "done" looks like. ## The mechanical path (worklog-synced tickets) For items in the event log, do not hand-write bodies: `bin/worklog ticket-body ` renders the item's graph node — summary (from `--body`), context (epic, generating plan with its frozen wiki page, milestone, unplanned provenance), and traceability (decides/implements edges, delivered-by PRs). ticket-sync pushes that. To make a ticket richer, enrich the SOURCE: `worklog update --body`, `worklog link-pr`, sidecar `relates_to` edges — never just the remote ticket (it would drift back). ## Template (hand-written issues, or systems without worklog) ## Summary One or two sentences: what needs to be done and why it matters. ## Context / Big picture Where this sits in the larger system or epic. Link the parent epic and the plan that generated it. ## Problem / Motivation What is painful or missing today? "What"-only issues rot; "why" keeps them useful. ## Desired outcome What does done look like? Concrete and observable. ## Scope In scope: ... Explicitly out of scope: ... ## Proposed approach (optional) High-level design or sequence if known. Link relevant ADRs/design docs. ## Acceptance criteria - [ ] ... ## Traceability Plan / Epic / ADRs / Spec sections / Related issues. ## Notes for implementers & agents Traps, sequencing rules, non-obvious constraints, "never do X" guidance written for the next agent that picks this up. ## Rules - Omit sections that have no real content — no boilerplate placeholders. - Every plan-generated issue links back to its frozen plan page: the why lives in the plan, the issue carries the pointer. - Surface risks and open questions early; uncertainty stated is uncertainty managed. - Body text must be readable by a junior dev or PM: no bare ULIDs in prose (spec §13.4); ULIDs belong in the machine footer.