Directories
¶
| Path | Synopsis |
|---|---|
|
Package adhoc carries the routing contract of the Ad-Hoc Sub-Process (BPMN §13.3.5, ADR-035): the host-supplied decision that replaces sequence-flow succession inside an ad-hoc container.
|
Package adhoc carries the routing contract of the Ad-Hoc Sub-Process (BPMN §13.3.5, ADR-035): the host-supplied decision that replaces sequence-flow succession inside an ad-hoc container. |
|
routers
Package routers ships ready-made Ad-Hoc Routers for the shapes that need no host decision code (ADR-035 §2.9).
|
Package routers ships ready-made Ad-Hoc Routers for the shapes that need no host decision code (ADR-035 §2.9). |
|
Package auth defines the AuthorizationProvider extension: the engine's authorization slot for sensitive operations.
|
Package auth defines the AuthorizationProvider extension: the engine's authorization slot for sensitive operations. |
|
allowall
Package allowall provides the engine's default AuthorizationProvider, which permits every request.
|
Package allowall provides the engine's default AuthorizationProvider, which permits every request. |
|
authtest
Package authtest publishes the AuthorizationProvider conformance suite (ADR-003 §4.2): every provider — the bundled allow-all default, or an adapter over a real IAM — proves the same decision contract by calling Conformance from a one-line test.
|
Package authtest publishes the AuthorizationProvider conformance suite (ADR-003 §4.2): every provider — the bundled allow-all default, or an adapter over a real IAM — proves the same decision contract by calling Conformance from a one-line test. |
|
Package clock defines the Clock extension: the engine's source of time and timer scheduling, isolated behind an interface so timer-driven behavior is testable.
|
Package clock defines the Clock extension: the engine's source of time and timer scheduling, isolated behind an interface so timer-driven behavior is testable. |
|
clocktest
Package clocktest provides a controllable clock.Clock for time-dependent tests: Now is settable and After channels fire when the clock is advanced past their deadline.
|
Package clocktest provides a controllable clock.Clock for time-dependent tests: Now is settable and After channels fire when the clock is advanced past their deadline. |
|
syscl
Package syscl provides the system wall-clock implementation of clock.Clock, backed by time.Now and time.After.
|
Package syscl provides the system wall-clock implementation of clock.Clock, backed by time.Now and time.After. |
|
Package convert is the format-agnostic converter seam: it defines the Importer/Exporter interfaces over io.Reader/io.Writer that produce and consume *process.Process, plus a register-by-format-key registry in the image.RegisterFormat idiom.
|
Package convert is the format-agnostic converter seam: it defines the Importer/Exporter interfaces over io.Reader/io.Writer that produce and consume *process.Process, plus a register-by-format-key registry in the image.RegisterFormat idiom. |
|
bpmn
Package bpmn is the batteries-included BPMN 2.0 XML converter for the github.com/dr-dobermann/gobpm/pkg/convert seam.
|
Package bpmn is the batteries-included BPMN 2.0 XML converter for the github.com/dr-dobermann/gobpm/pkg/convert seam. |
|
Package datastore defines the engine-global Data Store port (BPMN §10.4.1, ADR-030 §2.5): item-aware data that outlives the Process instance and is shared across instances within the running engine.
|
Package datastore defines the engine-global Data Store port (BPMN §10.4.1, ADR-030 §2.5): item-aware data that outlives the Process instance and is shared across instances within the running engine. |
|
memstore
Package memstore provides the engine's default DataStore: a non-durable, in-memory, concurrency-safe store of item-aware data by name (ADR-030 §2.5).
|
Package memstore provides the engine's default DataStore: a non-durable, in-memory, concurrency-safe store of item-aware data by name (ADR-030 §2.5). |
|
Package errs provides ApplicationError definition which is used as a standard error in the gobpm library.
|
Package errs provides ApplicationError definition which is used as a standard error in the gobpm library. |
|
Package eventproc holds the public event-production contracts a node implements/consumes: EventProcessor (a node that handles a fired event) and EventProducer (registers processors and propagates events).
|
Package eventproc holds the public event-production contracts a node implements/consumes: EventProcessor (a node that handles a fired event) and EventProducer (registers processors and propagates events). |
|
Package exec holds the public node-execution contracts (ADR-012 v.1): the node executor a model element implements, the synchronizing-join variant, and the data-binding consumer/producer + Frame surface.
|
Package exec holds the public node-execution contracts (ADR-012 v.1): the node executor a model element implements, the synchronizing-join variant, and the data-binding consumer/producer + Frame surface. |
|
Package interactor defines the human-task boundary between the engine and an embedder (ADR-020): the pluggable TaskDistributor the engine announces parked UserTasks to, the TaskInfo/TaskView it hands across that boundary, the TaskCompletion event a completed task rides back on, and the HumanTask capability a UserTask node exposes so the engine can authorize and validate it.
|
Package interactor defines the human-task boundary between the engine and an embedder (ADR-020): the pluggable TaskDistributor the engine announces parked UserTasks to, the TaskInfo/TaskView it hands across that boundary, the TaskCompletion event a completed task rides back on, and the HumanTask capability a UserTask node exposes so the engine can authorize and validate it. |
|
console
Package console provides a batteries-included console TaskDistributor that drives a parked UserTask through the existing console renderer (pkg/model/hinteraction/consinp): on announcement it Takes the task, renders its form to collect the outputs, and Completes it.
|
Package console provides a batteries-included console TaskDistributor that drives a parked UserTask through the existing console renderer (pkg/model/hinteraction/consinp): on announcement it Takes the task, renders its form to collect the outputs, and Completes it. |
|
Package iso8601 parses the ISO 8601 forms BPMN uses for timer event definitions: a date-time for timeDate, a duration for timeDuration, and a bounded repeating interval for timeCycle (BPMN 2.0.2 §10.5.5, Table 10.101).
|
Package iso8601 parses the ISO 8601 forms BPMN uses for timer event definitions: a date-time for timeDate, a duration for timeDuration, and a bounded repeating interval for timeCycle (BPMN 2.0.2 §10.5.5, Table 10.101). |
|
Package messaging defines the engine's message-delivery extensions.
|
Package messaging defines the engine's message-delivery extensions. |
|
membroker
Package membroker provides the engine's default MessageBroker: an in-memory inbox + correlation router.
|
Package membroker provides the engine's default MessageBroker: an in-memory inbox + correlation router. |
|
messagingtest
Package messagingtest publishes the MessageBroker conformance suite (ADR-003 §4.2): every broker — the in-memory default and any adapter over a real queue — proves the same routing contract by calling Conformance from a one-line test.
|
Package messagingtest publishes the MessageBroker conformance suite (ADR-003 §4.2): every broker — the in-memory default and any adapter over a real queue — proves the same routing contract by calling Conformance from a one-line test. |
|
model
|
|
|
activities
Package activities provides BPMN activity implementations.
|
Package activities provides BPMN activity implementations. |
|
artifacts
Package artifacts provides BPMN artifact implementations.
|
Package artifacts provides BPMN artifact implementations. |
|
bpmncommon
Package bpmncommon provides common BPMN model elements and utilities.
|
Package bpmncommon provides common BPMN model elements and utilities. |
|
data
Package data provides implementations of BPMN data elements, including item definitions, data associations, properties, and formal expressions.
|
Package data provides implementations of BPMN data elements, including item definitions, data associations, properties, and formal expressions. |
|
data/adapters
Package adapters lets a host's own Go struct participate directly as a navigable process value (ADR-011 v.6 §2.9.5, SRD-045): Wrap(&order) returns a live data.Record view — wrap, not convert — that every data seam (path walks, SetPath, DiffValues, conditions, mappings) consumes through the ordinary Record/Collection capabilities, with zero engine change.
|
Package adapters lets a host's own Go struct participate directly as a navigable process value (ADR-011 v.6 §2.9.5, SRD-045): Wrap(&order) returns a live data.Record view — wrap, not convert — that every data seam (path walks, SetPath, DiffValues, conditions, mappings) consumes through the ordinary Record/Collection capabilities, with zero engine change. |
|
data/goexpr
Package goexpr is a reference implementation of the bpmncommon.FormalExpression interface to support Go functions as the FormalExpression evaluation core.
|
Package goexpr is a reference implementation of the bpmncommon.FormalExpression interface to support Go functions as the FormalExpression evaluation core. |
|
data/values
Package values provides typed variable and array implementations for BPMN data handling.
|
Package values provides typed variable and array implementations for BPMN data handling. |
|
data_objects
Package dataobjects provides BPMN data object implementations.
|
Package dataobjects provides BPMN data object implementations. |
|
data_stores
Package datastores provides the BPMN Data Store Reference: the flow-scope handle to the engine-global Data Store (BPMN §10.4.1, ADR-030 §2.6).
|
Package datastores provides the BPMN Data Store Reference: the flow-scope handle to the engine-global Data Store (BPMN §10.4.1, ADR-030 §2.6). |
|
dataflow
Package dataflow is the one copy path a data association runs on at execution time — for a task and for an event alike (SRD-094 FR-3).
|
Package dataflow is the one copy path a data association runs on at execution time — for a task and for an event alike (SRD-094 FR-3). |
|
events
Package events provides BPMN event implementations.
|
Package events provides BPMN event implementations. |
|
expression
Package expression defines the ExpressionEngine extension: the engine-level indirection through which BPMN FormalExpressions are evaluated, so the evaluation strategy (Go-native, FEEL, JUEL, …) is swappable.
|
Package expression defines the ExpressionEngine extension: the engine-level indirection through which BPMN FormalExpressions are evaluated, so the evaluation strategy (Go-native, FEEL, JUEL, …) is swappable. |
|
expression/expressiontest
Package expressiontest publishes the ExpressionEngine conformance suite (ADR-003 §4.2): every engine — the Go-native default, lite, or a FEEL/JUEL adapter — proves the same contract by calling Conformance from a one-line test.
|
Package expressiontest publishes the ExpressionEngine conformance suite (ADR-003 §4.2): every engine — the Go-native default, lite, or a FEEL/JUEL adapter — proves the same contract by calling Conformance from a one-line test. |
|
expression/goexpr
Package goexpr provides the Go-native default ExpressionEngine: it delegates to each FormalExpression's own Evaluate method (today's behavior).
|
Package goexpr provides the Go-native default ExpressionEngine: it delegates to each FormalExpression's own Evaluate method (today's behavior). |
|
expression/lite
Package lite implements the gobpm:lite battery expression language (ADR-032 §2.3, SRD-067): a small, stdlib-only text language over process data — float64 numbers, strings, booleans, times and nil; structural paths through the engine's own resolver; short-circuit booleans; the has/len/time builtins.
|
Package lite implements the gobpm:lite battery expression language (ADR-032 §2.3, SRD-067): a small, stdlib-only text language over process data — float64 numbers, strings, booleans, times and nil; structural paths through the engine's own resolver; short-circuit booleans; the has/len/time builtins. |
|
flow
Package flow provides BPMN flow elements and node definitions.
|
Package flow provides BPMN flow elements and node definitions. |
|
foundation
Package foundation provides base BPMN element types and interfaces.
|
Package foundation provides base BPMN element types and interfaces. |
|
gateways
Package gateways provides BPMN gateway implementations.
|
Package gateways provides BPMN gateway implementations. |
|
hinteraction
Package hinteraction provides human interaction interfaces and implementations for BPMN.
|
Package hinteraction provides human interaction interfaces and implementations for BPMN. |
|
hinteraction/consinp
Package consinp implements the Rendered interface for user input from the console.
|
Package consinp implements the Rendered interface for user input from the console. |
|
lanes
Package lanes provides BPMN Lane and LaneSet — the engine's only **model-only** elements.
|
Package lanes provides BPMN Lane and LaneSet — the engine's only **model-only** elements. |
|
msgflow
Package msgflow holds the message-flow choreography shared by the BPMN nodes that send and receive messages (ADR-014 v.1).
|
Package msgflow holds the message-flow choreography shared by the BPMN nodes that send and receive messages (ADR-014 v.1). |
|
options
Package options provides configuration options for BPMN model elements.
|
Package options provides configuration options for BPMN model elements. |
|
process
Package process provides an implementation of BPMN Process elements and their execution.
|
Package process provides an implementation of BPMN Process elements and their execution. |
|
service
Package service provides BPMN service interfaces and implementations.
|
Package service provides BPMN service interfaces and implementations. |
|
service/gooper
Package gooper provides the gobpm-native Go operation: a ServiceTask Operation implemented by an in-process Go functor that reads through a public data reader and, optionally, consumes/produces messages (ADR-011 v.5 §2.6).
|
Package gooper provides the gobpm-native Go operation: a ServiceTask Operation implemented by an in-process Go functor that reads through a public data reader and, optionally, consumes/produces messages (ADR-011 v.5 §2.6). |
|
Package observability defines gobpm's structured-logging, telemetry, and observable-event contracts: the Logger interface (satisfied directly by *slog.Logger), the OpenTelemetry-shaped Tracer / MetricsRecorder interfaces, and the observation seam (ADR-013 v.2) — the canonical Fact record, the Reporter that echoes it to the operator log and fans it out to observers, the Observer a host implements (OnFact), and the optional LogRedactor / ObservationFilter visibility capabilities.
|
Package observability defines gobpm's structured-logging, telemetry, and observable-event contracts: the Logger interface (satisfied directly by *slog.Logger), the OpenTelemetry-shaped Tracer / MetricsRecorder interfaces, and the observation seam (ADR-013 v.2) — the canonical Fact record, the Reporter that echoes it to the operator log and fans it out to observers, the Observer a host implements (OnFact), and the optional LogRedactor / ObservationFilter visibility capabilities. |
|
memmetrics
Package memmetrics provides the engine's default MetricsRecorder: an in-memory, queryable registry.
|
Package memmetrics provides the engine's default MetricsRecorder: an in-memory, queryable registry. |
|
memtrace
Package memtrace provides an opt-in observability.Tracer that retains the most recent completed spans in a bounded in-memory ring, queryable via Spans.
|
Package memtrace provides an opt-in observability.Tracer that retains the most recent completed spans in a bounded in-memory ring, queryable via Spans. |
|
noop
Package noop provides no-op observability implementations: a Tracer that creates inert spans (the engine's default tracer) and a MetricsRecorder that discards all measurements (the opt-out for metrics).
|
Package noop provides no-op observability implementations: a Tracer that creates inert spans (the engine's default tracer) and a MetricsRecorder that discards all measurements (the opt-out for metrics). |
|
Package renv defines the public runtime-environment contracts: EngineRuntime — the engine/server-level set of resolved extensions (the wired services) the Thresher owns and shares with the things that run BPMN — and the per-execution RuntimeEnvironment a node executes against (ADR-012 §2.3).
|
Package renv defines the public runtime-environment contracts: EngineRuntime — the engine/server-level set of resolved extensions (the wired services) the Thresher owns and shares with the things that run BPMN — and the per-execution RuntimeEnvironment a node executes against (ADR-012 §2.3). |
|
Package repository defines the Repository extension: the engine's instance-checkpoint port (ADR-033 §2.7 — ONE narrow port among peers, deliberately not the system's persistence facade; other storage-backed modules define their own ports and share the user-owned backend handle).
|
Package repository defines the Repository extension: the engine's instance-checkpoint port (ADR-033 §2.7 — ONE narrow port among peers, deliberately not the system's persistence facade; other storage-backed modules define their own ports and share the user-owned backend handle). |
|
memrepo
Package memrepo provides the engine's default Repository: a non-durable, in-memory store.
|
Package memrepo provides the engine's default Repository: a non-durable, in-memory store. |
|
repositorytest
Package repositorytest publishes the Repository conformance suite (ADR-002 §8.4, ADR-003 §4.2): every Repository implementation — the in-memory default and any durable adapter — proves the same contract by calling Conformance from a one-line test.
|
Package repositorytest publishes the Repository conformance suite (ADR-002 §8.4, ADR-003 §4.2): every Repository implementation — the in-memory default and any durable adapter — proves the same contract by calling Conformance from a one-line test. |
|
Package rules defines the Business Rule Engine seam (ADR-027 v.1 §2.1): a pluggable engine service that evaluates a named decision against the process-data read surface.
|
Package rules defines the Business Rule Engine seam (ADR-027 v.1 §2.1): a pluggable engine service that evaluates a named decision against the process-data read surface. |
|
gorules
Package gorules provides the batteries-included Business Rule Engine (ADR-027 §2.4): a bounded registry of named in-process Go decisions.
|
Package gorules provides the batteries-included Business Rule Engine (ADR-027 §2.4): a bounded registry of named in-process Go decisions. |
|
Package script defines the Script Engine seam (ADR-031): pluggable script interpreters the Script Task executes its body on, routed by the standard's own scriptFormat MIME hint.
|
Package script defines the Script Engine seam (ADR-031): pluggable script interpreters the Script Task executes its body on, routed by the standard's own scriptFormat MIME hint. |
|
gofunc
Package gofunc is the dependency-free Script Task engine: the BPMN script text names a Go function the host registered, and the engine calls it.
|
Package gofunc is the dependency-free Script Task engine: the BPMN script text names a Go function the host registered, and the engine calls it. |
|
Package set provides a generic set data structure for comparable types.
|
Package set provides a generic set data structure for comparable types. |
|
Package tasks defines the engine's external-worker execution contract: an asynchronous fetch-and-lock job queue (ADR-021 §2.4, SRD-036).
|
Package tasks defines the engine's external-worker execution contract: an asynchronous fetch-and-lock job queue (ADR-021 §2.4, SRD-036). |
|
localdispatcher
Package localdispatcher provides the engine's default WorkerDispatcher (ADR-021 §2.4, SRD-036): an in-memory fetch-and-lock job store with per-job lock state and a local worker pool.
|
Package localdispatcher provides the engine's default WorkerDispatcher (ADR-021 §2.4, SRD-036): an in-memory fetch-and-lock job store with per-job lock state and a local worker pool. |
|
taskstest
Package taskstest publishes the WorkerDispatcher conformance suite (ADR-003 §4.2): every dispatcher — the bundled local queue, or an adapter over Redis, SQS or a Camunda-style external-task API — proves the same fetch-and-lock contract by calling Conformance from a one-line test.
|
Package taskstest publishes the WorkerDispatcher conformance suite (ADR-003 §4.2): every dispatcher — the bundled local queue, or an adapter over Redis, SQS or a Camunda-style external-task API — proves the same fetch-and-lock contract by calling Conformance from a one-line test. |
|
Package thresher provides the main BPMN process execution engine.
|
Package thresher provides the main BPMN process execution engine. |
Click to show internal directories.
Click to hide internal directories.