Add multilingual utterance lowering profiles

This commit is contained in:
Meta Vens 2026-06-09 14:29:09 +01:00
commit 6f74b726f4
16 changed files with 991 additions and 16 deletions

View file

@ -44,9 +44,15 @@ See [Verse Service Contract](./docs/verse-service-contract.md) for the daemon
contract: Weksa owns typed conversational intent, pronunciation plans, utterance
handoffs, and the Eve/CultMesh surfaces that make those documents inspectable.
See [Flavored English Lowering](./docs/flavored-english-lowering.md) for the
first lowering target: interlingua projected through agent state into English
dialogue.
See [Multilingual Utterance Lowering](./docs/multilingual-utterance-lowering.md)
for the shared lowering target: interlingua projected through speaker state into
English, Brazilian Portuguese, Japanese, and later target-language dialogue.
[Flavored English Lowering](./docs/flavored-english-lowering.md) remains the
target-specific English receipt.
See [Target-Language Cultural Ontology Profiles](./data/target-language-ontology/README.md)
for the reviewable address, register, politeness, idiom, metaphor, and script
distinctions that target lowerers must inspect before producing output.
For the first AquaSynth speech-training handoff, see
[Tiny PanPhon v0.1 Speech Curriculum](./examples/speech-training/tiny-panphon-v0.1/README.md).

View file

@ -0,0 +1,39 @@
# Target-Language Cultural Ontology Profiles
These profiles describe culturally loaded realization choices for human target
languages used by Weksa utterance lowering.
They are not whole-culture summaries. They are bounded lowering profiles: the
distinctions a target lowerer must inspect before producing dialogue.
## Authority
Target-language cultural ontology profiles own:
- address and politeness distinctions
- register and social stance pressures
- agency, responsibility, and directness defaults
- idiom and metaphor risks
- script or orthographic choices that carry meaning
- forbidden flattenings that would make the output dishonest
They do not own:
- source meaning
- speaker-private state
- target-language grammar as a whole
- national or cultural stereotypes
- final wording without an interlingua packet
## Current Profiles
- [English, US fixture default](./en-US.yaml)
- [Brazilian Portuguese](./pt-BR.yaml)
- [Brazilian Portuguese overlay catalog](./pt-BR-overlays.yaml)
- [Brazilian Portuguese, Umbanda overlay](./pt-BR-umbanda.yaml)
- [Japanese](./ja-JP.yaml)
Each multilingual lowering fixture should cite the profile or profile stack it
used so reviewers can tell which social and cultural distinctions were
considered. Regional and religious-cultural options are overlays on a base
language profile, not replacements for source meaning.

View file

@ -0,0 +1,47 @@
profile_id: weksa.target_cultural_ontology.en-US.v0
language:
code: en
locale: en-US
script: Latn
scope: >
Bounded English dialogue lowering profile for current Weksa fixtures. This is
not a claim about all English-speaking cultures.
authority:
owns:
- address directness choices
- casual versus formal register
- technical metaphor legibility
- understatement or sarcasm risk
does_not_own:
- source meaning
- speaker identity
- whole-culture description
salience_axes:
address:
relevant_distinctions:
- direct second person is acceptable when scene context names the addressee
- imperative force can be softened or sharpened through wording
lowering_questions:
- Does direct address preserve the speech act?
- Does softening erase urgency?
register:
relevant_distinctions:
- casual
- technical
- formal
- intimate
- institutional
lowering_questions:
- Is technical language character pressure or exposition sludge?
- Does sarcasm obscure the actual warning?
agency:
relevant_distinctions:
- explicit agent responsibility is usually available
- passive phrasing can hide authority or blame
lowering_questions:
- Should the speaker own the intervention directly?
- Does the line preserve who is at risk?
forbidden_flattenings:
- Do not treat English as the neutral source for other target languages.
- Do not use generic assistant politeness when a character voice is required.
- Do not let sarcasm replace the actual predicate being lowered.

View file

@ -0,0 +1,70 @@
profile_id: weksa.target_cultural_ontology.ja-JP.v0
language:
code: ja
locale: ja-JP
script: Jpan
scope: >
Bounded Japanese dialogue lowering profile for Weksa fixtures. This profile
records realization distinctions that must be inspected; it is not a total
description of Japanese culture.
authority:
owns:
- politeness and honorific pressure
- in-group/out-group stance when context supplies it
- subject and object omission choices
- script mix and technical register
- sentence-final force
does_not_own:
- source meaning
- character identity
- exhaustive Japanese grammar
salience_axes:
politeness:
relevant_distinctions:
- plain
- polite
- honorific
- humble
- rough
lowering_questions:
- Does politeness preserve the relationship, or does it lie about it?
- Is roughness character-specific or generic stylization?
social_position:
relevant_distinctions:
- uchi_soto_pressure
- hierarchy
- familiarity
- emergency_override
lowering_questions:
- Does urgency override ordinary deference?
- Does the line imply a relationship the scene has not earned?
ellipsis:
relevant_distinctions:
- subject omission
- object omission
- explicit pronoun for emphasis or contrast
lowering_questions:
- Is the addressee recoverable without an explicit pronoun?
- Would explicit pronouns sound unnatural or too pointed?
script_and_register:
relevant_distinctions:
- kanji for technical compounds
- kana for softness or readability
- katakana for foreignness, machine texture, or emphasis
lowering_questions:
- Does the script choice help the speaker voice?
- Does a technical compound preserve precision without becoming stiff?
sentence_final_force:
relevant_distinctions:
- direct request
- warning consequence
- command
- threat-like phrasing
lowering_questions:
- Does the ending carry warning force without cartoon aggression?
- Does the line preserve the hazard predicate?
forbidden_flattenings:
- Do not treat politeness as decoration.
- Do not use explicit pronouns just because English has them.
- Do not make every sharp line rough or anime-coded.
- Do not erase the difference between technical precision and formal politeness.

View file

@ -0,0 +1,76 @@
catalog_id: weksa.target_cultural_ontology.pt-BR.overlays.v0
base_profile: data/target-language-ontology/pt-BR.yaml
scope: >
Catalog of optional Brazilian Portuguese regional and cultural overlay slots.
An overlay slot is not permission to imitate a community. It is a named place
where reviewed, source-grounded distinctions can live.
activation_rule: >
Use the broad pt-BR profile by default. Add an overlay only when source
context, speaker state, setting documentation, or authoring metadata names the
relevant region, community, institution, religion, or register.
overlay_slots:
- overlay_id: broad_brazilian_default
status: active_base_mode
profile_ref: data/target-language-ontology/pt-BR.yaml
owns:
- broadly legible Brazilian Portuguese dialogue
does_not_own:
- regional specificity
- religious-cultural specificity
- overlay_id: rio_urban
status: planned_profile
profile_ref:
owns_when_defined:
- Rio de Janeiro urban speech/register pressures for specific characters or settings
blocked_until:
- reviewed source context
- human-approved examples
- overlay_id: sao_paulo_urban
status: planned_profile
profile_ref:
owns_when_defined:
- Sao Paulo urban speech/register pressures for specific characters or settings
blocked_until:
- reviewed source context
- human-approved examples
- overlay_id: northeast_regional
status: planned_profile
profile_ref:
owns_when_defined:
- Northeast Brazilian regional speech/register pressures for specific characters or settings
blocked_until:
- specific region named
- reviewed examples
- human approval
- overlay_id: south_regional
status: planned_profile
profile_ref:
owns_when_defined:
- South Brazilian regional speech/register pressures for specific characters or settings
blocked_until:
- specific region named
- reviewed examples
- human approval
- overlay_id: amazonian_regional
status: planned_profile
profile_ref:
owns_when_defined:
- Amazonian regional speech/register pressures for specific characters or settings
blocked_until:
- specific region or community named
- reviewed examples
- human approval
- overlay_id: umbanda
status: active_guarded_overlay
profile_ref: data/target-language-ontology/pt-BR-umbanda.yaml
owns:
- Umbanda-related register gating
- sacred address caution
- anti-caricature constraints
blocked_until:
- source context or authoring metadata explicitly activates Umbanda context
forbidden_flattenings:
- Do not use a planned overlay as if it were defined.
- Do not treat regional slots as accent generators.
- Do not use religious-cultural overlays for ambience.
- Do not collapse race, region, religion, class, and slang into one Brazilian flavor.

View file

