chore(build): unify pre-script libdeps paths on a shared helper + OTA log

OTA hardening follow-up to the patch_nimble.py hardcoded-"tdeck" bug that broke
tdeck-ota linking (undefined reference to nimble_host_reset_reason):
- Add _build_helpers.env_libdeps_dir(env, *parts): the single per-environment
  libdeps path resolver (.pio/libdeps/<PIOENV>/...). Converted all five pre-scripts
  (patch_nimble/msgpack/filestore/littlefs_paths, sync_file_libdeps) to use it, so
  the env component can no longer be hand-rolled/hardcoded wrong per script.
- "OTA: Ready" log -> "OTA: wireless flash service started (pyxis-tdeck:3232)":
  ArduinoOTA.begin() is void and can't confirm a ready state, so log the target
  instead of claiming readiness we can't verify.

Verified: both tdeck and tdeck-ota build, and the NimBLE patch lands in EACH env's
own libdeps tree (nimble_host_reset_reason count 2 in both).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UWZuYkHBRqNb6BZHV8sTG5
This commit is contained in:
torlando-agent[bot]
2026-06-23 00:01:17 -04:00
co-authored by Claude Opus 4.8
parent 41e6eb72a2
commit b06b3650ae
7 changed files with 41 additions and 26 deletions
+3 -1
View File
@@ -682,7 +682,9 @@ void on_wifi_connected() {
});
ArduinoOTA.onError([](ota_error_t error) { ERROR("OTA: Error"); });
ArduinoOTA.begin();
INFO("OTA: Ready");
// ArduinoOTA.begin() returns void, so this is "started", not a verified-ready
// state -- log the target instead of claiming readiness we can't confirm.
INFO("OTA: wireless flash service started (pyxis-tdeck:3232)");
// Initialize UDP log broadcasting (multicast group 239.0.99.99:9999)
udp_log_init();