Directories
¶
| Path | Synopsis |
|---|---|
|
flowstate
|
|
|
embed
Package embed is the curated surface for embedding Flowstate as a Go library: compile a Flowfile from bytes, run it locally in-process or durably against a Temporal worker the embedding program owns, and register the program's own Go functions as tasks a workflow can call.
|
Package embed is the curated surface for embedding Flowstate as a Go library: compile a Flowfile from bytes, run it locally in-process or durably against a Temporal worker the embedding program owns, and register the program's own Go functions as tasks a workflow can call. |
|
v1
Package flowstatev1 holds the generated flowstate.v1 protobuf types and the hand-written engine that gives them behavior: the local interpreter (RunWithInputs), the task registry, the CEL evaluator, and the primitives pkg/flowstate/v1/engine wraps for durable execution against Temporal.
|
Package flowstatev1 holds the generated flowstate.v1 protobuf types and the hand-written engine that gives them behavior: the local interpreter (RunWithInputs), the task registry, the CEL evaluator, and the primitives pkg/flowstate/v1/engine wraps for durable execution against Temporal. |
|
v1/audit
Package audit writes the record of an authorization decision to a sink that is complete rather than sampled.
|
Package audit writes the record of an authorization decision to a sink that is complete rather than sampled. |
|
v1/auth
Package auth establishes identity in both directions between Flowstate and the systems around it, using OpenID Connect and Workload Identity Federation.
|
Package auth establishes identity in both directions between Flowstate and the systems around it, using OpenID Connect and Workload Identity Federation. |
|
v1/authtest
Package authtest serves an OpenID Connect provider from inside a test, so that a trust policy can be proved without an identity provider, a network, or a credential.
|
Package authtest serves an OpenID Connect provider from inside a test, so that a trust policy can be proved without an identity provider, a network, or a credential. |
|
v1/celcomplete
Package celcomplete answers one question for every surface that asks it: given what an expression may name at this point, and the partial name someone has typed, what can they write next?
|
Package celcomplete answers one question for every surface that asks it: given what an expression may name at this point, and the partial name someone has typed, what can they write next? |
|
v1/credentialsource
Package credentialsource turns an environment into a credential.
|
Package credentialsource turns an environment into a credential. |
|
v1/dst
Package dst is the deterministic simulation tier: one workflow run under many schedules, held to the claim that the schedule is not something an author can see (issue #477, slice 0).
|
Package dst is the deterministic simulation tier: one workflow run under many schedules, held to the claim that the schedule is not something an author can see (issue #477, slice 0). |
|
v1/dst/dsttest
Package dsttest is the testing-shaped front door to the deterministic simulation tier: explore a workflow's schedule space and fail the test on the first schedule that disagrees with written order.
|
Package dsttest is the testing-shaped front door to the deterministic simulation tier: explore a workflow's schedule space and fail the test on the first schedule that disagrees with written order. |
|
v1/engine
Package engine is the durable execution driver: it runs a compiled workflow specification as a Temporal workflow, so a run survives process crashes, deploys, and waits measured in days.
|
Package engine is the durable execution driver: it runs a compiled workflow specification as a Temporal workflow, so a run survives process crashes, deploys, and waits measured in days. |
|
v1/flowdap
Package flowdap speaks the Debug Adapter Protocol over a paused flowdebug.Session, so an editor's step and continue buttons drive a real flowstate run.
|
Package flowdap speaks the Debug Adapter Protocol over a paused flowdebug.Session, so an editor's step and continue buttons drive a real flowstate run. |
|
v1/flowdebug
Package flowdebug is the interactive step debugger for a local run (issue #928, slice 1).
|
Package flowdebug is the interactive step debugger for a local run (issue #928, slice 1). |
|
v1/flowfile
Package flowfile compiles a Flowfile — the YAML and CEL surface authors write — into the protobuf workflow the engine executes, and writes one back out again.
|
Package flowfile compiles a Flowfile — the YAML and CEL surface authors write — into the protobuf workflow the engine executes, and writes one back out again. |
|
v1/flowfile/lsp
Package lsp implements a Language Server Protocol server for the Flowfile DSL.
|
Package lsp implements a Language Server Protocol server for the Flowfile DSL. |
|
v1/flowtest
Package flowtest implements `flow test` (#155): self-testing of workflows through the local driver, with stubbed tasks and virtual time.
|
Package flowtest implements `flow test` (#155): self-testing of workflows through the local driver, with stubbed tasks and virtual time. |
|
v1/flowtest/flowtesting
Package flowtesting is the testing-shaped front door to `flow test`'s harness (issue #930): it runs a `*.test.yaml` suite's cases as real Go subtests, one testing.T.Run per case, so the tooling an author already has — `go test -run`, `-v`, an IDE's per-test rerun, CI's per-test timing — addresses a Flowfile case exactly as it addresses a Go one.
|
Package flowtesting is the testing-shaped front door to `flow test`'s harness (issue #930): it runs a `*.test.yaml` suite's cases as real Go subtests, one testing.T.Run per case, so the tooling an author already has — `go test -run`, `-v`, an IDE's per-test rerun, CI's per-test timing — addresses a Flowfile case exactly as it addresses a Go one. |
|
v1/internal/conformance
Package conformance holds the behavior cases both execution drivers must pass.
|
Package conformance holds the behavior cases both execution drivers must pass. |
|
v1/metricschema
Package metricschema decides which attribute keys may reach a metric instrument, and bounds what their values may be.
|
Package metricschema decides which attribute keys may reach a metric instrument, and bounds what their values may be. |
|
v1/nearest
Package nearest is the one did-you-mean rule: how far a typed name may be from a real one and still be offered as the thing that was probably meant.
|
Package nearest is the one did-you-mean rule: how far a typed name may be from a real one and still be offered as the thing that was probably meant. |
|
v1/netpolicy
Package netpolicy governs the outbound network access a workflow task is allowed to make.
|
Package netpolicy governs the outbound network access a workflow task is allowed to make. |
|
v1/payloadcodec
Package payloadcodec is the one seam where a run's payloads are encrypted before they are durable, and the one place both drivers are configured with the same answer.
|
Package payloadcodec is the one seam where a run's payloads are encrypted before they are durable, and the one place both drivers are configured with the same answer. |
|
v1/payloadcodec/toycodec
Package toycodec is a payload codec for tests, and for nothing else.
|
Package toycodec is a payload codec for tests, and for nothing else. |
|
v1/plugin
Package plugin runs Flowstate plugins: separate processes that extend the engine, discovered on a configured path, launched and supervised by this package, and spoken to over Connect RPC on a Unix domain socket.
|
Package plugin runs Flowstate plugins: separate processes that extend the engine, discovered on a configured path, launched and supervised by this package, and spoken to over Connect RPC on a Unix domain socket. |
|
v1/plugin/examples/flowstate-plugin-example
command
Command flowstate-plugin-example is a Flowstate plugin that both resolves secrets and provides a task.
|
Command flowstate-plugin-example is a Flowstate plugin that both resolves secrets and provides a task. |
|
v1/plugin/internal/protocol
Package protocol is the wire contract between the plugin host and a plugin process: the environment a plugin is launched with, the single line it prints to announce itself, and the header it authenticates the host by.
|
Package protocol is the wire contract between the plugin host and a plugin process: the environment a plugin is launched with, the single line it prints to announce itself, and the header it authenticates the host by. |
|
v1/plugin/sdk
Package sdk turns a manifest and a few functions into a Flowstate plugin.
|
Package sdk turns a manifest and a few functions into a Flowstate plugin. |
|
v1/protodoc
Package protodoc reads the prose the schema already carries.
|
Package protodoc reads the prose the schema already carries. |
|
v1/secrets
Package secrets resolves secret references to secret values, worker-side and as late as possible.
|
Package secrets resolves secret references to secret values, worker-side and as late as possible. |
|
v1/secrets/secretstest
Package secretstest is the conformance kit a secrets.Provider author runs against their own implementation.
|
Package secretstest is the conformance kit a secrets.Provider author runs against their own implementation. |
|
v1/secrets/vault
Package vault resolves secret references against a HashiCorp Vault or OpenBao KV version 2 secrets engine.
|
Package vault resolves secret references against a HashiCorp Vault or OpenBao KV version 2 secrets engine. |
|
v1/server
Package server is the control plane: FlowstateServer implements the flowstate.v1 WorkflowService over Connect RPC, turning each request to submit, observe, signal, cancel, or schedule a run into Temporal operations on the workloads the engine executes.
|
Package server is the control plane: FlowstateServer implements the flowstate.v1 WorkflowService over Connect RPC, turning each request to submit, observe, signal, cancel, or schedule a run into Temporal operations on the workloads the engine executes. |
|
v1/temporalclient
Package temporalclient connects Flowstate to Temporal, whether that is a development server on a laptop, a self-hosted cluster, or Temporal Cloud.
|
Package temporalclient connects Flowstate to Temporal, whether that is a development server on a laptop, a self-hosted cluster, or Temporal Cloud. |
Click to show internal directories.
Click to hide internal directories.