Repository navigation
fix(pstack): count plan boxes checked with an uppercase X - #821
Open
rudycelekli wants to merge 1 commit into
Open
rudycelekli wants to merge 1 commit into
rudycelekli wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
check-plan.mjsonly recognizes task-list boxes written as- [ ]or- [x]. GitHub-flavored Markdown also treats- [X]as a checked box, and plans checked off by hand or by tools that write an uppercase marker render as checked everywhere else. The checker drops those lines entirely, so a plan whose boxes are checked with[X]fails with "Files. has no box", "lanes are [], expected 1 to 10", empty perf boxes, and so on, even though the plan is structurally complete. The playbook tells the author to fix every line the checker prints, so this reports problems that do not exist on exactly the plans that are furthest along.The box pattern now accepts
xorXinside the brackets. Nothing else about box detection changes. The Claude Code harness copy is regenerated.Validation: added "counts boxes checked with an uppercase X" to
check-plan.test.ts, which runs the existing valid plan with every box checked as[X]. On origin/main,bun test check-plan.test.tsgives 7 pass and 1 fail (the new test, which reports "has no box", lane, and perf problems). With the fix it gives 8 pass and 0 fail. Also rannpm install --no-save ajv ajv-formats && node scripts/validate-plugins.mjs && node scripts/generate-pstack-harness-trees.mjs --check && node --test pstack/skills/*/scripts/test/*.test.mjs(57 pass, 0 fail, 93 skipped without TLC) andgit diff --check.Note
Low Risk
Narrow regex tweak in a plan validation script with a dedicated unit test; no runtime or security impact.
Overview
Plan checker now treats
- [X]as a valid task-list box, matching GitHub-flavored Markdown and tools that write an uppercase checkmark.Previously only
- [ ]and- [x]were recognized, so fully checked plans using[X]were misread as having no boxes and failed structural validation (lanes, perf items, etc.). TheBOXregex incheck-plan.mjsnow allowsxorXinside the brackets; counting and validation logic are unchanged.A regression test runs the existing valid plan with every box marked
- [X]and expects a clean exit with the same box count report.Reviewed by Cursor Bugbot for commit 5baec49. Bugbot is set up for automated code reviews on this repo. Configure here.