Expand description
EphemeralPool CRD — a population of warm, pre-attested ephemeral
Processes that get allocated to requestors (e.g., a GitHub PR
flow) on demand and returned (per a typed policy) when the
requestor releases them.
Compounding move: the pool is a population manager over the
existing Process algebra, not a parallel runtime. A pool member
is just a Process with Lifetime::Permanent while in the free
list; allocation is “the operator (the pool reconciler) flips
that Process’s lifetime slot to Ephemeral with the requestor’s
TTL.” Zero new compute primitive.
Topology:
EphemeralPool (this CRD)
├── PoolSpec (desired_size, template (EphemeralSpec), return_policy, selector)
├── PoolStatus (phase, free / allocated / spawning / returning counts, members)
└── owns N Processes via ownerReferences (one per pool slot)
EphemeralAllocation (see allocation.rs)
├── AllocationSpec (pool_ref, requestor, requested_at, lifetime override)
└── AllocationStatus (phase, assigned_process_ref, allocated_at, expires_at)Structs§
- Allocation
Ref - Light reference to an
EphemeralAllocation. - Ephemeral
Pool - Auto-generated derived type for PoolSpec via
CustomResource - Match
Key - Allocation routing key — what the reconciler matches against pool selectors.
- Pool
Condition - Standard K8s Condition shape (kept local so tatara-process doesn’t depend on k8s_openapi types in its public schema).
- Pool
Member - One pool slot’s state.
- Pool
Selector - Routing selector — matches an
EphemeralAllocation’s requestor against pool-eligibility predicates. - Pool
Spec EphemeralPoolCRD spec — typed pool of warm Processes.- Pool
Status EphemeralPool.status— observed pool population state.- Unknown
Member State - Unknown
Pool Phase - Unknown
Replacement Policy - Unknown
Return Policy
Enums§
- Member
State - Per-slot state in the pool’s free list.
- Pool
Phase - Pool lifecycle phase (observed across the whole pool population).
- Replacement
Policy - What the pool reconciler does when a member reaches
Failed. - Return
Policy - What the pool does when an allocation releases a member.