Freenove: story apps/actions, ecrans dynamiques et revalidate stepx #101

Merged
electron-rare merged 1 commits from feat/freenove-webui-network-ops-parity into main 2026-02-21 01:47:51 +00:00
electron-rare commented 2026-02-21 01:27:25 +00:00 (Migrated from github.com)

Objectif

Finaliser l'integration Freenove sur 3 axes: chainage story (apps/actions), rendu ecran dynamique, et validation transitions multi-scenarios.

Closes #100

Changements

  • Story specs/generateur:
    • ajout des apps WIFI_STACK et ESPNOW_STACK dans le schema + generateur
    • regeneration apps_gen/scenarios_gen
    • enrichissement YAML scenarios (apps reseau + triggers hardware step2)
  • Runtime story:
    • ajout des types d'apps kWifiStack/kEspNowStack
    • ajout des apps host wifi_stack_app et espnow_stack_app
  • Contenu LittleFS:
    • ajout data/story/apps/*.json (AUDIO/GATE/LA/SCREEN)
    • ajout data/story/actions/*.json
    • ajout scenarios JSON supplementaires
    • enrichissement DEFAULT.json (hardware_events/app_bindings/actions_catalog)
  • UI Freenove:
    • payloads ecran dynamiques (title, symbol, show_title, show_symbol, effect_speed_ms)
    • effets relies au payload (pulse/scan/blink/celebrate)
    • rendu orienté symboles/effets (titre masque par defaut)
  • Validation scenario:
    • SC_REVALIDATE_STEP2 renomme en SC_REVALIDATE_STEPX
    • ajout anchor_step dans les traces de verification
  • CI:
    • workflow firmware-story-v2.yml remis en pipeline story exploitable (validate/generate/check diff/artifact)

Verification executee

  • pio run -e freenove_esp32s3_full_with_ui
  • pio run -e freenove_esp32s3_full_with_ui -t buildfs
  • pio run -e freenove_esp32s3_full_with_ui -t uploadfs --upload-port /dev/cu.usbmodem5AB90753301
  • pio run -e freenove_esp32s3_full_with_ui -t upload --upload-port /dev/cu.usbmodem5AB90753301
  • Serie (pio device monitor --port /dev/cu.usbmodem5AB90753301 --baud 115200):
    • SC_COVERAGE OK
    • SC_REVALIDATE OK avec traces SC_REVALIDATE_STEPX
    • ESPNOW_STATUS_JSON OK
    • ESPNOW_SEND broadcast ping OK
    • NET_STATUS OK (sta_ssid=Les cils, local_match=1, fallback_ap=0)
  • WebUI:
    • GET /api/status, GET /api/network/wifi, GET /api/network/espnow OK
    • POST /api/control avec SC_EVENT unlock UNLOCK OK

Limites

  • AP fallback et STA locale partagent encore le SSID Les cils en config test; en absence de reseau local, la logique de retry peut alterner AP/reconnect.
## Objectif Finaliser l'integration Freenove sur 3 axes: chainage story (apps/actions), rendu ecran dynamique, et validation transitions multi-scenarios. Closes #100 ## Changements - Story specs/generateur: - ajout des apps `WIFI_STACK` et `ESPNOW_STACK` dans le schema + generateur - regeneration `apps_gen/scenarios_gen` - enrichissement YAML scenarios (apps reseau + triggers hardware step2) - Runtime story: - ajout des types d'apps `kWifiStack`/`kEspNowStack` - ajout des apps host `wifi_stack_app` et `espnow_stack_app` - Contenu LittleFS: - ajout `data/story/apps/*.json` (AUDIO/GATE/LA/SCREEN) - ajout `data/story/actions/*.json` - ajout scenarios JSON supplementaires - enrichissement `DEFAULT.json` (hardware_events/app_bindings/actions_catalog) - UI Freenove: - payloads ecran dynamiques (`title`, `symbol`, `show_title`, `show_symbol`, `effect_speed_ms`) - effets relies au payload (pulse/scan/blink/celebrate) - rendu orienté symboles/effets (titre masque par defaut) - Validation scenario: - `SC_REVALIDATE_STEP2` renomme en `SC_REVALIDATE_STEPX` - ajout `anchor_step` dans les traces de verification - CI: - workflow `firmware-story-v2.yml` remis en pipeline story exploitable (validate/generate/check diff/artifact) ## Verification executee - `pio run -e freenove_esp32s3_full_with_ui` - `pio run -e freenove_esp32s3_full_with_ui -t buildfs` - `pio run -e freenove_esp32s3_full_with_ui -t uploadfs --upload-port /dev/cu.usbmodem5AB90753301` - `pio run -e freenove_esp32s3_full_with_ui -t upload --upload-port /dev/cu.usbmodem5AB90753301` - Serie (`pio device monitor --port /dev/cu.usbmodem5AB90753301 --baud 115200`): - `SC_COVERAGE` OK - `SC_REVALIDATE` OK avec traces `SC_REVALIDATE_STEPX` - `ESPNOW_STATUS_JSON` OK - `ESPNOW_SEND broadcast ping` OK - `NET_STATUS` OK (`sta_ssid=Les cils`, `local_match=1`, `fallback_ap=0`) - WebUI: - `GET /api/status`, `GET /api/network/wifi`, `GET /api/network/espnow` OK - `POST /api/control` avec `SC_EVENT unlock UNLOCK` OK ## Limites - AP fallback et STA locale partagent encore le SSID `Les cils` en config test; en absence de reseau local, la logique de retry peut alterner AP/reconnect.
chatgpt-codex-connector[bot] commented 2026-02-21 01:27:30 +00:00 (Migrated from github.com)

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

You have reached your Codex usage limits for code reviews. You can see your limits in the [Codex usage dashboard](https://chatgpt.com/codex/settings/usage). To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your [settings](https://chatgpt.com/codex/settings/code-review).
electron-rare commented 2026-02-21 01:47:15 +00:00 (Migrated from github.com)

Review gate (manuelle) = PASS\n\nChecks verifies:\n- scope conforme (story/apps/actions, ecrans dynamiques, revalidate stepx, workflow story)\n- CI verte (, )\n- pas de secret/artefact commite\n\nRisque note: changement large multi-fichiers firmware/story, mais cohérent et deja valide en build + serial + WebUI.

Review gate (manuelle) = PASS\n\nChecks verifies:\n- scope conforme (story/apps/actions, ecrans dynamiques, revalidate stepx, workflow story)\n- CI verte (, )\n- pas de secret/artefact commite\n\nRisque note: changement large multi-fichiers firmware/story, mais cohérent et deja valide en build + serial + WebUI.
electron-rare commented 2026-02-21 01:47:20 +00:00 (Migrated from github.com)

Correction format: CI confirmee verte (route-parity + validate).

Correction format: CI confirmee verte (route-parity + validate).
electron-rare commented 2026-02-21 02:08:36 +00:00 (Migrated from github.com)

Coordination update: RTC evidence issue https://github.com/electron-rare/RTC_BL_PHONE/issues/21 and RTC PR https://github.com/electron-rare/RTC_BL_PHONE/pull/20 linked to this dual-run pass.

Coordination update: RTC evidence issue https://github.com/electron-rare/RTC_BL_PHONE/issues/21 and RTC PR https://github.com/electron-rare/RTC_BL_PHONE/pull/20 linked to this dual-run pass.
Sign in to join this conversation.