Skip to content

Ship the rspock agent skill in the gem; prepare 2.6.0#11

Closed
JPDuchesne wants to merge 2 commits into
mainfrom
jpd/ship-rspock-skill
Closed

Ship the rspock agent skill in the gem; prepare 2.6.0#11
JPDuchesne wants to merge 2 commits into
mainfrom
jpd/ship-rspock-skill

Conversation

@JPDuchesne

Copy link
Copy Markdown
Contributor

Summary

  • Adds skills/rspock/SKILL.md, shipped in the gem (the gemspec's git ls-files glob picks it up — verified via gem build + tar listing). The skill is the first graduated learning of the d3mlabs self-learning loop (d3mlabs/plans#13 / plans#14): knowledge that outgrew an index line and lives with the library it documents.
  • Skill content leads with the silent-green invariant (bare statements assert inside transform! classes and do NOT outside), then boilerplate, code blocks, assertion forms incl. raises + capture, Where tables, interaction mocking (1 *, >>, >> raises(...), &block, no block yielding by design), and wrong/right pitfall pairs. The tmp/ast_transform/<relative path> pointer is included as an optional debugging aid, not a mandated verification step.
  • Bumps to 2.6.0 with CHANGELOG entry and regenerated Gemfile.lock; release to follow merge.

Test plan

  • bundle exec rake test — 228 tests, 0 failures
  • gem build and verified skills/rspock/SKILL.md is in the packaged file list
  • After merge: tag v2.6.0 (release workflow validates tag ↔ version.rb and publishes via Trusted Publishing)

Made with Cursor

skills/rspock/SKILL.md teaches agents the RSpock dialect — the
transformed-assertion invariant first (bare statements assert inside
transform! classes, silently no-op outside), then blocks, assertion
forms, Where tables, interaction mocking, and wrong/right pitfall pairs.
Shipping it in the gem makes the skill part of what installing the
dependency means; skills-aware tooling (e.g. d3mlabs/dev) links it
project-scoped at install time.

Co-authored-by: Cursor <cursoragent@cursor.com>
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

The invariant section now teaches which dialect each class speaks
(expression assertions inside transform!, assert API in plain Minitest)
instead of prescribing one style — mixed files via strict: false are a
supported migration path, not something to unify. Adds the truth-table
generator, open-ended cardinalities ((1.._), (_..3)), Rails
backtrace-cleaner setup, and a debugging-failures section
(source-mapped backtraces, Where-row pinpointing via _test_index_ /
_line_number_).

Co-authored-by: Cursor <cursoragent@cursor.com>
@JPDuchesne

Copy link
Copy Markdown
Contributor Author

Superseded by #13

@JPDuchesne JPDuchesne closed this Jul 24, 2026
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