Runtime affinity flip for the amd64 target node titan-22. Do NOT merge/apply until the multi-arch hermes-agent image has been built and validated (both arch leaves + promoted index), per docs/hermes_agent_multiarch.md step (d). - Add a second nodeSelectorTerm (OR'd) matching ONLY amd64 titan-22 (worker). The arm64 pi-fleet term is untouched, so the worker still runs on the pi fleet if titan-22 is unavailable. - Add a soft, equal-weight preference toward titan-22 so it is used as spare capacity, not forced. - Tolerate titan-22's atlas.bstein.dev/media-primary=true:PreferNoSchedule taint. This only lets hermes-agent also consider titan-22; it does not change jellyfin's scheduling or priority. Updates test_hermes_agent_layout.py to match the two-term topology, the added preference, and the toleration. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BvMSXH8VH2tMWXanb8SJdf
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
Languages
Python
74%
JavaScript
10.2%
Shell
6.2%
TypeScript
3.9%
Go
2.1%
Other
3.4%