Relicense the workspace AGPL-3.0-only, own the CultLib rev once, index every schema

Add the AGPL-3.0 text as LICENSE and set the workspace license to
AGPL-3.0-only (rulings license-split, leaf-relicensed-agpl); the leaf's
provenance (Epiphany ef956865, PolyForm Noncommercial, relicensed by its sole
copyright holder 2026-10-09) is recorded in its Cargo.toml and README.

One [workspace.dependencies] entry per CultLib crate now owns the revision;
the crates inherit it. index.json lists Huginn's two wire schemas too, and the
catalogue test drops its huginn. prefix exclusion: every schema file is listed.
README and AGENTS stop naming Epiphany notes as the owner of the cut.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Meta Vens 2026-10-09 15:15:10 +02:00
commit 09e1b9792b
12 changed files with 727 additions and 26 deletions

View file

@ -18,9 +18,8 @@ Studio's job, not Huginn's.
keys and the schemas published under `schemas/cultnet`. `huginn-mind` is
live: it persists, admits and reads back an instance's mind, queries and
derived status included, over `cultcache-rs` and `eureka-pipeline`.
`huginn-daemon` serves one mind over CultNet RUDP through `cultnet-rs` at
the same rev, and reaches the leaf and the store type through `huginn-mind`
so one crate pins each revision. `eureka-state` is the client core: one call
`huginn-daemon` serves one mind over CultNet RUDP through `cultnet-rs`, and reaches the leaf and the store type through `huginn-mind`
so the workspace's one CultLib revision (root `[workspace.dependencies]`) decides both. `eureka-state` is the client core: one call
to a daemon over CultNet, holding no state.
- Owned: an instance's memory documents, their admission and the read side
that derives their status, in `huginn-mind`,
@ -28,7 +27,8 @@ Studio's job, not Huginn's.
and their CultNet surface in `huginn-daemon`, which owns the socket, the
sessions and the process, and no rule; the operation envelope is
`huginn-mind`'s. The two wire
schemas are published from `schemas/cultnet/`. There is no index yet.
schemas are published from `schemas/cultnet/` and listed, with the
pipeline schemas, in its `index.json`.
- To depend on: Qdrant, directly, once retrieval exists. Unreachable Qdrant is
to be a loud refusal, never a fallback store. No crate connects to it yet.
- Forbidden: a second writer of mind state; mind state in version control;
@ -38,7 +38,8 @@ Studio's job, not Huginn's.
- Prefer CultLib's typed Rust APIs over ad hoc decoding. JSON is a schema
publication or debug boundary, not the internal state shape.
- The Eureka cut map in `Epiphany/notes/eureka-pipeline-state-cut.md` owns
- The campaign's cut specs in the mind (`eureka-body`, read through
`eureka-state`) and `docs/eureka-body-map.md` own
what each crate does next. Read the cut before the crate.
- Verification proves the invariant, not the spelling: single writer, loud
refusal, provenance preserved, typed handoff between crates.