[Extension]: Update the Verify Tasks Extension to v1.2.0
- 主要语言
- Python
- 星标
- 137k
- 派生
- 12.3k
- 平均合并
- 2 天 12 小时
- 30 天内合并 PR
- 159
描述
### Extension ID
verify-tasks
### Extension Name
Verify Tasks
### Version
1.2.0
### Description
Detect phantom completions: tasks marked [X] in tasks.md with no real implementation.
### Author
Dave Sharpe
### Repository URL
https://github.com/datastone-inc/spec-kit-verify-tasks
### Download URL
https://github.com/datastone-inc/spec-kit-verify-tasks/archive/refs/tags/v1.2.0.zip
### License
MIT
### Homepage (optional)
https://github.com/datastone-inc/spec-kit-verify-tasks
### Documentation URL (optional)
_No response_
### Changelog URL (optional)
https://github.com/datastone-inc/spec-kit-verify-tasks/blob/master/CHANGELOG.md
### Required Spec Kit Version
>=0.12.17
### Required Tools (optional)
```markdown
```
### Number of Commands
1
### Number of Hooks (optional)
2
### Tags
verification, quality, phantom-completion, tasks
### Key Features
- Detects phantom completions: tasks marked `[X]` in `tasks.md` that have no real implementation behind them
- Five-layer check: file existence, git diff cross-reference, content pattern match, dead-code/wiring detection, and semantic assessment
- Pairs with `/speckit.converge`: converge finds what is not built, verify-tasks finds what is falsely marked built
- New in 1.2.0: optional `after_converge` hook alongside `after_implement`, so verify-tasks is the final gate once converge reports Converged
- New in 1.2.0: every `PARTIAL` is tagged `(code)` or `(record)`, and the walkthrough can demote a false `[X]` back to `[ ]` (one character, after confirmation) so the converge/implement loop picks it up
- New in 1.2.0: convergence tasks' `per FR-003 (missing)` source-ref is read directly in the semantic layer
- Since 1.1.0: runs the project's canonical test command once and records the result, so "suite is green" claims are verified by execution
- Structured `verify-tasks-report.md` with per-task verdicts and an interactive walkthrough for flagged items
### Testing Checklist
- [x] Extension installs successfully via download URL
- [x] All commands execute without errors
- [x] Documentation is complete and accurate
- [x] No security vulnerabilities identified
- [x] Tested on at least one real project
### Submission Requirements
- [x] Valid `extension.yml` manifest included
- [x] README.md with installation and usage instructions
- [x] LICENSE file included
- [x] GitHub release created with version tag
- [x] All command files exist and are properly formatted
- [x] Extension ID follows naming conventions (lowercase-with-hyphens)
### Testing Details
**Tested on:**
- Linux with Spec Kit 1.0.6
**Test scenarios:**
1. Installed via `specify extension add verify-tasks --from https://github.com/datastone-inc/spec-kit-verify-tasks/archive/refs/tags/v1.2.0.zip`; both `/speckit-verify-tasks` and `/speckit-verify-tasks-run` rendered
2. Ran `/speckit-verify-tasks` on a feature whose `tasks.md` names a test command; the test result appeared in the report header
4. 1.2.0: installed from the v1.2.0 archive into a fresh `specify init` project; both `after_implement` and `after_converge` registered in `.specify/extensions.yml`, and the archive install copies only the extension files (1.1.0 also copied the repo's own `.specify/`, `specs/` and `tests/`)
3. Ran against the bundled fixtures in `tests/fixtures/` (phantom, genuine, edge-case, 50-task scalability) and compared verdicts with `tests/expected-verdicts.md`
### Example Usage
```markdown
# Install
specify extension add verify-tasks --from https://github.com/datastone-inc/spec-kit-verify-tasks/archive/refs/tags/v1.2.0.zip
# After /speckit.implement (or once /speckit.converge reports Converged), in a fresh agent session:
/speckit.verify-tasks # verify every [X] task in tasks.md
/speckit.verify-tasks T003 T007 # verify specific tasks
/speckit.verify-tasks --scope branch # limit the git-diff check to the current branch
/speckit.verify-tasks T003 --scope uncommitted # one task, uncommitted changes only
# Output: verify-tasks-report.md with a verdict per task
# (VERIFIED / PARTIAL / WEAK / NOT_FOUND / SKIPPED)
```
### Proposed Catalog Entry
```json
{
"verify-tasks": {
"name": "Verify Tasks Extension",
"id": "verify-tasks",
"description": "Detect phantom completions: tasks marked [X] in tasks.md with no real implementation.",
"author": "Dave Sharpe",
"version": "1.2.0",
"download_url": "https://github.com/datastone-inc/spec-kit-verify-tasks/archive/refs/tags/v1.2.0.zip",
"repository": "https://github.com/datastone-inc/spec-kit-verify-tasks",
"homepage": "https://github.com/datastone-inc/spec-kit-verify-tasks",
"documentation": "https://github.com/datastone-inc/spec-kit-verify-tasks/blob/master/README.md",
"changelog": "https://github.com/datastone-inc/spec-kit-verify-tasks/blob/master/CHANGELOG.md",
"license": "MIT",
"category": "code",
"effect": "read-only",
"requires": {
"speckit_version": ">=0.12.17"
},
"provides": {
"commands": 1,
"hooks": 2
},
"tags": ["verification", "quality", "phantom-completion", "tasks"],
"verified": false,
"downloads": 0,
"stars": 0,
"created_at": "2026-03-16T00:00:00Z",
"updated_at": "2026-09-15T00:00:00Z"
}
}
```
### Additional Context
**This is an update to an existing catalog entry**, originally filed for v1.1.0 on 2026-09-13. v1.2.0 shipped on 2026-09-15 before the 1.1.0 update landed, so this issue now asks for the catalog to go from 1.0.0 straight to 1.2.0. The `update-verify-tasks-extension` branch the automation prepared carries 1.1.0 and should be regenerated. Release notes: https://github.com/datastone-inc/spec-kit-verify-tasks/releases/tag/v1.2.0
贡献指南
调研方向
Locate the existing verify-tasks catalog entry and compare it with the proposed JSON and the v1.2.0 release notes. Update the catalog from the prior version to v1.2.0, including its download URL and metadata, then regenerate the update-verify-tasks branch; done means the catalog reflects the v1.2.0 submission rather than the earlier 1.1.0 work.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- tooling
- Issue 类型
- 功能
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 68/100