cbrowser 14.0.0 → 14.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/analysis/accessibility-empathy.d.ts.map +1 -1
  2. package/dist/analysis/accessibility-empathy.js +12 -0
  3. package/dist/analysis/accessibility-empathy.js.map +1 -1
  4. package/dist/analysis/bug-hunter.d.ts.map +1 -1
  5. package/dist/analysis/bug-hunter.js +7 -2
  6. package/dist/analysis/bug-hunter.js.map +1 -1
  7. package/dist/analysis/chaos-testing.d.ts.map +1 -1
  8. package/dist/analysis/chaos-testing.js +20 -4
  9. package/dist/analysis/chaos-testing.js.map +1 -1
  10. package/dist/browser.js +1 -1
  11. package/dist/browser.js.map +1 -1
  12. package/dist/cognitive/emotions.d.ts +91 -0
  13. package/dist/cognitive/emotions.d.ts.map +1 -0
  14. package/dist/cognitive/emotions.js +448 -0
  15. package/dist/cognitive/emotions.js.map +1 -0
  16. package/dist/cognitive/index.d.ts +1 -0
  17. package/dist/cognitive/index.d.ts.map +1 -1
  18. package/dist/cognitive/index.js +110 -0
  19. package/dist/cognitive/index.js.map +1 -1
  20. package/dist/mcp-server.d.ts.map +1 -1
  21. package/dist/mcp-server.js +99 -1
  22. package/dist/mcp-server.js.map +1 -1
  23. package/dist/personas.d.ts +19 -0
  24. package/dist/personas.d.ts.map +1 -1
  25. package/dist/personas.js +279 -0
  26. package/dist/personas.js.map +1 -1
  27. package/dist/types.d.ts +117 -3
  28. package/dist/types.d.ts.map +1 -1
  29. package/dist/types.js.map +1 -1
  30. package/dist/utils.d.ts +33 -0
  31. package/dist/utils.d.ts.map +1 -1
  32. package/dist/utils.js +263 -0
  33. package/dist/utils.js.map +1 -1
  34. package/dist/visual/cross-browser.d.ts.map +1 -1
  35. package/dist/visual/cross-browser.js +14 -3
  36. package/dist/visual/cross-browser.js.map +1 -1
  37. package/package.json +1 -1
