Skip to content

chore: one SKILL.md source of truth and CI coverage for band CSV/XSS - #1379

Open
tldagent wants to merge 1 commit into
DietrichGebert:mainfrom
tldagent:chore/ruleset-one-source-and-band-ci
Open

tldagent wants to merge 1 commit into
DietrichGebert:mainfrom
tldagent:chore/ruleset-one-source-and-band-ci

Conversation

@tldagent

@tldagent tldagent commented Nov 9, 2026

Copy link
Copy Markdown

Summary

  • Make skills/ponytail/SKILL.md the only hand-edited ruleset: scripts/generate-rule-copies.js writes AGENTS.md and the host copies; check-rule-copies.js asserts they match.
  • Drop the third hardcoded ruleset in getFallbackInstructions / Hermes _fallback_instructions — they read generated AGENTS.md, with a short last-resort stub if that file is missing.
  • Extract band parseCsv / tasksFrom / escapeJsonForScript into plain hooks/band/csv.js and add Node CI tests for CSV parsing and <script> breakout escaping (those checks previously lived only in tests/band.test.tsx, which never ran under npm test).

Test plan

  • node scripts/generate-rule-copies.js
  • node scripts/check-rule-copies.js
  • node --test tests/band-board.test.js tests/rule-source.test.js
  • npm test (local fail is only csv: correct pandas one-liner — pandas not installed here; CI installs it)
  • Confirm CI green on this PR

Made with Cursor

Generate AGENTS.md and host rule copies from skills/ponytail/SKILL.md, and
read AGENTS.md for the SKILL-missing fallback so the ruleset is not a third
hand-maintained copy. Extract band CSV/JSON helpers to plain JS so Node CI
exercises the script-breakout escape that previously lived only in
tests/band.test.tsx (Claude Code runner, never in npm test).

Co-authored-by: Cursor <cursoragent@cursor.com>
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.

1 participant