@elevasis/core 0.22.0 → 0.23.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 (112) hide show
  1. package/dist/index.d.ts +2330 -2391
  2. package/dist/index.js +2322 -1147
  3. package/dist/knowledge/index.d.ts +702 -1136
  4. package/dist/knowledge/index.js +9 -9
  5. package/dist/organization-model/index.d.ts +2330 -2391
  6. package/dist/organization-model/index.js +2322 -1147
  7. package/dist/test-utils/index.d.ts +703 -1106
  8. package/dist/test-utils/index.js +1735 -1089
  9. package/package.json +1 -1
  10. package/src/__tests__/template-core-compatibility.test.ts +11 -79
  11. package/src/_gen/__tests__/__snapshots__/contracts.md.snap +360 -98
  12. package/src/business/acquisition/api-schemas.test.ts +2 -2
  13. package/src/business/acquisition/api-schemas.ts +7 -9
  14. package/src/business/acquisition/build-templates.test.ts +4 -4
  15. package/src/business/acquisition/build-templates.ts +72 -30
  16. package/src/business/acquisition/crm-state-actions.test.ts +13 -11
  17. package/src/business/acquisition/types.ts +7 -3
  18. package/src/execution/engine/agent/core/types.ts +1 -1
  19. package/src/execution/engine/workflow/types.ts +2 -2
  20. package/src/knowledge/README.md +8 -7
  21. package/src/knowledge/__tests__/queries.test.ts +74 -73
  22. package/src/knowledge/format.ts +10 -9
  23. package/src/knowledge/index.ts +1 -1
  24. package/src/knowledge/published.ts +1 -1
  25. package/src/knowledge/queries.ts +26 -25
  26. package/src/organization-model/README.md +66 -26
  27. package/src/organization-model/__tests__/content-kinds-registry.test.ts +210 -0
  28. package/src/organization-model/__tests__/defaults.test.ts +72 -98
  29. package/src/organization-model/__tests__/domains/actions.test.ts +56 -0
  30. package/src/organization-model/__tests__/domains/customers.test.ts +299 -295
  31. package/src/organization-model/__tests__/domains/entities.test.ts +56 -0
  32. package/src/organization-model/__tests__/domains/goals.test.ts +493 -479
  33. package/src/organization-model/__tests__/domains/identity.test.ts +280 -279
  34. package/src/organization-model/__tests__/domains/navigation.test.ts +268 -212
  35. package/src/organization-model/__tests__/domains/offerings.test.ts +414 -419
  36. package/src/organization-model/__tests__/domains/policies.test.ts +323 -0
  37. package/src/organization-model/__tests__/domains/resource-mappings.test.ts +271 -271
  38. package/src/organization-model/__tests__/domains/resources.test.ts +159 -37
  39. package/src/organization-model/__tests__/domains/roles.test.ts +147 -86
  40. package/src/organization-model/__tests__/domains/statuses.test.ts +246 -243
  41. package/src/organization-model/__tests__/domains/systems.test.ts +67 -51
  42. package/src/organization-model/__tests__/flatten-additive-merge.test.ts +361 -0
  43. package/src/organization-model/__tests__/foundation.test.ts +74 -102
  44. package/src/organization-model/__tests__/get-resources-for-system.test.ts +144 -0
  45. package/src/organization-model/__tests__/graph.test.ts +899 -71
  46. package/src/organization-model/__tests__/knowledge.test.ts +173 -52
  47. package/src/organization-model/__tests__/lookup-helpers.test.ts +438 -0
  48. package/src/organization-model/__tests__/migration-helpers.test.ts +591 -0
  49. package/src/organization-model/__tests__/prospecting-ssot.test.ts +36 -27
  50. package/src/organization-model/__tests__/recursive-system-schema.test.ts +520 -0
  51. package/src/organization-model/__tests__/resolve.test.ts +174 -23
  52. package/src/organization-model/__tests__/schema.test.ts +291 -114
  53. package/src/organization-model/__tests__/surface-projection.test.ts +207 -97
  54. package/src/organization-model/catalogs/lead-gen.ts +144 -0
  55. package/src/organization-model/content-kinds/config.ts +36 -0
  56. package/src/organization-model/content-kinds/index.ts +74 -0
  57. package/src/organization-model/content-kinds/pipeline.ts +68 -0
  58. package/src/organization-model/content-kinds/registry.ts +44 -0
  59. package/src/organization-model/content-kinds/status.ts +71 -0
  60. package/src/organization-model/content-kinds/template.ts +83 -0
  61. package/src/organization-model/content-kinds/types.ts +117 -0
  62. package/src/organization-model/contracts.ts +13 -3
  63. package/src/organization-model/defaults.ts +488 -96
  64. package/src/organization-model/domains/actions.ts +239 -0
  65. package/src/organization-model/domains/customers.ts +78 -75
  66. package/src/organization-model/domains/entities.ts +144 -0
  67. package/src/organization-model/domains/goals.ts +83 -80
  68. package/src/organization-model/domains/knowledge.ts +74 -16
  69. package/src/organization-model/domains/navigation.ts +107 -384
  70. package/src/organization-model/domains/offerings.ts +71 -66
  71. package/src/organization-model/domains/policies.ts +102 -0
  72. package/src/organization-model/domains/projects.ts +14 -48
  73. package/src/organization-model/domains/prospecting.ts +62 -181
  74. package/src/organization-model/domains/resources.ts +81 -24
  75. package/src/organization-model/domains/roles.ts +13 -10
  76. package/src/organization-model/domains/sales.ts +10 -219
  77. package/src/organization-model/domains/shared.ts +57 -57
  78. package/src/organization-model/domains/statuses.ts +339 -130
  79. package/src/organization-model/domains/systems.ts +186 -29
  80. package/src/organization-model/foundation.ts +54 -67
  81. package/src/organization-model/graph/build.ts +682 -54
  82. package/src/organization-model/graph/link.ts +1 -1
  83. package/src/organization-model/graph/schema.ts +24 -9
  84. package/src/organization-model/graph/types.ts +20 -7
  85. package/src/organization-model/helpers.ts +231 -26
  86. package/src/organization-model/index.ts +116 -5
  87. package/src/organization-model/migration-helpers.ts +249 -0
  88. package/src/organization-model/organization-graph.mdx +16 -15
  89. package/src/organization-model/organization-model.mdx +89 -41
  90. package/src/organization-model/published.ts +120 -18
  91. package/src/organization-model/resolve.ts +117 -54
  92. package/src/organization-model/schema.ts +561 -140
  93. package/src/organization-model/surface-projection.ts +116 -122
  94. package/src/organization-model/types.ts +102 -21
  95. package/src/platform/constants/versions.ts +1 -1
  96. package/src/platform/registry/__tests__/command-view.test.ts +6 -8
  97. package/src/platform/registry/__tests__/resource-link.test.ts +13 -8
  98. package/src/platform/registry/__tests__/resource-registry.integration.test.ts +16 -31
  99. package/src/platform/registry/__tests__/resource-registry.nested-systems.test.ts +245 -0
  100. package/src/platform/registry/__tests__/resource-registry.test.ts +9 -7
  101. package/src/platform/registry/__tests__/validation.test.ts +15 -11
  102. package/src/platform/registry/resource-registry.ts +20 -8
  103. package/src/platform/registry/serialization.ts +7 -7
  104. package/src/platform/registry/types.ts +3 -3
  105. package/src/platform/registry/validation.ts +17 -15
  106. package/src/reference/_generated/contracts.md +362 -99
  107. package/src/reference/glossary.md +18 -18
  108. package/src/supabase/database.types.ts +60 -0
  109. package/src/test-utils/test-utils.test.ts +1 -6
  110. package/src/organization-model/__tests__/domains/operations.test.ts +0 -203
  111. package/src/organization-model/domains/features.ts +0 -31
  112. package/src/organization-model/domains/operations.ts +0 -85
