phoenix-firewall v0.3.2
What's fixed
Enrolled tenant_id now flows end-to-end — from agent.toml through to package-check evaluate payloads and heartbeats.
Root cause
Config had no TenantID field. tenant_id was written to agent.toml at enroll time but silently dropped on every subsequent startup — proxy, system, and heartbeat all ran without org context.
Changes
Config.TenantIDfield added; populated fromPHOENIX_TENANT_IDenv or agent.toml- New
loadConfigWithAgentTOML()helper — fully back-fills all fields includingtenant_id; used by bothproxyandsystemcommands proxymode now reads agent.toml (previously ignored it entirely)- Heartbeat reads
cfg.TenantIDfirst, env var as legacy fallback - Evaluate payload includes
tenant_idso backend can apply org-scoped rules WithTenantID()added toClientfor clean composition
Upgrade
phoenix-firewall enroll --api-key <your-key>--tenant-id is optional — the API key carries the org server-side.
Binaries
| Platform | File |
|---|---|
| macOS (Apple Silicon) | phoenix-firewall-v0.3.2-darwin-arm64 |
| Linux (amd64) | phoenix-firewall-v0.3.2-linux-amd64 |