Skip to content

Add project-template delete + three new built-in templates - #36

Merged
VeryComplexAndLongName merged 1 commit into
mainfrom
feat/template-catalog-delete-and-more-templates
Aug 17, 2026
Merged

VeryComplexAndLongName merged 1 commit into
mainfrom
feat/template-catalog-delete-and-more-templates

Conversation

@VeryComplexAndLongName

Copy link
Copy Markdown
Owner

Summary

  • deleteProjectTemplate() in packages/core, a new POST /api/templates/delete REST endpoint, and a VS Code command openspec-ui.deleteProjectTemplate scoped to viewItem == openspec-ui.projectTemplate only. Built-in templates never show a delete action anywhere — they're code, not workspace data.
  • Fixes a real gap found while dogfooding "Customize": there was no way to remove a customized project-level template short of manually deleting the directory.
  • Adds three built-in templates: flask-to-fastapi (Python), a language-agnostic flat-to-hexagonal-architecture, and node-vitest-testing-baseline (Node.js/TypeScript) — balances the catalog against the original Python-only seed and covers the Node.js/TypeScript gap directly.
  • Extends the archived template-catalog capability spec (openspec/specs/template-catalog/spec.md) with an ADDED requirement for deletion.

Test plan

  • npm run verify green across all five workspaces (372 tests total), re-run after git add per this repo's English-policy-check gotcha.
  • openspec change validate --strict template-catalog-v2 passes.
  • Real, live smoke test (not just unit tests): built and ran the actual standalone server against this repository, drove the Templates tab in a real browser, and deleted the actual leftover project template from earlier manual testing — confirmed gone on disk afterward. Also confirmed the confirmation gate genuinely blocks an undismissed/declined confirm (didn't delete until the dialog was accepted), and that all 4 built-in templates never show a delete action. VS Code side has no live-UI verification available in this environment (no desktop-automation tool) — relies on 27 passing commands.test.ts cases plus both hosts sharing the identical core function verified live. Full detail in openspec/changes/template-catalog-v2/smoke-test-notes.md.

🤖 Generated with Claude Code

deleteProjectTemplate() in core, exposed via a new REST endpoint
(standalone) and a VS Code command scoped to project-level templates
only (built-in templates are code, never deletable through either UI).
Closes a real CRUD gap found while dogfooding "Customize" — there was
previously no way to remove a customized template short of manually
deleting the directory.

Also adds flask-to-fastapi, a language-agnostic
flat-to-hexagonal-architecture, and node-vitest-testing-baseline to the
built-in catalog, balancing it against the original Python-only seed
template and covering the Node.js/TypeScript gap directly.

Verified live: deleted the actual leftover project template from
earlier manual testing through the real standalone browser UI against
this repository, confirmed on disk.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@VeryComplexAndLongName
VeryComplexAndLongName merged commit 8790249 into main Aug 17, 2026
6 checks passed
@VeryComplexAndLongName
VeryComplexAndLongName deleted the feat/template-catalog-delete-and-more-templates branch August 18, 2026 14:38
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