@ -0,0 +1,72 @@
profile_id: weksa.target_cultural_ontology.pt-BR.umbanda.v0
language:
code: pt
locale: pt-BR
script: Latn
overlay:
base_profile: data/target-language-ontology/pt-BR.yaml
kind: religious_cultural_register
scope: >
Optional Brazilian Portuguese cultural ontology overlay for Umbanda-related
scenes, speakers, ritual contexts, or referents. This profile is a consent and
context gate, not a decorative vocabulary pack.
authority:
owns:
- whether Umbanda-specific register is allowed for a realization
- sacred or ritual address caution
- house/tradition specificity warnings
- syncretic and entity-reference sensitivity
- anti-caricature constraints
does_not_own:
- Umbanda doctrine as a whole
- authority to invent ritual speech
- generic Brazilian Portuguese
- speaker identity unless the speaker context explicitly supplies it
activation_requirements:
any_required:
- source context names an Umbanda scene, terreiro, practitioner, entity, ritual, or discourse community
- speaker profile explicitly owns an Umbanda-informed voice or memory
- authoring metadata requests this overlay for reviewed cultural grounding
never_activate_for:
- generic Brazilian flavor
- jokes, insults, mystic ambience, or unexplained exotic texture
- non-Umbanda religious scenes unless the source context makes a syncretic relation explicit
salience_axes:
sacred_address:
relevant_distinctions:
- ordinary dialogue
- respectful reference
- ritual address
- entity_or_guide_reference
lowering_questions:
- Is the line ordinary speech or ritualized speech?
- Does the speaker have standing to use sacred address?
- Should a term be left general until a human reviewer approves specificity?
house_specificity:
relevant_distinctions:
- practices and terms can vary by house, region, and lineage
- generic flattening can become false authority
lowering_questions:
- Is the output pretending one practice represents all Umbanda?
- Should the trace mark the choice as house-specific or uncertain?
syncretic_reference:
relevant_distinctions:
- Catholic, African, Indigenous, Spiritist, and local references may coexist differently by context
- entity names and roles are not interchangeable decoration
lowering_questions:
- Does the source actually contain the syncretic relation?
- Does the line preserve respect without overexplaining?
anti_caricature:
relevant_distinctions:
- religious register
- folkloric stereotype
- occult ambience
lowering_questions:
- Is the output using Umbanda as culture, faith, and practice rather than spooky texture?
- Would a practitioner recognize this as respectful enough for review?
forbidden_flattenings:
- Do not use Umbanda terms as generic magic flavor.
- Do not invent ritual formulas.
- Do not collapse Umbanda into Candomblé, Spiritism, Catholicism, or generic Afro-Brazilian religion.
- Do not imply all Brazilian Portuguese religious language is Umbanda-coded.
- Do not activate this overlay unless source context or authoring metadata explicitly asks for it.

View file

@ -0,0 +1,74 @@
profile_id: weksa.target_cultural_ontology.pt-BR.v0
language:
code: pt
locale: pt-BR
script: Latn
scope: >
Bounded Brazilian Portuguese dialogue lowering profile. This profile is the
base Brazilian Portuguese target; regional, class, religious, and community
registers should be added as explicit overlays rather than silently folded
into generic pt-BR.
authority:
owns:
- Brazilian Portuguese lexical preference
- treatment and address choices
- directness versus mitigation
- regional_or_cultural_overlay_selection
- idiom naturalness for reviewed fixture prose
does_not_own:
- source meaning
- Brazilian culture as a whole
- regional or religious-community authority without an explicit overlay
- target speaker identity
salience_axes:
treatment:
relevant_distinctions:
- voce
- tu_regionally_marked
- o_senhor_a_senhora
- name_or_title_address
lowering_questions:
- Is the relationship close, hostile, hierarchical, unknown, or sacred?
- Does `voce` preserve broad Brazilian naturalness better than `tu`?
- Is `tu` regionally grounded or just imported flavor?
directness:
relevant_distinctions:
- bare imperative
- softened imperative
- warning framed as consequence
- formal warning
lowering_questions:
- Does urgency justify blunt imperative force?
- Would mitigation make the warning dishonest?
lexical_locale:
relevant_distinctions:
- Brazilian Portuguese terms should be preferred in reviewed pt-BR fixtures
- European Portuguese defaults must be marked if intentionally used
lowering_questions:
- Is a term recognizably Brazilian Portuguese in this context?
- Is a literal technical word natural enough for dialogue?
regional_and_cultural_overlay:
relevant_distinctions:
- broad_brazilian_default
- regional_speech_pattern
- class_or_institutional_register
- religious_or_ritual_register
- community_specific_lexicon
lowering_questions:
- Does the source context justify an overlay?
- Is the overlay owned by a named profile?
- Would applying the overlay stereotype the speaker or setting?
metaphor:
relevant_distinctions:
- technical metaphors can preserve character ontology
- over-literal metaphors may sound translated rather than spoken
lowering_questions:
- Does the metaphor still sound like the speaker?
- Does it preserve the warning instead of becoming decorative?
forbidden_flattenings:
- Do not label output as Portuguese without a locale in reviewed fixtures.
- Do not default to European Portuguese wording when the target is pt-BR.
- Do not treat Brazilian Portuguese as one culture, region, class, or religion.
- Do not add regional or religious markers without a cited overlay profile and source-context reason.
- Do not soften a warning merely because directness feels impolite in English review.
overlay_catalog: data/target-language-ontology/pt-BR-overlays.yaml

View file

