Introduce worker.bstein.dev as the canonical hostname for the owner-only
Hermes coordinator, previously agent.hermes.bstein.dev.
The old host is deliberately kept alive. CoreDNS, both agent Ingresses and
the hermes-sites certificate now serve BOTH names, so merging this cannot
take away the endpoint the operator uses to reach the coordinator. Retiring
agent.hermes.bstein.dev is a separate, separately scheduled change. No
redirect middleware is added.
What switches to the new host:
- HERMES_DASHBOARD_PUBLIC_URL and the oauth2-proxy --redirect-url
- the Keycloak hermes-agent-proxy rootUrl
- operator docs, skills, the ZAP baseline target and the triage monitor default
What stays dual-homed until retirement:
- CoreDNS hosts entry, both agent Ingress rules, certificate SANs
- API_SERVER_CORS_ORIGINS (now a comma-separated pair)
- the Keycloak redirect URIs, web origins and post-logout origins, so a
rollback only needs the oauth2-proxy --redirect-url reverted and does not
require re-running the ensure job
ensure_proxy_client now takes optional trailing legacy URLs; called with a
single URL it emits the identical payload as before, so the chat and triage
clients are unaffected. The ensure Job is bumped to -11 so Flux re-runs it;
login on the new host fails until that Job completes.
Because the session and CSRF cookies use the __Host- prefix they are bound to
one origin, so a fresh login must start on worker.bstein.dev and existing
sessions do not carry over -- re-login is required after rollout.
Knowledge catalogs and diagrams regenerated with `make knowledge`.
`make knowledge` output on main no longer matched the manifests it is
rendered from: Flux kustomizations added since the last regeneration
(hermes-scm-broker, hermes-scm-broker-code, hermes-scm-namespace,
hermes-observer-rbac, hermes-observer-bindings,
vault-hermes-jenkins-token-seed) and the Atlas AI Operations dashboard
panels were missing from the committed artifacts.
This is a pure `make knowledge` run against unmodified main, separated
into its own commit so the hostname rename that follows reviews as a
hostname rename and nothing else. No hand edits.
ariadne PR #3 from incident ariadne/409, chosen path ariadne/utils/errors.py -
a file that appears nowhere in the build console and was reached only by
following the failing test's imports.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Red-build to green-rebuild is 1m04s on Ariadne 0.1.0-402, down from 4m00s
armed-to-resolved when the repair spawned its own Kubernetes Job. Reframe the
timings around the red build, since the arming leg depends on the agent pool.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>