Auditing Deep Link Contracts
Use this skill to define and audit deep link behavior so links open the correct screen with correct parameters across cold and warm starts.
What this skill does
- Defines a deep link contract for supported routes
- Checks required and optional parameters
- Generates cold and warm start test vectors
- Produces a concise audit report with fixes
Workflow
Deep link contract audit progress:
- [ ] 1) Confirm minimum inputs (platforms, routes, entry points)
- [ ] 2) Draft a deep-link contract (JSON)
- [ ] 3) Validate the contract (script)
- [ ] 4) Generate test vectors (script)
- [ ] 5) Audit routing behavior (findings + fixes)
- [ ] 6) Verify fixes (cold and warm start)
1) Confirm the minimum inputs
Ask only what is needed:
- Platforms: iOS, Android, or both
- Entry points: push, email, web, in-app, marketing campaigns
- Routes: list of deep link routes that must be supported
- Auth rules: which routes require login
- Fallbacks: where to send users if data is missing
2) Draft a deep-link contract
Create deep-link-contract.json in .mobile/ (recommended) or project root.
Recommended location: .mobile/deep-link-contract.json
Example:
{
"base": "myapp://",
"routes": [
{
"name": "order_detail",
"path": "/orders/{order_id}",
"required_params": ["order_id"],
"optional_params": ["ref"],
"auth_required": true,
"supported_states": ["cold", "warm"]
}
]
}
3) Validate the contract
Run:
bash skills/auditing-deep-link-contracts/scripts/validate-deep-link-contract.sh \
.mobile/deep-link-contract.json
4) Generate test vectors
Run:
bash skills/auditing-deep-link-contracts/scripts/generate-deep-link-test-vectors.sh \
.mobile/deep-link-contract.json \
.mobile/deep-link-test-vectors.json
5) Audit routing behavior
For each test vector, confirm:
- The app opens the expected screen
- Required parameters are present and parsed
- Missing parameters trigger the expected fallback
- Auth-required routes handle logged-out users
- Cold start and warm start behave consistently
6) Verify fixes
Re-run the test vectors after changes and confirm all expected behaviors.
Progressive Disclosure
- Level 1: This
SKILL.md - Level 2:
references/ - Level 3:
examples/(optional) - Level 4:
scripts/(execute; do not load)
References
references/deep-link-contract.md