Skip to content

Add lightweight verification step (implementation vs spec) #381

Closed

Description

@ramarivera

Problem

Today OpenSpec validates spec structure, but there is no lightweight, built-in way to guide post-implementation verification against an approved change. Teams end up improvising how to verify alignment with change deltas/specs, which can lead to drift or missed requirements.

Proposal

Introduce an optional, lightweight verification workflow that lives with each change:

  • Add a per-change openspec/changes/<change-id>/verification.md template that captures:
    • Spec alignment expectations (which deltas/specs apply)
    • Hallucination risks (packages/functions/paths that must/must not exist)
    • Pattern references (files to match)
    • Spec-specific rules (hard constraints)
  • Provide a /verify slash command (or guidance in AGENTS.md) that instructs AI to:
    • Load openspec/changes/<change-id>/verification.md
    • Compare implementation to openspec/changes/<change-id>/specs/ and baseline openspec/specs/
    • Flag spec drift, missing acceptance criteria, or hallucinated usage

Benefits

Notes / Implementation sketch

  • Add template file under OpenSpec assets (or generate on openspec proposal).
  • Keep verification guidance separate from spec linting (this is post-implementation review guidance).
  • The verification.md format can be markdown-only; no parsing required initially.

Disclaimer: This issue was drafted with AI assistance after searching existing OpenSpec issues for related requests.

Activity

  1. coderabbitai commented on Dec 21, 2025

    @coderabbitai
    Contributor

    📝 CodeRabbit Plan Mode

    Generate an implementation plan and prompts that you can use with your favorite coding agent.

    • Create Plan
    Examples

    🔗 Similar Issues

    Related Issues

    🔗 Related PRs

    #283 - Fix Cline: use workflows instead of rules for slash commands [merged]
    #306 - Enhance proposal guidelines in slash-command-templates.ts [merged]
    #310 - Clarify scaffold proposal [merged]
    #318 - Add Antigravity workflow support [merged]
    #376 - feat(spec): add XDG global config and config command proposals [merged]

    👤 Suggested Assignees

    🧪 Issue enrichment is currently in open beta.

    You can configure auto-planning by selecting labels in the issue_enrichment configuration.

    To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

    issue_enrichment:
      auto_enrich:
        enabled: false

    💬 Have feedback or questions? Drop into our discord or schedule a call!

  2. ramarivera commented on Dec 21, 2025

    @ramarivera
    Author

    I would be more than happy to raise a proposal and iterate on this :)

  3. TabishB commented on Dec 21, 2025

    @TabishB
    Contributor

    @ramarivera I'm pretty aligned on this, I think it's needed and something that should be in the default workflow. Happy for you to create a proposal.

    I'm holding off on adding more steps/slash commands for now as I'm doing a bit of a refactor to make OpenSpec more customisable by being able to modify or create your own "workflow"/artifacts generated so to speak.

    The goal will be to maintain a default -> This is what we think works best overall workflow but allow users to modify/create your own. This will also help us experiment more and test out different versions of workflows to see what actually works better in practice.

    I want to convert the current workflow to this new format as well as make it more granular for better control. I was thinking of adding this step as part of that.

    This will hopefully be in by next week. Just giving some rough estimates on timelines here. So yes feel free to go ahead and create the proposal and we can start experimenting this with the new workflow.

  4. ramarivera commented on Dec 22, 2025

    @ramarivera
    Author

    @ramarivera I'm pretty aligned on this, I think it's needed and something that should be in the default workflow. Happy for you to create a proposal.

    I'm holding off on adding more steps/slash commands for now as I'm doing a bit of a refactor to make OpenSpec more customisable by being able to modify or create your own "workflow"/artifacts generated so to speak.

    The goal will be to maintain a default -> This is what we think works best overall workflow but allow users to modify/create your own. This will also help us experiment more and test out different versions of workflows to see what actually works better in practice.

    I want to convert the current workflow to this new format as well as make it more granular for better control. I was thinking of adding this step as part of that.

    This will hopefully be in by next week. Just giving some rough estimates on timelines here. So yes feel free to go ahead and create the proposal and we can start experimenting this with the new workflow.

    Hey @TabishB , do you need any help with the workflow engine and so on? Happy to help there as well

  5. TabishB commented on Dec 22, 2025

    @TabishB
    Contributor

    @ramarivera I'm open to collaboration! I'll be create a few changes for this soon. Wold be open to a sanity check and getting your thoughts on it. Maybe dm me on discord or let me know what platform you prefer

  6. TabishB commented on Apr 11, 2026

    @TabishB
    Contributor

    We have a /verify command now that can do this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions