-
b355572a78
fix(render): V2 panel ribbon-at-bottom mounting compensation
master
football2801
2026-05-17 13:14:06 -04:00
-
019a3363c5
feat(design): v2 becomes the default — drop beta conversation
football2801
2026-05-15 20:22:18 -04:00
-
c794878e5e
polish(design-v2): Manage button bar more obviously button-like
football2801
2026-05-15 17:07:54 -04:00
-
99b3fb9e59
polish(design-v2): library tile pops above harbor backdrop
football2801
2026-05-15 17:06:24 -04:00
-
25f698f067
polish(design-v2): library tile is one connected card, Manage feels like a button
football2801
2026-05-15 17:04:27 -04:00
-
59f5e6e0eb
polish(design-v2): settings reorder + section cards + cog + yellow active
football2801
2026-05-15 16:51:03 -04:00
-
1320b1e4b2
fix(brand): yellow V in TopNav wordmark
football2801
2026-05-15 16:40:58 -04:00
-
d554951077
fix(design-v2): !important on top-nav__tabs hide at mobile/tablet
football2801
2026-05-15 15:59:40 -04:00
-
f27c00b965
fix(design-v2): show top nav at mobile/tablet (slim brand bar)
football2801
2026-05-15 15:58:08 -04:00
-
c0f6ba2651
fix(design-v2): make body bg transparent so harbor pseudo shows through
football2801
2026-05-15 15:51:18 -04:00
-
b8d120e74c
chore(devices): TEMP power_telemetry at error level to flush fingers_crossed
football2801
2026-05-15 15:50:43 -04:00
-
828332f740
design: lighten v2 overlay so the harbor is actually visible
football2801
2026-05-15 15:50:12 -04:00
-
d37f5a9538
design: bring back the Camogli harbor backdrop in v2
football2801
2026-05-15 15:49:09 -04:00
-
7dab3fd7c5
remove(design): drop 'a frame, gifted · v 0.4' tagline from side rail
football2801
2026-05-15 15:48:16 -04:00
-
d7889be25a
fix(design-v2): side rail footer pushed to bottom
football2801
2026-05-15 15:41:52 -04:00
-
29cd5a4775
fix(design-v2): !important on side rail subtitle + footer display
football2801
2026-05-15 15:40:13 -04:00
-
0bc6f389cc
fix(design-v2): side rail subtitle + footer signature + theme swatch harbor
football2801
2026-05-15 15:38:42 -04:00
-
7081d2bee7
chore(devices): TEMP unconditional power_telemetry log + all X- headers
football2801
2026-05-15 15:32:04 -04:00
-
0489028486
refactor(design): single source of truth — wevisto-design.css
football2801
2026-05-15 15:24:45 -04:00
-
0e4d78471b
fix(design-v2): apply v2 styles to login template
football2801
2026-05-15 15:19:41 -04:00
-
645291c724
fix(design-v2): match approved mockups — solid navy, side rail, editorial type
football2801
2026-05-15 14:55:19 -04:00
-
4f78ed8897
fix(pwa): manifest background_color → navy to kill the white frame
football2801
2026-05-15 14:46:08 -04:00
-
77c51586e8
feat(brand): V-viewfinder 3a — the approved rebrand (was: split-W)
football2801
2026-05-15 14:42:00 -04:00
-
5e8d9efb7b
fix(pwa): cache-bust icon link tags (?v=20260515-3a)
football2801
2026-05-15 14:37:56 -04:00
-
8ae4a2fd5a
chore(devices): TEMP log power-monitor telemetry headers from firmware
football2801
2026-05-15 14:15:50 -04:00
-
76c72f69d8
fix(design-v2): theme swatches preview their own dusk
football2801
2026-05-15 14:05:33 -04:00
-
b53c0593c0
fix(design-v2): visibility polish — stronger glass + themed nav chrome
football2801
2026-05-15 14:02:37 -04:00
-
a302ac09b4
feat(design): v2 opt-in (atmospheric dusks) — Settings toggle, cookie-mirrored
football2801
2026-05-15 12:28:44 -04:00
-
5bb8289a54
feat(ui): v1 desktop responsive — top app bar + content max-widths
football2801
2026-05-15 12:17:49 -04:00
-
81effca22b
Revert "feat(brand): V-viewfinder favicon set (replaces split-W on photo)"
football2801
2026-05-15 10:35:21 -04:00
-
e7b97561c1
feat(brand): V-viewfinder favicon set (replaces split-W on photo)
football2801
2026-05-15 10:28:09 -04:00
-
3bd0b9a5a1
design: favicon v2 (V-centric) + logo-placement mockups
football2801
2026-05-15 10:25:09 -04:00
-
01b6007b1c
design: atmospheric redesign mockups (login + SPA, six dusks)
football2801
2026-05-15 09:44:26 -04:00
-
6c9959c00d
fix(pwa): serve apple-touch-icon + favicons from root, add sizes hint
football2801
2026-05-15 00:48:01 -04:00
-
40581cb98b
feat(brand): wire new favicon set into every standalone Twig template
football2801
2026-05-15 00:43:29 -04:00
-
a7e7b96465
feat(brand): split-W PWA icons + favicons (replaces purple-star placeholder)
football2801
2026-05-15 00:42:15 -04:00
-
e7e9202a11
feat(brand): official WeVisto logo + linked badge on user-facing pages
football2801
2026-05-14 22:33:28 -04:00
-
2637eb19cd
feat(brand): help page references WeVisto-XXXX AP SSID
football2801
2026-05-14 22:03:15 -04:00
-
9c29788210
feat(brand): logo placeholder + smoke.sh defaults to wevisto.com
football2801
2026-05-14 21:51:43 -04:00
-
db80ea5262
feat(brand): swap recipient-facing pictureFrame strings to WeVisto
football2801
2026-05-14 21:42:50 -04:00
-
62cd3f57df
chore(env): set MAILER_SENDER to noreply@wevisto.com
football2801
2026-05-14 21:27:57 -04:00
-
dd89b3d934
feat(brand): switch user-facing copy + Mercure topic prefix to wevisto.com
football2801
2026-05-14 21:27:07 -04:00
-
38ea9b3d06
fix(device-image): honor X-Draw-Pending to skip rotation during recovery
football2801
2026-05-14 17:43:13 -04:00
-
f6321412aa
test(frontend): cover ManageImageSheet debounce, StickerTray, PWA-install paths
football2801
2026-05-14 16:25:05 -04:00
-
409f51cc3e
copy(crop): mention the recrop tool in the orientation-mismatch chip
football2801
2026-05-14 15:41:08 -04:00
-
45e80cf4c0
fix(manage-sheet): clearer copy + visual hierarchy in row controls
football2801
2026-05-14 15:31:07 -04:00
-
84642ed13f
feat(library): photo + status badge + ManageImageSheet (Concept A)
football2801
2026-05-14 15:26:41 -04:00
-
9854688a49
docs(mockups): static HTML wireframes for Library scaling concepts
football2801
2026-05-14 15:08:18 -04:00
-
a511b89564
fix(library): show full photo in each grid thumb (square + contain)
football2801
2026-05-14 14:40:49 -04:00
-
ad0d6c572c
fix(home): preview locks aspect to panel dims + object-fit so it never overflows
football2801
2026-05-14 14:30:16 -04:00
-
bea25098a0
revert(render): drop A/B tuning experiments; back to baseline pipeline
football2801
2026-05-14 14:14:29 -04:00
-
89ba3515ac
experiment(render): revert BLUE shift; warm WHITE palette to (255,248,230)
football2801
2026-05-14 14:07:24 -04:00
-
324f1b2641
experiment(render): revert blue_mul; shift BLUE palette target to (8,32,220)
football2801
2026-05-14 14:03:25 -04:00
-
488fc3d0f4
experiment(render): revert sat/gamma/blur to baseline; blue-channel ×0.95
football2801
2026-05-14 13:54:11 -04:00
-
a37edcb6c7
experiment(render): revert FS + add pre-dither blur 0.6; A/B vs frozen baseline
football2801
2026-05-14 13:42:54 -04:00
-
2f3527aaf9
tool(render): app:render-compare for FS vs Riemersma A/B on the panel
football2801
2026-05-14 13:36:12 -04:00
-
f3bf49ba1d
experiment(render): Riemersma dither to stop sky→face blue bleed
football2801
2026-05-14 13:29:46 -04:00
-
1ebc9b615d
experiment(render): extract tunables + gamma 1.2, saturation 115%
football2801
2026-05-14 13:22:06 -04:00
-
82a42011d8
fix(upload): persistent file <input> to survive iOS PWA cold launch
render-baseline-2026-05-14
football2801
2026-05-14 13:02:26 -04:00
-
e57e711fcc
chore(build): rebuild bundle for v2 crop fix + tighten Device.model
football2801
2026-05-14 12:29:12 -04:00
-
081ca83613
fix(v2): preview rotation + crop aspect for 13.3" hardware
football2801
2026-05-14 12:02:39 -04:00
-
b286a1f241
feat(devices): DeviceModel::V2 for Waveshare 13.3" Spectra-6
football2801
2026-05-13 15:53:59 -04:00
-
2adb07518c
feat(account): change-password endpoint + Settings modal
football2801
2026-05-09 15:25:54 -04:00
-
bdb717de2e
chore(build): drop unused imports + rebuild bundle
football2801
2026-05-09 15:18:29 -04:00
-
5a0db3cd60
fix(uploader,setup): beta-test polish — crop overlay, sticker delete, emoji keyboard, copy
football2801
2026-05-09 15:17:06 -04:00
-
00121aaec9
feat(pwa): installable app — manifest + SW + Settings install button
football2801
2026-05-09 13:49:12 -04:00
-
2be153a103
feat(help): public /help setup-and-troubleshooting page
football2801
2026-05-09 11:06:42 -04:00
-
f30a6a8f87
fix(devices): bootstrap-bypass when device sends no X-Current-Image-Id
football2801
2026-05-08 19:01:56 -04:00
-
f777c790fa
chore(home): drop the per-frame settings sheet logout link
football2801
2026-05-08 18:53:56 -04:00
-
08d0968af0
feat(setup): post-link redirects to SPA so first-setup matches live UI
football2801
2026-05-08 18:51:31 -04:00
-
ff1ae79824
docs(reset): "hold until the screen starts to flash" terminology
football2801
2026-05-08 18:41:33 -04:00
-
a1a4537c83
fix(home): remove confirmation is now a centered modal popup
football2801
2026-05-08 16:25:11 -04:00
-
e4f811581a
feat(setup): noon-daily default + force-refresh hint + inline remove confirm
football2801
2026-05-08 16:19:51 -04:00
-
6b13312fdd
feat(devices): X-Just-Provisioned gate so reset devices can't leak prior owner's photos
football2801
2026-05-08 16:05:32 -04:00
-
77f54dc6f5
chore(ddev): ddev tests now also runs npm run build
football2801
2026-05-08 15:50:46 -04:00
-
db67299224
chore(build): rebuild frontend with the Remove-frame button + Mercure delete sentinel
football2801
2026-05-08 15:50:16 -04:00
-
920de623a0
feat(devices): owner can mark a frame as sold and unlink it pre-emptively
football2801
2026-05-08 14:53:51 -04:00
-
ece0defe3f
feat(setup): "Claim this frame" checkbox for previously-bound MACs
football2801
2026-05-08 14:45:52 -04:00
-
a9ad014bd1
test: tighten coverage to 99.69% backend / 98.62% frontend
football2801
2026-05-08 14:22:46 -04:00
-
2a8bf3895f
chore(dev): DDEV setup so the test suite actually runs
football2801
2026-05-08 13:56:36 -04:00
-
b48ed73b4e
fix(rotation): isDue() compares wakeTime boundary in UTC, not device-local tz
football2801
2026-05-08 12:41:40 -04:00
-
b0773e686e
fix(home): hour dropdown reads 1-12 instead of 12,1-11
football2801
2026-05-08 12:28:51 -04:00
-
91b148c271
fix(home): wake-time list never reorders mid-edit
football2801
2026-05-08 12:25:36 -04:00
-
e2a8ea4a7e
feat(rotation): X-Boot-Reason: cold forces a resync regardless of schedule
football2801
2026-05-08 12:18:43 -04:00
-
5b3e2e47d7
fix(rotation): gate poll-driven advance() behind isDue() check
football2801
2026-05-08 12:14:32 -04:00
-
bf9d4ebc58
test: close coverage gaps from the recent rotation + Mercure work
football2801
2026-05-07 17:25:25 -04:00
-
9a5aa123c2
fix(smoke): drop the HEAD-on-mercure check that broke the round-trip
football2801
2026-05-07 16:59:09 -04:00
-
f45cfcc967
chore(deploy): bin/smoke.sh — post-deploy healthcheck workflow
football2801
2026-05-07 16:43:32 -04:00
-
aa486c5d51
chore(deps): re-add dragonmantank/cron-expression for the scheduler
football2801
2026-05-07 16:41:51 -04:00
-
cf6623de67
feat(rotation): per-device image-selection preferences
football2801
2026-05-07 16:37:14 -04:00
-
ba9625d45d
feat(home): live updates via Mercure — server pushes device state to the PWA
football2801
2026-05-07 16:20:21 -04:00
-
995445ed9e
fix(home): "next sync" must reflect the schedule the device is *on*
football2801
2026-05-07 15:52:04 -04:00
-
eedd50b95c
fix(home): "Next update" preview reflects when settings actually reach the frame
football2801
2026-05-07 15:28:07 -04:00
-
c9b05a53b2
fix(home): force numeric keypad for the interval-minutes input on mobile
football2801
2026-05-07 15:11:23 -04:00
-
aff0a5d4b4
fix(home): stop iOS Safari zooming on the interval-minutes input
football2801
2026-05-07 15:09:12 -04:00
-
d11ddff912
feat(device): replace daily wakeHour with multi-time wakeTimes (minutes)
football2801
2026-05-07 14:32:58 -04:00
-
100e101d05
feat(device-api): include SHA-256 of served .bin in X-Image-Sha256 header
football2801
2026-05-06 19:42:44 -04:00
-
8beb7331dd
fix(home): preview tracks frame state even with locked images and 304 polls
football2801
2026-05-06 19:24:50 -04:00
-
2cd558bac3
fix(home): preview reflects what's on the frame, not what's queued
football2801
2026-05-06 19:15:14 -04:00
-
328ad632d3
feat: pull-to-refresh on Home and Library
football2801
2026-05-06 19:09:52 -04:00