write-a-saga

Author saga test cases capturing multi-step UI transitions as golden frames or animated APNG goldens.

Updated Jun 12, 2026
One-click install
npx skills add https://github.com/missingbulb/GoogleCalendarEventCreator --skill write-a-saga-missingbulb
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: write-a-saga
Source: https://github.com/missingbulb/GoogleCalendarEventCreator/tree/main/.claudinite/shared/packs/executable-requirements/skills/write-a-saga
Command: npx skills add https://github.com/missingbulb/GoogleCalendarEventCreator --skill write-a-saga-missingbulb

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Proving that a UI behaves correctly across a sequence of transitions — where causality and timing matter — cannot be done with single static screenshots. This Skill defines how to write saga cases that capture multi-step stories as ordered golden frames or one animated APNG golden, keeping them deterministic and pixel-exact. ## Core Features & Use Cases - Step-based storyboards: Write a saga as an ordered list of steps, each with a user-facing caption and an action against the fake world, producing one golden frame per step (<slug>.<id>.step-NN.png). - Animated APNG goldens: Record the real UI moving between steps as a single lossless APNG per leaf, with dead-delay stripping, frame deduplication, and gesture ring markers. - Determinism guarantees: Drive the same real entry point as other test kinds, keep byte-identity comparison, and write per-frame expected | actual | diff output on mismatch. - Use Case: When a requirement states "a message sent before I arrived never appears; one sent after I arrived does", author a 3–6 step saga that proves the transition rather than decomposing it into independent resting states. ## Quick Start Write a saga case under dev/requirements/saga that proves the transition described in my requirement, with captions and golden frames for each step.

Frequently Asked Questions about write-a-saga

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a saga test case for UI transitions?

Write a saga as an ordered list of steps, each with a caption narrating the story in user terms plus an action against the fake world. The runner captures one golden frame per step, and all frames must be pixel-exact like any other golden.

When should I use a saga instead of single golden frames?

Use a saga when the requirement is the story itself — what arriving, acting, or time passing changes. Single frames prove resting states; sagas prove transitions and causality that cannot be decomposed without losing the claim.

How do animated APNG goldens stay deterministic?

Render time is virtual, so scripted waits produce identical frames that get deduplicated and clamped. APNG encoding is lossless unlike GIF, preserving byte-identity comparison, and mismatches write per-frame expected, actual, and diff images.

Why must a saga drive the real entry point?

A saga must exercise the same shipped app shell or render function as every other test kind. Otherwise it becomes a scripted slideshow of hand-arranged states that proves nothing about real behavior.

How many steps should a saga case have?

Keep sagas to 3–6 frames. A longer story usually indicates two separate sagas, since each saga is one leaf whose frames are that single case's expected output.