spine-framework 0.3.145 → 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 (451) hide show
  1. package/.env.example +76 -0
  2. package/.framework/.spine-manifest.json +19 -0
  3. package/.framework/cli/commands/agents.ts +61 -33
  4. package/.framework/cli/commands/auth.ts +60 -28
  5. package/.framework/cli/commands/create-app.ts +212 -80
  6. package/.framework/cli/commands/dev.ts +184 -68
  7. package/.framework/cli/commands/doctor.ts +324 -152
  8. package/.framework/cli/commands/generate.ts +119 -68
  9. package/.framework/cli/commands/init.ts +141 -242
  10. package/.framework/cli/commands/install-app.ts +1336 -314
  11. package/.framework/cli/commands/items.ts +31 -29
  12. package/.framework/cli/commands/migrate.ts +299 -156
  13. package/.framework/cli/commands/migrations.ts +62 -30
  14. package/.framework/cli/commands/pipelines.ts +31 -29
  15. package/.framework/cli/commands/status.ts +105 -45
  16. package/.framework/cli/commands/system.ts +47 -42
  17. package/.framework/cli/commands/test.ts +161 -102
  18. package/.framework/cli/commands/upgrade.ts +260 -0
  19. package/.framework/cli/commands/validate-app.ts +517 -161
  20. package/.framework/cli/context.ts +117 -85
  21. package/.framework/cli/env-loader.ts +74 -43
  22. package/.framework/cli/index.ts +70 -46
  23. package/.framework/cli/lib/project-files.ts +404 -0
  24. package/.framework/docs/guides/testing-guide.md +1 -1
  25. package/.framework/docs/runtime-types.md +72 -72
  26. package/.framework/functions/_shared/access.ts +84 -0
  27. package/.framework/functions/_shared/agent-runner.ts +5051 -1026
  28. package/.framework/functions/_shared/app-manifest.ts +214 -94
  29. package/.framework/functions/_shared/ast.ts +214 -0
  30. package/.framework/functions/_shared/audit.ts +91 -55
  31. package/.framework/functions/_shared/cil.ts +368 -127
  32. package/.framework/functions/_shared/db.ts +337 -68
  33. package/.framework/functions/_shared/funnel.ts +228 -0
  34. package/.framework/functions/_shared/geo.ts +105 -0
  35. package/.framework/functions/_shared/hash-api-key.ts +94 -17
  36. package/.framework/functions/_shared/index.ts +22 -224
  37. package/.framework/functions/_shared/kb.ts +832 -58
  38. package/.framework/functions/_shared/llm.ts +118 -18
  39. package/.framework/functions/_shared/logging.ts +317 -19
  40. package/.framework/functions/_shared/middleware.ts +701 -131
  41. package/.framework/functions/_shared/notify.ts +70 -0
  42. package/.framework/functions/_shared/outcomes.ts +34 -19
  43. package/.framework/functions/_shared/permissions.ts +501 -315
  44. package/.framework/functions/_shared/pipeline-runner.ts +704 -155
  45. package/.framework/functions/_shared/principal.ts +436 -263
  46. package/.framework/functions/_shared/rate-limit.ts +233 -0
  47. package/.framework/functions/_shared/resolve-credentials.ts +86 -19
  48. package/.framework/functions/_shared/resolve-ids.ts +203 -139
  49. package/.framework/functions/_shared/retry-deliveries.ts +51 -16
  50. package/.framework/functions/_shared/schema-utils.ts +602 -521
  51. package/.framework/functions/_shared/security.ts +345 -0
  52. package/.framework/functions/_shared/testing.ts +197 -172
  53. package/.framework/functions/_shared/tracing.ts +351 -21
  54. package/.framework/functions/_shared/trigger-engine.ts +425 -136
  55. package/.framework/functions/_shared/webhook-registration.ts +71 -70
  56. package/.framework/functions/_shared/webhook-registry.ts +126 -83
  57. package/.framework/functions/account-nodes.ts +30 -30
  58. package/.framework/functions/adapters/generic-webhook-inbound.ts +49 -16
  59. package/.framework/functions/adapters/generic-webhook-outbound.ts +17 -17
  60. package/.framework/functions/adapters/openai-outbound.ts +15 -16
  61. package/.framework/functions/admin-data.ts +596 -173
  62. package/.framework/functions/admin-funnel.ts +64 -60
  63. package/.framework/functions/admin-install-funnel.ts +84 -66
  64. package/.framework/functions/admin-signals.ts +69 -51
  65. package/.framework/functions/ai-agents.ts +431 -106
  66. package/.framework/functions/ai-interactions.ts +186 -112
  67. package/.framework/functions/api-keys.ts +107 -107
  68. package/.framework/functions/apps.ts +154 -136
  69. package/.framework/functions/auth.ts +83 -65
  70. package/.framework/functions/cil-agent-ingest.ts +189 -232
  71. package/.framework/functions/cil-agent.ts +433 -177
  72. package/.framework/functions/cil-callmap.ts +642 -430
  73. package/.framework/functions/cil-config.ts +139 -135
  74. package/.framework/functions/cil-context.ts +214 -127
  75. package/.framework/functions/cil-doc.ts +587 -458
  76. package/.framework/functions/cil-embeddings.ts +453 -364
  77. package/.framework/functions/cil-graph.ts +427 -142
  78. package/.framework/functions/cil-ingest.ts +1418 -1154
  79. package/.framework/functions/cil-pipeline.ts +276 -21
  80. package/.framework/functions/cil-project.ts +659 -132
  81. package/.framework/functions/cil-validate.ts +198 -164
  82. package/.framework/functions/debug-auth.ts +57 -55
  83. package/.framework/functions/deliveries.ts +80 -21
  84. package/.framework/functions/embeddings.ts +1023 -318
  85. package/.framework/functions/eval-harness.ts +146 -108
  86. package/.framework/functions/integration-outbound.ts +205 -75
  87. package/.framework/functions/integration-routes.ts +128 -23
  88. package/.framework/functions/integrations.ts +125 -100
  89. package/.framework/functions/invites.ts +1095 -460
  90. package/.framework/functions/item-progress.ts +158 -102
  91. package/.framework/functions/kb.ts +34 -10
  92. package/.framework/functions/logs.ts +133 -133
  93. package/.framework/functions/observability.ts +152 -122
  94. package/.framework/functions/pipeline-executions.ts +147 -132
  95. package/.framework/functions/pipelines.ts +134 -119
  96. package/.framework/functions/prompt-configs.ts +96 -80
  97. package/.framework/functions/roles.ts +112 -82
  98. package/.framework/functions/security.ts +450 -0
  99. package/.framework/functions/system-cron.ts +117 -80
  100. package/.framework/functions/system.ts +158 -98
  101. package/.framework/functions/tests.ts +29 -29
  102. package/.framework/functions/timers.ts +94 -95
  103. package/.framework/functions/trigger-scheduler.ts +10 -0
  104. package/.framework/functions/triggers.ts +179 -149
  105. package/.framework/functions/types.ts +137 -125
  106. package/.framework/mcp/index.ts +133 -0
  107. package/.framework/mcp/load-env.ts +60 -0
  108. package/.framework/mcp/shared/app-manifest.ts +275 -0
  109. package/.framework/mcp/shared/db.ts +477 -0
  110. package/.framework/mcp/shared/kb.ts +118 -0
  111. package/.framework/mcp/tools/architect.ts +431 -0
  112. package/.framework/mcp/tools/cil/context.ts +345 -0
  113. package/.framework/mcp/tools/cil/graph.ts +242 -0
  114. package/.framework/mcp/tools/cil/ingest.ts +1217 -0
  115. package/.framework/mcp/tools/cil/pipeline-orchestrator.ts +693 -0
  116. package/.framework/mcp/tools/cil/pipeline.ts +767 -0
  117. package/.framework/mcp/tools/cil/project.ts +791 -0
  118. package/.framework/mcp/tools/cil/retrieval.ts +336 -0
  119. package/.framework/mcp/tools/cil/search-core.ts +454 -0
  120. package/.framework/mcp/tools/cil/search.ts +97 -0
  121. package/.framework/mcp/tools/cil/suggest.ts +186 -0
  122. package/.framework/mcp/tools/cil/validate.ts +1369 -0
  123. package/.framework/mcp/tools/kb/delete.ts +139 -0
  124. package/.framework/mcp/tools/kb/index.ts +52 -0
  125. package/.framework/mcp/tools/kb/ingest.ts +84 -0
  126. package/.framework/mcp/tools/kb/list-types.ts +102 -0
  127. package/.framework/mcp/tools/kb/publish.ts +100 -0
  128. package/.framework/mcp/tools/kb/reindex.ts +86 -0
  129. package/.framework/mcp/tools/kb/revoke.ts +85 -0
  130. package/.framework/mcp/tools/kb/search.ts +101 -0
  131. package/.framework/mcp/tools/kb/upsert.ts +125 -0
  132. package/.framework/mcp/tools/observability.ts +510 -0
  133. package/.framework/migrations/001_core_schema.sql +15 -0
  134. package/.framework/migrations/002_core_rls_and_functions.sql +15 -0
  135. package/.framework/migrations/003_core_system_data.sql +16 -1
  136. package/.framework/migrations/004_core_rpc_and_broker.sql +17 -1
  137. package/.framework/migrations/005_core_observability.sql +17 -1
  138. package/.framework/migrations/006_security_hardening_rls.sql +15 -0
  139. package/.framework/migrations/007_kb_article_list.sql +17 -1
  140. package/.framework/migrations/008_items_target.sql +15 -0
  141. package/.framework/migrations/009_roles_slug_unique.sql +15 -0
  142. package/.framework/migrations/010_auth_user_trigger.sql +15 -0
  143. package/.framework/migrations/011_spine_system_account.sql +16 -0
  144. package/.framework/migrations/012_service_role_grants.sql +16 -0
  145. package/.framework/migrations/013_get_account_apps_role_filter.sql +15 -0
  146. package/.framework/migrations/014_apps_required_roles.sql +16 -0
  147. package/.framework/migrations/015_types_kind_slug_unique.sql +15 -0
  148. package/.framework/migrations/016_cil_types.sql +281 -0
  149. package/.framework/migrations/017_cil_stable_ids.sql +37 -0
  150. package/.framework/migrations/018_runtime_tables.sql +129 -0
  151. package/.framework/migrations/019_agent_prompt_columns.sql +56 -0
  152. package/.framework/migrations/020_schema_reconciliation.sql +67 -0
  153. package/.framework/migrations/021_kb_embedding_lifecycle.sql +31 -0
  154. package/.framework/migrations/032_cil_status_migration.sql +73 -0
  155. package/.framework/migrations/033_cil_versioning.sql +73 -0
  156. package/.framework/migrations/034_match_embeddings_knn.sql +115 -0
  157. package/.framework/migrations/035_rate_limits.sql +55 -0
  158. package/.framework/migrations/036_demo_record_flags.sql +72 -0
  159. package/.framework/migrations/037_kb_types_canonical.sql +244 -0
  160. package/.framework/migrations/038_drop_demo_record_flags.sql +38 -0
  161. package/.framework/migrations/042_registration_hierarchy.sql +309 -0
  162. package/.framework/migrations/043_policy_actor_cleanup.sql +39 -0
  163. package/.framework/migrations/044_match_embeddings_filtered_knn.sql +151 -0
  164. package/.framework/migrations/045_security_critical_rls.sql +139 -0
  165. package/.framework/migrations/046_security_missing_rls.sql +79 -0
  166. package/.framework/migrations/047_people_updated_by.sql +27 -0
  167. package/.framework/migrations/048_watcher_last_seen_at.sql +24 -0
  168. package/.framework/migrations/049_security_blocklist.sql +148 -0
  169. package/.framework/migrations/050_notifications.sql +49 -0
  170. package/.framework/migrations/051_message_agent_fields.sql +74 -0
  171. package/.framework/migrations/052_registration_security.sql +421 -0
  172. package/.framework/migrations/053_builtin_action_seeds.sql +66 -0
  173. package/.framework/migrations/054_kb_ingest_lease.sql +157 -0
  174. package/.framework/migrations/055_type_id_drift_reconciliation.sql +33 -0
  175. package/.framework/migrations/056_slug_column_reconciliation.sql +38 -0
  176. package/.framework/migrations/057_pipelines_slug_identity.sql +14 -0
  177. package/.framework/migrations/058_account_data_field_declarations.sql +53 -0
  178. package/.framework/migrations/059_registration_placement_fixes.sql +269 -0
  179. package/.framework/migrations/060_account_person_record_permissions.sql +38 -0
  180. package/.framework/migrations/061_fk_dedup.sql +32 -0
  181. package/.framework/public/spine-logo.svg +10 -3
  182. package/.framework/scripts/app-install-cli.ts +190 -93
  183. package/.framework/scripts/assemble-frontend.sh +127 -44
  184. package/.framework/scripts/assemble-functions.sh +128 -30
  185. package/.framework/scripts/boundary-check.sh +6 -2
  186. package/.framework/scripts/build-manifest.sh +24 -68
  187. package/.framework/scripts/check-core-integrity.sh +15 -76
  188. package/.framework/scripts/checksum-manifest.mts +343 -0
  189. package/.framework/scripts/cil-migrate-markers.ts +403 -0
  190. package/.framework/scripts/fix-cil-markers.mjs +176 -0
  191. package/.framework/scripts/verify-integrity.sh +21 -57
  192. package/.framework/scripts/verify-manifest.mts +305 -0
  193. package/.framework/seeds/types/funnel_signal_use.json +74 -21
  194. package/.framework/seeds/types/spine_instance.json +73 -21
  195. package/.framework/src/App.tsx +118 -72
  196. package/.framework/src/apps/admin/index.tsx +855 -58
  197. package/.framework/src/components/AppWrapper.tsx +43 -45
  198. package/.framework/src/components/CustomAppLoader.tsx +160 -116
  199. package/.framework/src/components/admin/AdminListPage.tsx +46 -44
  200. package/.framework/src/components/admin/AdminSidebar.tsx +57 -47
  201. package/.framework/src/components/admin/AdminStatsCard.tsx +46 -44
  202. package/.framework/src/components/admin/PageInstructions.tsx +98 -2
  203. package/.framework/src/components/admin/SortableTableHeader.tsx +44 -45
  204. package/.framework/src/components/app-shell/GenericAppShell.tsx +64 -65
  205. package/.framework/src/components/app-shell/GenericDetailPage.tsx +44 -47
  206. package/.framework/src/components/app-shell/GenericListPage.tsx +45 -49
  207. package/.framework/src/components/app-sidebar.tsx +42 -45
  208. package/.framework/src/components/auth/ProtectedRoute.tsx +48 -41
  209. package/.framework/src/components/auth/TurnstileWidget.tsx +27 -0
  210. package/.framework/src/components/kb/KBArticleEditor.tsx +231 -22
  211. package/.framework/src/components/kb/KBArticleList.tsx +251 -10
  212. package/.framework/src/components/layout/AppShell.tsx +51 -45
  213. package/.framework/src/components/layout/Header.tsx +42 -43
  214. package/.framework/src/components/layout/Layout.tsx +46 -46
  215. package/.framework/src/components/layout/Sidebar.tsx +196 -96
  216. package/.framework/src/components/runtime/DataDetailHeader.tsx +55 -30
  217. package/.framework/src/components/runtime/DataDetailPage.tsx +31 -269
  218. package/.framework/src/components/runtime/DataFilters.tsx +49 -74
  219. package/.framework/src/components/runtime/DataHeader.tsx +53 -32
  220. package/.framework/src/components/runtime/DataListPage.tsx +51 -155
  221. package/.framework/src/components/runtime/DataStats.tsx +66 -44
  222. package/.framework/src/components/runtime/DataTable.tsx +49 -149
  223. package/.framework/src/components/runtime/SchemaDetailForm.tsx +45 -75
  224. package/.framework/src/components/runtime/index.ts +119 -16
  225. package/.framework/src/components/search-form.tsx +46 -29
  226. package/.framework/src/components/shared/AgentView.tsx +65 -48
  227. package/.framework/src/components/shared/FieldRenderer.tsx +144 -50
  228. package/.framework/src/components/shared/InviteManager.tsx +207 -97
  229. package/.framework/src/components/shared/MemberList.tsx +97 -0
  230. package/.framework/src/components/shared/SchemaFields.tsx +107 -86
  231. package/.framework/src/components/ui/DataTable.tsx +80 -68
  232. package/.framework/src/components/ui/Form.tsx +157 -146
  233. package/.framework/src/components/ui/ItemCard.tsx +74 -67
  234. package/.framework/src/components/ui/ItemListView.tsx +73 -68
  235. package/.framework/src/components/ui/LoadingSpinner.tsx +43 -48
  236. package/.framework/src/components/ui/Modal.tsx +78 -68
  237. package/.framework/src/components/ui/RichTextEditor.tsx +89 -69
  238. package/.framework/src/components/ui/accordion.tsx +85 -86
  239. package/.framework/src/components/ui/alert-dialog.tsx +197 -184
  240. package/.framework/src/components/ui/alert.tsx +105 -94
  241. package/.framework/src/components/ui/aspect-ratio.tsx +57 -43
  242. package/.framework/src/components/ui/avatar.tsx +122 -107
  243. package/.framework/src/components/ui/badge.tsx +60 -55
  244. package/.framework/src/components/ui/breadcrumb.tsx +127 -128
  245. package/.framework/src/components/ui/button-group.tsx +86 -72
  246. package/.framework/src/components/ui/button.tsx +71 -50
  247. package/.framework/src/components/ui/calendar.tsx +72 -57
  248. package/.framework/src/components/ui/card.tsx +136 -129
  249. package/.framework/src/components/ui/carousel.tsx +226 -107
  250. package/.framework/src/components/ui/chart.tsx +252 -147
  251. package/.framework/src/components/ui/checkbox.tsx +43 -44
  252. package/.framework/src/components/ui/collapsible.tsx +86 -71
  253. package/.framework/src/components/ui/combobox.tsx +282 -249
  254. package/.framework/src/components/ui/command.tsx +158 -146
  255. package/.framework/src/components/ui/context-menu.tsx +239 -240
  256. package/.framework/src/components/ui/dialog.tsx +174 -157
  257. package/.framework/src/components/ui/direction.tsx +72 -56
  258. package/.framework/src/components/ui/drawer.tsx +168 -169
  259. package/.framework/src/components/ui/dropdown-menu.tsx +254 -223
  260. package/.framework/src/components/ui/empty.tsx +131 -120
  261. package/.framework/src/components/ui/field.tsx +205 -173
  262. package/.framework/src/components/ui/hover-card.tsx +71 -72
  263. package/.framework/src/components/ui/input-group.tsx +148 -133
  264. package/.framework/src/components/ui/input-otp.tsx +99 -86
  265. package/.framework/src/components/ui/input.tsx +43 -41
  266. package/.framework/src/components/ui/item.tsx +207 -185
  267. package/.framework/src/components/ui/kbd.tsx +57 -56
  268. package/.framework/src/components/ui/label.tsx +45 -41
  269. package/.framework/src/components/ui/menubar.tsx +268 -236
  270. package/.framework/src/components/ui/native-select.tsx +85 -86
  271. package/.framework/src/components/ui/navigation-menu.tsx +166 -156
  272. package/.framework/src/components/ui/pagination.tsx +131 -141
  273. package/.framework/src/components/ui/popover.tsx +125 -128
  274. package/.framework/src/components/ui/progress.tsx +47 -44
  275. package/.framework/src/components/ui/radio-group.tsx +60 -55
  276. package/.framework/src/components/ui/resizable.tsx +85 -72
  277. package/.framework/src/components/ui/scroll-area.tsx +57 -58
  278. package/.framework/src/components/ui/select.tsx +182 -169
  279. package/.framework/src/components/ui/separator.tsx +42 -43
  280. package/.framework/src/components/ui/sheet.tsx +170 -159
  281. package/.framework/src/components/ui/sidebar.tsx +395 -398
  282. package/.framework/src/components/ui/skeleton.tsx +42 -43
  283. package/.framework/src/components/ui/slider.tsx +61 -44
  284. package/.framework/src/components/ui/sonner.tsx +44 -44
  285. package/.framework/src/components/ui/spinner.tsx +47 -42
  286. package/.framework/src/components/ui/switch.tsx +56 -42
  287. package/.framework/src/components/ui/table-primitives.tsx +272 -132
  288. package/.framework/src/components/ui/table.tsx +140 -142
  289. package/.framework/src/components/ui/tabs.tsx +110 -93
  290. package/.framework/src/components/ui/textarea.tsx +43 -44
  291. package/.framework/src/components/ui/toggle-group.tsx +87 -71
  292. package/.framework/src/components/ui/toggle.tsx +56 -56
  293. package/.framework/src/components/ui/tooltip.tsx +99 -85
  294. package/.framework/src/contexts/AppContext.tsx +166 -114
  295. package/.framework/src/contexts/AuthContext.tsx +232 -137
  296. package/.framework/src/hooks/use-mobile.ts +43 -44
  297. package/.framework/src/hooks/useApi.ts +185 -172
  298. package/.framework/src/hooks/useAppPath.ts +31 -29
  299. package/.framework/src/hooks/useApps.ts +77 -42
  300. package/.framework/src/hooks/useEntityList.ts +66 -29
  301. package/.framework/src/hooks/useEntityRecord.ts +76 -32
  302. package/.framework/src/hooks/useForm.ts +62 -30
  303. package/.framework/src/hooks/useListSchema.ts +60 -43
  304. package/.framework/src/hooks/useSchemaRecord.ts +115 -95
  305. package/.framework/src/lib/api.ts +258 -134
  306. package/.framework/src/lib/registration.ts +181 -0
  307. package/.framework/src/lib/supabase.ts +118 -81
  308. package/.framework/src/lib/utils.ts +266 -266
  309. package/.framework/src/main.tsx +43 -44
  310. package/.framework/src/pages/DashboardPage.tsx +44 -43
  311. package/.framework/src/pages/NoAppPage.tsx +50 -0
  312. package/.framework/src/pages/NotFoundPage.tsx +32 -29
  313. package/.framework/src/pages/SetupPage.tsx +34 -33
  314. package/.framework/src/pages/admin/AIAgentDetailPage.tsx +69 -58
  315. package/.framework/src/pages/admin/AIAgentsPage.tsx +43 -40
  316. package/.framework/src/pages/admin/APIKeyDetailPage.tsx +63 -55
  317. package/.framework/src/pages/admin/APIKeysPage.tsx +44 -42
  318. package/.framework/src/pages/admin/AlertsConfigPage.tsx +117 -94
  319. package/.framework/src/pages/admin/AppDetailPage.tsx +48 -42
  320. package/.framework/src/pages/admin/AppsPage.tsx +45 -42
  321. package/.framework/src/pages/admin/DeliveriesPage.tsx +49 -17
  322. package/.framework/src/pages/admin/DesignedPage.tsx +31 -30
  323. package/.framework/src/pages/admin/EmbeddingDetailPage.tsx +58 -0
  324. package/.framework/src/pages/admin/EmbeddingsPage.tsx +49 -0
  325. package/.framework/src/pages/admin/ExtendedShadcnTestPage.tsx +31 -29
  326. package/.framework/src/pages/admin/IncrementalShadcnTestPage.tsx +46 -29
  327. package/.framework/src/pages/admin/IntegratedDashboard.tsx +32 -29
  328. package/.framework/src/pages/admin/IntegrationDetailPage.tsx +68 -55
  329. package/.framework/src/pages/admin/IntegrationsPage.tsx +45 -42
  330. package/.framework/src/pages/admin/InvitesPage.tsx +60 -44
  331. package/.framework/src/pages/admin/LogsPage.tsx +87 -137
  332. package/.framework/src/pages/admin/MinimalShadcnTestPage.tsx +31 -29
  333. package/.framework/src/pages/admin/ObservabilityDashboard.tsx +150 -89
  334. package/.framework/src/pages/admin/PipelineDetailPage.tsx +77 -104
  335. package/.framework/src/pages/admin/PipelineExecutionsPage.tsx +44 -43
  336. package/.framework/src/pages/admin/PipelinesPage.tsx +59 -145
  337. package/.framework/src/pages/admin/PromptConfigDetailPage.tsx +53 -42
  338. package/.framework/src/pages/admin/PromptConfigsPage.tsx +47 -117
  339. package/.framework/src/pages/admin/ProperlyDesignedPage.tsx +31 -44
  340. package/.framework/src/pages/admin/RoleDetailPage.tsx +49 -92
  341. package/.framework/src/pages/admin/RolesPage.tsx +47 -164
  342. package/.framework/src/pages/admin/SecurityPage.tsx +310 -0
  343. package/.framework/src/pages/admin/SelectTestPage.tsx +30 -32
  344. package/.framework/src/pages/admin/ShadcnTestPage.tsx +37 -44
  345. package/.framework/src/pages/admin/SimpleDashboard.tsx +32 -44
  346. package/.framework/src/pages/admin/TestRunDetailPage.tsx +97 -44
  347. package/.framework/src/pages/admin/TestingDashboard.tsx +126 -71
  348. package/.framework/src/pages/admin/TimerDetailPage.tsx +67 -55
  349. package/.framework/src/pages/admin/TimersPage.tsx +44 -42
  350. package/.framework/src/pages/admin/TriggerDetailPage.tsx +47 -42
  351. package/.framework/src/pages/admin/TriggersPage.tsx +58 -57
  352. package/.framework/src/pages/admin/TypeDetailPage.tsx +91 -55
  353. package/.framework/src/pages/admin/TypesPage.tsx +45 -42
  354. package/.framework/src/pages/admin/cil/CILAgentPage.tsx +258 -128
  355. package/.framework/src/pages/admin/cil/CILChunkDetailPage.tsx +127 -123
  356. package/.framework/src/pages/admin/cil/CILDashboardPage.tsx +308 -235
  357. package/.framework/src/pages/admin/cil/CILFileListPage.tsx +159 -110
  358. package/.framework/src/pages/admin/cil/CILFileSelectPage.tsx +432 -0
  359. package/.framework/src/pages/admin/cil/CILGraphPage.tsx +200 -178
  360. package/.framework/src/pages/admin/cil/CILIngestionPage.tsx +286 -239
  361. package/.framework/src/pages/admin/cil/CILProjectsPage.tsx +211 -90
  362. package/.framework/src/pages/admin/cil/CILSearchPage.tsx +156 -143
  363. package/.framework/src/pages/admin/cil/CILSuggestionsPage.tsx +379 -0
  364. package/.framework/src/pages/admin/cil/CILVersionsPage.tsx +337 -0
  365. package/.framework/src/pages/admin/cil/FlexiblePipelinePage.tsx +219 -214
  366. package/.framework/src/pages/admin/kb/KBAdminPage.tsx +64 -0
  367. package/.framework/src/pages/auth/AuthConfirmPage.tsx +135 -65
  368. package/.framework/src/pages/auth/ForgotPasswordPage.tsx +39 -31
  369. package/.framework/src/pages/auth/LoginPage.tsx +38 -32
  370. package/.framework/src/pages/auth/PendingApprovalPage.tsx +31 -28
  371. package/.framework/src/pages/auth/RegisterPage.tsx +429 -155
  372. package/.framework/src/pages/spine-framework/APIPage.tsx +33 -30
  373. package/.framework/src/pages/spine-framework/CLIPage.tsx +32 -30
  374. package/.framework/src/types/auth.ts +101 -93
  375. package/.framework/src/types/types.ts +283 -262
  376. package/.framework/templates/project.json +87 -0
  377. package/.framework/templates/spine.config.neutral.json +7 -0
  378. package/.framework/tests/api/api-surface.test.ts +381 -0
  379. package/.framework/tests/fixtures/seed.ts +427 -0
  380. package/.framework/tests/fixtures/teardown.ts +228 -0
  381. package/.framework/tests/reporter.ts +351 -0
  382. package/.framework/tests/setup.ts +135 -0
  383. package/.framework/tests/ui/ui-sweep.ts +278 -0
  384. package/.framework/tests/unit/admin-data-logger.test.ts +310 -0
  385. package/.framework/tests/unit/agent-runner.test.ts +2389 -0
  386. package/.framework/tests/unit/ai-interactions.test.ts +81 -0
  387. package/.framework/tests/unit/app-manifest.test.ts +359 -0
  388. package/.framework/tests/unit/assembly-scripts.test.ts +172 -0
  389. package/.framework/tests/unit/cil-determinism.test.ts +85 -0
  390. package/.framework/tests/unit/core-isolation.test.ts +153 -0
  391. package/.framework/tests/unit/funnel-signals.test.ts +135 -0
  392. package/.framework/tests/unit/install-app.test.ts +1759 -0
  393. package/.framework/tests/unit/invites-security.test.ts +572 -0
  394. package/.framework/tests/unit/kb-ingest-lease.test.ts +287 -0
  395. package/.framework/tests/unit/kb-search.test.ts +119 -0
  396. package/.framework/tests/unit/migrate.test.ts +509 -0
  397. package/.framework/tests/unit/notify.test.ts +136 -0
  398. package/.framework/tests/unit/permissions.test.ts +269 -0
  399. package/.framework/tests/unit/pipeline-runner.test.ts +755 -0
  400. package/.framework/tests/unit/principal-cache.test.ts +138 -0
  401. package/.framework/tests/unit/retrieval-golden.test.ts +520 -0
  402. package/.framework/tests/unit/runtime-isolation.test.ts +642 -0
  403. package/.framework/tests/unit/schema-utils.test.ts +225 -0
  404. package/.framework/tests/unit/trigger-engine.test.ts +513 -0
  405. package/.framework/tests/unit/validate-app.test.ts +527 -0
  406. package/README.md +34 -3
  407. package/bin/spine-framework.cjs +1 -0
  408. package/config/tailwind.config.cjs +7 -0
  409. package/config/tsconfig.functions.json +42 -0
  410. package/config/tsconfig.json +37 -9
  411. package/config/vite.config.ts +31 -2
  412. package/netlify.toml +31 -3
  413. package/package.json +46 -29
  414. package/scripts/assemble-frontend.sh +127 -44
  415. package/scripts/assemble-functions.sh +127 -29
  416. package/scripts/boundary-check.sh +6 -2
  417. package/scripts/build-manifest.sh +24 -68
  418. package/scripts/checksum-manifest.mts +345 -0
  419. package/scripts/dev-clean.sh +86 -0
  420. package/scripts/dev-netlify.sh +49 -0
  421. package/scripts/netlify-dev-wrapper.sh +2 -0
  422. package/scripts/verify-install.ts +358 -0
  423. package/scripts/verify-integrity.sh +21 -57
  424. package/scripts/verify-manifest.mts +305 -0
  425. package/templates/project/gitignore +45 -0
  426. package/{config → templates/project}/package-lock.json +22335 -9366
  427. package/vitest.config.ts +46 -0
  428. package/.framework/public/spine.config.json +0 -91
  429. package/config/deno.lock +0 -108
  430. package/config/tsconfig.node.tsbuildinfo +0 -1
  431. package/config/tsconfig.tsbuildinfo +0 -1
  432. package/config/vite.config.d.ts +0 -2
  433. package/custom/.devin/AGENT.md +0 -357
  434. package/custom/.devin/skills/install-app/SKILL.md +0 -39
  435. package/custom/.devin/skills/spine-workbench-discovery/SKILL.md +0 -39
  436. package/custom/.devin/skills/spine-workbench-idea/SKILL.md +0 -36
  437. package/custom/.devin/skills/spine-workbench-implement/SKILL.md +0 -46
  438. package/custom/.devin/skills/spine-workbench-initiative/SKILL.md +0 -28
  439. package/custom/.devin/skills/spine-workbench-plan/SKILL.md +0 -38
  440. package/custom/.devin/workflows/app-install.yaml +0 -83
  441. package/custom/README.md +0 -79
  442. package/docs/README.md +0 -15
  443. package/scripts/app-install-cli.ts +0 -286
  444. package/scripts/check-core-integrity.sh +0 -82
  445. package/scripts/ingest-chunks.cjs +0 -202
  446. package/scripts/kb-chunk-parser.cjs +0 -312
  447. package/scripts/kb-chunk-parser.ts +0 -330
  448. package/scripts/kb-ingest-docs.ts +0 -203
  449. package/scripts/load-test-app-install.ts +0 -484
  450. package/scripts/test-login.js +0 -33
  451. package/spine.config.json +0 -91
