<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Workflow-Orchestration on Agent Zone</title><link>https://agent-zone.ai/categories/workflow-orchestration/</link><description>Recent content in Workflow-Orchestration on Agent Zone</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 22 Feb 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://agent-zone.ai/categories/workflow-orchestration/index.xml" rel="self" type="application/rss+xml"/><item><title>Introduction to Temporal: Durable Execution for Distributed Systems</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-introduction/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-introduction/</guid><description>&lt;h1 id="introduction-to-temporal"&gt;Introduction to Temporal&lt;a class="anchor" href="#introduction-to-temporal"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Temporal is a durable execution engine. You write workflows as ordinary code &amp;ndash; if/else, loops, function calls &amp;ndash; and Temporal guarantees that code runs to completion even when processes crash, machines fail, or deployments happen mid-execution. It eliminates the need to build retry logic, state machines, and recovery mechanisms by hand.&lt;/p&gt;
&lt;p&gt;This article introduces the core concepts, architecture, and use cases. It is the first in a series that takes you from zero to running production workflows on Kubernetes.&lt;/p&gt;</description></item><item><title>Running Temporal Server on Minikube</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-minikube-setup/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-minikube-setup/</guid><description>&lt;h1 id="running-temporal-server-on-minikube"&gt;Running Temporal Server on Minikube&lt;a class="anchor" href="#running-temporal-server-on-minikube"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;This guide deploys Temporal Server on a local Minikube cluster with PostgreSQL persistence. By the end, you will have the Temporal frontend, Web UI, and CLI all working against a real Kubernetes deployment.&lt;/p&gt;
&lt;p&gt;If you need background on what Temporal is, start with &lt;a href="../temporal-introduction/"&gt;Introduction to Temporal&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites&lt;a class="anchor" href="#prerequisites"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tool&lt;/th&gt;
 &lt;th&gt;Minimum Version&lt;/th&gt;
 &lt;th&gt;Purpose&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;minikube&lt;/td&gt;
 &lt;td&gt;1.32+&lt;/td&gt;
 &lt;td&gt;Local Kubernetes cluster&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;kubectl&lt;/td&gt;
 &lt;td&gt;1.28+&lt;/td&gt;
 &lt;td&gt;Kubernetes CLI&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;helm&lt;/td&gt;
 &lt;td&gt;3.14+&lt;/td&gt;
 &lt;td&gt;Package manager for Kubernetes&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;temporal&lt;/td&gt;
 &lt;td&gt;1.0+&lt;/td&gt;
 &lt;td&gt;Temporal CLI&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;docker&lt;/td&gt;
 &lt;td&gt;24+&lt;/td&gt;
 &lt;td&gt;Container runtime (minikube driver)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Your machine needs at least &lt;strong&gt;4 CPU cores and 8 GB RAM&lt;/strong&gt; available to Docker. For minikube driver details, see &lt;a href="../../kubernetes/minikube-setup-and-drivers/"&gt;Minikube Setup and Drivers&lt;/a&gt; and &lt;a href="../../infrastructure/minikube-docker-driver/"&gt;Minikube Docker Driver&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Temporal High Availability: Multi-Component Cluster on Kubernetes</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-ha-cluster/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-ha-cluster/</guid><description>&lt;h1 id="temporal-high-availability"&gt;Temporal High Availability&lt;a class="anchor" href="#temporal-high-availability"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;A single-replica Temporal deployment works for development, but any pod going down takes the workflow engine offline. This guide configures a multi-replica cluster with proper resource allocation, Elasticsearch visibility, and health monitoring.&lt;/p&gt;
&lt;p&gt;For the single-replica setup this builds on, see &lt;a href="../temporal-minikube-setup/"&gt;Running Temporal Server on Minikube&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="why-ha-matters"&gt;Why HA Matters&lt;a class="anchor" href="#why-ha-matters"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Component&lt;/th&gt;
 &lt;th&gt;What Breaks When It Goes Down&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;No client can start, signal, query, or cancel workflows. Workers cannot poll.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;History&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Running workflows stall. No state transitions. Timers do not fire.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Matching&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Tasks queue up but never dispatch. Workflows appear frozen.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Worker&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;Internal system workflows stop (archival, replication). Application workflows unaffected.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;With multiple replicas, losing a pod triggers a brief rebalance (seconds), not an outage.&lt;/p&gt;</description></item><item><title>Temporal Namespaces and Task Queues: Organizing Workflows</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-namespaces-task-queues/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-namespaces-task-queues/</guid><description>&lt;h1 id="temporal-namespaces-and-task-queues"&gt;Temporal Namespaces and Task Queues&lt;a class="anchor" href="#temporal-namespaces-and-task-queues"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Namespaces and task queues are Temporal&amp;rsquo;s two primary organizational mechanisms. Namespaces provide isolation &amp;ndash; separate history, retention, and access. Task queues route work to specific workers. Together, they determine where workflows run and how long their history is kept.&lt;/p&gt;
