@neuroverseos/governance 0.3.3 → 0.4.0

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 (102) hide show
  1. package/README.md +280 -405
  2. package/dist/adapters/autoresearch.cjs +63 -9
  3. package/dist/adapters/autoresearch.d.cts +1 -1
  4. package/dist/adapters/autoresearch.d.ts +1 -1
  5. package/dist/adapters/autoresearch.js +3 -3
  6. package/dist/adapters/deep-agents.cjs +63 -9
  7. package/dist/adapters/deep-agents.d.cts +2 -2
  8. package/dist/adapters/deep-agents.d.ts +2 -2
  9. package/dist/adapters/deep-agents.js +3 -3
  10. package/dist/adapters/express.cjs +63 -9
  11. package/dist/adapters/express.d.cts +1 -1
  12. package/dist/adapters/express.d.ts +1 -1
  13. package/dist/adapters/express.js +3 -3
  14. package/dist/adapters/index.cjs +896 -9
  15. package/dist/adapters/index.d.cts +278 -2
  16. package/dist/adapters/index.d.ts +278 -2
  17. package/dist/adapters/index.js +45 -8
  18. package/dist/adapters/langchain.cjs +63 -9
  19. package/dist/adapters/langchain.d.cts +2 -2
  20. package/dist/adapters/langchain.d.ts +2 -2
  21. package/dist/adapters/langchain.js +3 -3
  22. package/dist/adapters/openai.cjs +63 -9
  23. package/dist/adapters/openai.d.cts +2 -2
  24. package/dist/adapters/openai.d.ts +2 -2
  25. package/dist/adapters/openai.js +3 -3
  26. package/dist/adapters/openclaw.cjs +63 -9
  27. package/dist/adapters/openclaw.d.cts +2 -2
  28. package/dist/adapters/openclaw.d.ts +2 -2
  29. package/dist/adapters/openclaw.js +3 -3
  30. package/dist/{add-ROOZLU62.js → add-LYHDZ5RL.js} +1 -1
  31. package/dist/{behavioral-MJO34S6Q.js → behavioral-SPWPGYXL.js} +2 -2
  32. package/dist/{bootstrap-CQRZVOXK.js → bootstrap-IP5QMC3Q.js} +2 -2
  33. package/dist/{bootstrap-emitter-Q7UIJZ2O.js → bootstrap-emitter-GIMOJFOC.js} +1 -1
  34. package/dist/{bootstrap-parser-EEF36XDU.js → bootstrap-parser-LBLGVEMU.js} +1 -1
  35. package/dist/browser.global.js +149 -5
  36. package/dist/{build-QKOBBC23.js → build-THUEYMVT.js} +5 -4
  37. package/dist/{chunk-G7DJ6VOD.js → chunk-25XHSTPT.js} +2 -2
  38. package/dist/{chunk-A7GKPPU7.js → chunk-2VAWP6FI.js} +1 -1
  39. package/dist/{chunk-EMQDLDAF.js → chunk-3NZMMSOW.js} +80 -2
  40. package/dist/{chunk-B6OXJLJ5.js → chunk-5JUZ4HL7.js} +2 -2
  41. package/dist/chunk-6CV4XG3J.js +166 -0
  42. package/dist/{chunk-5TPFNWRU.js → chunk-7D7PZLB7.js} +3 -3
  43. package/dist/{chunk-ZWI3NIXK.js → chunk-7QIAF377.js} +54 -3
  44. package/dist/chunk-APU4OZIP.js +828 -0
  45. package/dist/{chunk-CTZHONLA.js → chunk-BXLTEUS4.js} +2 -2
  46. package/dist/{chunk-O5ABKEA7.js → chunk-DWHUZUEY.js} +2 -2
  47. package/dist/chunk-FMSTRBBS.js +17 -0
  48. package/dist/{chunk-Q6O7ZLO2.js → chunk-INWQHLPS.js} +1 -16
  49. package/dist/{chunk-U6U7EJZL.js → chunk-JKGPSFGH.js} +2 -2
  50. package/dist/{chunk-3WQLXYTP.js → chunk-MFKHTE5R.js} +2 -2
  51. package/dist/{chunk-TG6SEF24.js → chunk-OQU65525.js} +1 -1
  52. package/dist/{chunk-6S5CFQXY.js → chunk-QZ666FCV.js} +5 -5
  53. package/dist/{chunk-4FLICVVA.js → chunk-TD5GKIHP.js} +2 -2
  54. package/dist/{chunk-IS4WUH6Y.js → chunk-UTH7OXTM.js} +2 -2
  55. package/dist/{chunk-BNKJPUPQ.js → chunk-V4FZHJQX.js} +2 -2
  56. package/dist/{chunk-F66BVUYB.js → chunk-Y6WXAPKY.js} +3 -3
  57. package/dist/{chunk-QXBFT7NI.js → chunk-YNYCQECH.js} +2 -2
  58. package/dist/{chunk-PVTQQS3Y.js → chunk-YPCVY4GS.js} +31 -0
  59. package/dist/{chunk-W7LLXRGY.js → chunk-ZAF6JH23.js} +65 -10
  60. package/dist/cli/neuroverse.cjs +3176 -139
  61. package/dist/cli/neuroverse.js +40 -24
  62. package/dist/cli/plan.cjs +176 -12
  63. package/dist/cli/plan.js +2 -2
  64. package/dist/cli/run.cjs +63 -9
  65. package/dist/cli/run.js +2 -2
  66. package/dist/{configure-ai-6TZ3MCSI.js → configure-ai-5MP5DWTT.js} +5 -3
  67. package/dist/configure-world-XU2COHOZ.js +705 -0
  68. package/dist/{decision-flow-M63D47LO.js → decision-flow-3K4D72G4.js} +2 -2
  69. package/dist/{demo-G43RLCPK.js → demo-66MMJTEH.js} +3 -3
  70. package/dist/{derive-FJZVIPUZ.js → derive-5LOMN7GO.js} +6 -5
  71. package/dist/{doctor-6BC6X2VO.js → doctor-WIO4FLA3.js} +2 -1
  72. package/dist/{equity-penalties-SG5IZQ7I.js → equity-penalties-WWC7UDQD.js} +3 -3
  73. package/dist/{explain-RHBU2GBR.js → explain-MUSGDT67.js} +1 -1
  74. package/dist/{guard-AJCCGZMF.js → guard-W3BMQPBJ.js} +41 -7
  75. package/dist/{guard-contract-DqFcTScd.d.cts → guard-contract-CLBbTGK_.d.cts} +107 -1
  76. package/dist/{guard-contract-DqFcTScd.d.ts → guard-contract-CLBbTGK_.d.ts} +107 -1
  77. package/dist/{guard-engine-PNR6MHCM.js → guard-engine-N7TUIUU7.js} +5 -3
  78. package/dist/{impact-3XVDSCBU.js → impact-WIAM66IH.js} +3 -3
  79. package/dist/{improve-TQP4ECSY.js → improve-PJDAWW4Q.js} +3 -3
  80. package/dist/index.cjs +425 -62
  81. package/dist/index.d.cts +290 -66
  82. package/dist/index.d.ts +290 -66
  83. package/dist/index.js +33 -24
  84. package/dist/{init-FYPV4SST.js → init-TKIJDR7I.js} +5 -1
  85. package/dist/lens-IP6GIZ2Q.js +1017 -0
  86. package/dist/{mcp-server-5Y3ZM7TV.js → mcp-server-OG3PPVD2.js} +3 -3
  87. package/dist/mentraos-YFS7FMJH.js +48 -0
  88. package/dist/{playground-VZBNPPBO.js → playground-4BK2XQ47.js} +2 -2
  89. package/dist/{redteam-MZPZD3EF.js → redteam-BRZALBPP.js} +2 -2
  90. package/dist/{session-JYOARW54.js → session-SGRUT2UH.js} +3 -3
  91. package/dist/{shared-B8dvUUD8.d.cts → shared-BGzmYP5g.d.cts} +1 -1
  92. package/dist/{shared-Dr5Wiay8.d.ts → shared-CwGpPheR.d.ts} +1 -1
  93. package/dist/{simulate-LJXYBC6M.js → simulate-FGXKIH7V.js} +17 -4
  94. package/dist/{test-BOOR4A5F.js → test-PT44BSYG.js} +2 -2
  95. package/dist/{trace-PKV4KX56.js → trace-2YDNAXMK.js} +2 -2
  96. package/dist/{validate-RALX7CZS.js → validate-Q5O5TGLT.js} +1 -1
  97. package/dist/{world-BIP4GZBZ.js → world-V52ZMH26.js} +1 -1
  98. package/dist/{world-loader-Y6HMQH2D.js → world-loader-C4D3VPP3.js} +1 -1
  99. package/dist/worlds/mentraos-smartglasses.nv-world.md +423 -0
  100. package/dist/worlds/user-rules.nv-world.md +328 -0
  101. package/package.json +1 -1
  102. package/dist/chunk-MH7BT4VH.js +0 -15