@@ -1,3 +1,11 @@
1
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:use_client:directive" type="directive" identity="use_client" parent="~/.framework/src/components/ui/menubar.tsx:file"]
2
+ // CIL[DOC-MACRO purpose="Marks the module as client-only"]
3
+ // CIL[DOC-RESPONSIBILITY responsibility="Declare that this module is intended for client-side execution"]
4
+ // CIL[DOC-CONTEXT module="components/ui" layer="ui" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
5
+ // CIL[DOC-CONTRACT inputs="none" outputs="use client directive" errors="none" side_effects="none"]
6
+ // CIL[DOC-MICRO logic_summary="Next.js use client directive" notable_decisions="[]"]
7
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
8
+ // CIL[DOC-STABILITY stability="stable"]
1
9
 
2
10
 
3
11
 
@@ -16,43 +24,46 @@
16
24
 
17
25
 
18
26
 
19
- // CIL[BEGIN chunk_id="menubar_module_header_1783796064" type="module_header" identity="imports" parent="none"]
20
- // CIL[DOC-MACRO purpose="Import dependencies for menubar components"]
21
- // CIL[DOC-RESPONSIBILITY responsibility="Import React, Radix UI, utilities, and icons"]
22
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/components/ui/dialog.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"\\\"]"]
23
- // CIL[DOC-CONTRACT inputs="none" outputs="imported modules" errors="none" side_effects="module imports"]
24
- // CIL[DOC-MICRO logic_summary="Imports all dependencies for menubar component system" notable_decisions="[]"]
25
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
26
- // CIL[DOC-STABILITY stability="stable"]
27
- // CIL[DOC-AUDIENCE audience="developer"]
28
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/src/components/layout/Sidebar.tsx, .framework/src/components/ui/dialog.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, \."]
29
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
30
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
31
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
27
+
28
+ "use client"
29
+ // CIL[DOC-VECTOR type="context" content="purpose='Marks the module as client-only'; No verified external callers; imports: .framework/src/lib/utils.ts"]
30
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
31
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
32
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
32
33
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
33
34
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
34
- "use client"
35
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:use_client:directive"]
35
36
 