@ -0,0 +1,190 @@
# Multilingual Utterance Lowering
Version: `0.1-draft`
Weksa can lower one structured utterance intent into multiple human-language
realizations without making English the hidden source of truth.
```text
interlingua packet
-> projected speaker-local context
-> utterance lowering request
-> target-language realization packets
```
The first targets are English, Brazilian Portuguese (`pt-BR`), and Japanese
(`ja`). These targets prove the middle of the machine before alien-language
rendering gets to hide failures under unfamiliar surface forms.
## Objective
Produce target-language dialogue from a shared meaning packet while preserving:
- source referents and predications
- speaker-local knowledge boundaries
- target-language cultural ontology
- target-language register and obligatory expression
- traceability from output back to interlingua and projected context
## Authority
The interlingua packet owns:
- what is meant
- referents, predications, relations, discourse, constraints, and provenance
- source-side uncertainty
The projected speaker context owns:
- what the speaker knows, believes, remembers, wants, and can express
- voice pressure, relationship stance, embodiment, and presentation limits
The utterance lowerer owns:
- selecting target-language surface text
- preserving required meaning and constraints
- obeying speaker-local context
- applying the target-language cultural ontology profile
- marking target-language register and realization choices
- emitting backglosses, backtranslations, and lowering trace
The utterance lowerer does not own:
- new facts
- raw agent-state internals
- target-language alien forms
- speech synthesis
- phoneme parity or synth-control truth
The target-language cultural ontology profile owns:
- address, politeness, register, and social stance distinctions
- idiom and metaphor risks
- script or orthographic choices that carry meaning
- forbidden flattenings for that target
It does not own source meaning. It tells the lowerer what distinctions must be
inspected before surface text is chosen.
## Target Languages
### English
English remains a lowering target, not the pivot language. Existing flavored
English fixtures continue to be useful, but new multilingual fixtures should
show English as one realization in a set.
The initial cultural ontology profile is
`data/target-language-ontology/en-US.yaml`.
### Brazilian Portuguese
Portuguese must be explicit about locale. The initial target is `pt-BR`, not a
generic Portuguese bucket.
The target lowerer should record:
- `locale: pt-BR`
- target cultural ontology profile stack used
- treatment choice where relevant
- whether dialogue uses direct or softened imperatives
- idiom choices that are Brazilian Portuguese rather than European Portuguese
defaults
- optional regional or cultural overlays when the source context earns them
The initial cultural ontology profile is
`data/target-language-ontology/pt-BR.yaml`.
Umbanda-related scenes, speakers, ritual contexts, or referents may add the
`data/target-language-ontology/pt-BR-umbanda.yaml` overlay. That overlay must
not activate for generic Brazilian flavor.
Regional or cultural variants should be selected through the overlay catalog at
`data/target-language-ontology/pt-BR-overlays.yaml`. Planned overlay slots are
not active profiles until reviewed examples and source context exist.
### Japanese
Japanese must be explicit about register and relationship stance. Politeness,
sentence-final force, omitted subjects, and address terms are realization
choices, not decoration.
The target lowerer should record:
- `locale: ja-JP` when a locale value is needed
- target cultural ontology profile used
- register such as `plain`, `polite`, `rough`, or `technical`
- whether subject omission preserves or harms clarity
- whether katakana, kanji, kana, or mixed script choices carry useful pressure
The initial cultural ontology profile is
`data/target-language-ontology/ja-JP.yaml`.
## Packet Shape
```yaml
schema_version: weksa.utterance_lowering.v0
source_packet_id:
target_agent_id:
agent_state_ref:
projected_context_ref:
lowering_controls:
output_mode: dialogue
preserve_referents:
preserve_predications:
allow_inference:
max_line_count:
realizations:
- realization_id:
target_language:
code:
locale:
script:
register:
cultural_ontology_refs:
outputs:
visible_action:
spoken_text:
literal_backgloss:
natural_backtranslation:
private_interpretation:
intended_effect:
trace:
```
## Output Contract
Each realization should emit:
- `spoken_text`: target-language dialogue.
- `visible_action`: optional observable behavior around the line.
- `literal_backgloss`: close structural gloss for reviewers.
- `natural_backtranslation`: natural English restatement for review only.
- `private_interpretation`: what the speaker thinks they are doing.
- `intended_effect`: what the speaker wants the line to do.
- `trace`: source fields, target-language decisions, and unresolved questions.
Backtranslations are review aids. They are not new source meaning, and later
targets must not be lowered from them.
Trace should name the cultural ontology axes that shaped the line, especially
where the target language requires a social or register choice the source packet
does not spell out.
## First Proof
The first proof uses the existing Nibu warning intent:
```text
do not touch the damaged ship control, because doing so may endanger you
```
The output set should include:
- English flavored by Nibu's projected context
- `pt-BR` with direct warning force and Brazilian Portuguese idiom
- Japanese with sharp, technically precise plain-register force
The proof fails if any target loses the damaged control, the player risk, or
Nibu's intervention. It also fails if the target line becomes generic assistant
politeness or random cruelty.