@@ -14,355 +14,747 @@ import { DEFAULT_ORGANIZATION_MODEL_BRANDING } from './domains/branding'
14
14
  import { DEFAULT_ORGANIZATION_MODEL_IDENTITY } from './domains/identity'
15
15
  import { DEFAULT_ORGANIZATION_MODEL_CUSTOMERS } from './domains/customers'
16
16
  import { DEFAULT_ORGANIZATION_MODEL_OFFERINGS } from './domains/offerings'
17
- import { DEFAULT_ORGANIZATION_MODEL_SALES } from './domains/sales'
18
- import { DEFAULT_ORGANIZATION_MODEL_PROJECTS } from './domains/projects'
19
- import { DEFAULT_ORGANIZATION_MODEL_PROSPECTING } from './domains/prospecting'
20
- import { DEFAULT_ORGANIZATION_MODEL_OPERATIONS } from './domains/operations'
21
17
  import { DEFAULT_ORGANIZATION_MODEL_ROLES } from './domains/roles'
22
18
  import { DEFAULT_ORGANIZATION_MODEL_GOALS } from './domains/goals'
23
- import { DEFAULT_ORGANIZATION_MODEL_SYSTEMS } from './domains/systems'
24
19
  import { DEFAULT_ORGANIZATION_MODEL_RESOURCES } from './domains/resources'
25
- import { DEFAULT_ORGANIZATION_MODEL_STATUSES } from './domains/statuses'
26
- import type { KnowledgeDomain } from './domains/knowledge'
20
+ import { DEFAULT_ORGANIZATION_MODEL_ACTIONS } from './domains/actions'
21
+ import { DEFAULT_ORGANIZATION_MODEL_ENTITIES as DEFAULT_ENTITIES } from './domains/entities'
22
+ import { DEFAULT_ORGANIZATION_MODEL_POLICIES } from './domains/policies'
23
+ import { DEFAULT_ORGANIZATION_MODEL_DOMAIN_METADATA } from './schema'
24
+ import type { OrganizationModelNavigation } from './types'
27
25
 