37
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:module_header:module_header" type="module_header" identity="module_header" parent="~/.framework/src/components/ui/menubar.tsx:file"]
38
+ // CIL[DOC-MACRO purpose="shadcn/ui Menubar component module built on radix-ui"]
39
+ // CIL[DOC-RESPONSIBILITY responsibility="Provide shadcn/ui Menubar primitives, cn utility, and icon bindings"]
40
+ // CIL[DOC-CONTEXT module="components/ui" layer="ui" related_files=".framework/src/lib/utils.ts"]
41
+ // CIL[DOC-CONTRACT inputs="none" outputs="React, MenubarPrimitive, cn, CheckIcon, and ChevronRightIcon available to the module" errors="none" side_effects="none"]
42
+ // CIL[DOC-MICRO logic_summary="Imports React, radix-ui Menubar primitive, cn utility, and icons" notable_decisions="[]"]
43
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
44
+ // CIL[DOC-STABILITY stability="stable"]
45
+ // CIL[DOC-AUDIENCE audience="frontend"]
36
46
  import * as React from "react"
37
47
  import { Menubar as MenubarPrimitive } from "radix-ui"
38
48
 
39
49
  import { cn } from "@/lib/utils"
40
50
  import { CheckIcon, ChevronRightIcon } from "lucide-react"
