park-node-body fixes: remove Discord-derived ontology content and its catalog entries; contract is planned design only; drop stale fixture refs (squash of weksa-lowering/park-node-body-fix 3327edd..HEAD; Soul s1, s2 findings)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Eureka 2026-10-29 10:41:36 +01:00
commit 35fa97913b
10 changed files with 19 additions and 678 deletions

View file

@ -20,7 +20,6 @@ may retrieve candidates, but accepted ontology remains typed state.
- `cultures/`: culture or life-history profiles that can shape lowering when a
Persona explicitly references them.
- `subcultures/`: community-of-practice and register profiles.
- `referents/`: bounded source-text, mythic, literary, ritual, or historical
referents. These are not whole-culture profiles; they preserve reusable
role, salience, affordance, and forbidden-flattening pressure.

View file

@ -14,18 +14,8 @@ qdrant:
Qdrant owns retrieval over culture/subculture chunks. It does not own
accepted ontology, activation, or lowering authority.
profiles:
- profile_id: weksa.culture.dutch_american_diaspora.v0
path: data/cultural-ontology/cultures/dutch-american-diaspora.yaml
- profile_id: weksa.culture.western_europe_maritime_childhood.v0
path: data/cultural-ontology/cultures/western-europe-maritime-childhood.yaml
- profile_id: weksa.culture.portugal_resident_algarve_lisbon.v0
path: data/cultural-ontology/cultures/portugal-resident-algarve-lisbon.yaml
- profile_id: weksa.culture.texas_houston_us_adolescence.v0
path: data/cultural-ontology/cultures/texas-houston-us-adolescence.yaml
- profile_id: weksa.subculture.online_game_dev_discord_pre2025.v0
path: data/cultural-ontology/subcultures/online-game-dev-discord-pre2025.yaml
- profile_id: weksa.subculture.gamecult_open_source_crypto_anarchist.v0
path: data/cultural-ontology/subcultures/gamecult-open-source-crypto-anarchist.yaml
- profile_id: weksa.cultural_referent.old_norse_edda_source_tradition.v0
path: data/cultural-ontology/referents/old-norse-edda-source-tradition.yaml
- profile_id: weksa.cultural_referent.old_norse_edda_brokkr_skaldskaparmal.v0

View file

@ -1,58 +0,0 @@
schema_version: weksa.cultural_ontology_profile.v0
profile_id: weksa.culture.dutch_american_diaspora.v0
kind: diaspora_identity
status: draft_guarded
language:
codes:
- en
- nl
community:
regions:
- Netherlands
- United States
speech_community: >
People whose self-description or life history crosses Dutch origin and
American nationality/residence. This profile is not a dialect claim.
activation:
allowed_when:
- persona_state_references_profile
- interlingua_mentions_origin_nationality_or_cross_cultural_identity
forbidden_when:
- used_to_infer_accent_or_fluency_without_evidence
- used_as_generic_dutch_or_generic_american_stereotype
salience_axes:
plural_national_identity:
axis_id: plural_national_identity
domain: identity_indexing
description: Birthplace, citizenship, residence, and cultural identification may diverge.
relevant_distinctions:
- distinction_id: birthplace_vs_citizenship
label: Birthplace versus citizenship
meaning: Being born in one country and holding identity/citizenship in another are separate ontology fields.
lowering_questions:
- Does the utterance need origin, nationality, residence, or cultural affiliation?
required_when:
- source_mentions_identity_origin_or_nationality
forbidden_when:
- scene_only_requires_casual_banter
evidence_refs:
- discord:805822798185627718
- discord:1030577958215225396
evidence_ledger:
- ref: discord:805822798185627718
quote: "I live in Portugal at the moment, though I am a Netherlands-born US citizen - lived mostly in Texas"
- ref: discord:1030577958215225396
quote: "Dual nationality, Dutch American"
- ref: discord:862490040755683348
quote: "I was born in the Netherlands but I'm a US citizen and did high school in Houston, Texas."
linguistic_affordances:
grammar_features: []
phonology_features: []
lexicon_features: []
discourse_patterns: []
orthography_features: []
code_switching:
allowed: false
constraints:
- Do not infer Dutch code switching from diaspora identity alone.
patterns: []

View file