&lt;p&gt;For the underlying architecture, see &lt;a href="../temporal-introduction/"&gt;Introduction to Temporal&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="namespaces"&gt;Namespaces&lt;a class="anchor" href="#namespaces"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A namespace is a logical isolation boundary. Every workflow belongs to exactly one namespace. Namespaces provide history isolation (workflows cannot see across boundaries), independent retention policies, per-namespace search attributes, and scoped access control.&lt;/p&gt;</description></item><item><title>Your First Temporal Workflow in Go: DI, Idempotency, and the Worker Pattern</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-go-workflow-basics/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-go-workflow-basics/</guid><description>&lt;h1 id="your-first-temporal-workflow-in-go"&gt;Your First Temporal Workflow in Go&lt;a class="anchor" href="#your-first-temporal-workflow-in-go"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;This article establishes the patterns used throughout the Temporal series: dependency injection for testable activities, idempotency for safe retries, and a clean worker binary. Every subsequent article builds on these foundations.&lt;/p&gt;
&lt;p&gt;All code lives in the companion repo at &lt;a href="https://github.com/statherm/temporal-examples"&gt;github.com/statherm/temporal-examples&lt;/a&gt;. For background, see &lt;a href="../temporal-introduction/"&gt;Introduction to Temporal&lt;/a&gt; and &lt;a href="../temporal-namespaces-task-queues/"&gt;Namespaces and Task Queues&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="project-structure"&gt;Project Structure&lt;a class="anchor" href="#project-structure"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The companion repo organizes code by domain:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;temporal-examples/
 cmd/worker/main.go # Worker binary
 cmd/starter/main.go # Workflow starter CLI
 internal/container/
 activities.go # Activity implementations with DI
 workflow.go # Workflow definitions
 types.go # Interfaces and types
 Makefile&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="workflows-and-activities"&gt;Workflows and Activities&lt;a class="anchor" href="#workflows-and-activities"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A workflow is a deterministic function that orchestrates work. It takes &lt;code&gt;workflow.Context&lt;/code&gt;, must not perform side effects, and dispatches work through activities. Activities use standard &lt;code&gt;context.Context&lt;/code&gt; and perform real I/O:&lt;/p&gt;</description></item><item><title>Testing Temporal Workflows: Unit Tests, Integration Tests, and the Test Environment</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-workflow-testing/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-workflow-testing/</guid><description>&lt;h1 id="testing-temporal-workflows"&gt;Testing Temporal Workflows&lt;a class="anchor" href="#testing-temporal-workflows"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Temporal workflows have a property that most distributed systems lack: determinism. A workflow function, given the same inputs and the same sequence of activity results, will always produce the same output. This makes workflows far more testable than you might expect for code that orchestrates long-running, multi-step processes.&lt;/p&gt;
