CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pbt-pragmatic-adoption

Pragmatic property-based testing review and first-wave adoption for this listings-webapp monorepo (Jest + fast-check, unit tests only).

Quality

76%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/pbt-pragmatic-adoption/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

75%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, repo-grounded instruction skill: it converts a general testing technique into concrete decisions for this monorepo, with executable patterns, named target files, bounded waves, and explicit guardrails. Main room for improvement is an explicit failure-handling loop and slight consolidation of the repeated candidate lists.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence — it never explains what property-based testing is, and every section carries repo-specific guidance. Minor duplication of candidate file names across 'Strong candidates', 'First adoption playbook', and 'Repo-specific examples' could be consolidated, keeping it just below the 'every token earns its place' anchor.

4 / 5

Actionability

Concrete, executable guidance throughout: a real fast-check pattern with `PROPERTY_CONFIG = { numRuns: 100, seed: 20260319 }`, specific commands (`--runTestsByPath`), and fully specified invariants (IDs divisible by `1003`; `available.length > 0 && available.every(category === 'donation')`). The code pattern uses placeholder names (`arbitraryInput`, `fn`, `expectedFromInvariant`), a minor gap versus copy-paste-ready code.

4 / 5

Workflow Clarity

The 7-step 'Step-by-step workflow' is clearly sequenced with explicit validation checkpoints ('Add one property at a time and run affected tests after each change', 'Stop when signal is clearly improved') and bounded scope (3-7 properties across 2-4 files). It lacks an explicit error-recovery loop (what to do when a generated counterexample fails), which keeps it below the anchor requiring feedback loops for error recovery.

4 / 5

Progressive Disclosure

No bundle files exist, and the single ~120-line document is well-organized with clear, purposeful section headers (When to use / not to use, repository map, heuristics, workflow, playbook, Do not do). It exceeds the 50-line simple-skill threshold and inlines repo-specific candidate catalogs and an adoption playbook that could plausibly live in a reference file, so it does not reach the top anchor.

4 / 5

Total

16

/

20

Passed

Description

65%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A distinctive, well-scoped description that clearly states what the skill does and for which stack, with good natural trigger terms. Its main weaknesses are the absence of any explicit 'when to use' trigger clause and the omission of common synonyms such as 'PBT' or 'generative testing'.

Suggestions

Add an explicit 'Use when...' clause with concrete triggers, e.g. 'Use when reviewing unit test quality in app/, packages/*, or cdk/, or when adding property-based tests with fast-check' — its absence currently caps completeness at 3.

Include natural synonyms and the common abbreviation as trigger terms, such as 'PBT', 'generative testing', and 'invariant testing', to broaden how users would naturally invoke the skill.

Name one or two more concrete actions (e.g. 'identify pure-function PBT candidates and add 1-3 fast-check properties per module') to lift specificity from two actions to several.

DimensionReasoningScore

Specificity

The description names the domain and two concrete actions — 'property-based testing review and first-wave adoption' — plus tight scoping ('Jest + fast-check, unit tests only'), but two actions does not meet the 'several specific actions' bar of the anchor above.

3 / 5

Completeness

The 'what' is clear (review and first-wave adoption of PBT in this monorepo), but there is no 'Use when...' clause or equivalent explicit trigger guidance — the parenthetical '(Jest + fast-check, unit tests only)' is scope restriction, not usage triggers — so completeness is capped at 3 per the judging guidelines.

3 / 5

Trigger Term Quality

Good natural keyword coverage: 'property-based testing', 'unit tests', 'Jest', and 'fast-check' are terms users would actually say. A few natural variations are missing, notably the 'PBT' abbreviation and synonyms like 'generative testing' or 'invariant testing', so it falls short of comprehensive.

4 / 5

Distinctiveness Conflict Risk

It carves out a clear niche — property-based testing scoped to 'this listings-webapp monorepo (Jest + fast-check, unit tests only)' — which is highly unlikely to collide with generic testing, document, or code-review skills.

5 / 5

Total

15

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

saski/arnesto

Path

.agents/skills/pbt-pragmatic-adoption/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.