J. Nick Koston
707a07108f
Merge branch 'crash-handler-rollback-fix' into integration
2026-04-08 09:34:38 -10:00
J. Nick Koston
2ab7f032a8
[esp32] Preserve crash data across OTA rollback reboots
...
Don't clear the crash data magic marker at boot time. Previously,
crash_handler_read_and_clear() would clear the magic immediately,
so if OTA rollback triggered a reboot before an API client connected,
the crash trace was lost.
Now the magic is only cleared after crash_handler_log() delivers the
data to an API client via crash_handler_clear().
2026-04-08 09:31:30 -10:00
J. Nick Koston and pre-commit-ci-lite[bot]
2b5ee69eb2
[api] Speed up protobuf encode 17-20% with register-optimized write path ( #15290 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-04-06 12:42:18 -10:00
J. Nick Koston and Claude Opus 4.6
33285dfe27
Fix merge issues: write_short_string to static ProtoEncode, add debug arg
...
- Convert ProtoEncode::write_short_string to static method with pos param
- Fix codegen to emit ProtoEncode::write_short_string(pos, ...)
- Add PROTO_ENCODE_DEBUG_INIT to encode_fn call in encode_to_buffer
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-06 08:33:13 -10:00
J. Nick Koston and Claude Opus 4.6
7122fb6f88
Merge remote-tracking branch 'upstream/api-sint32-short-varint' into integration
...
Fix double static_cast in enum encode precomputed tag path by
passing raw field ref instead of pre-cast value_expr.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-06 08:31:05 -10:00
J. Nick Koston
10f08e0802
[esp8266] Add crash handler for post-mortem diagnostics ( #15465 )
2026-04-06 03:30:56 +00:00
J. Nick Koston
f81e1c37da
Merge remote-tracking branch 'upstream/esp8266-crash-handler' into integration
2026-04-05 13:39:46 -10:00
J. Nick Koston
50073a24b5
[esp8266] Add crash handler for post-mortem diagnostics
...
Add a crash handler for ESP8266 that captures and logs crash data
from previous boots, matching the existing ESP32 and RP2040
implementations. Uses the SDK's rst_info (always available after
reboot) for basic crash info and Arduino's custom_crash_callback
to scan the stack for return addresses stored in RTC user memory.
2026-04-05 11:50:35 -10:00
J. Nick Koston
f0c22fc1cd
dupe
2026-04-04 00:00:25 -10:00
J. Nick Koston
8b0e6a3324
preen
2026-04-03 23:34:57 -10:00
J. Nick Koston
a3febe4a9e
fix bloat
2026-04-03 23:20:05 -10:00
J. Nick Koston
5553962eae
fix bloat
2026-04-03 23:16:56 -10:00
J. Nick Koston
72df34a507
fix bloat
2026-04-03 23:07:06 -10:00
J. Nick Koston
599f784a90
fix bloat
2026-04-03 22:46:36 -10:00
J. Nick Koston
dee78b8a8e
fix slowdown
2026-04-03 22:39:19 -10:00
J. Nick Koston
555804db14
no gap
2026-04-03 22:03:26 -10:00
J. Nick Koston
1436d034bf
[api] Inline DeferredBatch::add_item to eliminate push_back call barrier ( #15353 )
2026-04-02 03:11:47 +00:00
J. Nick Koston
bcc7b8f490
[api] Add send_sensor_state benchmarks ( #15352 )
2026-04-01 16:12:02 -10:00
J. Nick Koston
f4097d5a95
[api] Devirtualize API command dispatch ( #15044 )
2026-03-23 19:57:40 +13:00
J. Nick Koston
f2968e0449
[api] Reduce API code size with buffer and nodelay optimizations ( #14797 )
2026-03-14 08:13:50 -10:00
J. Nick Koston
f8a22b87b8
[rp2040] Fix crash handler design flaws ( #14716 )
2026-03-12 18:23:01 +13:00
J. Nick Koston
8daa946afa
[esp32] Add crash handler to capture and report backtrace across reboots ( #14709 )
2026-03-12 14:00:20 +13:00
J. Nick Koston
c709010c4c
[api] Replace std::vector<uint8_t> with APIBuffer to skip zero-fill ( #14593 )
2026-03-10 09:11:12 -10:00
J. Nick Koston
771404668d
[api] Inline fast path of try_to_clear_buffer ( #14630 )
2026-03-08 14:01:01 -10:00
0c4a44566f
[serial_proxy] New component ( #13944 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-03-08 03:55:49 -05:00
J. Nick Koston
f57fa4cc8d
[bluetooth_proxy] Add BLE connection parameters API ( #14577 )
2026-03-07 07:25:33 -10:00
J. Nick Koston and Copilot
42dbb51022
[api] Devirtualize protobuf encode/calculate_size ( #14449 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-06 19:03:54 +00:00
J. Nick Koston and Copilot
8a915dcbbe
[core] Move device class strings to PROGMEM on ESP8266 ( #14443 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-06 08:34:27 -10:00
J. Nick Koston
07e51886f3
[core] Move entity icon strings to PROGMEM on ESP8266 ( #14437 )
2026-03-06 06:57:52 -10:00
J. Nick Koston
2777d35990
[api] Devirtualize frame helper calls when protocol is fixed at compile time ( #14468 )
2026-03-05 07:21:44 -10:00
J. Nick Koston
7d52a9587f
[api] Outline keepalive ping logic from APIConnection::loop() ( #14374 )
2026-02-28 07:20:20 -10:00
J. Nick Koston
7dff631dcb
[core] Flatten single-callsite vector realloc functions ( #13970 )
2026-02-12 18:20:39 -06:00
J. Nick Koston
069c90ec4a
[api] Split process_batch_ to reduce stack on single-message hot path ( #13907 )
2026-02-11 11:34:43 -06:00
J. Nick Koston
5281fd3273
[api] Extract cold code from APIConnection::loop() hot path ( #13901 )
2026-02-11 16:30:34 +13:00
J. Nick Koston
2585779f11
[api] Remove duplicate peername storage to save RAM ( #13540 )
2026-02-11 07:23:16 +13:00
J. Nick Koston
c658d7b57f
[api] Merge auth check into base read_message, eliminate APIServerConnection ( #13873 )
2026-02-09 12:02:02 -06:00
J. Nick Koston
3cde3daceb
[api] Collapse APIServerConnection intermediary layer ( #13872 )
2026-02-09 08:45:33 -06:00
J. Nick Koston
140ec0639c
[api] Elide empty message construction in protobuf dispatch ( #13871 )
2026-02-09 03:24:45 -06:00
J. Nick Koston and Copilot
55ef8393af
[api] Remove is_single parameter and fix batch buffer preparation ( #13773 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-05 15:19:03 +01:00
J. Nick Koston
6892805094
[api] Align water_heater_command with standard entity command pattern ( #13655 )
2026-02-02 22:00:46 +01:00
J. Nick Koston
c8cc29a991
[api] Reduce batch RAM usage by 33% via switch dispatch ( #13199 )
2026-01-14 03:58:06 +00:00
83eebdf15d
[infrared] Implement experimental API/Core/component for new component/entity type ( #13129 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-01-12 05:01:23 +00:00
J. Nick Koston
e1aac7601d
[event] Return StringRef from get_last_event_type() ( #13104 )
2026-01-11 17:52:54 -10:00
J. Nick Koston
546cdbde0d
[api] Simplify string handling by removing bifurcated client/server storage ( #12822 )
2026-01-07 08:23:28 -10:00
J. Nick Koston and Keith Burzinski
2147ddf8c7
[api] Eliminate std::string from ClientInfo struct ( #12566 )
...
Co-authored-by: Keith Burzinski <kbx81x@gmail.com >
2026-01-06 21:32:23 +00:00
J. Nick Koston
850f189225
[api] Fix message batch size mismatch and improve naming consistency ( #12940 )
2026-01-04 23:44:49 +00:00
J. Nick Koston
1d323c2d71
[api] Remove deprecated password authentication ( #12819 )
2026-01-03 07:14:48 -10:00
J. Nick Koston
f0391f0213
[api] Remove object_id from API protocol - clients compute it from name #12698 ( #12818 )
2026-01-02 16:32:46 -10:00
J. Nick Koston
167a42aa27
[api] Use StringRef in send_action_response and send_execute_service_response ( #12658 )
2026-01-02 14:11:45 -10:00
J. Nick Koston
6383fe4598
[core] Add zero-allocation object_id methods ( #12578 )
2025-12-22 07:56:33 -10:00