orchestrator-llm/Cargo.toml
flemming-it 3bb8fc9e70 feat: deterministic stub orchestrator (v0.1.0)
The orchestrator-llm module turns a goal text into a Plan JSON
that the F∆I hub can apply. v0.1.0 is a deterministic stub —
it always emits a three-step plan (explain, explain-stub-notice,
save_flow with debug.echo) regardless of the goal.

Why ship a stub: it validates the module → plan → apply pipeline
end-to-end before adding LLM integration. The output is a
structurally valid Plan that round-trips cleanly through
fai_hub::plan::Plan deserialization.

v0.2.0 will replace the stub body with an actual LLM call once
the F∆I platform exposes outbound HTTP to permitted modules via
wasi-http.

Files:
- module.yaml — capability orchestrator.plan@0.1.0, no permissions
- wit/world.wit — copy of fai:platform@0.1.0
- src/lib.rs — wit_bindgen Guest impl that delegates to plan.rs
- src/plan.rs — pure plan-builder (host + WASM compatible)
- tests/plan_compatibility.rs — plan JSON shape assertions
- rust-toolchain.toml — pin to Rust 1.86 with wasm32-wasip2 target
- README.md — usage and status

Signed-off-by: flemming-it <sf@flemming.it>
2026-04-29 17:43:46 +02:00

34 lines
829 B
TOML

# Standalone Cargo.toml — targets wasm32-wasip2, NOT a workspace member.
#
# Build with:
# cargo build --release --target wasm32-wasip2
[package]
name = "orchestrator_llm"
version = "0.1.0"
edition = "2024"
authors = ["Dr. Stefan Flemming <platform@flemming.ai>"]
license = "Apache-2.0"
publish = false
description = "F∆I orchestrator module — turns natural-language goals into structured execution plans"
repository = "https://git.flemming.ws/fai-modules/orchestrator-llm"
[lib]
crate-type = ["cdylib", "rlib"]
[dependencies]
wit-bindgen = "0.36"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
[dev-dependencies]
serde_yaml = "0.9"
[profile.release]
opt-level = "s"
lto = true
codegen-units = 1
strip = "symbols"
[workspace]
# Empty workspace table so this package is NOT picked up by a parent.