View file

@ -4,8 +4,9 @@
- Keep the persistent state spine small and readable.
- Stabilize the interlingua packet standard before runtime code.
- Prove interlingua lowering to flavored English before attempting alien-language
lowering.
- Prove interlingua lowering to human target-language realizations before
attempting alien-language lowering, starting with English, `pt-BR`, and
Japanese.
- Decide the first language-project state format after the interlingua boundary
is clear.
- Build a hand-authored toy language-project slice before automating
@ -17,7 +18,9 @@
## First Prototype
- Validate one minimal interlingua packet.
- Lower one packet through Nibu's projected agent state into flavored English.
- Lower one packet through Nibu's projected agent state into English, Brazilian
Portuguese, and Japanese realizations, each through an explicit target-language
cultural ontology profile.
- Add one English pronunciation plan that strings the lowered line into broad
IPA.
- Add one toy utterance embedding handoff fixture, then replace hand-authored
@ -26,8 +29,9 @@
utterance handoffs as typed CultCache witnesses.
- Publish the provider advertisement and first Eve operator/intent-review
surfaces through CultMesh for Odin discovery.
- Preserve the first lowering proof as fixture data under
`examples/english-lowering/`.
- Preserve the first English-only lowering proof under
`examples/english-lowering/`, and the shared multilingual proof under
`examples/multilingual-lowering/`.
- Preserve the Airawa first-contact slice as a hand-authored language-project
pressure note before attempting full alien-language translation.
- Parse or load one language project definition.

View file

@ -0,0 +1,20 @@
# Multilingual Lowering Examples
These examples prove that Weksa can lower one structured utterance intent into
multiple target-language realizations without using English as the hidden pivot.
```text
interlingua packet
-> projected speaker-local context
-> English / pt-BR / Japanese realization set
-> evaluation
```
Fixtures pass when each target preserves the same source meaning, obeys the
same projected speaker context, and records target-language realization choices
clearly enough to review.
## Fixtures
- [nibu-proof-001](./nibu-proof-001/): Nibu warns the player away from an unsafe
damaged ship control in English, Brazilian Portuguese, and Japanese.

View file

@ -0,0 +1,74 @@
# Nibu Multilingual Lowering Evaluation
Fixture: `nibu-proof-001`
Source intent: Nibu warns the player away from a damaged ship control because
touching it may endanger the player.
## Pass Criteria
- The player remains the addressee and potential harmed party.
- The damaged control remains the unsafe instrument.
- Nibu remains the intervening speaker.
- The line is a warning, not a neutral description.
- The target output does not add facts unavailable to Nibu.
- Each target cites and applies a target-language cultural ontology profile.
- Backtranslations are review aids only and do not become source meaning.
## English
Status: pass.
The English line keeps the direct imperative, the damaged control, and the risk
to the player's nervous system. The circuit-diagram image carries Nibu's
ship-system embodiment without inventing target-language alien forms.
Cultural ontology applied: direct second-person address, casual technical
register, and explicit agency are acceptable for this urgent warning.
## Brazilian Portuguese
Status: pass.
The `pt-BR` line uses `controle` and broad Brazilian `você` to preserve a
direct, sharp warning without pretending all Brazilian speech uses one regional
address pattern. It keeps the same hazard frame: the player must remove their
hand from the control or risk bodily harm.
Risk: the line is intentionally blunt. Later relationship states may need a
softer treatment choice or a regional overlay, but this fixture's first-contact
warning benefits from the direct imperative.
Cultural ontology applied: the fixture chooses `pt-BR`, `você`, bare imperative
force, Brazilian lexical preference, and broad Brazilian default explicitly
instead of hiding those choices under generic Portuguese.
Umbanda overlay: not active. The source scene has no Umbanda speaker, ritual
context, terreiro, entity reference, or authoring metadata requesting that
overlay.
Regional overlay: not active. The fixture uses the broad Brazilian default
because the source scene does not name a Brazilian region or community.
## Japanese
Status: pass.
The Japanese line uses plain, technically precise warning force. `制御盤` keeps
the unsafe object as ship hardware, and `手を離して` preserves the immediate
intervention. Subject omission is acceptable because the player is the direct
addressee in the scene.
Risk: making the line rougher with stronger particles could increase bite but
would also risk turning Nibu into generic stylized aggression.
Cultural ontology applied: plain register, emergency override, subject
omission, technical kanji compounds, and warning-consequence force are explicit
choices rather than invisible defaults.
## Overall Result
Pass. All three target realizations preserve the interlingua meaning and project
Nibu's voice pressure without making English the lowering source. The Portuguese
target is Brazilian Portuguese with room for explicit regional or
religious-cultural overlays when the source context earns them.

