JPA/Hibernate patterns and common pitfalls (N+1, lazy loading, transactions, queries). Use when user has JPA performance issues, LazyInitializationException, or asks about entity relationships and fetching strategies.
81
77%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./.claude/skills/jpa-patterns/SKILL.mdQuality
Discovery
89%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description with excellent trigger terms and completeness. The explicit 'Use when' clause with specific error types and scenarios makes it highly actionable for skill selection. The main weakness is that it describes the topic area rather than concrete actions Claude will perform.
Suggestions
Rephrase to include concrete actions: 'Diagnoses and resolves JPA/Hibernate issues including N+1 queries, lazy loading problems, and transaction management' rather than just 'patterns and pitfalls'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (JPA/Hibernate) and mentions specific concepts (N+1, lazy loading, transactions, queries), but describes 'patterns and pitfalls' rather than listing concrete actions like 'diagnose N+1 queries' or 'configure fetch strategies'. | 2 / 3 |
Completeness | Clearly answers both what (JPA/Hibernate patterns and common pitfalls including N+1, lazy loading, transactions, queries) and when (explicit 'Use when' clause with specific triggers like performance issues, LazyInitializationException, entity relationships questions). | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural terms users would say: 'JPA performance issues', 'LazyInitializationException', 'entity relationships', 'fetching strategies', 'N+1', 'lazy loading', 'transactions' - these are exactly what developers search for when encountering these problems. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with JPA/Hibernate-specific terminology and error types (LazyInitializationException is unique to this domain). Unlikely to conflict with general database or Java skills due to specific ORM focus. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a comprehensive and highly actionable JPA patterns guide with excellent code examples and clear problem/solution pairings. Its main weaknesses are length (could be more concise) and lack of explicit diagnostic workflows for identifying and fixing issues. The content would benefit from splitting into a concise overview with links to detailed reference files.
Suggestions
Add an explicit diagnostic workflow: 'Enable SQL logging → Run suspected code → Count queries → If N+1 detected, apply fix → Verify query count reduced'
Split detailed code examples into separate reference files (e.g., RELATIONSHIPS.md, TRANSACTIONS.md) and keep SKILL.md as a concise overview with the quick reference table
Condense some sections by removing redundant examples—e.g., the three N+1 solutions could show one primary solution with brief mentions of alternatives
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | While the content is well-organized and avoids explaining basic concepts, it's quite lengthy (~500 lines) with some redundancy. The extensive code examples are valuable but could be more condensed in places, and some explanations like 'The #1 JPA performance killer' add flavor but not information. | 2 / 3 |
Actionability | Excellent actionability with fully executable, copy-paste ready code examples throughout. Each problem has concrete solutions with real Java code, JPQL queries, and configuration snippets. The ❌ BAD / ✅ GOOD pattern makes correct usage immediately clear. | 3 / 3 |
Workflow Clarity | The content presents solutions clearly but lacks explicit validation/verification steps. For example, detecting N+1 shows how to enable logging but doesn't provide a workflow for 'enable logging → run query → check output → fix if needed.' The performance checklist at the end is helpful but isn't integrated into a diagnostic workflow. | 2 / 3 |
Progressive Disclosure | The content is well-structured with clear sections and a quick reference table, but it's monolithic—all content is inline rather than split across files. The 'Related Skills' section at the end suggests external references but the main content could benefit from splitting detailed examples into separate reference files. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (658 lines); consider splitting into references/ and linking | Warning |
Total | 10 / 11 Passed | |
d9fda23
Table of Contents
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.