Content
75%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A well-structured, information-dense skill that teaches genuinely non-obvious domain mechanics (opt-out certification, legacy cohorts, consent webhooks) with executable Kotlin and precise console/API specifics. The main gaps are mild cross-phase repetition, a thin webhook-handling step, and no error-recovery guidance.
Suggestions
De-duplicate the opt-out in-app notice requirement (stated in Phase 1, the Phase 2 table, and Step 6) and the legacy-cohort behavior (Phase 2 and Step 3) by stating each once and cross-referencing, freeing tokens in Phase 1.
Add a minimal CANCELLATION webhook handling example (event fields to check, e.g. cancel_reason PRICE_INCREASE) to Step 5 so the decline path is as actionable as the client steps.
Include an error-recovery note for the main failure modes, e.g. what to check if the new price does not appear in the RevenueCat dashboard or if RTDNs are not connected, turning Step 2's one-time confirmation into a validate-then-proceed checkpoint.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is dense with non-obvious domain facts (opt-out notice periods, legacy price cohorts, exact webhook events, certification requirements) and avoids explaining concepts Claude already knows. Minor repetition — the opt-out in-app notice requirement appears in Phase 1, the Phase 2 table, and Step 6, and the legacy-cohort point repeats in Phase 2 and Step 3 — keeps it below lean/efficient. | 4 / 5 |
Actionability | Mostly executable: exact console navigation ("base plan menu > View legacy price points"), a real API identifier ("monetization.subscriptions.basePlans.migratePrices"), exact webhook names, and two copy-paste Kotlin snippets. Gaps: Step 5 ("Handle declines via webhook, if you care") offers no concrete webhook-handling example, and Step 6's banner/Targeting-rule options are named without implementation detail. | 4 / 5 |
Workflow Clarity | A clear Understand→Plan→Execute sequence with a routing table, pre-execution checklist ("Questions to answer before executing"), and an explicit verification checkpoint ("Confirm the updated product price appears on the product in the RevenueCat dashboard after Google propagates it"). No error-recovery feedback loops (e.g., what to do if RTDNs are not connected or the price never propagates), so it does not reach 5; checkpoints are explicit rather than implicit, so it clears 3. | 4 / 5 |
Progressive Disclosure | Good structure: phased headers, numbered steps, a comparison table, and a single clearly-signaled external reference ("[Full chapter](https://www.revenuecat.com/guides/revenuecat-android-sdk/price-changes)"). No bundle files exist and the ~84-line body is appropriately self-contained for a single-topic skill, but it exceeds the under-50-lines simple-skill case and offers no one-level-deep internal reference structure, so it stays at good-structure rather than clear-overview-with-references. | 4 / 5 |
Total | 16 / 20 Passed |