Preset ID
closed-vocabulary
Preset Name
Closed Vocabulary Check
Version
1.0.1
Description
Adds a pass to /speckit.analyze that flags closed sets of values enumerated more than once with different members, and reports its own coverage.
Author
Diego Gabriel Impieri
Repository URL
https://github.com/yunusdim/spec-kit-preset-closed-vocabulary
Download URL
https://github.com/yunusdim/spec-kit-preset-closed-vocabulary/archive/refs/tags/v1.0.1.zip
Documentation URL
https://github.com/yunusdim/spec-kit-preset-closed-vocabulary/blob/main/README.md
License
MIT
Required Spec Kit Version
=0.8.0
Required Extensions (optional)
No response
Templates Provided
None
Commands Provided
- speckit.analyze.md — appends a closed-set divergence pass via the
append composition strategy (core untouched); reports on divergent enumerations of the same named set and its own coverage (declarations inspected vs. recognised); warning only, never blocks
Number of Scripts (optional)
No response
Tags
analysis, consistency, vocabulary, verification
Key Features
- Flags closed sets of values (statuses, categories, admissible kinds) that are enumerated more than once across a spec with different members
- Groups declarations by the name preceding the introducer, not by content similarity, to avoid false matches
- Reports the difference in both directions for every divergent group — what each side omits
- Reports its own coverage on every run (declarations inspected vs. recognised), so a zero-divergence result is never silently read as "clean"
- Runs as a warning only — it never blocks the analyze pass
- Uses strategy: append, so it carries no copy of the core analyze.md and does not need to track upstream changes to it
- Ships with 3 fixtures: one positive control (must fire) and two negative controls — formatting variance and a declared-subset relation — verifying the check stays quiet when it should
Testing Checklist
Submission Requirements
Preset ID
closed-vocabulary
Preset Name
Closed Vocabulary Check
Version
1.0.1
Description
Adds a pass to /speckit.analyze that flags closed sets of values enumerated more than once with different members, and reports its own coverage.
Author
Diego Gabriel Impieri
Repository URL
https://github.com/yunusdim/spec-kit-preset-closed-vocabulary
Download URL
https://github.com/yunusdim/spec-kit-preset-closed-vocabulary/archive/refs/tags/v1.0.1.zip
Documentation URL
https://github.com/yunusdim/spec-kit-preset-closed-vocabulary/blob/main/README.md
License
MIT
Required Spec Kit Version
Required Extensions (optional)
No response
Templates Provided
None
Commands Provided
appendcomposition strategy (core untouched); reports on divergent enumerations of the same named set and its own coverage (declarations inspected vs. recognised); warning only, never blocksNumber of Scripts (optional)
No response
Tags
analysis, consistency, vocabulary, verification
Key Features
Testing Checklist
specify preset addSubmission Requirements
preset.ymlmanifest includedspecify preset add ...command (preferablyspecify preset add --from <download-url>using the exact download URL)