spine-framework 0.3.145 → 0.4.1

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 +5067 -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,86 +1,73 @@
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
- // CIL[BEGIN chunk_id="popover_module_header_1783758409" type="module_header" identity="imports" parent="none"]
11
- // CIL[DOC-MACRO purpose="Import dependencies for popover component library"]
12
- // CIL[DOC-RESPONSIBILITY responsibility="Import external React UI primitives and utilities"]
13
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/components/ui/dialog.tsx\",\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\"\\\"]"]
14
- // CIL[DOC-CONTRACT inputs="none" outputs="React, Popover primitive, utils" errors="none" side_effects="Module imports"]
15
- // CIL[DOC-MICRO logic_summary="Imports React, Radix UI Popover primitive and utility functions" notable_decisions="[]"]
16
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
1
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:module_header:module_header" type="module_header" identity="module_header" parent="~/.framework/src/components/ui/popover.tsx:file"]
2
+ // CIL[DOC-MACRO purpose="shadcn/ui Popover component module built on Radix UI"]
3
+ // CIL[DOC-RESPONSIBILITY responsibility="Provide shadcn/ui Popover primitives and their dependencies"]
4
+ // CIL[DOC-CONTEXT module="components/ui" layer="ui" related_files=".framework/src/lib/utils.ts"]
5
+ // CIL[DOC-CONTRACT inputs="none" outputs="React, PopoverPrimitive, cn available to the module" side_effects="none" errors="none"]
6
+ // CIL[DOC-MICRO logic_summary="Imports React, Radix UI Popover primitive and utility dependencies" notable_decisions="[]"]
7
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
17
8
  // CIL[DOC-STABILITY stability="stable"]
18
- // CIL[DOC-AUDIENCE audience="developer"]
19
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/components/layout/Sidebar.tsx, .framework/src/components/ui/dialog.tsx, custom/apps/cortex/pages/operations/OperationsDashboard.tsx, custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, \."]
20
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
21
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
22
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
23
- // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
24
- // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
9
+ // CIL[DOC-AUDIENCE audience="frontend"]
25
10
  import * as React from "react"
26
11
  import { Popover as PopoverPrimitive } from "radix-ui"
27
12
 
28
13
  import { cn } from "@/lib/utils"