28
- export const DEFAULT_ORGANIZATION_MODEL_KNOWLEDGE: KnowledgeDomain = {
29
- nodes: []
26
+ // Phase 4: DEFAULT_ORGANIZATION_MODEL_KNOWLEDGE is now a flat Record<id, OrgKnowledgeNode> (D3).
27
+ // The old wrapper shape { version, lastModified, nodes[] } is gone; versioning is in domainMetadata.
28
+ export const DEFAULT_ORGANIZATION_MODEL_KNOWLEDGE = {} as const
29
+
30
+ export const DEFAULT_ORGANIZATION_MODEL_ENTITIES = DEFAULT_ENTITIES
31
+
32
+ const DEFAULT_ORGANIZATION_MODEL_NAVIGATION: OrganizationModelNavigation = {
33
+ sidebar: {
34
+ primary: {
35
+ dashboard: {
36
+ type: 'surface',
37
+ label: 'Dashboard',
38
+ path: '/',
39
+ surfaceType: 'dashboard',
40
+ icon: 'feature.dashboard',
41
+ order: 10,
42
+ targets: { systems: ['dashboard'] }
43
+ },
44
+ business: {
45
+ type: 'group',
46
+ label: 'Business',
47
+ icon: 'feature.business',
48
+ order: 20,
49
+ children: {
50
+ sales: {
51
+ type: 'surface',
52
+ label: 'Sales',
53
+ path: '/sales',
54
+ surfaceType: 'page',
55
+ icon: 'feature.sales',
56
+ order: 10,
57
+ targets: { systems: ['sales'] }
58
+ },
59
+ clients: {
60
+ type: 'surface',
61
+ label: 'Clients',
62
+ path: '/clients',
63
+ surfaceType: 'list',
64
+ icon: 'feature.projects',
65
+ order: 20,
66
+ targets: { systems: ['clients'] }
67
+ },
68
+ projects: {
69
+ type: 'surface',
70
+ label: 'Projects',
71
+ path: '/projects',
72
+ surfaceType: 'page',
73
+ icon: 'feature.projects',
74
+ order: 30,
75
+ targets: { systems: ['projects'] }
76
+ }
77
+ }
78
+ },
79
+ operations: {
80
+ type: 'group',
81
+ label: 'Operations',
82
+ icon: 'feature.operations',
83
+ order: 30,
84
+ children: {
85
+ 'operations-overview': {
86
+ type: 'surface',
87
+ label: 'Overview',
88
+ path: '/operations',
89
+ surfaceType: 'page',
90
+ order: 10,
91
+ targets: { systems: ['operations.overview'] }
92
+ },
93
+ 'operations-systems': {
94
+ type: 'surface',
95
+ label: 'Systems',
96
+ path: '/operations/systems',
97
+ surfaceType: 'page',
98
+ order: 20,
99
+ targets: { systems: ['operations'] }
100
+ },
101
+ 'operations-resources': {
102
+ type: 'surface',
103
+ label: 'Resources',
104
+ path: '/operations/resources',
105
+ surfaceType: 'list',
106
+ order: 30,
107
+ targets: { systems: ['operations.resources'] }
108
+ },
109
+ 'operations-command-queue': {
110
+ type: 'surface',
111
+ label: 'Command Queue',
112
+ path: '/operations/command-queue',
113
+ surfaceType: 'list',
114
+ order: 40,
115
+ targets: { systems: ['operations.command-queue'] }
116
+ },
117
+ 'operations-task-scheduler': {
118
+ type: 'surface',
119
+ label: 'Task Scheduler',
120
+ path: '/operations/task-scheduler',
121
+ surfaceType: 'list',
122
+ order: 50,
123
+ targets: { systems: ['operations.task-scheduler'] }
124
+ }
125
+ }
126
+ },
127
+ monitoring: {
128
+ type: 'group',
129
+ label: 'Monitoring',
130
+ icon: 'feature.monitoring',
131
+ order: 40,
132
+ children: {
133
+ 'monitoring-overview': {
134
+ type: 'surface',
135
+ label: 'Overview',
136
+ path: '/monitoring',
137
+ surfaceType: 'page',
138
+ order: 10,
139
+ targets: { systems: ['monitoring'] }
140
+ },
141
+ 'monitoring-calendar': {
142
+ type: 'surface',
143
+ label: 'Calendar',
144
+ path: '/monitoring/calendar',
145
+ surfaceType: 'page',
146
+ order: 20,
147
+ targets: { systems: ['monitoring.calendar'] }
148
+ },
149
+ 'monitoring-activity-log': {
150
+ type: 'surface',
151
+ label: 'Activity Log',
152
+ path: '/monitoring/activity-log',
153
+ surfaceType: 'list',
154
+ order: 30,
155
+ targets: { systems: ['monitoring.activity-log'] }
156
+ },
157
+ 'monitoring-execution-logs': {
158
+ type: 'surface',
159
+ label: 'Execution Logs',
160
+ path: '/monitoring/execution-logs',
161
+ surfaceType: 'list',
162
+ order: 40,
163
+ targets: { systems: ['monitoring.execution-logs'] }
164
+ },
165
+ 'monitoring-execution-health': {
166
+ type: 'surface',
167
+ label: 'Execution Health',
168
+ path: '/monitoring/execution-health',
169
+ surfaceType: 'dashboard',
170
+ order: 50,
171
+ targets: { systems: ['monitoring.execution-health'] }
172
+ },
173
+ 'monitoring-notifications': {
174
+ type: 'surface',
175
+ label: 'Notifications',
176
+ path: '/monitoring/notifications',
177
+ surfaceType: 'list',
178
+ order: 60,
179
+ targets: { systems: ['monitoring.notifications'] }
180
+ },
181
+ 'monitoring-requests': {
182
+ type: 'surface',
183
+ label: 'Requests',
184
+ path: '/monitoring/requests',
185
+ surfaceType: 'list',
186
+ order: 70,
187
+ targets: { systems: ['monitoring.submitted-requests'] }
188
+ }
189
+ }
190
+ },
191
+ knowledge: {
192
+ type: 'group',
193
+ label: 'Knowledge',
194
+ icon: 'feature.knowledge',
195
+ order: 50,
196
+ children: {
197
+ 'knowledge-base': {
198
+ type: 'surface',
199
+ label: 'Knowledge Base',
200
+ path: '/knowledge',
201
+ surfaceType: 'page',
202
+ order: 10,
203
+ targets: { systems: ['knowledge.base'] }
204
+ },
205
+ 'knowledge-command-view': {
206
+ type: 'surface',
207
+ label: 'Command View',
208
+ path: '/knowledge/command-view',
209
+ surfaceType: 'graph',
210
+ order: 20,
211
+ targets: { systems: ['knowledge.command-view'] },
212
+ devOnly: true
213
+ }
214
+ }
215
+ }
216
+ },
217
+ bottom: {
218
+ settings: {
219
+ type: 'group',
220
+ label: 'Settings',
221
+ icon: 'feature.settings',
222
+ order: 10,
223
+ children: {
224
+ 'settings-account': {
225
+ type: 'surface',
226
+ label: 'Account',
227
+ path: '/settings/account',
228
+ surfaceType: 'settings',
229
+ order: 10,
230
+ targets: { systems: ['settings.account'] }
231
+ },
232
+ 'settings-appearance': {
233
+ type: 'surface',
234
+ label: 'Appearance',
235
+ path: '/settings/appearance',
236
+ surfaceType: 'settings',
237
+ order: 20,
238
+ targets: { systems: ['settings.appearance'] }
239
+ },
240
+ 'settings-roles': {
241
+ type: 'surface',
242
+ label: 'My Roles',
243
+ path: '/settings/roles',
244
+ surfaceType: 'settings',
245
+ order: 30,
246
+ targets: { systems: ['settings.roles'] }
247
+ },
248
+ 'settings-organization': {
249
+ type: 'surface',
250
+ label: 'Organization',
251
+ path: '/settings/organization',
252
+ surfaceType: 'settings',
253
+ order: 40,
254
+ targets: { systems: ['settings.organization'] }
255
+ },
256
+ 'settings-credentials': {
257
+ type: 'surface',
258
+ label: 'Credentials',
259
+ path: '/settings/credentials',
260
+ surfaceType: 'settings',
261
+ order: 50,
262
+ targets: { systems: ['settings.credentials'] }
263
+ },
264
+ 'settings-api-keys': {
265
+ type: 'surface',
266
+ label: 'API Keys',
267
+ path: '/settings/api-keys',
268
+ surfaceType: 'settings',
269
+ order: 60,
270
+ targets: { systems: ['settings.api-keys'] }
271
+ },
272
+ 'settings-webhooks': {
273
+ type: 'surface',
274
+ label: 'Webhooks',
275
+ path: '/settings/webhooks',
276
+ surfaceType: 'settings',
277
+ order: 70,
278
+ targets: { systems: ['settings.webhooks'] }
279
+ },
280
+ 'settings-deployments': {
281
+ type: 'surface',
282
+ label: 'Deployments',
283
+ path: '/settings/deployments',
284
+ surfaceType: 'settings',
285
+ order: 80,
286
+ targets: { systems: ['settings.deployments'] }
287
+ }
288
+ }
289
+ },
290
+ admin: {
291
+ type: 'group',
292
+ label: 'Admin',
293
+ icon: 'feature.admin',
294
+ order: 20,
295
+ children: {
296
+ 'admin-dashboard': {
297
+ type: 'surface',
298
+ label: 'Dashboard',
299
+ path: '/admin/dashboard',
300
+ surfaceType: 'dashboard',
301
+ order: 10,
302
+ targets: { systems: ['admin'] },
303
+ requiresAdmin: true
304
+ },
305
+ 'admin-system-health': {
306
+ type: 'surface',
307
+ label: 'System Health',
308
+ path: '/admin/system-health',
309
+ surfaceType: 'dashboard',
310
+ order: 20,
311
+ targets: { systems: ['admin.system-health'] },
312
+ requiresAdmin: true
313
+ },
314
+ 'admin-organizations': {
315
+ type: 'surface',
316
+ label: 'Organizations',
317
+ path: '/admin/organizations',
318
+ surfaceType: 'list',
319
+ order: 30,
320
+ targets: { systems: ['admin.organizations'] },
321
+ requiresAdmin: true
322
+ },
323
+ 'admin-users': {
324
+ type: 'surface',
325
+ label: 'Users',
326
+ path: '/admin/users',
327
+ surfaceType: 'list',
328
+ order: 40,
329
+ targets: { systems: ['admin.users'] },
330
+ requiresAdmin: true
331
+ },
332
+ 'admin-design-showcase': {
333
+ type: 'surface',
334
+ label: 'Design Showcase',
335
+ path: '/admin/design-showcase',
336
+ surfaceType: 'page',
337
+ order: 50,
338
+ targets: { systems: ['admin.design-showcase'] },
339
+ requiresAdmin: true
340
+ },
341
+ 'admin-debug': {
342
+ type: 'surface',
343
+ label: 'Debug',
344
+ path: '/admin/debug',
345
+ surfaceType: 'page',
346
+ order: 60,
347
+ targets: { systems: ['admin.debug'] },
348
+ requiresAdmin: true
349
+ }
350
+ }
351
+ }
352
+ }
353
+ }
30
354
  }
31
355
 
32
356
  export const DEFAULT_ORGANIZATION_MODEL: OrganizationModel = {
33
357
  version: 1,
34
- features: [
35
- {
358
+ domainMetadata: DEFAULT_ORGANIZATION_MODEL_DOMAIN_METADATA,
359
+ branding: DEFAULT_ORGANIZATION_MODEL_BRANDING,
360
+ navigation: DEFAULT_ORGANIZATION_MODEL_NAVIGATION,
361
+ identity: DEFAULT_ORGANIZATION_MODEL_IDENTITY,
362
+ customers: DEFAULT_ORGANIZATION_MODEL_CUSTOMERS,
363
+ offerings: DEFAULT_ORGANIZATION_MODEL_OFFERINGS,
364
+ roles: DEFAULT_ORGANIZATION_MODEL_ROLES,
365
+ goals: DEFAULT_ORGANIZATION_MODEL_GOALS,
366
+ systems: {
367
+ dashboard: {
36
368
  id: 'dashboard',
369
+ order: 10,
37
370
  label: 'Dashboard',
38
371
  enabled: true,
372
+ lifecycle: 'active',
39
373
  path: '/',
40
- icon: 'feature.dashboard',
41
- uiPosition: 'sidebar-primary'
42
- },
43
- {
44
- id: 'identity',
45
- label: 'Identity',
46
- description: 'Company identity, positioning, and market context',
47
- enabled: true,
48
- color: 'indigo'
374
+ icon: 'feature.dashboard'
49
375
  },
50
- {
376
+ platform: {
51
377
  id: 'platform',
378
+ order: 30,
52
379
  label: 'Platform',
53
380
  description: 'Elevasis platform architecture, capabilities, and implementation patterns',
54
381
  enabled: true,
382
+ lifecycle: 'active',
55
383
  color: 'cyan',
56
384
  icon: 'feature.platform'
57
385
  },
58
- {
386
+ finance: {
59
387
  id: 'finance',
388
+ order: 40,
60
389
  label: 'Finance',
61
390
  description: 'Finance operations, accounting, billing, reconciliation, and tax prep',
62
391
  enabled: true,
392
+ lifecycle: 'active',
63
393
  color: 'green',
64
394
  icon: 'feature.finance'
65
395
  },
66
- {
67
- id: 'business',
68
- label: 'Business',
69
- description: 'Revenue, client relationships, and project delivery',
70
- enabled: true,
71
- color: 'blue',
72
- icon: 'feature.business',
73
- uiPosition: 'sidebar-primary'
74
- },
75
- {
396
+ sales: {
76
397
  id: 'sales',
398
+ order: 60,
77
399
  label: 'Sales',
78
400
  description: 'Revenue workflows and customer acquisition',
79
401
  enabled: true,
402
+ lifecycle: 'active',
80
403
  color: 'blue',
81
404
  icon: 'feature.sales',
82
405
  path: '/sales'
83
406
  },
84
- {
407
+ 'sales.crm': {
85
408
  id: 'sales.crm',
409
+ order: 70,
86
410
  label: 'CRM',
87
411
  description: 'Relationship pipeline and deal management',
88
412
  enabled: true,
413
+ lifecycle: 'active',
89
414
  color: 'blue',
90
415
  icon: 'feature.crm',
91
416
  path: '/crm'
92
417
  },
93
- {
418
+ 'sales.lead-gen': {
94
419
  id: 'sales.lead-gen',
420
+ order: 80,
95
421
  label: 'Lead Gen',
96
422
  description: 'Prospecting, qualification, and outreach preparation',
97
423
  enabled: true,
424
+ lifecycle: 'active',
425
+ actions: Object.values(DEFAULT_ORGANIZATION_MODEL_ACTIONS).map((action) => ({
426
+ actionId: action.id,
427
+ intent: 'exposes'
428
+ })),
98
429
  color: 'cyan',
99
430
  icon: 'feature.lead-gen',
100
431
  path: '/lead-gen'
101
432
  },
102
- {
433
+ projects: {
103
434
  id: 'projects',
435
+ order: 90,
104
436
  label: 'Projects',
105
437
  description: 'Projects, milestones, and client work execution',
106
438
  enabled: true,
439
+ lifecycle: 'active',
107
440
  color: 'orange',
108
441
  icon: 'feature.projects',
109
442
  path: '/projects'
110
443
  },
111
- {
444
+ clients: {
112
445
  id: 'clients',
446
+ order: 100,
113
447
  label: 'Clients',
114
448
  description: 'Client relationships, accounts, and business context',
115
449
  enabled: true,
450
+ lifecycle: 'active',
116
451
  color: 'orange',
117
452
  icon: 'feature.projects',
118
- path: '/business/clients'
453
+ path: '/clients'
119
454
  },
120
- {
455
+ operations: {
121
456
  id: 'operations',
457
+ order: 110,
122
458
  label: 'Operations',
123
459
  description: 'Operational resources, topology, and orchestration visibility',
124
460
  enabled: true,
461
+ lifecycle: 'active',
125
462
  color: 'violet',
126
- icon: 'feature.operations',
127
- uiPosition: 'sidebar-primary'
463
+ icon: 'feature.operations'
128
464
  },
129
- {
465
+ 'knowledge.command-view': {
130
466
  id: 'knowledge.command-view',
467
+ order: 120,
131
468
  label: 'Command View',
132
469
  enabled: true,
470
+ lifecycle: 'active',
133
471
  path: '/knowledge/command-view',
134
472
  devOnly: true
135
473
  },
136
- {
474
+ 'operations.overview': {
137
475
  id: 'operations.overview',
476
+ order: 130,
138
477
  label: 'Overview',
139
478
  enabled: true,
479
+ lifecycle: 'active',
140
480
  path: '/operations'
141
481
  },
142
- {
482
+ 'operations.resources': {
143
483
  id: 'operations.resources',
484
+ order: 140,
144
485
  label: 'Resources',
145
486
  enabled: true,
487
+ lifecycle: 'active',
146
488
  path: '/operations/resources'
147
489
  },
148
- {
490
+ 'operations.command-queue': {
149
491
  id: 'operations.command-queue',
492
+ order: 150,
150
493
  label: 'Command Queue',
151
494
  enabled: true,
495
+ lifecycle: 'active',
152
496
  path: '/operations/command-queue'
153
497
  },
154
- {
498
+ 'operations.sessions': {
155
499
  id: 'operations.sessions',
500
+ order: 160,
156
501
  label: 'Sessions',
157
502
  enabled: false,
503
+ lifecycle: 'deprecated',
158
504
  path: '/operations/sessions'
159
505
  },
160
- {
506
+ 'operations.task-scheduler': {
161
507
  id: 'operations.task-scheduler',
508
+ order: 170,
162
509
  label: 'Task Scheduler',
163
510
  enabled: true,
511
+ lifecycle: 'active',
164
512
  path: '/operations/task-scheduler'
165
513
  },
166
- {
514
+ monitoring: {
167
515
  id: 'monitoring',
516
+ order: 180,
168
517
  label: 'Monitoring',
169
518
  enabled: true,
170
- uiPosition: 'sidebar-primary'
519
+ lifecycle: 'active'
171
520
  },
172
- {
521
+ 'monitoring.calendar': {
173
522
  id: 'monitoring.calendar',
523
+ order: 190,
174
524
  label: 'Calendar',
175
525
  description: 'Google Calendar events and agenda views',
176
526
  enabled: true,
527
+ lifecycle: 'active',
177
528
  path: '/monitoring/calendar',
178
529
  icon: 'feature.calendar'
179
530
  },
180
- {
531
+ 'monitoring.activity-log': {
181
532
  id: 'monitoring.activity-log',
533
+ order: 200,
182
534
  label: 'Activity Log',
183
535
  enabled: true,
536
+ lifecycle: 'active',
184
537
  path: '/monitoring/activity-log'
185
538
  },
186
- {
539
+ 'monitoring.execution-logs': {
187
540
  id: 'monitoring.execution-logs',
541
+ order: 210,
188
542
  label: 'Execution Logs',
189
543
  enabled: true,
544
+ lifecycle: 'active',
190
545
  path: '/monitoring/execution-logs'
191
546
  },
192
- {
547
+ 'monitoring.execution-health': {
193
548
  id: 'monitoring.execution-health',
549
+ order: 220,
194
550
  label: 'Execution Health',
195
551
  enabled: true,
552
+ lifecycle: 'active',
196
553
  path: '/monitoring/execution-health'
197
554
  },
198
- {
555
+ 'monitoring.cost-analytics': {
199
556
  id: 'monitoring.cost-analytics',
557
+ order: 230,
200
558
  label: 'Cost Analytics',
201
559
  enabled: false,
560
+ lifecycle: 'deprecated',
202
561
  path: '/monitoring/cost-analytics'
203
562
  },
204
- {
563
+ 'monitoring.notifications': {
205
564
  id: 'monitoring.notifications',
565
+ order: 240,
206
566
  label: 'Notifications',
207
567
  enabled: true,
568
+ lifecycle: 'active',
208
569
  path: '/monitoring/notifications'
209
570
  },
210
- {
571
+ 'monitoring.submitted-requests': {
211
572
  id: 'monitoring.submitted-requests',
573
+ order: 250,
212
574
  label: 'Submitted Requests',
213
575
  enabled: true,
576
+ lifecycle: 'active',
214
577
  path: '/monitoring/requests'
215
578
  },
216
- {
579
+ settings: {
217
580
  id: 'settings',
581
+ order: 260,
218
582
  label: 'Settings',
219
583
  enabled: true,
220
- icon: 'feature.settings',
221
- uiPosition: 'sidebar-bottom'
584
+ lifecycle: 'active',
585
+ icon: 'feature.settings'
222
586
  },
223
- {
587
+ 'settings.account': {
224
588
  id: 'settings.account',
589
+ order: 270,
225
590
  label: 'Account',
226
591
  enabled: true,
592
+ lifecycle: 'active',
227
593
  path: '/settings/account'
228
594
  },
229
- {
595
+ 'settings.appearance': {
230
596
  id: 'settings.appearance',
597
+ order: 280,
231
598
  label: 'Appearance',
232
599
  enabled: true,
600
+ lifecycle: 'active',
233
601
  path: '/settings/appearance'
234
602
  },
235
- {
603
+ 'settings.roles': {
236
604
  id: 'settings.roles',
605
+ order: 290,
237
606
  label: 'My Roles',
238
607
  enabled: true,
608
+ lifecycle: 'active',
239
609
  path: '/settings/roles'
240
610
  },
241
- {
611
+ 'settings.organization': {
242
612
  id: 'settings.organization',
613
+ order: 300,
243
614
  label: 'Organization',
244
615
  enabled: true,
616
+ lifecycle: 'active',
245
617
  path: '/settings/organization'
246
618
  },
247
- {
619
+ 'settings.credentials': {
248
620
  id: 'settings.credentials',
621
+ order: 310,
249
622
  label: 'Credentials',
250
623
  enabled: true,
624
+ lifecycle: 'active',
251
625
  path: '/settings/credentials'
252
626
  },
253
- {
627
+ 'settings.api-keys': {
254
628
  id: 'settings.api-keys',
629
+ order: 320,
255
630
  label: 'API Keys',
256
631
  enabled: true,
632
+ lifecycle: 'active',
257
633
  path: '/settings/api-keys'
258
634
  },
259
- {
635
+ 'settings.webhooks': {
260
636
  id: 'settings.webhooks',
637
+ order: 330,
261
638
  label: 'Webhooks',
262
639
  enabled: true,
640
+ lifecycle: 'active',
263
641
  path: '/settings/webhooks'
264
642
  },
265
- {
643
+ 'settings.deployments': {
266
644
  id: 'settings.deployments',
645
+ order: 340,
267
646
  label: 'Deployments',
268
647
  enabled: true,
648
+ lifecycle: 'active',
269
649
  path: '/settings/deployments'
270
650
  },
271
- {
651
+ admin: {
272
652
  id: 'admin',
653
+ order: 350,
273
654
  label: 'Admin',
274
655
  enabled: true,
656
+ lifecycle: 'active',
275
657
  path: '/admin',
276
658
  icon: 'feature.admin',
277
- uiPosition: 'sidebar-bottom',
278
659
  requiresAdmin: true
279
660
  },
280
- {
661
+ 'admin.system-health': {
281
662
  id: 'admin.system-health',
663
+ order: 360,
282
664
  label: 'System Health',
283
665
  enabled: true,
666
+ lifecycle: 'active',
284
667
  path: '/admin/system-health'
285
668
  },
286
- {
669
+ 'admin.organizations': {
287
670
  id: 'admin.organizations',
671
+ order: 370,
288
672
  label: 'Organizations',
289
673
  enabled: true,
674
+ lifecycle: 'active',
290
675
  path: '/admin/organizations'
291
676
  },
292
- {
677
+ 'admin.users': {
293
678
  id: 'admin.users',
679
+ order: 380,
294
680
  label: 'Users',
295
681
  enabled: true,
682
+ lifecycle: 'active',
296
683
  path: '/admin/users'
297
684
  },
298
- {
685
+ 'admin.design-showcase': {
299
686
  id: 'admin.design-showcase',
687
+ order: 390,
300
688
  label: 'Design Showcase',
301
689
  enabled: true,
690
+ lifecycle: 'active',
302
691
  path: '/admin/design-showcase'
303
692
  },
304
- {
693
+ 'admin.debug': {
305
694
  id: 'admin.debug',
695
+ order: 400,
306
696
  label: 'Debug',
307
697
  enabled: true,
698
+ lifecycle: 'active',
308
699
  path: '/admin/debug'
309
700
  },
310
- {
701
+ archive: {
311
702
  id: 'archive',
703
+ order: 410,
312
704
  label: 'Archive',
313
705
  enabled: true,
706
+ lifecycle: 'active',
314
707
  path: '/archive',
315
708
  icon: 'feature.archive',
316
- uiPosition: 'sidebar-bottom',
317
709
  devOnly: true
318
710
  },
319
- {
711
+ 'archive.agent-chat': {
320
712
  id: 'archive.agent-chat',
713
+ order: 420,
321
714
  label: 'Agent Chat',
322
715
  enabled: true,
716
+ lifecycle: 'active',
323
717
  path: '/archive/agent-chat'
324
718
  },
325
- {
719
+ 'archive.execution-runner': {
326
720
  id: 'archive.execution-runner',
721
+ order: 430,
327
722
  label: 'Execution Runner',
328
723
  enabled: true,
724
+ lifecycle: 'active',
329
725
  path: '/archive/execution-runner'
330
726
  },
331
- {
727
+ seo: {
332
728
  id: 'seo',
729
+ order: 440,
333
730
  label: 'SEO',
334
731
  enabled: false,
732
+ lifecycle: 'deprecated',
335
733
  path: '/seo'
336
734
  },
337
- {
735
+ knowledge: {
338
736
  id: 'knowledge',
737
+ order: 450,
339
738
  label: 'Knowledge',
340
739
  description: 'Operational knowledge, playbooks, and strategy docs',
341
740
  enabled: true,
741
+ lifecycle: 'active',
342
742
  color: 'teal',
343
- icon: 'feature.knowledge',
344
- uiPosition: 'sidebar-primary'
743
+ icon: 'feature.knowledge'
345
744
  },
346
- {
745
+ 'knowledge.base': {
347
746
  id: 'knowledge.base',
747
+ order: 460,
348
748
  label: 'Knowledge Base',
349
749
  enabled: true,
750
+ lifecycle: 'active',
350
751
  path: '/knowledge'
351
752
  }
352
- ],
353
- branding: DEFAULT_ORGANIZATION_MODEL_BRANDING,
354
- navigation: { surfaces: [], groups: [] },
355
- sales: DEFAULT_ORGANIZATION_MODEL_SALES,
356
- prospecting: DEFAULT_ORGANIZATION_MODEL_PROSPECTING,
357
- projects: DEFAULT_ORGANIZATION_MODEL_PROJECTS,
358
- identity: DEFAULT_ORGANIZATION_MODEL_IDENTITY,
359
- customers: DEFAULT_ORGANIZATION_MODEL_CUSTOMERS,
360
- offerings: DEFAULT_ORGANIZATION_MODEL_OFFERINGS,
361
- roles: DEFAULT_ORGANIZATION_MODEL_ROLES,
362
- goals: DEFAULT_ORGANIZATION_MODEL_GOALS,
363
- systems: DEFAULT_ORGANIZATION_MODEL_SYSTEMS,
753
+ },
364
754
  resources: DEFAULT_ORGANIZATION_MODEL_RESOURCES,
365
- statuses: DEFAULT_ORGANIZATION_MODEL_STATUSES,
366
- operations: DEFAULT_ORGANIZATION_MODEL_OPERATIONS,
755
+ actions: DEFAULT_ORGANIZATION_MODEL_ACTIONS,
756
+ entities: DEFAULT_ORGANIZATION_MODEL_ENTITIES,
757
+ policies: DEFAULT_ORGANIZATION_MODEL_POLICIES,
758
+ // Phase 4 (D1): statuses top-level field removed; status data lives in system.content.
367
759
  knowledge: DEFAULT_ORGANIZATION_MODEL_KNOWLEDGE
368
760
  }