Skip to content

feat(po): plan-definition — guided discovery phase upstream of plan-backlog (#73, v1) - #79

Open
atamanvega wants to merge 2 commits into
mainfrom
feat/plan-definition
Open

atamanvega wants to merge 2 commits into
mainfrom
feat/plan-definition

Conversation

@atamanvega

Copy link
Copy Markdown
Collaborator

Closes the design work in #73 with a v1 implementation. From @santielizondo's idea.

The gap it fills

plan-backlog starts from a defined problem. The hardest, most valuable part often comes before that: defining the problem. plan-definition is that phase — a guided, Socratic discovery step that produces a product definition, which then feeds plan-backlog.

Full flow: /plan-definition (define) → /plan-backlog (backlog) → ticket → PR → follow-ups.

What it does

  1. Intake — a spark in any form, even a one-liner (vaguer than plan-backlog's input). Reuses the multi-format intake + figma-fetch (incl. FigJam /board/ as read-only context in v1).
  2. Frame the problem (zoom-out) — guided questions with proposed, grounded answers to confirm/adjust: users, problem/outcome, why-now, constraints, success metrics, risks/unknowns, non-goals.
  3. Directions & trade-offs (zoom-in) — 2–4 solution directions with trade-offs → PO chooses/refines.
  4. Definition (approval-gated) — problem statement, users, goals & non-goals, success metrics, chosen direction + alternatives, key decisions, open questions. Navigable artifact on Claude / Markdown elsewhere.
  5. Handoff — feeds plan-backlog, whose framing is then lighter (confirm, not re-derive).

Shape

Same trio as plan-backlog, so it's portable and consistent:

File Role
skills/plan-definition/SKILL.md Portable playbook — every host
commands/plan-definition.md Claude Code guided command (interactive, in-conversation)
agents/plan-definer.md Discovery orchestrator — intake reading + definition draft engine

Plus: plan-backlog SKILL now runs a lighter framing when a definition is handed in.

Design decisions taken for v1 (open questions from #73 — refine away, @santielizondo)

  • Separate command (/plan-definition), not a mode of plan-backlog — different output (a definition doc, not a backlog).
  • Definition template must-haves: problem statement · users/non-users · goals & non-goals · success metrics · chosen direction (+ alternatives) · key decisions · open questions. Constraints/risks/why-now optional.
  • Where it lives: in-chat + rich artifact; optional save to docs/definitions/<slug>.md on request. No Confluence/whiteboard write-back in v1.
  • FigJam: read-only context input via the existing Figma connector; no board seeding in v1.
  • plan-backlog framing collapses to a confirm when a definition is handed in.

Guardrails (same doctrine)

Facilitate-never-decide · no fabrication (a thin spark is drawn out with questions, not invented) · approval-gated · no tickets here (that's plan-backlog) · secrets/PII watch.

Verification

  • node scripts/build-codex-plugin.mjs → 13 skills synced, version 0.19.13
  • node scripts/validate-codex-plugin.mjs → valid
  • node --test scripts/*.test.mjs → 35/35 pass
  • rebuild is a no-op (git diff --exit-code clean)

Docs-in-sync: README (From idea to backlog, What's inside, Day-to-day, flow → define → backlog → ticket → PR), CHANGELOG. Kit → 0.19.13.

🤖 Generated with Claude Code

…acklog (#73, v1)

Adds the most upstream step of the PO workflow: define the problem before
turning it into a backlog. A guided, Socratic pass frames the problem
(users, outcome, why-now, constraints, success metrics, risks, non-goals)
with proposed answers to confirm/adjust, explores 2–4 solution directions
with trade-offs, and produces an approved product definition — a
definition doc, not tickets. Renders as a navigable artifact on hosts that
support it (reusing #74's doctrine), Markdown elsewhere.

The definition feeds plan-backlog, whose framing step is now lighter when
a definition is handed in (confirm, don't re-derive).

Ships the same trio as plan-backlog:
- skills/plan-definition/SKILL.md — portable playbook (all hosts)
- commands/plan-definition.md — Claude Code guided command
- agents/plan-definer.md — discovery orchestrator (intake + draft engine)

Facilitate-never-decide, approval-gated, no fabrication. v1 for team review
(open design questions left to refine in #73). Full flow:
define → backlog → ticket → PR → follow-ups.

Bundle rebuilt (13 skills), version bumped, README + CHANGELOG updated.
Kit → 0.19.13.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Sep 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
claude-dev-kit-telemetry-relay Ignored Ignored Preview Sep 16, 2026 5:15pm UTC

Request Review

From the kit's own pr-reviewer pass on #79:

- FigJam accuracy: figma-fetch only reads /design and /file URLs, not
  FigJam /board/ — stop implying it fetches boards. The three new files
  now say figma-fetch covers Figma designs and a FigJam board's content
  is taken as pasted text (v1 read-only context, nothing written back).
- Loop-phrase consistency: keep plan-backlog's own loop as
  "idea → backlog → ticket → PR" in the README paragraph (plan-backlog
  genuinely starts from an idea); "define → ..." stays in the
  plan-definition paragraph and the full-flow CHANGELOG line.
- Drop the unused dev-kit-setup skill from plan-definer's frontmatter —
  it touches no tracker and creates no tickets.

Bundle re-synced (source/bundle byte-identical); validator + 35 tests pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant