@@ -9,6 +9,40 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99
1010---
1111
12+ ## [ 0.5.1] - 2025-11-11
13+
14+ ### 🔄 Refactoring
15+
16+ ** Terminology Unification: Protocol → Specification**
17+
18+ Complete codebase-wide terminology standardization for better clarity and consistency.
19+
20+ ** BREAKING CHANGES** :
21+ - ** Directory** : ` specs/protocol/ ` renamed to ` specs/domain/ `
22+ - ** Variables** : ` protocol_id ` → ` spec_id ` , ` PROTOCOL_NUMBER ` → ` SPEC_NUMBER ` , etc.
23+ - ** Commands** : ` show-protocol ` → ` show-spec `
24+ - ** Files** : ` protocol-spec-template.md.j2 ` → ` domain-spec-template.md.j2 `
25+ - ** YAML** : ` protocol: ` → ` specification: ` (frontmatter field)
26+
27+ ** Statistics** :
28+ - ✅ Processed: ** 362 occurrences** (97.6%)
29+ - ✅ Reserved: ** 9 occurrences** (proper nouns: Model Context Protocol, Protocol Buffers, MCP Protocol)
30+ - ✅ Files affected: 100+
31+ - ✅ Templates updated: SDS (8), SDD (3), Base templates
32+
33+ ** Impact** :
34+ - All MetaSpec commands and templates now use consistent "specification" terminology
35+ - Domain specifications located in ` specs/domain/ ` (previously ` specs/protocol/ ` )
36+ - All variable names, commands, and documentation updated accordingly
37+ - Preserved technical terms where "protocol" is part of a proper noun
38+
39+ ** Migration Guide** :
40+ - Update any custom scripts referencing ` specs/protocol/ ` to ` specs/domain/ `
41+ - Replace ` protocol_id ` with ` spec_id ` in custom specifications
42+ - Update command references from ` show-protocol ` to ` show-spec `
43+
44+ ---
45+
1246## [ 0.5.0] - 2025-11-09
1347
1448### ✨ Features
@@ -60,9 +94,9 @@ Added 3 new commands for complex specification definition:
6094
6195** Clarity and Consistency Improvements**
6296
63- - ** Removed redundancy** : Eliminated duplicate "Protocol relationships" section in AGENTS.md
97+ - ** Removed redundancy** : Eliminated duplicate "Specification relationships" section in AGENTS.md
6498- ** Fixed anchor links** : Updated 3 broken references from "Two-Feature Architecture" to "SDS + SDD Separation"
65- - ** Added numbering strategy** : Explained protocol numbering logic (001, 002-009, 010-099, 100-999)
99+ - ** Added numbering strategy** : Explained specification numbering logic (001, 002-009, 010-099, 100-999)
66100- ** Updated command counts** : Synchronized across all files (README.md, CHANGELOG.md, architecture.md, templates)
67101- ** Clarified design decision** : Emphasized flat physical structure with tree logical structure
68102
@@ -80,11 +114,11 @@ Added 3 new commands for complex specification definition:
80114** Why Flat Physical + Tree Logical?**
81115
821161 . ** Simple paths** : ` specs/domain/013-credit-card-payment/ ` (not deeply nested)
83- 2 . ** FEATURE independence** : Each protocol is a standalone FEATURE with its own lifecycle
84- 3 . ** Flexible numbering** : Sub-protocols can use any available numbers (skip ranges)
85- 4 . ** Git branch friendly** : Branch name = directory name = protocol_id
117+ 2 . ** FEATURE independence** : Each specification is a standalone FEATURE with its own lifecycle
118+ 3 . ** Flexible numbering** : Sub-specifications can use any available numbers (skip ranges)
119+ 4 . ** Git branch friendly** : Branch name = directory name = spec_id
861205 . ** Easy reorganization** : Change relationships via frontmatter, no file moves
87- 6 . ** Unlimited depth** : Any protocol can be a parent with its own sub-protocols
121+ 6 . ** Unlimited depth** : Any specification can be a parent with its own sub-specifications
88122
89123---
90124
@@ -233,7 +267,7 @@ For existing speckits generated with 0.x.x:
233267- ✅ Added comprehensive frontmatter fields table with examples
234268- ✅ Added argument access patterns documentation
235269- ✅ Maintained MetaSpec's unique Spec-Driven positioning
236- - ✅ Preserved dual-source architecture (Protocol -Derived + Library-Selected)
270+ - ✅ Preserved dual-source architecture (Specification -Derived + Library-Selected)
237271
238272** Before** :
239273``` yaml
@@ -287,7 +321,7 @@ model: claude-3-5-sonnet-20241022
287321- ✅ Tables now show: MetaSpec (specify, clarify, plan) and Generic (design, build, test)
288322
289323** Impact** :
290- - ✅ ** Framework neutral** : No external protocol dependencies
324+ - ✅ ** Framework neutral** : No external specification dependencies
291325- ✅ ** Dogfooding emphasized** : Uses MetaSpec's own commands as examples
292326- ✅ ** Clearer positioning** : General meta-framework, not MCP-specific tool
293327
@@ -425,17 +459,17 @@ MetaSpec now guides developers to design toolkits from user needs, not just tech
425459- 20% Human Developers
426460
427461### Key Scenarios
428- 1. AI generates MCP server → needs: show-protocol , get-template
462+ 1. AI generates MCP server → needs: show-spec , get-template
4294632. Developer validates manually → needs: init, validate, docs
4304643. AI debugs errors → needs: validate, explain-error
431465
432466### Derived Features (P0)
433- - Protocol reference system (Scenarios 1, 3)
467+ - Specification reference system (Scenarios 1, 3)
434468- Template system (Scenarios 1, 2)
435469- Validation CLI (All scenarios)
436470
437471### Command Design Rationale
438- - `show-protocol `: AI needs rules before generating (Scenario 1)
472+ - `show-spec `: AI needs rules before generating (Scenario 1)
439473- `validate`: Critical for both AI and developers (All scenarios)
440474- `init`: Developer quick setup (Scenario 2)
441475```
@@ -464,9 +498,9 @@ MetaSpec now guides developers to design toolkits from user needs, not just tech
464498 ├── {library-spec-2}/ # Another specification system
465499 │ ├── commands/
466500 │ └── templates/
467- └── {custom}/ # Custom (from protocol )
468- ├── commands/ # Protocol -specific Slash Commands
469- └── templates/ # Protocol entity templates
501+ └── {custom}/ # Custom (from domain specification )
502+ ├── commands/ # Specification -specific Slash Commands
503+ └── templates/ # Specification entity templates
470504 ```
471505
4725062 . ** Key Benefits** :
@@ -484,14 +518,14 @@ MetaSpec now guides developers to design toolkits from user needs, not just tech
484518 ├── spec-kit/ # From library/sdd/spec-kit
485519 │ ├── commands/
486520 │ └── templates/
487- └── mcp/ # Custom (from protocol /001-mcp-protocol )
521+ └── mcp/ # Custom (from domain /001-mcp-spec )
488522 ├── commands/
489523 └── templates/
490524 ```
491525
4925264 . ** Implementation Guide** :
493527 - ** Library Specifications** : Copy from MetaSpec library → ` templates/{library-name}/ `
494- - ** Custom Specification** : Derive from protocol → ` templates/{domain}/ `
528+ - ** Custom Specification** : Derive from domain specification → ` templates/{domain}/ `
495529 - ** Examples** : Separate top-level ` examples/ ` directory (not under ` templates/ ` )
496530
497531** Why This Matters** :
@@ -506,7 +540,7 @@ MetaSpec now guides developers to design toolkits from user needs, not just tech
506540- [ ] Library specifications mapped to ` templates/{library-name}/ `
507541- [ ] Custom specification in ` templates/{domain}/ `
508542- [ ] P0 Slash Commands created (from Step 2.5 STEP 4)
509- - [ ] Entity templates match protocol entities
543+ - [ ] Entity templates match specification entities
510544- [ ] Examples in top-level ` examples/ ` directory
511545- [ ] At least 1-2 complete examples
512546
@@ -618,7 +652,7 @@ MetaSpec now guides developers to design toolkits from user needs, not just tech
6186521 . ** Templates Directory Structure** : Organized by specification system source
6196532 . ** Template Mapping** : Library specs → directory names
6206543 . ** P0 Slash Commands** : Must-implement commands from scenarios
621- 4 . ** Entity Templates** : Protocol entities → template files
655+ 4 . ** Entity Templates** : Specification entities → template files
6226565 . ** Examples Directory** : Separate structure with basic/advanced/use-cases
6236576 . ** Implementation Checklist** : Verification checklist
624658
@@ -637,7 +671,7 @@ templates/
637671├── spec-kit/ # From library/sdd/spec-kit
638672│ ├── commands/
639673│ └── templates/
640- └── mcp/ # Custom (from protocol )
674+ └── mcp/ # Custom (from domain specification )
641675 ├── commands/
642676 └── templates/
643677
@@ -709,8 +743,8 @@ examples/
709743 - Examples organization (basic/advanced)
710744
7117453 . ** Updated Key Principle** :
712- - Before: "Toolkit specs explicitly depend on protocol specs and define HOW to implement"
713- - After: "Toolkit specs explicitly depend on protocol specs , ** derive features from user scenarios** , and define HOW to implement"
746+ - Before: "Toolkit specs explicitly depend on specifications and define HOW to implement"
747+ - After: "Toolkit specs explicitly depend on specifications , ** derive features from user scenarios** , and define HOW to implement"
714748
715749** Benefits** :
716750- ✅ AI Agents now understand how to use User Journey Analysis
@@ -766,7 +800,7 @@ examples/
766800 - Type B (Action Sequence): Each action becomes a command (like MetaSpec's specify → clarify → plan)
767801 - Judgment rule: verb/action → command, noun/state → navigation
768802
769- 3 . ** Embedded Protocol Knowledge**
803+ 3 . ** Embedded Specification Knowledge**
770804 - Slash Commands now embed: entity definitions, validation rules, examples
771805 - AI can produce compliant output without external reference
772806 - Self-validation checklists included
@@ -787,7 +821,7 @@ examples/
787821** Key Additions** :
788822
7898231 . ** CLI vs Slash Commands Distinction**
790- - Slash Commands = Protocol -Driven (workflow actions)
824+ - Slash Commands = Specification -Driven (workflow actions)
791825 - CLI Commands = Purpose-Driven (toolkit functions)
792826 - Clear separation of concerns
793827
@@ -799,12 +833,12 @@ examples/
7998333 . ** 4-Step CLI Derivation Process**
800834 - STEP 1: Define Toolkit Type (Generator? Validator? Query Tool?)
801835 - STEP 2: Derive CLI Commands from Type (type → commands mapping)
802- - STEP 3: Protocol -Influenced CLI Parameters (protocol affects parameters, not commands)
836+ - STEP 3: Specification -Influenced CLI Parameters (specification affects parameters, not commands)
803837 - STEP 4: Define CLI Implementation (detailed specs for each command)
804838
8058394 . ** Real-World Validation**
806840 - Analyzed 4 projects: Spec-Kit (shell scripts), OpenSpec (validator+query), MetaSpec (generator+community), Specify (generator+checker)
807- - Confirmed: CLI commands come from toolkit purpose, not protocol workflow
841+ - Confirmed: CLI commands come from toolkit purpose, not specification workflow
808842 - Examples included for each toolkit type
809843
810844** Impact** : AI now has clear methodology to derive appropriate CLI commands based on toolkit purpose, avoiding both over-engineering and missing essential functionality.
@@ -824,11 +858,11 @@ examples/
824858** What Changed** :
825859
8268601 . ** Slash Commands - STEP 2 (Complete Rewrite)**
827- - ❌ Removed: Hardcoded mapping table (Protocol Content → Fixed Command Names)
828- - ✅ Added: Command naming process (3 steps: Read protocol → Extract verbs/nouns → Form domain names)
861+ - ❌ Removed: Hardcoded mapping table (Specification Content → Fixed Command Names)
862+ - ✅ Added: Command naming process (3 steps: Read specification → Extract verbs/nouns → Form domain names)
829863 - ✅ Added: Real project patterns (Spec-Kit, OpenSpec, MetaSpec naming examples)
830864 - ✅ Added: "Command Purpose Categories" (guidance, NOT fixed names)
831- - ✅ Example: MCP protocol → ` define-server ` , ` configure-tools ` (NOT get-template)
865+ - ✅ Example: MCP specification → ` define-server ` , ` configure-tools ` (NOT get-template)
832866
8338672 . ** CLI Commands - STEP 2 (Complete Rewrite)**
834868 - ❌ Removed: Hardcoded command table (Toolkit Type → Fixed CLI Commands)
@@ -838,14 +872,14 @@ examples/
838872 - ✅ Example: MCP-Speckit → ` show ` , ` docs ` , ` list ` (NOT get-spec, get-template)
839873
8408743 . ** Updated All Examples**
841- - STEP 3: Protocol parameters (removed get-template, get-spec examples)
875+ - STEP 3: Specification parameters (removed get-template, get-spec examples)
842876 - Classification Example: Now uses domain-specific names
843877 - CLI Implementation Checklist: Removed hardcoded commands, added naming guidance
844878
845879** Key Principle Now Enforced** :
846880```
847881❌ DON'T: Use generic/hardcoded names (get-spec, get-template, validate)
848- ✅ DO: Extract domain-specific names from protocol terminology
882+ ✅ DO: Extract domain-specific names from specification terminology
849883```
850884
851885** Real Project Alignment** :
@@ -862,24 +896,24 @@ examples/
862896
863897#### Combined Impact - Complete Command Architecture
864898
865- ** Slash Commands** (Protocol -Driven) + ** CLI Commands** (Purpose-Driven) = Complete toolkit architecture
899+ ** Slash Commands** (Specification -Driven) + ** CLI Commands** (Purpose-Driven) = Complete toolkit architecture
866900
867901** Before** ❌:
868902- Generic templates (init, validate, generate)
869903- No methodology for command derivation
870904- Confusion between CLI and Slash Commands
871905
872906** After** ✅:
873- - Protocol -derived Slash Commands (from workflow, entities, validation rules)
907+ - Specification -derived Slash Commands (from workflow, entities, validation rules)
874908- Purpose-derived CLI Commands (from toolkit type)
875909- Clear separation and derivation methodology
876910
877911** Example - MCP-Speckit** :
878912```
879- Slash Commands (from MCP protocol ):
880- /mcpspeckit.define-requirements ← From protocol workflow
881- /mcpspeckit.create-design ← From protocol entities
882- /mcpspeckit.generate-code ← From protocol operations
913+ Slash Commands (from MCP specification ):
914+ /mcpspeckit.define-requirements ← From specification workflow
915+ /mcpspeckit.create-design ← From specification entities
916+ /mcpspeckit.generate-code ← From specification operations
883917
884918CLI Commands (from toolkit purpose):
885919 mcpspeckit validate <file> ← Toolkit = Validator
@@ -905,9 +939,9 @@ CLI Commands (from toolkit purpose):
905939
906940### ✨ New Features - Phase 1: Complete Iteration-Aware Design
907941- ** All Validation/Analysis Commands** now support iterative refinement:
908- - ` /metaspec.sds.checklist ` - Protocol quality validation with iteration tracking
909- - ` /metaspec.sds.analyze ` - Protocol consistency analysis with progress comparison
910- - ` /metaspec.sds.clarify ` - Protocol ambiguity resolution with resolved item tracking
942+ - ` /metaspec.sds.checklist ` - Specification quality validation with iteration tracking
943+ - ` /metaspec.sds.analyze ` - Specification consistency analysis with progress comparison
944+ - ` /metaspec.sds.clarify ` - Specification ambiguity resolution with resolved item tracking
911945 - ` /metaspec.sdd.checklist ` - Toolkit quality validation with iteration tracking
912946 - ` /metaspec.sdd.analyze ` - Toolkit consistency analysis with progress comparison
913947 - ` /metaspec.sdd.clarify ` - Toolkit ambiguity resolution with resolved item tracking
@@ -976,7 +1010,7 @@ CLI Commands (from toolkit purpose):
9761010 - Template files now properly included in distribution
9771011
9781012### 🎯 Improvements
979- - ** SDS/SDD Symmetry** : Better alignment between protocol and toolkit workflows
1013+ - ** SDS/SDD Symmetry** : Better alignment between specification and toolkit workflows
9801014- ** Quality Assurance** : Comprehensive quality validation for both SDS and SDD layers
9811015
9821016## [ 0.1.2] - 2025-11-04
0 commit comments