Skip to content

feat: adds interactive blueprint update to safely sync existing projects. - #156

Open
karlzierhofer wants to merge 15 commits into
mainfrom
feature/blueprint-update
Open

feat: adds interactive blueprint update to safely sync existing projects.#156
karlzierhofer wants to merge 15 commits into
mainfrom
feature/blueprint-update

Conversation

@karlzierhofer

@karlzierhofer karlzierhofer commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR introduces a new setup update command to safely sync existing projects with foundational setup files.

Why

Updating an already initialized repo was manual and error-prone. A controlled update flow was needed to adopt setup/template changes without blindly overwriting local customizations.

What changed

  • Adds setup update command.
  • Creates missing setup files from the foundational blueprint.
  • Shows diffs for existing files and lets users decide per change.
  • Supports:
    • --dry-run (preview only)
    • --line-mode (line-level review)
    • --yes (apply without prompts)
  • Provides an interactive review flow with clear prompts, abort support, and colorized diffs.

Documentation

  • Root README.md: mention and link to the runbook.
  • Runbook documentation for setup update usage and workflow.

Validation

  • Added tests for command flow and interactive behavior.
  • Ran targeted test suites and lint checks.

Example

Bildschirmfoto 2026-02-12 um 13 25 32

@karlzierhofer
karlzierhofer requested a review from a team as a code owner February 12, 2026 10:58
@karlzierhofer
karlzierhofer force-pushed the feature/blueprint-update branch from 97fa8c7 to 04b60a3 Compare February 12, 2026 11:37
Comment thread src/core/blueprint/interactive-diff.ts Outdated
@karlzierhofer
karlzierhofer force-pushed the feature/blueprint-update branch from 04b60a3 to e168a1f Compare February 12, 2026 17:12
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.

2 participants