What problem does it solve? Medical crews risk deploying with depleted or expired packs when checkout, check-in, and audit logic is implemented inconsistently. This Skill documents the unified check-off page, the transactional write behavior of logStatpackCheckOff, and the derived pack status rules so changes to the statpack lifecycle stay correct. ## Core Features & Use Cases - Unified check-off flow: Explains the single static page (app/statpacks/check-off/page.tsx) serving checkout, check-in, and audit modes via query params under Next.js static export. - Transactional write semantics: Details how logStatpackCheckOff updates pack contents, writes statpack_logs rows, derives pack status, handles restock, expirations, sharps, oxygen/AED checks, and issue reports. - Extension checklist: Provides steps for adding new per-item checks, updating status derivation, stripping undefined Firestore values, and verifying with the emulator suite. - Use Case: When adding a new per-item field (e.g., a battery check) to the check-off flow, follow the Skill to wire it through the entry mapping, pack contents persistence, and all three modes without breaking stats derivations. ## Quick Start Use the bmrc-statpack-flows skill to add a new per-item check field to the statpack check-off page and persist it through logStatpackCheckOff.