Maintain UIKitPlus Gesture Integration
Use this LOCAL contributor skill for built-in gesture-wrapper and gesture-DSL source work.
Load the smallest decision-complete context
- Start from UIKitPlus
AGENTS.mdandSKILL_INDEX.md. - Use
GESTURE_SYSTEM.mdas the primary owner. - Add only what the change needs:
MUTATION_MODEL.mdfor callback mutation/re-entrancy;EXTENSION_SYSTEM.mdfor extension surfaces/collisions;PLATFORM_ABSTRACTION.mdfor UIKit/AppKit exposure;FLUENT_CHAIN_CONTRACT.mdfor changed public chain APIs.
- Use
SOURCE_MAP.mdbefore broad source discovery.
Plan checklist
- Identify the recognizer/gesture domain and exact platform availability.
- Determine delegate ownership and
_GestureDelegator/outer-delegate fallback implications. - Identify callbacks that mutate State or runtime properties.
- Check repeat attachment/listener behavior and extension overload collision risk.
Implementation rules
- Keep recognizer attachment explicit and fluent APIs chainable.
- Preserve the current delegate fallback/precedence contract.
- Keep repeated setup behavior truthful; do not claim idempotency without deduplication.
- Keep State mutation and callback ownership explicit.
- Isolate platform-specific APIs with the established conditional-compilation boundary.
- Do not introduce hidden global gesture behavior or a second delegation mechanism.
Audit
Verify:
- no new extension ambiguity;
- delegate fallback remains functional;
- callback-driven State/runtime mutation follows selected owners;
- platform exposure is intentional and correct;
- changed public APIs preserve fluent/reference semantics;
- unrelated source/governance remains untouched.
Stop and re-plan if the work needs a new delegation/lifecycle model rather than an extension of the current gesture architecture.