Commit graph

451 commits

Author SHA1 Message Date
CRT
164182012f storebound 0.8.23: version in package.json and every copy, CHANGELOG 0.8.23 section 2026-10-21 11:21:56 +07:00
CRT
4d70be3404 apple submit --yes submits a draft prepared with --no-submit that already holds the version and items (was 'nothing to submit'); iap-submit the same for a draft holding the asked-for items; test, pitfall 90, CHANGELOG 2026-10-21 11:19:50 +07:00
CRT
0d1926f7d7 storebound 0.8.22: version in package.json and every copy, CHANGELOG 0.8.22 section 2026-10-21 05:42:04 +07:00
CRT
327a85e042 console verify: an older page's long labelled radio still counts from page text when the sheet answers Yes / No; tests and the teaser follow the new sign-in details question and the added App Privacy step 2026-10-21 05:39:45 +07:00
CRT
b6ea9159d8 review-details: a reviewContact that is present but has empty fields (or no usable email) is named as such with its file, instead of 'no review contact' 2026-10-21 05:37:45 +07:00
CRT
9c1f146c05 flags regenerated 2026-10-21 05:36:12 +07:00
CRT
aceb994cae testflight distribute: groups of apple.testflight.groups missing on App Store Connect are created first (only the asked-for ones, never removed; dry run shows it); tests, skill, CHANGELOG 2026-10-21 05:35:19 +07:00
CRT
163e666834 Game Center switch before submit: apple submit / resubmit and signing ensure create gameCenterDetails and gameCenterAppVersions when Game Center is in use (config, entitlements or the built IPA), shown in the dry run; validate blocks on either missing; fake 409 BUILD_INDICATES_GAME_CENTER_ENABLED until both exist; pitfall 89 2026-10-21 05:33:53 +07:00
CRT
dd9e059036 desktop coverage: apple game-center, play games and games status mapped to the Game services card 2026-10-21 05:29:55 +07:00
CRT
567d6ca181 gen-flags: Args.required reads are flags too (edit --ops, privacy-manifest --ios, apple listing --version were refused as unknown options); play games client listAll (no false flags) 2026-10-21 05:29:08 +07:00
CRT
d427b5c4a4 apple game-center: literal API paths (query guard reads them); api coverage regenerated 2026-10-21 05:29:08 +07:00
CRT
93d7f8a5fc docs: game-services skill (Game Center + Play Games Services step by step), pitfall 86, commands, CHANGELOG Unreleased; adapters regenerated 2026-10-21 05:29:08 +07:00
CRT
22286c7e02 desktop: Game services card in App info (Game Center and Play Games Services status, ids, counts vs config, pending changes, sync buttons through the confirm-token write, PGS setup plan, console links); en + tr strings; dev fixture 2026-10-21 05:29:02 +07:00
CRT
26f0723641 games status: both stores' game services in one read-only report (CLI, MCP games_status, desktop read method); --json status output stays pure JSON 2026-10-21 05:28:47 +07:00
CRT
a4c31e096b tests: game services on both stores against the fakes (capability ensure, Game Center enable and read-back, leaderboard / achievement create, update, no-op, lost answers), entitlement and APP_ID checks, PGS console plan URLs and verify, validate findings; fake Games Configuration API 2026-10-21 05:28:47 +07:00
CRT
9f48dd57a4 MCP: apple_game_center, apple_game_center_status, play_games, play_games_status (writes dry by default) 2026-10-21 05:28:47 +07:00
CRT
3116c230ae scan: Play Games Services dependency without the APP_ID meta-data or resource (sign-in fails at runtime) 2026-10-21 05:28:47 +07:00
CRT
23f7c5a5eb validate / check: Game Center entitlement vs App ID capability vs config, the PGS APP_ID resource vs Gradle and config, store state vs the games list, player id as User ID reminders (App Privacy USER_ID, Data safety PSL_USER_ACCOUNT) 2026-10-21 05:28:47 +07:00
CRT
5a5d7fd4e7 console plan play-games-services: agent-first PGS setup (games project, Android credential with the app-signing SHA-1, web OAuth client, owner's Publish) with absolute Play Console and Google Cloud links, and console verify from the page text 2026-10-21 05:28:47 +07:00
CRT
ca7289b173 games: one config section for Game Center and Play Games Services (shared leaderboards and achievements); apple game-center (gameCenterDetails, gameCenterAppVersions, leaderboards, achievements and localizations, upsert by vendor id, read back); play games (Games Configuration API upsert, no POST retry); signing ensure adds GAME_CENTER when games.gameCenter 2026-10-21 05:28:47 +07:00
CRT
eebb3a830b docs: desktop.md (coverage map, More tools tab), CHANGELOG Unreleased 2026-10-21 05:14:24 +07:00
CRT
dc6bb088a1 desktop coverage: every CLI command mapped to its window place (cli/lib/desktop-coverage.ts), docs/desktop-coverage.md generated from it, guard test fails on a gap or an unjustified not-for-desktop 2026-10-21 05:14:16 +07:00
CRT
a95aa6dd49 desktop: More tools tab, one typed form per CLI command without a screen (schema from system.methods; reads run, writes dry run + native dialog + token) and the owner steps with their terminal command; en + tr 2026-10-21 05:14:16 +07:00
CRT
ce1b1edcb8 serve: desktop methods for play build / upload / share / app-id, apple build / upload / signing ensure / adhoc register + export, shots fonts / jpeg, install (dry run first; the host token answers their question) 2026-10-21 05:14:16 +07:00
CRT
335a4124ab console plans: guardrails from a real run (2026-10-21): health none label and Sign in details Yes/No + Add details (old labels as altLabels, verify accepts both), finance boxes on step 1, App Privacy Additional Setup Required OK, verify from DOM input states (verify.capture, --from), Save + confirm before every Next on Play pages, IARC Digital purchases boxes and an exact-label in-page helper that refuses patterns and blanket answers; review contact found in parent folders, the profile and more key shapes with the files checked listed; one-line errors for missing required values (Args.required); pitfalls 86-87, tests 2026-10-21 05:03:02 +07:00
CRT
a6dab8f3aa storebound 0.8.21: version in package.json and every copy, CHANGELOG 0.8.21 section 2026-10-21 04:03:24 +07:00
CRT
f5e7b907a9 acceptance: storebound api --yes without a terminal is refused (exit 1, nothing sent) since the TTY rule; the cell still expected a silent dry run and turned every acceptance job red 2026-10-21 04:01:41 +07:00
CRT
dda21d2570 shots record (web): frames at device pixels through Page.captureScreenshot (clip scale = dpr, long side capped at 1920, 3 requests in flight, midpoint timestamps into the ffmpeg concat); Chromium's screencast stayed at CSS size. Warnings for frames smaller than asked and under 20 frames/s; record-web browser test, pitfall 85 2026-10-21 03:59:39 +07:00
CRT
2d7cf6ec2b storebound 0.8.20: version in package.json and every copy, CHANGELOG 0.8.20 section 2026-10-21 03:16:27 +07:00
CRT
ef3c66e8f0 release: the Linux / Windows updater signatures are made on the VDS (desktop-release add-remote, vds-key; tools/vds-sign.ts); the Mac no longer downloads those installers, verifies each returned .sig over its BLAKE2b-512 digest before publishing; release.ts --sign-local keeps the old path 2026-10-21 03:14:53 +07:00
CRT
d94bf67340 tests: the AAB fixture targets API 36 (Play's minimum since 2026-08-31; play upload now refuses 35) 2026-10-21 03:08:43 +07:00
CRT
3a11682a37 shots: app titles get the weights the templates use (variable axis, used range or static weights; font-weight warning), palette.bg as one colour or a CSS gradient string (validated; contrast guard in shots check), photo backgrounds (palette.image, shots.feature.background) with overlay and cover crop 2026-10-21 03:07:26 +07:00
CRT
2ba8278ab7 storebound 0.8.19: version in package.json and every copy, CHANGELOG 0.8.19 section 2026-10-20 13:44:41 +07:00
CRT
353e13d5be shots: Playwright's chromium is taken from the namespace or default of a project's CommonJS playwright; a module without chromium.launch names the resolved file and its exports (a project's playwright 1.57 under a global Bun install gave 'reading launch of undefined'); tests: the review-account fixture typechecks 2026-10-20 13:44:22 +07:00
CRT
ac84ad4bbf storebound 0.8.18: version in package.json and every copy, CHANGELOG 0.8.18 section 2026-10-20 13:11:36 +07:00
CRT
8c1a01d856 config loads without Node's MODULE_TYPELESS_PACKAGE_JSON warning in a CommonJS project; capture sign-in docs use captureAuth and check notes a local capture that signs in with reviewDemoAccount (the App Review account) 2026-10-20 13:11:10 +07:00
CRT
2fdd96e68c storebound 0.8.17: version in package.json and every copy, CHANGELOG 0.8.17 section 2026-10-20 12:44:41 +07:00
CRT
e1e4e05237 shots capture: signed-in web apps (shots.capture.auth request with ${cred:}/${env:} references or storageState), shots login saves a demo sign-in to .storebound/auth.json (0600), expired-session warning, secrets and cookies masked 2026-10-20 12:41:43 +07:00
CRT
3949ff1531 storebound 0.8.16: version in package.json and every copy, CHANGELOG 0.8.16 section 2026-10-20 12:16:54 +07:00
CRT
9ab64bcbdf apps folders add adds the folder (template note, refusals with reasons); MCP: .mcp.json never spawns a missing plugin path (sh fallback to PATH, npx), mcp/serve skip the self-update, spawned handshake test; store build minimums in one dated table: Play target API 36 and App Store Xcode 26 / SDK 26 blocked in scan, validate, play upload/release, apple upload; pitfalls 81-83 2026-10-20 12:15:00 +07:00
CRT
9805582278 storebound 0.8.15: version in package.json and every copy, CHANGELOG 0.8.15 section 2026-10-20 03:31:36 +07:00
CRT
7c04a0653b desktop boot check: match the submit dry run by its fields, not the exact JSON (the call carries platform since the macOS support; 0.8.14's Mac build stopped on it) 2026-10-20 03:29:59 +07:00
CRT
e59539fec8 shots: Mac App Store screenshots (mac size, APP_DESKTOP to the macOS version), a landscape layout (Mac window or bare; Mac, Play Chromebook, Play tablets), safe margins in every template checked by shots check from the render's layout boxes, a contact sheet timeout that scales with images, sizes and load; pitfall 80 2026-10-20 03:29:19 +07:00
CRT
30488c512d release: the desktop typecheck runs before the tag (0.8.14's Mac build stopped on an unused variable after the tag); a staged npm publish (409 previously staged) waits for the maintainer's approval instead of 5 minutes of polling; cross-store: drop the unused variable 2026-10-20 03:16:23 +07:00
CRT
7b4b716fc6 storebound 0.8.14: version in package.json and every copy, CHANGELOG 0.8.14 section 2026-10-20 03:09:33 +07:00
CRT
74101edeca api tables regenerated (the new creative-assets and platform commands wrap more operations) 2026-10-20 03:08:37 +07:00
CRT
9db7180eb9 merge origin/main (cross-store text checker); macOS platform pitfall renumbered to 79 2026-10-20 03:06:16 +07:00
CRT
c2f34c62f3 apple creative-assets: place Header and Search Results assets once Apple approved them (the version page offers only approved assets); waiting files are reported per locale and placement with their upload date and the re-run command, in the run, --verify, validate and the report; iPhone Duo: the published API spec still has no Duo type, the note says the console takes Duo and the API does not yet 2026-10-20 03:04:14 +07:00
CRT
47dfd372fe apple: macOS (tvOS, visionOS) versions are no longer invisible: every version and review submission lookup is per platform; status, listing, listing pull, resubmit, submit, release and screenshots take --platform and otherwise pick the platform that has the version they need (refuse naming both when several do); status, validate, release status, the report and the desktop label versions with their platform; MCP and owner actions get platform; pitfall 77 2026-10-20 03:00:05 +07:00
CRT
edabbec874 cross-store text: other platforms named in App Store text (2.3.10: Android, Google Play, ...) or Play text (Metadata: iOS, App Store, Game Center, ...) are refused by every text write (apple / play listing, play release / upload notes, listing set, whats-new, storebound edit, desktop editor), blockers in check / validate, scan other-platforms / play-other-platforms; listing.allowPlatformMentions for the owner's functional mentions; whats-new splits [apple] / [play] lines per store; storebound api --yes without a TTY is refused (exit 1, stderr) instead of a silent dry run; pitfalls 77, 78 2026-10-20 02:57:25 +07:00