cdd9321794
storebound 0.8.64: version in package.json and every copy, CHANGELOG 0.8.64 section
2026-11-02 18:22:39 +07:00
b1f1b206d3
storebound 0.8.63: version in package.json and every copy, CHANGELOG 0.8.63 section
2026-11-02 16:43:58 +07:00
4b6c28aff2
desktop: a second --hidden start stays in the tray (single-instance no longer opens the window)
2026-11-02 16:39:15 +07:00
a850ba6670
storebound 0.8.62: version in package.json and every copy, CHANGELOG 0.8.62 section
2026-10-30 00:29:52 +07:00
064a708fdb
storebound 0.8.61: version in package.json and every copy, CHANGELOG 0.8.61 section
2026-10-29 22:40:00 +07:00
e185b61c8e
storebound 0.8.60: version in package.json and every copy, CHANGELOG 0.8.60 section
2026-10-29 20:24:54 +07:00
17f57c6fb6
storebound 0.8.59: version in package.json and every copy, CHANGELOG 0.8.59 section
2026-10-29 19:10:28 +07:00
398d8cd375
storebound 0.8.58: version in package.json and every copy, CHANGELOG 0.8.58 section
2026-10-29 18:41:35 +07:00
28a50e7d2e
storebound 0.8.57: version in package.json and every copy, CHANGELOG 0.8.57 section
2026-10-27 19:01:14 +07:00
ef80cd2760
storebound 0.8.56: version in package.json and every copy, CHANGELOG 0.8.56 section
2026-10-27 17:17:39 +07:00
4763862178
storebound 0.8.55: version in package.json and every copy, CHANGELOG 0.8.55 section
2026-10-26 20:21:17 +07:00
efa9503a50
storebound 0.8.54: version in package.json and every copy, CHANGELOG 0.8.54 section
2026-10-26 19:16:46 +07:00
cb20912f0e
storebound 0.8.53: version in package.json and every copy, CHANGELOG 0.8.53 section
2026-10-26 18:17:15 +07:00
46c841d209
storebound 0.8.52: version in package.json and every copy, CHANGELOG 0.8.52 section
2026-10-26 11:08:21 +07:00
1030cdff0c
storebound 0.8.51: version in package.json and every copy, CHANGELOG 0.8.51 section
2026-10-26 10:27:48 +07:00
b59665c661
storebound 0.8.50: version in package.json and every copy, CHANGELOG 0.8.50 section
2026-10-25 23:18:12 +07:00
2c5e30090f
credential broker: Play tokens from POST /api/google/token (cached, single flight, local key fallback), grants and APIs per package in validate, Play write preflight, apps check and the desktop Accounts view; Google 403 names the API or grant, no retry
2026-10-25 22:51:32 +07:00
d978bb7a8b
desktop icon: the brand mark at every size (small Windows sizes were a plain S tile), each size resampled on its own, 20/30/36/40/60/72/80/96 px added for 125-200 % scaling
2026-10-25 21:08:13 +07:00
d7c36cbdb6
storebound 0.8.49: version in package.json and every copy, CHANGELOG 0.8.49 section
2026-10-25 20:15:46 +07:00
d43c95db7e
desktop: read StartupApproved through the registry API, no reg.exe (the security test allows no other programs)
2026-10-25 21:11:31 +08:00
53845c6dd9
desktop: autostart respects Windows Startup apps (turned off there stays off; the Run entry is no longer re-enabled on every start)
2026-10-24 21:13:10 +08:00
da7ca48ab4
desktop tray: card as tall as its content, card and menu open from the tray icon's edge (never over the taskbar); menu permission files
2026-10-24 19:53:10 +08:00
2ec1f0ab13
storebound 0.8.48: version in package.json and every copy, CHANGELOG 0.8.48 section
2026-10-24 18:17:14 +07:00
5236f002f1
desktop: tray menu panels and pinnable context menus
...
The tray's right-click menu is drawn by the app: one tree from tray.rs
(stable submenu keys), one frameless always-on-top menu-N window per
panel rendered by tray-menu.html with the design system, placed inside
the monitor's work area. A pure panel book keeps transient and pinned
panels apart; pinned panels (pin button, Ctrl+click, middle click) are
draggable, step aside from each other and are saved in state.json
(menuPins) and restored at start. tray_update pushes the tree to the
open panels, which update in place; closed panels are destroyed. The
native menu, rendered from the same tree, stays as the fallback and on
Linux. Only menu-* windows get the menu_* commands (menu.json).
In-app context menus get the same behaviour through a pure menu stack
(ui/menu-stack.ts): pin a menu, tear off a submenu, pinned panels
survive the next menu, are draggable and re-read their entries from
live sources so data changes update them in place.
Also drops a stray diff3 marker line from CHANGELOG.md.
2026-10-24 13:44:08 +08:00
5b6e0992ca
desktop: boot check finds unsaved marks on the sub views; neutral next-step lines before a read
2026-10-24 13:06:42 +08:00
0ef27cf2e4
desktop: five sections by job (Release, Store page, Revenue, Players, Health), Game services view, sidebar by attention
...
- app view: 12 tabs become 5 sections, each with a header (what it is for, the one next step from state
already read) and its sub views in a segmented control; 1-5 jump, Ctrl+Shift+[ ] cycle, Ctrl+K and the
context menu list sections and sub views; old tab ids, section and section/sub links all resolve
- Players > Game services (games only): both stores, one row per leaderboard / achievement with its
languages and each store's state, Game Center locale map, Play API-disabled state with the console plan
- games status --json: items, localeMap, playApiDisabled; inspect summary: games
- sidebar: apps grouped by attention / in progress / live / not on a store, one status line each, studio
filter, workspace as a footer icon row
- boot check opens places like a person (section, then sub view)
2026-10-24 13:06:42 +08:00
26f9559e1a
play-publish-changes: a release is ready only when the store page shows an older version; unknown reads are not determined, never a mismatch
2026-10-24 12:12:37 +08:00
1bb43fd4a0
play managed publishing: console plan/verify play-publish-changes, ready-to-publish items in play status, desktop hint
2026-10-24 11:56:07 +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
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
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
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
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
987f0775b3
tray card: per-icon Phosphor imports; teaser pins the current app-privacy step 5 text
2026-10-23 14:07: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
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
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
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
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
595cbc8a68
storebound 0.8.40: version in package.json and every copy, CHANGELOG 0.8.40 section
2026-10-23 08:54:55 +07:00
ebd64e0f76
Desktop: tab row reserves enough room for the More menu button
2026-10-23 09:54:20 +08:00
5f26cef580
Merge origin/main (0.8.39 tag)
2026-10-23 09:53:20 +08:00
0e693b7f74
Desktop: portfolio card ids show the full id as a tooltip
2026-10-23 09:50:11 +08:00
c0a13b5f87
Desktop: wide tables keep their first column in view while scrolling; compact table density (Settings > Appearance, Ctrl+K)
2026-10-23 09:49:47 +08:00
364b8ec0d4
Desktop: every write shows a styled in-app dry-run preview (command, changed rows) before the native confirm dialog; i18n house style fix for the developer id hint
2026-10-23 09:48:48 +08:00