@@ -0,0 +1,91 @@
1
+ /**
2
+ * CBrowser - Cognitive Browser Automation
3
+ *
4
+ * Copyright (c) 2026 WF Media (Alexandria Eden)
5
+ * Email: alexandria.shai.eden@gmail.com
6
+ *
7
+ * This source code is licensed under the Business Source License 1.1
8
+ * found in the LICENSE file in the root directory of this source tree.
9
+ *
10
+ * Non-production use is permitted. Production use requires a commercial license.
11
+ * See LICENSE for full terms.
12
+ */
13
+ /**
14
+ * Emotional State Engine for Cognitive Browser Automation
15
+ *
16
+ * Implements emotional state modeling based on:
17
+ * - Scherer's Component Process Model of Emotion (2001)
18
+ * - Russell's Circumplex Model of Affect (1980)
19
+ * - Ortony, Clore & Collins (OCC) Model (1988)
20
+ *
21
+ * Emotions affect:
22
+ * - Abandonment thresholds
23
+ * - Exploration behavior
24
+ * - Decision-making speed
25
+ * - Error recovery
26
+ */
27
+ import type { EmotionalState, EmotionalEvent, EmotionalTrigger, EmotionalConfig, CognitiveTraits } from "../types.js";
28
+ /**
29
+ * Create an initial emotional state based on persona traits.
30
+ *
31
+ * - Low patience → higher baseline anxiety
32
+ * - High curiosity → higher baseline excitement
33
+ * - Low resilience → higher sensitivity to frustration
34
+ */
35
+ export declare function createInitialEmotionalState(traits?: Partial<CognitiveTraits>): EmotionalState;
36
+ /**
37
+ * Create emotional configuration based on persona traits.
38
+ */
39
+ export declare function createEmotionalConfig(traits?: Partial<CognitiveTraits>): EmotionalConfig;
40
+ /**
41
+ * Apply an emotional trigger event to the current state.
42
+ * Returns the new state and the event record.
43
+ */
44
+ export declare function applyEmotionalTrigger(state: EmotionalState, trigger: EmotionalTrigger, config: EmotionalConfig, stepNumber: number, context?: {
45
+ severity?: number;
46
+ description?: string;
47
+ }): {
48
+ state: EmotionalState;
49
+ event: EmotionalEvent;
50
+ };
51
+ /**
52
+ * Decay emotions toward baseline over time.
53
+ * Should be called each step.
54
+ */
55
+ export declare function decayEmotions(state: EmotionalState, config: EmotionalConfig): EmotionalState;
56
+ /**
57
+ * Calculate abandonment risk modifier based on emotional state.
58
+ *
59
+ * Returns a multiplier:
60
+ * - < 1.0 = less likely to abandon (positive emotions)
61
+ * - > 1.0 = more likely to abandon (negative emotions)
62
+ */
63
+ export declare function calculateAbandonmentModifier(state: EmotionalState): number;
64
+ /**
65
+ * Calculate exploration tendency based on emotional state.
66
+ *
67
+ * Returns 0-1:
68
+ * - Low = stays on current path
69
+ * - High = willing to explore
70
+ */
71
+ export declare function calculateExplorationTendency(state: EmotionalState): number;
72
+ /**
73
+ * Calculate decision speed modifier based on emotional state.
74
+ *
75
+ * Returns a multiplier for decision time:
76
+ * - < 1.0 = faster decisions (excitement, impatience from frustration)
77
+ * - > 1.0 = slower decisions (anxiety, confusion)
78
+ */
79
+ export declare function calculateDecisionSpeedModifier(state: EmotionalState): number;
80
+ /**
81
+ * Get a human-readable description of the current emotional state.
82
+ */
83
+ export declare function describeEmotionalState(state: EmotionalState): string;
84
+ /**
85
+ * Determine if the emotional state should trigger abandonment consideration.
86
+ */
87
+ export declare function shouldConsiderAbandonment(state: EmotionalState): {
88
+ shouldConsider: boolean;
89
+ reason?: string;
90
+ };
91
+ //# sourceMappingURL=emotions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emotions.d.ts","sourceRoot":"","sources":["../../src/cognitive/emotions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,eAAe,EAEf,eAAe,EAChB,MAAM,aAAa,CAAC;AA2CrB;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAChC,cAAc,CA4BhB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAChC,eAAe,CAYjB;AAMD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,KAAK,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,cAAc,CAAA;CAAE,CAgClD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,eAAe,GACtB,cAAc,CA8BhB;AA4MD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAoB1E;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAa1E;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAa5E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CA8CpE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,cAAc,GAAG;IAChE,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CA2BA"}
@@ -0,0 +1,448 @@
1
+ /**
2
+ * CBrowser - Cognitive Browser Automation
3
+ *
4
+ * Copyright (c) 2026 WF Media (Alexandria Eden)
5
+ * Email: alexandria.shai.eden@gmail.com
6
+ *
7
+ * This source code is licensed under the Business Source License 1.1
8
+ * found in the LICENSE file in the root directory of this source tree.
9
+ *
10
+ * Non-production use is permitted. Production use requires a commercial license.
11
+ * See LICENSE for full terms.
12
+ */
13
+ // ============================================================================
14
+ // Constants
15
+ // ============================================================================
16
+ /** Default decay rate per step (emotions decay toward baseline) */
17
+ const DEFAULT_DECAY_RATE = 0.15;
18
+ /** Default sensitivity to emotional events */
19
+ const DEFAULT_SENSITIVITY = 1.0;
20
+ /** Minimum change to register as an event */
21
+ const DEFAULT_CHANGE_THRESHOLD = 0.05;
22
+ /** Emotion valence values (-1 to +1) */
23
+ const EMOTION_VALENCE = {
24
+ anxiety: -0.7,
25
+ frustration: -0.8,
26
+ boredom: -0.4,
27
+ confusion: -0.5,
28
+ satisfaction: 0.7,
29
+ excitement: 0.8,
30
+ relief: 0.5,
31
+ neutral: 0,
32
+ };
33
+ /** Emotion arousal values (0 to 1) */
34
+ const EMOTION_AROUSAL = {
35
+ anxiety: 0.8,
36
+ frustration: 0.7,
37
+ boredom: 0.2,
38
+ confusion: 0.5,
39
+ satisfaction: 0.5,
40
+ excitement: 0.9,
41
+ relief: 0.3,
42
+ neutral: 0.3,
43
+ };
44
+ // ============================================================================
45
+ // Factory Functions
46
+ // ============================================================================
47
+ /**
48
+ * Create an initial emotional state based on persona traits.
49
+ *
50
+ * - Low patience → higher baseline anxiety
51
+ * - High curiosity → higher baseline excitement
52
+ * - Low resilience → higher sensitivity to frustration
53
+ */
54
+ export function createInitialEmotionalState(traits) {
55
+ const patience = traits?.patience ?? 0.5;
56
+ const curiosity = traits?.curiosity ?? 0.5;
57
+ const resilience = traits?.resilience ?? 0.5;
58
+ const selfEfficacy = traits?.selfEfficacy ?? 0.5;
59
+ // Baseline emotions influenced by traits
60
+ const baseAnxiety = Math.max(0, 0.1 + (1 - patience) * 0.2 + (1 - selfEfficacy) * 0.15);
61
+ const baseExcitement = Math.max(0, curiosity * 0.2);
62
+ const baseBoredom = Math.max(0, (1 - curiosity) * 0.1);
63
+ const state = {
64
+ anxiety: Math.min(1, baseAnxiety),
65
+ frustration: 0,
66
+ boredom: Math.min(1, baseBoredom),
67
+ confusion: 0,
68
+ satisfaction: 0.1, // Slight initial optimism
69
+ excitement: Math.min(1, baseExcitement),
70
+ relief: 0,
71
+ dominant: "neutral",
72
+ valence: 0,
73
+ arousal: 0.3,
74
+ };
75
+ // Calculate derived values
76
+ updateDerivedValues(state);
77
+ return state;
78
+ }
79
+ /**
80
+ * Create emotional configuration based on persona traits.
81
+ */
82
+ export function createEmotionalConfig(traits) {
83
+ const resilience = traits?.resilience ?? 0.5;
84
+ const patience = traits?.patience ?? 0.5;
85
+ return {
86
+ baseline: createInitialEmotionalState(traits),
87
+ // High resilience = faster emotional recovery
88
+ decayRate: DEFAULT_DECAY_RATE * (0.5 + resilience * 0.5),
89
+ // Low patience = higher emotional sensitivity
90
+ sensitivity: DEFAULT_SENSITIVITY * (1.5 - patience * 0.5),
91
+ changeThreshold: DEFAULT_CHANGE_THRESHOLD,
92
+ };
93
+ }
94
+ // ============================================================================
95
+ // Emotion Updates
96
+ // ============================================================================
97
+ /**
98
+ * Apply an emotional trigger event to the current state.
99
+ * Returns the new state and the event record.
100
+ */
101
+ export function applyEmotionalTrigger(state, trigger, config, stepNumber, context) {
102
+ const severity = context?.severity ?? 1.0;
103
+ const sensitivity = config.sensitivity * severity;
104
+ // Calculate emotion changes based on trigger
105
+ const changes = calculateTriggerEffects(trigger, sensitivity);
106
+ // Apply changes to state
107
+ const newState = { ...state };
108
+ for (const [emotion, delta] of Object.entries(changes)) {
109
+ const key = emotion;
110
+ if (typeof newState[key] === "number") {
111
+ newState[key] = Math.max(0, Math.min(1, newState[key] + delta));
112
+ }
113
+ }
114
+ // Update derived values
115
+ updateDerivedValues(newState);
116
+ // Create event record
117
+ const event = {
118
+ timestamp: Date.now(),
119
+ trigger,
120
+ changes,
121
+ description: context?.description ?? getDefaultTriggerDescription(trigger),
122
+ stepNumber,
123
+ };
124
+ return { state: newState, event };
125
+ }
126
+ /**
127
+ * Decay emotions toward baseline over time.
128
+ * Should be called each step.
129
+ */
130
+ export function decayEmotions(state, config) {
131
+ const baseline = config.baseline;
132
+ const decayRate = config.decayRate;
133
+ const newState = { ...state };
134
+ // Decay each emotion toward its baseline
135
+ const emotions = [
136
+ "anxiety",
137
+ "frustration",
138
+ "boredom",
139
+ "confusion",
140
+ "satisfaction",
141
+ "excitement",
142
+ "relief",
143
+ ];
144
+ for (const emotion of emotions) {
145
+ const current = newState[emotion];
146
+ const base = baseline[emotion] ?? 0;
147
+ const diff = base - current;
148
+ // Move toward baseline by decay rate
149
+ newState[emotion] =
150
+ current + diff * decayRate;
151
+ }
152
+ updateDerivedValues(newState);
153
+ return newState;
154
+ }
155
+ // ============================================================================
156
+ // Trigger Effect Calculations
157
+ // ============================================================================
158
+ /**
159
+ * Calculate emotion changes for a given trigger.
160
+ */
161
+ function calculateTriggerEffects(trigger, sensitivity) {
162
+ const s = sensitivity;
163
+ switch (trigger) {
164
+ case "success":
165
+ return {
166
+ satisfaction: 0.2 * s,
167
+ excitement: 0.1 * s,
168
+ frustration: -0.15 * s,
169
+ anxiety: -0.1 * s,
170
+ confusion: -0.1 * s,
171
+ };
172
+ case "failure":
173
+ return {
174
+ frustration: 0.25 * s,
175
+ anxiety: 0.15 * s,
176
+ satisfaction: -0.1 * s,
177
+ excitement: -0.05 * s,
178
+ };
179
+ case "error":
180
+ return {
181
+ anxiety: 0.3 * s,
182
+ frustration: 0.2 * s,
183
+ confusion: 0.15 * s,
184
+ satisfaction: -0.15 * s,
185
+ };
186
+ case "progress":
187
+ return {
188
+ satisfaction: 0.15 * s,
189
+ excitement: 0.1 * s,
190
+ boredom: -0.1 * s,
191
+ frustration: -0.05 * s,
192
+ };
193
+ case "setback":
194
+ return {
195
+ frustration: 0.2 * s,
196
+ anxiety: 0.1 * s,
197
+ satisfaction: -0.15 * s,
198
+ excitement: -0.1 * s,
199
+ };
200
+ case "waiting":
201
+ return {
202
+ boredom: 0.15 * s,
203
+ frustration: 0.05 * s,
204
+ excitement: -0.05 * s,
205
+ };
206
+ case "discovery":
207
+ return {
208
+ excitement: 0.25 * s,
209
+ satisfaction: 0.1 * s,
210
+ boredom: -0.2 * s,
211
+ };
212
+ case "completion":
213
+ return {
214
+ satisfaction: 0.3 * s,
215
+ relief: 0.2 * s,
216
+ excitement: 0.05 * s,
217
+ frustration: -0.2 * s,
218
+ anxiety: -0.15 * s,
219
+ };
220
+ case "confusion_onset":
221
+ return {
222
+ confusion: 0.25 * s,
223
+ anxiety: 0.1 * s,
224
+ frustration: 0.1 * s,
225
+ satisfaction: -0.1 * s,
226
+ };
227
+ case "clarity":
228
+ return {
229
+ confusion: -0.2 * s,
230
+ relief: 0.15 * s,
231
+ satisfaction: 0.1 * s,
232
+ anxiety: -0.1 * s,
233
+ };
234
+ case "time_pressure":
235
+ return {
236
+ anxiety: 0.25 * s,
237
+ frustration: 0.1 * s,
238
+ boredom: -0.1 * s,
239
+ };
240
+ case "recovery":
241
+ return {
242
+ relief: 0.25 * s,
243
+ satisfaction: 0.1 * s,
244
+ frustration: -0.15 * s,
245
+ anxiety: -0.2 * s,
246
+ };
247
+ default:
248
+ return {};
249
+ }
250
+ }
251
+ /**
252
+ * Get default description for a trigger.
253
+ */
254
+ function getDefaultTriggerDescription(trigger) {
255
+ const descriptions = {
256
+ success: "Action completed successfully",
257
+ failure: "Action failed to complete",
258
+ error: "System error occurred",
259
+ progress: "Made progress toward goal",
260
+ setback: "Lost progress or took wrong path",
261
+ waiting: "Waited for page or element",
262
+ discovery: "Discovered something interesting",
263
+ completion: "Completed a sub-goal",
264
+ confusion_onset: "Became confused by UI",
265
+ clarity: "UI became clearer",
266
+ time_pressure: "Running low on patience",
267
+ recovery: "Recovered from error or setback",
268
+ };
269
+ return descriptions[trigger];
270
+ }
271
+ /**
272
+ * Update derived values (dominant, valence, arousal) based on emotion intensities.
273
+ */
274
+ function updateDerivedValues(state) {
275
+ const emotions = [
276
+ "anxiety",
277
+ "frustration",
278
+ "boredom",
279
+ "confusion",
280
+ "satisfaction",
281
+ "excitement",
282
+ "relief",
283
+ ];
284
+ // Find dominant emotion
285
+ let maxIntensity = 0;
286
+ let dominant = "neutral";
287
+ for (const emotion of emotions) {
288
+ const intensity = state[emotion];
289
+ if (intensity > maxIntensity) {
290
+ maxIntensity = intensity;
291
+ dominant = emotion;
292
+ }
293
+ }
294
+ // If no emotion is significant, default to neutral
295
+ if (maxIntensity < 0.15) {
296
+ dominant = "neutral";
297
+ }
298
+ state.dominant = dominant;
299
+ // Calculate weighted valence and arousal
300
+ let totalWeight = 0;
301
+ let weightedValence = 0;
302
+ let weightedArousal = 0;
303
+ for (const emotion of emotions) {
304
+ const intensity = state[emotion];
305
+ if (intensity > 0.05) {
306
+ totalWeight += intensity;
307
+ weightedValence += intensity * EMOTION_VALENCE[emotion];
308
+ weightedArousal += intensity * EMOTION_AROUSAL[emotion];
309
+ }
310
+ }
311
+ if (totalWeight > 0) {
312
+ state.valence = weightedValence / totalWeight;
313
+ state.arousal = weightedArousal / totalWeight;
314
+ }
315
+ else {
316
+ state.valence = 0;
317
+ state.arousal = 0.3;
318
+ }
319
+ }
320
+ // ============================================================================
321
+ // Behavioral Effects
322
+ // ============================================================================
323
+ /**
324
+ * Calculate abandonment risk modifier based on emotional state.
325
+ *
326
+ * Returns a multiplier:
327
+ * - < 1.0 = less likely to abandon (positive emotions)
328
+ * - > 1.0 = more likely to abandon (negative emotions)
329
+ */
330
+ export function calculateAbandonmentModifier(state) {
331
+ // Negative emotions increase abandonment risk
332
+ const negativeLoad = state.anxiety * 0.3 +
333
+ state.frustration * 0.35 +
334
+ state.boredom * 0.25 +
335
+ state.confusion * 0.2;
336
+ // Positive emotions decrease abandonment risk
337
+ const positiveLoad = state.satisfaction * 0.3 +
338
+ state.excitement * 0.25 +
339
+ state.relief * 0.15;
340
+ // Base modifier is 1.0 (no change)
341
+ // Negative emotions increase it, positive emotions decrease it
342
+ const modifier = 1.0 + negativeLoad - positiveLoad * 0.7;
343
+ // Clamp to reasonable range
344
+ return Math.max(0.5, Math.min(2.0, modifier));
345
+ }
346
+ /**
347
+ * Calculate exploration tendency based on emotional state.
348
+ *
349
+ * Returns 0-1:
350
+ * - Low = stays on current path
351
+ * - High = willing to explore
352
+ */
353
+ export function calculateExplorationTendency(state) {
354
+ // Excitement and satisfaction encourage exploration
355
+ const positive = state.excitement * 0.4 + state.satisfaction * 0.3 + state.relief * 0.1;
356
+ // Anxiety and frustration discourage exploration
357
+ const negative = state.anxiety * 0.4 + state.frustration * 0.3 + state.confusion * 0.2;
358
+ // Boredom can go either way - might explore out of boredom or give up
359
+ const boredomEffect = state.boredom > 0.5 ? state.boredom * 0.2 : 0;
360
+ const tendency = 0.5 + positive - negative + boredomEffect;
361
+ return Math.max(0, Math.min(1, tendency));
362
+ }
363
+ /**
364
+ * Calculate decision speed modifier based on emotional state.
365
+ *
366
+ * Returns a multiplier for decision time:
367
+ * - < 1.0 = faster decisions (excitement, impatience from frustration)
368
+ * - > 1.0 = slower decisions (anxiety, confusion)
369
+ */
370
+ export function calculateDecisionSpeedModifier(state) {
371
+ // Anxiety and confusion slow decisions
372
+ const slowingFactors = state.anxiety * 0.3 + state.confusion * 0.4;
373
+ // High frustration can lead to impulsive fast decisions
374
+ const impulsiveFactor = state.frustration > 0.6 ? (state.frustration - 0.6) * 0.5 : 0;
375
+ // Excitement slightly speeds up decisions
376
+ const speedingFactor = state.excitement * 0.2 + impulsiveFactor;
377
+ const modifier = 1.0 + slowingFactors - speedingFactor;
378
+ return Math.max(0.5, Math.min(2.0, modifier));
379
+ }
380
+ /**
381
+ * Get a human-readable description of the current emotional state.
382
+ */
383
+ export function describeEmotionalState(state) {
384
+ const dominant = state.dominant;
385
+ const intensity = state[dominant];
386
+ if (dominant === "neutral" || intensity < 0.15) {
387
+ return "Feeling neutral and calm";
388
+ }
389
+ const intensityWord = intensity > 0.7 ? "very" : intensity > 0.4 ? "somewhat" : "slightly";
390
+ const emotionDescriptions = {
391
+ anxiety: "anxious about completing this task",
392
+ frustration: "frustrated with the experience",
393
+ boredom: "bored and losing interest",
394
+ confusion: "confused about what to do",
395
+ satisfaction: "satisfied with progress",
396
+ excitement: "excited and engaged",
397
+ relief: "relieved after overcoming obstacles",
398
+ neutral: "neutral and calm",
399
+ };
400
+ let description = `Feeling ${intensityWord} ${emotionDescriptions[dominant]}`;
401
+ // Add secondary emotion if significant
402
+ const emotions = [
403
+ "anxiety",
404
+ "frustration",
405
+ "boredom",
406
+ "confusion",
407
+ "satisfaction",
408
+ "excitement",
409
+ "relief",
410
+ ];
411
+ for (const emotion of emotions) {
412
+ if (emotion !== dominant) {
413
+ const secondaryIntensity = state[emotion];
414
+ if (secondaryIntensity > 0.3) {
415
+ description += `, with some ${emotion}`;
416
+ break;
417
+ }
418
+ }
419
+ }
420
+ return description;
421
+ }
422
+ /**
423
+ * Determine if the emotional state should trigger abandonment consideration.
424
+ */
425
+ export function shouldConsiderAbandonment(state) {
426
+ // High frustration is a strong abandonment signal
427
+ if (state.frustration > 0.8) {
428
+ return { shouldConsider: true, reason: "Extreme frustration" };
429
+ }
430
+ // High anxiety + low satisfaction
431
+ if (state.anxiety > 0.7 && state.satisfaction < 0.2) {
432
+ return { shouldConsider: true, reason: "High anxiety with no satisfaction" };
433
+ }
434
+ // Boredom + frustration combo
435
+ if (state.boredom > 0.6 && state.frustration > 0.5) {
436
+ return { shouldConsider: true, reason: "Bored and frustrated" };
437
+ }
438
+ // Confusion without relief
439
+ if (state.confusion > 0.7 && state.relief < 0.2) {
440
+ return { shouldConsider: true, reason: "Persistently confused" };
441
+ }
442
+ // Very negative valence
443
+ if (state.valence < -0.6 && state.arousal > 0.6) {
444
+ return { shouldConsider: true, reason: "Strong negative emotional state" };
445
+ }
446
+ return { shouldConsider: false };
447
+ }
448
+ //# sourceMappingURL=emotions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emotions.js","sourceRoot":"","sources":["../../src/cognitive/emotions.ts"],"names":[],"mappings":"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"}
@@ -84,4 +84,5 @@ export interface CognitiveStep {
84
84
  * ```
85
85
  */
86
86
  export declare function runCognitiveJourney(options: CognitiveJourneyOptions): Promise<CognitiveJourneyResult>;
87
+ export { createInitialEmotionalState, createEmotionalConfig, applyEmotionalTrigger, decayEmotions, calculateAbandonmentModifier, calculateExplorationTendency, calculateDecisionSpeedModifier, describeEmotionalState, shouldConsiderAbandonment, } from "./emotions.js";
87
88
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cognitive/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA+BH,OAAO,KAAK,EACV,cAAc,EAEd,sBAAsB,EAItB,eAAe,EAChB,MAAM,aAAa,CAAC;AAqBrB;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAalD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAO1C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAcvD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAW5C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAG5C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAO7C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAMD,MAAM,WAAW,uBAAuB;IACtC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACxC,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,cAAc,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CA6fjC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cognitive/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA+BH,OAAO,KAAK,EACV,cAAc,EAEd,sBAAsB,EAItB,eAAe,EAIhB,MAAM,aAAa,CAAC;AA8BrB;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAalD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAO1C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAcvD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAW5C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAG5C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAO7C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAMD,MAAM,WAAW,uBAAuB;IACtC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACxC,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,cAAc,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CA4kBjC;AAyYD,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,EACrB,aAAa,EACb,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,eAAe,CAAC"}