BACK TO SELECTED WORK
CASE STUDYDistributed Systems & Infrastructure

RunStack

Distributed Job Execution & Application Orchestration Platform

ROLELead Systems Arch...
CORE STACKGo / Docker / Podman /...
YEAR2026
STATUSActive Development
EST. READ68 MIN READ

Lightweight distributed job execution and application orchestration platform built in Go, designed for deterministic scheduling, container isolation, and execution-fenced failure recovery.

Core Challenge: Running work across multiple machines introduces critical distributed coordination challenges: node dropouts during execution, worker starvation, stale workers reporting outdated results after recovery, and state desynchronization between desired application state and physical runtime state.

GoDocker / PodmanHTTPPostgreSQLLinux

THE PROBLEM

Running work across multiple machines introduces problems that a single-process application does not have:

KEY CONSTRAINTS & COORDINATION PROBLEMS6 VECTORS
  • ▸Who owns the job?
  • ▸Which node should execute it?
  • ▸What happens when that node disappears?
  • ▸How do we prevent stale workers from reporting old results?
  • ▸How do we retry failures without creating infinite loops?
  • ▸How do desired application state and actual runtime state converge?
DISTRIBUTED EXECUTION TRIANGLE
DISTRIBUTED EXECUTION
│
┌──────────────────┼──────────────────┐
▼ ▼ ▼
STATE OWNERSHIP FAILURE
│ │ │
▼ ▼ ▼
Consistency Claiming Recovery
│ │ │
└──────────────────┼──────────────────┘
▼
COORDINATION

Distributed state consistency, claim ownership, and failure recovery collapsing into authoritative coordination.

HORIZONTAL SCROLL ON MOBILE ↔

THE APPROACH

RunStack uses a trusted Control Plane as the authoritative source of state, while Agents remain thin execution workers.

Owns authoritative state, node registrations, deterministic scheduling, and application reconciliation loops.

Discovers the host node, maintains heartbeat, polls and claims assigned work, executes tasks, and reports results.

Provides strict process and container lifecycle isolation through Docker or Podman on the host.

CONTROL PLANE & AGENT SEPARATION
CLI
│
HTTP
▼
┌─────────────────┐
│ CONTROL PLANE │
│ │
│ API │
│ Node Registry │
│ Job Registry │
│ App Registry │
│ Deployment │
│ Scheduler │
│ Reconciler │
└────────┬────────┘
│
HTTP / Poll
│
▼
┌───────────────┐
│ AGENT │
│ │
│ Heartbeat │
│ Poll │
│ Claim │
│ Execute │
│ Report │
└───────┬───────┘
│
▼
Docker / Podman

Thin agent pull loop: agents poll and claim work over HTTP, keeping the network perimeter outbound-only.

HORIZONTAL SCROLL ON MOBILE ↔

CONTROL PLANE

Owns authoritative state, node registrations, deterministic scheduling, and application reconciliation loops.

AGENT

Discovers the host node, maintains heartbeat, polls and claims assigned work, executes tasks, and reports results.

RUNTIME

Provides strict process and container lifecycle isolation through Docker or Podman on the host.

ARCHITECTURE & DATA FLOW

RunStack couples an authoritative control plane with lightweight worker agents over HTTP. State, scheduling, and reconciliation remain strictly centralized, while agents manage local execution.

Provides REST endpoints for job admission, app deployment manifests, node registrations, polling, and heartbeat reporting.

Maintains authoritative in-memory state (V1) protected by sync.RWMutex: Node, Job, Application, Deployment, and Instance stores.

Dispatches jobs and instances to healthy online nodes using a sorted node ID ring and a persistent round-robin cursor.

Continuous control loop comparing desired instances from immutable deployments against actual runtime instance status.

Autonomous host daemons that report capabilities, pulse 1000ms heartbeats, claim work atomically, and run tasks locally.

Directly drives Docker or Podman on the host node for strict process isolation, CPU/memory quotas, and exit code extraction.

