This website requires JavaScript.
18705aaefb
fix(docker): keep server Postgres on ./data/postgres, move Windows volume to an override
main
bonamin and Claude Opus 5.5
2026-09-30 16:45:58 +03:00
f1a7c5a7ca
feat(devices): crash detail view and fleet Crash Report (F-070)
bonamin and Claude Opus 5.5
2026-09-30 16:28:41 +03:00
82cf95a9af
feat(firmware): ELF symbol store for server-side crash decoding
bonamin and Claude Opus 5.5
2026-09-30 16:28:41 +03:00
963516ece0
feat(mqtt): store F-070 crash detail and group crashes fleet-wide
bonamin and Claude Opus 5.5
2026-09-30 16:28:40 +03:00
46c5c0a846
fix(mqtt): treat broker-replayed retained messages as stale state
bonamin and Claude Opus 5.5
2026-09-30 16:01:41 +03:00
18e57c6e5f
fix(mqtt): dedupe boot_report against the latest row, not any boot_count
bonamin and Claude Opus 5.5
2026-09-30 15:55:26 +03:00
98dd16b597
fix(mqtt): stop logging retained boot_report/alerts as new events
bonamin and Claude Opus 5.5
2026-09-30 15:48:48 +03:00
36f9540a89
feat(users): require password confirmation when creating an app user
bonamin and Claude Opus 5.5
2026-09-30 15:40:51 +03:00
c1df3b5aa3
fix(users): console-created users use the Firebase uid as doc ID
bonamin and Claude Opus 5.5
2026-09-30 15:31:34 +03:00
3f3d2cc63c
fix(ui): offline SignalIndicator is plain grey, no amber slash
bonamin and Claude Opus 5.5
2026-09-30 15:31:34 +03:00
e663b0a609
docs(mqtt-auth): record TLS for app users via NPM + WebSockets
bonamin and Claude Opus 5.5
2026-09-30 01:15:34 +03:00
61e9bfab7c
docs(mqtt-auth): note old-firmware boards subscribe to vesper/{sn}/control
bonamin and Claude Opus 5.5
2026-09-30 01:00:43 +03:00
43102c617d
docs(mqtt-auth): note VPS broker has allow_anonymous false but no TLS listener yet
bonamin and Claude Opus 5.5
2026-09-30 00:58:59 +03:00
ecfe00307a
docs(mqtt-auth): record verified VPS broker setup and ACL isolation test
bonamin and Claude Opus 5.5
2026-09-30 00:57:01 +03:00
6ea7e9d2c5
docs: MQTT app-user auth reference + CLAUDE.md pointer
bonamin and Claude Opus 5.5
2026-09-30 00:45:18 +03:00
f5db83f26c
fix(devices): sync users.device_serials when PUT /api/devices/{id} changes user_list
bonamin and Claude Opus 5.5
2026-09-30 00:44:34 +03:00
3acd89a2c6
test(mqtt-auth): cover /mqtt/auth/user and /mqtt/auth/acl
bonamin and Claude Opus 5.5
2026-09-30 00:04:37 +03:00
81365eed89
feat(mqtt-auth): put legacy "vesper" password behind MQTT_ALLOW_LEGACY_PASSWORD
bonamin and Claude Opus 5.5
2026-09-30 00:03:23 +03:00
1253ec155e
feat(mqtt-auth): per-device topic ACL for phone-app users
bonamin and Claude Opus 5.5
2026-09-30 00:02:48 +03:00
8a668ca60f
feat(mqtt-auth): authenticate phone-app users with Firebase ID tokens
bonamin and Claude Opus 5.5
2026-09-30 00:02:21 +03:00
85bd2f7e51
feat(scripts): idempotent backfill of users.device_serials from devices.user_list
bonamin and Claude Opus 5.5
2026-09-30 00:01:36 +03:00
79a87e48f1
feat(users): store device_serials on user docs for direct user->device lookup
bonamin and Claude Opus 5.5
2026-09-30 00:00:49 +03:00
017911bece
docs(api-reference): rf.* is agnus-only — disabled on Vesper Standard (firmware F-069)
bonamin and Claude Opus 5.5
2026-09-29 23:54:12 +03:00
c36e4c41f8
docs(api-reference): loading playback state and playback_failed report (firmware F-068)
bonamin and Claude Opus 5.5
2026-09-29 20:25:38 +03:00
8b229e7fb3
docs(api-reference): list every playback.play/stop reply and error string (firmware F-067)
bonamin and Claude Opus 5.5
2026-09-29 20:18:13 +03:00
9d9b46056a
docs(api-reference): status/playback is republished on every MQTT connect (firmware F-066)
bonamin and Claude Opus 5.5
2026-09-29 20:11:20 +03:00
adec979182
docs(api-reference): document the "stopping" playback state (firmware F-065)
bonamin and Claude Opus 5.5
2026-09-29 20:10:03 +03:00
99baec9fcf
docs(api-reference): document new status/playback fields (firmware F-064)
bonamin and Claude Opus 5.5
2026-09-29 20:09:16 +03:00
c56344a6dc
docs(api-reference): sync with firmware handler audit — playback, rf namespace, clock/ota/files fixes
bonamin and Claude Opus 5.5
2026-09-29 20:02:58 +03:00
0c0dd9d0e9
fix(devices): signal glyph polish, fix invisible copy button, even firmware row
bonamin and Claude Sonnet 5
2026-09-22 12:45:01 +03:00
529e866fff
fix(devices): offline signal glyph, plus firmware UI across Device Detail tabs
bonamin and Claude Sonnet 5
2026-09-22 11:47:10 +03:00
c8ac0b78c5
docs(api-reference): document req_id, rework Transports/Legacy tabs, fix playback.play fields
bonamin and Claude Sonnet 5
2026-09-21 20:35:20 +03:00
80c0e955f0
fix(devices): zero out unassigned bell outputs when saving Bell Mechanisms
bonamin and Claude Sonnet 5
2026-09-21 20:35:03 +03:00
ae5da6046f
docs(CLAUDE): require every change to be documented and committed
bonamin and Claude Sonnet 5
2026-09-21 18:36:56 +03:00
aad5f4b98c
chore(strategies): add Health Monitor standalone design mockup
bonamin and Claude Sonnet 5
2026-09-21 18:36:50 +03:00
751cac72ce
fix(docker): move postgres data to a named volume, off the WSL2 bind mount
bonamin and Claude Sonnet 5
2026-09-21 18:36:28 +03:00
cef5e1f0f5
chore(docker): restart backend, frontend, and nginx unless stopped
bonamin and Claude Sonnet 5
2026-09-21 18:36:20 +03:00
f036000769
feat(manufacturing): extract shared useSerialConnection hook for provisioning wizard
bonamin and Claude Sonnet 5
2026-09-21 18:35:31 +03:00
d87925516a
feat(devices): add ResetStatsRequest/ResetStatsResult models
bonamin and Claude Sonnet 5
2026-09-21 18:35:20 +03:00
f54500a9d9
feat(devices): add Reset Stats action for clearing pre-ship QA/bench data
bonamin and Claude Sonnet 5
2026-09-21 18:35:01 +03:00
4737ab4306
feat(devices): add device onboarding wizard
bonamin and Claude Sonnet 5
2026-09-21 18:34:32 +03:00
6686faad6b
feat(manufacturing): enrich inventory list with customer/user details and filters
bonamin and Claude Sonnet 5
2026-09-21 18:34:08 +03:00
b07bdafd85
fix(header): resolve breadcrumb labels for devices and melodies correctly
bonamin and Claude Sonnet 5
2026-09-21 18:33:55 +03:00
dff1a35560
feat(settings): add log retention settings page
bonamin and Claude Sonnet 5
2026-09-21 18:33:40 +03:00
acd1896788
feat(devices): add Health tab, log explorer, and fleet health indicators
bonamin and Claude Sonnet 5
2026-09-21 18:32:06 +03:00
0d79a9f72c
feat(users): support creating app users with a Firebase Auth account
bonamin and Claude Sonnet 5
2026-09-21 18:31:37 +03:00
6e0a291228
feat(devices): add console-only display name (console_name)
bonamin and Claude Sonnet 5
2026-09-21 18:31:10 +03:00
8ec13947cb
fix(devices): restore warranty/maintenance dates missing from timestamp field list
bonamin and Claude Sonnet 5
2026-09-21 18:30:15 +03:00
0bec4c4648
feat(devices): add DeviceHealthSettings model for per-device alert thresholds
bonamin and Claude Sonnet 5
2026-09-21 18:27:35 +03:00
cc138e3d82
feat(devices): push General/Clock/Bells/Alerts config live over MQTT
bonamin and Claude Sonnet 5
2026-09-21 18:25:30 +03:00
7c533b9245
feat(mqtt): add device health telemetry and migrate to v2 topic spec
bonamin and Claude Sonnet 5
2026-09-21 18:24:36 +03:00
e5d556fee1
feat(devices): extract useDeviceCommand hook for shared MQTT command/ack flow
bonamin and Claude Sonnet 5
2026-09-21 18:22:48 +03:00
38750ba951
fix(scrollbar): theme scrollbars inside portal-rendered elements
bonamin and Claude Sonnet 5
2026-09-21 18:22:30 +03:00
7f6145ca35
fix(header): match header glass tint to sidebar, add drop shadow
bonamin and Claude Sonnet 5
2026-09-21 18:22:23 +03:00
2f7c5e859d
feat(ui): add MultiSelect, LineChart, SignalIndicator, PressHoldButton, EditableText, TimeRangeSelect
bonamin and Claude Sonnet 5
2026-09-21 18:22:02 +03:00
883c0556dd
feat(ui): add pending/update toast state and shared floating-menu positioning
bonamin and Claude Sonnet 5
2026-09-21 18:20:26 +03:00
1ce0137ba9
feat(mqtt): implement useMqttWebSocket hook
bonamin and Claude Sonnet 5
2026-09-21 18:20:15 +03:00
eaf92f1581
docs(api-reference): add MQTT v2 topic spec, split Transports into V2/Legacy
bonamin and Claude Sonnet 5
2026-09-21 10:49:02 +03:00
cc28ed880b
docs(ApiReferencePage): document system.set_identity console command
bonamin and Claude Sonnet 5
2026-07-20 20:11:26 +03:00
44609352b2
docs(ApiReference): document logs.list/logs.download and extended firmware.status
bonamin
2026-07-15 00:06:26 +03:00
70e0f9f734
docs(api-reference): add heartbeat payload card with rssi field
bonamin and Claude Sonnet 4.6
2026-07-13 02:14:53 +03:00
a9b3b4e9b0
feat(ApiReference): redesign network.info and network.status documentation
bonamin and Claude Sonnet 4.6
2026-07-13 00:53:42 +03:00
65ce446e44
fix(ApiReference): clock.get_config — add timezone fields, fix backlight/bell docs
bonamin and Claude Sonnet 4.6
2026-07-12 19:38:21 +03:00
bff90965bf
feat(ApiReference): add clock.set_config, clock.set_alerts_config, relay.set_config entries
bonamin and Claude Sonnet 4.6
2026-07-12 18:45:12 +03:00
3394716f8f
docs(ApiReferencePage): full v2 API reference update
bonamin and Claude Sonnet 4.6
2026-07-10 19:55:08 +03:00
abf3c3825b
docs(ApiReference): align V2 command reference with actual firmware
bonamin and Claude Sonnet 4.6
2026-07-09 10:03:52 +03:00
1ed5012a95
fix: key melody binary storage on pid instead of uid, add migration script
bonamin and Claude Sonnet 5
2026-07-06 10:53:25 +03:00
72f7e00990
feat: serve melody .bsm binaries over plain HTTP instead of Firebase Storage
bonamin and Claude Sonnet 5
2026-07-06 09:41:24 +03:00
9df80dd4e1
fix: vite server hotfix
bonamin
2026-06-16 12:15:25 +03:00
1022b7e5f1
fix: remove duplicate port mapping 8001:5174 from frontend service
bonamin and Claude Sonnet 4.6
2026-05-14 19:22:14 +03:00
024ba88470
fix: route manufacturing audit logs to shared Postgres audit log
bonamin and Claude Sonnet 4.6
2026-05-14 19:21:39 +03:00
9a213e93f8
fix: brought back postgress that we removed in the last commit, and added persistent folder for it
bonamin
2026-04-19 20:10:40 +03:00
d8b0b9ce28
fix: Flashing window size made fixed, and fixed Vite.config.js
bonamin
2026-04-19 15:52:34 +03:00
063106a29c
Reverted back to the original docker-compose.yml file.
bonamin
2026-04-19 15:46:07 +03:00
6a958a8d7d
update: Add Global Search on Header, Add Global Audit log for all actions.
bonamin
2026-04-19 15:41:29 +03:00
4f35bef6e3
fix: login issue #2
bonamin
2026-04-17 16:04:12 +03:00
2ef199e4c5
fix: login issue
bonamin
2026-04-17 16:01:50 +03:00
a605143c5d
Phase 5 of Migration
bonamin
2026-04-17 15:51:27 +03:00
da4608c937
Phase 4 of Migration
bonamin
2026-04-17 15:44:17 +03:00
83361fad77
Phase 3 of Migration
bonamin
2026-04-17 15:39:29 +03:00
c7d5206d0c
fix: deduplicate order_number collisions during Firestore orders migration
bonamin
2026-04-17 15:30:45 +03:00
914027e580
fix: use full doc.id as fallback order_number to avoid unique constraint collision
bonamin
2026-04-17 15:28:28 +03:00
b70753d805
Phase 2 of Migration
bonamin
2026-04-17 15:25:58 +03:00
a7b73b0564
fix: move SET LOCAL inside transaction in quotation/media/comms migration scripts
bonamin
2026-04-17 15:15:43 +03:00
4c2400b596
Phase 1 of Migration. Running Scripts
bonamin
2026-04-17 15:11:12 +03:00
0a8a42d69b
Initial Switch to V2. Completely Overhauled Backend, Frontend and General Structure.
bonamin
2026-04-17 14:37:36 +03:00
eb773c5531
fix: added ACL fix script
bonamin
2026-04-03 18:08:07 +03:00
ea8b2c96d6
feature: added archetype migration script
bonamin
2026-04-03 17:46:39 +03:00
435aa88e29
update: Added asset upload for bespoke boards
bonamin
2026-03-31 18:01:32 +03:00
7a5321c097
update: Added NVS Gen on the Flasher
bonamin
2026-03-27 11:17:10 +02:00
2b05ff8b02
feat: CRM customer/order UI overhaul
bonamin and Claude Sonnet 4.6
2026-03-25 20:21:10 +02:00
5d8ef96d4c
update: CRM customers, orders, device detail, and status system changes
bonamin and Claude Sonnet 4.6
2026-03-25 10:39:38 +02:00
fee686a9f3
feat: add Serial Monitor public page and Log Viewer settings page
bonamin and Claude Sonnet 4.6
2026-03-25 10:39:32 +02:00
b2d1e2bdc4
feature: Added Transactions and major Order System Overhaul
bonamin
2026-03-25 10:32:47 +02:00
2d57c75d2f
fix: Cloudflash now supports full-wipe before flashing
bonamin
2026-03-20 08:40:20 +02:00
d8ba64da55
fix: NVS Generator. cosmetic: Changed CloudFlash page a bit
bonamin
2026-03-19 21:01:17 +02:00
29bbaead86
update: added assets manager and extra nvs settings on cloudflash
bonamin
2026-03-19 11:11:29 +02:00
d0ac4f1d91
update: overhauled firmware ui. Added public flash page.
bonamin
2026-03-18 17:49:40 +02:00
4381a6681d
update: firmware and provisioning now supports bootloader and partition tables
bonamin
2026-03-16 08:52:58 +02:00
360725c93f
fix: row-alt background now works on customers list too
bonamin
2026-03-14 11:17:58 +02:00