-module(aion_flow). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/aion_flow.gleam"). -export_type([package_root/0]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. ?MODULEDOC( " `aion_flow` is the typed Gleam SDK for authoring durable Aion\n" " workflows.\n" "\n" " Workflow authors write ordinary deterministic Gleam for decisions, loops,\n" " and data transformation. Code reaches the outside world only through the\n" " SDK primitives exposed from the public modules listed below: activities,\n" " signals, queries, timers, child workflows, codecs, durations, errors, and\n" " the pure-Gleam testing harness.\n" "\n" " The recorded side-effect boundary is structural: activity dispatch goes\n" " through `aion/workflow.run` and its typed concurrency helpers. Workflow code\n" " must not read wall clocks or ambient entropy; use the deterministic\n" " `aion/workflow.now`, `aion/workflow.random`, and timer primitives instead so\n" " replay observes the same values.\n" "\n" " Public import paths:\n" "\n" " - `aion/activity` for typed activity definitions and configuration.\n" " - `aion/workflow` for workflow definitions, deterministic primitives,\n" " timers, child workflow helpers, and activity dispatch.\n" " - `aion/signal` for typed signal references and signal helpers.\n" " - `aion/query` for typed query handlers and replies.\n" " - `aion/child` for typed child-workflow handles.\n" " - `aion/error` for activity and engine-originated error types.\n" " - `aion/codec` for payload codecs and decode errors.\n" " - `aion/duration` for canonical workflow durations.\n" " - `aion/testing` for simulated time, activity mocks, and replay assertions.\n" "\n" " The canonical typed example lives in\n" " `test/aion_flow_test.gleam` as `canonical_example_workflow`: it defines a\n" " workflow with `workflow.define`, runs an activity, reads deterministic time,\n" " sleeps, receives a typed signal, spawns and awaits a child workflow, and fans\n" " out homogeneous activities with `workflow.all` under the pure-Gleam harness.\n" ). -type package_root() :: package_root.