Repository navigation
Fix package test stack overflow - #52
Conversation
Review — verified correct; overlaps with #48Built merged onto current Being straight with you: this change is byte-identical to the same hunk in #48 (I compared git blob hashes — both produce That does not make this PR wrong or unwelcome — you found a real defect and fixed it correctly, and you got there independently. Two options, both fine:
If you want a follow-up with more surface: |
Same fix as #48, which just merged — yours was correctYou and #48 independently made the identical change: every I merged #48 for one reason, and it is not the code — the two diffs are byte-for-byte the same on every line that matters. #48 carries a comment explaining why:
That is the part a future reader needs. A bare Nothing wrong with this PR; it is a coin toss decided by documentation. The diagnosis was right and the fix was right. If you would like a follow-up in the same area: |
New docs/safety/robot-control-contract.md: the on-device contract a real rover build must satisfy (companion to the EoSim cmd_vel/ odom adapter from EoSim #52). Every section is labelled READ or PROPOSED: READ = verified from the step-1 sources below at eos master ce2f110; PROPOSED = needs implementation and/or a maintainer decision. No code file touched; no value in the PROPOSED sections is a measurement. Step-1 sources actually read: kernel/src/task.c, kernel/include/eos/kernel.h, kernel/include/eos/kernel_internal.h, kernel/src/sync.c, docs/safety/work-in-progress/iso26262/ safety_plan.md, docs/book/part7-advanced/ch35-safety.md, services/os/include/eos/os_services.h, services/init/src/ service.c, eNI/common/src/stim_safety.c (BCI-only confirmation), plus an eos code search for cmd_vel (0 hits at ce2f110). Watchdog finding (read, not assumed): eos HAS watchdog surfaces — services/os EosWatchdog API and services/init per-service health-check watchdog (30 s default) — but NO robot velocity watchdog: no cmd_vel consumer, no command-timeout to safe-stop rule exists in eos. The doc's velocity watchdog (PROPOSED T = 500 ms) is new contract composed from the existing primitives, not a duplicate. No #202 position taken: the doc records only the kernel wait convention as read (EOS_NO_WAIT = 0, EOS_WAIT_FOREVER = 0xFFFFFFFF, sync.c honours both); the compat-layer timeout question stays the maintainer's decision. Also regen llms.txt + llms-full.txt in the same commit, per the eos-mqtt-client-design precedent (c313e66): new doc added to the Docs list, the llms-full Sources list, and appended as the final section. Refs #199 (programme context only; #199 is the MQTT tracker and is NOT closed by a doc).
Summary
Fixes a stack overflow issue in the package tests.
Changes
EosPackageSet setfrom automatic (stack) storage tostaticstorage in the affected package test functions.EosPackageSetobject from consuming excessive stack space during test execution.Testing
Commit
838b759—Fix package test stack overflow