Make committed public outputs self-describing (meta envelope + per-probe purpose) #12

Closed
opened 2026-06-07 04:02:12 +00:00 by coilysiren · 0 comments
Owner

Committed public outputs (e.g. outputs/kais-macbook-pro__ser8/dig/public/baseline.yml) were bare data blobs with zero context on their purpose or intent - you had to reverse-engineer the path and the probe to know what you were looking at.

Change

Every committed public/*.yml is now self-describing: a meta: header over the result: payload, plus a one-line banner.

# o2r debug capture - 'meta' describes it, 'result' is the anonymized output.
meta:
  source: kais-macbook-pro
  target: ser8
  probe: dig
  purpose: magicDNS resolution of the target - status and answer counts, no address
  files: baseline.yml = last blessed known-good; current.yml = latest capture under debug
  pipeline: scripts/step.py - capture once, parse thrice; see README.md
  tier: public (anonymized, committed, posted to o2r)
result:
  ...
  • dbglib.public_meta / render_public / probe_purpose build the envelope; step.py writes the public tier through it.
  • The per-probe purpose lives once in parsers/_registry.yml (desc per command-id), stamped in at capture time - single source, no duplication.
  • meta is identical across baseline/current, so bless.py and the bootstrap stay byte-copies and the diff targets result only (verified: a real change still reports, meta never shows up as noise).
  • Migrated all existing committed outputs; README tier table documents the envelope.

This is also why the YAML switch (#11) mattered - JSON could not carry the banner comment or read this cleanly.

Committed public outputs (e.g. `outputs/kais-macbook-pro__ser8/dig/public/baseline.yml`) were bare data blobs with zero context on their purpose or intent - you had to reverse-engineer the path and the probe to know what you were looking at. ## Change Every committed `public/*.yml` is now self-describing: a `meta:` header over the `result:` payload, plus a one-line banner. ```yaml # o2r debug capture - 'meta' describes it, 'result' is the anonymized output. meta: source: kais-macbook-pro target: ser8 probe: dig purpose: magicDNS resolution of the target - status and answer counts, no address files: baseline.yml = last blessed known-good; current.yml = latest capture under debug pipeline: scripts/step.py - capture once, parse thrice; see README.md tier: public (anonymized, committed, posted to o2r) result: ... ``` * `dbglib.public_meta` / `render_public` / `probe_purpose` build the envelope; `step.py` writes the public tier through it. * The per-probe **purpose** lives once in `parsers/_registry.yml` (`desc` per command-id), stamped in at capture time - single source, no duplication. * `meta` is identical across baseline/current, so `bless.py` and the bootstrap stay byte-copies and the diff targets `result` only (verified: a real change still reports, meta never shows up as noise). * Migrated all existing committed outputs; README tier table documents the envelope. This is also why the YAML switch (#11) mattered - JSON could not carry the banner comment or read this cleanly.
Commenting is not possible because the repository is archived.
No description provided.