# oi v0.1.0 - Table of Contents

> Lightweight Orchid integration layer with pluggable execution strategies

## Pages

- [[WIP]Oi](readme.md)

## Modules

- [Oi](Oi.md): Oi means Orchid integration.
- [Oi.Compiler](Oi.Compiler.md): Compiles a pure structural graph into Orchid RecipeBundles.
- [Oi.Compiler.RecipeBundle](Oi.Compiler.RecipeBundle.md): Container for a compiled Orchid recipe and its associated metadata.
- [Oi.Configurator](Oi.Configurator.md): Immutable dispatch configuration.
- [Oi.Dispatcher](Oi.Dispatcher.md): Orchestrates barrier-synchronized execution of plan stages.
- [Oi.Executor](Oi.Executor.md): Pluggable task execution strategy for stage fan-out.
- [Oi.Executor.Sync](Oi.Executor.Sync.md): Serial executor — runs all tasks in the calling process.
- [Oi.Executor.TaskSup](Oi.Executor.TaskSup.md): Task.Supervisor-backed executor — concurrent fan-out with crash isolation.
- [Oi.Registry](Oi.Registry.md): Local process storage for Oi sessions.
- [Oi.Session](Oi.Session.md): Session seperates whole application into seperal spaces where contains different
steps, independent [symbionts](https://orchid-symbiont.hexdocs.pm/) and storages.

- [Oi.Session.Instances](Oi.Session.Instances.md): Instance Supervisor.
- [Oi.Step](Oi.Step.md): 轻量级声明式语法层，在 `Orchid.Step` / `OrchidSymbiont.Step` 之上提供简易
API，并产出 `__node_spec__/0` 供 topology 集成。
- [Oi.Topology.Cluster](Oi.Topology.Cluster.md): Cluster dependencies based on user selections and dependency relationships at the front end
to achieve parallel control.
- [Oi.Topology.Graph](Oi.Topology.Graph.md): The pure mathematical representation of the DAG.

- [Oi.Topology.Graph.Edge](Oi.Topology.Graph.Edge.md): A directed edge representing data flow between two node ports.
- [Oi.Topology.Graph.Node](Oi.Topology.Graph.Node.md): A pure data representation of a computation step in the DAG.
- [Oi.Topology.Graph.PortRef](Oi.Topology.Graph.PortRef.md): A container based on the node/port representation, used to dynamically generate Orchid keys.
- [Oi.Worker](Oi.Worker.md): Executes a single RecipeBundle in isolation.
- [Oi.Workspace](Oi.Workspace.md): Pure data container for a single computation unit.
- [Oi.Workspace.Drafting](Oi.Workspace.Drafting.md): Temporary result store for a single dispatch pass.
- [Oi.Workspace.Planning](Oi.Workspace.Planning.md): Execution plan built from compiled RecipeBundles.
- [Oi.Workspace.Planning.Plan](Oi.Workspace.Planning.Plan.md): Ordered sequence of stages.
- [Oi.Workspace.Planning.Stage](Oi.Workspace.Planning.Stage.md): A single execution barrier.

