feat(esp): evidence-based loopTask stack bound + ADR-034 (closes #276) - #280
Draft
cofade wants to merge 1 commit into
Draft
feat(esp): evidence-based loopTask stack bound + ADR-034 (closes #276)#280cofade wants to merge 1 commit into
cofade wants to merge 1 commit into
Conversation
The SET_LOOP_TASK_STACK_SIZE(16384) fix (#276) cleared the observed overflow but was an unmeasured bound. Add permanent per-stage uxTaskGetStackHighWaterMark(NULL) instrumentation printed after every heavy setup() stage and the first loop() upload, and record the measured evidence: - hardware: bench ESP32-CAM 68:09:47:60:33:08, production URLs, miner seq 9 - watermark reached 6428 of 16384 bytes free during the OTA-manifest TLS fetch (the #276 crasher); no later stage took it lower (live Google TLS handshake, registration, boot heartbeat, first upload) - TLS path runs ~3.6 KB deeper than the no-TLS baseline (10048 free) - ~9.96 KB peak, ~6.4 KB headroom -> 16384 stays, now evidence-backed Also ships ADR-034 (one global loopTask budget, no dedicated TLS task), esp-reliability section 9 with the measured numbers, a release-checklist re-verify step that greps the [stack] lines, chapter-10 acknowledgement that only a hardware smoke-flash gates this defect class, an updated chapter-11 lesson, and a healthy-boot signature extension in troubleshooting. No SEQUENCE/VERSION bump: reaching the field is the separate SEQUENCE-bumped OTA release (firmware-release.md), part of the #231 package; this instrumentation rides it. For #276.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Completes issue #276: the stack-budget fix merged in #277 cleared the observed overflow, but 16384 was an unmeasured bound. This branch turns it into an evidence-backed, permanently instrumented budget.
What ships
Gates
Not in this PR
Manual test needed: none beyond the hardware measurement already performed; the release checklist's bench-boot re-verify covers the ongoing tripwire.