New Plan — DDD Implementation Plan Creation
Create a domain-driven implementation plan that implements an accepted proposal, informed by its related ADRs.
Command
/new-plan <short-title> --from-proposal NNN [--module <path>] [--root]
Arguments
| Argument | Required | Description |
|---|---|---|
<short-title> |
Yes | Short, hyphenated title for the plan |
--from-proposal NNN |
Yes | The number of the originating proposal. The proposal must have status accepted. |
--module <path> |
No | Target module path |
--root |
No | Create at repo root level |
Workflow
Parse arguments. Extract title and
--from-proposal NNNfrom$ARGUMENTS. The--from-proposalflag is required — plans always originate from an accepted proposal.Locate and verify the proposal. Find the proposal matching NNN in the appropriate
docs/proposals/directory. Read its frontmatter and verify:- The proposal exists
- Its
statusisaccepted - If not accepted, report an error: "Cannot create plan: proposal NNN has status '<status>'. Only accepted proposals can have implementation plans."
Discover related ADRs. Scan the
docs/decisions/directory for ADRs whoseoriginating_proposalfield matches NNN. These are the decisions that inform this plan.Get next sequence number. Run:
bash scripts/next-number.sh --dir <target-plans-dir>Read DDD guidance. Before creating the plan, read
reference/ddd-guide.mdto inform the decomposition approach. Use this guidance to help the user structure their bounded contexts, aggregates, and domain events.Create the plan file. Read the template from
templates/plan.mdand create<target>/NNN-<short-title>.md.Populate frontmatter:
Field Value titleDerived from the short title numberThe NNN from step 4 statusactiveauthorGit user name or prompt createdToday's date updatedToday's date originating_proposalThe proposal number from --from-proposalrelated_adrsArray of ADR numbers discovered in step 3 Pre-populate from proposal and ADRs. Read the originating proposal's content and related ADRs to seed:
- The Objective section (link to proposal)
- Related Decisions section (links to all discovered ADRs)
- Initial bounded contexts (derived from proposal scope and ADR decisions)
- Known dependencies
Confirm creation. Report the created file and guide the user to:
- Complete the domain analysis (bounded contexts, aggregates, domain events)
- Define implementation tasks per the DDD guide
Plan Lifecycle
| State | Description |
|---|---|
active |
Work is in progress. Plan is mutable. |
complete |
All tasks are done. |
abandoned |
Plan was abandoned. Originating proposal may still stand. |
Reference
reference/ddd-guide.md— Practical guide to DDD decomposition for implementation plans
Templates
templates/plan.md— DDD implementation plan template (copy ofscaffold/templates/core/plan.md)
Scripts
scripts/next-number.sh— Determines the next NNN sequence number
Converted and distributed by TomeVault — claim your Tome and manage your conversions.