|
| 1 | +# Implementation Plan: SPECTRA Update SKILL + Documentation Sync |
| 2 | + |
| 3 | +**Branch**: `029-update-skill-docs-sync` | **Date**: 2026-04-10 | **Spec**: [spec.md](spec.md) |
| 4 | +**Input**: Feature specification from `/specs/029-update-skill-docs-sync/spec.md` |
| 5 | + |
| 6 | +## Summary |
| 7 | + |
| 8 | +Add the 10th bundled SKILL (`spectra-update`) wrapping `spectra ai update` for Copilot Chat integration. Update agent delegation tables so both agents route update requests to the SKILL. Extend `UpdateResult` with missing fields. Sync all documentation to reflect 10 SKILLs. |
| 9 | + |
| 10 | +## Technical Context |
| 11 | + |
| 12 | +**Language/Version**: C# 12, .NET 8+ |
| 13 | +**Primary Dependencies**: System.Text.Json (serialization), Spectre.Console (terminal UX) |
| 14 | +**Storage**: File-based (embedded resources for SKILL content, `.spectra-result.json` / `.spectra-progress.html` for progress) |
| 15 | +**Testing**: xUnit (1354+ existing tests across 3 test projects) |
| 16 | +**Target Platform**: Windows, macOS, Linux (cross-platform .NET CLI tool) |
| 17 | +**Project Type**: CLI tool with VS Code Copilot Chat integration via bundled SKILLs |
| 18 | +**Performance Goals**: N/A (no runtime performance changes) |
| 19 | +**Constraints**: SKILL file must follow exact conventions (5-step flow, flags, step format, wait instruction) for Chat agent compatibility |
| 20 | +**Scale/Scope**: ~150 lines new code, ~100 lines test code, ~50 lines documentation changes |
| 21 | + |
| 22 | +## Constitution Check |
| 23 | + |
| 24 | +*GATE: Must pass before Phase 0 research. Re-check after Phase 1 design.* |
| 25 | + |
| 26 | +| Principle | Status | Notes | |
| 27 | +|-----------|--------|-------| |
| 28 | +| I. GitHub as Source of Truth | PASS | SKILL files are stored in Git at `.github/skills/`, embedded in the CLI binary as resources | |
| 29 | +| II. Deterministic Execution | PASS | No execution engine changes; SKILL delegates to existing deterministic CLI command | |
| 30 | +| III. Orchestrator-Agnostic Design | PASS | SKILL uses standard tools format compatible with any VS Code Chat participant | |
| 31 | +| IV. CLI-First Interface | PASS | SKILL wraps existing CLI command `spectra ai update`; no new functionality added outside CLI | |
| 32 | +| V. Simplicity (YAGNI) | PASS | No new abstractions; follows exact pattern of 9 existing SKILLs. Embedded resource auto-discovery means minimal code changes | |
| 33 | + |
| 34 | +All gates pass. No violations to justify. |
| 35 | + |
| 36 | +## Project Structure |
| 37 | + |
| 38 | +### Documentation (this feature) |
| 39 | + |
| 40 | +```text |
| 41 | +specs/029-update-skill-docs-sync/ |
| 42 | +├── plan.md # This file |
| 43 | +├── research.md # Phase 0 output |
| 44 | +├── data-model.md # Phase 1 output |
| 45 | +├── quickstart.md # Phase 1 output |
| 46 | +└── tasks.md # Phase 2 output (/speckit.tasks) |
| 47 | +``` |
| 48 | + |
| 49 | +### Source Code (repository root) |
| 50 | + |
| 51 | +```text |
| 52 | +src/Spectra.CLI/Skills/Content/Skills/ |
| 53 | +├── spectra-update.md # NEW: 10th embedded SKILL resource |
| 54 | +
|
| 55 | +src/Spectra.CLI/Skills/ |
| 56 | +├── SkillContent.cs # MODIFY: Add Update property |
| 57 | +├── SkillsManifest.cs # NO CHANGE: Auto-discovers via SkillContent.All |
| 58 | +
|
| 59 | +src/Spectra.CLI/Skills/Content/Agents/ |
| 60 | +├── spectra-generation.agent.md # MODIFY: Move update section to delegation table |
| 61 | +├── spectra-execution.agent.md # MODIFY: Add update delegation row |
| 62 | +
|
| 63 | +src/Spectra.CLI/Skills/ |
| 64 | +├── AgentContent.cs # NO CHANGE: Auto-loads from embedded resources |
| 65 | +
|
| 66 | +src/Spectra.CLI/Commands/Init/ |
| 67 | +├── InitHandler.cs # NO CHANGE: Loops through SkillContent.All (auto-discovers) |
| 68 | +
|
| 69 | +src/Spectra.CLI/Results/ |
| 70 | +├── UpdateResult.cs # MODIFY: Add missing fields (totalTests, testsFlagged, flaggedTests, duration, success) |
| 71 | +
|
| 72 | +tests/Spectra.CLI.Tests/Skills/ |
| 73 | +├── SkillsManifestTests.cs # MODIFY: Update test count assertions, add spectra-update tests |
| 74 | +``` |
| 75 | + |
| 76 | +**Structure Decision**: Follows existing project structure exactly. The SKILL is an embedded .md resource auto-discovered by `SkillResourceLoader`. No new directories or projects needed. |
| 77 | + |
| 78 | +## Complexity Tracking |
| 79 | + |
| 80 | +No violations. All changes follow established patterns. |
0 commit comments