fix(workflows): stop reading schema from list output - #1731
Conversation
The update and continue templates tell the agent to read a `schema` field from `openspec list --json` and fall back to "spec-driven" when it is absent. `list --json` returns only `name`, `completedTasks`, `totalTasks`, `lastModified`, and `status` (docs/agent-contract.md 4.1), so the field is never present and the fallback fires every time: a change on a custom schema is shown to the user as `spec-driven`. Make the schema line optional and, when shown, resolve it from `openspec status --change "<name>" --json` (`schemaName`).
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthroughWorkflow prompts and exploration instructions no longer display unsupported schema labels from ChangesWorkflow list contract
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change corrects workflow labels to use fields actually returned by the list command and adds focused regression coverage. No actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Fork pull request not scannedFork pull requests are not scanned. Open the branch in this repository, then create a new pull request. |
Status
LGTM. Ready for final review; not merged.
What was wrong
Change pickers asked agents to display schema names from
openspec list --json, which returns names, task counts, modification times, and task status, but no schema. Update and continue consequently mislabeled custom-schema changes asspec-driven. Bulk archive and explore also claimed schemas were available from this output.How it was fixed
schemaNamefromopenspec status --change "<name>" --jsonafter selection. No extra status calls decorate the picker.Replication / proof
maintemplates and pass with this fix.work.mdtracking and check empty, partial, and completed task states. List output has the expected task data and no invented schema field; status returns the actual custom schema name.e552aea80: CI run.Notes / nits
Guidance and regression coverage only; no CLI behavior or dependency changes. Independent reviews found no blockers.
The local full-suite run ended with exit code 137 before completion. Before that, two existing tests failed because they detect globally installed MiniMax skills: Cursor command generation and profile update. Both failures were reproduced on unchanged
main(a0ddb60d0) in a separate baseline worktree. They are not changed here; the clean hosted matrix is the full-suite verification.Summary by CodeRabbit
Bug Fixes
Documentation