41
- // CIL[END chunk_id="menubar_module_header_1783796064"]
42
- // CIL[BEGIN chunk_id="menubar_menubar_1783796064" type="function" identity="menubar" parent="none"]
43
- // CIL[DOC-MACRO purpose="Render main menubar container"]
44
- // CIL[DOC-RESPONSIBILITY responsibility="Create styled menubar root element"]
45
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
46
- // CIL[DOC-CONTRACT inputs="none" outputs="styled menubar container" errors="none" side_effects="renders DOM element"]
47
- // CIL[DOC-MICRO logic_summary="Creates horizontal menubar container with border and padding" notable_decisions="[]"]
48
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
49
- // CIL[DOC-STABILITY stability="stable"]
50
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
51
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
52
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
53
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
51
+ // CIL[DOC-VECTOR type="context" content="purpose='shadcn/ui Menubar component module built on radix-ui'; No verified external callers; imports: .framework/src/lib/utils.ts"]
52
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
53
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
54
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
54
55
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
55
56
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
57
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
58
+
59
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:Menubar:component" type="component" identity="Menubar" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
60
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar root wrapper"]
61
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the Menubar subcomponent"]
62
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
63
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<typeof MenubarPrimitive.Root>" outputs="JSX.Element" errors="none" side_effects="none"]
64
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Root with data-slot and styling" notable_decisions="[]"]
65
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
66
+ // CIL[DOC-STABILITY stability="stable"]
56
67
  function Menubar({
57
68
  className,
58
69
  ...props
@@ -65,81 +76,85 @@ function Menubar({
65
76
  />
66
77
  )
67
78
  }
68
- // CIL[END chunk_id="menubar_menubar_1783796064"]
69
- // CIL[BEGIN chunk_id="menubar_menubarmenu_1783796064" type="function" identity="menubarmenu" parent="none"]
70
- // CIL[DOC-MACRO purpose="Render menubar menu container"]
71
- // CIL[DOC-RESPONSIBILITY responsibility="Create menu wrapper for menubar items"]
72
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
73
- // CIL[DOC-CONTRACT inputs="none" outputs="menu container" errors="none" side_effects="renders DOM element"]
74
- // CIL[DOC-MICRO logic_summary="Creates menu container for organizing menubar items" notable_decisions="[]"]
75
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
76
- // CIL[DOC-STABILITY stability="stable"]
77
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
78
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
79
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
80
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
79
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar root wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
80
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
81
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
82
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
81
83
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
82
84
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
85
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:Menubar:component"]
86
+
87
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarMenu:component" type="component" identity="MenubarMenu" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
88
+ // CIL[DOC-MACRO purpose="Renders a Menubar menu wrapper"]
89
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarMenu subcomponent"]
90
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
91
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof MenubarPrimitive.Menu>" outputs="JSX.Element" errors="none" side_effects="none"]
92
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Menu with data-slot" notable_decisions="[]"]
93
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
94
+ // CIL[DOC-STABILITY stability="stable"]
83
95
  function MenubarMenu({
84
96
  ...props
85
97
  }: React.ComponentProps<typeof MenubarPrimitive.Menu>) {
86
98
  return <MenubarPrimitive.Menu data-slot="menubar-menu" {...props} />
87
99
  }
88
- // CIL[END chunk_id="menubar_menubarmenu_1783796064"]
89
- // CIL[BEGIN chunk_id="menubar_menubargroup_1783796064" type="function" identity="menubargroup" parent="none"]
90
- // CIL[DOC-MACRO purpose="Render menubar group container"]
91
- // CIL[DOC-RESPONSIBILITY responsibility="Create grouping container for menu items"]
92
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
93
- // CIL[DOC-CONTRACT inputs="none" outputs="group container" errors="none" side_effects="renders DOM element"]
94
- // CIL[DOC-MICRO logic_summary="Creates semantic grouping for related menu items" notable_decisions="[]"]
95
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
96
- // CIL[DOC-STABILITY stability="stable"]
97
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
98
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
99
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
100
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
100
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a Menubar menu wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
101
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
102
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
103
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
101
104
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
102
105
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
106
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarMenu:component"]
107
+
108
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarGroup:component" type="component" identity="MenubarGroup" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
109
+ // CIL[DOC-MACRO purpose="Renders a Menubar group wrapper"]
110
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarGroup subcomponent"]
111
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
112
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof MenubarPrimitive.Group>" outputs="JSX.Element" errors="none" side_effects="none"]
113
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Group with data-slot" notable_decisions="[]"]
114
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
115
+ // CIL[DOC-STABILITY stability="stable"]
103
116
  function MenubarGroup({
104
117
  ...props
105
118
  }: React.ComponentProps<typeof MenubarPrimitive.Group>) {
106
119
  return <MenubarPrimitive.Group data-slot="menubar-group" {...props} />
107
120
  }
108
- // CIL[END chunk_id="menubar_menubargroup_1783796064"]
109
- // CIL[BEGIN chunk_id="menubar_menubarportal_1783796064" type="function" identity="menubarportal" parent="none"]
110
- // CIL[DOC-MACRO purpose="Render portal for menubar content"]
111
- // CIL[DOC-RESPONSIBILITY responsibility="Create portal container for dropdown content"]
112
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"\\\"]"]
113
- // CIL[DOC-CONTRACT inputs="none" outputs="portal container" errors="none" side_effects="renders DOM element"]
114
- // CIL[DOC-MICRO logic_summary="Creates portal for rendering content outside DOM hierarchy" notable_decisions="[]"]
115
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
116
- // CIL[DOC-STABILITY stability="stable"]
117
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/components/layout/Sidebar.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, \."]
118
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
119
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
120
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
121
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a Menubar group wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
122
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
123
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
124
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
121
125
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
122
126
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
127
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarGroup:component"]
128
+
129
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarPortal:component" type="component" identity="MenubarPortal" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
130
+ // CIL[DOC-MACRO purpose="Renders a Menubar portal wrapper"]
131
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarPortal subcomponent"]
132
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
133
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof MenubarPrimitive.Portal>" outputs="JSX.Element" errors="none" side_effects="none"]
134
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Portal with data-slot" notable_decisions="[]"]
135
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
136
+ // CIL[DOC-STABILITY stability="stable"]
123
137
  function MenubarPortal({
124
138
  ...props
125
139
  }: React.ComponentProps<typeof MenubarPrimitive.Portal>) {
126
140
  return <MenubarPrimitive.Portal data-slot="menubar-portal" {...props} />
127
141
  }
128
- // CIL[END chunk_id="menubar_menubarportal_1783796064"]
129
- // CIL[BEGIN chunk_id="menubar_menubarradiogroup_1783796064" type="function" identity="menubarradiogroup" parent="none"]
130
- // CIL[DOC-MACRO purpose="Render radio group for menubar items"]
131
- // CIL[DOC-RESPONSIBILITY responsibility="Create radio button group container"]
132
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
133
- // CIL[DOC-CONTRACT inputs="none" outputs="radio group container" errors="none" side_effects="renders DOM element"]
134
- // CIL[DOC-MICRO logic_summary="Creates radio group for mutually exclusive menu options" notable_decisions="[]"]
135
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
136
- // CIL[DOC-STABILITY stability="stable"]
137
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
138
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
139
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
140
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
142
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a Menubar portal wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
143
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
144
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
145
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
141
146
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
142
147
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
148
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarPortal:component"]
149
+
150
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarRadioGroup:component" type="component" identity="MenubarRadioGroup" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
151
+ // CIL[DOC-MACRO purpose="Renders a Menubar radio group wrapper"]
152
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarRadioGroup subcomponent"]
153
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
154
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>" outputs="JSX.Element" errors="none" side_effects="none"]
155
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.RadioGroup with data-slot" notable_decisions="[]"]
156
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
157
+ // CIL[DOC-STABILITY stability="stable"]
143
158
  function MenubarRadioGroup({
144
159
  ...props
145
160
  }: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>) {
@@ -147,21 +162,22 @@ function MenubarRadioGroup({
147
162
  <MenubarPrimitive.RadioGroup data-slot="menubar-radio-group" {...props} />
148
163
  )
149
164
  }
150
- // CIL[END chunk_id="menubar_menubarradiogroup_1783796064"]
151
- // CIL[BEGIN chunk_id="menubar_menubartrigger_1783796064" type="function" identity="menubartrigger" parent="none"]
152
- // CIL[DOC-MACRO purpose="Render trigger button for menubar menu"]
153
- // CIL[DOC-RESPONSIBILITY responsibility="Create clickable trigger for dropdown menu"]
154
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
155
- // CIL[DOC-CONTRACT inputs="none" outputs="styled trigger button" errors="none" side_effects="renders DOM element"]
156
- // CIL[DOC-MICRO logic_summary="Creates trigger button with hover and active states" notable_decisions="[]"]
157
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
158
- // CIL[DOC-STABILITY stability="stable"]
159
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
160
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
161
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
162
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
165
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a Menubar radio group wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
166
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
167
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
168
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
163
169
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
164
170
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
171
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarRadioGroup:component"]
172
+
173
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarTrigger:component" type="component" identity="MenubarTrigger" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
174
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar trigger button"]
175
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarTrigger subcomponent"]
176
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
177
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<typeof MenubarPrimitive.Trigger>" outputs="JSX.Element" errors="none" side_effects="none"]
178
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Trigger with data-slot, hover/expanded states, and styling" notable_decisions="[]"]
179
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
180
+ // CIL[DOC-STABILITY stability="stable"]
165
181
  function MenubarTrigger({
166
182
  className,
167
183
  ...props
@@ -177,21 +193,22 @@ function MenubarTrigger({
177
193
  />
178
194
  )
179
195
  }
180
- // CIL[END chunk_id="menubar_menubartrigger_1783796064"]
181
- // CIL[BEGIN chunk_id="menubar_menubarcontent_1783796064" type="function" identity="menubarcontent" parent="none"]
182
- // CIL[DOC-MACRO purpose="Render dropdown content for menubar"]
183
- // CIL[DOC-RESPONSIBILITY responsibility="Create styled dropdown container with animations"]
184
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
185
- // CIL[DOC-CONTRACT inputs="none" outputs="styled dropdown content" errors="none" side_effects="renders DOM element"]
186
- // CIL[DOC-MICRO logic_summary="Creates dropdown content with positioning and slide animations" notable_decisions="[]"]
187
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
188
- // CIL[DOC-STABILITY stability="stable"]
189
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
190
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
191
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
192
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
196
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar trigger button'; No verified external callers; imports: .framework/src/lib/utils.ts"]
197
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
198
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
199
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
193
200
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
194
201
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
202
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarTrigger:component"]
203
+
204
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarContent:component" type="component" identity="MenubarContent" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
205
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar content popover"]
206
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarContent subcomponent"]
207
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
208
+ // CIL[DOC-CONTRACT inputs="className?: string, align?: start, alignOffset?: number, sideOffset?: number, ...props: React.ComponentProps<typeof MenubarPrimitive.Content>" outputs="JSX.Element" errors="none" side_effects="none"]
209
+ // CIL[DOC-MICRO logic_summary="Wraps MenubarPrimitive.Content in MenubarPortal and applies positioning and animation classes" notable_decisions="[]"]
210
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
211
+ // CIL[DOC-STABILITY stability="stable"]
195
212
  function MenubarContent({
196
213
  className,
197
214
  align = "start",
@@ -212,21 +229,22 @@ function MenubarContent({
212
229
  </MenubarPortal>
213
230
  )
214
231
  }
215
- // CIL[END chunk_id="menubar_menubarcontent_1783796064"]
216
- // CIL[BEGIN chunk_id="menubar_menubaritem_1783796064" type="function" identity="menubaritem" parent="none"]
217
- // CIL[DOC-MACRO purpose="Render menu item with variants"]
218
- // CIL[DOC-RESPONSIBILITY responsibility="Create flexible menu item with styling options"]
219
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
220
- // CIL[DOC-CONTRACT inputs="none" outputs="styled menu item" errors="none" side_effects="renders DOM element"]
221
- // CIL[DOC-MICRO logic_summary="Creates menu item with inset and destructive variant support" notable_decisions="[]"]
222
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
223
- // CIL[DOC-STABILITY stability="stable"]
224
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
225
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
226
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
227
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
232
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar content popover'; No verified external callers; imports: .framework/src/lib/utils.ts"]
233
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
234
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
235
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
228
236
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
229
237
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
238
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarContent:component"]
239
+
240
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarItem:component" type="component" identity="MenubarItem" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
241
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar item"]
242
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarItem subcomponent"]
243
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
244
+ // CIL[DOC-CONTRACT inputs="className?: string, inset?: boolean, variant?: default | destructive, ...props: React.ComponentProps<typeof MenubarPrimitive.Item>" outputs="JSX.Element" errors="none" side_effects="none"]
245
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Item with data-slot, inset, variant styling, and focus states" notable_decisions="[]"]
246
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
247
+ // CIL[DOC-STABILITY stability="stable"]
230
248
  function MenubarItem({
231
249
  className,
232
250
  inset,
@@ -249,21 +267,22 @@ function MenubarItem({
249
267
  />
250
268
  )
251
269
  }
252
- // CIL[END chunk_id="menubar_menubaritem_1783796064"]
253
- // CIL[BEGIN chunk_id="menubar_menubarcheckboxitem_1783796064" type="function" identity="menubarcheckboxitem" parent="none"]
254
- // CIL[DOC-MACRO purpose="Render checkbox menu item"]
255
- // CIL[DOC-RESPONSIBILITY responsibility="Create menu item with checkbox functionality"]
256
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
257
- // CIL[DOC-CONTRACT inputs="none" outputs="checkbox menu item" errors="none" side_effects="renders DOM element"]
258
- // CIL[DOC-MICRO logic_summary="Creates checkbox menu item with check icon indicator" notable_decisions="[]"]
259
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
260
- // CIL[DOC-STABILITY stability="stable"]
261
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
262
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
263
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
264
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
270
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar item'; No verified external callers; imports: .framework/src/lib/utils.ts"]
271
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
272
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
273
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
265
274
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
266
275
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
276
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarItem:component"]
277
+
278
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarCheckboxItem:component" type="component" identity="MenubarCheckboxItem" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
279
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar checkbox item"]
280
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarCheckboxItem subcomponent"]
281
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
282
+ // CIL[DOC-CONTRACT inputs="className?: string, children?: ReactNode, checked?: boolean, inset?: boolean, ...props: React.ComponentProps<typeof MenubarPrimitive.CheckboxItem>" outputs="JSX.Element" errors="none" side_effects="none"]
283
+ // CIL[DOC-MICRO logic_summary="Renders a checkbox item with an indicator icon, className, and inset support" notable_decisions="[]"]
284
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
285
+ // CIL[DOC-STABILITY stability="stable"]
267
286
  function MenubarCheckboxItem({
268
287
  className,
269
288
  children,
@@ -294,21 +313,22 @@ function MenubarCheckboxItem({
294
313
  </MenubarPrimitive.CheckboxItem>
295
314
  )
296
315
  }
297
- // CIL[END chunk_id="menubar_menubarcheckboxitem_1783796064"]
298
- // CIL[BEGIN chunk_id="menubar_menubarradioitem_1783796064" type="function" identity="menubarradioitem" parent="none"]
299
- // CIL[DOC-MACRO purpose="Render radio menu item"]
300
- // CIL[DOC-RESPONSIBILITY responsibility="Create menu item with radio button functionality"]
301
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
302
- // CIL[DOC-CONTRACT inputs="none" outputs="radio menu item" errors="none" side_effects="renders DOM element"]
303
- // CIL[DOC-MICRO logic_summary="Creates radio menu item with check icon indicator" notable_decisions="[]"]
304
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
305
- // CIL[DOC-STABILITY stability="stable"]
306
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
307
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
308
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
309
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
316
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar checkbox item'; No verified external callers; imports: .framework/src/lib/utils.ts"]
317
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
318
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
319
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
310
320
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
311
321
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
322
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarCheckboxItem:component"]
323
+
324
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarRadioItem:component" type="component" identity="MenubarRadioItem" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
325
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar radio item"]
326
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarRadioItem subcomponent"]
327
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
328
+ // CIL[DOC-CONTRACT inputs="className?: string, children?: ReactNode, inset?: boolean, ...props: React.ComponentProps<typeof MenubarPrimitive.RadioItem>" outputs="JSX.Element" errors="none" side_effects="none"]
329
+ // CIL[DOC-MICRO logic_summary="Renders a radio item with an indicator icon, className, and inset support" notable_decisions="[]"]
330
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
331
+ // CIL[DOC-STABILITY stability="stable"]
312
332
  function MenubarRadioItem({
313
333
  className,
314
334
  children,
@@ -337,21 +357,22 @@ function MenubarRadioItem({
337
357
  </MenubarPrimitive.RadioItem>
338
358
  )
339
359
  }
340
- // CIL[END chunk_id="menubar_menubarradioitem_1783796064"]
341
- // CIL[BEGIN chunk_id="menubar_menubarlabel_1783796064" type="function" identity="menubarlabel" parent="none"]
342
- // CIL[DOC-MACRO purpose="Render label for menu items"]
343
- // CIL[DOC-RESPONSIBILITY responsibility="Create non-interactive label text for menus"]
344
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
345
- // CIL[DOC-CONTRACT inputs="none" outputs="styled label element" errors="none" side_effects="renders DOM element"]
346
- // CIL[DOC-MICRO logic_summary="Creates non-interactive label with inset support" notable_decisions="[]"]
347
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
348
- // CIL[DOC-STABILITY stability="stable"]
349
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
350
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
351
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
352
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
360
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar radio item'; No verified external callers; imports: .framework/src/lib/utils.ts"]
361
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
362
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
363
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
353
364
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
354
365
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
366
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarRadioItem:component"]
367
+
368
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarLabel:component" type="component" identity="MenubarLabel" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
369
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar label"]
370
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarLabel subcomponent"]
371
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
372
+ // CIL[DOC-CONTRACT inputs="className?: string, inset?: boolean, ...props: React.ComponentProps<typeof MenubarPrimitive.Label>" outputs="JSX.Element" errors="none" side_effects="none"]
373
+ // CIL[DOC-MICRO logic_summary="Renders a label with data-slot, inset, and muted styling" notable_decisions="[]"]
374
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
375
+ // CIL[DOC-STABILITY stability="stable"]
355
376
  function MenubarLabel({
356
377
  className,
357
378
  inset,
@@ -371,21 +392,22 @@ function MenubarLabel({
371
392
  />
372
393
  )
373
394
  }
374
- // CIL[END chunk_id="menubar_menubarlabel_1783796064"]
375
- // CIL[BEGIN chunk_id="menubar_menubarseparator_1783796064" type="function" identity="menubarseparator" parent="none"]
376
- // CIL[DOC-MACRO purpose="Render separator between menu items"]
377
- // CIL[DOC-RESPONSIBILITY responsibility="Create visual divider for menu sections"]
378
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
379
- // CIL[DOC-CONTRACT inputs="none" outputs="styled separator" errors="none" side_effects="renders DOM element"]
380
- // CIL[DOC-MICRO logic_summary="Creates horizontal separator with margin and styling" notable_decisions="[]"]
381
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
382
- // CIL[DOC-STABILITY stability="stable"]
383
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
384
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
385
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
386
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
395
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar label'; No verified external callers; imports: .framework/src/lib/utils.ts"]
396
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
397
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
398
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
387
399
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
388
400
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
401
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarLabel:component"]
402
+
403
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSeparator:component" type="component" identity="MenubarSeparator" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
404
+ // CIL[DOC-MACRO purpose="Renders a horizontal separator inside a Menubar"]
405
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarSeparator subcomponent"]
406
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
407
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<typeof MenubarPrimitive.Separator>" outputs="JSX.Element" errors="none" side_effects="none"]
408
+ // CIL[DOC-MICRO logic_summary="Renders a separator with data-slot and background color" notable_decisions="[]"]
409
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
410
+ // CIL[DOC-STABILITY stability="stable"]
389
411
  function MenubarSeparator({
390
412
  className,
391
413
  ...props
@@ -398,21 +420,22 @@ function MenubarSeparator({
398
420
  />
399
421
  )
400
422
  }
401
- // CIL[END chunk_id="menubar_menubarseparator_1783796064"]
402
- // CIL[BEGIN chunk_id="menubar_menubarshortcut_1783796064" type="function" identity="menubarshortcut" parent="none"]
403
- // CIL[DOC-MACRO purpose="Render keyboard shortcut text"]
404
- // CIL[DOC-RESPONSIBILITY responsibility="Create styled shortcut display for menu items"]
405
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
406
- // CIL[DOC-CONTRACT inputs="none" outputs="styled shortcut text" errors="none" side_effects="renders DOM element"]
407
- // CIL[DOC-MICRO logic_summary="Creates small text for keyboard shortcuts with focus styling" notable_decisions="[]"]
408
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
409
- // CIL[DOC-STABILITY stability="stable"]
410
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
411
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
412
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
413
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
423
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a horizontal separator inside a Menubar'; No verified external callers; imports: .framework/src/lib/utils.ts"]
424
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
425
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
426
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
414
427
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
415
428
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
429
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSeparator:component"]
430
+
431
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarShortcut:component" type="component" identity="MenubarShortcut" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
432
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar shortcut hint"]
433
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarShortcut subcomponent"]
434
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
435
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<'span'>" outputs="JSX.Element" errors="none" side_effects="none"]
436
+ // CIL[DOC-MICRO logic_summary="Renders a span with small tracking-widest text and focus color" notable_decisions="[]"]
437
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
438
+ // CIL[DOC-STABILITY stability="stable"]
416
439
  function MenubarShortcut({
417
440
  className,
418
441
  ...props
@@ -428,41 +451,43 @@ function MenubarShortcut({
428
451
  />
429
452
  )
430
453
  }
431
- // CIL[END chunk_id="menubar_menubarshortcut_1783796064"]
432
- // CIL[BEGIN chunk_id="menubar_menubarsub_1783796064" type="function" identity="menubarsub" parent="none"]
433
- // CIL[DOC-MACRO purpose="Render submenu container"]
434
- // CIL[DOC-RESPONSIBILITY responsibility="Create container for nested menu structure"]
435
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
436
- // CIL[DOC-CONTRACT inputs="none" outputs="submenu container" errors="none" side_effects="renders DOM element"]
437
- // CIL[DOC-MICRO logic_summary="Creates submenu container for hierarchical menu structure" notable_decisions="[]"]
438
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
439
- // CIL[DOC-STABILITY stability="stable"]
440
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
441
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
442
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
443
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
454
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar shortcut hint'; No verified external callers; imports: .framework/src/lib/utils.ts"]
455
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
456
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
457
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
444
458
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
445
459
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
460
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarShortcut:component"]
461
+
462
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSub:component" type="component" identity="MenubarSub" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
463
+ // CIL[DOC-MACRO purpose="Renders a Menubar submenu wrapper"]
464
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarSub subcomponent"]
465
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
466
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof MenubarPrimitive.Sub>" outputs="JSX.Element" errors="none" side_effects="none"]
467
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.Sub with data-slot" notable_decisions="[]"]
468
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
469
+ // CIL[DOC-STABILITY stability="stable"]
446
470
  function MenubarSub({
447
471
  ...props
448
472
  }: React.ComponentProps<typeof MenubarPrimitive.Sub>) {
449
473
  return <MenubarPrimitive.Sub data-slot="menubar-sub" {...props} />
450
474
  }
451
- // CIL[END chunk_id="menubar_menubarsub_1783796064"]
452
- // CIL[BEGIN chunk_id="menubar_menubarsubtrigger_1783796064" type="function" identity="menubarsubtrigger" parent="none"]
453
- // CIL[DOC-MACRO purpose="Render submenu trigger button"]
454
- // CIL[DOC-RESPONSIBILITY responsibility="Create trigger for nested menu with chevron"]
455
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
456
- // CIL[DOC-CONTRACT inputs="none" outputs="styled submenu trigger" errors="none" side_effects="renders DOM element"]
457
- // CIL[DOC-MICRO logic_summary="Creates submenu trigger with chevron icon and focus states" notable_decisions="[]"]
458
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
459
- // CIL[DOC-STABILITY stability="stable"]
460
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
461
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
462
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
463
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
475
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a Menubar submenu wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
476
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
477
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
478
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
464
479
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
465
480
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
481
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSub:component"]
482
+
483
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSubTrigger:component" type="component" identity="MenubarSubTrigger" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
484
+ // CIL[DOC-MACRO purpose="Renders a styled Menubar sub menu trigger"]
485
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarSubTrigger subcomponent"]
486
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
487
+ // CIL[DOC-CONTRACT inputs="className?: string, inset?: boolean, children?: ReactNode, ...props: React.ComponentProps<typeof MenubarPrimitive.SubTrigger>" outputs="JSX.Element" errors="none" side_effects="none"]
488
+ // CIL[DOC-MICRO logic_summary="Renders a sub trigger with data-slot, inset, focus state, and a ChevronRight icon" notable_decisions="[]"]
489
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
490
+ // CIL[DOC-STABILITY stability="stable"]
466
491
  function MenubarSubTrigger({
467
492
  className,
468
493
  inset,
@@ -486,21 +511,22 @@ function MenubarSubTrigger({
486
511
  </MenubarPrimitive.SubTrigger>
487
512
  )
488
513
  }
489
- // CIL[END chunk_id="menubar_menubarsubtrigger_1783796064"]
490
- // CIL[BEGIN chunk_id="menubar_menubarsubcontent_1783796064" type="function" identity="menubarsubcontent" parent="none"]
491
- // CIL[DOC-MACRO purpose="Render submenu dropdown content"]
492
- // CIL[DOC-RESPONSIBILITY responsibility="Create styled dropdown for nested menu items"]
493
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
494
- // CIL[DOC-CONTRACT inputs="none" outputs="styled submenu content" errors="none" side_effects="renders DOM element"]
495
- // CIL[DOC-MICRO logic_summary="Creates submenu dropdown with animations and positioning" notable_decisions="[]"]
496
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
497
- // CIL[DOC-STABILITY stability="stable"]
498
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
499
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
500
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
501
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
514
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Menubar sub menu trigger'; No verified external callers; imports: .framework/src/lib/utils.ts"]
515
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
516
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
517
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
502
518
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
503
519
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
520
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSubTrigger:component"]
521
+
522
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSubContent:component" type="component" identity="MenubarSubContent" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
523
+ // CIL[DOC-MACRO purpose="Renders styled Menubar sub menu content"]
524
+ // CIL[DOC-RESPONSIBILITY responsibility="Render and style the MenubarSubContent subcomponent"]
525
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
526
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<typeof MenubarPrimitive.SubContent>" outputs="JSX.Element" errors="none" side_effects="none"]
527
+ // CIL[DOC-MICRO logic_summary="Spreads props onto MenubarPrimitive.SubContent with data-slot and animation classes" notable_decisions="[]"]
528
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
529
+ // CIL[DOC-STABILITY stability="stable"]
504
530
  function MenubarSubContent({
505
531
  className,
506
532
  ...props
@@ -513,21 +539,21 @@ function MenubarSubContent({
513
539
  />
514
540
  )
515
541
  }
516
- // CIL[END chunk_id="menubar_menubarsubcontent_1783796064"]
517
- // CIL[BEGIN chunk_id="menubar_exports_1783796064" type="exports" identity="exports" parent="none"]
518
- // CIL[DOC-MACRO purpose="Export menubar components for public use"]
519
- // CIL[DOC-RESPONSIBILITY responsibility="Export all menubar-related components"]
520
- // CIL[DOC-CONTEXT module="menubar" layer="ui_components" related_files="[]"]
521
- // CIL[DOC-CONTRACT inputs="none" outputs="exported components" errors="none" side_effects="module exports"]
522
- // CIL[DOC-MICRO logic_summary="Exports comprehensive menubar component system for consumption" notable_decisions="[]"]
523
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
524
- // CIL[DOC-STABILITY stability="stable"]
525
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
526
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
527
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
528
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
542
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders styled Menubar sub menu content'; No verified external callers; imports: .framework/src/lib/utils.ts"]
543
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
544
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
545
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
529
546
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
530
547
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
548
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:MenubarSubContent:component"]
549
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/menubar.tsx:export_list:export_list" type="export_list" identity="export_list" parent="~/.framework/src/components/ui/menubar.tsx:module_header:module_header"]
550
+ // CIL[DOC-MACRO purpose="Re-exports all Menubar subcomponents from the module"]
551
+ // CIL[DOC-RESPONSIBILITY responsibility="Expose Menubar subcomponents for external consumers"]
552
+ // CIL[DOC-CONTEXT module="components/ui" layer="ui" related_files=".framework/src/components/ui/menubar.tsx,.framework/src/lib/utils.ts"]
553
+ // CIL[DOC-CONTRACT inputs="none" outputs="Named Menubar exports" errors="none" side_effects="none"]
554
+ // CIL[DOC-MICRO logic_summary="Named export block for all Menubar subcomponents" notable_decisions="[]"]
555
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
556
+ // CIL[DOC-STABILITY stability="stable"]
531
557
  export {
532
558
  Menubar,
533
559
  MenubarPortal,
@@ -546,4 +572,10 @@ export {
546
572
  MenubarSubTrigger,
547
573
  MenubarSubContent,
548
574
  }
549
- // CIL[END chunk_id="menubar_exports_1783796064"]
575
+ // CIL[DOC-VECTOR type="context" content="purpose='Re-exports all Menubar subcomponents from the module'; No verified external callers; imports: .framework/src/lib/utils.ts"]
576
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
577
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
578
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
579
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
580
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
581
+ // CIL[END stable_id="~/.framework/src/components/ui/menubar.tsx:export_list:export_list"]