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.
- package/.env.example +76 -0
- package/.framework/.spine-manifest.json +19 -0
- package/.framework/cli/commands/agents.ts +61 -33
- package/.framework/cli/commands/auth.ts +60 -28
- package/.framework/cli/commands/create-app.ts +212 -80
- package/.framework/cli/commands/dev.ts +184 -68
- package/.framework/cli/commands/doctor.ts +324 -152
- package/.framework/cli/commands/generate.ts +119 -68
- package/.framework/cli/commands/init.ts +141 -242
- package/.framework/cli/commands/install-app.ts +1336 -314
- package/.framework/cli/commands/items.ts +31 -29
- package/.framework/cli/commands/migrate.ts +299 -156
- package/.framework/cli/commands/migrations.ts +62 -30
- package/.framework/cli/commands/pipelines.ts +31 -29
- package/.framework/cli/commands/status.ts +105 -45
- package/.framework/cli/commands/system.ts +47 -42
- package/.framework/cli/commands/test.ts +161 -102
- package/.framework/cli/commands/upgrade.ts +260 -0
- package/.framework/cli/commands/validate-app.ts +517 -161
- package/.framework/cli/context.ts +117 -85
- package/.framework/cli/env-loader.ts +74 -43
- package/.framework/cli/index.ts +70 -46
- package/.framework/cli/lib/project-files.ts +404 -0
- package/.framework/docs/guides/testing-guide.md +1 -1
- package/.framework/docs/runtime-types.md +72 -72
- package/.framework/functions/_shared/access.ts +84 -0
- package/.framework/functions/_shared/agent-runner.ts +5051 -1026
- package/.framework/functions/_shared/app-manifest.ts +214 -94
- package/.framework/functions/_shared/ast.ts +214 -0
- package/.framework/functions/_shared/audit.ts +91 -55
- package/.framework/functions/_shared/cil.ts +368 -127
- package/.framework/functions/_shared/db.ts +337 -68
- package/.framework/functions/_shared/funnel.ts +228 -0
- package/.framework/functions/_shared/geo.ts +105 -0
- package/.framework/functions/_shared/hash-api-key.ts +94 -17
- package/.framework/functions/_shared/index.ts +22 -224
- package/.framework/functions/_shared/kb.ts +832 -58
- package/.framework/functions/_shared/llm.ts +118 -18
- package/.framework/functions/_shared/logging.ts +317 -19
- package/.framework/functions/_shared/middleware.ts +701 -131
- package/.framework/functions/_shared/notify.ts +70 -0
- package/.framework/functions/_shared/outcomes.ts +34 -19
- package/.framework/functions/_shared/permissions.ts +501 -315
- package/.framework/functions/_shared/pipeline-runner.ts +704 -155
- package/.framework/functions/_shared/principal.ts +436 -263
- package/.framework/functions/_shared/rate-limit.ts +233 -0
- package/.framework/functions/_shared/resolve-credentials.ts +86 -19
- package/.framework/functions/_shared/resolve-ids.ts +203 -139
- package/.framework/functions/_shared/retry-deliveries.ts +51 -16
- package/.framework/functions/_shared/schema-utils.ts +602 -521
- package/.framework/functions/_shared/security.ts +345 -0
- package/.framework/functions/_shared/testing.ts +197 -172
- package/.framework/functions/_shared/tracing.ts +351 -21
- package/.framework/functions/_shared/trigger-engine.ts +425 -136
- package/.framework/functions/_shared/webhook-registration.ts +71 -70
- package/.framework/functions/_shared/webhook-registry.ts +126 -83
- package/.framework/functions/account-nodes.ts +30 -30
- package/.framework/functions/adapters/generic-webhook-inbound.ts +49 -16
- package/.framework/functions/adapters/generic-webhook-outbound.ts +17 -17
- package/.framework/functions/adapters/openai-outbound.ts +15 -16
- package/.framework/functions/admin-data.ts +596 -173
- package/.framework/functions/admin-funnel.ts +64 -60
- package/.framework/functions/admin-install-funnel.ts +84 -66
- package/.framework/functions/admin-signals.ts +69 -51
- package/.framework/functions/ai-agents.ts +431 -106
- package/.framework/functions/ai-interactions.ts +186 -112
- package/.framework/functions/api-keys.ts +107 -107
- package/.framework/functions/apps.ts +154 -136
- package/.framework/functions/auth.ts +83 -65
- package/.framework/functions/cil-agent-ingest.ts +189 -232
- package/.framework/functions/cil-agent.ts +433 -177
- package/.framework/functions/cil-callmap.ts +642 -430
- package/.framework/functions/cil-config.ts +139 -135
- package/.framework/functions/cil-context.ts +214 -127
- package/.framework/functions/cil-doc.ts +587 -458
- package/.framework/functions/cil-embeddings.ts +453 -364
- package/.framework/functions/cil-graph.ts +427 -142
- package/.framework/functions/cil-ingest.ts +1418 -1154
- package/.framework/functions/cil-pipeline.ts +276 -21
- package/.framework/functions/cil-project.ts +659 -132
- package/.framework/functions/cil-validate.ts +198 -164
- package/.framework/functions/debug-auth.ts +57 -55
- package/.framework/functions/deliveries.ts +80 -21
- package/.framework/functions/embeddings.ts +1023 -318
- package/.framework/functions/eval-harness.ts +146 -108
- package/.framework/functions/integration-outbound.ts +205 -75
- package/.framework/functions/integration-routes.ts +128 -23
- package/.framework/functions/integrations.ts +125 -100
- package/.framework/functions/invites.ts +1095 -460
- package/.framework/functions/item-progress.ts +158 -102
- package/.framework/functions/kb.ts +34 -10
- package/.framework/functions/logs.ts +133 -133
- package/.framework/functions/observability.ts +152 -122
- package/.framework/functions/pipeline-executions.ts +147 -132
- package/.framework/functions/pipelines.ts +134 -119
- package/.framework/functions/prompt-configs.ts +96 -80
- package/.framework/functions/roles.ts +112 -82
- package/.framework/functions/security.ts +450 -0
- package/.framework/functions/system-cron.ts +117 -80
- package/.framework/functions/system.ts +158 -98
- package/.framework/functions/tests.ts +29 -29
- package/.framework/functions/timers.ts +94 -95
- package/.framework/functions/trigger-scheduler.ts +10 -0
- package/.framework/functions/triggers.ts +179 -149
- package/.framework/functions/types.ts +137 -125
- package/.framework/mcp/index.ts +133 -0
- package/.framework/mcp/load-env.ts +60 -0
- package/.framework/mcp/shared/app-manifest.ts +275 -0
- package/.framework/mcp/shared/db.ts +477 -0
- package/.framework/mcp/shared/kb.ts +118 -0
- package/.framework/mcp/tools/architect.ts +431 -0
- package/.framework/mcp/tools/cil/context.ts +345 -0
- package/.framework/mcp/tools/cil/graph.ts +242 -0
- package/.framework/mcp/tools/cil/ingest.ts +1217 -0
- package/.framework/mcp/tools/cil/pipeline-orchestrator.ts +693 -0
- package/.framework/mcp/tools/cil/pipeline.ts +767 -0
- package/.framework/mcp/tools/cil/project.ts +791 -0
- package/.framework/mcp/tools/cil/retrieval.ts +336 -0
- package/.framework/mcp/tools/cil/search-core.ts +454 -0
- package/.framework/mcp/tools/cil/search.ts +97 -0
- package/.framework/mcp/tools/cil/suggest.ts +186 -0
- package/.framework/mcp/tools/cil/validate.ts +1369 -0
- package/.framework/mcp/tools/kb/delete.ts +139 -0
- package/.framework/mcp/tools/kb/index.ts +52 -0
- package/.framework/mcp/tools/kb/ingest.ts +84 -0
- package/.framework/mcp/tools/kb/list-types.ts +102 -0
- package/.framework/mcp/tools/kb/publish.ts +100 -0
- package/.framework/mcp/tools/kb/reindex.ts +86 -0
- package/.framework/mcp/tools/kb/revoke.ts +85 -0
- package/.framework/mcp/tools/kb/search.ts +101 -0
- package/.framework/mcp/tools/kb/upsert.ts +125 -0
- package/.framework/mcp/tools/observability.ts +510 -0
- package/.framework/migrations/001_core_schema.sql +15 -0
- package/.framework/migrations/002_core_rls_and_functions.sql +15 -0
- package/.framework/migrations/003_core_system_data.sql +16 -1
- package/.framework/migrations/004_core_rpc_and_broker.sql +17 -1
- package/.framework/migrations/005_core_observability.sql +17 -1
- package/.framework/migrations/006_security_hardening_rls.sql +15 -0
- package/.framework/migrations/007_kb_article_list.sql +17 -1
- package/.framework/migrations/008_items_target.sql +15 -0
- package/.framework/migrations/009_roles_slug_unique.sql +15 -0
- package/.framework/migrations/010_auth_user_trigger.sql +15 -0
- package/.framework/migrations/011_spine_system_account.sql +16 -0
- package/.framework/migrations/012_service_role_grants.sql +16 -0
- package/.framework/migrations/013_get_account_apps_role_filter.sql +15 -0
- package/.framework/migrations/014_apps_required_roles.sql +16 -0
- package/.framework/migrations/015_types_kind_slug_unique.sql +15 -0
- package/.framework/migrations/016_cil_types.sql +281 -0
- package/.framework/migrations/017_cil_stable_ids.sql +37 -0
- package/.framework/migrations/018_runtime_tables.sql +129 -0
- package/.framework/migrations/019_agent_prompt_columns.sql +56 -0
- package/.framework/migrations/020_schema_reconciliation.sql +67 -0
- package/.framework/migrations/021_kb_embedding_lifecycle.sql +31 -0
- package/.framework/migrations/032_cil_status_migration.sql +73 -0
- package/.framework/migrations/033_cil_versioning.sql +73 -0
- package/.framework/migrations/034_match_embeddings_knn.sql +115 -0
- package/.framework/migrations/035_rate_limits.sql +55 -0
- package/.framework/migrations/036_demo_record_flags.sql +72 -0
- package/.framework/migrations/037_kb_types_canonical.sql +244 -0
- package/.framework/migrations/038_drop_demo_record_flags.sql +38 -0
- package/.framework/migrations/042_registration_hierarchy.sql +309 -0
- package/.framework/migrations/043_policy_actor_cleanup.sql +39 -0
- package/.framework/migrations/044_match_embeddings_filtered_knn.sql +151 -0
- package/.framework/migrations/045_security_critical_rls.sql +139 -0
- package/.framework/migrations/046_security_missing_rls.sql +79 -0
- package/.framework/migrations/047_people_updated_by.sql +27 -0
- package/.framework/migrations/048_watcher_last_seen_at.sql +24 -0
- package/.framework/migrations/049_security_blocklist.sql +148 -0
- package/.framework/migrations/050_notifications.sql +49 -0
- package/.framework/migrations/051_message_agent_fields.sql +74 -0
- package/.framework/migrations/052_registration_security.sql +421 -0
- package/.framework/migrations/053_builtin_action_seeds.sql +66 -0
- package/.framework/migrations/054_kb_ingest_lease.sql +157 -0
- package/.framework/migrations/055_type_id_drift_reconciliation.sql +33 -0
- package/.framework/migrations/056_slug_column_reconciliation.sql +38 -0
- package/.framework/migrations/057_pipelines_slug_identity.sql +14 -0
- package/.framework/migrations/058_account_data_field_declarations.sql +53 -0
- package/.framework/migrations/059_registration_placement_fixes.sql +269 -0
- package/.framework/migrations/060_account_person_record_permissions.sql +38 -0
- package/.framework/migrations/061_fk_dedup.sql +32 -0
- package/.framework/public/spine-logo.svg +10 -3
- package/.framework/scripts/app-install-cli.ts +190 -93
- package/.framework/scripts/assemble-frontend.sh +127 -44
- package/.framework/scripts/assemble-functions.sh +128 -30
- package/.framework/scripts/boundary-check.sh +6 -2
- package/.framework/scripts/build-manifest.sh +24 -68
- package/.framework/scripts/check-core-integrity.sh +15 -76
- package/.framework/scripts/checksum-manifest.mts +343 -0
- package/.framework/scripts/cil-migrate-markers.ts +403 -0
- package/.framework/scripts/fix-cil-markers.mjs +176 -0
- package/.framework/scripts/verify-integrity.sh +21 -57
- package/.framework/scripts/verify-manifest.mts +305 -0
- package/.framework/seeds/types/funnel_signal_use.json +74 -21
- package/.framework/seeds/types/spine_instance.json +73 -21
- package/.framework/src/App.tsx +118 -72
- package/.framework/src/apps/admin/index.tsx +855 -58
- package/.framework/src/components/AppWrapper.tsx +43 -45
- package/.framework/src/components/CustomAppLoader.tsx +160 -116
- package/.framework/src/components/admin/AdminListPage.tsx +46 -44
- package/.framework/src/components/admin/AdminSidebar.tsx +57 -47
- package/.framework/src/components/admin/AdminStatsCard.tsx +46 -44
- package/.framework/src/components/admin/PageInstructions.tsx +98 -2
- package/.framework/src/components/admin/SortableTableHeader.tsx +44 -45
- package/.framework/src/components/app-shell/GenericAppShell.tsx +64 -65
- package/.framework/src/components/app-shell/GenericDetailPage.tsx +44 -47
- package/.framework/src/components/app-shell/GenericListPage.tsx +45 -49
- package/.framework/src/components/app-sidebar.tsx +42 -45
- package/.framework/src/components/auth/ProtectedRoute.tsx +48 -41
- package/.framework/src/components/auth/TurnstileWidget.tsx +27 -0
- package/.framework/src/components/kb/KBArticleEditor.tsx +231 -22
- package/.framework/src/components/kb/KBArticleList.tsx +251 -10
- package/.framework/src/components/layout/AppShell.tsx +51 -45
- package/.framework/src/components/layout/Header.tsx +42 -43
- package/.framework/src/components/layout/Layout.tsx +46 -46
- package/.framework/src/components/layout/Sidebar.tsx +196 -96
- package/.framework/src/components/runtime/DataDetailHeader.tsx +55 -30
- package/.framework/src/components/runtime/DataDetailPage.tsx +31 -269
- package/.framework/src/components/runtime/DataFilters.tsx +49 -74
- package/.framework/src/components/runtime/DataHeader.tsx +53 -32
- package/.framework/src/components/runtime/DataListPage.tsx +51 -155
- package/.framework/src/components/runtime/DataStats.tsx +66 -44
- package/.framework/src/components/runtime/DataTable.tsx +49 -149
- package/.framework/src/components/runtime/SchemaDetailForm.tsx +45 -75
- package/.framework/src/components/runtime/index.ts +119 -16
- package/.framework/src/components/search-form.tsx +46 -29
- package/.framework/src/components/shared/AgentView.tsx +65 -48
- package/.framework/src/components/shared/FieldRenderer.tsx +144 -50
- package/.framework/src/components/shared/InviteManager.tsx +207 -97
- package/.framework/src/components/shared/MemberList.tsx +97 -0
- package/.framework/src/components/shared/SchemaFields.tsx +107 -86
- package/.framework/src/components/ui/DataTable.tsx +80 -68
- package/.framework/src/components/ui/Form.tsx +157 -146
- package/.framework/src/components/ui/ItemCard.tsx +74 -67
- package/.framework/src/components/ui/ItemListView.tsx +73 -68
- package/.framework/src/components/ui/LoadingSpinner.tsx +43 -48
- package/.framework/src/components/ui/Modal.tsx +78 -68
- package/.framework/src/components/ui/RichTextEditor.tsx +89 -69
- package/.framework/src/components/ui/accordion.tsx +85 -86
- package/.framework/src/components/ui/alert-dialog.tsx +197 -184
- package/.framework/src/components/ui/alert.tsx +105 -94
- package/.framework/src/components/ui/aspect-ratio.tsx +57 -43
- package/.framework/src/components/ui/avatar.tsx +122 -107
- package/.framework/src/components/ui/badge.tsx +60 -55
- package/.framework/src/components/ui/breadcrumb.tsx +127 -128
- package/.framework/src/components/ui/button-group.tsx +86 -72
- package/.framework/src/components/ui/button.tsx +71 -50
- package/.framework/src/components/ui/calendar.tsx +72 -57
- package/.framework/src/components/ui/card.tsx +136 -129
- package/.framework/src/components/ui/carousel.tsx +226 -107
- package/.framework/src/components/ui/chart.tsx +252 -147
- package/.framework/src/components/ui/checkbox.tsx +43 -44
- package/.framework/src/components/ui/collapsible.tsx +86 -71
- package/.framework/src/components/ui/combobox.tsx +282 -249
- package/.framework/src/components/ui/command.tsx +158 -146
- package/.framework/src/components/ui/context-menu.tsx +239 -240
- package/.framework/src/components/ui/dialog.tsx +174 -157
- package/.framework/src/components/ui/direction.tsx +72 -56
- package/.framework/src/components/ui/drawer.tsx +168 -169
- package/.framework/src/components/ui/dropdown-menu.tsx +254 -223
- package/.framework/src/components/ui/empty.tsx +131 -120
- package/.framework/src/components/ui/field.tsx +205 -173
- package/.framework/src/components/ui/hover-card.tsx +71 -72
- package/.framework/src/components/ui/input-group.tsx +148 -133
- package/.framework/src/components/ui/input-otp.tsx +99 -86
- package/.framework/src/components/ui/input.tsx +43 -41
- package/.framework/src/components/ui/item.tsx +207 -185
- package/.framework/src/components/ui/kbd.tsx +57 -56
- package/.framework/src/components/ui/label.tsx +45 -41
- package/.framework/src/components/ui/menubar.tsx +268 -236
- package/.framework/src/components/ui/native-select.tsx +85 -86
- package/.framework/src/components/ui/navigation-menu.tsx +166 -156
- package/.framework/src/components/ui/pagination.tsx +131 -141
- package/.framework/src/components/ui/popover.tsx +125 -128
- package/.framework/src/components/ui/progress.tsx +47 -44
- package/.framework/src/components/ui/radio-group.tsx +60 -55
- package/.framework/src/components/ui/resizable.tsx +85 -72
- package/.framework/src/components/ui/scroll-area.tsx +57 -58
- package/.framework/src/components/ui/select.tsx +182 -169
- package/.framework/src/components/ui/separator.tsx +42 -43
- package/.framework/src/components/ui/sheet.tsx +170 -159
- package/.framework/src/components/ui/sidebar.tsx +395 -398
- package/.framework/src/components/ui/skeleton.tsx +42 -43
- package/.framework/src/components/ui/slider.tsx +61 -44
- package/.framework/src/components/ui/sonner.tsx +44 -44
- package/.framework/src/components/ui/spinner.tsx +47 -42
- package/.framework/src/components/ui/switch.tsx +56 -42
- package/.framework/src/components/ui/table-primitives.tsx +272 -132
- package/.framework/src/components/ui/table.tsx +140 -142
- package/.framework/src/components/ui/tabs.tsx +110 -93
- package/.framework/src/components/ui/textarea.tsx +43 -44
- package/.framework/src/components/ui/toggle-group.tsx +87 -71
- package/.framework/src/components/ui/toggle.tsx +56 -56
- package/.framework/src/components/ui/tooltip.tsx +99 -85
- package/.framework/src/contexts/AppContext.tsx +166 -114
- package/.framework/src/contexts/AuthContext.tsx +232 -137
- package/.framework/src/hooks/use-mobile.ts +43 -44
- package/.framework/src/hooks/useApi.ts +185 -172
- package/.framework/src/hooks/useAppPath.ts +31 -29
- package/.framework/src/hooks/useApps.ts +77 -42
- package/.framework/src/hooks/useEntityList.ts +66 -29
- package/.framework/src/hooks/useEntityRecord.ts +76 -32
- package/.framework/src/hooks/useForm.ts +62 -30
- package/.framework/src/hooks/useListSchema.ts +60 -43
- package/.framework/src/hooks/useSchemaRecord.ts +115 -95
- package/.framework/src/lib/api.ts +258 -134
- package/.framework/src/lib/registration.ts +181 -0
- package/.framework/src/lib/supabase.ts +118 -81
- package/.framework/src/lib/utils.ts +266 -266
- package/.framework/src/main.tsx +43 -44
- package/.framework/src/pages/DashboardPage.tsx +44 -43
- package/.framework/src/pages/NoAppPage.tsx +50 -0
- package/.framework/src/pages/NotFoundPage.tsx +32 -29
- package/.framework/src/pages/SetupPage.tsx +34 -33
- package/.framework/src/pages/admin/AIAgentDetailPage.tsx +69 -58
- package/.framework/src/pages/admin/AIAgentsPage.tsx +43 -40
- package/.framework/src/pages/admin/APIKeyDetailPage.tsx +63 -55
- package/.framework/src/pages/admin/APIKeysPage.tsx +44 -42
- package/.framework/src/pages/admin/AlertsConfigPage.tsx +117 -94
- package/.framework/src/pages/admin/AppDetailPage.tsx +48 -42
- package/.framework/src/pages/admin/AppsPage.tsx +45 -42
- package/.framework/src/pages/admin/DeliveriesPage.tsx +49 -17
- package/.framework/src/pages/admin/DesignedPage.tsx +31 -30
- package/.framework/src/pages/admin/EmbeddingDetailPage.tsx +58 -0
- package/.framework/src/pages/admin/EmbeddingsPage.tsx +49 -0
- package/.framework/src/pages/admin/ExtendedShadcnTestPage.tsx +31 -29
- package/.framework/src/pages/admin/IncrementalShadcnTestPage.tsx +46 -29
- package/.framework/src/pages/admin/IntegratedDashboard.tsx +32 -29
- package/.framework/src/pages/admin/IntegrationDetailPage.tsx +68 -55
- package/.framework/src/pages/admin/IntegrationsPage.tsx +45 -42
- package/.framework/src/pages/admin/InvitesPage.tsx +60 -44
- package/.framework/src/pages/admin/LogsPage.tsx +87 -137
- package/.framework/src/pages/admin/MinimalShadcnTestPage.tsx +31 -29
- package/.framework/src/pages/admin/ObservabilityDashboard.tsx +150 -89
- package/.framework/src/pages/admin/PipelineDetailPage.tsx +77 -104
- package/.framework/src/pages/admin/PipelineExecutionsPage.tsx +44 -43
- package/.framework/src/pages/admin/PipelinesPage.tsx +59 -145
- package/.framework/src/pages/admin/PromptConfigDetailPage.tsx +53 -42
- package/.framework/src/pages/admin/PromptConfigsPage.tsx +47 -117
- package/.framework/src/pages/admin/ProperlyDesignedPage.tsx +31 -44
- package/.framework/src/pages/admin/RoleDetailPage.tsx +49 -92
- package/.framework/src/pages/admin/RolesPage.tsx +47 -164
- package/.framework/src/pages/admin/SecurityPage.tsx +310 -0
- package/.framework/src/pages/admin/SelectTestPage.tsx +30 -32
- package/.framework/src/pages/admin/ShadcnTestPage.tsx +37 -44
- package/.framework/src/pages/admin/SimpleDashboard.tsx +32 -44
- package/.framework/src/pages/admin/TestRunDetailPage.tsx +97 -44
- package/.framework/src/pages/admin/TestingDashboard.tsx +126 -71
- package/.framework/src/pages/admin/TimerDetailPage.tsx +67 -55
- package/.framework/src/pages/admin/TimersPage.tsx +44 -42
- package/.framework/src/pages/admin/TriggerDetailPage.tsx +47 -42
- package/.framework/src/pages/admin/TriggersPage.tsx +58 -57
- package/.framework/src/pages/admin/TypeDetailPage.tsx +91 -55
- package/.framework/src/pages/admin/TypesPage.tsx +45 -42
- package/.framework/src/pages/admin/cil/CILAgentPage.tsx +258 -128
- package/.framework/src/pages/admin/cil/CILChunkDetailPage.tsx +127 -123
- package/.framework/src/pages/admin/cil/CILDashboardPage.tsx +308 -235
- package/.framework/src/pages/admin/cil/CILFileListPage.tsx +159 -110
- package/.framework/src/pages/admin/cil/CILFileSelectPage.tsx +432 -0
- package/.framework/src/pages/admin/cil/CILGraphPage.tsx +200 -178
- package/.framework/src/pages/admin/cil/CILIngestionPage.tsx +286 -239
- package/.framework/src/pages/admin/cil/CILProjectsPage.tsx +211 -90
- package/.framework/src/pages/admin/cil/CILSearchPage.tsx +156 -143
- package/.framework/src/pages/admin/cil/CILSuggestionsPage.tsx +379 -0
- package/.framework/src/pages/admin/cil/CILVersionsPage.tsx +337 -0
- package/.framework/src/pages/admin/cil/FlexiblePipelinePage.tsx +219 -214
- package/.framework/src/pages/admin/kb/KBAdminPage.tsx +64 -0
- package/.framework/src/pages/auth/AuthConfirmPage.tsx +135 -65
- package/.framework/src/pages/auth/ForgotPasswordPage.tsx +39 -31
- package/.framework/src/pages/auth/LoginPage.tsx +38 -32
- package/.framework/src/pages/auth/PendingApprovalPage.tsx +31 -28
- package/.framework/src/pages/auth/RegisterPage.tsx +429 -155
- package/.framework/src/pages/spine-framework/APIPage.tsx +33 -30
- package/.framework/src/pages/spine-framework/CLIPage.tsx +32 -30
- package/.framework/src/types/auth.ts +101 -93
- package/.framework/src/types/types.ts +283 -262
- package/.framework/templates/project.json +87 -0
- package/.framework/templates/spine.config.neutral.json +7 -0
- package/.framework/tests/api/api-surface.test.ts +381 -0
- package/.framework/tests/fixtures/seed.ts +427 -0
- package/.framework/tests/fixtures/teardown.ts +228 -0
- package/.framework/tests/reporter.ts +351 -0
- package/.framework/tests/setup.ts +135 -0
- package/.framework/tests/ui/ui-sweep.ts +278 -0
- package/.framework/tests/unit/admin-data-logger.test.ts +310 -0
- package/.framework/tests/unit/agent-runner.test.ts +2389 -0
- package/.framework/tests/unit/ai-interactions.test.ts +81 -0
- package/.framework/tests/unit/app-manifest.test.ts +359 -0
- package/.framework/tests/unit/assembly-scripts.test.ts +172 -0
- package/.framework/tests/unit/cil-determinism.test.ts +85 -0
- package/.framework/tests/unit/core-isolation.test.ts +153 -0
- package/.framework/tests/unit/funnel-signals.test.ts +135 -0
- package/.framework/tests/unit/install-app.test.ts +1759 -0
- package/.framework/tests/unit/invites-security.test.ts +572 -0
- package/.framework/tests/unit/kb-ingest-lease.test.ts +287 -0
- package/.framework/tests/unit/kb-search.test.ts +119 -0
- package/.framework/tests/unit/migrate.test.ts +509 -0
- package/.framework/tests/unit/notify.test.ts +136 -0
- package/.framework/tests/unit/permissions.test.ts +269 -0
- package/.framework/tests/unit/pipeline-runner.test.ts +755 -0
- package/.framework/tests/unit/principal-cache.test.ts +138 -0
- package/.framework/tests/unit/retrieval-golden.test.ts +520 -0
- package/.framework/tests/unit/runtime-isolation.test.ts +642 -0
- package/.framework/tests/unit/schema-utils.test.ts +225 -0
- package/.framework/tests/unit/trigger-engine.test.ts +513 -0
- package/.framework/tests/unit/validate-app.test.ts +527 -0
- package/README.md +34 -3
- package/bin/spine-framework.cjs +1 -0
- package/config/tailwind.config.cjs +7 -0
- package/config/tsconfig.functions.json +42 -0
- package/config/tsconfig.json +37 -9
- package/config/vite.config.ts +31 -2
- package/netlify.toml +31 -3
- package/package.json +46 -29
- package/scripts/assemble-frontend.sh +127 -44
- package/scripts/assemble-functions.sh +127 -29
- package/scripts/boundary-check.sh +6 -2
- package/scripts/build-manifest.sh +24 -68
- package/scripts/checksum-manifest.mts +345 -0
- package/scripts/dev-clean.sh +86 -0
- package/scripts/dev-netlify.sh +49 -0
- package/scripts/netlify-dev-wrapper.sh +2 -0
- package/scripts/verify-install.ts +358 -0
- package/scripts/verify-integrity.sh +21 -57
- package/scripts/verify-manifest.mts +305 -0
- package/templates/project/gitignore +45 -0
- package/{config → templates/project}/package-lock.json +22335 -9366
- package/vitest.config.ts +46 -0
- package/.framework/public/spine.config.json +0 -91
- package/config/deno.lock +0 -108
- package/config/tsconfig.node.tsbuildinfo +0 -1
- package/config/tsconfig.tsbuildinfo +0 -1
- package/config/vite.config.d.ts +0 -2
- package/custom/.devin/AGENT.md +0 -357
- package/custom/.devin/skills/install-app/SKILL.md +0 -39
- package/custom/.devin/skills/spine-workbench-discovery/SKILL.md +0 -39
- package/custom/.devin/skills/spine-workbench-idea/SKILL.md +0 -36
- package/custom/.devin/skills/spine-workbench-implement/SKILL.md +0 -46
- package/custom/.devin/skills/spine-workbench-initiative/SKILL.md +0 -28
- package/custom/.devin/skills/spine-workbench-plan/SKILL.md +0 -38
- package/custom/.devin/workflows/app-install.yaml +0 -83
- package/custom/README.md +0 -79
- package/docs/README.md +0 -15
- package/scripts/app-install-cli.ts +0 -286
- package/scripts/check-core-integrity.sh +0 -82
- package/scripts/ingest-chunks.cjs +0 -202
- package/scripts/kb-chunk-parser.cjs +0 -312
- package/scripts/kb-chunk-parser.ts +0 -330
- package/scripts/kb-ingest-docs.ts +0 -203
- package/scripts/load-test-app-install.ts +0 -484
- package/scripts/test-login.js +0 -33
- package/spine.config.json +0 -91
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
// CIL[
|
|
3
|
-
// CIL[DOC-
|
|
4
|
-
// CIL[DOC-
|
|
5
|
-
// CIL[DOC-
|
|
6
|
-
// CIL[DOC-
|
|
7
|
-
// CIL[DOC-
|
|
8
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
1
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:FieldDefinition:interface" type="interface" identity="FieldDefinition" parent="~/.framework/src/types/types.ts"]
|
|
2
|
+
// CIL[DOC-MACRO purpose="Defines the shape and validation rules for a single design schema field."]
|
|
3
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Describes data types, labels, constraints, options, and permissions for a field."]
|
|
4
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
5
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="FieldDefinition interface definition" errors="none" side_effects="none"]
|
|
6
|
+
// CIL[DOC-MICRO logic_summary="Exports FieldDefinition with all possible field-level configuration properties." notable_decisions="Options may be strings or labeled objects; permissions are keyed by role."]
|
|
7
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
9
8
|
// CIL[DOC-STABILITY stability="stable"]
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
14
|
-
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
15
|
-
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
16
12
|
|
|
17
13
|
|
|
18
14
|
|
|
@@ -60,26 +56,27 @@ export interface FieldDefinition {
|
|
|
60
56
|
[role: string]: string[]
|
|
61
57
|
}
|
|
62
58
|
}
|
|
63
|
-
// CIL[
|
|
64
|
-
// CIL[
|
|
65
|
-
// CIL[DOC-
|
|
66
|
-
// CIL[DOC-
|
|
67
|
-
// CIL[DOC-CONTEXT module="src/types/types" layer="frontend-hook" related_files="[\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\".framework/functions/_shared/schema-utils.ts\",\".framework/src/components/ui/dialog.tsx\",\"custom/apps/portal/pages/ContentPage.tsx\",\"\\\"]"]
|
|
68
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
69
|
-
// CIL[DOC-MICRO logic_summary="Represent view-specific field overrides including widget type and interaction flags" notable_decisions="[]"]
|
|
70
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
71
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
72
|
-
// CIL[DOC-VECTOR type="context" content="Layer: frontend-hook. Direct callers: 0. Direct calls: 0. Related files: .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, .framework/functions/_shared/schema-utils.ts, .framework/src/components/ui/dialog.tsx, custom/apps/portal/pages/ContentPage.tsx, \."]
|
|
73
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
74
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
75
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
59
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines the shape and validation rules for a single design schema field.'; No verified external callers; imports: none"]
|
|
60
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
61
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
62
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
76
63
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
77
64
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
65
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:FieldDefinition:interface"]
|
|
78
66
|
|
|
79
67
|
|
|
80
68
|
|
|
81
69
|
|
|
82
70
|
|
|
71
|
+
|
|
72
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:ViewFieldConfig:interface" type="interface" identity="ViewFieldConfig" parent="~/.framework/src/types/types.ts"]
|
|
73
|
+
// CIL[DOC-MACRO purpose="Defines how a field is displayed and behaves in a list or detail view."]
|
|
74
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Specifies display type, sortability, and searchability for view columns."]
|
|
75
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
76
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="ViewFieldConfig interface definition" errors="none" side_effects="none"]
|
|
77
|
+
// CIL[DOC-MICRO logic_summary="Exports ViewFieldConfig used in list/detail view field maps." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
78
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
79
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
83
80
|
export interface ViewFieldConfig {
|
|
84
81
|
display_type: 'input' | 'textarea' | 'rich_text' | 'select' | 'multiselect' |
|
|
85
82
|
'radio' | 'checkbox' | 'switch' | 'date_picker' | 'datetime_picker' |
|
|
@@ -89,24 +86,25 @@ export interface ViewFieldConfig {
|
|
|
89
86
|
sortable?: boolean
|
|
90
87
|
searchable?: boolean
|
|
91
88
|
}
|
|
92
|
-
// CIL[
|
|
93
|
-
// CIL[
|
|
94
|
-
// CIL[DOC-
|
|
95
|
-
// CIL[DOC-
|
|
96
|
-
// CIL[DOC-CONTEXT module="src/types/types" layer="frontend-hook" related_files="[\"custom/apps/cortex/pages/operations/OperationsDashboard.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/schema-utils.ts\",\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/functions/_shared/principal.ts\",\"\\\"]"]
|
|
97
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
98
|
-
// CIL[DOC-MICRO logic_summary="Represent list display settings including fields, sorting, filters, stats, and grouping" notable_decisions="[]"]
|
|
99
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
100
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
101
|
-
// CIL[DOC-VECTOR type="context" content="Layer: frontend-hook. Direct callers: 0. Direct calls: 0. Related files: custom/apps/cortex/pages/operations/OperationsDashboard.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/schema-utils.ts, custom/apps/portal/pages/ContentPage.tsx, .framework/functions/_shared/principal.ts, \."]
|
|
102
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
103
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
104
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
89
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines how a field is displayed and behaves in a list or detail view.'; No verified external callers; imports: none"]
|
|
90
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
91
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
92
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
105
93
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
106
94
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
95
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:ViewFieldConfig:interface"]
|
|
96
|
+
|
|
107
97
|
|
|
108
98
|
|
|
109
99
|
|
|
100
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:ListView:interface" type="interface" identity="ListView" parent="~/.framework/src/types/types.ts"]
|
|
101
|
+
// CIL[DOC-MACRO purpose="Defines a list view configuration for a type."]
|
|
102
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Describes table/card/board list fields, filters, stats, sorting, and grouping."]
|
|
103
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
104
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="ListView interface definition" errors="none" side_effects="none"]
|
|
105
|
+
// CIL[DOC-MICRO logic_summary="Exports ListView with fields as a record of ViewFieldConfig." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
106
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
107
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
110
108
|
export interface ListView {
|
|
111
109
|
type: 'list'
|
|
112
110
|
display: 'table' | 'card' | 'board'
|
|
@@ -126,91 +124,95 @@ export interface ListView {
|
|
|
126
124
|
}>
|
|
127
125
|
group_by?: string
|
|
128
126
|
}
|
|
129
|
-
// CIL[
|
|
130
|
-
// CIL[
|
|
131
|
-
// CIL[DOC-
|
|
132
|
-
// CIL[DOC-
|
|
133
|
-
// CIL[DOC-CONTEXT module="src/types/types" layer="frontend-hook" related_files="[\".framework/src/pages/admin/IntegrationsPage.tsx\",\".framework/functions/_shared/schema-utils.ts\",\".framework/functions/_shared/principal.ts\",\".framework/src/components/ui/table-primitives.tsx\",\".framework/src/pages/admin/TypeDetailPage.tsx\",\"\\\"]"]
|
|
134
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
135
|
-
// CIL[DOC-MICRO logic_summary="Represent logical groupings of fields with optional titles for detail forms" notable_decisions="[]"]
|
|
136
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
137
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
138
|
-
// CIL[DOC-VECTOR type="context" content="Layer: frontend-hook. Direct callers: 0. Direct calls: 0. Related files: .framework/src/pages/admin/IntegrationsPage.tsx, .framework/functions/_shared/schema-utils.ts, .framework/functions/_shared/principal.ts, .framework/src/components/ui/table-primitives.tsx, .framework/src/pages/admin/TypeDetailPage.tsx, \."]
|
|
139
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
140
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
141
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
127
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a list view configuration for a type.'; No verified external callers; imports: none"]
|
|
128
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
129
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
130
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
142
131
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
143
132
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
133
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:ListView:interface"]
|
|
144
134
|
|
|
145
135
|
|
|
146
136
|
|
|
137
|
+
|
|
138
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:DetailViewSection:interface" type="interface" identity="DetailViewSection" parent="~/.framework/src/types/types.ts"]
|
|
139
|
+
// CIL[DOC-MACRO purpose="Defines a section within a detail view."]
|
|
140
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Groups fields into titled sections for detail UIs."]
|
|
141
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
142
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="DetailViewSection interface definition" errors="none" side_effects="none"]
|
|
143
|
+
// CIL[DOC-MICRO logic_summary="Exports DetailViewSection as a title and field map." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
144
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
145
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
147
146
|
export interface DetailViewSection {
|
|
148
147
|
title: string
|
|
149
148
|
fields: Record<string, ViewFieldConfig>
|
|
150
149
|
|
|
151
150
|
}
|
|
152
|
-
// CIL[
|
|
153
|
-
// CIL[
|
|
154
|
-
// CIL[DOC-
|
|
155
|
-
// CIL[DOC-
|
|
156
|
-
// CIL[DOC-CONTEXT module="src/types/types" layer="frontend-hook" related_files="[\".framework/src/pages/admin/TypeDetailPage.tsx\",\".framework/functions/_shared/principal.ts\",\".framework/functions/_shared/schema-utils.ts\",\"custom/apps/portal/pages/ContentPage.tsx\",\".framework/src/pages/admin/IntegrationsPage.tsx\",\"\\\"]"]
|
|
157
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
158
|
-
// CIL[DOC-MICRO logic_summary="Represent detail form layout with multiple field sections" notable_decisions="[]"]
|
|
159
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
160
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
161
|
-
// CIL[DOC-VECTOR type="context" content="Layer: frontend-hook. Direct callers: 0. Direct calls: 0. Related files: .framework/src/pages/admin/TypeDetailPage.tsx, .framework/functions/_shared/principal.ts, .framework/functions/_shared/schema-utils.ts, custom/apps/portal/pages/ContentPage.tsx, .framework/src/pages/admin/IntegrationsPage.tsx, \."]
|
|
162
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
163
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
164
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
151
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a section within a detail view.'; No verified external callers; imports: none"]
|
|
152
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
153
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
154
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
165
155
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
166
156
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
157
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:DetailViewSection:interface"]
|
|
158
|
+
|
|
167
159
|
|
|
168
160
|
|
|
169
161
|
|
|
162
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:DetailView:interface" type="interface" identity="DetailView" parent="~/.framework/src/types/types.ts"]
|
|
163
|
+
// CIL[DOC-MACRO purpose="Defines a detail view configuration for a type."]
|
|
164
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Aggregates DetailViewSection entries into a single detail page layout."]
|
|
165
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
166
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="DetailView interface definition" errors="none" side_effects="none"]
|
|
167
|
+
// CIL[DOC-MICRO logic_summary="Exports DetailView with type 'detail' and an ordered sections array." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
168
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
169
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
170
170
|
export interface DetailView {
|
|
171
171
|
type: 'detail'
|
|
172
172
|
label: string
|
|
173
173
|
sections: DetailViewSection[]
|
|
174
174
|
}
|
|
175
|
-
// CIL[
|
|
176
|
-
// CIL[
|
|
177
|
-
// CIL[DOC-
|
|
178
|
-
// CIL[DOC-
|
|
179
|
-
// CIL[DOC-CONTEXT module="View" layer="unknown" related_files="[]"]
|
|
180
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
181
|
-
// CIL[DOC-MICRO logic_summary="Implements View" notable_decisions="[]"]
|
|
182
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
183
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
184
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
185
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
186
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
187
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
175
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a detail view configuration for a type.'; No verified external callers; imports: none"]
|
|
176
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
177
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
178
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
188
179
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
189
180
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
181
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:DetailView:interface"]
|
|
190
182
|
|
|
191
183
|
|
|
192
184
|
|
|
193
|
-
|
|
194
|
-
// CIL[
|
|
195
|
-
// CIL[
|
|
196
|
-
// CIL[DOC-
|
|
197
|
-
// CIL[DOC-
|
|
198
|
-
// CIL[DOC-
|
|
199
|
-
// CIL[DOC-
|
|
200
|
-
// CIL[DOC-
|
|
201
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
185
|
+
|
|
186
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:View:type" type="type" identity="View" parent="~/.framework/src/types/types.ts"]
|
|
187
|
+
// CIL[DOC-MACRO purpose="Union of supported view kinds for a design schema."]
|
|
188
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Distinguishes list and detail views for type rendering."]
|
|
189
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
190
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="View type definition" errors="none" side_effects="none"]
|
|
191
|
+
// CIL[DOC-MICRO logic_summary="Exports View as ListView | DetailView." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
192
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
202
193
|
// CIL[DOC-STABILITY stability="stable"]
|
|
203
|
-
|
|
204
|
-
// CIL[DOC-VECTOR type="
|
|
205
|
-
// CIL[DOC-VECTOR type="
|
|
206
|
-
// CIL[DOC-VECTOR type="
|
|
194
|
+
export type View = ListView | DetailView
|
|
195
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Union of supported view kinds for a design schema.'; No verified external callers; imports: none"]
|
|
196
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
197
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
198
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
207
199
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
208
200
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
201
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:View:type"]
|
|
202
|
+
|
|
209
203
|
|
|
210
204
|
|
|
211
205
|
|
|
212
206
|
|
|
213
207
|
|
|
208
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:FunctionalityBindings:interface" type="interface" identity="FunctionalityBindings" parent="~/.framework/src/types/types.ts"]
|
|
209
|
+
// CIL[DOC-MACRO purpose="Defines automation, AI, embedding, integration, and constraint bindings."]
|
|
210
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Declares pipeline, agent, embedding, integration, and constraint arrays."]
|
|
211
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
212
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="FunctionalityBindings interface definition" errors="none" side_effects="none"]
|
|
213
|
+
// CIL[DOC-MICRO logic_summary="Exports FunctionalityBindings for optional schema functionality." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
214
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
215
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
214
216
|
export interface FunctionalityBindings {
|
|
215
217
|
pipelines?: Array<{
|
|
216
218
|
pipeline_id: string
|
|
@@ -251,26 +253,27 @@ export interface FunctionalityBindings {
|
|
|
251
253
|
after?: 'create' | 'update'
|
|
252
254
|
}>
|
|
253
255
|
}
|
|
254
|
-
// CIL[
|
|
255
|
-
// CIL[
|
|
256
|
-
// CIL[DOC-
|
|
257
|
-
// CIL[DOC-
|
|
258
|
-
// CIL[DOC-CONTEXT module="DesignSchema" layer="unknown" related_files="[]"]
|
|
259
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
260
|
-
// CIL[DOC-MICRO logic_summary="Implements DesignSchema" notable_decisions="[]"]
|
|
261
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
262
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
263
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
264
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
265
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
266
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
256
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines automation, AI, embedding, integration, and constraint bindings.'; No verified external callers; imports: none"]
|
|
257
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
258
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
259
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
267
260
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
268
261
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
262
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:FunctionalityBindings:interface"]
|
|
269
263
|
|
|
270
264
|
|
|
271
265
|
|
|
272
266
|
|
|
273
267
|
|
|
268
|
+
|
|
269
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:DesignSchema:interface" type="interface" identity="DesignSchema" parent="~/.framework/src/types/types.ts"]
|
|
270
|
+
// CIL[DOC-MACRO purpose="Defines the complete design schema for an item type."]
|
|
271
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Holds record permissions, field definitions, views, and functionality bindings."]
|
|
272
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
273
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="DesignSchema interface definition" errors="none" side_effects="none"]
|
|
274
|
+
// CIL[DOC-MICRO logic_summary="Exports DesignSchema used by item type definitions." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
275
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
276
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
274
277
|
export interface DesignSchema {
|
|
275
278
|
record_permissions: {
|
|
276
279
|
[role: string]: string[]
|
|
@@ -279,26 +282,27 @@ export interface DesignSchema {
|
|
|
279
282
|
views: Record<string, View>
|
|
280
283
|
functionality?: FunctionalityBindings
|
|
281
284
|
}
|
|
282
|
-
// CIL[
|
|
283
|
-
// CIL[
|
|
284
|
-
// CIL[DOC-
|
|
285
|
-
// CIL[DOC-
|
|
286
|
-
// CIL[DOC-CONTEXT module="ItemType" layer="unknown" related_files="[]"]
|
|
287
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
288
|
-
// CIL[DOC-MICRO logic_summary="Implements ItemType" notable_decisions="[]"]
|
|
289
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
290
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
291
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
292
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
293
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
294
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
285
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines the complete design schema for an item type.'; No verified external callers; imports: none"]
|
|
286
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
287
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
288
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
295
289
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
296
290
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
291
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:DesignSchema:interface"]
|
|
292
|
+
|
|
297
293
|
|
|
298
294
|
|
|
299
295
|
|
|
300
296
|
|
|
301
297
|
|
|
298
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:ItemType:interface" type="interface" identity="ItemType" parent="~/.framework/src/types/types.ts"]
|
|
299
|
+
// CIL[DOC-MACRO purpose="Defines the runtime type record including schema and ownership metadata."]
|
|
300
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Declares item type identity, schemas, ownership, and lifecycle fields."]
|
|
301
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
302
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="ItemType interface definition" errors="none" side_effects="none"]
|
|
303
|
+
// CIL[DOC-MICRO logic_summary="Exports ItemType as the core public.types table shape." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
304
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
305
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
302
306
|
export interface ItemType {
|
|
303
307
|
id: string
|
|
304
308
|
name: string
|
|
@@ -322,24 +326,25 @@ export interface ItemType {
|
|
|
322
326
|
created_at: string
|
|
323
327
|
updated_at: string
|
|
324
328
|
}
|
|
325
|
-
// CIL[
|
|
326
|
-
// CIL[
|
|
327
|
-
// CIL[DOC-
|
|
328
|
-
// CIL[DOC-
|
|
329
|
-
// CIL[DOC-CONTEXT module="Item" layer="unknown" related_files="[]"]
|
|
330
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
331
|
-
// CIL[DOC-MICRO logic_summary="Implements Item" notable_decisions="[]"]
|
|
332
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
333
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
334
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
335
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
336
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
337
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
329
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines the runtime type record including schema and ownership metadata.'; No verified external callers; imports: none"]
|
|
330
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
331
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
332
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
338
333
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
339
334
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
335
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:ItemType:interface"]
|
|
340
336
|
|
|
341
337
|
|
|
342
338
|
|
|
339
|
+
|
|
340
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:Item:interface" type="interface" identity="Item" parent="~/.framework/src/types/types.ts"]
|
|
341
|
+
// CIL[DOC-MACRO purpose="Defines a runtime item record belonging to an item type."]
|
|
342
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Holds item data, status, ownership, and audit timestamps."]
|
|
343
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
344
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="Item interface definition" errors="none" side_effects="none"]
|
|
345
|
+
// CIL[DOC-MICRO logic_summary="Exports Item used by admin-data and custom app runtimes." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
346
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
347
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
343
348
|
export interface Item {
|
|
344
349
|
id: string
|
|
345
350
|
item_type_id: string
|
|
@@ -357,48 +362,50 @@ export interface Item {
|
|
|
357
362
|
design_schema?: Record<string, any>
|
|
358
363
|
validation_schema?: Record<string, any>
|
|
359
364
|
}
|
|
360
|
-
// CIL[
|
|
361
|
-
// CIL[
|
|
362
|
-
// CIL[DOC-
|
|
363
|
-
// CIL[DOC-
|
|
364
|
-
// CIL[DOC-CONTEXT module="ValidationError" layer="unknown" related_files="[]"]
|
|
365
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
366
|
-
// CIL[DOC-MICRO logic_summary="Implements ValidationError" notable_decisions="[]"]
|
|
367
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
368
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
369
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
370
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
371
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
372
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
365
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a runtime item record belonging to an item type.'; No verified external callers; imports: none"]
|
|
366
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
367
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
368
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
373
369
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
374
370
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
371
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:Item:interface"]
|
|
372
|
+
|
|
375
373
|
|
|
376
374
|
|
|
377
375
|
|
|
378
376
|
|
|
379
377
|
|
|
378
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:ValidationError:interface" type="interface" identity="ValidationError" parent="~/.framework/src/types/types.ts"]
|
|
379
|
+
// CIL[DOC-MACRO purpose="Defines a field validation error."]
|
|
380
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Provides field name and human-readable error message."]
|
|
381
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
382
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="ValidationError interface definition" errors="none" side_effects="none"]
|
|
383
|
+
// CIL[DOC-MICRO logic_summary="Exports ValidationError for form and API validation." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
384
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
385
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
380
386
|
export interface ValidationError {
|
|
381
387
|
field: string
|
|
382
388
|
message: string
|
|
383
389
|
}
|
|
384
|
-
// CIL[
|
|
385
|
-
// CIL[
|
|
386
|
-
// CIL[DOC-
|
|
387
|
-
// CIL[DOC-
|
|
388
|
-
// CIL[DOC-CONTEXT module="FormState" layer="unknown" related_files="[]"]
|
|
389
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
390
|
-
// CIL[DOC-MICRO logic_summary="Implements FormState" notable_decisions="[]"]
|
|
391
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
392
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
393
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
394
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
395
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
396
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
390
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a field validation error.'; No verified external callers; imports: none"]
|
|
391
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
392
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
393
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
397
394
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
398
395
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
396
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:ValidationError:interface"]
|
|
399
397
|
|
|
400
398
|
|
|
401
399
|
|
|
400
|
+
|
|
401
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:FormState:interface" type="interface" identity="FormState" parent="~/.framework/src/types/types.ts"]
|
|
402
|
+
// CIL[DOC-MACRO purpose="Defines reactive form state for data entry."]
|
|
403
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Tracks data, errors, touched fields, and submission/valid state."]
|
|
404
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
405
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="FormState interface definition" errors="none" side_effects="none"]
|
|
406
|
+
// CIL[DOC-MICRO logic_summary="Exports FormState for UI form components." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
407
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
408
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
402
409
|
export interface FormState {
|
|
403
410
|
data: Record<string, any>
|
|
404
411
|
errors: Record<string, string>
|
|
@@ -406,115 +413,120 @@ export interface FormState {
|
|
|
406
413
|
isSubmitting: boolean
|
|
407
414
|
isValid: boolean
|
|
408
415
|
}
|
|
409
|
-
// CIL[
|
|
410
|
-
// CIL[
|
|
411
|
-
// CIL[DOC-
|
|
412
|
-
// CIL[DOC-
|
|
413
|
-
// CIL[DOC-CONTEXT module="PaginationParams" layer="unknown" related_files="[]"]
|
|
414
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
415
|
-
// CIL[DOC-MICRO logic_summary="Implements PaginationParams" notable_decisions="[]"]
|
|
416
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
417
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
418
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
419
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
420
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
421
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
416
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines reactive form state for data entry.'; No verified external callers; imports: none"]
|
|
417
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
418
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
419
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
422
420
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
423
421
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
422
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:FormState:interface"]
|
|
423
|
+
|
|
424
424
|
|
|
425
425
|
|
|
426
426
|
|
|
427
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:PaginationParams:interface" type="interface" identity="PaginationParams" parent="~/.framework/src/types/types.ts"]
|
|
428
|
+
// CIL[DOC-MACRO purpose="Defines pagination parameters for list queries."]
|
|
429
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Supports limit, offset, and page query options."]
|
|
430
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
431
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="PaginationParams interface definition" errors="none" side_effects="none"]
|
|
432
|
+
// CIL[DOC-MICRO logic_summary="Exports PaginationParams for list request input." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
433
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
434
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
427
435
|
export interface PaginationParams {
|
|
428
436
|
limit?: number
|
|
429
437
|
offset?: number
|
|
430
438
|
page?: number
|
|
431
439
|
}
|
|
432
|
-
// CIL[
|
|
433
|
-
// CIL[
|
|
434
|
-
// CIL[DOC-
|
|
435
|
-
// CIL[DOC-
|
|
436
|
-
// CIL[DOC-CONTEXT module="SortParams" layer="unknown" related_files="[]"]
|
|
437
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
438
|
-
// CIL[DOC-MICRO logic_summary="Implements SortParams" notable_decisions="[]"]
|
|
439
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
440
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
441
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
442
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
443
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
444
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
440
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines pagination parameters for list queries.'; No verified external callers; imports: none"]
|
|
441
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
442
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
443
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
445
444
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
446
445
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
446
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:PaginationParams:interface"]
|
|
447
447
|
|
|
448
448
|
|
|
449
449
|
|
|
450
|
+
|
|
451
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:SortParams:interface" type="interface" identity="SortParams" parent="~/.framework/src/types/types.ts"]
|
|
452
|
+
// CIL[DOC-MACRO purpose="Defines a single sort criterion."]
|
|
453
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Specifies field name and asc/desc direction."]
|
|
454
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
455
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="SortParams interface definition" errors="none" side_effects="none"]
|
|
456
|
+
// CIL[DOC-MICRO logic_summary="Exports SortParams for list sorting." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
457
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
458
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
450
459
|
export interface SortParams {
|
|
451
460
|
field: string
|
|
452
461
|
direction: 'asc' | 'desc'
|
|
453
462
|
}
|
|
454
|
-
// CIL[
|
|
455
|
-
// CIL[
|
|
456
|
-
// CIL[DOC-
|
|
457
|
-
// CIL[DOC-
|
|
458
|
-
// CIL[DOC-CONTEXT module="FilterParams" layer="unknown" related_files="[]"]
|
|
459
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
460
|
-
// CIL[DOC-MICRO logic_summary="Implements FilterParams" notable_decisions="[]"]
|
|
461
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
462
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
463
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
464
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
465
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
466
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
463
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a single sort criterion.'; No verified external callers; imports: none"]
|
|
464
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
465
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
466
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
467
467
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
468
468
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
469
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:SortParams:interface"]
|
|
470
|
+
|
|
469
471
|
|
|
470
472
|
|
|
471
473
|
|
|
474
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:FilterParams:interface" type="interface" identity="FilterParams" parent="~/.framework/src/types/types.ts"]
|
|
475
|
+
// CIL[DOC-MACRO purpose="Defines an open-ended filter bag for list queries."]
|
|
476
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Allows arbitrary key/value query filters."]
|
|
477
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
478
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="FilterParams interface definition" errors="none" side_effects="none"]
|
|
479
|
+
// CIL[DOC-MICRO logic_summary="Exports FilterParams as Record<string, any>." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
480
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
481
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
472
482
|
export interface FilterParams {
|
|
473
483
|
[key: string]: any
|
|
474
484
|
}
|
|
475
|
-
// CIL[
|
|
476
|
-
// CIL[
|
|
477
|
-
// CIL[DOC-
|
|
478
|
-
// CIL[DOC-
|
|
479
|
-
// CIL[DOC-CONTEXT module="SearchParams" layer="unknown" related_files="[]"]
|
|
480
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
481
|
-
// CIL[DOC-MICRO logic_summary="Implements SearchParams" notable_decisions="[]"]
|
|
482
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
483
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
484
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
485
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
486
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
487
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
485
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines an open-ended filter bag for list queries.'; No verified external callers; imports: none"]
|
|
486
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
487
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
488
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
488
489
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
489
490
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
491
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:FilterParams:interface"]
|
|
490
492
|
|
|
491
493
|
|
|
492
494
|
|
|
495
|
+
|
|
496
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:SearchParams:interface" type="interface" identity="SearchParams" parent="~/.framework/src/types/types.ts"]
|
|
497
|
+
// CIL[DOC-MACRO purpose="Defines combined search, sort, filter, and pagination input."]
|
|
498
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Extends PaginationParams with search, sort, and filters."]
|
|
499
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
500
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="SearchParams interface definition" errors="none" side_effects="none"]
|
|
501
|
+
// CIL[DOC-MICRO logic_summary="Exports SearchParams for list/search endpoints." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
502
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
503
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
493
504
|
export interface SearchParams extends PaginationParams {
|
|
494
505
|
search?: string
|
|
495
506
|
sort?: SortParams
|
|
496
507
|
filters?: FilterParams
|
|
497
508
|
}
|
|
498
|
-
// CIL[
|
|
499
|
-
// CIL[
|
|
500
|
-
// CIL[DOC-
|
|
501
|
-
// CIL[DOC-
|
|
502
|
-
// CIL[DOC-CONTEXT module="EntityColumn" layer="unknown" related_files="[]"]
|
|
503
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
504
|
-
// CIL[DOC-MICRO logic_summary="Implements EntityColumn" notable_decisions="[]"]
|
|
505
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
506
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
507
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
508
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
509
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
510
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
509
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines combined search, sort, filter, and pagination input.'; No verified external callers; imports: none"]
|
|
510
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
511
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
512
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
511
513
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
512
514
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
515
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:SearchParams:interface"]
|
|
516
|
+
|
|
513
517
|
|
|
514
518
|
|
|
515
519
|
|
|
516
520
|
|
|
517
521
|
|
|
522
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:EntityColumn:interface" type="interface" identity="EntityColumn" parent="~/.framework/src/types/types.ts"]
|
|
523
|
+
// CIL[DOC-MACRO purpose="Defines a column in a generic entity list table."]
|
|
524
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Describes key, label, sortability, type, display type, and badge colors."]
|
|
525
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
526
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="EntityColumn interface definition" errors="none" side_effects="none"]
|
|
527
|
+
// CIL[DOC-MICRO logic_summary="Exports EntityColumn for GenericListPage." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
528
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
529
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
518
530
|
export interface EntityColumn {
|
|
519
531
|
key: string
|
|
520
532
|
label: string
|
|
@@ -524,24 +536,25 @@ export interface EntityColumn {
|
|
|
524
536
|
badgeColors?: Record<string, string>
|
|
525
537
|
maxLength?: number
|
|
526
538
|
}
|
|
527
|
-
// CIL[
|
|
528
|
-
// CIL[
|
|
529
|
-
// CIL[DOC-
|
|
530
|
-
// CIL[DOC-
|
|
531
|
-
// CIL[DOC-CONTEXT module="EntityStat" layer="unknown" related_files="[]"]
|
|
532
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
533
|
-
// CIL[DOC-MICRO logic_summary="Implements EntityStat" notable_decisions="[]"]
|
|
534
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
535
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
536
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
537
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
538
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
539
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
539
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a column in a generic entity list table.'; No verified external callers; imports: none"]
|
|
540
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
541
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
542
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
540
543
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
541
544
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
545
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:EntityColumn:interface"]
|
|
542
546
|
|
|
543
547
|
|
|
544
548
|
|
|
549
|
+
|
|
550
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:EntityStat:interface" type="interface" identity="EntityStat" parent="~/.framework/src/types/types.ts"]
|
|
551
|
+
// CIL[DOC-MACRO purpose="Defines a stat card shown on a generic entity list."]
|
|
552
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Declares count/filter_count stat metadata and optional filter."]
|
|
553
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
554
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="EntityStat interface definition" errors="none" side_effects="none"]
|
|
555
|
+
// CIL[DOC-MICRO logic_summary="Exports EntityStat for GenericListPage." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
556
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
557
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
545
558
|
export interface EntityStat {
|
|
546
559
|
title: string
|
|
547
560
|
type: 'count' | 'filter_count'
|
|
@@ -549,50 +562,52 @@ export interface EntityStat {
|
|
|
549
562
|
color: string
|
|
550
563
|
filter?: Record<string, any>
|
|
551
564
|
}
|
|
552
|
-
// CIL[
|
|
553
|
-
// CIL[
|
|
554
|
-
// CIL[DOC-
|
|
555
|
-
// CIL[DOC-
|
|
556
|
-
// CIL[DOC-CONTEXT module="EntityFilter" layer="unknown" related_files="[]"]
|
|
557
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
558
|
-
// CIL[DOC-MICRO logic_summary="Implements EntityFilter" notable_decisions="[]"]
|
|
559
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
560
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
561
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
562
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
563
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
564
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
565
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a stat card shown on a generic entity list.'; No verified external callers; imports: none"]
|
|
566
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
567
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
568
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
565
569
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
566
570
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
571
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:EntityStat:interface"]
|
|
572
|
+
|
|
567
573
|
|
|
568
574
|
|
|
569
575
|
|
|
576
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:EntityFilter:interface" type="interface" identity="EntityFilter" parent="~/.framework/src/types/types.ts"]
|
|
577
|
+
// CIL[DOC-MACRO purpose="Defines a filter control in a generic entity list."]
|
|
578
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Specifies key, label, filter type, and enum options."]
|
|
579
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
580
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="EntityFilter interface definition" errors="none" side_effects="none"]
|
|
581
|
+
// CIL[DOC-MICRO logic_summary="Exports EntityFilter for GenericListPage." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
582
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
583
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
570
584
|
export interface EntityFilter {
|
|
571
585
|
key: string
|
|
572
586
|
label: string
|
|
573
587
|
type: 'search' | 'enum' | 'boolean'
|
|
574
588
|
options?: string[]
|
|
575
589
|
}
|
|
576
|
-
// CIL[
|
|
577
|
-
// CIL[
|
|
578
|
-
// CIL[DOC-
|
|
579
|
-
// CIL[DOC-
|
|
580
|
-
// CIL[DOC-CONTEXT module="ItemProgress" layer="unknown" related_files="[]"]
|
|
581
|
-
// CIL[DOC-CONTRACT inputs="none" outputs="none" errors="none" side_effects="none"]
|
|
582
|
-
// CIL[DOC-MICRO logic_summary="Implements ItemProgress" notable_decisions="[]"]
|
|
583
|
-
// CIL[DOC-CONFIDENCE pass="second" score="0.95" flags="none"]
|
|
584
|
-
// CIL[DOC-STABILITY stability="stable"]
|
|
585
|
-
// CIL[DOC-VECTOR type="context" content="Layer: unknown. Direct callers: 0. Direct calls: 0. Related files: none."]
|
|
586
|
-
// CIL[DOC-VECTOR type="blast_radius" content="Direct callers: 0. Total affected: 0."]
|
|
587
|
-
// CIL[DOC-VECTOR type="configuration" content="No configuration dependencies."]
|
|
588
|
-
// CIL[DOC-VECTOR type="constraint" content="No test paths identified."]
|
|
590
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a filter control in a generic entity list.'; No verified external callers; imports: none"]
|
|
591
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
592
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
593
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
589
594
|
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
590
595
|
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
596
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:EntityFilter:interface"]
|
|
591
597
|
|
|
592
598
|
|
|
593
599
|
|
|
594
600
|
|
|
595
601
|
|
|
602
|
+
|
|
603
|
+
// CIL[BEGIN stable_id="~/.framework/src/types/types.ts:ItemProgress:interface" type="interface" identity="ItemProgress" parent="~/.framework/src/types/types.ts"]
|
|
604
|
+
// CIL[DOC-MACRO purpose="Defines a progress-tracking record for an item."]
|
|
605
|
+
// CIL[DOC-RESPONSIBILITY responsibility="Holds status, score, attempts, time spent, and related metadata."]
|
|
606
|
+
// CIL[DOC-CONTEXT module=".framework/src/types" layer="types" related_files=".framework/src/types/types.ts"]
|
|
607
|
+
// CIL[DOC-CONTRACT inputs="none" outputs="ItemProgress interface definition" errors="none" side_effects="none"]
|
|
608
|
+
// CIL[DOC-MICRO logic_summary="Exports ItemProgress used by learning and task tracking features." notable_decisions="Fields marked optional with '?'; validation and permissions are nested sub-types."]
|
|
609
|
+
// CIL[DOC-CONFIDENCE pass="second" score="0.90" flags="none"]
|
|
610
|
+
// CIL[DOC-STABILITY stability="stable"]
|
|
596
611
|
export interface ItemProgress {
|
|
597
612
|
id: string
|
|
598
613
|
type_id: string
|
|
@@ -620,4 +635,10 @@ export interface ItemProgress {
|
|
|
620
635
|
created_at: string
|
|
621
636
|
updated_at: string
|
|
622
637
|
}
|
|
623
|
-
// CIL[
|
|
638
|
+
// CIL[DOC-VECTOR type="context" content="purpose='Defines a progress-tracking record for an item.'; No verified external callers; imports: none"]
|
|
639
|
+
// CIL[DOC-VECTOR type="blast_radius" content="No direct caller data from CIL graph; local impact only"]
|
|
640
|
+
// CIL[DOC-VECTOR type="configuration" content="No environment or build configuration dependencies identified"]
|
|
641
|
+
// CIL[DOC-VECTOR type="constraint" content="Standard runtime; no special invariants documented"]
|
|
642
|
+
// CIL[DOC-VECTOR type="implementation_pattern" content="" status="pending_human_input"]
|
|
643
|
+
// CIL[DOC-VECTOR type="user_journey" content="" status="pending_human_input"]
|
|
644
|
+
// CIL[END stable_id="~/.framework/src/types/types.ts:ItemProgress:interface"]
|