store-requirements
Skill2 starsChanged 19 days agoMITView on GitHub
Keep AppScreenMap's store rules current — the dated Google Play target-API and App Store SDK / deployment-target requirements in packages/store/.../requirements.json that `appscreenmap store` measures builds against. Use when asked to update, refresh or review the store rules, after a Play Console or Apple announcement, each spring and autumn, when the audit's "rules checked" date is more than ~3 months old, or when `appscreenmap store` says nothing about a deadline you know exists.
In this repository22 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- a11y-auditSkill
- adaptiveSkill
- add-a11y-ruleSkill
- add-exporterSkill
- android-intent-securitySkill
- android-permissions-securitySkill
- crawl-appSkill
- design-systemSkill
- edge-to-edgeSkill
- extend-crawlerSkill
- ios-a11y-rulesSkill
- ios-simulatorSkill
- maintain-crawlerSkill
- play-policy-insightsSkill
- security-auditSkill
- security-rulesSkill
- stack-iosSkill
- stack-rulesSkill
- tune-crawlerSkill
- wcag-mobile-rulesSkill
- web-uiSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 33
Keep old tiers: the audit hides those beyond the window and still uses them to decide what is met.
- Very specific: line 43
Only audit and scan skills are vendored, never development ones.
- Distinctive: line 47
Never hand-edit the copies.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Store requirements upkeep
appscreenmap store (package packages/store) compares a build's target SDK, compile SDK and minimum SDK (Android) or
build SDK, Xcode and deployment target (iOS) with the rules in packages/store/src/appscreenmap/store/requirements.json.
It always lists every rule that starts within the next 365 days as upcoming, so the data must stay ahead of the stores.
The viewer's source catalogue is apps/viewer/src/insights/sources.ts (owned by the viewer session: tell it what to change).
When
| Trigger | Why |
| April–May | Apple raises the minimum SDK / Xcode every April (Xcode and SDK 26 on 2026-04-28); Google publishes the August target-API deadline in spring |
| 31 August | Play's target-API deadline; the extension runs to 1 November |
| After WWDC (June) and the Android release (June) | New SDK levels; check what the stores announce next |
checked older than ~3 months | Stale data makes a "Compatible" answer untrustworthy |
Steps
- Read the official pages only, with today's date in mind (these are the sources the
refspoint at):- Play: https://support.google.com/googleplay/android-developer/answer/11926878 (target API by form factor, extension date, the availability rule for existing apps; the page contradicts itself in places: tables win, flag the difference)
- Apple: https://developer.apple.com/news/upcoming-requirements/ and the News feed (SDK minimum, deployment target) Blog posts repeat these with errors (we saw one claim API 35 was still current). Never copy a date from a secondary source.
- Edit
requirements.json:- New Play level → append
{"api": N, "from": "YYYY-MM-DD", "extension_until": "…"}to each affected form factor inandroid.tiers; updateexisting_app_min_apiif the availability floor moved. - Apple → update
ios.sdk/ios.deployment(min_major,from,textquoted from the page). - A rule neither store has published goes in
expected(text only), never intiers. When the store publishes it, move it totiersand rewriteexpectedfor the next year. - Set
checkedto today. - Keep old tiers: the audit hides those beyond the window and still uses them to decide what is
met.
- New Play level → append
- Add a test in
packages/store/tests/test_store.pyfor the new boundary (use thetodayparameter: a day before the date →upcoming, on it →due/blocked, after the extension →blocked). - Check the fix text in
audit.py: the behaviour changes named in the Android target fix (edge-to-edge at 35; large-screen orientation limits ignored, predictive back at 36) should name the level you just added. Read the matching behaviour-change page on developer.android.com first. - Run:
uv run pytest -q packages/store && uv run ruff check && uv run ruff format, thenuv run appscreenmap-engine store --apk samples/playground-app/apk/playground-v1.apkand read the output. The Playground setstargetSdk/compileSdkinsamples/playground-app/app/build.gradle.kts: raise both when a new level is due, rebuild withsamples/playground-app/build.sh. - Say what changed: old rule → new rule, the date, and the page you read. If you couldn't reach an official page, leave the data alone and say so.
Related audit skills
Only audit and scan skills are vendored, never development ones. From github.com/android/skills (Apache-2.0, unchanged,
pinned in scripts/android-skills.lock): play-policy-insights (Play policy), android-permissions-security,
android-intent-security, edge-to-edge (what target 35+ enforces), adaptive (large screens, foldables, resizable windows: what target 36 stops letting apps opt out of). make skills-check reports drift from upstream and make skills-sync copies and re-pins; run it
with the spring review. From Apple (Xcode 27, no license, git-ignored): audit-xcode-security-settings, uikit-app-modernization (multi-window and orientation on the 26+ SDKs), via make skills-xcode.
Never hand-edit the copies.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