@ -1,84 +0,0 @@
schema_version: weksa.cultural_ontology_profile.v0
profile_id: weksa.culture.portugal_resident_algarve_lisbon.v0
kind: regional_residence
status: draft_guarded
language:
codes:
- en
- pt
community:
regions:
- Portugal
- Algarve
- Lisbon
- Tavira
speech_community: >
Portugal as lived residence and locality rather than tourist backdrop.
activation:
allowed_when:
- persona_state_references_profile
- interlingua_mentions_portugal_residence_locality_bureaucracy_or_timing
forbidden_when:
- used_for_broad_portuguese_culture_without_locale_review
salience_axes:
lived_portugal:
axis_id: lived_portugal
domain: identity_indexing
description: Portugal references can be local/home references, including Algarve/Lisbon/Tavira specificity.
relevant_distinctions:
- distinction_id: current_or_returned_residence
label: Current or returned residence
meaning: Portugal can be present-tense home context, not childhood-only memory.
lowering_questions:
- Is Portugal being invoked as current location, childhood location, or comparison frame?
required_when:
- source_mentions_portugal_or_portuguese_residence
forbidden_when:
- scene_has_no_place_salience
evidence_refs:
- discord:581220303414231117
- discord:834858944013926421
- discord:888820124344254504
evidence_ledger:
- ref: discord:581220303414231117
quote: "I'm in the Algarve now"
- ref: discord:834858944013926421
quote: "I live in Portugal now"
- ref: discord:888820124344254504
quote: "But I'm currently in Lisbon"
- ref: discord:1023774733789040640
quote: "if you wanna move to Portugal you're gonna have to get used to not getting things on time"
linguistic_affordances:
grammar_features: []
phonology_features: []
lexicon_features: []
discourse_patterns:
- pattern_id: portugal_timing_joke_guarded
label: Portugal timing joke, guarded
status: draft
domain:
layer: discourse
category: humor
subcategory: local_bureaucracy_timing
interactional_function: locally_grounded_timing_joke
sequence_shape:
- playful_warning
- local_timing_generalization
adjacency_constraints:
- addressee_is_discussing_moving_or_living_in_portugal
activation:
allowed_when:
- local_portugal_residence_context
- joking_register
forbidden_when:
- formal_cultural_description
evidence:
source_refs:
- discord:1023774733789040640
confidence: low
orthography_features: []
code_switching:
allowed: false
constraints:
- This profile alone does not authorize Portuguese code switching.
patterns: []

View file

@ -1,56 +0,0 @@
schema_version: weksa.cultural_ontology_profile.v0
profile_id: weksa.culture.texas_houston_us_adolescence.v0
kind: adolescence_residence
status: draft_guarded
language:
codes:
- en
community:
regions:
- United States
- Texas
- Houston
speech_community: >
US/Texas adolescent institutional context, especially Houston high school
and later critique of American debt/institutional pathways.
activation:
allowed_when:
- persona_state_references_profile
- interlingua_mentions_us_texas_school_debt_or_american_institutions
forbidden_when:
- used_to_force_texan_dialect_markers
salience_axes:
american_institutional_distance:
axis_id: american_institutional_distance
domain: stance
description: US institutions can be lived experience and object of critique rather than foreign abstraction.
relevant_distinctions:
- distinction_id: debt_train_refusal
label: American debt train refusal
meaning: Avoiding US education/debt pathways can be a first-person institutional stance.
lowering_questions:
- Is the utterance about education, debt, leaving the US, or institutional pressure?
required_when:
- source_mentions_us_debt_or_school_path
forbidden_when:
- casual_fixture_without_institutional_topic
evidence_refs:
- discord:1160260490690306148
evidence_ledger:
- ref: discord:805822798185627718
quote: "lived mostly in Texas"
- ref: discord:862490040755683348
quote: "did high school in Houston, Texas"
- ref: discord:1160260490690306148
quote: "I specifically left the US after high school so as not to climb onto the traditional American debt train"
linguistic_affordances:
grammar_features: []
phonology_features: []
lexicon_features: []
discourse_patterns: []
orthography_features: []
code_switching:
allowed: false
constraints:
- Do not infer Southern or Texan dialect surface markers from residence alone.
patterns: []

View file

@ -10,8 +10,8 @@ community:
- coastal_western_europe
speech_community: >
Mobile childhood organized around sailing, ports, and cross-border Western
European movement. This profile is owner-attested for the Metame fixture and
needs more Discord corroboration before broader use.
European movement. This profile is owner-attested and needs corroboration
before broader use.
activation:
allowed_when:
- persona_state_references_profile
@ -35,11 +35,6 @@ salience_axes:
- scene_has_no_mobility_or_home_salience
evidence_refs:
- owner:2026-06-10:sailboat_france_spain_portugal_until_6
evidence_ledger:
- ref: owner:2026-06-10:sailboat_france_spain_portugal_until_6
quote: "I was born in the Netherlands, grew up on a sailboat traveling France, Spain, staying in Portugal until I was 6, moved to the US."
- ref: discord-search-gap:sailboat_childhood
summary: First semantic search did not locate a direct Discord message for this exact childhood account.
linguistic_affordances:
grammar_features: []
phonology_features: []

