docs: establish spec governance and restructure 28 specs#634
docs: establish spec governance and restructure 28 specs#634joshsmithxrm merged 14 commits intomainfrom
Conversation
Establishes naming, lifecycle, and granularity rules for specs. Constitution amendment (SL1-SL5), template updates, auto-generated README, /spec reconcile mode, and restructuring guidelines for all 32 existing specs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
6-phase plan: Constitution amendment, template update, skill migrations, /spec reconcile mode, auto-generated README. Phases 1-2 parallel, Phase 3 tasks parallel, sequential from Phase 4. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Phase 1: New Spec Laws section in Constitution covering naming (one spec per domain concept), lifecycle (living docs, plans are ephemeral), surface sections, frontmatter requirements, and deletion policy. Removes specs/README.md as "Index" from CLAUDE.md. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Phase 2: Remove Version field, add Surfaces frontmatter, add Changelog section replacing version numbers, add surface-specific behavior subsections, strengthen Code: guidance requiring grep-friendly path prefixes per Constitution SL4. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Phase 3: /spec, /spec-audit, /gates, /review, /implement, and ext-panels now discover governing specs by grepping **Code:** frontmatter lines instead of reading specs/README.md. Removes hardcoded code-path-to-spec mappings from /implement. Adds instruction for /implement to update spec Code: frontmatter when creating new code paths. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Phase 4: /spec now has three modes — forward (create), update, and reconcile (align spec with code). Reconcile mode enumerates public types/methods, compares against ACs, includes member-count verification to prevent the LLM summarization problem. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Phase 5: Add scripts/generate-spec-readme.py that scrapes H1, Status, Surfaces, Code, and first Overview sentence from all specs. README is now auto-generated with 33 specs listed (was 16 hand-maintained). Includes AUTO-GENERATED comment to prevent hand-editing. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…de path Review fix: escape | characters in all frontmatter fields before inserting into markdown table rows. Also change spec-governance.md Code: from overly-broad specs/ prefix to System-wide per SL4. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Decompose panel-parity.md into 5 individual feature specs (import-jobs, connection-references, environment-variables, metadata-browser, web-resources) and merge Plugin Traces content into plugin-traces.md. Merge TUI surface specs into domain specs per SL3: - tui-plugin-traces.md → plugin-traces.md - tui-migration.md → migration.md - tui-plugin-registration.md → plugins.md - tui-solutions.md → solutions.md (new) - tui-environment-dashboard.md → environment-dashboard.md (new) Consolidate enhancement/project specs per SL1/SL2: - query-parity.md + query-engine-v2.md → query.md + docs/plans/ - vscode-data-explorer-*.md → data-explorer.md (new) - solution-component-names.md → solutions.md - vscode-persistence-and-solutions-polish.md → solutions.md + docs/plans/ - tui-foundation.md → docs/plans/ (project spec) Rename per SL1: vscode-webview-cdp-tool.md → ext-verify-tool.md Net: 14 specs removed, 8 created, 4 updated, 1 renamed. Specs directory: 33 → 31 files (28 domain specs + 3 special). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update authentication, connection-pooling, bulk-operations, cli, mcp, tui, analyzers, dataverse-services, and update-check with Surfaces frontmatter, Changelog sections, and Version line removal per spec governance template compliance. Regenerate specs/README.md to reflect all restructured specs (28 total). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…implement The prose reference to "code-reviewer agent" was ambiguous — sessions interpreted it as superpowers:code-reviewer (a built-in agent type) instead of the project's /review skill. This caused PR #633's session to invoke the wrong tool. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…README generator Fix cross-references in solutions.md, data-explorer.md, ext-verify-tool.md, environment-dashboard.md, and tui-verify-tool.md that pointed to deleted/renamed spec files. Add try/except to generate-spec-readme.py for unreadable files. Found by impartial code review. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly refines the documentation and specification management within the project. It introduces a robust governance model for specifications, ensuring that documentation remains accurate and consistent with the codebase. By centralizing spec discovery and enabling automated reconciliation, it streamlines the development workflow and enhances clarity for all contributors. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
…tructions All 9 workflow state write sites across 10 skill/command files now call `python scripts/workflow-state.py` instead of describing JSON manipulation in prose. The utility enforces the canonical path (.workflow/state.json), handles type coercion (now→timestamp, true/false→bool, digits→int), and supports dotted key paths (gates.passed, verify.ext, etc.). This prevents the path mismatch bug from PR #633 where the AI wrote state to .claude/workflow-state.json instead of .workflow/state.json, making all hooks blind to workflow progress. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Code Review
This pull request introduces a comprehensive and well-thought-out governance model for the project's specifications. The changes are extensive, including amending the constitution with 'Spec Laws', updating the spec template, and decoupling agent skills from a static README by introducing a dynamic, grep-based discovery mechanism. A new Python script to auto-generate the specs/README.md is a great addition for ensuring documentation stays synchronized. The restructuring of 28 specs, separating project plans from living domain documents and consolidating surface-specific details, significantly improves the organization and maintainability of the documentation. Overall, this is an excellent set of changes that will improve the quality and consistency of the project's specifications. I have one minor suggestion to improve the robustness of the new README generation script.
Take entire first overview line instead of regex sentence splitting, which could prematurely truncate on abbreviations like "e.g." Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Summary
scripts/generate-spec-readme.py, added/specreconcile modepanel-parity.mdinto 5 feature specs, merged 5 TUI surface specs into domain specs, consolidated query/data-explorer/solutions specs, renamedvscode-webview-cdp-tool.md, moved 2 project specs todocs/plans/Test Plan
scripts/generate-spec-readme.pyproduces correct README from frontmatterVerification
🤖 Generated with Claude Code