Skip to content

fix(verify): find spec and design artifacts by output path - #2028

Open
drakeo338 wants to merge 2 commits into
Fission-AI:mainfrom
drakeo338:claude/2027-fix
Open

drakeo338 wants to merge 2 commits into
Fission-AI:mainfrom
drakeo338:claude/2027-fix

Conversation

@drakeo338

@drakeo338 drakeo338 commented Oct 2, 2026 •

Copy link
Copy Markdown

Closes #2027

What this changes

The verify workflow read contextFiles.specs and contextFiles.design, which only exist when a schema names its artifacts specs and design; with other artifact ids it found nothing to verify against. It now finds them through artifactPaths.<id>.outputPath: spec artifacts are those under specs/, and the design artifact is design.md. The generated skill file is regenerated to match.

How you verified it

The updated template tests failed on the previous source (58 passed, 3 failed) and pass with the change (61 passed, 0 failed). I did not run the full build, tsc or lint.

Notes

Written by Claude Code (Claude Sonnet 5.5); I ran the tests above myself.


  • Ran pnpm changeset if this affects users, and committed the file
  • If a coding agent wrote this, named the agent and model in the Notes section, and verified the result myself

Summary by CodeRabbit

  • Bug Fixes
    • Verification now finds specification and design artifacts using schema output paths, rather than relying on fixed artifact IDs.
    • When specification files are missing or empty, related checks are marked as not verified. Design adherence is marked as not verified when its file is missing or empty, and not applicable when no design artifact is defined.

The verify workflow read contextFiles.specs and contextFiles.design, which
only exist when the schema names its artifacts "specs" and "design".
Find them by artifactPaths.<id>.outputPath instead: spec artifacts are
those under specs/, the design artifact is design.md.

Closes Fission-AI#2027
Regenerate skills/openspec-verify-change/SKILL.md so the skills.sh copy
matches the template, and treat an artifact with id design, or an output
path ending in design.md, as the design artifact.

Signed-off-by: drakeo338 <paranoyouz@gmail.com>
@drakeo338
drakeo338 requested a review from a team as a code owner October 2, 2026 08:01
@drakeo338
drakeo338 requested review from clay-good and removed request for a team October 2, 2026 08:01
@coderabbitai

coderabbitai Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

🧰 Additional context used
📚 Code guidelines (1)
test/AGENTS.md — auto-discovered

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: Fission-AI/OpenSpec/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 7694dbfa-7bd5-4ed0-9c48-a6b5a6ee2c12

📥 Commits

Reviewing files that changed from the base of the PR and between bfa670e and 250c490.

📒 Files selected for processing (5)
  • .changeset/verify-change-artifact-paths.md
  • skills/openspec-verify-change/SKILL.md
  • src/core/templates/workflows/verify-change.ts
  • test/core/templates/skill-templates-parity.test.ts
  • test/core/templates/verify-change.test.ts

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.


📝 Walkthrough

Walkthrough

Verify instructions now locate spec and design artifacts through schema output paths and artifact IDs instead of relying only on fixed context-file keys. The templates update verification status when spec files are absent or empty, and when no design artifact is defined. Tests and the patch changeset are updated.

Changes

Verify artifact lookup

Layer / File(s) Summary
Artifact path detection and verification guidance
src/core/templates/workflows/verify-change.ts, skills/openspec-verify-change/SKILL.md, test/core/templates/verify-change.test.ts, test/core/templates/skill-templates-parity.test.ts, .changeset/verify-change-artifact-paths.md
Both templates and the skill guidance identify spec artifacts by output paths under specs/ and design artifacts by ID or output path. They use the matching artifact IDs to read context files. Tests, expected hashes, and the patch changeset are updated.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix · Severity of issue fixed: Medium

Merge Risk: ⚪ Minimal · up to 250c4

No actionable verification gap is established; the artifact-discovery changes appear ready to merge.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 3 files. (2 skipped: 2 … Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: locating spec and design artifacts by output path instead of relying on fixed identifiers.
Linked Issues check ✅ Passed The PR satisfies the coding requirements in #2027. Both verify template branches identify spec artifacts from artifactPaths.<id>.outputPath paths under specs/ and read files through the matching `…
Out of Scope Changes check ✅ Passed The changes stay within #2027. The source template update, generated skill update, changeset, parity hash updates, and template regression test all directly support path-based artifact discovery and i…
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 3 files. (2 skipped: 2 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(verify): verify workflow hardcodes contextFiles.specs / contextFiles.design, so since 1.13.2 a custom schema's renamed artifacts read as missing

1 participant