Merge branch 'localden/vscode' of https://github.com/github/spec-kit into localden/vscode

This commit is contained in:
den (work)
2025-10-21 15:19:29 -07:00
13 changed files with 81 additions and 38 deletions

18
.github/workflows/lint.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
name: Lint
on:
push:
branches: ["main"]
pull_request:
jobs:
markdownlint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run markdownlint-cli2
uses: DavidAnson/markdownlint-cli2-action@v19
with:
globs: '**/*.md'

24
.markdownlint-cli2.jsonc Normal file
View File

@@ -0,0 +1,24 @@
{
// https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md
"config": {
"default": true,
"MD003": {
"style": "atx"
},
"MD007": {
"indent": 2
},
"MD013": false,
"MD024": {
"siblings_only": true
},
"MD033": false,
"MD041": false,
"MD049": {
"style": "asterisk"
},
"MD050": {
"style": "asterisk"
}
}
}

View File

@@ -63,7 +63,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- New `/clarify` command template to surface up to 5 targeted clarification questions for an existing spec and persist answers into a Clarifications section in the spec. - New `/clarify` command template to surface up to 5 targeted clarification questions for an existing spec and persist answers into a Clarifications section in the spec.
- New `/analyze` command template providing a non-destructive cross-artifact discrepancy and alignment report (spec, clarifications, plan, tasks, constitution) inserted after `/tasks` and before `/implement`. - New `/analyze` command template providing a non-destructive cross-artifact discrepancy and alignment report (spec, clarifications, plan, tasks, constitution) inserted after `/tasks` and before `/implement`.
- Note: Constitution rules are explicitly treated as non-negotiable; any conflict is a CRITICAL finding requiring artifact remediation, not weakening of principles. - Note: Constitution rules are explicitly treated as non-negotiable; any conflict is a CRITICAL finding requiring artifact remediation, not weakening of principles.
## [0.0.16] - 2025-09-22 ## [0.0.16] - 2025-09-22

View File

@@ -14,21 +14,21 @@ orientation.
Examples of behavior that contributes to creating a positive environment Examples of behavior that contributes to creating a positive environment
include: include:
* Using welcoming and inclusive language - Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences - Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism - Gracefully accepting constructive criticism
* Focusing on what is best for the community - Focusing on what is best for the community
* Showing empathy towards other community members - Showing empathy towards other community members
Examples of unacceptable behavior by participants include: Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or - The use of sexualized language or imagery and unwelcome sexual attention or
advances advances
* Trolling, insulting/derogatory comments, and personal or political attacks - Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment - Public or private harassment
* Publishing others' private information, such as a physical or electronic - Publishing others' private information, such as a physical or electronic
address, without explicit permission address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a - Other conduct which could reasonably be considered inappropriate in a
professional setting professional setting
## Our Responsibilities ## Our Responsibilities

View File

@@ -1,4 +1,4 @@
## Contributing to Spec Kit # Contributing to Spec Kit
Hi there! We're thrilled that you'd like to contribute to Spec Kit. Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE). Hi there! We're thrilled that you'd like to contribute to Spec Kit. Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE).

View File

@@ -1,5 +1,5 @@
<div align="center"> <div align="center">
<img src="./media/logo_small.webp"/> <img src="./media/logo_small.webp" alt="Spec Kit Logo"/>
<h1>🌱 Spec Kit</h1> <h1>🌱 Spec Kit</h1>
<h3><em>Build high-quality software faster.</em></h3> <h3><em>Build high-quality software faster.</em></h3>
</div> </div>
@@ -253,7 +253,7 @@ Additional commands for enhanced quality and validation:
Spec-Driven Development is a structured process that emphasizes: Spec-Driven Development is a structured process that emphasizes:
- **Intent-driven development** where specifications define the "_what_" before the "_how_" - **Intent-driven development** where specifications define the "*what*" before the "*how*"
- **Rich specification creation** using guardrails and organizational principles - **Rich specification creation** using guardrails and organizational principles
- **Multi-step refinement** rather than one-shot code generation from prompts - **Multi-step refinement** rather than one-shot code generation from prompts
- **Heavy reliance** on advanced AI model capabilities for specification interpretation - **Heavy reliance** on advanced AI model capabilities for specification interpretation
@@ -383,7 +383,7 @@ This step creates or updates the `.specify/memory/constitution.md` file with you
With your project principles established, you can now create the functional specifications. Use the `/speckit.specify` command and then provide the concrete requirements for the project you want to develop. With your project principles established, you can now create the functional specifications. Use the `/speckit.specify` command and then provide the concrete requirements for the project you want to develop.
>[!IMPORTANT] >[!IMPORTANT]
>Be as explicit as possible about _what_ you are trying to build and _why_. **Do not focus on the tech stack at this point**. >Be as explicit as possible about *what* you are trying to build and *why*. **Do not focus on the tech stack at this point**.
An example prompt: An example prompt:

View File

@@ -1,6 +1,6 @@
Thanks for helping make GitHub safe for everyone. # Security Policy
# Security Thanks for helping make GitHub safe for everyone.
GitHub takes the security of our software products and services seriously, including all of the open source code repositories managed through our GitHub organizations, such as [GitHub](https://github.com/GitHub). GitHub takes the security of our software products and services seriously, including all of the open source code repositories managed through our GitHub organizations, such as [GitHub](https://github.com/GitHub).
@@ -16,13 +16,13 @@ Instead, please send an email to opensource-security[@]github.com.
Please include as much of the information listed below as you can to help us better understand and resolve the issue: Please include as much of the information listed below as you can to help us better understand and resolve the issue:
* The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting) - The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting)
* Full paths of source file(s) related to the manifestation of the issue - Full paths of source file(s) related to the manifestation of the issue
* The location of the affected source code (tag/branch/commit or direct URL) - The location of the affected source code (tag/branch/commit or direct URL)
* Any special configuration required to reproduce the issue - Any special configuration required to reproduce the issue
* Step-by-step instructions to reproduce the issue - Step-by-step instructions to reproduce the issue
* Proof-of-concept or exploit code (if possible) - Proof-of-concept or exploit code (if possible)
* Impact of the issue, including how an attacker might exploit the issue - Impact of the issue, including how an attacker might exploit the issue
This information will help us triage your report more quickly. This information will help us triage your report more quickly.

View File

@@ -8,7 +8,7 @@ Auto-generated from all feature plans. Last updated: [DATE]
## Project Structure ## Project Structure
``` ```text
[ACTUAL STRUCTURE FROM PLANS] [ACTUAL STRUCTURE FROM PLANS]
``` ```

View File

@@ -93,11 +93,11 @@ Execution steps:
- Each question must be answerable with EITHER: - Each question must be answerable with EITHER:
- A short multiplechoice selection (25 distinct, mutually exclusive options), OR - A short multiplechoice selection (25 distinct, mutually exclusive options), OR
- A one-word / shortphrase answer (explicitly constrain: "Answer in <=5 words"). - A one-word / shortphrase answer (explicitly constrain: "Answer in <=5 words").
- Only include questions whose answers materially impact architecture, data modeling, task decomposition, test design, UX behavior, operational readiness, or compliance validation. - Only include questions whose answers materially impact architecture, data modeling, task decomposition, test design, UX behavior, operational readiness, or compliance validation.
- Ensure category coverage balance: attempt to cover the highest impact unresolved categories first; avoid asking two low-impact questions when a single high-impact area (e.g., security posture) is unresolved. - Ensure category coverage balance: attempt to cover the highest impact unresolved categories first; avoid asking two low-impact questions when a single high-impact area (e.g., security posture) is unresolved.
- Exclude questions already answered, trivial stylistic preferences, or plan-level execution details (unless blocking correctness). - Exclude questions already answered, trivial stylistic preferences, or plan-level execution details (unless blocking correctness).
- Favor clarifications that reduce downstream rework risk or prevent misaligned acceptance tests. - Favor clarifications that reduce downstream rework risk or prevent misaligned acceptance tests.
- If more than 5 categories remain unresolved, select the top 5 by (Impact * Uncertainty) heuristic. - If more than 5 categories remain unresolved, select the top 5 by (Impact * Uncertainty) heuristic.
4. Sequential questioning loop (interactive): 4. Sequential questioning loop (interactive):
- Present EXACTLY ONE question at a time. - Present EXACTLY ONE question at a time.
@@ -115,8 +115,8 @@ Execution steps:
|--------|-------------| |--------|-------------|
| A | <Option A description> | | A | <Option A description> |
| B | <Option B description> | | B | <Option B description> |
| C | <Option C description> | (add D/E as needed up to 5) | C | <Option C description> (add D/E as needed up to 5) |
| Short | Provide a different short answer (<=5 words) | (Include only if free-form alternative is appropriate) | Short | Provide a different short answer (<=5 words) (Include only if free-form alternative is appropriate) |
- After the table, add: `You can reply with the option letter (e.g., "A"), accept the recommendation by saying "yes" or "recommended", or provide your own short answer.` - After the table, add: `You can reply with the option letter (e.g., "A"), accept the recommendation by saying "yes" or "recommended", or provide your own short answer.`
- For shortanswer style (no meaningful discrete options): - For shortanswer style (no meaningful discrete options):

