ios-chaos-monkey
ios-chaos-monkey helps developers identify hidden concurrency issues in Swift iOS applications by simulating chaotic conditions and stress scenarios. It detects data races, deadlocks, and thread-safety violations that traditional testing often misses, enabling more resilient mobile code.
ios-chaos-monkey helps developers identify hidden concurrency issues in Swift iOS applications by simulating chaotic conditions and stress scenarios. It detects data races, deadlocks, and thread-safety violations that traditional testing often misses, enabling more resilient mobile code.
AI-generated summary based on this skill's SKILL.md
Install
pproenca/dot-skills/ios-chaos-monkey · repository language: Shell
git clone https://github.com/pproenca/dot-skills
cp -r dot-skills/skills/.experimental/ios-chaos-monkey ~/.claude/skills/ios-chaos-monkeyFrequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
What does ios-chaos-monkey help find and fix in iOS crash debugging?
ios-chaos-monkey helps developers identify hidden concurrency issues in Swift iOS applications by simulating chaotic conditions and stress scenarios. It detects data races, deadlocks, and thread-safety violations that traditional testing often misses, enabling more resilient mobile code.
How does ios-chaos-monkey detect memory leaks and retain cycles?
ios-chaos-monkey audits memory management patterns in Swift iOS code to identify retain cycles, use-after-free crashes, and memory leaks. By stress-testing concurrent access patterns and async/await flows, it reveals memory corruption issues that surface under chaotic load conditions rather than normal execution.
Can ios-chaos-monkey audit async/await and structured concurrency?
Yes. ios-chaos-monkey audits async/await and structured concurrency for cancellation leaks, continuation leaks, and actor isolation problems. It helps identify MainActor blocking, resource exhaustion in concurrent tasks, and Swift Sendable data race violations that emerge under stress.
Does ios-chaos-monkey stress-test file I/O and SwiftData?
ios-chaos-monkey stress-tests file I/O and SwiftData persistence layers for corruption and context misuse crashes. It simulates chaotic conditions to expose race conditions in CoreData cross-thread access and SwiftData concurrency violations that normal testing overlooks.
How can I use ios-chaos-monkey with test-driven development?
ios-chaos-monkey supports writing proof-of-crash tests before implementing fixes using TDD. Write tests that reproduce concurrency bugs under chaotic conditions, then implement fixes to pass them—enabling confident refactoring of thread-safety violations and async/await deadlocks.
What license does ios-chaos-monkey use?
ios-chaos-monkey is released under the MIT license, making it free to use, modify, and distribute in both open-source and commercial iOS projects.
SKILL.md
rendered from the published skill — quoted content, verbatim
iOS Chaos Monkey — Crash-Hunter Best Practices
Adversarial crash-hunting guide for iOS and Swift applications. Contains 47 rules across 8 categories, prioritized by crash severity. Every rule follows TDD: dangerous code first, a failing test that proves the bug, then the fix that makes the test pass.
Clinic Architecture Contract (iOS 26 / Swift 6.2)
All guidance in this skill assumes the clinic modular MVVM-C architecture:
- Feature modules import
Domain+DesignSystemonly (neverData, never sibling features) - App target is the convergence point and owns
DependencyContainer, concrete coordinators, and Route Shell wiring Domainstays pure Swift and defines models plus repository,*Coordinating,ErrorRouting, andAppErrorcontractsDataowns
(truncated - see the full file via the links below)
Read as markdown · JSON record · Browse the source repository
File tree — 15 files
skills/.experimental/ios-chaos-monkey/SKILL.md
skills/.experimental/ios-chaos-monkey/assets/templates/_template.md
skills/.experimental/ios-chaos-monkey/metadata.json
skills/.experimental/ios-chaos-monkey/references/_sections.md
skills/.experimental/ios-chaos-monkey/references/async-actor-hop-starvation.md
skills/.experimental/ios-chaos-monkey/references/async-continuation-leak.md
skills/.experimental/ios-chaos-monkey/references/async-detached-task-leak.md
skills/.experimental/ios-chaos-monkey/references/async-missing-cancellation.md
skills/.experimental/ios-chaos-monkey/references/async-task-group-error.md
skills/.experimental/ios-chaos-monkey/references/async-unsafe-sendable.md
skills/.experimental/ios-chaos-monkey/references/dead-actor-reentrancy.md
skills/.experimental/ios-chaos-monkey/references/dead-mainactor-blocking.md
skills/.experimental/ios-chaos-monkey/references/dead-queue-hierarchy.md
skills/.experimental/ios-chaos-monkey/references/dead-recursive-lock.md
skills/.experimental/ios-chaos-monkey/references/dead-semaphore-in-async.md