Weksa/docs/architecture.md
Meta Vens 55c75e3bd0 Quarantine the Eve operator surface publisher; Eve is deprecated, rebuild on Thing 2
Removes buildOperatorSurface, the surface_state and interface_binding documents, eve-surfaces.cc and the surface advertisement entries. Typed state and the provider advertisement stay. Parked at parked/weksa-eve-surface per thing2:ruling:eve-dashboards-quarantined.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 20:13:36 +02:00

61 lines
2.5 KiB
Markdown

# Architecture
Weksa is the language-intent daemon surface: currently a state spine, pipeline
map, fixtures, and service contract waiting for its runtime loop.
See [Verse Service Contract](./verse-service-contract.md) for the
CultCache/CultMesh authority map.
## Objective
Build a procedural alien-language engine whose outputs are grounded in
worldview, semantics, grammar, phonology, morphology, and history. As a daemon,
Weksa also turns writing plus agent state into typed conversational intent, then
lowers that intent into written realizations, pronunciation plans, speech-provider
requests, and utterance handoff documents.
## Current Mechanism
There is no long-running runtime loop yet. The repo contains persistent state
surfaces and a provider advertisement fixture that define the intended data flow
and the ownership boundaries future code must respect.
The first shared contract is the [Interlingua Standard](./interlingua-standard.md):
clients submit interlingua packets before any language project projects them
through its ontology.
## Invariants
- Meaning precedes words.
- Ontology owns concept distinctions.
- Grammar owns obligatory expression.
- Morphology owns form families.
- Phonology owns sound legality.
- Diachrony owns plausible irregularity.
- Renderer owns output, not interpretation.
- Weksa owns conversational intent and utterance lowering.
- External speech providers own rendered audio, not meaning or delivery truth.
- AquaSynth owns learned utterance embeddings, synth controls, Faust
compilation, and audio output.
## Intended Change
Future implementation should turn the pipeline in `state/map.yaml` into a small,
inspectable daemon. The first executable slice should validate a tiny
interlingua packet, read a tiny language project definition, render glossed
output, lower an accepted intent into target-language realizations, optionally
project the accepted realization into a speech-provider request or
pronunciation/utterance handoff, and produce a trace explaining which stage made
each decision.
Runtime should be fast and deterministic. Model-assisted English decomposition
belongs in authoring tools or offline import flows, not in the required hot path.
See [Runtime and Authoring Split](./runtime-authoring-split.md).
## Cut Line
Do not add a database, queue, plugin system, prompt framework, or adapter until
the pipeline stage needing it is known.
Do not hard-code Rust to Dust, its aliens, or its aesthetic-honor ontology into
the generic engine.