View File

@@ -25,7 +25,7 @@ You **MUST** consider the user input before proceeding (if not empty).
- Incomplete items: Lines matching `- [ ]` - Incomplete items: Lines matching `- [ ]`
- Create a status table: - Create a status table:
``` ```text
| Checklist | Total | Completed | Incomplete | Status | | Checklist | Total | Completed | Incomplete | Status |
|-----------|-------|-----------|------------|--------| |-----------|-------|-----------|------------|--------|
| ux.md | 12 | 12 | 0 | ✓ PASS | | ux.md | 12 | 12 | 0 | ✓ PASS |

View File

@@ -52,7 +52,7 @@ You **MUST** consider the user input before proceeding (if not empty).
2. **Generate and dispatch research agents**: 2. **Generate and dispatch research agents**:
``` ```text
For each unknown in Technical Context: For each unknown in Technical Context:
Task: "Research {unknown} for {feature context}" Task: "Research {unknown} for {feature context}"
For each technology choice: For each technology choice:

View File

@@ -37,7 +37,7 @@
### Documentation (this feature) ### Documentation (this feature)
``` ```text
specs/[###-feature]/ specs/[###-feature]/
├── plan.md # This file (/speckit.plan command output) ├── plan.md # This file (/speckit.plan command output)
├── research.md # Phase 0 output (/speckit.plan command) ├── research.md # Phase 0 output (/speckit.plan command)
@@ -55,7 +55,7 @@ specs/[###-feature]/
not include Option labels. not include Option labels.
--> -->
``` ```text
# [REMOVE IF UNUSED] Option 1: Single project (DEFAULT) # [REMOVE IF UNUSED] Option 1: Single project (DEFAULT)
src/ src/
├── models/ ├── models/
@@ -96,7 +96,7 @@ directories captured above]
## Complexity Tracking ## Complexity Tracking
*Fill ONLY if Constitution Check has violations that must be justified* > **Fill ONLY if Constitution Check has violations that must be justified**
| Violation | Why Needed | Simpler Alternative Rejected Because | | Violation | Why Needed | Simpler Alternative Rejected Because |
|-----------|------------|-------------------------------------| |-----------|------------|-------------------------------------|

View File

@@ -1,4 +1,5 @@
--- ---
description: "Task list template for feature implementation" description: "Task list template for feature implementation"
--- ---
@@ -80,7 +81,7 @@ Examples of foundational tasks (adjust based on your project):
### Tests for User Story 1 (OPTIONAL - only if tests requested) ⚠️ ### Tests for User Story 1 (OPTIONAL - only if tests requested) ⚠️
**NOTE: Write these tests FIRST, ensure they FAIL before implementation** > **NOTE: Write these tests FIRST, ensure they FAIL before implementation**
- [ ] T010 [P] [US1] Contract test for [endpoint] in tests/contract/test_[name].py - [ ] T010 [P] [US1] Contract test for [endpoint] in tests/contract/test_[name].py
- [ ] T011 [P] [US1] Integration test for [user journey] in tests/integration/test_[name].py - [ ] T011 [P] [US1] Integration test for [user journey] in tests/integration/test_[name].py