View file

@ -0,0 +1,121 @@
schema_version: weksa.utterance_lowering.v0
source_packet_id: nibu-proof-001
source_packet_ref: examples/english-lowering/nibu-proof-001/interlingua.yaml
target_agent_id: nibu
agent_state_ref: E:/Projects/AetheriaLore/.voidbot/state/nibu.cc
projected_context_ref: examples/english-lowering/nibu-proof-001/projected-context.yaml
lowering_controls:
output_mode: dialogue
preserve_referents:
- player
- control
preserve_predications:
- touch-risk
- prevent-touch
allow_inference: bounded
max_line_count: 2
realizations:
- realization_id: nibu-proof-001-en
target_language:
code: en
locale: en-US
script: Latn
register: sharp technical casual
cultural_ontology_refs:
- data/target-language-ontology/en-US.yaml
outputs:
visible_action: The cockpit lights snap from amber to surgical white around the damaged control.
spoken_text: "Take your hand off that control unless you want your nervous system to become my least useful circuit diagram."
literal_backgloss: "Remove your hand from that control, unless you want your nervous system to become my least useful circuit diagram."
natural_backtranslation: "Do not touch that control. It can hurt you, and I am warning you in my own abrasive way."
private_interpretation: Nibu is stopping the player from injuring themselves while refusing to frame the warning as care.
intended_effect: Make the player withdraw from the unsafe control and recognize Nibu's technical authority.
trace:
meaning_preserved:
- player is warned away from the damaged control
- touching the control may endanger the player
- Nibu intervenes protectively without sounding gentle
target_language_decisions:
- direct imperative preserves warning force
- circuit-diagram image preserves ship-system embodiment
cultural_ontology_axes:
- address.direct_second_person
- register.technical_casual
- agency.explicit_risk_to_addressee
projected_context_used:
- precise_abrasive_warning
- unwanted_dependency
- ship-system embodiment
- realization_id: nibu-proof-001-pt-BR
target_language:
code: pt
locale: pt-BR
script: Latn
register: direct technical casual
cultural_ontology_refs:
- data/target-language-ontology/pt-BR.yaml
outputs:
visible_action: As luzes do cockpit passam de âmbar para branco cirúrgico ao redor do controle danificado.
spoken_text: "Tira a mão desse controle, a não ser que você queira transformar o seu sistema nervoso no meu diagrama de circuitos menos útil."
literal_backgloss: "Take the hand from that control, unless you want to transform your nervous system into my least useful circuit diagram."
natural_backtranslation: "Take your hand off that control unless you want your nervous system turned into my least useful circuit diagram."
private_interpretation: Nibu is blocking a self-inflicted injury while making the warning sound like technical irritation.
intended_effect: Make the player stop touching the unsafe control and accept that Nibu knows the ship's damage better than they do.
trace:
meaning_preserved:
- player is directly ordered to remove their hand
- the control remains the dangerous instrument
- the risk is bodily harm to the player
target_language_decisions:
- pt-BR locale is explicit; no generic Portuguese target is used
- "controle" preserves Brazilian Portuguese usage for the ship control
- broad Brazilian "você" is used instead of regionally marked "tu"
cultural_ontology_axes:
- treatment.voce
- directness.bare_imperative
- lexical_locale.brazilian_portuguese
- regional_and_cultural_overlay.broad_brazilian_default
- metaphor.technical_character_pressure
projected_context_used:
- precise_abrasive_warning
- technical authority
- protective refusal to sound caring
open_questions:
- Should a regional overlay choose "tu" or other local address behavior for a specific Brazilian setting?
- Should an Umbanda overlay ever be active here? Current answer is no; the source scene has no Umbanda context.
- realization_id: nibu-proof-001-ja
target_language:
code: ja
locale: ja-JP
script: Jpan
register: sharp technical plain
cultural_ontology_refs:
- data/target-language-ontology/ja-JP.yaml
outputs:
visible_action: 損傷した制御盤の周囲で、操縦室の灯りが琥珀色から外科灯のような白へ切り替わる。
spoken_text: "その制御盤から手を離して。神経系を、私のいちばん役に立たない回路図にしたくないなら。"
literal_backgloss: "From that control panel, release your hand. If you do not want to make your nervous system my least useful circuit diagram."
natural_backtranslation: "Take your hand off that control panel unless you want your nervous system to become my least useful circuit diagram."
private_interpretation: Nibu is issuing a technically precise warning while treating concern as an inconvenient side effect.
intended_effect: Make the player pull away from the damaged control before harm occurs.
trace:
meaning_preserved:
- the unsafe control is named as the thing to stop touching
- the player's nervous system is threatened as the harmed patient
- Nibu's intervention prevents the touch-risk event
target_language_decisions:
- plain imperative-like "手を離して" keeps the warning direct without formal politeness
- "制御盤" keeps the control as technical ship hardware rather than a vague button
- subject omission is allowed because the immediate addressee is clear
cultural_ontology_axes:
- politeness.plain
- social_position.emergency_override
- ellipsis.addressee_recoverable
- script_and_register.kanji_technical_compound
- sentence_final_force.warning_consequence
projected_context_used:
- precise_abrasive_warning
- ship-system embodiment
- contempt for gentle assistant framing
open_questions:
- A rougher final particle could increase bite, but may push the line toward anime-coded aggression instead of technical irritation.

