-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathhexaco.ts
More file actions
178 lines (176 loc) · 5.78 KB
/
Copy pathhexaco.ts
File metadata and controls
178 lines (176 loc) · 5.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
/**
* HEXACO trait model. The canonical six-axis personality model from
* Ashton & Lee (PSPR 2007), the historical default for paracosm
* leaders. Cue strings preserved verbatim from the legacy
* `runtime/agents/cues/hexaco/translation.ts` so HEXACO scenario behavior
* is unchanged when a leader uses this model.
*
* Citation:
* Ashton, M.C. & Lee, K. (2007). "Empirical, Theoretical, and
* Practical Advantages of the HEXACO Model of Personality
* Structure." Personality and Social Psychology Review, 11(2),
* 150-166. doi:10.1177/1088868306294907
*
* @module paracosm/engine/traits/hexaco
*/
import type { TraitModel } from './index.js';
/**
* The HEXACO axes in their canonical order. Order is preserved so
* cue iteration matches the legacy translator's output.
*/
export const hexacoModel: TraitModel = {
id: 'hexaco',
name: 'HEXACO',
description:
'Six-factor human personality model: Honesty-Humility, Emotionality, ' +
'Extraversion, Agreeableness, Conscientiousness, Openness. The ' +
'historical default for paracosm leaders. Best fit for human-leader ' +
'scenarios (CEOs, captains, governors, ship commanders, councils).',
citation: 'Ashton & Lee, PSPR 11(2), 2007, doi:10.1177/1088868306294907',
axes: [
{
id: 'emotionality',
label: 'Emotionality',
description: 'Tendency to experience anxiety, sentimentality, and seek emotional support.',
lowPole: 'stays flat under stress',
highPole: 'feels events in body before words',
},
{
id: 'openness',
label: 'Openness',
description: 'Aesthetic sensitivity, intellectual curiosity, willingness to try unconventional approaches.',
lowPole: 'sticks to what has worked',
highPole: 'looks for what the moment makes possible',
},
{
id: 'honestyHumility',
label: 'Honesty-Humility',
description: 'Sincerity, fairness, modesty, low entitlement.',
lowPole: 'speaks strategically, not confessionally',
highPole: 'says what they really think',
},
{
id: 'conscientiousness',
label: 'Conscientiousness',
description: 'Organization, diligence, perfectionism, prudence.',
lowPole: 'moves first and adjusts mid-stride',
highPole: 'wants a plan before moving',
},
{
id: 'extraversion',
label: 'Extraversion',
description: 'Social self-esteem, social boldness, sociability, liveliness.',
lowPole: 'processes inward, speaks only after',
highPole: 'says it out loud rather than sit with it',
},
{
id: 'agreeableness',
label: 'Agreeableness',
description: 'Forgiveness, gentleness, flexibility, patience.',
lowPole: "doesn't owe anyone smoothness right now",
highPole: 'wants to hold the group together',
},
],
defaults: {
emotionality: 0.5,
openness: 0.5,
honestyHumility: 0.5,
conscientiousness: 0.5,
extraversion: 0.5,
agreeableness: 0.5,
},
drift: {
/**
* Outcome reinforcement table. Values match the canonical
* `outcomePullForTrait` in `src/engine/core/progression.ts` so
* applying hexacoModel drift through the registry produces
* byte-identical output to the legacy `driftCommanderHexaco`
* path. Citations from the progression.ts header:
*
* - Openness ↔ exploratory novelty (DeYoung 2014)
* - Conscientiousness ↔ risk avoidance after failure
* (Roberts et al 2008)
* - Extraversion ↔ social-presence reinforcement
* - Agreeableness ↔ post-conflict adjustment
* (Lee & Ashton 2004)
* - Emotionality activation under threat (Lee & Ashton 2004)
* - Honesty-Humility ↔ strategic behavior (Hilbig & Zettler 2009)
*/
outcomes: {
openness: {
risky_success: 0.03,
risky_failure: -0.04,
conservative_failure: 0.02,
},
conscientiousness: {
risky_failure: 0.03,
conservative_success: 0.02,
},
extraversion: {
risky_success: 0.02,
risky_failure: -0.02,
},
agreeableness: {
conservative_success: 0.02,
risky_failure: -0.02,
},
emotionality: {
risky_failure: 0.03,
conservative_failure: 0.02,
},
honestyHumility: {
risky_success: -0.02,
conservative_success: 0.02,
},
},
leaderPull: {
emotionality: 0.05,
openness: 0.06,
honestyHumility: 0.04,
conscientiousness: 0.06,
extraversion: 0.05,
agreeableness: 0.05,
},
roleActivation: {
conscientiousness: 0.03,
openness: 0.03,
honestyHumility: 0.02,
agreeableness: 0.02,
extraversion: 0.02,
emotionality: 0.02,
},
},
/**
* Cue strings lifted verbatim from
* `src/runtime/agents/cues/hexaco/translation.ts` so HEXACO scenario
* behavior is unchanged. Mid-zone is omitted intentionally: the
* legacy translator only emits cues for polarized values.
*/
cues: {
emotionality: {
low: 'you stay flat when others panic',
high: 'you feel events in your body before words',
},
openness: {
low: 'you stick to what has worked',
high: 'you look for what this moment makes possible',
},
honestyHumility: {
low: 'you speak strategically, not confessionally',
high: 'you say what you really think',
},
conscientiousness: {
low: 'you move first and adjust mid-stride',
high: 'you want a plan before you move',
},
extraversion: {
low: 'you process inward and speak only after',
high: 'you say it out loud rather than sit with it',
},
agreeableness: {
low: "you don't owe anyone smoothness right now",
high: 'you want to hold the group together through this',
},
},
recommendedProviders: ['openai', 'anthropic'],
};