Content
73%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.
Highly actionable, well-sequenced content with strong verification and error-recovery guidance — the Server Action, preview flow, and 9-step verification checklist are exemplary. The weakest spots are repetition of key rules across sections and inlined boilerplate that belongs in reference files.
Suggestions
Move the Supabase client helpers and the PADDLE error-code table into a references/ file (both are shared with the paired subscription-cancel skill) and keep SKILL.md focused on the update flow.
State the trialing→do_not_bill and downgrade-credit rules once in their canonical tables and reference them from the pitfalls section instead of restating each rule three to four times.
Define or link the `getPaddleInstance` helper so the full Server Action is genuinely copy-paste ready.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Most content is genuinely non-obvious domain knowledge (error codes like "subscription_locked_renewal" and "subscription_trialing_items_update_invalid_options", the credit-not-refund rule, mixed-interval constraints), but the trialing→`do_not_bill` rule is restated in at least four places (proration table, flow table, status table, pitfalls) and ~45 lines of standard Supabase client boilerplate Claude already knows are inlined. Fits anchor 3 — mostly efficient but could be tightened — rather than 2 because the padding is limited to specific spots, and rather than 4 because the duplication and boilerplate exceed 'minor instances'. | 3 / 5 |
Actionability | The full Server Action is near copy-paste ready (auth, ownership check, ApiError mapping, revalidatePath, slim DTO) with complete Supabase helpers, an executable preview snippet, an apply_change override example, and a 9-step verification checklist. One minor gap keeps it from anchor 5: `getPaddleInstance` is imported but never defined anywhere in the skill, so the code is not fully self-contained. | 4 / 5 |
Workflow Clarity | Clear sequence — choose `prorationBillingMode` → check subscription status → preview before commit → run the update — with explicit validation checkpoints: preview numbers rendered on a confirm screen, auth/ownership checks before any SDK call, and a "Verify the integration" checklist with expected outcomes (e.g. a declined card keeps the old plan under `prevent_change`). Error-recovery feedback (retry after renewal lock, back off on 429, update payment method) is present. Matches anchor 5. | 5 / 5 |
Progressive Disclosure | Well-organized single file with clear section headers and a related-docs list; the core domain tables (proration modes, status rules) are appropriately inline for immediate use. Minor gaps: the shared Supabase helper boilerplate and the Paddle error-code catalog would fit better in a references/ file (they're shared with the paired subscription-cancel skill), and no bundle files exist at all. Fits anchor 4 rather than 3 because structure and navigation are good, and rather than 5 because ~330 lines of reference-worthy material is inlined with no one-level-deep reference split. | 4 / 5 |
Total | 16 / 20 Passed |