@geminilight/mindos 1.1.59 → 1.1.61

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 (155) hide show
  1. package/README.md +62 -64
  2. package/README_zh.md +60 -62
  3. package/dist/agent/index.d.ts +2 -0
  4. package/dist/agent/index.d.ts.map +1 -1
  5. package/dist/agent/index.js +2 -0
  6. package/dist/agent/index.js.map +1 -1
  7. package/dist/agent/ledger/run-ledger-types.d.ts +26 -2
  8. package/dist/agent/ledger/run-ledger-types.d.ts.map +1 -1
  9. package/dist/agent/ledger/run-ledger.d.ts.map +1 -1
  10. package/dist/agent/ledger/run-ledger.js +30 -1
  11. package/dist/agent/ledger/run-ledger.js.map +1 -1
  12. package/dist/agent/ledger/run-timeline-events.d.ts.map +1 -1
  13. package/dist/agent/ledger/run-timeline-events.js +16 -8
  14. package/dist/agent/ledger/run-timeline-events.js.map +1 -1
  15. package/dist/agent/mode-run-events.d.ts +15 -0
  16. package/dist/agent/mode-run-events.d.ts.map +1 -0
  17. package/dist/agent/mode-run-events.js +56 -0
  18. package/dist/agent/mode-run-events.js.map +1 -0
  19. package/dist/agent/mode.d.ts +77 -0
  20. package/dist/agent/mode.d.ts.map +1 -0
  21. package/dist/agent/mode.js +271 -0
  22. package/dist/agent/mode.js.map +1 -0
  23. package/dist/agent/runtime/adapters/index.d.ts +1 -0
  24. package/dist/agent/runtime/adapters/index.d.ts.map +1 -1
  25. package/dist/agent/runtime/adapters/index.js +1 -0
  26. package/dist/agent/runtime/adapters/index.js.map +1 -1
  27. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.d.ts +4 -0
  28. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.d.ts.map +1 -0
  29. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.js +83 -0
  30. package/dist/agent/runtime/adapters/session-transcripts/adapters/claude.js.map +1 -0
  31. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.d.ts +4 -0
  32. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.d.ts.map +1 -0
  33. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.js +74 -0
  34. package/dist/agent/runtime/adapters/session-transcripts/adapters/codebuddy-code.js.map +1 -0
  35. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.d.ts +4 -0
  36. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.d.ts.map +1 -0
  37. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.js +73 -0
  38. package/dist/agent/runtime/adapters/session-transcripts/adapters/gemini.js.map +1 -0
  39. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.d.ts +4 -0
  40. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.d.ts.map +1 -0
  41. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.js +61 -0
  42. package/dist/agent/runtime/adapters/session-transcripts/adapters/kimi.js.map +1 -0
  43. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.d.ts +4 -0
  44. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.d.ts.map +1 -0
  45. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.js +156 -0
  46. package/dist/agent/runtime/adapters/session-transcripts/adapters/openclaw.js.map +1 -0
  47. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.d.ts +4 -0
  48. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.d.ts.map +1 -0
  49. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.js +79 -0
  50. package/dist/agent/runtime/adapters/session-transcripts/adapters/opencode.js.map +1 -0
  51. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.d.ts +4 -0
  52. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.d.ts.map +1 -0
  53. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.js +86 -0
  54. package/dist/agent/runtime/adapters/session-transcripts/adapters/qwen-code.js.map +1 -0
  55. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.d.ts +4 -0
  56. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.d.ts.map +1 -0
  57. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.js +22 -0
  58. package/dist/agent/runtime/adapters/session-transcripts/adapters/unverified.js.map +1 -0
  59. package/dist/agent/runtime/adapters/session-transcripts/file-system.d.ts +24 -0
  60. package/dist/agent/runtime/adapters/session-transcripts/file-system.d.ts.map +1 -0
  61. package/dist/agent/runtime/adapters/session-transcripts/file-system.js +127 -0
  62. package/dist/agent/runtime/adapters/session-transcripts/file-system.js.map +1 -0
  63. package/dist/agent/runtime/adapters/session-transcripts/index.d.ts +4 -0
  64. package/dist/agent/runtime/adapters/session-transcripts/index.d.ts.map +1 -0
  65. package/dist/agent/runtime/adapters/session-transcripts/index.js +3 -0
  66. package/dist/agent/runtime/adapters/session-transcripts/index.js.map +1 -0
  67. package/dist/agent/runtime/adapters/session-transcripts/normalizer.d.ts +45 -0
  68. package/dist/agent/runtime/adapters/session-transcripts/normalizer.d.ts.map +1 -0
  69. package/dist/agent/runtime/adapters/session-transcripts/normalizer.js +331 -0
  70. package/dist/agent/runtime/adapters/session-transcripts/normalizer.js.map +1 -0
  71. package/dist/agent/runtime/adapters/session-transcripts/registry.d.ts +8 -0
  72. package/dist/agent/runtime/adapters/session-transcripts/registry.d.ts.map +1 -0
  73. package/dist/agent/runtime/adapters/session-transcripts/registry.js +73 -0
  74. package/dist/agent/runtime/adapters/session-transcripts/registry.js.map +1 -0
  75. package/dist/agent/runtime/adapters/session-transcripts/types.d.ts +51 -0
  76. package/dist/agent/runtime/adapters/session-transcripts/types.d.ts.map +1 -0
  77. package/dist/agent/runtime/adapters/session-transcripts/types.js +2 -0
  78. package/dist/agent/runtime/adapters/session-transcripts/types.js.map +1 -0
  79. package/dist/agent/runtime/capabilities.d.ts.map +1 -1
  80. package/dist/agent/runtime/capabilities.js +12 -0
  81. package/dist/agent/runtime/capabilities.js.map +1 -1
  82. package/dist/agent/runtime/codex-app-server.d.ts +24 -0
  83. package/dist/agent/runtime/codex-app-server.d.ts.map +1 -1
  84. package/dist/agent/runtime/codex-app-server.js +57 -0
  85. package/dist/agent/runtime/codex-app-server.js.map +1 -1
  86. package/dist/agent/runtime/registry.d.ts +6 -0
  87. package/dist/agent/runtime/registry.d.ts.map +1 -1
  88. package/dist/agent/runtime/registry.js.map +1 -1
  89. package/dist/agent/runtime/run.d.ts +3 -1
  90. package/dist/agent/runtime/run.d.ts.map +1 -1
  91. package/dist/agent/runtime/run.js +11 -3
  92. package/dist/agent/runtime/run.js.map +1 -1
  93. package/dist/agent/tool/kb-tools.d.ts.map +1 -1
  94. package/dist/agent/tool/kb-tools.js +66 -2
  95. package/dist/agent/tool/kb-tools.js.map +1 -1
  96. package/dist/capabilities.d.ts +1 -1
  97. package/dist/capabilities.d.ts.map +1 -1
  98. package/dist/capabilities.js +8 -0
  99. package/dist/capabilities.js.map +1 -1
  100. package/dist/client.d.ts +1 -1
  101. package/dist/client.d.ts.map +1 -1
  102. package/dist/intelligence/cognition/human-modeling.d.ts +84 -0
  103. package/dist/intelligence/cognition/human-modeling.d.ts.map +1 -0
  104. package/dist/intelligence/cognition/human-modeling.js +314 -0
  105. package/dist/intelligence/cognition/human-modeling.js.map +1 -0
  106. package/dist/intelligence/cognition/index.d.ts +2 -0
  107. package/dist/intelligence/cognition/index.d.ts.map +1 -0
  108. package/dist/intelligence/cognition/index.js +2 -0
  109. package/dist/intelligence/cognition/index.js.map +1 -0
  110. package/dist/intelligence/index.d.ts +2 -0
  111. package/dist/intelligence/index.d.ts.map +1 -0
  112. package/dist/intelligence/index.js +2 -0
  113. package/dist/intelligence/index.js.map +1 -0
  114. package/dist/intelligence.d.ts +14 -0
  115. package/dist/intelligence.d.ts.map +1 -0
  116. package/dist/intelligence.js +11 -0
  117. package/dist/intelligence.js.map +1 -0
  118. package/dist/knowledge/content-integrity.d.ts +15 -0
  119. package/dist/knowledge/content-integrity.d.ts.map +1 -0
  120. package/dist/knowledge/content-integrity.js +55 -0
  121. package/dist/knowledge/content-integrity.js.map +1 -0
  122. package/dist/protocols/mcp-server/index.cjs +32 -32
  123. package/dist/protocols/mcp-server/index.js +34 -17
  124. package/dist/protocols/mcp-server/index.js.map +1 -1
  125. package/dist/server/contract.d.ts.map +1 -1
  126. package/dist/server/contract.js +1 -0
  127. package/dist/server/contract.js.map +1 -1
  128. package/dist/server/handlers/agent-runtimes-codex.d.ts +5 -1
  129. package/dist/server/handlers/agent-runtimes-codex.d.ts.map +1 -1
  130. package/dist/server/handlers/agent-runtimes-codex.js +13 -0
  131. package/dist/server/handlers/agent-runtimes-codex.js.map +1 -1
  132. package/dist/server/handlers/agent-turn.d.ts +1 -1
  133. package/dist/server/handlers/agent-turn.d.ts.map +1 -1
  134. package/dist/server/handlers/agent-turn.js +1 -1
  135. package/dist/server/handlers/agent-turn.js.map +1 -1
  136. package/dist/server/handlers/file.d.ts.map +1 -1
  137. package/dist/server/handlers/file.js +70 -17
  138. package/dist/server/handlers/file.js.map +1 -1
  139. package/dist/server/handlers/mcp-install-skill.d.ts +25 -0
  140. package/dist/server/handlers/mcp-install-skill.d.ts.map +1 -1
  141. package/dist/server/handlers/mcp-install-skill.js +231 -9
  142. package/dist/server/handlers/mcp-install-skill.js.map +1 -1
  143. package/dist/server/http.d.ts.map +1 -1
  144. package/dist/server/http.js +9 -1
  145. package/dist/server/http.js.map +1 -1
  146. package/dist/server/index.d.ts +1 -1
  147. package/dist/server/index.d.ts.map +1 -1
  148. package/dist/server/index.js +1 -1
  149. package/dist/server/index.js.map +1 -1
  150. package/dist/server/provider-settings.js +4 -4
  151. package/dist/server/provider-settings.js.map +1 -1
  152. package/dist/server/route-ownership.d.ts.map +1 -1
  153. package/dist/server/route-ownership.js +3 -0
  154. package/dist/server/route-ownership.js.map +1 -1
  155. package/package.json +17 -9
