Add support for the Flux scheduler (fluxrm/flux-sched), one of the two remaining planned HPC schedulers.
Scope
internal/parser/flux — Flux jobspec JSON → SPLAT
internal/emitter/flux — SPLAT → Flux jobspec JSON
- Register in both
internal/{parser,emitter}/all/all.go; drop from the "Planned" list in cmd/bammm/main.go and mark ✅ in the README table
Known hard bits (see SPEC.md / CLAUDE.md)
- Flux symbolic named dependencies — no portable equivalent; preserve in
extensions.flux, drop-with-warning cross-scheduler
- Flux NUMA/socket resource graph — flatten to total CPU count for non-Flux targets
- Priority via
--urgency; add a PriorityScale in internal/splat/priority.go
Process: follow docs/adding-a-scheduler.md. Add a corpus config entry and check coverage against real specs; add unit + round-trip + golden tests.
Add support for the Flux scheduler (
fluxrm/flux-sched), one of the two remaining planned HPC schedulers.Scope
internal/parser/flux— Flux jobspec JSON → SPLATinternal/emitter/flux— SPLAT → Flux jobspec JSONinternal/{parser,emitter}/all/all.go; drop from the "Planned" list incmd/bammm/main.goand mark ✅ in the README tableKnown hard bits (see SPEC.md / CLAUDE.md)
extensions.flux, drop-with-warning cross-scheduler--urgency; add aPriorityScaleininternal/splat/priority.goProcess: follow docs/adding-a-scheduler.md. Add a corpus config entry and check coverage against real specs; add unit + round-trip + golden tests.