Files
clawdmeter/.gitignore
T
wenil 83bd2bed43 v3 M1b: runtime per-provider theming (firmware) + accent push (daemon)
The watch recolors to the active provider's brand, live, and it's cheap to add
more providers later.

Firmware:
- theme.h: expose THEME_ACCENT_HEX; ui.cpp: COL_ACCENT becomes a runtime
  lv_color_t backed by a shared style (s_accent_style). Static accent widgets
  (launcher tile icons, usage status line, session tokens) attach the shared
  style, so ui_set_theme() recolors them instantly via lv_obj_report_style_change
  — no widget tracking, no recreation.
- ui_set_theme(pv, accent_rgb): swaps the accent + a small logo table keyed by
  provider id (fallback to the Claude mark until a provider ships a logo). Change-
  guarded, so the ~3s payload cadence doesn't churn.
- main.cpp: parse "pv" (id) + "ac" (0xRRGGBB) from the payload and apply.
- Adding a provider needs zero firmware color edits (accent is data-driven) and
  at most one logo-table row.

Daemon: push "ac" = active provider's brand accent alongside "pv".

Test fix: test_providers used asyncio.run(), which closed the suite's shared
event loop and broke every later get_event_loop() test (Py3.13) — mirror the
repo's _run() helper instead.

Verified on the 2.06: forcing an OpenAI-green theme recolored the live launcher
icons (report_style_change path). 216 builds clean; daemon suite 94 passed.
2026-07-10 00:40:24 +03:00

38 lines
675 B
Plaintext

# PlatformIO build artifacts
firmware/.pio/
firmware/.vscode/
# OS
.DS_Store
# Claude Code
.claude/
# Node tooling deps (npm install --no-save)
tools/node_modules/
tools/package-lock.json
# Mac daemon venv
daemon/.venv/
# Python bytecode cache
__pycache__/
*.pyc
# Windows daemon venv
/.venv/
# PyInstaller build artifacts — the standalone exe ships via a Gitea release,
# not git (build it with build-exe.ps1 / clawdmeter.spec).
/build/
/dist/
*_dbg.spec
# Local Home Assistant config (holds a secret token - never commit)
daemon/ha_config.json
# Session scratch — BLE daemon run logs + one-off on-device QA screenshots
/m3_daemon*.log
/*_qa.png
/build-exe.log