Hydra Experiencenet aims to do for interactive, high-fidelity experiences what Netflix did for movies — stream them to any screen, anywhere. Visitors at physical venues walk up to a kiosk, put on a VR headset, or pick up a tablet and instantly interact with an Unreal Engine experience rendered in real time on nearby GPU hardware.
The Hydra pipeline is the system that makes this possible. It has two sides:
Both sides share the same three layers: foundation sets up the topology, upstream produces artifacts, and downstream distributes them. This runbook focuses on the experience pipeline.
FOUNDATION LOCATIONS BUILD UPSTREAM DOWNSTREAM
(infrastructure) (venue mgmt) (artifact prod) (per build) (per release)
Organizations ─┐ Districts ─┐ iOS builds ──┐ Upload ──→ Promote Promote exp ──→ Provision
Cluster │ Venues ────┘ UE builds ───┴──→ HydraRelease staging/prod nodes
Neck │ (m² plans)
Guard ─────────┘
What: Register organizations (customers, agencies), orchestrate nodes, manage networking, and enforce access control — the infrastructure everything else depends on.
When: Once per customer/device — not repeated per build.
Components: HydraOrganization, HydraCluster, HydraNeck, HydraGuard
What: Create districts (infrastructure zones) and venues (physical locations with square-meter floor plans) where experiences will be deployed.
When: Once per district/venue — not repeated per build.
Components: HydraVenues, HydraDistrict
What: Compile and validate artifacts before they enter the delivery chain. Two parallel pipelines: Unreal Engine builds (Windows, via HydraUnrealEngine + Perforce) and iOS builds (via Xcode Cloud + hydraapplepipeline).
When: Every time a new build is triggered by a developer or CI.
Components: HydraUnrealEngine, hydraapplepipeline, hydrapipelinerunnerapple
What: Package an Unreal Engine project, upload the build to HydraRelease, and promote it to a staging environment.
When: Every time a new build needs to ship.
Components: HydraUnrealEngine, HydraPerforce or HydraTransfer, HydraRelease
What: Promote the experience through environments (staging → production) and provision render nodes (bodies) and interface devices (heads) with the new build.
When: After a build is promoted to staging (or production).
Components: HydraExperienceLibrary, HydraHead, HydraBody
Phase 0 Phase 1 Phase 2 Phase 3 Phase 4 Phase 5
FOUNDATION UPSTREAM UPSTREAM UPSTREAM DOWNSTREAM DOWNSTREAM
──────────────── ────────── ────────── ────────── ────────── ──────────
Orgs, Venues, Nodes, Build UE Upload Promote Promote Provision
Experiences project to Release to staging experience nodes
│ │ │ │ │ │
│ └──────────────┴──────────────┘ │ │
│ artifacts flow │ │
└──────────────────────────topology + targeting referenced─────────────┘ │
│
HydraRelease serves build artifacts─────────────┘
HydraRelease is the boundary between upstream and downstream. Nothing downstream runs a binary that didn't pass through it. Upstream produces immutable, versioned artifacts. Downstream consumes them without modification.
Bodies and heads: A body is a render node (GPU machine running the UE experience via LarkXR). A head is an interface device (kiosk, tablet, VR headset) that connects to a body's stream. Bodies are provisioned first, then heads reconnect.
Neck (networking): HydraNeck ensures bodies and heads within a venue can reach each other. It manages the network layer — so a head in venue heysel connects to a body in the same venue over a reliable, low-latency link. Without the neck, bodies render frames but heads can't receive the stream.
Districts and venues: Districts are infrastructure zones. Venues are physical locations within districts, each owned by an organization. Experience targeting is geographic — by district and venue.
SSE observability: All services emit Server-Sent Events. HydraPipeline consumes them all to provide a unified live view. It is purely read-only.
Builds are promoted through environments: development → staging → production. Each promotion writes a latest.json that downstream services poll. Rollback reverts to the previous build number.