use Bloccs.Node, manifest: "path/to/node.bloccs"
Reads the manifest at compile time, validates it, confirms the
pure_core / effect_shell functions exist with the right arity, and
exposes the parsed manifest via __bloccs_manifest__/0.
Compile-time effect AST check
The macro walks the body of effect_shell after compilation finishes and
emits a warning (not an error) for any ctx.effects.X.* access where X
is not declared in [effects]. Promoting the warning to a hard compile
error is post-v0.1 — for now the runtime capability struct backstops it.
Example
defmodule MyApp.Enrich do
use Bloccs.Node, manifest: "nodes/enrich.bloccs"
def transform(event, ctx), do: ...
def execute(event, ctx), do: ...
end