|
|
8ffa27d4f8
|
upload --pre-check/--evidence, shots copy translate, game-center --locale-map, play games API-disabled hint
|
2026-10-24 12:10:23 +08:00 |
|
|
|
29a9683ab7
|
dev channel: Apache serves /desktop/dev/latest.json; the VDS publisher lists releases without the draft filter (it hid the dev drafts)
|
2026-10-23 23:46:03 +08:00 |
|
|
|
9947ea1639
|
dev channel VDS publisher: send a User-Agent (Cloudflare refuses urllib's default with 403)
|
2026-10-23 23:17:05 +08:00 |
|
|
|
39b2f73ad7
|
desktop dev update channel: every push to main builds dev bundles (<next patch>-dev.<UTC>), the VDS signs and publishes dev/latest.json (newest 5); app channel setting stable|dev, background updater at start / 15 min / resume / channel switch, deferred while in use, no downgrade, autostart rewritten on every start, card shows version and channel
|
2026-10-23 23:14:08 +08:00 |
|
|
|
4dff7d9b2e
|
desktop open: Windows window check uses real top-level windows (the tray helper windows and MainWindowHandle also answer for a hidden app)
|
2026-10-23 22:53:30 +08:00 |
|
|
|
8df41a26b0
|
desktop open: a hidden tray copy that is already running counts once its window is visible (Windows), graceful stop wait 3 s on Windows
|
2026-10-23 22:53:30 +08:00 |
|
|
|
d4cf1ad3a1
|
shots: full-bleed layout (shots.layout bleed) with corner captions, per-size frames, and landscape orientation, on top of the landscape sizes
|
2026-10-23 22:45:10 +08:00 |
|
|
|
9ed1890de8
|
storebound 0.8.47: version in package.json and every copy, CHANGELOG 0.8.47 section
|
2026-10-23 16:03:29 +07:00 |
|
|
|
8f69a27709
|
desktop install: stop the running app by exact path, check the installed exe's real version, verify it opened
|
2026-10-23 15:57:32 +07:00 |
|
|
|
a01c78aa20
|
generated API tables and flags refreshed for the play products clamp (Forgejo ci failed on stale api tables)
|
2026-10-23 15:56:36 +07:00 |
|
|
|
b0641c1fc8
|
play products: clamp regional prices to Play's min/max, per-product results; apple iap: skip live localizations, per-product results
|
2026-10-23 16:53:25 +08:00 |
|
|
|
882255a32f
|
storebound 0.8.46: version in package.json and every copy, CHANGELOG 0.8.46 section
|
2026-10-23 14:44:51 +07:00 |
|
|
|
84f9793af5
|
Merge origin/main (0.8.45 tag, not published)
|
2026-10-23 15:40:56 +08:00 |
|
|
|
487e138f9d
|
watch: ingest sink (--notify ingest) posting events to a push ingest endpoint
|
2026-10-23 15:30:18 +08:00 |
|
|
|
960662029e
|
storebound 0.8.45: version in package.json and every copy, CHANGELOG 0.8.45 section
|
2026-10-23 13:50:24 +07:00 |
|
|
|
5b3905679b
|
CHANGELOG: 0.8.44 was not published
|
2026-10-23 14:48:09 +08:00 |
|
|
|
b36b92dc90
|
Merge origin/main (0.8.44 tag)
|
2026-10-23 14:48:03 +08:00 |
|
|
|
0b0007045c
|
desktop tests: clippy clean (repeat_n in the tray test, unix-only time imports in ai_fix)
|
2026-10-23 14:47:53 +08:00 |
|
|
|
12e56c5a82
|
storebound 0.8.44: version in package.json and every copy, CHANGELOG 0.8.44 section
|
2026-10-23 13:16:42 +07:00 |
|
|
|
84efa4e913
|
desktop coverage: place for the status command
|
2026-10-23 14:14:02 +08:00 |
|
|
|
bffbf94278
|
portfolio test: android identity carries developerId and appId
|
2026-10-23 14:11:38 +08:00 |
|
|
|
987f0775b3
|
tray card: per-icon Phosphor imports; teaser pins the current app-privacy step 5 text
|
2026-10-23 14:07:44 +08:00 |
|
|
|
e2ff7efcda
|
CHANGELOG: 0.8.43 was not published; notes move to Unreleased
|
2026-10-23 13:56:01 +08:00 |
|
|
|
5379845e78
|
Merge origin/main (0.8.43 tag)
|
2026-10-23 13:55:50 +08:00 |
|
|
|
960e084bea
|
ship step: apple build plan keeps its version and build in --json; test fixtures pass the scrub (documentation IPs, neutral home paths, 10-char key ids)
|
2026-10-23 13:55:44 +08:00 |
|
|
|
b1ed2ad8ca
|
storebound 0.8.43: version in package.json and every copy, CHANGELOG 0.8.43 section
|
2026-10-23 12:20:06 +07:00 |
|
|
|
6abc1f65dd
|
Merge origin/main (0.8.42 tag, not published); API tables and flags regenerated
|
2026-10-23 13:16:13 +08:00 |
|
|
|
f03a83bf3d
|
Merge origin/main (0.8.42 tag, not published); API tables regenerated
|
2026-10-23 13:15:34 +08:00 |
|
|
|
021c0eef5a
|
Regenerate the API tables with forward slashes
|
2026-10-23 13:13:45 +08:00 |
|
|
|
2e888a01cc
|
docs/ship-step.md, pitfall 110 (pipeline exit 7 and double uploads), CHANGELOG Unreleased
|
2026-10-23 13:13:28 +08:00 |
|
|
|
06a0b424f5
|
Ship-step contract for pipelines: uniform exit codes (0/1/2/3/4/7) in cli/lib/ship-step.ts, one final --json line, --result-file (atomic, also on failure), --progress json, --env-file with secret redaction, --version-from; idempotent play upload / apple upload / play release / apple submit re-runs end with exit 7; play upload takes --track production and --version-code
|
2026-10-23 13:13:21 +08:00 |
|
|
|
4eac8e8cd8
|
storebound status: per platform live and next version, build, track, review state and rollout % without uploading (read-only, one JSON line); release status --app also takes an app folder or a store id
|
2026-10-23 13:13:15 +08:00 |
|
|
|
4933279987
|
gen-api: module names with forward slashes on Windows too (the tables were stale on Linux CI)
|
2026-10-23 13:13:03 +08:00 |
|
|
|
0ed7bc1ca0
|
storebound 0.8.42: version in package.json and every copy, CHANGELOG 0.8.42 section
|
2026-10-23 11:30:53 +07:00 |
|
|
|
54451c87c8
|
Regenerate the API tables (wrapped.gen.ts, api-coverage.md); 0.8.41 notes move to Unreleased
|
2026-10-23 12:29:24 +08:00 |
|
|
|
19b4868852
|
storebound 0.8.41: version in package.json and every copy, CHANGELOG 0.8.41 section
|
2026-10-23 10:25:06 +07:00 |
|
|
|
f3e7c98994
|
desktop reads: a card that joins a read or gets the 'read just now' answer applies it (no bus event for those: a tab opened again stayed on its skeleton); invalidate before a write's after-refresh, editor save re-reads with force
|
2026-10-23 11:22:26 +08:00 |
|
|
|
fa081666ec
|
CHANGELOG: reads registry and tray card
|
2026-10-23 11:16:12 +08:00 |
|
|
|
fb37911f5e
|
Desktop: generated permissions of the tray card commands
|
2026-10-23 11:15:40 +08:00 |
|
|
|
60a72e6947
|
Desktop: tray mini card on left click (store status at a glance next to the tray icon; Refresh runs the main window's Refresh all)
|
2026-10-23 11:15:35 +08:00 |
|
|
|
c03938f9dc
|
desktop: one read registry for every read button: single-flight per canonical key, broad reads cover narrow keys, overlapping buttons all busy and disabled (useReadState), 20 s 'read just now' memo, quota pause on the buttons, every read through the scheduler (Check again, Import apps, account Test, Read the stores, Dependencies), writes invalidate only the reads they change; tests/read-registry.test.ts; fixtures ?blocked and window.__fakeCalls
|
2026-10-23 11:09:51 +08:00 |
|
|
|
7345de2f7c
|
Desktop boot check: quota row match as plain text
|
2026-10-23 10:47:39 +08:00 |
|
|
|
2638b90046
|
Desktop boot check: the reader's quota row uses the short wording
|
2026-10-23 10:46:49 +08:00 |
|
|
|
f052831fea
|
Desktop boot check: the dry-run preview is accepted whenever it shows, also during waits
|
2026-10-23 10:44:54 +08:00 |
|
|
|
26ebb64458
|
Desktop: tab row measures the room inside the sticky bar's padding (the More button was clipped); editor saves skip the in-app preview (their Review step already showed the dry run)
|
2026-10-23 10:44:45 +08:00 |
|
|
|
83bb9a621e
|
Desktop boot check: say why a tab could not be opened
|
2026-10-23 10:36:38 +08:00 |
|
|
|
8106d7c9a2
|
Desktop boot check: tabs opened like a person (the More menu when a tab is not in the row); the fake host answers window dry runs like the Rust host (dryRun forced), art.pull preview dry run
|
2026-10-23 10:31:40 +08:00 |
|
|
|
ffaf42c55d
|
Merge origin/main (0.8.40 tag, not published)
|
2026-10-23 10:26:05 +08:00 |
|
|
|
5b7b16ac08
|
Desktop boot check: accept the in-app dry-run preview before the native confirm
|
2026-10-23 10:25:26 +08:00 |
|
|
|
c7bae75ed0
|
apple build/upload: accept --allow-version-mismatch (flag list regenerated); 1.0 and 1.0.0 are one version train
|
2026-10-23 09:57:13 +08:00 |
|