Conversation
PRD §3.1 still claimed logging/retry were "partially duplicated" across notifier modules — that work was unified in v0.3.0. Reworded to reflect current state. HISTORY.md had no entry for v0.4.0's structural change: introducing on-disk YAML interpreter files as the first non-env-var, non-label input. Added a section. Audit also confirmed the rest of the PRD matches the shipped code (base kwargs, capture extraction, interpreter loader, emission semantics, cross-repo pairing) and that no v0.3.2 git tag exists — v0.3.1/v0.3.2 were planned-but-not-shipped versions consolidated into v0.4.0.
Two factual errors in code comments, caught by the recent documentation audit: - notifiers/service_tracker_dashboard.py: the _PASSTHROUGH comment said exposure_observations is "consumed by STD v0.7.0+". Actual consumer is STD v0.6.0+ (CHANGELOG, PRD §9.3, README all confirm). - interpreter_loader.py: module docstring referenced PRD §12 as the YAML format reference. Correct section is §11 (the PRD's last section). Comment / docstring text only — no executable code changed.
get_host_name() reads the host hostname from the /etc/hostname mount, falling back to the container hostname. In WSL/Docker Desktop the mounted value is the LinuxKit VM name (e.g. "debuerreotype"), so the CNAME target comes out wrong even though production (real Linux host) is correct. HOST_NAME_OVERRIDE lets operators set the host name used as the CNAME target explicitly; unset preserves auto-detection. Fixes #18.
When STD_URL or STD_API_TOKEN was missing, every container on every refresh cycle logged a 'not enabling STD integration' line, flooding the log on DNS-only deployments. The check lived at the end of the STD register() call, so the whole dispatch path (and the periodic refresh loop, which only ever served STD) ran regardless. Gate STD dispatch and the refresh-loop thread on a single STD_CONFIGURED flag computed at startup via service_tracker_dashboard.is_configured(). When STD is unconfigured the notifier logs one line at startup and does no further STD work; the leftover guard in register() drops to debug. Fixes #19.
Cut CHANGELOG [Unreleased] to [0.4.1] (2026-05-29): DNS host-name override (HOST_NAME_OVERRIDE, #18) and STD-unconfigured log-flood fix (#19). Update CHANGELOG footer compare/tag links, the Build Status line in CLAUDE.md, and PRD §5 'Current State' to v0.4.1. No wire-contract change; ships independently of STD.
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.
[0.4.1] — 2026-05-29
Fixed
Dashboard not enabled" line on every container, every refresh cycle.
When
STD_URLorSTD_API_TOKENis missing, the notifier now logs asingle line at startup that STD integration is disabled, skips the
periodic refresh loop entirely (it only ever served STD), and does
not attempt STD dispatch on subsequent events.
Added
HOST_NAME_OVERRIDE. Sets the host name used as the DNSCNAME target (
<host>.<dockerdomain>), overriding the auto-detectedhostname. Useful in WSL or other environments where the host's
hostname differs from the name your DNS entries should point at
(e.g. Docker Desktop reports the LinuxKit/WSL VM name rather than the
real host). Unset preserves the existing auto-detection behavior.