Skip to content

[Preset]: Add db-standards #4654

Description

@gdakuzak

Preset ID

db-standards

Preset Name

Database Standards

Version

0.8.2

Description

Database conventions for spec-driven work: naming, data-model design, constraints, data protection, performance, query safety, a schema-review checklist, and engine-specific references. ORM-agnostic.

Author

Guilherme Dakuzaku

Repository URL

https://github.com/gdakuzak/spec-kit-preset-db-standards

Download URL

https://github.com/gdakuzak/spec-kit-preset-db-standards/archive/refs/tags/v0.8.2.zip

Documentation URL

https://github.com/gdakuzak/spec-kit-preset-db-standards/blob/main/README.md

License

MIT

Required Spec Kit Version

0.1.0

Required Extensions (optional)

None

Templates Provided

  • constitution-template — adds Database + Data protection sections (engine, version, migration tool; security posture)
  • spec-template — adds Data Requirements section
  • plan-template — adds Database Design section (naming, data-model design, constraints & integrity, data protection, performance, query safety)
  • tasks-template — adds Schema Review Checklist

Commands Provided

  • speckit.constitution — requires confirming the target database (engine, version, migration tool) and the security posture (roles, RLS) before the constitution is drafted

Number of Scripts (optional)

No response

Tags

database, standards, data-modeling, performance

Key Features

  • Forces confirming the target database (engine, version, migration tool) before the constitution is drafted, and records it in a Database section
  • Adds a Data Requirements section to specs: entities, reads/writes, retention, consistency
  • Adds Database Design guidance to plans: naming conventions, OLTP/OLAP classification, normalization (3NF) vs. denormalization trade-offs, constraints & integrity, data protection (column classification, secrets, RLS, least-privilege), external identifier exposure, SQL portability (ANSI-first), query safety (SQL injection), indexing plan, N+1/query-volume plan
  • Adds a Schema Review Checklist to tasks, run before merging any migration
  • Ships engine-specific reference files (Oracle, MySQL, SQL Server, DynamoDB, MongoDB) — read on demand from the plan, not bloating every project's plan with guidance for engines it doesn't use
  • ORM-agnostic; all overrides use append, so it stacks cleanly with other presets

Testing Checklist

  • Preset installs successfully via specify preset add
  • Template resolution works correctly after installation
  • Documentation is complete and accurate
  • Tested on at least one real project

Submission Requirements

  • Valid preset.yml manifest included
  • Linked README (Documentation URL) explains how to use this preset and includes a valid specify preset add ... command (preferably specify preset add --from <download-url> using the exact download URL)
  • LICENSE file included
  • GitHub release created with version tag
  • Preset ID follows naming conventions (lowercase-with-hyphens)

Activity

  1. edenperez909-eng commented on Sep 21, 2026

    @edenperez909-eng

    Hi @gdakuzak,

    Thank you for submitting this comprehensive preset! The database standards, motor-specific on-demand loading, and clean stacking mechanism via append look excellent and well-structured.

    Before we proceed with the official approval and integration, could you please clarify or double-check a couple of quick technical details?

    1. Preset Stability: I noticed the preset is currently at version 0.8.2 while requiring spec-kit version 0.1.0. Since it's below 1.0.0, do you consider the current schema definition stable enough for production environments, or are there breaking changes planned soon?
    2. Command Collision: The preset introduces the custom command speckit.constitution. We just want to ensure this naming convention doesn't collide with other existing global presets or core commands within the ecosystem.
    3. Manifest Validation: We will trigger a local test run via specify preset add --from <download-url> shortly to verify the preset.yml integrity and the README documentation layout.

    Looking forward to your feedback so we can move this forward!

    Best regards.

  2. gdakuzak commented on Sep 21, 2026

    @gdakuzak
    Author

    hey @edenperez909-eng !

    Thanks for your feedback!

    Preset Stability: I noticed the preset is currently at version 0.8.2 while requiring spec-kit version 0.1.0. Since it's below 1.0.0, do you consider the current schema definition stable enough for production environments, or are there breaking changes planned soon?

    Yes, I have a few ideas for changes, but they're more focused on engine presets rather than the standardization that was established.

    Command Collision: The preset introduces the custom command speckit.constitution. We just want to ensure this naming convention doesn't collide with other existing global presets or core commands within the ecosystem.

    The preset only appends a "Database Confirmation" step (engine, version, migration tool, data-protection posture) to it, via strategy: "append". It doesn't replace the core behavior or add a new command.

    Manifest Validation: We will trigger a local test run via specify preset add --from shortly to verify the preset.yml integrity and the README documentation layout.

    Okay, if you need any changes, I'm available to make them.

    Best regards.

  3. added
    triage-nice-to-haveVerdict: evidence-backed fix or greenlit feature — land after review
    on Sep 21, 2026
  4. github-actions commented on Sep 21, 2026

    @github-actions
    Contributor

    cc @github/spec-kit-maintainers — new catalog submission for review.

  5. github-actions commented on Sep 21, 2026

    @github-actions
    Contributor

    Validation failed for the community preset submission.

    • Release and download URL validation: failed. The pinned URL and tag are valid (v0.8.2 matches version 0.8.2), and the GitHub release exists, but the required HTTP 200 archive fetch could not be performed in this workflow environment because outbound curl requests are blocked. A repository/release metadata check cannot substitute for downloading the archive, so this check cannot pass.

    Other checks passed: the [Preset]: title, preset ID and version formats, public repository, preset.yml and LICENSE, GitHub README URL and install commands, repository ownership/pinned URL format, and all required checklist boxes. No catalog or documentation changes were made. Please resubmit or rerun the validation in an environment that can fetch the archive URL.

    Generated by 🎨 Add Community Preset from Issue Submission for #4654 · copilot · gpt52codex · 1.59 AIC · ⌖ 6.34 AIC · ⊞ 23.8K · ◷

  6. gdakuzak commented on Sep 21, 2026

    @gdakuzak
    Author

    @KSchlobohm or @edenperez909-eng
    The "Release and download URL validation" check failed only because outbound curl is blocked in the workflow environment. The pinned URL returns HTTP 200 on my side (tag v0.8.2, release exists). Could a maintainer verify it manually or re-run the check? Is there anything else I need to change on my side?

  7. gdakuzak commented on Sep 23, 2026

    @gdakuzak
    Author

    Hey everyone!
    Is there anything else I need to change on my side ?
    Thanks

  8. KSchlobohm commented on Sep 23, 2026

    @KSchlobohm
    Contributor

    @gdakuzak - thanks for your patience. As you noted the URL validation check wasn't a valid blocker. This submission was actually blocked by #4677

    I'll restart it now and will let you know if there are any challenges.

  9. github-actions commented on Sep 23, 2026

    @github-actions
    Contributor

    Pull request created: #4702

    Generated by Add Community Preset from Issue Submission · copilot · gpt52codex · 2.48 AIC · ⌖ 12.1 AIC · ⊞ 24.7K

  10. KSchlobohm commented on Sep 23, 2026

    @KSchlobohm
    Contributor

    @gdakuzak thanks for your contribution. the preset is now added to the catalog.

  11. gdakuzak commented on Sep 23, 2026

    @gdakuzak
    Author

    Thank you for your support. I want to continue contributing more to the spec-kit!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions