Commit Graph

2 Commits

Author SHA1 Message Date
Jordan Ritter f94a0f7843 test(showcase): pin railway promote snapshot-accessor invariants
Add a regression spec that fails if a fleet-scoped check reads the narrowed
single-service snapshot (the historic spurious-WARN/REFUSE bug), an executable
lint banning direct @*_snapshot reads outside the sanctioned accessors, and
harden PopenSpy with UnexpectedPopen + honest exit-code stamping (raise only on
spawn failure, not on a configured non-zero exit).
2026-05-30 10:22:32 -07:00
Jordan Ritter 253a49603e fix(showcase): harden bin/railway rollback against shell injection
Replace RollbackCommitCommand backtick subshells with IO.popen arg-arrays; validate --sha (hex)
and --env (known set) before any git call; gate both git ls-tree and git show on $?.exitstatus
before parsing; add injection + git-show-failure + empty-snapshot spec. Also encapsulate promote
snapshots behind fleet_*/target_* accessors so fleet-vs-target selection is name-enforced.
2026-05-29 15:06:40 -07:00