Land the post-reboot recovery battery (parsers + recovery-battery.sh + site.yml + ZHQK outputs) #6

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

What

Land the post-reboot recovery battery built out during the live kais-macbook-pro -> kai-server debug (o2r channel ZHQK):

  • parsers: dig.yml (jc), ssh-exec.yml (text), nc-zv.yml (text, shared by nc-ssh/nc-api); registered in _registry.yml.
  • dbglib: load_parser now resolves through _registry.yml so several command-ids can share one parser file (nc-ssh/nc-api -> nc-zv.yml).
  • site.yml: post-power-cycle battery (ping/dig/nc-ssh/nc-api/ssh-exec/kubectl-readyz/kubectl-pods) sequenced via the step role.
  • scripts/recovery-battery.sh: one-shot driver - resolves the target from SSM, opens/uses the channel, runs the battery.
  • ansible.cfg: community.general.yaml stdout callback was removed in community.general 12.0.0; switch to builtin default + result_format = yaml.
  • outputs/: committed public tier for the new probes (raw + normalized stay gitignored).

Note

The committed public outputs were hand-scrubbed: the anonymizer left the opaque tailnet FQDN suffix in the public tier (kai-server.<tailnet>.ts.net). The opaque suffix was replaced with <tailnet> before commit. The underlying parser miss is tracked in #3 (name-scrub / FQDN handling in normalize.text + ip_scrub is insufficient) and is NOT fixed here.

Done when

  • New parsers + battery committed, public tier carries no opaque tailnet suffix.
## What Land the post-reboot recovery battery built out during the live `kais-macbook-pro -> kai-server` debug (o2r channel ZHQK): - **parsers**: `dig.yml` (jc), `ssh-exec.yml` (text), `nc-zv.yml` (text, shared by `nc-ssh`/`nc-api`); registered in `_registry.yml`. - **dbglib**: `load_parser` now resolves through `_registry.yml` so several command-ids can share one parser file (`nc-ssh`/`nc-api` -> `nc-zv.yml`). - **site.yml**: post-power-cycle battery (ping/dig/nc-ssh/nc-api/ssh-exec/kubectl-readyz/kubectl-pods) sequenced via the `step` role. - **scripts/recovery-battery.sh**: one-shot driver - resolves the target from SSM, opens/uses the channel, runs the battery. - **ansible.cfg**: `community.general.yaml` stdout callback was removed in community.general 12.0.0; switch to builtin `default` + `result_format = yaml`. - **outputs/**: committed public tier for the new probes (raw + normalized stay gitignored). ## Note The committed public outputs were hand-scrubbed: the anonymizer left the opaque tailnet FQDN suffix in the `public` tier (`kai-server.<tailnet>.ts.net`). The opaque suffix was replaced with `<tailnet>` before commit. The underlying parser miss is tracked in #3 (name-scrub / FQDN handling in `normalize.text` + `ip_scrub` is insufficient) and is NOT fixed here. ## Done when - New parsers + battery committed, public tier carries no opaque tailnet suffix.
Commenting is not possible because the repository is archived.
No description provided.