Skip to main content

The orchestrator

View Markdown

The Lertha Flow is one Go binary: a durable-execution core and the web UI, running on one Postgres, with Lertha's configuration, persistence, health, deployment and branding. No vendor account is involved and there is no per-action bill.

The core is a dependency we bump, not code we patch, so an upgrade is a version bump and a CI run.

What happens on boot​

  1. Creates the two databases if missing and migrates each to the embedded schema version, the same change sets the core's schema tool applies. Idempotent.
  2. Starts all four services in-process on loopback, the frontend on the bind address.
  3. Starts the web UI, the Lertha build, pointed at the local frontend.
  4. Serves /healthz and /readyz; /readyz asks the frontend's gRPC health service.
  5. Registers the configured namespaces with the configured retention, if they do not exist.

Ready in about three seconds on a fresh database.

Clients​

The core's client SDKs for Java, Kotlin, Python, Go and TypeScript work unchanged. The lertha CLI and the Kotlin port point at it with one environment variable, LERTHA_ADDRESS.

Pages​