[Medium][Operability] Startup/config error handling is brittle and sometimes silent #34
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Several startup/configuration paths either panic or silently ignore errors instead of surfacing actionable failures.
Why this matters
This is a daemon-like system. Startup should fail predictably and explain why. Silent fallback to defaults or panic-based exits make deployment and debugging harder than necessary.
Evidence
Topic config is loaded through
Optionchaining that silently discards open/read/parse errors:myceliumd-common/src/lib.rs:592-597DNS enablement panics if UDP port 53 cannot be bound:
mycelium/src/dns.rs:95-99Router construction failure is logged and then panics instead of returning an error:
mycelium/src/lib.rs:170-203There are also multiple other panic-on-invalid-runtime paths in core startup code.
Expected behavior
Result.Actual behavior
Suggested fix
Option-based config loading with explicitResulthandling.Risk
Medium operational issue. It increases time-to-diagnosis and makes deployment behavior less predictable than it should be.