29
- // CIL[END chunk_id="popover_module_header_1783758409"]
30
- // CIL[BEGIN chunk_id="popover_popover_1783758409" type="function" identity="Popover" parent="none"]
31
- // CIL[DOC-MACRO purpose="Root popover component wrapper"]
32
- // CIL[DOC-RESPONSIBILITY responsibility="Provide popover root container with data attributes"]
33
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[\".framework/src/components/ui/dialog.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
34
- // CIL[DOC-CONTRACT inputs="none" outputs="PopoverPrimitive.Root" errors="none" side_effects="DOM rendering"]
35
- // CIL[DOC-MICRO logic_summary="Thin wrapper around Radix UI Popover Root with data-slot attribute" notable_decisions="[]"]
36
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
37
- // CIL[DOC-STABILITY stability="stable"]
38
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/components/ui/dialog.tsx, .framework/src/components/layout/Sidebar.tsx, custom/apps/portal/pages/ContentPage.tsx, custom/apps/portal/pages/CoursesPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
39
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
40
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
41
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
14
+ // CIL[DOC-VECTOR type="context" content="purpose='shadcn/ui Popover component module built on Radix UI'; No verified external callers; imports: .framework/src/lib/utils.ts"]
15
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
16
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
17
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
42
18
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
43
19
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
20
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
21
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:Popover:component" type="component" identity="Popover" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
22
+ // CIL[DOC-MACRO purpose="Renders a styled Radix Popover root wrapper"]
23
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the Popover root subcomponent"]
24
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
25
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof PopoverPrimitive.Root>" outputs="JSX.Element" side_effects="none" errors="none"]
26
+ // CIL[DOC-MICRO logic_summary="Spreads props onto PopoverPrimitive.Root with a data-slot attribute" notable_decisions="[]"]
27
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
28
+ // CIL[DOC-STABILITY stability="stable"]
44
29
  function Popover({
45
30
  ...props
46
31
  }: React.ComponentProps<typeof PopoverPrimitive.Root>) {
47
32
  return <PopoverPrimitive.Root data-slot="popover" {...props} />
48
33
  }
49
- // CIL[END chunk_id="popover_popover_1783758409"]
50
- // CIL[BEGIN chunk_id="popover_popovertrigger_1783758409" type="function" identity="PopoverTrigger" parent="none"]
51
- // CIL[DOC-MACRO purpose="Trigger component to open popover"]
52
- // CIL[DOC-RESPONSIBILITY responsibility="Handle popover opening trigger with data attributes"]
53
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\"custom/apps/portal/pages/CoursesPage.tsx\",\".framework/src/components/ui/dialog.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\"custom/apps/cortex/functions/custom_cil-embeddings.ts\",\"\\\"]"]
54
- // CIL[DOC-CONTRACT inputs="none" outputs="PopoverPrimitive.Trigger" errors="none" side_effects="DOM event handling"]
55
- // CIL[DOC-MICRO logic_summary="Wrapper around Radix UI Popover Trigger with data-slot attribute" notable_decisions="[]"]
56
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
57
- // CIL[DOC-STABILITY stability="stable"]
58
- // 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/ui/dialog.tsx, .framework/src/components/layout/Sidebar.tsx, custom/apps/cortex/functions/custom_cil-embeddings.ts, \."]
59
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
60
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
61
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
34
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Radix Popover root wrapper'; No verified external callers; imports: .framework/src/lib/utils.ts"]
35
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
36
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
37
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
62
38
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
63
39
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
40
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:Popover:component"]
41
+
42
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:PopoverTrigger:component" type="component" identity="PopoverTrigger" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
43
+ // CIL[DOC-MACRO purpose="Renders a styled Popover trigger element"]
44
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the PopoverTrigger subcomponent"]
45
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
46
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof PopoverPrimitive.Trigger>" outputs="JSX.Element" side_effects="none" errors="none"]
47
+ // CIL[DOC-MICRO logic_summary="Wraps PopoverPrimitive.Trigger with a data-slot attribute" notable_decisions="[]"]
48
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
49
+ // CIL[DOC-STABILITY stability="stable"]
64
50
  function PopoverTrigger({
65
51
  ...props
66
52
  }: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {
67
53
  return <PopoverPrimitive.Trigger data-slot="popover-trigger" {...props} />
68
54
  }
69
- // CIL[END chunk_id="popover_popovertrigger_1783758409"]
70
- // CIL[BEGIN chunk_id="popover_popovercontent_1783758409" type="function" identity="PopoverContent" parent="none"]
71
- // CIL[DOC-MACRO purpose="Main popover content container with positioning"]
72
- // CIL[DOC-RESPONSIBILITY responsibility="Render popover panel with portal, positioning and animations"]
73
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\".framework/functions/_shared/schema-utils.ts\",\".framework/src/components/ui/dialog.tsx\",\".framework/functions/_shared/principal.ts\",\"\\\"]"]
74
- // CIL[DOC-CONTRACT inputs="none" outputs="Styled popover content" errors="none" side_effects="DOM portal rendering"]
75
- // CIL[DOC-MICRO logic_summary="Creates positioned popover with portal, animations and comprehensive styling" notable_decisions="[]"]
76
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
77
- // CIL[DOC-STABILITY stability="stable"]
78
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: custom/apps/portal/pages/ContentPage.tsx, .framework/src/components/layout/Sidebar.tsx, .framework/functions/_shared/schema-utils.ts, .framework/src/components/ui/dialog.tsx, .framework/functions/_shared/principal.ts, \."]
79
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
80
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
81
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
55
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Popover trigger element'; No verified external callers; imports: .framework/src/lib/utils.ts"]
56
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
57
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
58
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
82
59
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
83
60
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
61
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:PopoverTrigger:component"]
62
+
63
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:PopoverContent:component" type="component" identity="PopoverContent" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
64
+ // CIL[DOC-MACRO purpose="Renders the Popover content panel"]
65
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the PopoverContent subcomponent"]
66
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
67
+ // CIL[DOC-CONTRACT inputs="className?: string, align?: PopoverPrimitive.Content align, sideOffset?: number, ...props: React.ComponentProps<typeof PopoverPrimitive.Content>" outputs="JSX.Element" side_effects="none" errors="none"]
68
+ // CIL[DOC-MICRO logic_summary="Portals PopoverPrimitive.Content with Tailwind styling and animation data attributes" notable_decisions="[]"]
69
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
70
+ // CIL[DOC-STABILITY stability="stable"]
84
71
  function PopoverContent({
85
72
  className,
86
73
  align = "center",
@@ -102,41 +89,43 @@ function PopoverContent({
102
89
  </PopoverPrimitive.Portal>
103
90
  )
104
91
  }
105
- // CIL[END chunk_id="popover_popovercontent_1783758409"]
106
- // CIL[BEGIN chunk_id="popover_popoveranchor_1783758409" type="function" identity="PopoverAnchor" parent="none"]
107
- // CIL[DOC-MACRO purpose="Anchor element for popover positioning"]
108
- // CIL[DOC-RESPONSIBILITY responsibility="Provide anchor wrapper with data attributes"]
109
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/src/components/layout/Sidebar.tsx\",\".framework/functions/_shared/schema-utils.ts\",\"\\\"]"]
110
- // CIL[DOC-CONTRACT inputs="none" outputs="PopoverPrimitive.Anchor" errors="none" side_effects="DOM rendering"]
111
- // CIL[DOC-MICRO logic_summary="Wrapper around Radix UI Popover Anchor with data-slot attribute" notable_decisions="[]"]
112
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
113
- // CIL[DOC-STABILITY stability="stable"]
114
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/src/components/layout/Sidebar.tsx, .framework/functions/_shared/schema-utils.ts, \."]
115
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
116
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
117
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
92
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders the Popover content panel'; No verified external callers; imports: .framework/src/lib/utils.ts"]
93
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
94
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
95
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
118
96
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
119
97
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
98
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:PopoverContent:component"]
99
+
100
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:PopoverAnchor:component" type="component" identity="PopoverAnchor" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
101
+ // CIL[DOC-MACRO purpose="Renders a styled Popover anchor element"]
102
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the PopoverAnchor subcomponent"]
103
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
104
+ // CIL[DOC-CONTRACT inputs="...props: React.ComponentProps<typeof PopoverPrimitive.Anchor>" outputs="JSX.Element" side_effects="none" errors="none"]
105
+ // CIL[DOC-MICRO logic_summary="Wraps PopoverPrimitive.Anchor with a data-slot attribute" notable_decisions="[]"]
106
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
107
+ // CIL[DOC-STABILITY stability="stable"]
120
108
  function PopoverAnchor({
121
109
  ...props
122
110
  }: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {
123
111
  return <PopoverPrimitive.Anchor data-slot="popover-anchor" {...props} />
124
112
  }
125
- // CIL[END chunk_id="popover_popoveranchor_1783758409"]
126
- // CIL[BEGIN chunk_id="popover_popoverheader_1783758409" type="function" identity="PopoverHeader" parent="none"]
127
- // CIL[DOC-MACRO purpose="Header section container for popover"]
128
- // CIL[DOC-RESPONSIBILITY responsibility="Provide styled header container with spacing"]
129
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[]"]
130
- // CIL[DOC-CONTRACT inputs="none" outputs="Styled header div" errors="none" side_effects="DOM rendering"]
131
- // CIL[DOC-MICRO logic_summary="Creates flex column header with gap and small text using Tailwind classes" notable_decisions="[]"]
132
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
133
- // CIL[DOC-STABILITY stability="stable"]
134
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
135
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
136
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
137
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
113
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Popover anchor element'; No verified external callers; imports: .framework/src/lib/utils.ts"]
114
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
115
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
116
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
138
117
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
139
118
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
119
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:PopoverAnchor:component"]
120
+
121
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:PopoverHeader:component" type="component" identity="PopoverHeader" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
122
+ // CIL[DOC-MACRO purpose="Renders a styled Popover header container"]
123
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the PopoverHeader subcomponent"]
124
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
125
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<'div'>" outputs="JSX.Element" side_effects="none" errors="none"]
126
+ // CIL[DOC-MICRO logic_summary="Wraps a div with flex column, gap and text styling, plus optional className" notable_decisions="[]"]
127
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
128
+ // CIL[DOC-STABILITY stability="stable"]
140
129
  function PopoverHeader({ className, ...props }: React.ComponentProps<"div">) {
141
130
  return (
142
131
  <div
@@ -146,21 +135,22 @@ function PopoverHeader({ className, ...props }: React.ComponentProps<"div">) {
146
135
  />
147
136
  )
148
137
  }
149
- // CIL[END chunk_id="popover_popoverheader_1783758409"]
150
- // CIL[BEGIN chunk_id="popover_popovertitle_1783758409" type="function" identity="PopoverTitle" parent="none"]
151
- // CIL[DOC-MACRO purpose="Title component for popover header"]
152
- // CIL[DOC-RESPONSIBILITY responsibility="Provide styled title with proper typography"]
153
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[]"]
154
- // CIL[DOC-CONTRACT inputs="none" outputs="Styled title element" errors="none" side_effects="DOM rendering"]
155
- // CIL[DOC-MICRO logic_summary="Creates styled title using div with medium font weight and small text size" notable_decisions="[]"]
156
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
157
- // CIL[DOC-STABILITY stability="stable"]
158
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
159
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
160
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
161
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
138
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Popover header container'; No verified external callers; imports: .framework/src/lib/utils.ts"]
139
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
140
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
141
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
162
142
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
163
143
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
144
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:PopoverHeader:component"]
145
+
146
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:PopoverTitle:component" type="component" identity="PopoverTitle" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
147
+ // CIL[DOC-MACRO purpose="Renders a styled Popover title element"]
148
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the PopoverTitle subcomponent"]
149
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
150
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<'h2'>" outputs="JSX.Element" side_effects="none" errors="none"]
151
+ // CIL[DOC-MICRO logic_summary="Renders a div with font-medium and text-sm styling, plus optional className" notable_decisions="[]"]
152
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
153
+ // CIL[DOC-STABILITY stability="stable"]
164
154
  function PopoverTitle({ className, ...props }: React.ComponentProps<"h2">) {
165
155
  return (
166
156
  <div
@@ -170,21 +160,22 @@ function PopoverTitle({ className, ...props }: React.ComponentProps<"h2">) {
170
160
  />
171
161
  )
172
162
  }
173
- // CIL[END chunk_id="popover_popovertitle_1783758409"]
174
- // CIL[BEGIN chunk_id="popover_popoverdescription_1783758409" type="function" identity="PopoverDescription" parent="none"]
175
- // CIL[DOC-MACRO purpose="Description component for popover content"]
176
- // CIL[DOC-RESPONSIBILITY responsibility="Provide styled description with muted text styling"]
177
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[]"]
178
- // CIL[DOC-CONTRACT inputs="none" outputs="Styled description element" errors="none" side_effects="DOM rendering"]
179
- // CIL[DOC-MICRO logic_summary="Creates styled description using paragraph element with muted text color" notable_decisions="[]"]
180
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
181
- // CIL[DOC-STABILITY stability="stable"]
182
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
183
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
184
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
185
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
163
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Popover title element'; No verified external callers; imports: .framework/src/lib/utils.ts"]
164
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
165
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
166
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
186
167
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
187
168
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
169
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:PopoverTitle:component"]
170
+
171
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:PopoverDescription:component" type="component" identity="PopoverDescription" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
172
+ // CIL[DOC-MACRO purpose="Renders a styled Popover description element"]
173
+ // CIL[DOC-RESPONSIBILITY responsibility="Render the PopoverDescription subcomponent"]
174
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
175
+ // CIL[DOC-CONTRACT inputs="className?: string, ...props: React.ComponentProps<'p'>" outputs="JSX.Element" side_effects="none" errors="none"]
176
+ // CIL[DOC-MICRO logic_summary="Renders a paragraph with muted-foreground styling, plus optional className" notable_decisions="[]"]
177
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
178
+ // CIL[DOC-STABILITY stability="stable"]
188
179
  function PopoverDescription({
189
180
  className,
190
181
  ...props
@@ -197,21 +188,21 @@ function PopoverDescription({
197
188
  />
198
189
  )
199
190
  }
200
- // CIL[END chunk_id="popover_popoverdescription_1783758409"]
201
- // CIL[BEGIN chunk_id="popover_exports_1783758409" type="exports" identity="exports" parent="none"]
202
- // CIL[DOC-MACRO purpose="Export all popover components for public API"]
203
- // CIL[DOC-RESPONSIBILITY responsibility="Provide module exports for popover component library"]
204
- // CIL[DOC-CONTEXT module="popover" layer="ui_components" related_files="[]"]
205
- // CIL[DOC-CONTRACT inputs="none" outputs="Component exports" errors="none" side_effects="Module exports"]
206
- // CIL[DOC-MICRO logic_summary="Exports all popover components: Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger" notable_decisions="[]"]
207
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
208
- // CIL[DOC-STABILITY stability="stable"]
209
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: none."]
210
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
211
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
212
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
191
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a styled Popover description element'; No verified external callers; imports: .framework/src/lib/utils.ts"]
192
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
193
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
194
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
213
195
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
214
196
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
197
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:PopoverDescription:component"]
198
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/popover.tsx:module_exports:module_exports" type="module_exports" identity="module_exports" parent="~/.framework/src/components/ui/popover.tsx:module_header:module_header"]
199
+ // CIL[DOC-MACRO purpose="Public exports of the Popover UI primitives"]
200
+ // CIL[DOC-RESPONSIBILITY responsibility="Expose named Popover subcomponents for consumers"]
201
+ // CIL[DOC-CONTEXT module="components/ui" layer="presentation" related_files=".framework/src/components/ui/popover.tsx,.framework/src/lib/utils.ts"]
202
+ // CIL[DOC-CONTRACT inputs="none" outputs="named exports of Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger" side_effects="none" errors="none"]
203
+ // CIL[DOC-MICRO logic_summary="Re-exports all named Popover subcomponents" notable_decisions="[]"]
204
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
205
+ // CIL[DOC-STABILITY stability="stable"]
215
206
  export {
216
207
  Popover,
217
208
  PopoverAnchor,
@@ -221,4 +212,10 @@ export {
221
212
  PopoverTitle,
222
213
  PopoverTrigger,
223
214
  }
224
- // CIL[END chunk_id="popover_exports_1783758409"]
215
+ // CIL[DOC-VECTOR type="context" content="purpose='Public exports of the Popover UI primitives'; No verified external callers; imports: .framework/src/lib/utils.ts"]
216
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
217
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
218
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
219
+ // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
220
+ // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
221
+ // CIL[END stable_id="~/.framework/src/components/ui/popover.tsx:module_exports:module_exports"]
@@ -1,42 +1,52 @@
1
-
2
-
3
-
4
- // CIL[BEGIN chunk_id="progress_module_header_1783758409" type="module_header" identity="imports" parent="none"]
5
- // CIL[DOC-MACRO purpose="Import dependencies for progress component library"]
6
- // CIL[DOC-RESPONSIBILITY responsibility="Import external React UI primitives and utilities"]
7
- // CIL[DOC-CONTEXT module="progress" layer="ui_components" related_files="[\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/components/ui/dialog.tsx\",\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\"\\\"]"]
8
- // CIL[DOC-CONTRACT inputs="none" outputs="React, Progress primitive, utils" errors="none" side_effects="Module imports"]
9
- // CIL[DOC-MICRO logic_summary="Imports React, Radix UI Progress primitive and utility functions" notable_decisions="[]"]
10
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
1
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/progress.tsx:use_client:directive" type="directive" identity="use_client" parent="~/.framework/src/components/ui/progress.tsx"]
2
+ // CIL[DOC-MACRO purpose="Declares this file as client-side only for the Next.js runtime."]
3
+ // CIL[DOC-RESPONSIBILITY responsibility="Instructs the bundler to execute this module in the browser, not on the server."]
4
+ // CIL[DOC-CONTEXT module="ui/progress" layer="component" related_files=".framework/src/components/ui/progress.tsx,.framework/src/lib/utils.ts"]
5
+ // CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="Sets module bundler runtime context."]
6
+ // CIL[DOC-MICRO logic_summary="'use client' directive only." notable_decisions="[]"]
7
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
11
8
  // CIL[DOC-STABILITY stability="stable"]
12
- // CIL[DOC-AUDIENCE audience="developer"]
13
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/components/layout/Sidebar.tsx, .framework/src/components/ui/dialog.tsx, custom/apps/cortex/pages/operations/OperationsDashboard.tsx, custom/apps/portal/pages/ContentPage.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, \."]
14
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
15
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
16
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
9
+ "use client"
10
+ // CIL[DOC-VECTOR type="context" content="purpose='Declares this file as client-side only for the Next.js runtime.'; No verified external callers; imports: .framework/src/lib/utils.ts"]
11
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
12
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
13
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
17
14
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
18
15
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
19
- "use client"
16
+ // CIL[END stable_id="~/.framework/src/components/ui/progress.tsx:use_client:directive"]
20
17
 
18
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/progress.tsx:module_header:module_header" type="module_header" identity="module_header" parent="~/.framework/src/components/ui/progress.tsx"]
19
+ // CIL[DOC-MACRO purpose="Imports dependencies for the Progress UI component."]
20
+ // CIL[DOC-RESPONSIBILITY responsibility="Provide React, Radix UI Progress primitive, and utility imports for the component."]
21
+ // CIL[DOC-CONTEXT module="ui/progress" layer="component" related_files=".framework/src/lib/utils.ts"]
22
+ // CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="Loads external modules."]
23
+ // CIL[DOC-MICRO logic_summary="Imports React, radix-ui Progress, and cn class-merging utility." notable_decisions="[]"]
24
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
25
+ // CIL[DOC-STABILITY stability="stable"]
26
+ // CIL[DOC-AUDIENCE audience="developer"]
21
27
  import * as React from "react"
22
28
  import { Progress as ProgressPrimitive } from "radix-ui"
23
29
 
24
30
  import { cn } from "@/lib/utils"
25
- // CIL[END chunk_id="progress_module_header_1783758409"]
26
- // CIL[BEGIN chunk_id="progress_progress_1783758409" type="function" identity="Progress" parent="none"]
27
- // CIL[DOC-MACRO purpose="Progress bar component with value indicator"]
28
- // CIL[DOC-RESPONSIBILITY responsibility="Render progress bar with animated indicator and percentage tracking"]
29
- // CIL[DOC-CONTEXT module="progress" layer="ui_components" related_files="[\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/components/ui/dialog.tsx\",\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\".framework/functions/_shared/schema-utils.ts\",\"\\\"]"]
30
- // CIL[DOC-CONTRACT inputs="none" outputs="Styled progress bar" errors="none" side_effects="DOM rendering"]
31
- // CIL[DOC-MICRO logic_summary="Creates progress bar with root container, animated indicator and percentage-based transform" notable_decisions="[]"]
32
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
33
- // CIL[DOC-STABILITY stability="stable"]
34
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/components/layout/Sidebar.tsx, .framework/src/components/ui/dialog.tsx, custom/apps/portal/pages/ContentPage.tsx, .framework/src/pages/admin/RolesPage.tsx, .framework/functions/_shared/schema-utils.ts, \."]
35
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
36
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
37
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
31
+ // CIL[DOC-VECTOR type="context" content="purpose='Imports dependencies for the Progress UI component.'; No verified external callers; imports: .framework/src/lib/utils.ts"]
32
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
33
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
34
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
38
35
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
39
36
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
37
+ // CIL[END stable_id="~/.framework/src/components/ui/progress.tsx:module_header:module_header"]
38
+
39
+ // CIL[BEGIN stable_id="~/.framework/src/components/ui/progress.tsx:Progress:component" type="component" identity="Progress" parent="~/.framework/src/components/ui/progress.tsx"]
40
+ // CIL[DOC-MACRO purpose="Renders a linear progress bar using Radix UI primitives."]
41
+ // CIL[DOC-RESPONSIBILITY responsibility="Display a percentage-based progress indicator styled with Tailwind."]
42
+ // CIL[DOC-CONTEXT module="ui/progress" layer="component" related_files=".framework/src/components/ui/progress.tsx,.framework/src/lib/utils.ts"]
43
+ // CIL[DOC-CONTRACT inputs="className: string, value: number, props: React.ComponentProps<typeof ProgressPrimitive.Root>" outputs="JSX.Element" errors="none" side_effects="none"]
44
+ // CIL[DOC-PARAM name="className" type="string" description="Optional string for extra Tailwind classes."]
45
+ // CIL[DOC-PARAM name="value" type="number" description="Optional number between 0 and 100 representing completion percentage."]
46
+ // CIL[DOC-PARAM name="props" type="React.ComponentProps<typeof ProgressPrimitive.Root>" description="Optional remaining props forwarded to ProgressPrimitive.Root."]
47
+ // CIL[DOC-MICRO logic_summary="Wraps ProgressPrimitive.Root, applies theme classes, and positions ProgressPrimitive.Indicator via translateX." notable_decisions="[]"]
48
+ // CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
49
+ // CIL[DOC-STABILITY stability="stable"]
40
50
  function Progress({
41
51
  className,
42
52
  value,
@@ -59,20 +69,13 @@ function Progress({
59
69
  </ProgressPrimitive.Root>
60
70
  )
61
71
  }
62
- // CIL[END chunk_id="progress_progress_1783758409"]
63
- // CIL[BEGIN chunk_id="progress_exports_1783758409" type="exports" identity="exports" parent="none"]
64
- // CIL[DOC-MACRO purpose="Export progress component for public API"]
65
- // CIL[DOC-RESPONSIBILITY responsibility="Provide module export for progress component library"]
66
- // CIL[DOC-CONTEXT module="progress" layer="ui_components" related_files="[\".framework/src/components/layout/Sidebar.tsx\",\".framework/src/components/ui/dialog.tsx\",\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/src/pages/admin/RolesPage.tsx\",\"\\\"]"]
67
- // CIL[DOC-CONTRACT inputs="none" outputs="Component export" errors="none" side_effects="Module exports"]
68
- // CIL[DOC-MICRO logic_summary="Exports Progress component for progress bar functionality" notable_decisions="[]"]
69
- // CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
70
- // CIL[DOC-STABILITY stability="stable"]
71
- // CIL[DOC-VECTOR type="context" content="Layer: ui_components. Direct callers: 0. Direct calls: 0. Related files: .framework/src/components/layout/Sidebar.tsx, .framework/src/components/ui/dialog.tsx, custom/apps/portal/pages/ContentPage.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/src/pages/admin/RolesPage.tsx, \."]
72
- // CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
73
- // CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
74
- // CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
72
+
73
+ export { Progress }
74
+
75
+ // CIL[DOC-VECTOR type="context" content="purpose='Renders a linear progress bar using Radix UI primitives.'; No verified external callers; imports: .framework/src/lib/utils.ts"]
76
+ // CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
77
+ // CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
78
+ // CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
75
79
  // CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
76
80
  // CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
77
- export { Progress }
78
- // CIL[END chunk_id="progress_exports_1783758409"]
81
+ // CIL[END stable_id="~/.framework/src/components/ui/progress.tsx:Progress:component"]