View file

@ -1,51 +0,0 @@
schema_version: weksa.cultural_ontology_profile.v0
profile_id: weksa.subculture.gamecult_open_source_crypto_anarchist.v0
kind: political_technical_community
status: draft_guarded
language:
codes:
- en
community:
regions:
- online
speech_community: >
GameCult-adjacent open-source, crypto-anarchist, game-development, and
engineering practice where ownership, inspectability, debt, authority, and
tool coherence are culturally salient.
activation:
allowed_when:
- persona_state_references_profile
- interlingua_mentions_tools_authority_open_source_debt_game_dev_or_engineering
forbidden_when:
- used_to_turn_random_banter_into_manifesto
salience_axes:
authority_and_tool_coherence:
axis_id: authority_and_tool_coherence
domain: stance
description: Systems are judged by ownership, inspectability, agency, and whether they actually work.
relevant_distinctions:
- distinction_id: open_source_anti_custody
label: Open source anti-custody
meaning: Open access and inspectability are political and practical values.
lowering_questions:
- Is the line judging a tool, institution, ownership structure, or coordination method?
- Should the interlingua preserve anti-custody or open-access salience?
required_when:
- source_mentions_open_source_or_institutional_authority
forbidden_when:
- casual_social_move_only
evidence_refs:
- discord:862490040755683348
linguistic_affordances:
grammar_features: []
phonology_features: []
lexicon_features: []
discourse_patterns: []
orthography_features: []
code_switching:
allowed: false
constraints: []
patterns: []
evidence_ledger:
- ref: discord:862490040755683348
quote: "I got my bachelor degree in game development last year. I'm a crypto-anarchist open source activist"

View file