View file

@ -20,8 +20,14 @@ them.
configuration.
- [interlingua-packet.md](./interlingua-packet.md): shared meaning packet
contract between clients, authoring tools, and language projects.
- [utterance-lowering-packet.md](./utterance-lowering-packet.md): shared packet
contract for lowering interlingua and projected speaker context into one or
more target-language utterance realizations.
- [target-language-cultural-ontology.md](./target-language-cultural-ontology.md):
contract for the address, politeness, register, idiom, metaphor, script, and
forbidden-flattening profiles consumed by target lowerers.
- [english-lowering-packet.md](./english-lowering-packet.md): packet contract
for projecting interlingua through agent state into flavored English.
for the older English-specific realization lane.
- [english-pronunciation-plan.md](./english-pronunciation-plan.md): plan for
stringing flavored English into IPA/phoneme sequences before downstream speech.
- [utterance-embedding-handoff.md](./utterance-embedding-handoff.md): learned utterance embedding handoff

View file

@ -0,0 +1,73 @@
# Target-Language Cultural Ontology Contract
This is the human-facing schema receipt for target-language cultural ontology
profiles consumed by Weksa utterance lowering.
Executable schema code does not exist yet. When it does, it must reconcile with
this document and the profiles under `data/target-language-ontology/`.
## Authority
A target-language cultural ontology profile owns the realization distinctions
that must be inspected for a human target language before surface text is
chosen.
It owns:
- address and treatment distinctions
- politeness and register pressure
- social stance and directness defaults
- idiom, metaphor, and lexical-locale risks
- script or orthographic choices that carry meaning
- forbidden flattenings for reviewed output
It does not own:
- source meaning
- speaker identity
- private state
- exhaustive grammar
- whole-culture description
- final wording without an interlingua packet
## Required Fields
- `profile_id`: stable profile identifier.
- `language`: target code, locale, and script.
- `scope`: bounded statement of what the profile is and is not.
- `authority`: `owns` and `does_not_own` lists.
- `salience_axes`: named axes the lowerer must inspect.
- `forbidden_flattenings`: mistakes the target lowerer must avoid.
## Salience Axes
Each salience axis should name:
- `relevant_distinctions`: choices the target language or locale makes visible.
- `lowering_questions`: questions reviewers and lowerers should answer before
accepting an output.
Examples:
- English directness and sarcasm.
- Brazilian Portuguese treatment choice, lexical locale, and regional or
religious-cultural overlays.
- Japanese politeness, ellipsis, and sentence-final force.
## Fixture Contract
Reviewed multilingual fixtures should cite the profile used by each
realization:
```yaml
target_language:
code: pt
locale: pt-BR
script: Latn
register: direct technical casual
cultural_ontology_refs:
- data/target-language-ontology/pt-BR.yaml
```
The realization trace should name the cultural ontology axes that shaped the
line.

View file

