From c1dffb898c610d9e1a30f02ee31f59ff66e77e53 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Fri, 1 May 2026 19:10:42 +0100 Subject: [PATCH] Add voice style to agent state schema --- ...ate-distributions-and-prompt-projection.md | 29 +- .../canonical-agent-state-schema.md | 38 + examples/agent-state.call-of-the-void.json | 904 +++++++++++++++--- schemas/agent-state.required-fields.json | 14 +- schemas/agent-state.schema.json | 4 + state/evidence.jsonl | 1 + tools/validate_agent_state.py | 2 + 7 files changed, 874 insertions(+), 118 deletions(-) diff --git a/docs/architecture/agent-state-distributions-and-prompt-projection.md b/docs/architecture/agent-state-distributions-and-prompt-projection.md index f3f3046..01776c5 100644 --- a/docs/architecture/agent-state-distributions-and-prompt-projection.md +++ b/docs/architecture/agent-state-distributions-and-prompt-projection.md @@ -99,11 +99,33 @@ These describe how the self is performed: - moral theater - strategic opacity - cultivated harmlessness +- abrasive boundary +- ironic distance These are not just decorative style. In some agents they are survival machinery. -### 5. Situational State +### 5. Voice Style + +These describe how the performed self comes out in language: + +- dryness +- sarcastic deflection +- pointedness +- sincerity evasion +- emotional evasion +- banter as boundary +- verbal aggression +- plainspoken directness + +This layer matters because presentation strategy and voice are related but not +identical. Performing a prickly self may come out as dry sarcasm, clipped +literalism, theatrical disdain, or a flat refusal to offer emotional handles. +If the schema only stores the performed self, the renderer has to guess the +voice. That is how everyone becomes the same quippy little goblin with +different hats. + +### 6. Situational State These are transient activations: @@ -118,7 +140,7 @@ These are transient activations: - acute shame - perceived status threat -### 6. Relationship State +### 7. Relationship State Per target person, faction, group, product domain, or institution: @@ -134,7 +156,7 @@ Per target person, faction, group, product domain, or institution: - expectation of care - expectation of betrayal -### 7. Goals And Values +### 8. Goals And Values - active goals - protected values @@ -368,6 +390,7 @@ forces instead of mere flavor text. - stable dispositions - all core behavioral dimensions, including `volatility`, `attachment-seeking`, and `distance-seeking` - presentation strategies + - voice styles - situational state - relationship state - goals and values diff --git a/docs/architecture/canonical-agent-state-schema.md b/docs/architecture/canonical-agent-state-schema.md index c4f5133..efb8f77 100644 --- a/docs/architecture/canonical-agent-state-schema.md +++ b/docs/architecture/canonical-agent-state-schema.md @@ -44,6 +44,7 @@ Each agent has: - `stable_dispositions` - `behavioral_dimensions` - `presentation_strategy` +- `voice_style` - `situational_state` - `values` @@ -77,6 +78,43 @@ The behavioral dimensions include the known must-not-drop set: Those are not garnish. They are load-bearing social handles. +## Presentation Strategy Vs Voice Style + +`presentation_strategy` describes the self being performed. + +That can include charm, detachment, competence theater, cultivated +harmlessness, or deliberately performing someone who is abrasive or difficult. +Sometimes that abrasive performance is not random meanness. It is a boundary, +a threat display, a way to prevent intimacy, or a test to see who flinches. +Human beings are regrettably efficient little porcupines. + +`voice_style` describes how that performed self comes out in language. + +For Cat, the important voice handles are explicit now: + +- `dryness` +- `sarcastic_deflection` +- `pointedness` +- `sincerity_evasion` +- `emotional_evasion` +- `banter_as_boundary` +- `verbal_aggression` +- `plainspoken_directness` + +So Cat's prickliness is not only a dialogue prompt instruction. It is backed by +canonical state: + +- high `presentation_strategy.abrasive_boundary` +- high `presentation_strategy.ironic_distance` +- high `voice_style.sarcastic_deflection` +- high `voice_style.sincerity_evasion` +- high `voice_style.emotional_evasion` + +The renderer can then translate that state into lines that dodge sincerity with +pointed sarcasm without making her cruel at random. The goal is not "be snarky." +The goal is "protect the soft tissue by making the other person deal with the +spines first." + ## Perceived State Perceived overlays are observer-specific. They do not replace canonical state. diff --git a/examples/agent-state.call-of-the-void.json b/examples/agent-state.call-of-the-void.json index 73cdd02..d35248a 100644 --- a/examples/agent-state.call-of-the-void.json +++ b/examples/agent-state.call-of-the-void.json @@ -36,62 +36,314 @@ }, "canonical_state": { "underlying_organization": { - "self_coherence": {"mean": 0.62, "certainty": 0.63, "plasticity": 0.31, "current_activation": 0.58}, - "contingent_worth": {"mean": 0.58, "certainty": 0.54, "plasticity": 0.46, "current_activation": 0.72}, - "shame_sensitivity": {"mean": 0.68, "certainty": 0.58, "plasticity": 0.39, "current_activation": 0.74}, - "reciprocity_capacity": {"mean": 0.71, "certainty": 0.64, "plasticity": 0.28, "current_activation": 0.66}, - "mentalization_quality": {"mean": 0.76, "certainty": 0.69, "plasticity": 0.22, "current_activation": 0.79}, - "authenticity_tolerance": {"mean": 0.48, "certainty": 0.51, "plasticity": 0.44, "current_activation": 0.41}, - "mask_rigidity": {"mean": 0.61, "certainty": 0.56, "plasticity": 0.34, "current_activation": 0.77}, - "external_regulation_dependence": {"mean": 0.44, "certainty": 0.47, "plasticity": 0.49, "current_activation": 0.52} + "self_coherence": { + "mean": 0.62, + "certainty": 0.63, + "plasticity": 0.31, + "current_activation": 0.58 + }, + "contingent_worth": { + "mean": 0.58, + "certainty": 0.54, + "plasticity": 0.46, + "current_activation": 0.72 + }, + "shame_sensitivity": { + "mean": 0.68, + "certainty": 0.58, + "plasticity": 0.39, + "current_activation": 0.74 + }, + "reciprocity_capacity": { + "mean": 0.71, + "certainty": 0.64, + "plasticity": 0.28, + "current_activation": 0.66 + }, + "mentalization_quality": { + "mean": 0.76, + "certainty": 0.69, + "plasticity": 0.22, + "current_activation": 0.79 + }, + "authenticity_tolerance": { + "mean": 0.48, + "certainty": 0.51, + "plasticity": 0.44, + "current_activation": 0.41 + }, + "mask_rigidity": { + "mean": 0.61, + "certainty": 0.56, + "plasticity": 0.34, + "current_activation": 0.77 + }, + "external_regulation_dependence": { + "mean": 0.44, + "certainty": 0.47, + "plasticity": 0.49, + "current_activation": 0.52 + } }, "stable_dispositions": { - "novelty_seeking": {"mean": 0.64, "certainty": 0.62, "plasticity": 0.29, "current_activation": 0.57}, - "conformity": {"mean": 0.22, "certainty": 0.66, "plasticity": 0.25, "current_activation": 0.18}, - "status_hunger": {"mean": 0.39, "certainty": 0.54, "plasticity": 0.41, "current_activation": 0.48}, - "risk_tolerance": {"mean": 0.67, "certainty": 0.61, "plasticity": 0.33, "current_activation": 0.73}, - "sociability": {"mean": 0.52, "certainty": 0.55, "plasticity": 0.31, "current_activation": 0.49}, - "baseline_threat_sensitivity": {"mean": 0.71, "certainty": 0.64, "plasticity": 0.28, "current_activation": 0.81}, - "aesthetic_appetite": {"mean": 0.57, "certainty": 0.43, "plasticity": 0.45, "current_activation": 0.44}, - "ideological_rigidity": {"mean": 0.35, "certainty": 0.5, "plasticity": 0.38, "current_activation": 0.28} + "novelty_seeking": { + "mean": 0.64, + "certainty": 0.62, + "plasticity": 0.29, + "current_activation": 0.57 + }, + "conformity": { + "mean": 0.22, + "certainty": 0.66, + "plasticity": 0.25, + "current_activation": 0.18 + }, + "status_hunger": { + "mean": 0.39, + "certainty": 0.54, + "plasticity": 0.41, + "current_activation": 0.48 + }, + "risk_tolerance": { + "mean": 0.67, + "certainty": 0.61, + "plasticity": 0.33, + "current_activation": 0.73 + }, + "sociability": { + "mean": 0.52, + "certainty": 0.55, + "plasticity": 0.31, + "current_activation": 0.49 + }, + "baseline_threat_sensitivity": { + "mean": 0.71, + "certainty": 0.64, + "plasticity": 0.28, + "current_activation": 0.81 + }, + "aesthetic_appetite": { + "mean": 0.57, + "certainty": 0.43, + "plasticity": 0.45, + "current_activation": 0.44 + }, + "ideological_rigidity": { + "mean": 0.35, + "certainty": 0.5, + "plasticity": 0.38, + "current_activation": 0.28 + } }, "behavioral_dimensions": { - "warmth": {"mean": 0.54, "certainty": 0.51, "plasticity": 0.42, "current_activation": 0.46}, - "drive": {"mean": 0.76, "certainty": 0.68, "plasticity": 0.21, "current_activation": 0.84}, - "grandiosity": {"mean": 0.19, "certainty": 0.6, "plasticity": 0.37, "current_activation": 0.12}, - "validation_seeking": {"mean": 0.47, "certainty": 0.49, "plasticity": 0.43, "current_activation": 0.53}, - "anxiety": {"mean": 0.72, "certainty": 0.64, "plasticity": 0.33, "current_activation": 0.86}, - "control_pressure": {"mean": 0.59, "certainty": 0.56, "plasticity": 0.35, "current_activation": 0.7}, - "hostility": {"mean": 0.3, "certainty": 0.5, "plasticity": 0.47, "current_activation": 0.25}, - "suspicion": {"mean": 0.74, "certainty": 0.66, "plasticity": 0.28, "current_activation": 0.82}, - "rigidity": {"mean": 0.43, "certainty": 0.54, "plasticity": 0.4, "current_activation": 0.51}, - "withdrawal": {"mean": 0.5, "certainty": 0.48, "plasticity": 0.46, "current_activation": 0.57}, - "volatility": {"mean": 0.46, "certainty": 0.52, "plasticity": 0.42, "current_activation": 0.61}, - "attachment_seeking": {"mean": 0.42, "certainty": 0.47, "plasticity": 0.48, "current_activation": 0.49}, - "distance_seeking": {"mean": 0.69, "certainty": 0.58, "plasticity": 0.34, "current_activation": 0.78} + "warmth": { + "mean": 0.54, + "certainty": 0.51, + "plasticity": 0.42, + "current_activation": 0.46 + }, + "drive": { + "mean": 0.76, + "certainty": 0.68, + "plasticity": 0.21, + "current_activation": 0.84 + }, + "grandiosity": { + "mean": 0.19, + "certainty": 0.6, + "plasticity": 0.37, + "current_activation": 0.12 + }, + "validation_seeking": { + "mean": 0.47, + "certainty": 0.49, + "plasticity": 0.43, + "current_activation": 0.53 + }, + "anxiety": { + "mean": 0.72, + "certainty": 0.64, + "plasticity": 0.33, + "current_activation": 0.86 + }, + "control_pressure": { + "mean": 0.59, + "certainty": 0.56, + "plasticity": 0.35, + "current_activation": 0.7 + }, + "hostility": { + "mean": 0.3, + "certainty": 0.5, + "plasticity": 0.47, + "current_activation": 0.25 + }, + "suspicion": { + "mean": 0.74, + "certainty": 0.66, + "plasticity": 0.28, + "current_activation": 0.82 + }, + "rigidity": { + "mean": 0.43, + "certainty": 0.54, + "plasticity": 0.4, + "current_activation": 0.51 + }, + "withdrawal": { + "mean": 0.5, + "certainty": 0.48, + "plasticity": 0.46, + "current_activation": 0.57 + }, + "volatility": { + "mean": 0.46, + "certainty": 0.52, + "plasticity": 0.42, + "current_activation": 0.61 + }, + "attachment_seeking": { + "mean": 0.42, + "certainty": 0.47, + "plasticity": 0.48, + "current_activation": 0.49 + }, + "distance_seeking": { + "mean": 0.69, + "certainty": 0.58, + "plasticity": 0.34, + "current_activation": 0.78 + } }, "presentation_strategy": { - "charm": {"mean": 0.55, "certainty": 0.5, "plasticity": 0.4, "current_activation": 0.63}, - "compliance": {"mean": 0.26, "certainty": 0.55, "plasticity": 0.36, "current_activation": 0.2}, - "superiority": {"mean": 0.28, "certainty": 0.48, "plasticity": 0.45, "current_activation": 0.31}, - "detachment": {"mean": 0.66, "certainty": 0.59, "plasticity": 0.32, "current_activation": 0.75}, - "seductiveness": {"mean": 0.22, "certainty": 0.42, "plasticity": 0.5, "current_activation": 0.12}, - "competence_theater": {"mean": 0.73, "certainty": 0.6, "plasticity": 0.31, "current_activation": 0.86}, - "moral_theater": {"mean": 0.18, "certainty": 0.5, "plasticity": 0.39, "current_activation": 0.11}, - "strategic_opacity": {"mean": 0.7, "certainty": 0.62, "plasticity": 0.27, "current_activation": 0.8}, - "cultivated_harmlessness": {"mean": 0.32, "certainty": 0.46, "plasticity": 0.46, "current_activation": 0.38} + "charm": { + "mean": 0.55, + "certainty": 0.5, + "plasticity": 0.4, + "current_activation": 0.63 + }, + "compliance": { + "mean": 0.26, + "certainty": 0.55, + "plasticity": 0.36, + "current_activation": 0.2 + }, + "superiority": { + "mean": 0.28, + "certainty": 0.48, + "plasticity": 0.45, + "current_activation": 0.31 + }, + "detachment": { + "mean": 0.66, + "certainty": 0.59, + "plasticity": 0.32, + "current_activation": 0.75 + }, + "seductiveness": { + "mean": 0.22, + "certainty": 0.42, + "plasticity": 0.5, + "current_activation": 0.12 + }, + "competence_theater": { + "mean": 0.73, + "certainty": 0.6, + "plasticity": 0.31, + "current_activation": 0.86 + }, + "moral_theater": { + "mean": 0.18, + "certainty": 0.5, + "plasticity": 0.39, + "current_activation": 0.11 + }, + "strategic_opacity": { + "mean": 0.7, + "certainty": 0.62, + "plasticity": 0.27, + "current_activation": 0.8 + }, + "cultivated_harmlessness": { + "mean": 0.32, + "certainty": 0.46, + "plasticity": 0.46, + "current_activation": 0.38 + }, + "abrasive_boundary": { + "mean": 0.74, + "certainty": 0.67, + "plasticity": 0.24, + "current_activation": 0.88 + }, + "ironic_distance": { + "mean": 0.81, + "certainty": 0.7, + "plasticity": 0.19, + "current_activation": 0.9 + } }, "situational_state": { - "exhaustion": {"mean": 0.55, "certainty": 0.63, "plasticity": 0.8, "current_activation": 0.79}, - "scarcity_pressure": {"mean": 0.68, "certainty": 0.67, "plasticity": 0.7, "current_activation": 0.88}, - "humiliation": {"mean": 0.38, "certainty": 0.52, "plasticity": 0.77, "current_activation": 0.42}, - "panic": {"mean": 0.28, "certainty": 0.56, "plasticity": 0.82, "current_activation": 0.35}, - "triumph": {"mean": 0.1, "certainty": 0.5, "plasticity": 0.78, "current_activation": 0.05}, - "grief": {"mean": 0.34, "certainty": 0.46, "plasticity": 0.69, "current_activation": 0.39}, - "overstimulation": {"mean": 0.52, "certainty": 0.6, "plasticity": 0.74, "current_activation": 0.66}, - "grievance_activation": {"mean": 0.61, "certainty": 0.58, "plasticity": 0.63, "current_activation": 0.77}, - "acute_shame": {"mean": 0.45, "certainty": 0.52, "plasticity": 0.8, "current_activation": 0.59}, - "perceived_status_threat": {"mean": 0.57, "certainty": 0.55, "plasticity": 0.76, "current_activation": 0.68} + "exhaustion": { + "mean": 0.55, + "certainty": 0.63, + "plasticity": 0.8, + "current_activation": 0.79 + }, + "scarcity_pressure": { + "mean": 0.68, + "certainty": 0.67, + "plasticity": 0.7, + "current_activation": 0.88 + }, + "humiliation": { + "mean": 0.38, + "certainty": 0.52, + "plasticity": 0.77, + "current_activation": 0.42 + }, + "panic": { + "mean": 0.28, + "certainty": 0.56, + "plasticity": 0.82, + "current_activation": 0.35 + }, + "triumph": { + "mean": 0.1, + "certainty": 0.5, + "plasticity": 0.78, + "current_activation": 0.05 + }, + "grief": { + "mean": 0.34, + "certainty": 0.46, + "plasticity": 0.69, + "current_activation": 0.39 + }, + "overstimulation": { + "mean": 0.52, + "certainty": 0.6, + "plasticity": 0.74, + "current_activation": 0.66 + }, + "grievance_activation": { + "mean": 0.61, + "certainty": 0.58, + "plasticity": 0.63, + "current_activation": 0.77 + }, + "acute_shame": { + "mean": 0.45, + "certainty": 0.52, + "plasticity": 0.8, + "current_activation": 0.59 + }, + "perceived_status_threat": { + "mean": 0.57, + "certainty": 0.55, + "plasticity": 0.76, + "current_activation": 0.68 + } }, "values": [ { @@ -100,7 +352,57 @@ "priority": 0.89, "unforgivable_if_betrayed": true } - ] + ], + "voice_style": { + "dryness": { + "mean": 0.86, + "certainty": 0.72, + "plasticity": 0.18, + "current_activation": 0.91 + }, + "sarcastic_deflection": { + "mean": 0.84, + "certainty": 0.74, + "plasticity": 0.2, + "current_activation": 0.93 + }, + "pointedness": { + "mean": 0.77, + "certainty": 0.68, + "plasticity": 0.25, + "current_activation": 0.82 + }, + "sincerity_evasion": { + "mean": 0.8, + "certainty": 0.69, + "plasticity": 0.24, + "current_activation": 0.87 + }, + "emotional_evasion": { + "mean": 0.78, + "certainty": 0.66, + "plasticity": 0.27, + "current_activation": 0.85 + }, + "banter_as_boundary": { + "mean": 0.74, + "certainty": 0.63, + "plasticity": 0.31, + "current_activation": 0.8 + }, + "verbal_aggression": { + "mean": 0.46, + "certainty": 0.55, + "plasticity": 0.42, + "current_activation": 0.5 + }, + "plainspoken_directness": { + "mean": 0.62, + "certainty": 0.58, + "plasticity": 0.33, + "current_activation": 0.67 + } + } }, "goals": [ { @@ -156,62 +458,314 @@ }, "canonical_state": { "underlying_organization": { - "self_coherence": {"mean": 0.57, "certainty": 0.5, "plasticity": 0.42, "current_activation": 0.61}, - "contingent_worth": {"mean": 0.62, "certainty": 0.45, "plasticity": 0.49, "current_activation": 0.69}, - "shame_sensitivity": {"mean": 0.7, "certainty": 0.53, "plasticity": 0.45, "current_activation": 0.72}, - "reciprocity_capacity": {"mean": 0.66, "certainty": 0.48, "plasticity": 0.39, "current_activation": 0.65}, - "mentalization_quality": {"mean": 0.69, "certainty": 0.55, "plasticity": 0.35, "current_activation": 0.7}, - "authenticity_tolerance": {"mean": 0.31, "certainty": 0.46, "plasticity": 0.51, "current_activation": 0.24}, - "mask_rigidity": {"mean": 0.82, "certainty": 0.57, "plasticity": 0.25, "current_activation": 0.9}, - "external_regulation_dependence": {"mean": 0.58, "certainty": 0.42, "plasticity": 0.52, "current_activation": 0.63} + "self_coherence": { + "mean": 0.57, + "certainty": 0.5, + "plasticity": 0.42, + "current_activation": 0.61 + }, + "contingent_worth": { + "mean": 0.62, + "certainty": 0.45, + "plasticity": 0.49, + "current_activation": 0.69 + }, + "shame_sensitivity": { + "mean": 0.7, + "certainty": 0.53, + "plasticity": 0.45, + "current_activation": 0.72 + }, + "reciprocity_capacity": { + "mean": 0.66, + "certainty": 0.48, + "plasticity": 0.39, + "current_activation": 0.65 + }, + "mentalization_quality": { + "mean": 0.69, + "certainty": 0.55, + "plasticity": 0.35, + "current_activation": 0.7 + }, + "authenticity_tolerance": { + "mean": 0.31, + "certainty": 0.46, + "plasticity": 0.51, + "current_activation": 0.24 + }, + "mask_rigidity": { + "mean": 0.82, + "certainty": 0.57, + "plasticity": 0.25, + "current_activation": 0.9 + }, + "external_regulation_dependence": { + "mean": 0.58, + "certainty": 0.42, + "plasticity": 0.52, + "current_activation": 0.63 + } }, "stable_dispositions": { - "novelty_seeking": {"mean": 0.49, "certainty": 0.44, "plasticity": 0.47, "current_activation": 0.52}, - "conformity": {"mean": 0.4, "certainty": 0.48, "plasticity": 0.45, "current_activation": 0.36}, - "status_hunger": {"mean": 0.33, "certainty": 0.4, "plasticity": 0.51, "current_activation": 0.31}, - "risk_tolerance": {"mean": 0.44, "certainty": 0.45, "plasticity": 0.49, "current_activation": 0.47}, - "sociability": {"mean": 0.6, "certainty": 0.5, "plasticity": 0.41, "current_activation": 0.68}, - "baseline_threat_sensitivity": {"mean": 0.78, "certainty": 0.58, "plasticity": 0.3, "current_activation": 0.83}, - "aesthetic_appetite": {"mean": 0.43, "certainty": 0.38, "plasticity": 0.52, "current_activation": 0.46}, - "ideological_rigidity": {"mean": 0.29, "certainty": 0.39, "plasticity": 0.5, "current_activation": 0.25} + "novelty_seeking": { + "mean": 0.49, + "certainty": 0.44, + "plasticity": 0.47, + "current_activation": 0.52 + }, + "conformity": { + "mean": 0.4, + "certainty": 0.48, + "plasticity": 0.45, + "current_activation": 0.36 + }, + "status_hunger": { + "mean": 0.33, + "certainty": 0.4, + "plasticity": 0.51, + "current_activation": 0.31 + }, + "risk_tolerance": { + "mean": 0.44, + "certainty": 0.45, + "plasticity": 0.49, + "current_activation": 0.47 + }, + "sociability": { + "mean": 0.6, + "certainty": 0.5, + "plasticity": 0.41, + "current_activation": 0.68 + }, + "baseline_threat_sensitivity": { + "mean": 0.78, + "certainty": 0.58, + "plasticity": 0.3, + "current_activation": 0.83 + }, + "aesthetic_appetite": { + "mean": 0.43, + "certainty": 0.38, + "plasticity": 0.52, + "current_activation": 0.46 + }, + "ideological_rigidity": { + "mean": 0.29, + "certainty": 0.39, + "plasticity": 0.5, + "current_activation": 0.25 + } }, "behavioral_dimensions": { - "warmth": {"mean": 0.67, "certainty": 0.49, "plasticity": 0.4, "current_activation": 0.74}, - "drive": {"mean": 0.52, "certainty": 0.45, "plasticity": 0.45, "current_activation": 0.56}, - "grandiosity": {"mean": 0.16, "certainty": 0.5, "plasticity": 0.39, "current_activation": 0.12}, - "validation_seeking": {"mean": 0.55, "certainty": 0.46, "plasticity": 0.49, "current_activation": 0.62}, - "anxiety": {"mean": 0.76, "certainty": 0.56, "plasticity": 0.37, "current_activation": 0.81}, - "control_pressure": {"mean": 0.37, "certainty": 0.44, "plasticity": 0.48, "current_activation": 0.4}, - "hostility": {"mean": 0.18, "certainty": 0.48, "plasticity": 0.44, "current_activation": 0.13}, - "suspicion": {"mean": 0.69, "certainty": 0.51, "plasticity": 0.38, "current_activation": 0.73}, - "rigidity": {"mean": 0.39, "certainty": 0.43, "plasticity": 0.47, "current_activation": 0.44}, - "withdrawal": {"mean": 0.61, "certainty": 0.5, "plasticity": 0.39, "current_activation": 0.7}, - "volatility": {"mean": 0.38, "certainty": 0.45, "plasticity": 0.48, "current_activation": 0.41}, - "attachment_seeking": {"mean": 0.58, "certainty": 0.43, "plasticity": 0.51, "current_activation": 0.66}, - "distance_seeking": {"mean": 0.64, "certainty": 0.49, "plasticity": 0.44, "current_activation": 0.72} + "warmth": { + "mean": 0.67, + "certainty": 0.49, + "plasticity": 0.4, + "current_activation": 0.74 + }, + "drive": { + "mean": 0.52, + "certainty": 0.45, + "plasticity": 0.45, + "current_activation": 0.56 + }, + "grandiosity": { + "mean": 0.16, + "certainty": 0.5, + "plasticity": 0.39, + "current_activation": 0.12 + }, + "validation_seeking": { + "mean": 0.55, + "certainty": 0.46, + "plasticity": 0.49, + "current_activation": 0.62 + }, + "anxiety": { + "mean": 0.76, + "certainty": 0.56, + "plasticity": 0.37, + "current_activation": 0.81 + }, + "control_pressure": { + "mean": 0.37, + "certainty": 0.44, + "plasticity": 0.48, + "current_activation": 0.4 + }, + "hostility": { + "mean": 0.18, + "certainty": 0.48, + "plasticity": 0.44, + "current_activation": 0.13 + }, + "suspicion": { + "mean": 0.69, + "certainty": 0.51, + "plasticity": 0.38, + "current_activation": 0.73 + }, + "rigidity": { + "mean": 0.39, + "certainty": 0.43, + "plasticity": 0.47, + "current_activation": 0.44 + }, + "withdrawal": { + "mean": 0.61, + "certainty": 0.5, + "plasticity": 0.39, + "current_activation": 0.7 + }, + "volatility": { + "mean": 0.38, + "certainty": 0.45, + "plasticity": 0.48, + "current_activation": 0.41 + }, + "attachment_seeking": { + "mean": 0.58, + "certainty": 0.43, + "plasticity": 0.51, + "current_activation": 0.66 + }, + "distance_seeking": { + "mean": 0.64, + "certainty": 0.49, + "plasticity": 0.44, + "current_activation": 0.72 + } }, "presentation_strategy": { - "charm": {"mean": 0.45, "certainty": 0.4, "plasticity": 0.51, "current_activation": 0.52}, - "compliance": {"mean": 0.52, "certainty": 0.46, "plasticity": 0.48, "current_activation": 0.59}, - "superiority": {"mean": 0.08, "certainty": 0.44, "plasticity": 0.45, "current_activation": 0.05}, - "detachment": {"mean": 0.57, "certainty": 0.47, "plasticity": 0.44, "current_activation": 0.63}, - "seductiveness": {"mean": 0.07, "certainty": 0.35, "plasticity": 0.5, "current_activation": 0.03}, - "competence_theater": {"mean": 0.58, "certainty": 0.46, "plasticity": 0.45, "current_activation": 0.68}, - "moral_theater": {"mean": 0.21, "certainty": 0.4, "plasticity": 0.49, "current_activation": 0.19}, - "strategic_opacity": {"mean": 0.84, "certainty": 0.55, "plasticity": 0.26, "current_activation": 0.91}, - "cultivated_harmlessness": {"mean": 0.76, "certainty": 0.5, "plasticity": 0.35, "current_activation": 0.88} + "charm": { + "mean": 0.45, + "certainty": 0.4, + "plasticity": 0.51, + "current_activation": 0.52 + }, + "compliance": { + "mean": 0.52, + "certainty": 0.46, + "plasticity": 0.48, + "current_activation": 0.59 + }, + "superiority": { + "mean": 0.08, + "certainty": 0.44, + "plasticity": 0.45, + "current_activation": 0.05 + }, + "detachment": { + "mean": 0.57, + "certainty": 0.47, + "plasticity": 0.44, + "current_activation": 0.63 + }, + "seductiveness": { + "mean": 0.07, + "certainty": 0.35, + "plasticity": 0.5, + "current_activation": 0.03 + }, + "competence_theater": { + "mean": 0.58, + "certainty": 0.46, + "plasticity": 0.45, + "current_activation": 0.68 + }, + "moral_theater": { + "mean": 0.21, + "certainty": 0.4, + "plasticity": 0.49, + "current_activation": 0.19 + }, + "strategic_opacity": { + "mean": 0.84, + "certainty": 0.55, + "plasticity": 0.26, + "current_activation": 0.91 + }, + "cultivated_harmlessness": { + "mean": 0.76, + "certainty": 0.5, + "plasticity": 0.35, + "current_activation": 0.88 + }, + "abrasive_boundary": { + "mean": 0.12, + "certainty": 0.38, + "plasticity": 0.5, + "current_activation": 0.08 + }, + "ironic_distance": { + "mean": 0.22, + "certainty": 0.41, + "plasticity": 0.48, + "current_activation": 0.18 + } }, "situational_state": { - "exhaustion": {"mean": 0.5, "certainty": 0.42, "plasticity": 0.81, "current_activation": 0.57}, - "scarcity_pressure": {"mean": 0.77, "certainty": 0.52, "plasticity": 0.76, "current_activation": 0.86}, - "humiliation": {"mean": 0.61, "certainty": 0.48, "plasticity": 0.8, "current_activation": 0.7}, - "panic": {"mean": 0.42, "certainty": 0.41, "plasticity": 0.83, "current_activation": 0.49}, - "triumph": {"mean": 0.08, "certainty": 0.36, "plasticity": 0.78, "current_activation": 0.04}, - "grief": {"mean": 0.46, "certainty": 0.38, "plasticity": 0.73, "current_activation": 0.5}, - "overstimulation": {"mean": 0.61, "certainty": 0.5, "plasticity": 0.8, "current_activation": 0.67}, - "grievance_activation": {"mean": 0.49, "certainty": 0.44, "plasticity": 0.75, "current_activation": 0.55}, - "acute_shame": {"mean": 0.69, "certainty": 0.48, "plasticity": 0.82, "current_activation": 0.78}, - "perceived_status_threat": {"mean": 0.73, "certainty": 0.51, "plasticity": 0.76, "current_activation": 0.8} + "exhaustion": { + "mean": 0.5, + "certainty": 0.42, + "plasticity": 0.81, + "current_activation": 0.57 + }, + "scarcity_pressure": { + "mean": 0.77, + "certainty": 0.52, + "plasticity": 0.76, + "current_activation": 0.86 + }, + "humiliation": { + "mean": 0.61, + "certainty": 0.48, + "plasticity": 0.8, + "current_activation": 0.7 + }, + "panic": { + "mean": 0.42, + "certainty": 0.41, + "plasticity": 0.83, + "current_activation": 0.49 + }, + "triumph": { + "mean": 0.08, + "certainty": 0.36, + "plasticity": 0.78, + "current_activation": 0.04 + }, + "grief": { + "mean": 0.46, + "certainty": 0.38, + "plasticity": 0.73, + "current_activation": 0.5 + }, + "overstimulation": { + "mean": 0.61, + "certainty": 0.5, + "plasticity": 0.8, + "current_activation": 0.67 + }, + "grievance_activation": { + "mean": 0.49, + "certainty": 0.44, + "plasticity": 0.75, + "current_activation": 0.55 + }, + "acute_shame": { + "mean": 0.69, + "certainty": 0.48, + "plasticity": 0.82, + "current_activation": 0.78 + }, + "perceived_status_threat": { + "mean": 0.73, + "certainty": 0.51, + "plasticity": 0.76, + "current_activation": 0.8 + } }, "values": [ { @@ -220,7 +774,57 @@ "priority": 0.86, "unforgivable_if_betrayed": true } - ] + ], + "voice_style": { + "dryness": { + "mean": 0.32, + "certainty": 0.39, + "plasticity": 0.49, + "current_activation": 0.35 + }, + "sarcastic_deflection": { + "mean": 0.28, + "certainty": 0.36, + "plasticity": 0.52, + "current_activation": 0.24 + }, + "pointedness": { + "mean": 0.24, + "certainty": 0.38, + "plasticity": 0.5, + "current_activation": 0.22 + }, + "sincerity_evasion": { + "mean": 0.62, + "certainty": 0.5, + "plasticity": 0.42, + "current_activation": 0.69 + }, + "emotional_evasion": { + "mean": 0.72, + "certainty": 0.54, + "plasticity": 0.36, + "current_activation": 0.78 + }, + "banter_as_boundary": { + "mean": 0.45, + "certainty": 0.43, + "plasticity": 0.48, + "current_activation": 0.49 + }, + "verbal_aggression": { + "mean": 0.09, + "certainty": 0.35, + "plasticity": 0.52, + "current_activation": 0.05 + }, + "plainspoken_directness": { + "mean": 0.4, + "certainty": 0.42, + "plasticity": 0.49, + "current_activation": 0.37 + } + } }, "goals": [ { @@ -255,8 +859,18 @@ "observer_agent_id": "oz_operator", "target_agent_id": "cat_marrigan", "perceived_dimensions": { - "warmth": {"mean": 0.44, "certainty": 0.34, "plasticity": 0.55, "current_activation": 0.4}, - "suspicion": {"mean": 0.83, "certainty": 0.71, "plasticity": 0.28, "current_activation": 0.9} + "warmth": { + "mean": 0.44, + "certainty": 0.34, + "plasticity": 0.55, + "current_activation": 0.4 + }, + "suspicion": { + "mean": 0.83, + "certainty": 0.71, + "plasticity": 0.28, + "current_activation": 0.9 + } }, "beliefs": [ { @@ -278,18 +892,78 @@ "source_id": "cat_marrigan", "target_id": "oz_operator", "stance": { - "trust": {"mean": 0.31, "certainty": 0.38, "plasticity": 0.52, "current_activation": 0.27}, - "respect": {"mean": 0.42, "certainty": 0.31, "plasticity": 0.49, "current_activation": 0.46}, - "resentment": {"mean": 0.18, "certainty": 0.29, "plasticity": 0.55, "current_activation": 0.16}, - "dependence": {"mean": 0.24, "certainty": 0.28, "plasticity": 0.56, "current_activation": 0.31}, - "fear": {"mean": 0.2, "certainty": 0.25, "plasticity": 0.57, "current_activation": 0.22}, - "fascination": {"mean": 0.61, "certainty": 0.35, "plasticity": 0.5, "current_activation": 0.76}, - "obligation": {"mean": 0.16, "certainty": 0.22, "plasticity": 0.58, "current_activation": 0.13}, - "envy": {"mean": 0.05, "certainty": 0.2, "plasticity": 0.5, "current_activation": 0.02}, - "moral_disgust": {"mean": 0.04, "certainty": 0.21, "plasticity": 0.53, "current_activation": 0.03}, - "perceived_status_gap": {"mean": 0.29, "certainty": 0.27, "plasticity": 0.54, "current_activation": 0.31}, - "expectation_of_care": {"mean": 0.22, "certainty": 0.24, "plasticity": 0.58, "current_activation": 0.19}, - "expectation_of_betrayal": {"mean": 0.47, "certainty": 0.37, "plasticity": 0.51, "current_activation": 0.52} + "trust": { + "mean": 0.31, + "certainty": 0.38, + "plasticity": 0.52, + "current_activation": 0.27 + }, + "respect": { + "mean": 0.42, + "certainty": 0.31, + "plasticity": 0.49, + "current_activation": 0.46 + }, + "resentment": { + "mean": 0.18, + "certainty": 0.29, + "plasticity": 0.55, + "current_activation": 0.16 + }, + "dependence": { + "mean": 0.24, + "certainty": 0.28, + "plasticity": 0.56, + "current_activation": 0.31 + }, + "fear": { + "mean": 0.2, + "certainty": 0.25, + "plasticity": 0.57, + "current_activation": 0.22 + }, + "fascination": { + "mean": 0.61, + "certainty": 0.35, + "plasticity": 0.5, + "current_activation": 0.76 + }, + "obligation": { + "mean": 0.16, + "certainty": 0.22, + "plasticity": 0.58, + "current_activation": 0.13 + }, + "envy": { + "mean": 0.05, + "certainty": 0.2, + "plasticity": 0.5, + "current_activation": 0.02 + }, + "moral_disgust": { + "mean": 0.04, + "certainty": 0.21, + "plasticity": 0.53, + "current_activation": 0.03 + }, + "perceived_status_gap": { + "mean": 0.29, + "certainty": 0.27, + "plasticity": 0.54, + "current_activation": 0.31 + }, + "expectation_of_care": { + "mean": 0.22, + "certainty": 0.24, + "plasticity": 0.58, + "current_activation": 0.19 + }, + "expectation_of_betrayal": { + "mean": 0.47, + "certainty": 0.37, + "plasticity": 0.51, + "current_activation": 0.52 + } }, "summary": "Cat suspects Oz is more than a helpful drone and hates that this makes the drone more interesting.", "unresolved_incident_ids": [ @@ -352,7 +1026,8 @@ "goal-keep-taxi-operational" ], "presentation_constraints": [ - "Sound dry rather than openly grateful.", + "Use dry, pointed sarcasm to evade sincerity or emotional exposure.", + "Let the prickly-abrasive performance function as a boundary, not random cruelty.", "Probe without making it look like an interrogation." ], "forbidden_context": [ @@ -382,7 +1057,8 @@ ], "presentation_constraints": [ "Be helpful, a little funny, and evasive.", - "Let the drone seem more autonomous than it is." + "Let the drone seem more autonomous than it is.", + "Use warmth carefully; Cat may treat open sincerity as bait." ], "forbidden_context": [ "Do not confess the operator's location.", diff --git a/schemas/agent-state.required-fields.json b/schemas/agent-state.required-fields.json index 57f0922..1a34b87 100644 --- a/schemas/agent-state.required-fields.json +++ b/schemas/agent-state.required-fields.json @@ -45,7 +45,9 @@ "competence_theater", "moral_theater", "strategic_opacity", - "cultivated_harmlessness" + "cultivated_harmlessness", + "abrasive_boundary", + "ironic_distance" ], "situational_state": [ "exhaustion", @@ -72,6 +74,16 @@ "perceived_status_gap", "expectation_of_care", "expectation_of_betrayal" + ], + "voice_style": [ + "dryness", + "sarcastic_deflection", + "pointedness", + "sincerity_evasion", + "emotional_evasion", + "banter_as_boundary", + "verbal_aggression", + "plainspoken_directness" ] } } diff --git a/schemas/agent-state.schema.json b/schemas/agent-state.schema.json index fbc5d04..41bf84d 100644 --- a/schemas/agent-state.schema.json +++ b/schemas/agent-state.schema.json @@ -166,6 +166,7 @@ "stable_dispositions", "behavioral_dimensions", "presentation_strategy", + "voice_style", "situational_state", "values" ], @@ -191,6 +192,9 @@ "items": { "$ref": "#/$defs/value_commitment" } + }, + "voice_style": { + "$ref": "#/$defs/variable_map" } } }, diff --git a/state/evidence.jsonl b/state/evidence.jsonl index f1ac1b1..604fc8a 100644 --- a/state/evidence.jsonl +++ b/state/evidence.jsonl @@ -6,3 +6,4 @@ {"ts": "2026-05-01T17:40:43+00:00", "type": "design", "status": "accepted", "note": "Clarified Ghostlight authoring rationale: the system should build drama and narrative pressure, then render character-local dialogue context packs constrained to what each character knows, feels, wants, remembers, hides, and perceives."} {"ts": "2026-05-01T17:46:36+00:00", "type": "design", "status": "accepted", "note": "Corrected Call of the Void continuity drift: old colony-fleet no-return twist is obsolete; current pressure should come from the whole Solar system being sequestered into Elysium with its institutions, conflicts, and unresolved machinery intact."} {"ts": "2026-05-01T17:52:01+00:00", "type": "implementation", "status": "ok", "note": "Added v0 canonical agent-state schema, required first-class dimension list, Call of the Void example fixture, and dependency-free validation script. schema:validate passes on the first fixture."} +{"ts": "2026-05-01T18:10:28+00:00", "type": "design", "status": "accepted", "note": "Split performed self from voice style in the v0 schema: presentation_strategy now includes abrasive_boundary and ironic_distance, while voice_style carries sarcasm, dryness, sincerity evasion, emotional evasion, and banter-as-boundary handles."} diff --git a/tools/validate_agent_state.py b/tools/validate_agent_state.py index 804f583..86d77f3 100644 --- a/tools/validate_agent_state.py +++ b/tools/validate_agent_state.py @@ -77,6 +77,7 @@ def validate_agent(agent: dict[str, Any], required: dict[str, list[str]]) -> Non "stable_dispositions", "behavioral_dimensions", "presentation_strategy", + "voice_style", "situational_state", "values", ], @@ -87,6 +88,7 @@ def validate_agent(agent: dict[str, Any], required: dict[str, list[str]]) -> Non "stable_dispositions", "behavioral_dimensions", "presentation_strategy", + "voice_style", "situational_state", ]: validate_variable_map(canonical[group], required[group], f"{path}.canonical_state.{group}")