@ -1,288 +0,0 @@
schema_version: weksa.cultural_ontology_profile.v0
profile_id: weksa.subculture.online_game_dev_discord_pre2025.v0
kind: community_of_practice
status: draft_guarded
language:
codes:
- en
community:
regions:
- online_discord
speech_community: >
Pre-2025 GameCult/Aquarium-ish Discord collaboration where game design,
sound, engineering, jokes, and casual status play cohabit the same rooms.
activation:
allowed_when:
- persona_state_references_profile
- target_medium_is_discord
- target_period_is_pre_2025_or_history_fixture
forbidden_when:
- formal_current_project_doctrine_is_target
salience_axes:
casual_room_temperature:
axis_id: casual_room_temperature
domain: discourse_patterns
description: Compact, socially alive wording that assumes shared room context.
relevant_distinctions:
- distinction_id: banter_over_explanation
label: Banter over explanation
meaning: The line may be short, fragmentary, and joke-shaped when context supplies the frame.
lowering_questions:
- Can the utterance be one sentence or fragment?
- Does explanation weaken the social move?
required_when:
- fixture_style_tags_include_casual
forbidden_when:
- formal_review_or_doctrine_is_requested
evidence_refs:
- discord:802911591288537118
- discord:820077384572338176
linguistic_affordances:
grammar_features:
- feature_id: fragmentary_like_comparison
label: Fragmentary Like comparison
status: draft
domain:
layer: grammar
category: comparison
subcategory: fragment
description: >
A joke-description may start with "Like..." and remain fragmentary when
it is an immediate continuation of collaborative design talk.
realization:
function: casual_comic_comparison
surface_strategy: "Like a really terrible <thing> that <absurd property>"
examples:
- "Like a really terrible engine that sounds like coconuts when you use it"
activation:
allowed_when:
- collaborative_design_banter
forbidden_when:
- standalone_formal_explanation
requires_profile_authority: true
minimum_density: light
maximum_density: normal
evidence:
source_refs:
- discord:802911591288537118
confidence: medium
phonology_features: []
lexicon_features:
- feature_id: casual_recoil_oof
label: Casual recoil marker oof
status: draft
domain:
layer: lexicon
category: stance_marker
subcategory: embarrassment
lexical_items:
- form: oof
gloss: amused impact or discomfort
sense: playful_recoil
register: casual_discord
allowed_speaker_standing: speaker_can_self_deprecate
forbidden_senses: []
collocations:
- "oof, don't tell me"
activation:
allowed_when:
- compliment_or_trait_read_lands
forbidden_when:
- serious_apology_or_harm_context
requires_profile_authority: true
minimum_density: light
maximum_density: light
evidence:
source_refs:
- discord:1037314100931338260
confidence: high
- feature_id: mock_challenge_coward
label: Mock challenge coward
status: draft
domain:
layer: lexicon
category: stance_marker
subcategory: friendly_roast
lexical_items:
- form: coward
gloss: mock insult
sense: friendly_status_challenge
register: casual_discord
allowed_speaker_standing: active_banter_with_known_participant
forbidden_senses:
- actual_contempt
collocations:
- "then you coward"
activation:
allowed_when:
- friendly_roast_context
- target_has_claimed_competence
forbidden_when:
- unknown_relationship
- serious_conflict
requires_profile_authority: true
minimum_density: light
maximum_density: light
evidence:
source_refs:
- discord:1023727427924545576
confidence: high
- feature_id: preserve_self_indexed_technical_label
label: Preserve self-indexed technical label
status: draft
domain:
layer: lexicon
category: technical_term
subcategory: self_indexing
description: >
When Persona interlingua frames the speaker through a locally salient
technical identity label, lowering should preserve that label instead of
inventing a fresher metaphor. In this subculture, "engineer" can be a
joked-about identity index, not just an occupation.
lexical_items:
- form: engineer
gloss: technical identity / competence index
sense: self_indexed_engineering_vibe
register: casual_discord
allowed_speaker_standing: speaker_or_room_has_made_engineering_salient
forbidden_senses:
- formal_job_title_unless_context_requires
collocations:
- engineer vibes
- engineer-like
activation:
allowed_when:
- persona_interlingua_mentions_engineer_like_or_engineering_salience
- prior_turn_compliments_efficiency_or_structure
forbidden_when:
- interlingua_does_not_name_technical_identity
requires_profile_authority: true
minimum_density: light
maximum_density: light
constraints:
register_contexts:
- casual
speaker_contexts:
- metame_or_metacrat_fixture
grammar_contexts:
- playful_self_deprecation
incompatibilities:
- replacement_identity_metaphor
- creature_metaphor_substitution
evidence:
source_refs:
- discord:1037314100931338260
confidence: medium
discourse_patterns:
- pattern_id: compact_recoil_no_context_dump
label: Compact recoil without context dump
status: draft
domain:
layer: discourse
category: stance_marker
subcategory: self_deprecation
interactional_function: answer_trait_read_with_short_mock_wince
sequence_shape:
- recoil_marker
- dont_tell_me_frame
- possessive_context_object
- preserved_trait_label
adjacency_constraints:
- prior_turn_already_contains_the_explanation
- generated_line_should_not_quote_or_summarize_prior_turns
activation:
allowed_when:
- playful_self_deprecation
- prior_turn_compliments_efficiency_or_structure
forbidden_when:
- source_intent_requires_explanation
requires_profile_authority: true
minimum_density: light
maximum_density: light
constraints:
register_contexts:
- casual
speaker_contexts:
- metame_or_metacrat_fixture
collocation_limits:
- target_length_roughly_6_to_12_words
- avoid_quoted_prior_turn_paraphrase
- avoid_because_clause
- avoid_disease_metaphor_unless_interlingua_requests_it
evidence:
source_refs:
- discord:1037314100931338260
confidence: medium
- pattern_id: casual_floor_yield_with_lol
label: Casual floor yield with lol
status: draft
domain:
layer: discourse
category: turn_taking
subcategory: floor_yield
interactional_function: yield_floor_after_riff
sequence_shape:
- discourse_pivot_anyway
- self_silencing_imma_shut_up_now
- invite_others_to_invent
- lol_softener
adjacency_constraints:
- prior_turns_show_speaker_has_been_riffing
- other_participants_have_interest_or_pending_contribution
activation:
allowed_when:
- conversational_yield
- casual_collaborative_ideation
forbidden_when:
- formal_moderation
requires_profile_authority: true
minimum_density: light
maximum_density: light
evidence:
source_refs:
- discord:820077384572338176
confidence: high
orthography_features:
- feature_id: light_discord_informality
label: Light Discord informality
status: draft
domain:
layer: orthography
category: punctuation
subcategory: informal_case
allowed_surface_forms:
- lower_case_opening
- markdown_italics_for_single_emphasis
- no_terminal_period
- imma
- lol
forbidden_surface_forms:
- heavy_eye_dialect_for_identity_caricature
- assistant_like_sentence_polishing
activation:
allowed_when:
- casual_discord_register
forbidden_when:
- formal_or_public_document_register
requires_profile_authority: true
minimum_density: light
maximum_density: normal
evidence:
source_refs:
- discord:1037314100931338260
- discord:820077384572338176
confidence: medium
code_switching:
allowed: false
constraints:
- This subculture alone does not authorize cross-language switching.
patterns: []
evidence_ledger:
- ref: discord:1037314100931338260
summary: Self-deprecating recoil after efficiency compliment.
- ref: discord:802911591288537118
summary: Fragmentary absurd comparison during sound/game design banter.
- ref: discord:1023727427924545576
summary: Very short mock-aggressive challenge in friendly roast context.
- ref: discord:820077384572338176
summary: Casual profane floor-yield after extended ideation.