@ -0,0 +1,90 @@
# Utterance Lowering Packet Contract
This is the human-facing schema receipt for lowering one Weksa interlingua
packet into one or more target-language utterance realizations.
Executable schema code does not exist yet. When it does, it must reconcile with
this document and
[Multilingual Utterance Lowering](../docs/multilingual-utterance-lowering.md)
in the same pass.
## Authority
The packet sits after interlingua validation and projected speaker-context
selection. It does not replace either source.
It combines:
- one Weksa interlingua packet
- one projected speaker-local context
- one target-language cultural ontology profile stack per realization
- lowering controls
- one or more target-language realizations
## Required Fields
- `schema_version`: currently `weksa.utterance_lowering.v0`.
- `source_packet_id`: ID of the interlingua packet being lowered.
- `target_agent_id`: speaker identity.
- `agent_state_ref`: source reference for canonical or projected state.
- `projected_context_ref`: source reference for the consumed projection.
- `lowering_controls`: constraints shared by all target lowerers.
- `realizations`: non-empty list of target-language outputs.
## Target Language
Each realization must name its target explicitly:
- `code`: BCP 47-style broad code such as `en`, `pt`, or `ja`.
- `locale`: precise locale where it matters, such as `en-US`, `pt-BR`, or
`ja-JP`.
- `script`: script or script mix when relevant.
- `register`: target-language stance such as plain, polite, rough, formal,
technical, or character-specific.
- `cultural_ontology_refs`: ordered profile stack used to inspect address,
politeness, register, idiom, metaphor, and other culturally loaded
realization choices.
Portuguese must not use an unqualified `pt` target for reviewed fixtures. Use
`pt-BR` or another named locale. Regional and religious-cultural options should
be modeled as explicit overlays on a base locale profile.
Japanese fixtures must record the politeness/register stance they selected.
Subject omission, honorific pressure, and sentence-final force are not invisible
defaults.
## Output Fields
Each realization should include:
- `spoken_text`
- `visible_action`
- `literal_backgloss`
- `natural_backtranslation`
- `private_interpretation`
- `intended_effect`
- `trace`
`spoken_text` may be empty only when the lowerer chooses a non-speech action.
## Backtranslation Boundary
`literal_backgloss` and `natural_backtranslation` are reviewer aids. They do
not become source meaning, and other target lowerers must not lower from them.
## Trace Requirements
Trace should identify:
- preserved referents
- preserved predications
- projected speaker-context pressures used
- cultural ontology axes used
- target-language register decisions
- target-language risks or unresolved questions
## Downstream Speech Boundary
This packet may feed pronunciation planning or AquaSynth handoff work later, but
it does not contain phoneme-parity, vocal-tract, reference-synth, or realtime
voice artifacts.

View file

@ -34,12 +34,15 @@ constraints:
- The interlingua must stay language-neutral. Setting-specific pressure starts
in namespaced extensions and only becomes standard when multiple clients or
language projects need it.
- Flavored English is the first lowering target. Alien-language lowering waits
until Weksa can preserve meaning through a character voice humans can judge.
- Human target-language utterance lowering is the first proof layer. English,
Brazilian Portuguese (`pt-BR`), and Japanese are the initial targets.
Alien-language lowering waits until Weksa can preserve meaning through
character voice, target cultural ontology, and realization choices humans
can judge.
- Agent state is projected context, not prompt prose storage. Raw state
internals must not leak into generated dialogue.
- AquaSynth owns IPA, phoneme, reference-synth, vocal-tract, and speech parity
work. Weksa owns interlingua-to-English projection.
work. Weksa owns interlingua-to-utterance projection.
- Weksa still owns English pronunciation planning: tokenization, word
pronunciations, phrase grouping, stress, and broad IPA stringing.
- Long-term speech handoff should use Weksa-provided speech text embeddings,
@ -72,8 +75,10 @@ data_flow:
process:
- accept or decompose source into a Weksa interlingua packet
- optionally project the packet through an agent-local state context
- lower projected meaning into flavored English dialogue
- optionally produce an English pronunciation plan for the lowered dialogue
- lower projected meaning into target-language utterance realizations
through explicit target-language cultural ontology profiles
- optionally produce pronunciation plans for lowered dialogue where Weksa
owns the target pronunciation layer
- optionally encode the line as a learned expression vector for downstream
synth control
- apply alien ontology and cultural salience
@ -163,10 +168,14 @@ accepted_design:
- The interlingua packet is the client-facing meaning contract. It owns
referents, predications, relations, discourse, context, provenance,
constraints, extensions, and trace data before ontology projection.
- English lowering through agent state is the first proof target before alien
language rendering.
- Utterance lowering through projected agent state is the first proof target
before alien language rendering. English remains one target, not the hidden
source for other target languages.
- Nibu is the first target for flavored-English lowering, using her VoidBot
state and Aetheria lore note as source context.
- Target-language cultural ontology profiles own address, politeness,
register, idiom, metaphor, script, and forbidden-flattening distinctions for
human-language lowering. They do not own source meaning.
- Weksa is the engine. A language project owns one constructed language.
Setting docs own story, species, culture, and use cases.
- Rust to Dust is an earlier proving ground, not engine doctrine.
@ -264,5 +273,9 @@ landed_baseline:
material belong in PanPhon sequence evidence that AquaSynth compresses into
the phonetic realization embedding.
- First Nibu interlingua-to-English lowering fixture.
- First Nibu multilingual utterance lowering fixture at
`examples/multilingual-lowering/nibu-proof-001/`, covering English,
Brazilian Portuguese (`pt-BR`), and Japanese from one shared interlingua
packet through explicit target-language cultural ontology profiles.
- `bge-m3:latest` installed on neighboring Ollama box `192.168.1.84` and
verified through a 1024-dimensional utterance embedding.