RUNSTACK ARCHITECTURAL TOPOLOGY
CLI
│
│ HTTP
▼
┌─────────────────────────────────────────┐
│ CONTROL PLANE │
│ │
│ HTTP API │
│ │ │
│ ├──── Node Registry │
│ │ │
│ ├──── Job Registry │
│ │ │
│ ├──── Application Registry │
│ │ │
│ ├──── Deployment Registry │
│ │ │
│ ├──── Instance Registry │
│ │ │
│ ├──── Job Scheduler │
│ │ │
│ ├──── Instance Scheduler │
│ │ │
│ └──── Instance Reconciler │
│ │
└──────────────────┬──────────────────────┘
│
│ HTTP
▼
┌─────────────────────┐
│ AGENT │
│ │
│ Registration │
│ Heartbeat │
│ Job Polling │
│ Job Claiming │
│ Job Execution │
│ Result Reporting │
│ Instance Execution │
└──────────┬──────────┘
│
▼
┌───────────────┐
│ Docker/Podman │
└───────────────┘

Unidirectional control plane topology with centralized registries, schedulers, and reconcilers driving thin host agents.

HORIZONTAL SCROLL ON MOBILE ↔
SYSTEM SUBSYSTEMS & RESPONSIBILITIES6 SUBSYSTEMS SPECIFIED
01HTTP API Gateway

Provides REST endpoints for job admission, app deployment manifests, node registrations, polling, and heartbeat reporting.

02Centralized Registries

Maintains authoritative in-memory state (V1) protected by sync.RWMutex: Node, Job, Application, Deployment, and Instance stores.

03Deterministic Schedulers

Dispatches jobs and instances to healthy online nodes using a sorted node ID ring and a persistent round-robin cursor.

04Application Reconciler

Continuous control loop comparing desired instances from immutable deployments against actual runtime instance status.

05Thin Worker Agents

Autonomous host daemons that report capabilities, pulse 1000ms heartbeats, claim work atomically, and run tasks locally.

06Container Runtime Sandbox

Directly drives Docker or Podman on the host node for strict process isolation, CPU/memory quotas, and exit code extraction.

JOB EXECUTION

Jobs transition through strict, centrally validated states. The scheduler assigns pending jobs to online nodes, agents atomically claim the execution, and failures evaluate against a deterministic retry budget.

JOB EXECUTION STATE MACHINE & RETRY BUDGET
CREATE
│
▼
PENDING
│
│ Scheduler
▼
ASSIGNED
│
│ Agent Claim
▼
RUNNING
│
├─────────────────┐
▼ ▼
SUCCEEDED FAILED
│ │
│ │
│ Retry Budget
│ │
│ ┌──────┴──────┐
│ ▼ ▼
│ PENDING FAILED
│
▼
EVENT

Deterministic job lifecycle: scheduler assignment, atomic agent claim, and bounded retry budget evaluation.

HORIZONTAL SCROLL ON MOBILE ↔

EXECUTION OWNERSHIP

A JobID identifies the logical task, while an ExecutionID identifies a specific physical attempt. Separating logical intent from execution identity prevents zombie workers from corrupting cluster state after node recovery.

Physical exactly-once execution is theoretically impossible during network partitions. RunStack guarantees execution-aware result fencing: late results from severed nodes are safely dropped, preserving state correctness.

EXECUTION ATTEMPT SEQUENCE
JOB
│
│ claim
▼
EXECUTION #1
│
│ node failure
▼
RECOVERY
│
▼
EXECUTION #2
│
▼
RESULT

Node loss triggers recovery and re-assignment under a fresh ExecutionID #2.

HORIZONTAL SCROLL ON MOBILE ↔
EXECUTIONID FENCING VERIFICATION
RESULT
│
▼
┌─────────────────┐
│ ExecutionID │
│ verification │
└────────┬────────┘
│
┌────────┴────────┐
▼ ▼
CURRENT STALE
│ │
ACCEPT REJECT

The Control Plane rejects delayed results from Execution #1 once #2 has been authorized.

HORIZONTAL SCROLL ON MOBILE ↔

ENGINEERING CHALLENGES

Four fundamental distributed systems challenges encountered when coordinating uncoordinated compute workers across network boundaries.

01 CHALLENGE

Node Failure & Recovery

AVAILABILITY
PROBLEM

Nodes can disappear while jobs are assigned or actively running, requiring deterministic heartbeats, grace periods, and workload requeuing.

02 CHALLENGE

Stale Execution Results

CONSISTENCY
PROBLEM

A recovered job must strictly reject results from an older execution attempt if a severed worker completes after cluster reassignment.

03 CHALLENGE

Concurrent State Mutation

CONCURRENCY
PROBLEM

Claims, results, scheduler operations, and registries must remain strictly consistent under concurrent parallel worker traffic.

04 CHALLENGE

Bounded Retries

