Skip to content

Rerunning /speckit.plan replaces previous plan #1391

@jsifid

Description

@jsifid

Context

I generated an initial plan with /speckit.plan and used it to derive tasks. Later I realized the plan was missing an item, so I ran /speckit.clarify to add it to the spec and then ran /speckit.plan again.

On the second run, plan.md was overwritten and replaced with the default template, instead of updating/merging the existing plan. Other files produced by the previous plan appeared to be updated correctly with the clarified content, but plan.md specifically was reset.

Expected behavior

One of the following (any of these would be acceptable):

  1. /speckit.plan detects an existing plan.md and updates it (merge/append) rather than replacing it.
  2. /speckit.plan creates a new file like plan.v2.md (or plan.<timestamp>.md) and preserves the old one.
  3. /speckit.plan refuses to overwrite and prints an explicit message like “plan.md exists, use --overwrite or --new-plan”.

Actual behavior

  • Re-running /speckit.plan overwrote plan.md and replaced it with the template content.
  • Previously generated artifacts (other than plan.md) seemed to reflect the changes introduced by /speckit.clarify.

Repro steps

  1. Create a spec and run /speckit.plan to generate plan.md.
  2. Create tasks from it (optional).
  3. Run /speckit.clarify to add missing details to the spec.
  4. Run /speckit.plan again.
  5. Observe plan.md gets replaced by template content.

Questions / Ask

  • Is there an established workflow for updating a plan after /speckit.clarify without losing the previous plan.md?
  • If not, can /speckit.plan be changed to avoid destructive overwrites (merge, versioned plan files, or explicit overwrite flag)?

Suggested fix

Default behavior should be non-destructive:

  • Keep the previous plan and write a new versioned plan, or
  • Update existing plan.md in-place, or
  • Require an explicit overwrite option.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions