jenkins d1e8cda5ed hermes: make supervisor terminal emissions idempotent across ticks
Fix reviewer BLOCK: the stateless poll loop re-planned every terminal card each
tick, so SHIP and the two cycle-limit escalations - whose source cards stay in
the done state - re-fired their comment/block on every pass (~2880/day/chain).

- Add a persistent emission Ledger (/opt/data/supervisor/emitted.json): SHIP and
  escalate perform their action only when the (action, target) key is absent,
  then record it, so each fires at most once and survives a pod restart. Spawns
  remain self-limiting via the existing dedup scan.
- Cycle-limit escalations now target the SOURCE review/repair card (not the impl
  root), so the card also leaves the done state and is skipped next tick even if
  block_task round-trips imperfectly.
- Harden the _spawn TypeError fallback: re-run the dedup scan before retrying so
  a post-insert TypeError can never double-insert.
- Add across-ticks idempotency tests (10x supervise_once -> exactly one
  comment/flag/block) plus ledger persistence/corruption and spawn-guard tests.

Both modules stay 100% line+branch, <500 LOC. Stacks on the merge train
(base 5f27e50c).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-18 06:51:36 -03:00

titan-iac

Flux-managed Kubernetes desired-state config for bstein.dev.

Canonical source URL:

  • ssh://git@scm.bstein.dev:2242/atlas/titan-iac.git

Scope

This repo contains cluster configuration consumed by Flux:

  • platform/infrastructure manifests
  • service manifests and kustomizations
  • operational scripts for render/reconcile workflows

Apply model

I use Git + Flux as the source of truth and avoid manual in-cluster edits for durable changes.

Description
No description provided
Readme 17 MiB
Languages
Python 74%
JavaScript 10.2%
Shell 6.2%
TypeScript 3.9%
Go 2.1%
Other 3.4%