RELIABILITY
PROBLEM

Failures must recover automatically without triggering unbounded retry storms or infinite execution loops on faulty workloads.

TECHNICAL RIGOR

System guarantees enforced through disciplined concurrency primitives, explicit state guards, and automated verification suites.

DISCIPLINEENGINEERING PRACTICEVERIFICATION / ENFORCEMENT
CONCURRENCYsync.RWMutex locks on all state storesRace-safe registry access across parallel worker polling and mutation loops.
STATEExplicit transition state machine validationCentralized control plane rejects invalid state jumps (e.g. FAILED → RUNNING).
EXECUTIONExecutionID fencing tokensStale execution results from evicted or stalled workers are rejected at admission.
RECOVERYNode heartbeat timeout detector1000ms heartbeat loop detects severed nodes and rescues orphaned work.
RETRYAttempts <= MaxRetries budget checkGuarantees finite retry ceiling, preventing infinite execution loops.
SCHEDULINGDeterministic round-robin cursorOnline nodes sorted deterministically by ID to prevent worker starvation.
OBSERVABILITYStructured slog logging & event historyJSON-formatted contextual logging with append-only job lifecycle events.
SHUTDOWNContext cancellation propagationClean agent process termination with inflight task signaling and socket release.
TESTINGgo test, go test -race, go vetAutomated test harness verifying state transitions, race safety, and integration.

ENGINEERING CHALLENGES & SOLUTIONS

Disciplined systems reasoning: Problem → Constraint → Design → Outcome applied across every failure boundary.

01 CHALLENGE

NODE FAILURE & RECOVERY

PROBLEM

A compute node may abruptly disappear while work is assigned or running.

CONSTRAINT

Immediately recovering work risks false-positive failures during transient network drops.

RESULT

Assigned work returns to the scheduling pool after grace period conditions are satisfied.

NODE FAILURE & RECOVERY
NODE
│
├── heartbeat
│
└── OFFLINE
│
▼
grace period
│
▼
recovery

Formal resolution mechanics implemented within the Control Plane runtime.

HORIZONTAL SCROLL ON MOBILE ↔
02 CHALLENGE

STALE EXECUTION HANDLING

PROBLEM

A stalled worker can finish an old execution after the Control Plane has recovered the job.

CONSTRAINT

Late execution results must never overwrite fresh results from newly reassigned nodes.

RESULT

Execution ownership remains explicit; stale ExecutionID results are strictly rejected.

STALE EXECUTION HANDLING
ExecutionID #1
│
▼
recovery
│
▼
ExecutionID #2
Result from #1 ──► REJECT
Result from #2 ──► ACCEPT

Formal resolution mechanics implemented within the Control Plane runtime.

HORIZONTAL SCROLL ON MOBILE ↔
03 CHALLENGE

RETRY BOUNDARIES

PROBLEM

Repeated infrastructure drops or bad commands could trigger infinite retry loops.

CONSTRAINT

Retries must be deterministically finite and observable across cluster state.

RESULT

Total executions are strictly bounded by MaxRetries + 1, terminating gracefully in FAILED.

RETRY BOUNDARIES
Attempts = Attempts + 1
│
▼
Attempts <= MaxRetries?
/ \
YES NO
│ │
▼ ▼
PENDING FAILED

Formal resolution mechanics implemented within the Control Plane runtime.

HORIZONTAL SCROLL ON MOBILE ↔
04 CHALLENGE

DETERMINISTIC SCHEDULING

PROBLEM

Multiple ONLINE nodes need predictable, starvation-free workload assignment.

CONSTRAINT

Scheduling decisions must be reproducible and avoid random uneven distribution.

RESULT

Node assignment uses sorted node IDs and a persistent round-robin cursor.

DETERMINISTIC SCHEDULING
ONLINE NODES
│
▼
SORT BY NODE ID
│
▼
ROUND-ROBIN
│
▼
PERSIST CURSOR
│
▼
NEXT ASSIGNMENT

Formal resolution mechanics implemented within the Control Plane runtime.

HORIZONTAL SCROLL ON MOBILE ↔

NODE LIFECYCLE

Nodes register on startup and maintain an active heartbeat loop with the Control Plane. Missed heartbeats trigger automated offline transition and workload recovery.

Architecture Note: Node capabilities are collected upon registration for cluster visibility, but the V1 scheduler uses deterministic round-robin placement rather than dynamic resource scoring.

