CtrlK
BlogDocsLog inGet started
Tessl Logo

immutable-patterns

Use when reviewing scripts, client components, bundles, or runtime behavior related to Prefer immutable data patterns. Inspect both source code and the browser execution path so fixes target the real bottleneck or bug.

52

Quality

58%

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 ./skills/immutable-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%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.

The body is a lean, well-structured overview that correctly pushes implementation detail into references/rule.md (which exists and delivers the promised code examples). Its weaknesses are the conceptual intro paragraph Claude does not need, the absence of any concrete code or before/after pattern in the body itself, and verification guidance that tells Claude to 'state how' to verify without giving an actual checkpoint.

Suggestions

Delete or compress the opening 'why immutability matters' paragraph — Claude already knows why mutation of shared state is problematic.

Add one small before/after snippet (e.g. user.name = x → { ...user, ...changes }) or a grep-able detection pattern so the Check/Fix steps are executable without opening the reference.

Replace 'state how the change should be verified in the browser' with a concrete verification checkpoint (e.g. reload the view, confirm state updates without losing reference identity, check React re-renders).

DimensionReasoningScore

Conciseness

The body is short and mostly efficient, but the opening paragraph ("Mutating shared objects makes it impossible to track where a value changed... time-travel debug") explains a concept Claude already knows, and the Check/Fix/Explain/Code Review sections repeat overlapping directives. This matches 'mostly efficient but includes some unnecessary explanation or could be tightened' — not 2 (no heavy padding) and not 4-5 given the redundant conceptual intro.

3 / 5

Actionability

The Quick Reference names specific tools ("Use spread (...) to create modified copies", "Prefer map(), filter(), and reduce() over push(), splice()", "Object.freeze()") and the Check section names concrete targets ("direct property assignments on function parameters and push/splice on arrays"), but the body contains no executable code and the Fix section is a single abstract sentence, leaving key details in references/rule.md. This lands at 'some concrete guidance but incomplete' rather than 4, which expects mostly executable guidance.

3 / 5

Workflow Clarity

The Check → Fix → Explain → Code Review sections give a clear sequence, but the only verification checkpoint is the instruction to "state how the change should be verified in the browser" — no actual validation method is given, comparable to the anchor-3 example '4. Test the output'. It does not reach 4 because checkpoints are implicit rather than specified (no concrete verify step, command, or confirmation loop).

3 / 5

Progressive Disclosure

The body is under 50 lines, organized into clear sections (Quick Reference, Check, Fix, Explain, Code Review), and cleanly delegates full implementation details to a single one-level-deep, well-signaled reference: "For full implementation details, code examples, and framework-specific guidance, see references/rule.md" — and references/rule.md exists and contains that detail. This matches the simple-skill / clear-overview anchor with minimal duplication.

5 / 5

Total

14

/

20

Passed

Description

58%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.

The description has an explicit 'Use when...' clause and names its domain, but its action vocabulary is generic (review/inspect) and it omits the natural trigger words a user would actually say for this need (mutation, state management, Redux, spread). It reads more like a category label plus a scope statement than a crisp capability statement.

Suggestions

Add concrete capability verbs, e.g. 'Flags in-place mutations (push/splice, direct property assignment) and rewrites them with spread and map/filter/reduce.'

Include natural trigger terms users would say: 'mutation', 'immutable', 'state management', 'Redux', 'Zustand', 'React state'.

State the 'what' explicitly (detect mutation sites, apply immutable patterns, verify in browser) instead of only the inspection scope.

DimensionReasoningScore

Specificity

The description names the domain ("reviewing scripts, client components, bundles, or runtime behavior related to Prefer immutable data patterns") and 1-2 actions ("Inspect both source code and the browser execution path"), but the actions are generic review/inspect verbs rather than a comprehensive list of concrete capabilities. It sits at the anchor for a domain plus 1-2 concrete actions, not below it (a domain is clearly named) nor at 4 (no enumeration of several specific actions like 'flag push/splice' or 'rewrite with spread').

3 / 5

Completeness

It has an explicit 'when' ("Use when reviewing scripts, client components, bundles, or runtime behavior...") and a stated 'what' ("Inspect both source code and the browser execution path so fixes target the real bottleneck or bug"). Both are present, but the 'what' is thin — it never says the skill flags mutations and rewrites them immutably — so it does not reach the anchor 5 example of concrete, comprehensive what+when triggers; it is clearly above anchor 3, which requires a missing or only weakly implied 'when'.

4 / 5

Trigger Term Quality

It includes relevant keywords ("immutable data patterns", "scripts", "client components", "bundles", "runtime behavior") but misses the natural terms users would most likely say for this need, such as "mutation", "state management", "Redux/Zustand", "spread operator", or "React". This matches 'some relevant keywords but missing common variations or synonyms' rather than 4, which would require good coverage of natural phrasing.

3 / 5

Distinctiveness Conflict Risk

The immutable-patterns niche is somewhat specific, but the trigger surface ("reviewing scripts, client components, bundles, or runtime behavior") is broad and would overlap with any general frontend code-review or runtime-debugging skill. It is not 'very broad' enough for a 2 (a concrete domain is named) and lacks the distinct, minimal-conflict triggers needed for 4-5.

3 / 5

Total

13

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
thedaviddias/Front-End-Checklist
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.