-
838c95484d
chore: release v0.9.0
master
v0.9.0
alexei.dolgolyov
2026-06-23 14:48:37 +03:00
-
14822fb6a0
Merge feat/roadmap-2026-06-19: pre-release review fixes (2026-06-23)
alexei.dolgolyov
2026-06-23 14:21:42 +03:00
-
-
0c096db639
fix: address pre-release review findings (2026-06-23)
feat/roadmap-2026-06-19
alexei.dolgolyov
2026-06-23 14:21:25 +03:00
-
c1eeefcf06
Merge feat/roadmap-2026-06-19: roadmap batches (solar/image-quality/per-pixel + integrations)
alexei.dolgolyov
2026-06-23 00:55:49 +03:00
-
-
39b0554444
feat: roadmap round two (2026-06-23) — per-pixel smart-lights + integrations
alexei.dolgolyov
2026-06-23 00:50:22 +03:00
-
6745e25b20
feat: roadmap batch (2026-06-19) — solar/linear-light/dither/nanoleaf + integrations
alexei.dolgolyov
2026-06-22 23:21:24 +03:00
-
-
126d8f2449
feat(auth): add auth.expose_docs flag to view API docs without a token
alexei.dolgolyov
2026-06-11 00:14:48 +03:00
-
e584235676
chore(activity-log): post-merge cleanup + graduate context to CLAUDE.md
alexei.dolgolyov
2026-06-10 18:42:15 +03:00
-
b43f821046
Merge feature/activity-log: persistent activity/audit log
alexei.dolgolyov
2026-06-10 15:31:12 +03:00
-
-
077c99c7d1
fix(activity-log): no spinner flash on instant filtering
alexei.dolgolyov
2026-06-10 15:30:48 +03:00
-
ae74cca132
fix(activity-log): UI polish - accessible export menu, i18n placeholders, zero-result spinner fix
alexei.dolgolyov
2026-06-10 15:24:45 +03:00
-
77284e8e7b
fix(activity-log): dashboard section reconciliation + activity column alignment
alexei.dolgolyov
2026-06-10 12:28:13 +03:00
-
ff1ff06cb5
fix(activity-log): post-test polish - localize descriptions, dashboard widget, ticking time
alexei.dolgolyov
2026-06-10 12:03:18 +03:00
-
3dd1ac3f0d
fix(activity-log): final-review fixes - crosslink keys + sanitize parity
alexei.dolgolyov
2026-06-09 21:23:22 +03:00
-
6e1dd2111d
feat(activity-log): phase 6 - dashboard widget + settings panel + docs
alexei.dolgolyov
2026-06-09 21:05:40 +03:00
-
9a0137fa4c
feat(activity-log): phase 5 - Activity tab (smart filtering, live updates, export)
alexei.dolgolyov
2026-06-09 20:42:44 +03:00
-
4a0927521a
feat(activity-log): phase 4 - REST API (list/export/settings/clear)
alexei.dolgolyov
2026-06-09 20:09:46 +03:00
-
25c613c5cb
feat(activity-log): phase 3 - event instrumentation (4 categories)
alexei.dolgolyov
2026-06-09 19:20:57 +03:00
-
726f39e2ba
feat(activity-log): phase 2 - recorder, actor context, retention, lifecycle
alexei.dolgolyov
2026-06-09 18:10:27 +03:00
-
1ac4a0f66d
feat(activity-log): phase 1 - storage model, migration, repository
alexei.dolgolyov
2026-06-09 17:40:37 +03:00
-
1afe7d6fcc
chore(activity-log): scaffold feature plan and phase subplans
alexei.dolgolyov
2026-06-09 17:14:50 +03:00
-
17dd2e02ba
fix: resolve comprehensive review findings (security, concurrency, perf, Android, UI)
fix/review-findings-2026-06-09
alexei.dolgolyov
2026-06-09 16:35:08 +03:00
-
-
7a12f39f49
chore: release v0.8.2
v0.8.2
alexei.dolgolyov
2026-06-08 20:18:28 +03:00
-
dd43f3836d
fix(calibration-wizard): all-provider discovery + spatial corner picker
feat/roadmap-next
alexei.dolgolyov
2026-06-08 17:59:56 +03:00
-
d32961085d
Merge feature/edge-calibration-wizard: auto edge-calibration + first-run wizard
alexei.dolgolyov
2026-06-08 17:00:41 +03:00
-
-
6cd5e057da
fix(setup): register scaffolded target with ProcessorManager + final-review hardening
alexei.dolgolyov
2026-06-08 16:55:36 +03:00
-
81b18089e1
feat(onboarding): guided first-run setup wizard (phase 4, final)
alexei.dolgolyov
2026-06-08 16:27:55 +03:00
-
abc204c04e
feat(snapshot): include scene playlists + cycling state in snapshot
alexei.dolgolyov
2026-06-08 16:22:47 +03:00
-
9550688c1e
feat(calibration): browser-driven auto edge-calibration UI (phase 3)
alexei.dolgolyov
2026-06-08 15:52:45 +03:00
-
9dcd76d264
feat(setup): one-call setup scaffold + onboarding flag (phase 2)
alexei.dolgolyov
2026-06-08 15:22:04 +03:00
-
0409cd8b66
feat(calibration): auto edge-calibration backend core (phase 1)
alexei.dolgolyov
2026-06-08 14:59:58 +03:00
-
-
6180569b10
wip(dashboard): in-progress dashboard customization changes
alexei.dolgolyov
2026-06-08 14:33:33 +03:00
-
f71e10ee06
feat(scenes): scene playlists with timed auto-cycling
alexei.dolgolyov
2026-06-08 13:48:43 +03:00
-
ca59546711
feat(capture): region-of-interest (ROI) crop for screen sampling
alexei.dolgolyov
2026-06-05 11:58:26 +03:00
-
4a82595f26
Merge feat/roadmap-quick-wins: WLED realtime UDP, look presets, weekday/timezone scheduling
alexei.dolgolyov
2026-06-05 11:44:38 +03:00
-
-
1ada5ac334
feat(automations): weekday + timezone scheduling for time-of-day rule
feat/roadmap-quick-wins
alexei.dolgolyov
2026-06-04 23:54:03 +03:00
-
e18d56c838
feat(processing): built-in 'look' presets (Cinematic/Vivid/Cozy/Soft/Cool)
alexei.dolgolyov
2026-06-04 23:43:11 +03:00
-
7728aecb4f
feat(wled): native realtime UDP output (DRGB/DRGBW/DNRGB) with auto-revert
alexei.dolgolyov
2026-06-04 23:34:26 +03:00
-
-
e28ab5a956
Merge feat/power-budget-abl: automatic brightness limiting (ABL) / power budget
alexei.dolgolyov
2026-06-04 23:22:18 +03:00
-
-
1e395fd09e
Merge fix/verified-bugs: weak default key, broken MQTT route, scene brightness sync
alexei.dolgolyov
2026-06-04 23:22:18 +03:00
-
-
ffee156c17
feat(targets): automatic brightness limiting (ABL) / per-LED power budget
feat/power-budget-abl
alexei.dolgolyov
2026-06-04 22:56:50 +03:00
-
-
-
02e2ea37f3
fix(scenes): sync brightness value-source change to live processor
fix/verified-bugs
alexei.dolgolyov
2026-06-04 20:46:26 +03:00
-
fdc9201660
fix(api): remove broken legacy /system/mqtt/settings route
alexei.dolgolyov
2026-06-04 20:46:24 +03:00
-
5686ae5468
fix(security): remove active weak default API key from shipped config
alexei.dolgolyov
2026-06-04 20:46:13 +03:00
-
-
9960f15a1b
docs(android): remove ANDROID-REVIEW planning/review docs
alexei.dolgolyov
2026-06-02 15:05:11 +03:00
-
397a53ed1c
Merge feature/android-foreground-app-automation: Android foreground-app automation condition
alexei.dolgolyov
2026-06-02 14:57:45 +03:00
-
-
1c1bbe2551
feat(android): foreground-app automation condition
alexei.dolgolyov
2026-06-02 14:57:29 +03:00
-
-
68040173c6
Merge feature/android-webcam-capture: Android on-device webcam capture
alexei.dolgolyov
2026-06-02 13:46:59 +03:00
-
-
4bf3fe65db
feat(android): on-device webcam capture via Camera2 (AndroidCameraEngine)
alexei.dolgolyov
2026-06-02 13:36:23 +03:00
-
-
34db5de8c3
Merge feature/android-notification-capture: Android on-device notification capture
alexei.dolgolyov
2026-06-02 11:47:29 +03:00
-
-
0be3f833df
feat(android): on-device OS notification capture (NotificationListenerService)
alexei.dolgolyov
2026-06-02 11:47:13 +03:00
-
-
4b2e8fc5ec
docs(android): add audio-capture design + missing-functionality review
alexei.dolgolyov
2026-06-02 03:30:43 +03:00
-
487259a96d
Merge feature/android-audio-capture: Android on-device audio capture
alexei.dolgolyov
2026-06-02 03:28:37 +03:00
-
-
fd62db1720
feat(audio): Android on-device system playback capture
alexei.dolgolyov
2026-06-02 03:28:22 +03:00
-
-
669ae20824
feat(value-sources): optional normalization for magnitude sources
alexei.dolgolyov
2026-06-02 02:24:40 +03:00
-
6de61b965e
feat(value-sources): add sandboxed-Jinja template combinator
alexei.dolgolyov
2026-06-01 18:53:56 +03:00
-
12b40e6071
docs: actualize README and API reference, embed screenshots
alexei.dolgolyov
2026-05-29 14:35:45 +03:00
-
498854f04d
refactor(storage): gate clone() behind an opt-in allowlist; expand duplicate tests
alexei.dolgolyov
2026-05-29 11:55:58 +03:00
-
15cfb821d3
feat(graph): duplicate a selected subgraph server-side
alexei.dolgolyov
2026-05-29 11:45:55 +03:00
-
2e51f46dfd
feat(graph): make the visual editor a full wiring control surface
alexei.dolgolyov
2026-05-29 02:29:19 +03:00
-
05cf121666
fix(installer): open WebUI once after "Launch LedGrab"
alexei.dolgolyov
2026-05-28 23:52:52 +03:00
-
d505388f0e
docs: graph-editor wiring-control roadmap (review findings A1-D6)
alexei.dolgolyov
2026-05-28 23:38:04 +03:00
-
6aeda935f1
chore: release v0.8.1
v0.8.1
alexei.dolgolyov
2026-05-28 23:35:35 +03:00
-
a5effba553
feat: aggregated snapshot + wiring-graph APIs, MQTT device brokers
alexei.dolgolyov
2026-05-28 22:51:04 +03:00
-
b83a72e63f
chore: release v0.8.0
v0.8.0
alexei.dolgolyov
2026-05-28 17:48:06 +03:00
-
0d840adfca
fix(ctypes): share wintypes.MSG with platform_detector to avoid argtype races
alexei.dolgolyov
2026-05-28 17:36:19 +03:00
-
1f959932c1
fix(notification): allow clearing the sound on per-app overrides and main row
alexei.dolgolyov
2026-05-28 17:28:34 +03:00
-
10eb24b2ce
docs: dashboard innerHTML reconciliation review notes
alexei.dolgolyov
2026-05-28 17:26:56 +03:00
-
66b85b0175
fix(css-editor): persist notification_sound + notification_volume
alexei.dolgolyov
2026-05-28 17:26:44 +03:00
-
bc42604045
ci(release): publish release only after every build job uploads assets
alexei.dolgolyov
2026-05-28 17:26:28 +03:00
-
3645216669
feat(icons): spectrum aperture icon set + dedicated tray variant
alexei.dolgolyov
2026-05-28 17:26:18 +03:00
-
85da2e538d
feat(backup): bundle assets in ZIP + partial-write hardening + restart log
alexei.dolgolyov
2026-05-28 17:25:55 +03:00
-
e4d24a02da
fix(ctypes): pin LPMSG across MSG-pump prototypes for Python 3.13
alexei.dolgolyov
2026-05-28 17:25:37 +03:00
-
bb3a316e35
refactor(frontend): shared API client + automations registry (audit M7, H8)
alexei.dolgolyov
2026-05-28 14:58:08 +03:00
-
49c35a2ea0
refactor(frontend): split types.ts into 18 per-entity files (audit H6)
alexei.dolgolyov
2026-05-28 14:57:25 +03:00
-
ef1f9eade2
feat(android): production-readiness pass — security, perf, compat, UI/UX
alexei.dolgolyov
2026-05-26 12:52:14 +03:00
-
8bdcc17799
chore: release v0.7.0
v0.7.0
alexei.dolgolyov
2026-05-26 00:35:38 +03:00
-
f591e258f7
fix(storage/database): reopen connection on lifespan restart
alexei.dolgolyov
2026-05-26 00:26:36 +03:00
-
f6486f9b34
perf(dashboard): diff FPS charts + cache spark SVG nodes; i18n perf strings
alexei.dolgolyov
2026-05-26 00:12:29 +03:00
-
48dbdb90e9
docs(review-todo): check off items addressed in 2026-05-23 autonomous pass
alexei.dolgolyov
2026-05-23 01:22:41 +03:00
-
003517247f
refactor(types): migrate (window as any) statics to typed window globals
alexei.dolgolyov
2026-05-23 01:22:29 +03:00
-
888f8fd16e
refactor(types): PEP-604 union sweep + UP007/UP045 enforcement
alexei.dolgolyov
2026-05-23 01:21:44 +03:00
-
ea7ee88490
refactor(api/auth): narrow WS exception catches + observability log
alexei.dolgolyov
2026-05-23 01:14:43 +03:00
-
d38021f061
refactor(processing): hot-path magic numbers -> named module constants
alexei.dolgolyov
2026-05-23 01:14:31 +03:00
-
507e1385a6
feat(ui/icon-select): defence-in-depth XSS sanitiser on icon channel
alexei.dolgolyov
2026-05-23 01:13:55 +03:00
-
907bdaf043
test(url-scheme): WLED route-level integration + IPv6 regression
alexei.dolgolyov
2026-05-23 01:13:44 +03:00
-
0dd8d430b9
fix(devices): preserve existing URL on PATCH-without-url
alexei.dolgolyov
2026-05-23 01:13:13 +03:00
-
fd46c51dba
docs: TODO + CLAUDE.md notes + locale keys for new features
alexei.dolgolyov
2026-05-23 00:50:31 +03:00
-
ddae5719cf
chore(frontend-infra): inbound-event allowlist + storage/state touch-ups
alexei.dolgolyov
2026-05-23 00:50:15 +03:00
-
898912f8b1
chore(backend): MQTT/WLED/devices/capture/utils + api routes hardening
alexei.dolgolyov
2026-05-23 00:50:01 +03:00
-
45d12b2811
feat(update-service): SSRF-validated redirects + restart hardening
alexei.dolgolyov
2026-05-23 00:49:18 +03:00
-
826e680f37
refactor(color-strip): rename static -> single + frontend follow-through
alexei.dolgolyov
2026-05-23 00:49:00 +03:00
-
737fd72b73
feat(value-sources): extend storage + schema + UI alongside new kinds
alexei.dolgolyov
2026-05-23 00:48:48 +03:00
-
3fe66d80cb
feat(automations): expand automation rules + UI + engine coverage
alexei.dolgolyov
2026-05-23 00:48:19 +03:00
-
f03cb303c3
feat(modal): closeIfPristine save-guard + per-editor adoption
alexei.dolgolyov
2026-05-23 00:48:00 +03:00
-
9ff83bd6ca
feat(ui): MiniSelect primitive + IconSelect XSS hardening + typed globals
alexei.dolgolyov
2026-05-23 00:47:45 +03:00
-
d6cc80074d
feat(http-endpoints): introduce HTTP endpoint output target stack
alexei.dolgolyov
2026-05-23 00:47:31 +03:00
-
06273ba2bc
chore(tooling): vex semantic-search config + REVIEW_TODO backlog
alexei.dolgolyov
2026-05-23 00:46:44 +03:00
-
628c6b2f0d
docs: capture architecture-audit remainder for follow-up sessions
alexei.dolgolyov
2026-05-23 00:36:39 +03:00
-
2f15fbb752
refactor(output-targets): registry + coverage assertion for response builders
alexei.dolgolyov
2026-05-23 00:03:01 +03:00