NODE REGISTRATION & HEARTBEAT DETECTOR
AGENT START
│
▼
REGISTER
│
▼
ONLINE
│
heartbeat loop
│
▼
┌─────────────┐
│ heartbeat? │
└──────┬──────┘
│
┌─────┴─────┐
YES NO
│ │
▼ ▼
ONLINE OFFLINE
│
▼
recovery logic

Sliding-window node health loop: missed heartbeats transition the node to OFFLINE, triggering recovery.

HORIZONTAL SCROLL ON MOBILE ↔

DECLARATIVE APPLICATION MODEL

RunStack orchestrates long-running services through declarative specs. An Application defines desired state, a Deployment captures an immutable snapshot, and Instances represent physical containers.

DECLARATIVE HIERARCHY
APPLICATION
│
│ desired state
▼
DEPLOYMENT
│
│ immutable snapshot
▼
INSTANCES
│
│ runtime state
▼
CONTAINER RUNTIME

Immutable snapshots decouple application configuration updates from physical running instances.

HORIZONTAL SCROLL ON MOBILE ↔
RECONCILIATION CONTROL LOOP
DESIRED STATE
│
▼
┌──────────────┐
│ RECONCILER │
└──────┬───────┘
│
▼
ACTUAL STATE

The Reconciler continuously converges physical cluster state toward desired instance count.

HORIZONTAL SCROLL ON MOBILE ↔

INSTANCE HEALTH & RECOVERY

RunStack strictly separates Instance Status, Health Probes, and Host Node State. Infrastructure drops and application failures are evaluated independently by the Reconciler.

TRIPARTITE HEALTH SEPARATION
INSTANCE
┌────────────┼────────────┐
▼ ▼ ▼
STATUS HEALTH NODE STATE
│ │ │
└────────────┼────────────┘
▼
RECONCILER

Independent evaluation vectors feeding into the authoritative Reconciler.

HORIZONTAL SCROLL ON MOBILE ↔
NODE LOSS RECOVERY FLOW
NODE LOSS
↓
UNKNOWN
↓
Unknown timeout
↓
CRASHED
↓
Replacement

Node disappearance transitions instances from UNKNOWN to CRASHED, scheduling replacements.

HORIZONTAL SCROLL ON MOBILE ↔
CRASH LOOP BACKOFF
CONSECUTIVE CRASHES
│
▼
CRASH LOOP
│
▼
DEGRADED
│
▼
replacement paused

Repeated immediate failures pause replacement to protect host nodes from restart storms.

HORIZONTAL SCROLL ON MOBILE ↔

TECHNICAL DECISIONS

Deliberate engineering trade-offs: why each architectural path was chosen, the operational costs accepted, and the delivered outcome.

DECISION 01 • CORE RUNTIME

Go

WHY / RATIONALE

Concurrency primitives, explicit control over execution, low memory overhead, and single binary deployment across Linux hosts.

TRADE-OFF ACCEPTED

More explicit lifecycle and state management required compared to heavy actor framework runtimes.

OUTCOME / IMPACT

Clean, portable binaries with microsecond goroutine synchronization and zero runtime dependencies.

DECISION 02 • STATE ENGINE

In-Memory Registries (V1)

WHY / RATIONALE

Keep initial cluster architecture lightweight, deterministic, and free of external database overhead.

TRADE-OFF ACCEPTED

Control plane restart loses runtime state, requiring agent re-registration and job requeueing.

OUTCOME / IMPACT

Crystal-clear state machine contracts that established the exact transactional boundaries needed for V2.

DECISION 03 • NETWORK TOPOLOGY

HTTP Polling Architecture

WHY / RATIONALE

Agents do not require inbound listening ports, public IPs, or firewall punching; all connections are outbound.

TRADE-OFF ACCEPTED

Execution coordination and dispatch latency are bounded by periodic polling intervals.

OUTCOME / IMPACT

Resilient perimeter security where agents safely run across arbitrary private clouds and edge devices.

DECISION 04 • EXECUTION SAFETY

ExecutionID Fencing

WHY / RATIONALE

Separates logical job identity from individual physical execution attempts across nodes.

TRADE-OFF ACCEPTED

Demands per-attempt execution tracking, state generation counters, and rigorous fencing validation.

OUTCOME / IMPACT

Completely prevents stale worker results from overwriting state after node failure and reassignment.

DECISION 05 • PLACEMENT ENGINE

