744c2f31a8
Cargo workspace aura-core -> aura-engine -> aura-cli (bin `aura`) plus nodes/ for hot-reloadable cdylib node crates. Crate bodies are intentionally API-free; types arrive from the first spec. Adds the skills profile (.claude/dev-cycle-profile.yml), the project CLAUDE.md with the eight domain invariants, and the design-ledger skeleton. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
18 lines
949 B
Rust
18 lines
949 B
Rust
//! `aura-core` — the shared contract every aura component links against.
|
|
//!
|
|
//! This crate is the boundary forced by the cdylib hot-reload model: both the
|
|
//! engine and every hot-reloadable node cdylib depend on it, so it must stay
|
|
//! small and stable. It is the home of (to be specified):
|
|
//!
|
|
//! - the scalar base types streamed as SoA: `i64`, `f64`, `bool`, `timestamp`;
|
|
//! - the `Node` trait — the contract an authored node implements (`schema` +
|
|
//! `eval`), with engine-provided read-only input windows and node-internal
|
|
//! series;
|
|
//! - the evaluation context `Ctx` (zero-copy indexed access into input columns,
|
|
//! fresh-mask, current-cycle timestamp);
|
|
//! - the firing-policy declarations (A: fire-on-any-fresh + hold; B: all-fresh
|
|
//! barrier), declarable per input group.
|
|
//!
|
|
//! Types are intentionally absent until the first spec lands under
|
|
//! `docs/specs/`. This crate documents intent; it does not yet define API.
|