Skip to content

fix(plan-huge): replace colon-space in skill description that broke YAML parsing - #5

Closed
JesseKoldewijn wants to merge 1 commit into
MaxInGaussian:mainfrom
JesseKoldewijn:fix/plan-huge-skill-yaml-description
Closed

JesseKoldewijn wants to merge 1 commit into
MaxInGaussian:mainfrom
JesseKoldewijn:fix/plan-huge-skill-yaml-description

Conversation

@JesseKoldewijn

Copy link
Copy Markdown

Problem

skills/plan-huge/SKILL.md fails YAML frontmatter parsing on pi 0.8.5. The description's unquoted scalar contains plan-big: an abstract ... — a colon followed by a space, which is invalid inside a plain YAML scalar.

Observed on pi startup:

[Skill conflicts]
  ~/.pi/agent/npm/node_modules/pi-plans/skills/plan-huge/SKILL.md
    Nested mappings are not allowed in compact mappings at line 2, column 14:

description: Create a huge Pi plan for multi-version product builds. Use when t…
             ^

GitHub's markdown renderer rejects the same file:

Error in user YAML: (<unknown>): mapping values are not allowed in this context at line 2 column 113

Column 113 is exactly the plan-big: colon.

Fix

Replace the colon with an em-dash:

-bigger than plan-big: an abstract overall plan
+bigger than plan-big — an abstract overall plan

The description stays an unquoted plain scalar, consistent with the other plan-* skills (none of which contain : in their descriptions). No wording or meaning change.

Verification

  • npm run validate → validated 7 skills, 4 references, 2 agents, 15 tools, 2 docs, readme 12 checks
  • npm test → 741 pass, 0 fail
  • Frontmatter parses cleanly with the yaml package; name: plan-huge and description text are otherwise intact

Reproduced on pi-plans 0.8.5 installed via ~/.pi/agent/npm/node_modules.

…AML parsing

The plan-huge SKILL.md description contained 'plan-big: an abstract ...'
inside an unquoted YAML scalar. A colon followed by a space cannot appear
in a plain scalar, so frontmatter parsers reject the file:

- pi reports '[Skill conflicts] Nested mappings are not allowed in compact
  mappings at line 2, column 14' on startup
- GitHub's markdown renderer fails with 'mapping values are not allowed
  in this context at line 2 column 113'

Replace the colon with an em-dash so the description stays unquoted,
consistent with the other plan-* skills. No meaning change.
@JesseKoldewijn

Copy link
Copy Markdown
Author

Hey @MaxInGaussian just a friendly nudge for this small issue that causes for some formatting warnings after the update of yesterday, cheers! 🤙

Repository owner deleted a comment from Optim-Agent Oct 8, 2026
Repository owner deleted a comment from Optim-Agent Oct 8, 2026
@MaxInGaussian

Copy link
Copy Markdown
Owner

Hi Jesse — thank you for this, and for such a clear report. Your diagnosis is exactly right, and the reproduction made it easy to confirm.

The plan-big: an abstract ... colon-space really was invalid inside that unquoted plain scalar. Parsing the frontmatter the way a YAML reader does confirms it: before the change, description came back not as a string but as a nested mapping, which is precisely the "Nested mappings are not allowed in compact mappings" error you saw on pi startup. Two independent parsers (pi and GitHub's markdown renderer) agreeing on it was genuinely useful evidence.

One note on verification, offered only to add to yours: npm run validate and npm test both pass with or without this fix, so neither gate was what caught it. The breakage was only visible at skill-load time, which is also why it reached you as a warning after an update rather than as a red build.

I've applied the identical one-character change directly on the latest main (0.9.1) rather than merging this branch, mainly because the branch was based on 0.8.5 and is now some way behind. So I'm closing this rather than merging — not because anything is wrong with the change, but because the same edit now lives on main and merging would just duplicate it.

Really appreciate you taking the time to report this properly, with a reproduction and a minimal fix. That's exactly the kind of contribution that makes a project better. Please do keep an eye on the repo — reports like this are always welcome.

MaxInGaussian added a commit that referenced this pull request Oct 8, 2026
The unquoted frontmatter description contained "plan-big: an abstract
...", and a colon followed by a space is invalid inside a plain YAML
scalar. Frontmatter parsers rejected the file at load time instead of
at build time: pi reported "Nested mappings are not allowed in compact
mappings" on startup, and GitHub's markdown renderer failed the same
file with "mapping values are not allowed in this context".

Replace the colon with an em dash so the description stays unquoted,
matching the other plan-* skills. No wording or meaning change.

Neither npm run validate nor npm test fails without this fix -- both
pass on the broken description -- so the breakage was only observable
when a host loaded the skill. Verified by parsing the frontmatter as a
YAML reader does: description is now a plain string with no embedded
colon-space.

Reported in #5 (closed unmerged, branch based on 0.8.5); the same
one-character edit is applied here on 0.9.1.
@JesseKoldewijn

Copy link
Copy Markdown
Author

No problem at all man! 🤙

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.

2 participants