Huginn/schemas
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens bb9e64dca1 Mind: run admission with AlreadyClaimed, the run resolution row, the claims edge
A run's instance must be this mind. Every claim must name a document in force
(MissingReference, CitesResolvedDocument); a claim held by another run in force
is refused AlreadyClaimed { item, run }, so the claim is the one consumption
fact. A byte-identical replay of an admitted run owes its claims no fresh
freedom and answers AlreadyAdmitted. A run resolves Recorded or Withdrawn only.
Runs cite their claims under role `claims`, so cites and cited selections reach
them; the header facts carry label, operator, turn, start and claims.

The published schemas that embed PipelineKind (finding, follow_up, question,
resolution, ruling) and the two mind wire schemas are re-derived: the Run
variant, PipelineFacts::Run, AlreadyClaimed and the claims role. The leaf commit
before this one has those five stale.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 16:07:19 +02:00
..
cultnet Mind: run admission with AlreadyClaimed, the run resolution row, the claims edge 2026-10-09 16:07:19 +02:00
README.md Rename the pipeline leaf to eureka-pipeline and take it as a path dependency 2026-10-09 14:09:16 +02:00

Schemas

This folder is the canonical paperwork shrine for the state contracts Huginn publishes and the pipeline leaf derives.

If a Persona field or Mind document matters enough to steer the machine, it should have a receipt here instead of living only in one Rust struct or one developer's damp recollection.

Canonical surfaces

  • cultnet/gamecult.persona_state.v0.schema.json: portable Persona state contract for Eureka's Persona, VoidBot repo Personas, and Ghostlight characters. It carries explicit provenance, public presentation metadata, typed candidateActions, and a non-authoritative extension bag for source-specific fields; social bonds, status reads, and doctrine stances are typed affect records rather than generic thought blobs. Timestamps use JSON Schema date-time, presentation is required, and custom enum values have companion custom-label fields.
  • cultnet/README.md: JSON Schema publication artifacts for typed CultNet boundaries. Live providers own their schema-catalog responses.

Source Of Truth

The living implementation is in code:

The rule is simple:

  • code owns executable truth
  • this folder owns human-readable contract receipts
  • vendored copies are downstream, not the throne

Update Discipline

When changing any of the following, update this folder in the same pass:

  • canonical organ-state or Persona family names
  • standing role trait names
  • schema version identifiers

If a change lands in code without a matching receipt here, assume the machine has started whispering to itself in the walls again.