chore: scaffold aura workspace and wire the skills dev-cycle

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>
This commit is contained in:
2026-06-03 01:31:14 +02:00
commit 744c2f31a8
15 changed files with 285 additions and 0 deletions
+8
View File
@@ -0,0 +1,8 @@
[package]
name = "aura-core"
edition.workspace = true
version.workspace = true
license.workspace = true
publish.workspace = true
[dependencies]
+17
View File
@@ -0,0 +1,17 @@
//! `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.