@@ -0,0 +1,84 @@
1
+ export type MindosHumanSignalKind = 'observation' | 'value' | 'principle' | 'long-term-direction' | 'decision' | 'boundary' | 'rule' | 'commitment' | 'preference' | 'workflow' | 'method' | 'strategy' | 'checklist' | 'practice' | 'tool' | 'asset' | 'template' | 'resource' | 'episode' | 'imprint' | 'open-loop' | 'correction';
2
+ export type MindosHumanModelTarget = 'dao' | 'fa' | 'shu' | 'qi' | 'echo';
3
+ export type MindosHumanModelProjection = 'global' | 'workspace';
4
+ export type MindosHumanSignalScope = 'global' | 'workspace' | 'project' | 'session';
5
+ export type MindosHumanModelSignalStatus = 'candidate' | 'accepted' | 'rejected' | 'deprecated';
6
+ export type MindosHumanModelStability = 'stable' | 'candidate' | 'episodic' | 'rejected' | 'deprecated';
7
+ export type MindosHumanModelUpdateAction = 'promote' | 'review' | 'keep-episodic' | 'ignore' | 'deprecate';
8
+ export type MindosHumanModelUpdateReason = 'empty-content' | 'explicitly-rejected' | 'explicitly-deprecated' | 'user-confirmed' | 'repeated-evidence' | 'single-evidence' | 'low-evidence' | 'episodic-kind' | 'unknown-kind' | 'high-impact-review' | 'workspace-projection';
9
+ export type MindosHumanEvidenceSource = 'user-message' | 'assistant-message' | 'agent-run' | 'manual-note' | 'mind-file' | 'echo-card' | 'external';
10
+ export interface MindosHumanEvidenceRef {
11
+ readonly id?: string;
12
+ readonly source: MindosHumanEvidenceSource;
13
+ readonly uri?: string;
14
+ readonly quote?: string;
15
+ readonly observedAt?: string;
16
+ readonly confirmedByUser?: boolean;
17
+ }
18
+ export interface MindosHumanModelSignal {
19
+ readonly id?: string;
20
+ readonly kind: MindosHumanSignalKind | (string & {});
21
+ readonly content: string;
22
+ readonly subject?: string;
23
+ readonly scope?: MindosHumanSignalScope;
24
+ readonly workspaceId?: string;
25
+ readonly tags?: readonly string[];
26
+ readonly evidence?: readonly MindosHumanEvidenceRef[];
27
+ readonly confidence?: number;
28
+ readonly userConfirmed?: boolean;
29
+ readonly status?: MindosHumanModelSignalStatus;
30
+ readonly createdAt?: string;
31
+ }
32
+ export interface MindosNormalizedHumanModelSignal extends Omit<MindosHumanModelSignal, 'kind' | 'content' | 'tags' | 'evidence' | 'confidence'> {
33
+ readonly kind: string;
34
+ readonly content: string;
35
+ readonly tags: readonly string[];
36
+ readonly evidence: readonly MindosHumanEvidenceRef[];
37
+ readonly confidence: number;
38
+ }
39
+ export interface MindosHumanModelRoute {
40
+ readonly target: MindosHumanModelTarget;
41
+ readonly projection: MindosHumanModelProjection;
42
+ readonly workspaceId?: string;
43
+ readonly confidence: number;
44
+ readonly reviewRequired: boolean;
45
+ readonly reason: string;
46
+ }
47
+ export interface MindosHumanModelStabilityScore {
48
+ readonly stability: MindosHumanModelStability;
49
+ readonly confidence: number;
50
+ readonly evidenceCount: number;
51
+ readonly confirmed: boolean;
52
+ readonly reasons: readonly MindosHumanModelUpdateReason[];
53
+ }
54
+ export interface MindosHumanModelSignalAssessment {
55
+ readonly signal: MindosNormalizedHumanModelSignal;
56
+ readonly route: MindosHumanModelRoute;
57
+ readonly stability: MindosHumanModelStabilityScore;
58
+ readonly action: MindosHumanModelUpdateAction;
59
+ readonly reasons: readonly MindosHumanModelUpdateReason[];
60
+ }
61
+ export interface BuildMindosHumanModelUpdatesInput {
62
+ readonly signals: readonly MindosHumanModelSignal[];
63
+ readonly dedupe?: boolean;
64
+ }
65
+ export interface BuildMindosHumanModelUpdatesOutput {
66
+ readonly updates: readonly MindosHumanModelSignalAssessment[];
67
+ readonly stats: {
68
+ readonly totalSignals: number;
69
+ readonly modeledSignals: number;
70
+ readonly ignoredSignals: number;
71
+ readonly byTarget: Readonly<Record<MindosHumanModelTarget, number>>;
72
+ readonly byAction: Readonly<Record<MindosHumanModelUpdateAction, number>>;
73
+ };
74
+ }
75
+ export declare const HUMAN_MODEL_TARGETS: readonly ["dao", "fa", "shu", "qi", "echo"];
76
+ export declare const HUMAN_MODEL_UPDATE_ACTIONS: readonly ["promote", "review", "keep-episodic", "ignore", "deprecate"];
77
+ export declare function isMindosHumanSignalKind(kind: string): kind is MindosHumanSignalKind;
78
+ export declare function normalizeMindosHumanSignal(signal: MindosHumanModelSignal): MindosNormalizedHumanModelSignal;
79
+ export declare function routeMindosHumanSignal(signal: MindosHumanModelSignal): MindosHumanModelRoute;
80
+ export declare function scoreMindosHumanSignalStability(signal: MindosHumanModelSignal): MindosHumanModelStabilityScore;
81
+ export declare function recommendMindosHumanModelUpdateAction(signal: MindosHumanModelSignal, route?: MindosHumanModelRoute, stability?: MindosHumanModelStabilityScore): MindosHumanModelUpdateAction;
82
+ export declare function assessMindosHumanSignal(signal: MindosHumanModelSignal): MindosHumanModelSignalAssessment;
83
+ export declare function buildMindosHumanModelUpdates({ signals, dedupe, }: BuildMindosHumanModelUpdatesInput): BuildMindosHumanModelUpdatesOutput;
84
+ //# sourceMappingURL=human-modeling.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"human-modeling.d.ts","sourceRoot":"","sources":["../../../src/intelligence/cognition/human-modeling.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,314 @@
1
+ export const HUMAN_MODEL_TARGETS = ['dao', 'fa', 'shu', 'qi', 'echo'];
2
+ export const HUMAN_MODEL_UPDATE_ACTIONS = ['promote', 'review', 'keep-episodic', 'ignore', 'deprecate'];
3
+ const TARGET_BY_KIND = {
4
+ observation: 'echo',
5
+ value: 'dao',
6
+ principle: 'dao',
7
+ 'long-term-direction': 'dao',
8
+ decision: 'dao',
9
+ boundary: 'fa',
10
+ rule: 'fa',
11
+ commitment: 'fa',
12
+ preference: 'fa',
13
+ workflow: 'shu',
14
+ method: 'shu',
15
+ strategy: 'shu',
16
+ checklist: 'shu',
17
+ practice: 'shu',
18
+ tool: 'qi',
19
+ asset: 'qi',
20
+ template: 'qi',
21
+ resource: 'qi',
22
+ episode: 'echo',
23
+ imprint: 'echo',
24
+ 'open-loop': 'echo',
25
+ correction: 'echo',
26
+ };
27
+ const KIND_ALIASES = {
28
+ values: 'value',
29
+ belief: 'principle',
30
+ direction: 'long-term-direction',
31
+ longterm: 'long-term-direction',
32
+ 'long-term-judgment': 'long-term-direction',
33
+ judgment: 'decision',
34
+ 'boundary-rule': 'boundary',
35
+ protocol: 'rule',
36
+ policy: 'rule',
37
+ habit: 'practice',
38
+ sop: 'workflow',
39
+ playbook: 'workflow',
40
+ process: 'workflow',
41
+ capability: 'tool',
42
+ dataset: 'resource',
43
+ source: 'resource',
44
+ moment: 'episode',
45
+ memory: 'imprint',
46
+ todo: 'open-loop',
47
+ };
48
+ const KNOWN_KINDS = new Set(Object.keys(TARGET_BY_KIND));
49
+ const EPISODIC_KINDS = new Set(['observation', 'episode', 'imprint', 'open-loop', 'correction']);
50
+ const HIGH_IMPACT_TARGETS = new Set(['dao', 'fa']);
51
+ export function isMindosHumanSignalKind(kind) {
52
+ return KNOWN_KINDS.has(kind);
53
+ }
54
+ export function normalizeMindosHumanSignal(signal) {
55
+ const kind = normalizeKind(signal.kind);
56
+ return {
57
+ ...signal,
58
+ kind,
59
+ content: signal.content.trim(),
60
+ tags: normalizeStringList(signal.tags ?? []),
61
+ evidence: normalizeEvidence(signal.evidence ?? []),
62
+ confidence: clampConfidence(signal.confidence ?? 0.5),
63
+ };
64
+ }
65
+ export function routeMindosHumanSignal(signal) {
66
+ const normalized = normalizeMindosHumanSignal(signal);
67
+ const knownKind = isMindosHumanSignalKind(normalized.kind);
68
+ const target = knownKind ? TARGET_BY_KIND[normalized.kind] : 'echo';
69
+ const projection = normalized.workspaceId || normalized.scope === 'workspace' ? 'workspace' : 'global';
70
+ const confirmed = isUserConfirmed(normalized);
71
+ const reviewRequired = HIGH_IMPACT_TARGETS.has(target) && !confirmed;
72
+ const confidence = knownKind ? 0.82 : 0.35;
73
+ return compactRoute({
74
+ target,
75
+ projection,
76
+ workspaceId: normalized.workspaceId?.trim() || undefined,
77
+ confidence,
78
+ reviewRequired,
79
+ reason: knownKind
80
+ ? `kind:${normalized.kind}->${target}`
81
+ : `kind:${normalized.kind || 'unknown'}->echo`,
82
+ });
83
+ }
84
+ export function scoreMindosHumanSignalStability(signal) {
85
+ const normalized = normalizeMindosHumanSignal(signal);
86
+ const evidenceCount = normalized.evidence.length;
87
+ const confirmed = isUserConfirmed(normalized);
88
+ const knownKind = isMindosHumanSignalKind(normalized.kind);
89
+ if (normalized.status === 'rejected') {
90
+ return {
91
+ stability: 'rejected',
92
+ confidence: 1,
93
+ evidenceCount,
94
+ confirmed,
95
+ reasons: ['explicitly-rejected'],
96
+ };
97
+ }
98
+ if (normalized.status === 'deprecated') {
99
+ return {
100
+ stability: 'deprecated',
101
+ confidence: 1,
102
+ evidenceCount,
103
+ confirmed,
104
+ reasons: ['explicitly-deprecated'],
105
+ };
106
+ }
107
+ if (!normalized.content) {
108
+ return {
109
+ stability: 'rejected',
110
+ confidence: 1,
111
+ evidenceCount,
112
+ confirmed,
113
+ reasons: ['empty-content'],
114
+ };
115
+ }
116
+ if (confirmed || normalized.status === 'accepted') {
117
+ return {
118
+ stability: 'stable',
119
+ confidence: Math.max(0.86, normalized.confidence),
120
+ evidenceCount,
121
+ confirmed: true,
122
+ reasons: ['user-confirmed'],
123
+ };
124
+ }
125
+ if (!knownKind) {
126
+ return {
127
+ stability: 'candidate',
128
+ confidence: Math.min(0.55, normalized.confidence),
129
+ evidenceCount,
130
+ confirmed,
131
+ reasons: ['unknown-kind'],
132
+ };
133
+ }
134
+ if (EPISODIC_KINDS.has(normalized.kind)) {
135
+ return {
136
+ stability: 'episodic',
137
+ confidence: Math.max(0.5, Math.min(0.78, normalized.confidence)),
138
+ evidenceCount,
139
+ confirmed,
140
+ reasons: ['episodic-kind'],
141
+ };
142
+ }
143
+ if (evidenceCount >= 2 && normalized.confidence >= 0.65) {
144
+ return {
145
+ stability: 'stable',
146
+ confidence: Math.max(0.78, normalized.confidence),
147
+ evidenceCount,
148
+ confirmed,
149
+ reasons: ['repeated-evidence'],
150
+ };
151
+ }
152
+ if (evidenceCount >= 1 || normalized.confidence >= 0.45) {
153
+ return {
154
+ stability: 'candidate',
155
+ confidence: Math.max(0.45, normalized.confidence),
156
+ evidenceCount,
157
+ confirmed,
158
+ reasons: evidenceCount >= 1 ? ['single-evidence'] : ['low-evidence'],
159
+ };
160
+ }
161
+ return {
162
+ stability: 'candidate',
163
+ confidence: normalized.confidence,
164
+ evidenceCount,
165
+ confirmed,
166
+ reasons: ['low-evidence'],
167
+ };
168
+ }
169
+ export function recommendMindosHumanModelUpdateAction(signal, route = routeMindosHumanSignal(signal), stability = scoreMindosHumanSignalStability(signal)) {
170
+ const normalized = normalizeMindosHumanSignal(signal);
171
+ if (!normalized.content)
172
+ return 'ignore';
173
+ switch (stability.stability) {
174
+ case 'rejected':
175
+ return 'ignore';
176
+ case 'deprecated':
177
+ return 'deprecate';
178
+ case 'episodic':
179
+ return 'keep-episodic';
180
+ case 'stable':
181
+ return route.reviewRequired ? 'review' : 'promote';
182
+ case 'candidate':
183
+ return 'review';
184
+ }
185
+ }
186
+ export function assessMindosHumanSignal(signal) {
187
+ const normalized = normalizeMindosHumanSignal(signal);
188
+ const route = routeMindosHumanSignal(normalized);
189
+ const stability = scoreMindosHumanSignalStability(normalized);
190
+ const action = recommendMindosHumanModelUpdateAction(normalized, route, stability);
191
+ const reasons = uniqueReasons([
192
+ ...stability.reasons,
193
+ ...(route.reviewRequired ? ['high-impact-review'] : []),
194
+ ...(route.projection === 'workspace' ? ['workspace-projection'] : []),
195
+ ]);
196
+ return {
197
+ signal: normalized,
198
+ route,
199
+ stability,
200
+ action,
201
+ reasons,
202
+ };
203
+ }
204
+ export function buildMindosHumanModelUpdates({ signals, dedupe = true, }) {
205
+ const seen = new Set();
206
+ const updates = [];
207
+ for (const signal of signals) {
208
+ const assessment = assessMindosHumanSignal(signal);
209
+ if (dedupe) {
210
+ const signature = humanSignalSignature(assessment);
211
+ if (seen.has(signature))
212
+ continue;
213
+ seen.add(signature);
214
+ }
215
+ updates.push(assessment);
216
+ }
217
+ return {
218
+ updates,
219
+ stats: {
220
+ totalSignals: signals.length,
221
+ modeledSignals: updates.length,
222
+ ignoredSignals: updates.filter((update) => update.action === 'ignore').length,
223
+ byTarget: countByTarget(updates),
224
+ byAction: countByAction(updates),
225
+ },
226
+ };
227
+ }
228
+ function normalizeKind(kind) {
229
+ const normalized = kind
230
+ .trim()
231
+ .toLowerCase()
232
+ .replace(/[_\s]+/g, '-');
233
+ return KIND_ALIASES[normalized] ?? normalized;
234
+ }
235
+ function normalizeStringList(values) {
236
+ const normalized = [];
237
+ const seen = new Set();
238
+ for (const value of values) {
239
+ const trimmed = value.trim();
240
+ if (!trimmed)
241
+ continue;
242
+ const key = trimmed.toLowerCase();
243
+ if (seen.has(key))
244
+ continue;
245
+ seen.add(key);
246
+ normalized.push(trimmed);
247
+ }
248
+ return normalized;
249
+ }
250
+ function normalizeEvidence(evidence) {
251
+ return evidence.map((ref) => ({
252
+ ...ref,
253
+ id: ref.id?.trim() || undefined,
254
+ uri: ref.uri?.trim() || undefined,
255
+ quote: ref.quote?.trim() || undefined,
256
+ observedAt: ref.observedAt?.trim() || undefined,
257
+ }));
258
+ }
259
+ function clampConfidence(value) {
260
+ if (!Number.isFinite(value))
261
+ return 0.5;
262
+ if (value < 0)
263
+ return 0;
264
+ if (value > 1)
265
+ return 1;
266
+ return value;
267
+ }
268
+ function isUserConfirmed(signal) {
269
+ return signal.userConfirmed === true || signal.status === 'accepted' || signal.evidence.some((ref) => ref.confirmedByUser === true);
270
+ }
271
+ function compactRoute(route) {
272
+ return route.workspaceId
273
+ ? route
274
+ : {
275
+ target: route.target,
276
+ projection: route.projection,
277
+ confidence: route.confidence,
278
+ reviewRequired: route.reviewRequired,
279
+ reason: route.reason,
280
+ };
281
+ }
282
+ function uniqueReasons(reasons) {
283
+ return [...new Set(reasons)];
284
+ }
285
+ function humanSignalSignature(assessment) {
286
+ return [
287
+ assessment.route.target,
288
+ assessment.route.projection,
289
+ assessment.route.workspaceId ?? '',
290
+ assessment.signal.kind,
291
+ assessment.signal.content.toLowerCase(),
292
+ ].join('\u0000');
293
+ }
294
+ function countByTarget(updates) {
295
+ const counts = { dao: 0, fa: 0, shu: 0, qi: 0, echo: 0 };
296
+ for (const update of updates) {
297
+ counts[update.route.target] += 1;
298
+ }
299
+ return counts;
300
+ }
301
+ function countByAction(updates) {
302
+ const counts = {
303
+ promote: 0,
304
+ review: 0,
305
+ 'keep-episodic': 0,
306
+ ignore: 0,
307
+ deprecate: 0,
308
+ };
309
+ for (const update of updates) {
310
+ counts[update.action] += 1;
311
+ }
312
+ return counts;
313
+ }
314
+ //# sourceMappingURL=human-modeling.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"human-modeling.js","sourceRoot":"","sources":["../../../src/intelligence/cognition/human-modeling.ts"],"names":[],"mappings":"AA6HA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAsD,CAAC;AAC3H,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,CAA4D,CAAC;AAEnK,MAAM,cAAc,GAA0D;IAC5E,WAAW,EAAE,MAAM;IACnB,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,KAAK;IAChB,qBAAqB,EAAE,KAAK;IAC5B,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,IAAI;IACV,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,KAAK;IACb,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,MAAM;IACf,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,MAAM;IACnB,UAAU,EAAE,MAAM;CACnB,CAAC;AAEF,MAAM,YAAY,GAA0C;IAC1D,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,qBAAqB;IAChC,QAAQ,EAAE,qBAAqB;IAC/B,oBAAoB,EAAE,qBAAqB;IAC3C,QAAQ,EAAE,UAAU;IACpB,eAAe,EAAE,UAAU;IAC3B,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,UAAU;IACjB,GAAG,EAAE,UAAU;IACf,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,UAAU;IACnB,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,WAAW;CAClB,CAAC;AAEF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAwB,MAAM,CAAC,IAAI,CAAC,cAAc,CAA4B,CAAC,CAAC;AAC3G,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS,CAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;AACzG,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAE3E,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,OAAO,WAAW,CAAC,GAAG,CAAC,IAA6B,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAA8B;IACvE,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO;QACL,GAAG,MAAM;QACT,IAAI;QACJ,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE;QAC9B,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QAC5C,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClD,UAAU,EAAE,eAAe,CAAC,MAAM,CAAC,UAAU,IAAI,GAAG,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAA8B;IACnE,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,uBAAuB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpE,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,IAAI,UAAU,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;IACvG,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IACrE,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3C,OAAO,YAAY,CAAC;QAClB,MAAM;QACN,UAAU;QACV,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,SAAS;QACxD,UAAU;QACV,cAAc;QACd,MAAM,EAAE,SAAS;YACf,CAAC,CAAC,QAAQ,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE;YACtC,CAAC,CAAC,QAAQ,UAAU,CAAC,IAAI,IAAI,SAAS,QAAQ;KACjD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,MAA8B;IAC5E,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC;IACjD,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,uBAAuB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAE3D,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACrC,OAAO;YACL,SAAS,EAAE,UAAU;YACrB,UAAU,EAAE,CAAC;YACb,aAAa;YACb,SAAS;YACT,OAAO,EAAE,CAAC,qBAAqB,CAAC;SACjC,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QACvC,OAAO;YACL,SAAS,EAAE,YAAY;YACvB,UAAU,EAAE,CAAC;YACb,aAAa;YACb,SAAS;YACT,OAAO,EAAE,CAAC,uBAAuB,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO;YACL,SAAS,EAAE,UAAU;YACrB,UAAU,EAAE,CAAC;YACb,aAAa;YACb,SAAS;YACT,OAAO,EAAE,CAAC,eAAe,CAAC;SAC3B,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAClD,OAAO;YACL,SAAS,EAAE,QAAQ;YACnB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YACjD,aAAa;YACb,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,CAAC,gBAAgB,CAAC;SAC5B,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,SAAS,EAAE,WAAW;YACtB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YACjD,aAAa;YACb,SAAS;YACT,OAAO,EAAE,CAAC,cAAc,CAAC;SAC1B,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,SAAS,EAAE,UAAU;YACrB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;YAChE,aAAa;YACb,SAAS;YACT,OAAO,EAAE,CAAC,eAAe,CAAC;SAC3B,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,IAAI,CAAC,IAAI,UAAU,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;QACxD,OAAO;YACL,SAAS,EAAE,QAAQ;YACnB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YACjD,aAAa;YACb,SAAS;YACT,OAAO,EAAE,CAAC,mBAAmB,CAAC;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,IAAI,CAAC,IAAI,UAAU,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;QACxD,OAAO;YACL,SAAS,EAAE,WAAW;YACtB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YACjD,aAAa;YACb,SAAS;YACT,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;SACrE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,WAAW;QACtB,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,aAAa;QACb,SAAS;QACT,OAAO,EAAE,CAAC,cAAc,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,MAA8B,EAC9B,KAAK,GAAG,sBAAsB,CAAC,MAAM,CAAC,EACtC,SAAS,GAAG,+BAA+B,CAAC,MAAM,CAAC;IAEnD,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,CAAC,UAAU,CAAC,OAAO;QAAE,OAAO,QAAQ,CAAC;IAEzC,QAAQ,SAAS,CAAC,SAAS,EAAE,CAAC;QAC5B,KAAK,UAAU;YACb,OAAO,QAAQ,CAAC;QAClB,KAAK,YAAY;YACf,OAAO,WAAW,CAAC;QACrB,KAAK,UAAU;YACb,OAAO,eAAe,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,KAAK,WAAW;YACd,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAA8B;IACpE,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,+BAA+B,CAAC,UAAU,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,qCAAqC,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACnF,MAAM,OAAO,GAAG,aAAa,CAAC;QAC5B,GAAG,SAAS,CAAC,OAAO;QACpB,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,oBAA6B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,sBAA+B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/E,CAAC,CAAC;IAEH,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,KAAK;QACL,SAAS;QACT,MAAM;QACN,OAAO;KACR,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,EAC3C,OAAO,EACP,MAAM,GAAG,IAAI,GACqB;IAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,OAAO,GAAuC,EAAE,CAAC;IAEvD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;YACnD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,SAAS;YAClC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO;QACP,KAAK,EAAE;YACL,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,cAAc,EAAE,OAAO,CAAC,MAAM;YAC9B,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;YAC7E,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC;YAChC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC;SACjC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,UAAU,GAAG,IAAI;SACpB,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC3B,OAAO,YAAY,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC;AAChD,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAyB;IACpD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,iBAAiB,CAAC,QAA2C;IACpE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5B,GAAG,GAAG;QACN,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,SAAS;QAC/B,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,SAAS;QACjC,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,SAAS;QACrC,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,SAAS;KAChD,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACxB,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,MAAwC;IAC/D,OAAO,MAAM,CAAC,aAAa,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;AACtI,CAAC;AAED,SAAS,YAAY,CAAC,KAA4B;IAChD,OAAO,KAAK,CAAC,WAAW;QACtB,CAAC,CAAC,KAAK;QACP,CAAC,CAAC;YACE,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC;AACR,CAAC;AAED,SAAS,aAAa,CAAC,OAAgD;IACrE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,oBAAoB,CAAC,UAA4C;IACxE,OAAO;QACL,UAAU,CAAC,KAAK,CAAC,MAAM;QACvB,UAAU,CAAC,KAAK,CAAC,UAAU;QAC3B,UAAU,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE;QAClC,UAAU,CAAC,MAAM,CAAC,IAAI;QACtB,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE;KACxC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CAAC,OAAoD;IACzE,MAAM,MAAM,GAA2C,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACjG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,OAAoD;IACzE,MAAM,MAAM,GAAiD;QAC3D,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,CAAC;QACT,eAAe,EAAE,CAAC;QAClB,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,CAAC;KACb,CAAC;IACF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { HUMAN_MODEL_UPDATE_ACTIONS, HUMAN_MODEL_TARGETS, assessMindosHumanSignal, buildMindosHumanModelUpdates, isMindosHumanSignalKind, normalizeMindosHumanSignal, recommendMindosHumanModelUpdateAction, routeMindosHumanSignal, scoreMindosHumanSignalStability, type BuildMindosHumanModelUpdatesInput, type BuildMindosHumanModelUpdatesOutput, type MindosHumanEvidenceRef, type MindosHumanEvidenceSource, type MindosHumanModelProjection, type MindosHumanModelRoute, type MindosHumanModelSignal, type MindosHumanModelSignalAssessment, type MindosHumanModelSignalStatus, type MindosHumanModelStability, type MindosHumanModelStabilityScore, type MindosHumanModelTarget, type MindosHumanModelUpdateAction, type MindosHumanModelUpdateReason, type MindosHumanSignalKind, type MindosHumanSignalScope, type MindosNormalizedHumanModelSignal, } from './human-modeling.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/intelligence/cognition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,uBAAuB,EACvB,4BAA4B,EAC5B,uBAAuB,EACvB,0BAA0B,EAC1B,qCAAqC,EACrC,sBAAsB,EACtB,+BAA+B,EAC/B,KAAK,iCAAiC,EACtC,KAAK,kCAAkC,EACvC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,gCAAgC,EACrC,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,gCAAgC,GACtC,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { HUMAN_MODEL_UPDATE_ACTIONS, HUMAN_MODEL_TARGETS, assessMindosHumanSignal, buildMindosHumanModelUpdates, isMindosHumanSignalKind, normalizeMindosHumanSignal, recommendMindosHumanModelUpdateAction, routeMindosHumanSignal, scoreMindosHumanSignalStability, } from './human-modeling.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/intelligence/cognition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,uBAAuB,EACvB,4BAA4B,EAC5B,uBAAuB,EACvB,0BAA0B,EAC1B,qCAAqC,EACrC,sBAAsB,EACtB,+BAA+B,GAkBhC,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './cognition/index.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/intelligence/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './cognition/index.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/intelligence/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,14 @@
1
+ export type MindosIntelligenceCapability = 'cognition';
2
+ export type MindosIntelligenceExtensionSlot = 'memory' | 'growth';
3
+ export interface IntelligenceCapabilityBoundary {
4
+ readonly owner: '@geminilight/mindos';
5
+ readonly loadMode: 'core';
6
+ readonly defaultRuntime: true;
7
+ readonly capabilities: readonly MindosIntelligenceCapability[];
8
+ readonly extensionSlots: readonly MindosIntelligenceExtensionSlot[];
9
+ readonly activation: 'internal-or-explicit';
10
+ readonly reason: string;
11
+ }
12
+ export declare const intelligenceCapabilityBoundary: IntelligenceCapabilityBoundary;
13
+ export * from './intelligence/index.js';
14
+ //# sourceMappingURL=intelligence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intelligence.d.ts","sourceRoot":"","sources":["../src/intelligence.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,4BAA4B,GAAG,WAAW,CAAC;AACvD,MAAM,MAAM,+BAA+B,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAElE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,SAAS,4BAA4B,EAAE,CAAC;IAC/D,QAAQ,CAAC,cAAc,EAAE,SAAS,+BAA+B,EAAE,CAAC;IACpE,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,8BAA8B,EAAE,8BAQ5C,CAAC;AAEF,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,11 @@
1
+ export const intelligenceCapabilityBoundary = {
2
+ owner: '@geminilight/mindos',
3
+ loadMode: 'core',
4
+ defaultRuntime: true,
5
+ capabilities: ['cognition'],
6
+ extensionSlots: ['memory', 'growth'],
7
+ activation: 'internal-or-explicit',
8
+ reason: 'Intelligence owns pure product algorithms such as cognition/human modeling; storage and audit stay in knowledge.',
9
+ };
10
+ export * from './intelligence/index.js';
11
+ //# sourceMappingURL=intelligence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intelligence.js","sourceRoot":"","sources":["../src/intelligence.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,8BAA8B,GAAmC;IAC5E,KAAK,EAAE,qBAAqB;IAC5B,QAAQ,EAAE,MAAM;IAChB,cAAc,EAAE,IAAI;IACpB,YAAY,EAAE,CAAC,WAAW,CAAC;IAC3B,cAAc,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpC,UAAU,EAAE,sBAAsB;IAClC,MAAM,EAAE,kHAAkH;CAC3H,CAAC;AAEF,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,15 @@
1
+ export type AgentWriteIntegrityOperation = 'write_file' | 'save_file' | 'create_file' | 'batch_create_files' | 'append_to_file' | 'insert_lines' | 'update_lines' | 'insert_after_heading' | 'update_section' | 'edit_lines';
2
+ export type AgentWriteIntegrityInput = {
3
+ operation: AgentWriteIntegrityOperation;
4
+ path: string;
5
+ content: string;
6
+ isAgentWrite: boolean;
7
+ beforeContent?: string;
8
+ allowShrink?: boolean;
9
+ allowTruncatedContent?: boolean;
10
+ allowEmpty?: boolean;
11
+ };
12
+ export declare function readBooleanFlag(params: Record<string, unknown>, snakeName: string, camelName?: string): boolean;
13
+ export declare function findMindosTruncationMarker(content: string): string | null;
14
+ export declare function assertSafeAgentWriteContent(input: AgentWriteIntegrityInput): void;
15
+ //# sourceMappingURL=content-integrity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-integrity.d.ts","sourceRoot":"","sources":["../../src/knowledge/content-integrity.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,4BAA4B,GACpC,YAAY,GACZ,WAAW,GACX,aAAa,GACb,oBAAoB,GACpB,gBAAgB,GAChB,cAAc,GACd,cAAc,GACd,sBAAsB,GACtB,gBAAgB,GAChB,YAAY,CAAC;AAEjB,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,4BAA4B,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAcF,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,SAAS,EAAE,MAAM,EACjB,SAAS,SAA0E,GAClF,OAAO,CAET;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKzE;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CA8CjF"}
@@ -0,0 +1,55 @@
1
+ const SUSPICIOUS_SHRINK_MIN_BEFORE_CHARS = 8_000;
2
+ const SUSPICIOUS_SHRINK_MIN_DELTA_CHARS = 4_000;
3
+ const SUSPICIOUS_SHRINK_RATIO = 0.6;
4
+ const TRUNCATION_MARKERS = [
5
+ { label: 'MindOS truncated-read marker', pattern: /\[\.\.\.\s*truncated\b/i },
6
+ { label: 'MindOS paginated-read marker', pattern: /\[\s*Showing characters \d+/i },
7
+ { label: 'MindOS read_file_chunk hint', pattern: /\[Use read_file_chunk to read the rest of the file/i },
8
+ { label: 'MindOS relevance-extraction marker', pattern: /\[\.\.\.extracted \d+\/\d+ paragraphs by relevance\b/i },
9
+ { label: 'MindOS context-preflight marker', pattern: /MindOS context preflight:\s*middle content omitted/i },
10
+ ];
11
+ export function readBooleanFlag(params, snakeName, camelName = snakeName.replace(/_([a-z])/g, (_, char) => char.toUpperCase())) {
12
+ return params[snakeName] === true || params[camelName] === true;
13
+ }
14
+ export function findMindosTruncationMarker(content) {
15
+ for (const marker of TRUNCATION_MARKERS) {
16
+ if (marker.pattern.test(content))
17
+ return marker.label;
18
+ }
19
+ return null;
20
+ }
21
+ export function assertSafeAgentWriteContent(input) {
22
+ if (!input.isAgentWrite)
23
+ return;
24
+ if (!input.allowTruncatedContent) {
25
+ const marker = findMindosTruncationMarker(input.content);
26
+ if (marker) {
27
+ throw new Error(`refusing to write potentially truncated content to ${input.path}: found ${marker}. `
28
+ + 'Re-read the source with paginated/chunked reads and write the complete content, '
29
+ + 'or pass allow_truncated_content=true only when this marker is intentional prose.');
30
+ }
31
+ }
32
+ if (input.operation === 'create_file' || input.operation === 'batch_create_files') {
33
+ if (!input.allowEmpty && input.content.length === 0) {
34
+ throw new Error(`refusing to create empty file ${input.path}: agent-created empty files often mean the tool payload was truncated. `
35
+ + 'Pass allow_empty=true only when an empty file is intentional.');
36
+ }
37
+ }
38
+ if ((input.operation === 'write_file' || input.operation === 'save_file') && input.content.length === 0 && !input.allowShrink) {
39
+ throw new Error(`refusing to write empty content to ${input.path}: empty full-file writes often mean the tool payload was truncated. `
40
+ + 'Pass allow_shrink=true only after verifying that clearing the file is intentional.');
41
+ }
42
+ if (input.beforeContent === undefined || input.allowShrink)
43
+ return;
44
+ const beforeChars = input.beforeContent.length;
45
+ const afterChars = input.content.length;
46
+ const shrinkChars = beforeChars - afterChars;
47
+ if (beforeChars >= SUSPICIOUS_SHRINK_MIN_BEFORE_CHARS
48
+ && shrinkChars >= SUSPICIOUS_SHRINK_MIN_DELTA_CHARS
49
+ && afterChars <= beforeChars * SUSPICIOUS_SHRINK_RATIO) {
50
+ throw new Error(`refusing to shrink ${input.path} from ${beforeChars} to ${afterChars} chars via ${input.operation}: `
51
+ + 'this looks like a truncated full-file write. Use edit_lines/update_section/append_to_file for partial edits, '
52
+ + 'or pass allow_shrink=true only after verifying the complete replacement content.');
53
+ }
54
+ }
55
+ //# sourceMappingURL=content-integrity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-integrity.js","sourceRoot":"","sources":["../../src/knowledge/content-integrity.ts"],"names":[],"mappings":"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"}