P3-02: port=0 silently overwritten to 8655 — "random port" use case broken #20

Closed
opened 2026-06-16 13:57:02 +00:00 by Artur · 0 comments
Owner

Severity: P3 (Low)
File: decider/config.py line 123

Problem

if not cfg.get("server", {}).get("port"):
    logger.warning("server.port missing or invalid, defaulting to 8655")
    cfg.setdefault("server", {})["port"] = 8655

port=0 is a valid use case ("OS picks a random port"), but not 0 is True, so it gets silently overwritten.

Fix

Check for None or missing key explicitly, not falsiness:

port = cfg.get("server", {}).get("port")
if port is None:
    ...
**Severity**: P3 (Low) **File**: `decider/config.py` line 123 ## Problem ```python if not cfg.get("server", {}).get("port"): logger.warning("server.port missing or invalid, defaulting to 8655") cfg.setdefault("server", {})["port"] = 8655 ``` `port=0` is a valid use case ("OS picks a random port"), but `not 0` is `True`, so it gets silently overwritten. ## Fix Check for `None` or missing key explicitly, not falsiness: ```python port = cfg.get("server", {}).get("port") if port is None: ... ```
Artur closed this issue 2026-06-16 14:24:07 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
glow-all/decider#20
No description provided.