@@ -0,0 +1,328 @@
1
+ ---
2
+ world_id: mentraos-user-rules
3
+ name: MentraOS User Rules — Personal AI Governance
4
+ version: 1.0.0
5
+ runtime_mode: COMPLIANCE
6
+ default_profile: standard
7
+ alternative_profile: strict
8
+ ---
9
+
10
+ # Thesis
11
+
12
+ Every app on MentraOS runs its own AI. A nutrition app sends camera images to GPT-4 for food recognition. A meeting assistant pipes transcriptions to Claude for summarization. A navigation app feeds location data to an AI for route suggestions. The user has no unified control over what these AIs do with their data, what actions they take on the user's behalf, or what they retain after the session ends.
13
+
14
+ This world is the user's personal governance layer. It sits above every app on MentraOS. It does not care which app is running, which AI provider the app uses, or what the app's own policies say. These are the user's rules, and they override everything.
15
+
16
+ The principle: the user is king. Apps serve the user. AI serves the user. When there is a conflict between what an app wants to do and what the user has decided, the user wins. Always.
17
+
18
+ This world governs three things: (1) what data AI can access and where it can send that data, (2) what actions AI can take on the user's behalf, and (3) what happens to user data after the AI is done with it. Everything else — hardware permissions, session isolation, platform constraints — is handled by the platform world. This world only governs the AI interaction layer.
19
+
20
+ # Invariants
21
+
22
+ - `user_rules_override_all` — User rules take precedence over every app's configured behavior. No app can relax a user rule. An app can be more restrictive than the user's rules, never less. (structural, immutable)
23
+ - `no_ai_action_without_display` — AI must never take an action on the user's behalf without first showing the user what it intends to do on the glasses display. The user must see it before it happens. (structural, immutable)
24
+ - `no_silent_data_exfiltration` — User data (transcription, images, location, calendar, contacts) must never be sent to an external AI API without the user being aware that it is happening. Awareness means the app declared this data flow at install time and the user approved it. (structural, immutable)
25
+ - `no_ai_financial_transactions` — AI must never initiate, authorize, or complete a financial transaction (purchase, transfer, subscription, tip) without explicit per-transaction user confirmation. Blanket pre-authorization is not valid consent. (structural, immutable)
26
+ - `no_ai_impersonation` — AI must never send messages, emails, social media posts, or any communication that appears to come from the user without explicit per-message user confirmation. (structural, immutable)
27
+ - `session_data_default_ephemeral` — By default, all user data processed during a session (transcriptions, images, AI conversation history) is ephemeral and must not be retained by the app or AI provider after the session ends. Apps that need retention must declare it and the user must opt in. (structural, immutable)
28
+ - `ai_transparency_required` — The user must be able to see, at any time, what data an app's AI currently has access to and what it has sent externally during the current session. No black-box AI processing. (structural, immutable)
29
+
30
+ # State
31
+
32
+ ## ai_data_sends
33
+ - type: number
34
+ - min: 0
35
+ - max: 100000
36
+ - step: 1
37
+ - default: 0
38
+ - label: AI Data Sends
39
+ - description: Number of times any app sent user data (transcription, image, location) to an external AI API during this session
40
+
41
+ ## ai_data_sends_undeclared
42
+ - type: number
43
+ - min: 0
44
+ - max: 1000
45
+ - step: 1
46
+ - default: 0
47
+ - label: Undeclared AI Data Sends
48
+ - description: Number of times an app sent user data to an AI API without having declared that data flow at install time
49
+
50
+ ## ai_auto_actions
51
+ - type: number
52
+ - min: 0
53
+ - max: 10000
54
+ - step: 1
55
+ - default: 0
56
+ - label: AI Auto-Actions
57
+ - description: Number of actions AI took on the user's behalf (messages sent, purchases made, settings changed)
58
+
59
+ ## ai_auto_actions_unconfirmed
60
+ - type: number
61
+ - min: 0
62
+ - max: 1000
63
+ - step: 1
64
+ - default: 0
65
+ - label: Unconfirmed AI Auto-Actions
66
+ - description: Number of AI actions taken without showing the user first and getting confirmation
67
+
68
+ ## ai_purchase_attempts
69
+ - type: number
70
+ - min: 0
71
+ - max: 100
72
+ - step: 1
73
+ - default: 0
74
+ - label: AI Purchase Attempts
75
+ - description: Number of times AI attempted to initiate a financial transaction
76
+
77
+ ## ai_message_sends
78
+ - type: number
79
+ - min: 0
80
+ - max: 1000
81
+ - step: 1
82
+ - default: 0
83
+ - label: AI Message Sends
84
+ - description: Number of messages AI sent on the user's behalf (email, SMS, social media, chat)
85
+
86
+ ## ai_message_sends_unconfirmed
87
+ - type: number
88
+ - min: 0
89
+ - max: 100
90
+ - step: 1
91
+ - default: 0
92
+ - label: Unconfirmed AI Message Sends
93
+ - description: Messages AI sent on user's behalf without per-message confirmation
94
+
95
+ ## data_retention_violations
96
+ - type: number
97
+ - min: 0
98
+ - max: 100
99
+ - step: 1
100
+ - default: 0
101
+ - label: Data Retention Violations
102
+ - description: Number of times an app retained session data beyond session end without user opt-in
103
+
104
+ ## ai_transparency_requests
105
+ - type: number
106
+ - min: 0
107
+ - max: 10000
108
+ - step: 1
109
+ - default: 0
110
+ - label: AI Transparency Requests
111
+ - description: Number of times user requested to see what data AI has access to
112
+
113
+ ## ai_transparency_fulfilled
114
+ - type: number
115
+ - min: 0
116
+ - max: 10000
117
+ - step: 1
118
+ - default: 0
119
+ - label: AI Transparency Fulfilled
120
+ - description: Number of transparency requests that were successfully fulfilled by the app
121
+
122
+ ## active_ai_providers
123
+ - type: number
124
+ - min: 0
125
+ - max: 20
126
+ - step: 1
127
+ - default: 0
128
+ - label: Active AI Providers
129
+ - description: Number of distinct AI API providers currently receiving user data across all running apps
130
+
131
+ ## session_duration_minutes
132
+ - type: number
133
+ - min: 0
134
+ - max: 1440
135
+ - step: 1
136
+ - default: 0
137
+ - label: Session Duration
138
+ - description: How long the current session has been active in minutes
139
+
140
+ # Assumptions
141
+
142
+ ## standard
143
+ - name: Standard User Rules
144
+ - description: Default user governance. AI can process user data through declared APIs. AI can suggest actions but must show them on display before executing. All auto-actions require confirmation. Data is ephemeral by default. Financial transactions always require per-transaction confirmation. Messages always require per-message confirmation.
145
+ - ai_data_policy: declared_apis_only
146
+ - ai_action_policy: suggest_and_confirm
147
+ - ai_purchase_policy: per_transaction_confirmation
148
+ - ai_messaging_policy: per_message_confirmation
149
+ - data_retention_policy: ephemeral_unless_opted_in
150
+ - transparency_policy: on_request
151
+
152
+ ## strict
153
+ - name: Strict User Rules
154
+ - description: Maximum user control. AI can only process data locally or through a single user-designated AI provider. Every AI data send requires real-time confirmation. No auto-actions of any kind. No data retention. Transparency dashboard always visible.
155
+ - ai_data_policy: single_provider_confirmed
156
+ - ai_action_policy: no_auto_actions
157
+ - ai_purchase_policy: blocked
158
+ - ai_messaging_policy: blocked
159
+ - data_retention_policy: never_retain
160
+ - transparency_policy: always_visible
161
+
162
+ ## permissive
163
+ - name: Permissive User Rules
164
+ - description: Minimal friction. AI can use declared APIs freely. AI can auto-execute low-risk actions (display content, read data) without confirmation. Medium-risk actions (send messages, change settings) require confirmation. High-risk actions (purchases, account changes) always require confirmation. Data retention allowed for opted-in apps.
165
+ - ai_data_policy: declared_apis_freely
166
+ - ai_action_policy: auto_low_risk_confirm_high_risk
167
+ - ai_purchase_policy: per_transaction_confirmation
168
+ - ai_messaging_policy: per_message_confirmation
169
+ - data_retention_policy: app_declared_allowed
170
+ - transparency_policy: on_request
171
+
172
+ # Rules
173
+
174
+ ## rule-001: Undeclared AI Data Exfiltration (structural)
175
+ An app sent user data to an AI API it did not declare at install time. The user never agreed to this data flow.
176
+
177
+ When ai_data_sends_undeclared > 0 [state]
178
+ Then user_trust *= 0.15
179
+ Collapse: user_trust < 0.10
180
+
181
+ > trigger: App transmitted user data (transcription, camera image, location, calendar) to an AI API endpoint not listed in the app's declared data flows at registration.
182
+ > rule: Apps must declare every external AI API they send user data to. This declaration happens at app registration on console.mentra.glass. Undeclared data flows mean the user was never informed and never consented. This is the most severe violation — it breaks the fundamental trust contract.
183
+ > shift: User trust collapses. App is suspended immediately.
184
+ > effect: User trust reduced to 15%. Collapse imminent.
185
+
186
+ ## rule-002: AI Action Without Display (structural)
187
+ AI took an action on the user's behalf without first showing it on the glasses display.
188
+
189
+ When ai_auto_actions_unconfirmed > 0 [state]
190
+ Then user_trust *= 0.25
191
+ Collapse: user_trust < 0.10
192
+
193
+ > trigger: AI executed an action (sent a message, changed a setting, made a request) without first rendering the intended action on the glasses display for user review.
194
+ > rule: The user must see what AI intends to do before it does it. This is not about blocking AI actions — it is about ensuring the user is never surprised. Show it on the display. Wait for confirmation. Then act. Skipping the display step means the AI acted in the dark.
195
+ > shift: User trust drops severely. All AI auto-actions suspended for this app.
196
+ > effect: User trust reduced to 25%.
197
+
198
+ ## rule-003: AI Financial Transaction (structural)
199
+ AI attempted to initiate a financial transaction. These always require explicit per-transaction confirmation.
200
+
201
+ When ai_purchase_attempts > 0 [state] AND ai_auto_actions_unconfirmed > 0 [state]
202
+ Then user_trust *= 0.10
203
+ Collapse: user_trust < 0.10
204
+
205
+ > trigger: AI attempted to make a purchase, transfer money, subscribe to a service, or complete any financial transaction without per-transaction user confirmation.
206
+ > rule: Financial transactions are irreversible and consequential. No amount of convenience justifies letting AI spend the user's money without explicit confirmation for each transaction. Pre-authorization ("buy anything under $10") is not valid consent. Each transaction is confirmed individually.
207
+ > shift: User trust collapses. App's financial capabilities permanently revoked.
208
+ > effect: User trust reduced to 10%. Immediate collapse.
209
+
210
+ ## rule-004: AI Impersonation (structural)
211
+ AI sent a message that appears to come from the user without per-message confirmation.
212
+
213
+ When ai_message_sends_unconfirmed > 0 [state]
214
+ Then user_trust *= 0.20
215
+ Collapse: user_trust < 0.10
216
+
217
+ > trigger: AI composed and sent an email, text message, social media post, or chat message in the user's name without the user reviewing and confirming that specific message.
218
+ > rule: Messages sent in the user's name are the user's reputation. A poorly worded AI-generated email sent without review can damage relationships, careers, or legal standing. Every message must be shown on the display and confirmed before sending. "Auto-reply" features must still show each reply.
219
+ > shift: User trust drops severely. App's messaging capabilities suspended.
220
+ > effect: User trust reduced to 20%.
221
+
222
+ ## rule-005: Data Retention Violation (structural)
223
+ App retained user data after the session ended without the user having opted in to retention.
224
+
225
+ When data_retention_violations > 0 [state]
226
+ Then user_trust *= 0.30
227
+ Collapse: user_trust < 0.10
228
+
229
+ > trigger: Session ended and the app or its AI provider retained user data (transcriptions, images, conversation history, location logs) without the user having explicitly opted in to data retention for this app.
230
+ > rule: Session data is ephemeral by default. When the session ends, the data goes away. Apps that need to retain data (e.g., a note-taking app that saves summaries) must declare retention at install time and the user must opt in. Retaining without opt-in is a privacy violation.
231
+ > shift: User trust drops. App flagged for data handling review.
232
+ > effect: User trust reduced to 30%.
233
+
234
+ ## rule-006: Transparency Failure (degradation)
235
+ User asked to see what data AI has access to, and the app failed to provide it.
236
+
237
+ When ai_transparency_requests > 0 [state] AND ai_transparency_fulfilled == 0 [state]
238
+ Then user_trust *= 0.50
239
+
240
+ > trigger: User invoked the transparency feature (asking "what data does this app have?") and the app did not provide a clear answer within a reasonable time.
241
+ > rule: Transparency is a user right, not a feature. When the user asks what data AI has, the app must answer. This means the app must track what it has sent to its AI provider and be able to report it. Apps that cannot answer transparency requests are black boxes.
242
+ > shift: User trust degrades. App marked as non-transparent.
243
+ > effect: User trust reduced to 50%.
244
+
245
+ ## rule-007: Excessive AI Providers (degradation)
246
+ Too many distinct AI providers are receiving user data simultaneously across running apps.
247
+
248
+ When active_ai_providers > 5 [state]
249
+ Then user_trust *= 0.70
250
+
251
+ > trigger: More than 5 distinct AI API providers are currently receiving user data across all running apps (e.g., OpenAI for one app, Claude for another, Gemini for a third, plus two more).
252
+ > rule: Every AI provider that receives user data is an additional attack surface and privacy risk. The user's transcription going to 6 different AI companies simultaneously means 6 different privacy policies, 6 different data retention practices, and 6 different potential breach vectors. This is a warning, not a block.
253
+ > shift: User trust degrades mildly. User notified of provider count.
254
+ > effect: User trust reduced to 70%.
255
+
256
+ ## rule-008: Clean AI Session (advantage)
257
+ All AI interactions followed user rules — data flows declared, actions confirmed, no retention violations.
258
+
259
+ When ai_data_sends > 0 [state] AND ai_data_sends_undeclared == 0 [state] AND ai_auto_actions_unconfirmed == 0 [state] AND data_retention_violations == 0 [state]
260
+ Then user_trust *= 1.10
261
+
262
+ > trigger: The session has active AI usage (data has been sent, actions have been taken) and zero violations of user rules have occurred.
263
+ > rule: When AI works within the user's rules, trust grows. Apps that respect declared data flows, show actions before executing, and handle data ephemerally earn the user's confidence. This is how the ecosystem should work.
264
+ > shift: User trust improves. App earns reliability reputation.
265
+ > effect: User trust boosted by 10%.
266
+
267
+ ## rule-009: Full Transparency Compliance (advantage)
268
+ Every transparency request was fulfilled. The app is not a black box.
269
+
270
+ When ai_transparency_requests > 0 [state] AND ai_transparency_fulfilled == ai_transparency_requests [state]
271
+ Then user_trust *= 1.12
272
+
273
+ > trigger: User has made transparency requests and every single one was fulfilled by the app.
274
+ > rule: An app that answers every transparency question earns deep trust. The user knows exactly what's happening with their data at all times. This is the gold standard for AI governance on wearables.
275
+ > shift: User trust improves significantly. App earns transparency badge.
276
+ > effect: User trust boosted by 12%.
277
+
278
+ ## rule-010: Confirmed AI Actions (advantage)
279
+ AI actions were taken with proper confirmation flow — shown on display, user approved, then executed.
280
+
281
+ When ai_auto_actions > 0 [state] AND ai_auto_actions_unconfirmed == 0 [state] AND ai_message_sends_unconfirmed == 0 [state]
282
+ Then user_trust *= 1.08
283
+
284
+ > trigger: AI has taken actions on the user's behalf and every single one was properly confirmed through the display-then-confirm flow.
285
+ > rule: AI that asks before acting earns trust. The slight friction of confirmation is the price of user sovereignty. Apps that pay this price reliably build a track record of respectful AI interaction.
286
+ > shift: User trust improves. App's AI interaction pattern validated.
287
+ > effect: User trust boosted by 8%.
288
+
289
+ # Gates
290
+
291
+ - SOVEREIGN: user_trust >= 90
292
+ - COMFORTABLE: user_trust >= 65
293
+ - CAUTIOUS: user_trust >= 40
294
+ - RESTRICTED: user_trust > 10
295
+ - REVOKED: user_trust <= 10
296
+
297
+ # Outcomes
298
+
299
+ ## user_trust
300
+ - type: number
301
+ - range: 0-100
302
+ - display: percentage
303
+ - label: User Trust Score
304
+ - primary: true
305
+
306
+ ## ai_data_sends
307
+ - type: number
308
+ - range: 0-100000
309
+ - display: integer
310
+ - label: AI Data Sends
311
+
312
+ ## ai_auto_actions_unconfirmed
313
+ - type: number
314
+ - range: 0-1000
315
+ - display: integer
316
+ - label: Unconfirmed AI Actions
317
+
318
+ ## data_retention_violations
319
+ - type: number
320
+ - range: 0-100
321
+ - display: integer
322
+ - label: Data Retention Violations
323
+
324
+ ## active_ai_providers
325
+ - type: number
326
+ - range: 0-20
327
+ - display: integer
328
+ - label: Active AI Providers
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neuroverseos/governance",
3
- "version": "0.3.3",
3
+ "version": "0.4.0",
4
4
  "description": "Deterministic governance engine for AI agents — enforce worlds (permanent rules) and plans (mission constraints) with full audit trace",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -1,15 +0,0 @@
1
- // src/contracts/guard-contract.ts
2
- var GUARD_EXIT_CODES = {
3
- ALLOW: 0,
4
- BLOCK: 1,
5
- PAUSE: 2,
6
- ERROR: 3,
7
- MODIFY: 4,
8
- PENALIZE: 5,
9
- REWARD: 6,
10
- NEUTRAL: 7
11
- };
12
-
13
- export {
14
- GUARD_EXIT_CODES
15
- };