What is PhoenixFile?
The PhoenixFile is the declarative build and runtime contract of a PhoenixFlight application. It replaces Dockerfile-first packaging with a higher-level governance-aware specification. While Dockerfile describes how to compile a static container process, PhoenixFile defines how a member behaves within a dynamic runtime environment.
Prerequisites validation
The CLI validates that:
• Top-level sections match the specification schema.
• Declared policy files, agent manifests, and packets exist in the workspace.
• Namespace definitions match across resources.
Declarative Manifest Example
apiVersion: phoenixflight.io/v1alpha1
kind: PhoenixApp
metadata:
name: customer-validation-app
namespace: tenant-a
version: 0.1.0
runtime:
language: python
entrypoint: src/app.py
controlPlane:
auth:
provider: local
policies:
- policies/can-register.yaml
- policies/can-assign.yaml
- policies/can-handoff.yaml
audit:
sink: local
format: jsonl
assignment:
strategy: trust-weighted-capability-routing
governance:
minimumTrustScore: 0.85
dataPlane:
agents:
- agents/governance-agent.yaml
- agents/metadata-agent.yaml
packets:
- packets/customer-validation.packet.yaml
handoffContracts:
- contracts/customer-context-handoff.yaml
membership:
discovery:
mode: capability
migration:
enabled: true
retirement:
drainTimeoutSeconds: 30
build:
target: local
outputs:
- phoenix-bundle
- oci-image
Declarative Build Outputs
The build block defines where the compiler emits application artifacts. PhoenixFile supports compiling to portable logical bundles, OCI container layers, Kubernetes Custom Resource definitions, and Helm values configurations.
Supported Outputs:
- phoenix-bundle: Portable .pflight ZIP archives housing logic configurations, policy rules, and schemas.
- oci-image: Container layers encapsulating the python processes.
- helm-chart: Standard Helm templates configured with values.
- kubernetes-manifest: Standalone CRD/resource manifests.