Аудит конечных автоматов на гонки и ABA

testing

audit-state-machine — это скилл для Claude Code, который строит полные таблицы переходов для explicit state machines кэша и проверяет каждый достижимый interleaving на предмет illegal transitions, missed transitions и ABA-проблем. Скилл охватывает три машины: drain status (IDLE / REQUIRED / PROCESSING_TO_IDLE / PROCESSING_TO_REQUIRED), node lifecycle (alive → retired → dead) и async-value lifecycle. Для каждой машины анализируются сайты переходов, opaque/CAS-операции и корректность JMM — не только sequential consistency. Приоритет отдан drain/maintenance-пути, недавно изменённому для inline-assist при переполнении write buffer: проверяются lost wakeup, double schedule, staleness opaque-чтений и coupling с пейсером. Результат — пошаговый разбор interleaving с указанием последствия (wedged cache, stranded future, resurrected node) и, при невозможности статического разрешения, готовый Fray-скелет для тестирования.