-
Notifications
You must be signed in to change notification settings - Fork 987
feat: restructure schemas as directories with templates #411
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| name: spec-driven | ||
| version: 1 | ||
| description: Default OpenSpec workflow - proposal → specs → design → tasks | ||
| artifacts: | ||
| - id: proposal | ||
| generates: proposal.md | ||
| description: Initial proposal document outlining the change | ||
| template: proposal.md | ||
| requires: [] | ||
| - id: specs | ||
| generates: "specs/*.md" | ||
| description: Detailed specifications for the change | ||
| template: spec.md | ||
| requires: | ||
| - proposal | ||
| - id: design | ||
| generates: design.md | ||
| description: Technical design document with implementation details | ||
| template: design.md | ||
| requires: | ||
| - proposal | ||
| - id: tasks | ||
| generates: tasks.md | ||
| description: Implementation tasks derived from specs and design | ||
| template: tasks.md | ||
| requires: | ||
| - specs | ||
| - design |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| ## Context | ||
|
|
||
| <!-- Background and current state --> | ||
|
|
||
| ## Goals / Non-Goals | ||
|
|
||
| **Goals:** | ||
| <!-- What this design aims to achieve --> | ||
|
|
||
| **Non-Goals:** | ||
| <!-- What is explicitly out of scope --> | ||
|
|
||
| ## Decisions | ||
|
|
||
| <!-- Key design decisions and rationale --> | ||
|
|
||
| ## Risks / Trade-offs | ||
|
|
||
| <!-- Known risks and trade-offs --> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| ## Why | ||
|
|
||
| <!-- Explain the motivation for this change --> | ||
|
|
||
| ## What Changes | ||
|
|
||
| <!-- Describe what will change --> | ||
|
|
||
| ## Impact | ||
|
|
||
| <!-- List affected areas --> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| ## ADDED Requirements | ||
|
|
||
| ### Requirement: <!-- requirement name --> | ||
| <!-- requirement text --> | ||
|
|
||
| #### Scenario: <!-- scenario name --> | ||
| - **WHEN** <!-- condition --> | ||
| - **THEN** <!-- expected outcome --> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| ## 1. <!-- Task Group Name --> | ||
|
|
||
| - [ ] 1.1 <!-- Task description --> | ||
| - [ ] 1.2 <!-- Task description --> | ||
|
|
||
| ## 2. <!-- Task Group Name --> | ||
|
|
||
| - [ ] 2.1 <!-- Task description --> | ||
| - [ ] 2.2 <!-- Task description --> |
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,27 @@ | ||||||
| name: tdd | ||||||
| version: 1 | ||||||
| description: Test-driven development workflow - tests → implementation → docs | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Description doesn't mention the initial spec step. The description says "tests → implementation → docs" but the workflow actually starts with -description: Test-driven development workflow - tests → implementation → docs
+description: Test-driven development workflow - spec → tests → implementation → docs📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| artifacts: | ||||||
| - id: spec | ||||||
| generates: spec.md | ||||||
| description: Feature specification defining requirements | ||||||
| template: spec.md | ||||||
| requires: [] | ||||||
| - id: tests | ||||||
| generates: "tests/*.test.ts" | ||||||
| description: Test files written before implementation | ||||||
| template: test.md | ||||||
| requires: | ||||||
| - spec | ||||||
| - id: implementation | ||||||
| generates: "src/*.ts" | ||||||
| description: Implementation code to pass the tests | ||||||
| template: implementation.md | ||||||
| requires: | ||||||
| - tests | ||||||
| - id: docs | ||||||
| generates: "docs/*.md" | ||||||
| description: Documentation for the implemented feature | ||||||
| template: docs.md | ||||||
| requires: | ||||||
| - implementation | ||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| ## Overview | ||
|
|
||
| <!-- Feature overview --> | ||
|
|
||
| ## Getting Started | ||
|
|
||
| <!-- Quick start guide --> | ||
|
|
||
| ## Examples | ||
|
|
||
| <!-- Code examples --> | ||
|
|
||
| ## Reference | ||
|
|
||
| <!-- API reference or additional details --> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| ## Implementation Notes | ||
|
|
||
| <!-- Technical implementation details --> | ||
|
|
||
| ## API | ||
|
|
||
| <!-- Public API documentation --> | ||
|
|
||
| ## Usage | ||
|
|
||
| <!-- Usage examples --> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| ## Feature: <!-- feature name --> | ||
|
|
||
| <!-- Feature description --> | ||
|
|
||
| ## Requirements | ||
|
|
||
| <!-- List of requirements --> | ||
|
|
||
| ## Acceptance Criteria | ||
|
|
||
| <!-- List of acceptance criteria --> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| ## Test Plan | ||
|
|
||
| <!-- Describe the testing strategy --> | ||
|
|
||
| ## Test Cases | ||
|
|
||
| ### <!-- Test case name --> | ||
|
|
||
| - **Given:** <!-- preconditions --> | ||
| - **When:** <!-- action --> | ||
| - **Then:** <!-- expected result --> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Move Schema Directory Structure requirement into a dedicated ADDED Requirements section.
The new Schema Directory Structure requirement (lines 112–130) introduces orthogonal capabilities (schema directory layout, XDG_DATA_HOME overrides, fallback resolution, listing schemas) and should be organized under its own
## ADDED Requirementssection per spec delta conventions.Currently, it appears inline with other existing requirements, which obscures the structural change being introduced.
🔎 Suggested reorganization
After the existing requirements, add:
This clarifies that the schema directory structure is a new capability, distinct from the modified Schema Loading behavior.
Based on learnings, spec delta files should use
## ADDED Requirementsfor new orthogonal capabilities that can stand alone.📝 Committable suggestion
🤖 Prompt for AI Agents