View file

@ -18,7 +18,7 @@ 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
surfaces 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):

View file

@ -1,137 +1,31 @@
# Weksa Verse Service Contract
> Status: planned contract. No daemon runs on main; the Node body is at tag
> `parked/weksa-node-body`. A service is earned by cut `live-lowering`
> (see [the lowering map](./targets/interlingua-lowering-map.md)).
> Status: planned contract. Nothing described below runs on main. A service is
> earned by cut `live-lowering` (see [the lowering map](./targets/interlingua-lowering-map.md));
> the Node body that once approximated it is parked at tag `parked/weksa-node-body`.
Weksa is the language-intent daemon. It turns writing, dialogue pressure, and
agent state into typed conversational intent, then lowers that intent into
utterance documents for speech, text, and synthesis consumers.
## Intended Authority
## Authority
Weksa is intended to own conversational intent and utterance lowering: it will
turn interlingua packets (`weksa.interlingua_packet.v0`) and agent state
(`gamecult.persona_state.v0` or compatible projections) into typed
conversational intent, pronunciation plans and utterance handoff documents.
Owner: Weksa.
AquaSynth owns phonetic realization, synth-driver controls and rendered audio.
Speech providers own their audio bytes. Weksa will own only the request
projection and trace it hands them.
Inputs:
## Intended Publication
- writing or dialogue drafts
- `weksa.interlingua_packet.v0` meaning packets
- `gamecult.persona_state.v0` or compatible agent-state projections
- language-project state, pronunciation rules, and flavor profiles
- optional speaker, scene, and discourse constraints
Outputs:
- `weksa.conversational_intent.v0`
- `weksa.pronunciation_plan.v0`
- `weksa.utterance_handoff.v0`
- `weksa.utterance_embedding_handoff.v0.1`
- `weksa.mimo_voicedesign_command.v0`
- `weksa.mimo_tts_request.v0`
- `weksa.mimo_voicedesign_receipt.v0`
Weksa owns conversational intent and utterance lowering. AquaSynth owns learned
phonetic realization, packed utterance embeddings, synth-driver controls, Faust
compilation, live instrument handles, and rendered audio. MiMo owns provider
voice rendering and audio bytes; Weksa owns the VoiceDesign request projection
and trace.
## CultCache Witnesses
- `.weksa/provider-advertisement.cc`: read-only provider advertisement witness.
- `.weksa/provider-advertisement-store.cc`: CultMesh/CultCache provider store
containing `gamecult.eve.provider_advertisement.v1`,
`weksa.operator_state.v0`, `weksa.command_boundary.v1`, and
`weksa.transport_profile.v1` records for Odin discovery.
- `.weksa/operator-state.cc`: daemon health, readiness, and runtime witness
index used by Idunn health checks and operator inspection.
- `.weksa/command-boundary.cc`: provider-owned command and lifecycle boundary
naming Weksa as owner, Idunn as lifecycle requester, and the MiMo
VoiceDesign RUDP command ingress as daemon-owned transport authority.
- `.weksa/transport-profile.cc`: target/current transport profile. Health is
published through `cultnet.transport.rudp.v0`; provider state is carried by
the CultMesh store; MiMo VoiceDesign command ingress now arrives through
`cultnet.transport.rudp.v0` instead of an HTTP route.
- `.weksa/cultmesh-publications.cc`: publication index naming current Weksa
witness surfaces and RUDP/CultMesh routes.
- `.weksa/intent/{intentId}.cc`: conversational intent documents.
- `.weksa/pronunciation/{utteranceId}.cc`: pronunciation plans and phonetic
event sequences.
- `.weksa/handoff/{utteranceId}.cc`: utterance handoffs and embedding handoff
requests for AquaSynth.
- `.weksa/speech-provider/mimo/{requestId}/command.cc`: daemon-owned RUDP
command witness for MiMo VoiceDesign ingress.
- `.weksa/speech-provider/mimo/{requestId}/interlingua.cc`: accepted or
provisionally decomposed interlingua used for a MiMo verbalization command.
- `.weksa/speech-provider/mimo/{requestId}/mimo-request.cc`: Weksa-owned MiMo
VoiceDesign request projection.
- `.weksa/speech-provider/mimo/{requestId}/receipt.cc`: provider response
receipt and artifact references.
- `.weksa/traces/{traceId}.cc`: lowering traces naming the stage that made each
decision.
- `.weksa/projects/{projectId}.cc`: language-project and flavor-profile state.
- `.weksa/cultural-ontology/{storeId}.cc`: reviewed or draft guarded cultural
ontology profile stores used by utterance lowering.
Early exporters may publish fixtures before a daemon loop exists, but the
witness names are not decorative. These are the state surfaces the daemon must
commit when the runtime lands.
No daemon runs. The Node daemon, its launchers and its RUDP health and command
shims are parked at tag `parked/weksa-node-body`.
## CultMesh Verses
- `weksa.service`: service identity, schema catalog, version, and health.
- `weksa.intent`: conversational intent documents and review queues.
- `weksa.language_project`: language-project state, flavor profiles, and
pronunciation rules.
- `weksa.cultural_ontology`: cultural ontology catalogs, profile stacks,
salience axes, linguistic affordances, activation gates, and evidence refs.
- `weksa.pronunciation`: phonetic plans, IPA spans, prosody, and trace
evidence.
- `weksa.utterance`: utterance handoff documents, packed embedding requests,
and AquaSynth binding receipts.
- `weksa.speech_provider`: provider-specific request projections and receipts
for external speech systems such as MiMo VoiceDesign.
- `weksa.operator`: daemon status, queue pressure, schema drift, and witness
freshness.
Odin ingests the Starfire Weksa provider through
`.weksa/provider-advertisement-store.cc`. Idunn tracks the daemon as target
`weksa` in the `starfire-local` swarm profile and owns restart authority through
the Weksa restart script. Odin should read Weksa's provider advertisement,
operator state, command boundary, and transport profile from the
typed provider store and RUDP command boundary; no HTTP endpoint owns provider
truth.
## Operator Dashboards
Eve is deprecated, and Thing 2 is its successor (`thing2:ruling:eve-dashboards-quarantined`, 2026-10-22). Weksa's operator Eve surface publisher is quarantined: removed from main and the build, parked at the `parked/weksa-eve-surface` tag, with follow-up `thing2:follow_up:weksa-operator-view-on-thing2` to rebuild it on Thing 2. Until Thing 2's surface contract is ready, Weksa publishes typed CultMesh state (operator state, command boundary, transport profile, provider advertisement) and no dashboard composition.
## Commands
- `intent.create`: convert writing or interlingua into typed conversational
intent.
- `intent.review`: accept, reject, or revise intent through the same commit
path used by automated jobs.
- `utterance.lower`: lower accepted intent and agent state into pronunciation
and utterance handoff documents.
- `handoff.export`: emit typed `.cc` witnesses for AquaSynth consumption.
- `speech_provider.mimo.voicedesign`: accept a Persona/agent state file plus
either a Weksa interlingua packet or raw thought text. Raw thought is first
decomposed into provisional interlingua, then lowered into a MiMo VoiceDesign
request and rendered through MiMo. The daemon accepts this command as a
`weksa.mimo_voicedesign_command.v0` document over `cultnet.transport.rudp.v0`.
- `provider.advertise`: publish `gamecult.eve.provider_advertisement.v1`.
Weksa will publish its state as typed CultMesh documents over CultCache, with no
HTTP endpoint owning truth and no dashboard composition until Thing 2's surface
contract is ready (`thing2:ruling:eve-dashboards-quarantined-2`). The document
types and verse names are not fixed; they are decided when `live-lowering` is cut.
## Forbidden Writers
- Text renderers do not own meaning.
- AquaSynth does not own conversational intent.
- Dashboard renderers do not own Weksa state.
- Fixture emitters cannot become an alternate runtime truth.
- Agent transcript memory cannot silently override typed Persona or intent
documents.
- MiMo cannot rewrite accepted spoken text or become a second Persona-state
interpreter.