Round-Robin Scheduler

WHY / RATIONALE

Provides predictable, starvation-free, deterministic node assignment via a sorted ID ring and persistent cursor.

TRADE-OFF ACCEPTED

V1 placement is not dynamic resource-aware and does not balance CPU/RAM utilization.

OUTCOME / IMPACT

Deterministic testability and zero starvation across heterogeneous worker nodes.

DECISION 06 • PERSISTENCE EVOLUTION

PostgreSQL V2 Foundation

WHY / RATIONALE

Move authoritative state toward durable transactional storage with ACID guarantees.

TRADE-OFF ACCEPTED

Introduces external database dependency and connection pool lifecycle management.

OUTCOME / IMPACT

Durable state, SELECT FOR UPDATE row-level locking, and SQL-level execution fencing for production clusters.

SYSTEM INTERACTION STATES

Combined cluster lifecycle linking job state machines to node heartbeat availability. Node disappearance directly feeds into job recovery and rescheduling loops.

JOB LIFECYCLE & RETRY BUDGET
JOB
│
▼
PENDING
│
scheduler
▼
ASSIGNED
│
agent claim
▼
RUNNING
│
┌────────┴────────┐
▼ ▼
SUCCESS FAILURE
│ │
│ retry budget
│ │
│ ┌────────┴────────┐
│ ▼ ▼
│ PENDING FAILED
│
▼
EVENT

State machine transitions evaluated on every polling interval and worker result submission.

HORIZONTAL SCROLL ON MOBILE ↔
NODE OFFLINE RECOVERY RELATIONSHIP
NODE ONLINE
│
heartbeat
│
▼
NODE OFFLINE
│
▼
JOB RECOVERY
│
▼
RE-SCHEDULE

Heartbeat lapse triggers offline state, re-claiming orphaned jobs back into the scheduler pool.

HORIZONTAL SCROLL ON MOBILE ↔

CONTAINER LIFECYCLE

RunStack extends beyond basic process spawning. The agent interfaces with the local container runtime (Docker or Podman) to drive the full container lifecycle, streaming logs, checking health, and feeding telemetry into the Reconciler.

APPLICATION CONTAINER ORCHESTRATION
APPLICATION
│
▼
DEPLOYMENT
│
▼
INSTANCE ASSIGNED
│
▼
AGENT CLAIM
│
▼
ContainerRuntime
│
├── Docker
└── Podman
│
▼
RUNNING
│
▼
HEALTH / STATUS
│
▼
RECONCILIATION

Immutable deployment to host container runtime execution, continuous probing, and active reconciliation.

HORIZONTAL SCROLL ON MOBILE ↔

SECURITY BOUNDARIES

RunStack isolates operator intent from worker execution. The Control Plane acts as the sole security boundary, enforcing ownership validation and rejecting untrusted state mutations.

Strict boundary between cluster operators (deployments, routing, secret references) and worker agents (claims, execution, heartbeat).

Only the node designated by the scheduler can claim and report on an assigned execution attempt.

Every attempt carries an ephemeral ExecutionID token. Stale results from severed or timed-out workers are rejected by the Control Plane.

Secret references are stored securely in the Control Plane and resolved just-in-time into agent container environment injection.

Commands are parsed directly via strings.Fields() into exec.Command arguments, eliminating arbitrary shell injection vulnerabilities.

Guarantees cluster state immutability once a job reaches terminal SUCCEEDED or FAILED status, or when an ExecutionID is superseded.

OPERATOR VS AGENT SECURITY BOUNDARY
CONTROL PLANE
│
┌────────────┴────────────┐
▼ ▼
OPERATOR AGENT
│ │
application management node execution
deployment claims
secrets status
routing heartbeat

Unidirectional trust topology isolating administrative actions from worker node execution privileges.

HORIZONTAL SCROLL ON MOBILE ↔

Implemented / Design Phase

Strict boundary between cluster operators (deployments, routing, secret references) and worker agents (claims, execution, heartbeat).

Implemented

Only the node designated by the scheduler can claim and report on an assigned execution attempt.

Implemented

Every attempt carries an ephemeral ExecutionID token. Stale results from severed or timed-out workers are rejected by the Control Plane.

Design Phase

Secret references are stored securely in the Control Plane and resolved just-in-time into agent container environment injection.

Implemented

Commands are parsed directly via strings.Fields() into exec.Command arguments, eliminating arbitrary shell injection vulnerabilities.

Implemented

Guarantees cluster state immutability once a job reaches terminal SUCCEEDED or FAILED status, or when an ExecutionID is superseded.

MEASURABLE RESULTS

VERIFIED ENGINEERING OUTCOMES

Verifiable engineering outcomes built directly into the system architecture, avoiding speculative or ungrounded benchmark claims.

01
AUTHORITATIVE CONTROL PLANE

All job state transitions and instance lifecycle phases are strictly controlled centrally.

02
BOUNDED RETRY EXECUTION

Strict Attempts <= MaxRetries budget prevents runaway execution storms on failing workloads.

03
EXECUTION-AWARE FENCING

Stale execution results from evicted or lagged workers are deterministically rejected.

04
DETERMINISTIC SCHEDULING

ONLINE nodes are sorted by ID and assigned through a persistent round-robin cursor.

05
FAILURE RECOVERY

Node loss and execution timeouts safely return orphaned work to the active scheduling lifecycle.

06
RACE-SAFE STATE

Registry state operations are synchronized via sync.RWMutex with race-detector test validation.

KNOWN TRADE-OFFS

Engineering rigor requires documenting what a system does not guarantee. Explicit V1 constraints directly guided the design of the PostgreSQL V2 persistence foundation.

DECISION 01 • EVOLUTION:

IN-MEMORY STATE

WHY / RATIONALE

Control Plane restart loses runtime state, requiring worker re-registration.

DECISION 02 • EVOLUTION:

SINGLE JOB CONCURRENCY

WHY / RATIONALE

Agent daemon executes one job at a time to keep local state deterministic.

DECISION 03 • EVOLUTION:

NO RESOURCE-AWARE SCHEDULING

WHY / RATIONALE

Capabilities are collected, but V1 placement is round-robin rather than CPU/RAM-weighted.

DECISION 04 • EVOLUTION:

NO PHYSICAL EXACTLY-ONCE

WHY / RATIONALE

Fencing prevents stale results, but network partitions can cause duplicate physical container run.

DECISION 05 • EVOLUTION:

COMMAND PARSING BOUNDARIES

WHY / RATIONALE

strings.Fields() splits whitespace safely, but quoted arguments with spaces are not supported.

ENGINEERING VALIDATION

Correctness in distributed systems requires automated enforcement. RunStack standardizes verification through a comprehensive make check pipeline.

Validates all registry sync.RWMutex locks and channel communications under simulated parallel access.

Tests agent SIGINT/SIGTERM cancellation, completing in-flight jobs and unregistering cleanly.

End-to-end execution testing verifying client submission, agent claim, Docker container run, and result receipt.

Verifies database migrations, transactional rollbacks, SELECT FOR UPDATE locks, and SQL fencing.

MAKE CHECK VERIFICATION PIPELINE
CODE
│
├── gofmt
├── go vet
├── go test
├── go test -race
└── binary build
│
▼
make check

Every commit validates formatting, static analysis, unit suites, race detection, and binary compilation.

HORIZONTAL SCROLL ON MOBILE ↔
go test -race

Item 1

Validates all registry sync.RWMutex locks and channel communications under simulated parallel access.

Signal Traps & Contexts

Item 2

Tests agent SIGINT/SIGTERM cancellation, completing in-flight jobs and unregistering cleanly.

API & Runtime Harness

Item 3

End-to-end execution testing verifying client submission, agent claim, Docker container run, and result receipt.

Docker Database Harness

Item 4

Verifies database migrations, transactional rollbacks, SELECT FOR UPDATE locks, and SQL fencing.

FROM JOB TO RESULT

End-to-end execution pipeline: the lifecycle of a compute workload from HTTP admission, deterministic scheduling, and atomic agent claim through to fenced completion and event history.

END-TO-END EXECUTION PIPELINE
REQUEST
│
▼
REGISTER
│
▼
SCHEDULE
│
▼
ASSIGN
│
▼
CLAIM
│
▼
EXECUTE
│
├──────────────┐
▼ ▼
SUCCESS FAILURE
│ │
│ RETRY BUDGET
│ │
│ ┌────┴────┐
│ ▼ ▼
│ RETRY FAILED
│
▼
REPORT
│
▼
STATE UPDATE
│
▼
EVENT HISTORY

Unbroken chain of custody from client intent to authoritative state update and persistent event log.

HORIZONTAL SCROLL ON MOBILE ↔