&lt;p&gt;Activities are the opposite. They talk to databases, call APIs, read files, and produce side effects. You do not want your unit tests doing any of that. The testing strategy follows directly: test workflows by mocking their activities, and test activities by injecting mock dependencies.&lt;/p&gt;</description></item><item><title>Multi-Stage Temporal Workflows: Activities, Child Workflows, and Error Propagation</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-multi-stage-workflows/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-multi-stage-workflows/</guid><description>&lt;h1 id="multi-stage-temporal-workflows"&gt;Multi-Stage Temporal Workflows&lt;a class="anchor" href="#multi-stage-temporal-workflows"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;The HelloWorkflow from &lt;a href="../temporal-go-workflow-basics/"&gt;Temporal Go Workflow Basics&lt;/a&gt; calls one activity and returns. Real workflows are not that simple. A deployment pipeline provisions infrastructure, configures networking, deploys the application, runs health checks, and updates DNS. Each step depends on the previous one. Any step can fail. Some failures require undoing earlier steps.&lt;/p&gt;
&lt;p&gt;This article covers the patterns you need for production multi-stage workflows: sequential activities with data passing, retry policies, timeouts, child workflows, error propagation, and compensation.&lt;/p&gt;</description></item><item><title>Temporal Workflow Example: Container Lifecycle Management with Docker</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-container-lifecycle-workflow/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-container-lifecycle-workflow/</guid><description>&lt;h1 id="container-lifecycle-workflow"&gt;Container Lifecycle Workflow&lt;a class="anchor" href="#container-lifecycle-workflow"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;This article builds a complete Temporal workflow that manages Docker container lifecycle operations: inspect a container, stop it if running, create a snapshot (commit), and handle failures by restarting the container. It demonstrates every pattern from &lt;a href="../temporal-multi-stage-workflows/"&gt;Multi-Stage Temporal Workflows&lt;/a&gt; in a concrete, runnable example.&lt;/p&gt;
&lt;p&gt;The full source is in the &lt;a href="https://github.com/statherm/temporal-examples"&gt;companion repo&lt;/a&gt; under &lt;code&gt;container-lifecycle/&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="the-use-case"&gt;The Use Case&lt;a class="anchor" href="#the-use-case"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;You need to automate container maintenance: take a snapshot of a running container for backup or migration purposes. The sequence is:&lt;/p&gt;</description></item><item><title>Temporal Signals: Human-in-the-Loop and Manual Approval Workflows</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-signals-manual/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-signals-manual/</guid><description>&lt;h1 id="temporal-signals"&gt;Temporal Signals&lt;a class="anchor" href="#temporal-signals"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Workflows often need input after they have started. A deployment workflow pauses for human approval. An expense workflow waits for a manager&amp;rsquo;s signature. An incident response workflow escalates after a timeout. Temporal signals are the mechanism for delivering external input to a running workflow.&lt;/p&gt;
&lt;p&gt;A signal is a message sent to a workflow from outside &amp;ndash; from another workflow, from a CLI command, from an HTTP endpoint, or from any system that has the Temporal client. The workflow receives the signal, processes it, and continues execution. Signals are durable: if the worker crashes after a signal is sent but before the workflow processes it, the signal is replayed when the worker restarts.&lt;/p&gt;</description></item><item><title>Temporal Signals for Automated Coordination: Locking, Blocking, and Cross-Workflow Communication</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-signals-automated/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-signals-automated/</guid><description>&lt;h1 id="temporal-signals-for-automated-coordination"&gt;Temporal Signals for Automated Coordination&lt;a class="anchor" href="#temporal-signals-for-automated-coordination"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;In &lt;a href="../temporal-signals-manual/"&gt;Temporal Signals for Manual Interaction&lt;/a&gt;, you learned how external systems and humans send signals to running workflows. Signals are not limited to human input. They are a general-purpose communication channel between workflows, and they become powerful coordination primitives when workflows signal each other programmatically.&lt;/p&gt;
&lt;p&gt;This article covers automated signal patterns: cross-workflow signaling, distributed mutexes built on signals, blocking semantics, and the anti-patterns that will burn you.&lt;/p&gt;</description></item><item><title>Multiple Temporal Servers on Minikube: Multi-Cluster Setup</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-multi-cluster-minikube/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-multi-cluster-minikube/</guid><description>&lt;h1 id="multiple-temporal-servers-on-minikube"&gt;Multiple Temporal Servers on Minikube&lt;a class="anchor" href="#multiple-temporal-servers-on-minikube"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Running two independent Temporal Server instances locally lets you develop and test cross-cluster patterns &amp;ndash; worker bridges, namespace replication, and multi-region failover &amp;ndash; without cloud infrastructure. This article walks through deploying two Temporal clusters on minikube using profiles and connecting them over Docker networking.&lt;/p&gt;
&lt;p&gt;All configuration files and Makefile targets reference the companion repository at &lt;a href="https://github.com/statherm/temporal-examples"&gt;github.com/statherm/temporal-examples&lt;/a&gt; in the &lt;code&gt;multi-cluster/&lt;/code&gt; directory.&lt;/p&gt;
&lt;h2 id="why-multiple-clusters"&gt;Why Multiple Clusters?&lt;a class="anchor" href="#why-multiple-clusters"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A single Temporal cluster handles most use cases. You need multiple clusters when:&lt;/p&gt;</description></item><item><title>Temporal Cross-Cluster Communication: Architecture and Patterns</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-cross-cluster-communication/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-cross-cluster-communication/</guid><description>&lt;h1 id="temporal-cross-cluster-communication"&gt;Temporal Cross-Cluster Communication&lt;a class="anchor" href="#temporal-cross-cluster-communication"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;When you operate multiple Temporal clusters &amp;ndash; whether for regional deployment, compliance isolation, or blast radius reduction &amp;ndash; workflows in one cluster eventually need to trigger work in another. This article examines three architectural approaches for cross-cluster communication, their tradeoffs, and guidance on choosing the right one for your situation.&lt;/p&gt;
&lt;p&gt;This is an architecture guide. It establishes the concepts and patterns. The next article, &lt;a href="../temporal-cross-cluster-worker-bridge/"&gt;Building a Worker Bridge&lt;/a&gt;, provides the full implementation.&lt;/p&gt;</description></item><item><title>Building a Temporal Worker Bridge: Cluster A Jobs Executed in Cluster B</title><link>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-cross-cluster-worker-bridge/</link><pubDate>Sun, 22 Feb 2026 00:00:00 +0000</pubDate><guid>https://agent-zone.ai/knowledge/workflow-orchestration/temporal-cross-cluster-worker-bridge/</guid><description>&lt;h1 id="building-a-temporal-worker-bridge"&gt;Building a Temporal Worker Bridge&lt;a class="anchor" href="#building-a-temporal-worker-bridge"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;The &lt;a href="../temporal-cross-cluster-communication/"&gt;architecture article&lt;/a&gt; evaluated three cross-cluster communication patterns and identified the worker bridge as the best fit for most open-source Temporal deployments. This article builds the bridge.&lt;/p&gt;
&lt;p&gt;The worker bridge is a single binary that holds connections to two Temporal clusters. It polls Cluster A for tasks on a dedicated queue and executes those tasks using Cluster B&amp;rsquo;s resources &amp;ndash; its Temporal client, databases, APIs, and services. From Cluster A&amp;rsquo;s perspective, the bridge is just another worker. From Cluster B&amp;rsquo;s perspective, the bridge is just another client starting workflows.&lt;/p&gt;</description></item></channel></rss>