CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/cdn-cache-purge-tests

Wraps CDN cache-purge testing patterns for Cloudflare (POST /zones/{zone_id}/purge_cache, single-file / everything / cache-tags / hostname / prefix), Fastly (POST purge-by-key / purge-all, surrogate-keys via Surrogate-Key header), and CloudFront (CreateInvalidation API + paths). Covers end-to-end test patterns (write origin → trigger purge → assert edge serves fresh), purge-propagation delay testing (typically 1-30s globally), surrogate-key + cache-tag patterns for group-purge, and Cache-Status header verification (cf-cache-status: HIT/MISS/BYPASS). Also owns the client tier: browser-side Cache-Control verification with Playwright (served-from-cache via CDP, ETag 304 round-trips, Workbox service-worker strategies, reload semantics) in references/browser-cache-control.md. Use when designing or auditing CDN cache-invalidation workflows or browser-tier caching behaviour in E2E tests.

74

Quality

93%

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

Overview
Quality
Evals
Security
Files

Quality

Content

86%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 well-organized, highly actionable skill body with executable examples for three CDN vendors, a clearly sequenced canonical test, a useful anti-patterns table, and proper progressive disclosure to two real reference files. The main gap is an internal inconsistency where the flagship example uses fixed sleeps that the skill's own anti-patterns section warns against.

Suggestions

Make the canonical end-to-end example match the skill's own best practice: replace time.sleep(10)/time.sleep(30) with a poll loop on cf-cache-status until MISS (timeout 30s), as the anti-patterns table recommends.

Tighten the prose around code blocks (e.g., the 'Client-tier cache-control' and 'Parsing results' narrative) to lift conciseness — the tables already carry most of that information.

Consider narrowing the browser-tier trigger in the description (or noting the sibling browser-testing tools) to reduce overlap risk with a generic browser/E2E testing skill.

DimensionReasoningScore

Conciseness

The body is mostly lean and code/table-dense, assuming Claude's competence (no 'what is a CDN' padding), but a few prose passages around the code blocks could be trimmed; efficient with minor over-explanation.

4 / 5

Actionability

Fully executable, copy-paste-ready curl/Python/aws/CI examples cover the common cases (single-file purge, cache-tag, surrogate-key, CloudFront invalidation, end-to-end test, multi-region propagation).

5 / 5

Workflow Clarity

The canonical purge test is explicitly numbered (origin write → verify old → purge → wait → verify fresh) with assert checkpoints, and the anti-patterns table supplies feedback-loop fixes — but the flagship example uses time.sleep(10)/sleep(30) while the anti-patterns section itself flags fixed sleeps as an anti-pattern, a minor internal inconsistency.

4 / 5

Progressive Disclosure

Clear overview with well-signaled one-level-deep references — 'in references/browser-cache-control.md' and 'references/playwright-cache-recipes.md' — both of which exist as real bundle files, with browser-tier detail appropriately split out of the main body.

5 / 5

Total

18

/

20

Passed

Description

96%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 dense, specific description that names concrete API endpoints and test patterns across three CDN vendors and clearly states both capabilities and a 'Use when' trigger. Voice is third person throughout. The only weakness is a slightly broad browser-tier trigger clause that creates minor overlap risk.

DimensionReasoningScore

Specificity

Lists multiple concrete actions per vendor — 'POST /zones/{zone_id}/purge_cache, single-file / everything / cache-tags / hostname / prefix', 'surrogate-keys via Surrogate-Key header', 'CreateInvalidation API + paths', 'Cache-Status header verification (cf-cache-status: HIT/MISS/BYPASS)' — giving comprehensive coverage of the CDN purge-testing domain.

5 / 5

Completeness

Explicitly answers both what ('Wraps CDN cache-purge testing patterns... Also owns the client tier...') and when ('Use when designing or auditing CDN cache-invalidation workflows or browser-tier caching behaviour in E2E tests.').

5 / 5

Trigger Term Quality

Includes natural terms users would say — 'CDN cache-purge', 'cache-invalidation workflows', 'browser-tier caching behaviour in E2E tests' — plus vendor names (Cloudflare, Fastly, CloudFront) and synonyms (cache-purge / cache-invalidation, surrogate-key / cache-tag).

5 / 5

Distinctiveness Conflict Risk

The CDN cache-purge niche is clearly distinct, but the 'browser-tier caching behaviour in E2E tests' clause broadens the trigger into territory that could overlap with a generic browser-testing skill; mostly distinct with minor overlap risk.

4 / 5

Total

19

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents