ciris-agent 1.7.7__py3-none-any.whl
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.
- ciris_adapters/README.md +113 -0
- ciris_adapters/__init__.py +30 -0
- ciris_adapters/ciris_covenant_metrics/README.md +144 -0
- ciris_adapters/ciris_covenant_metrics/__init__.py +36 -0
- ciris_adapters/ciris_covenant_metrics/adapter.py +249 -0
- ciris_adapters/ciris_covenant_metrics/manifest.json +152 -0
- ciris_adapters/ciris_covenant_metrics/services.py +403 -0
- ciris_adapters/ciris_hosted_tools/__init__.py +24 -0
- ciris_adapters/ciris_hosted_tools/adapter.py +169 -0
- ciris_adapters/ciris_hosted_tools/manifest.json +94 -0
- ciris_adapters/ciris_hosted_tools/services.py +744 -0
- ciris_adapters/external_data_sql/README.md +559 -0
- ciris_adapters/external_data_sql/__init__.py +43 -0
- ciris_adapters/external_data_sql/adapter.py +144 -0
- ciris_adapters/external_data_sql/configurable.py +315 -0
- ciris_adapters/external_data_sql/dialects/__init__.py +37 -0
- ciris_adapters/external_data_sql/dialects/base.py +133 -0
- ciris_adapters/external_data_sql/dialects/mysql.py +63 -0
- ciris_adapters/external_data_sql/dialects/postgresql.py +59 -0
- ciris_adapters/external_data_sql/dialects/sqlite.py +62 -0
- ciris_adapters/external_data_sql/example_config.json +88 -0
- ciris_adapters/external_data_sql/example_privacy_schema.yaml +127 -0
- ciris_adapters/external_data_sql/manifest.json +195 -0
- ciris_adapters/external_data_sql/privacy_schema_loader.py +189 -0
- ciris_adapters/external_data_sql/protocol.py +101 -0
- ciris_adapters/external_data_sql/schemas.py +146 -0
- ciris_adapters/external_data_sql/service.py +1547 -0
- ciris_adapters/external_data_sql/service_old.py +492 -0
- ciris_adapters/home_assistant/__init__.py +63 -0
- ciris_adapters/home_assistant/adapter.py +201 -0
- ciris_adapters/home_assistant/communication_service.py +347 -0
- ciris_adapters/home_assistant/configurable.py +667 -0
- ciris_adapters/home_assistant/manifest.json +203 -0
- ciris_adapters/home_assistant/schemas.py +129 -0
- ciris_adapters/home_assistant/service.py +751 -0
- ciris_adapters/home_assistant/tool_service.py +441 -0
- ciris_adapters/mcp_client/__init__.py +82 -0
- ciris_adapters/mcp_client/adapter.py +847 -0
- ciris_adapters/mcp_client/config.py +280 -0
- ciris_adapters/mcp_client/configurable.py +422 -0
- ciris_adapters/mcp_client/manifest.json +185 -0
- ciris_adapters/mcp_client/mcp_communication_service.py +393 -0
- ciris_adapters/mcp_client/mcp_tool_service.py +463 -0
- ciris_adapters/mcp_client/mcp_wise_service.py +394 -0
- ciris_adapters/mcp_client/schemas.py +149 -0
- ciris_adapters/mcp_client/security.py +592 -0
- ciris_adapters/mcp_common/__init__.py +44 -0
- ciris_adapters/mcp_common/manifest.json +25 -0
- ciris_adapters/mcp_common/protocol.py +315 -0
- ciris_adapters/mcp_common/schemas.py +225 -0
- ciris_adapters/mcp_server/__init__.py +47 -0
- ciris_adapters/mcp_server/adapter.py +581 -0
- ciris_adapters/mcp_server/config.py +260 -0
- ciris_adapters/mcp_server/configurable.py +393 -0
- ciris_adapters/mcp_server/handlers.py +663 -0
- ciris_adapters/mcp_server/manifest.json +211 -0
- ciris_adapters/mcp_server/security.py +500 -0
- ciris_adapters/mock_llm/README.md +117 -0
- ciris_adapters/mock_llm/__init__.py +21 -0
- ciris_adapters/mock_llm/adapter.py +131 -0
- ciris_adapters/mock_llm/configurable.py +237 -0
- ciris_adapters/mock_llm/manifest.json +106 -0
- ciris_adapters/mock_llm/protocol.py +37 -0
- ciris_adapters/mock_llm/responses.py +520 -0
- ciris_adapters/mock_llm/responses_action_selection.py +1041 -0
- ciris_adapters/mock_llm/responses_epistemic.py +17 -0
- ciris_adapters/mock_llm/responses_feedback.py +27 -0
- ciris_adapters/mock_llm/schemas.py +35 -0
- ciris_adapters/mock_llm/service.py +294 -0
- ciris_adapters/navigation/__init__.py +21 -0
- ciris_adapters/navigation/adapter.py +129 -0
- ciris_adapters/navigation/configurable.py +239 -0
- ciris_adapters/navigation/manifest.json +104 -0
- ciris_adapters/navigation/service.py +487 -0
- ciris_adapters/reddit/README.md +132 -0
- ciris_adapters/reddit/REDDIT_ADAPTER_ANALYSIS.md +715 -0
- ciris_adapters/reddit/REDDIT_ADAPTER_SUMMARY.txt +278 -0
- ciris_adapters/reddit/REDDIT_ANALYSIS_INDEX.md +307 -0
- ciris_adapters/reddit/REDDIT_PRODUCTION_READINESS_PLAN.md +518 -0
- ciris_adapters/reddit/__init__.py +15 -0
- ciris_adapters/reddit/adapter.py +189 -0
- ciris_adapters/reddit/configurable.py +274 -0
- ciris_adapters/reddit/error_handler.py +307 -0
- ciris_adapters/reddit/manifest.json +218 -0
- ciris_adapters/reddit/observer.py +532 -0
- ciris_adapters/reddit/protocol.py +34 -0
- ciris_adapters/reddit/schemas.py +433 -0
- ciris_adapters/reddit/service.py +1471 -0
- ciris_adapters/sample_adapter/README.md +474 -0
- ciris_adapters/sample_adapter/__init__.py +45 -0
- ciris_adapters/sample_adapter/adapter.py +208 -0
- ciris_adapters/sample_adapter/configurable.py +469 -0
- ciris_adapters/sample_adapter/manifest.json +247 -0
- ciris_adapters/sample_adapter/services.py +486 -0
- ciris_adapters/weather/__init__.py +16 -0
- ciris_adapters/weather/adapter.py +130 -0
- ciris_adapters/weather/configurable.py +240 -0
- ciris_adapters/weather/manifest.json +156 -0
- ciris_adapters/weather/service.py +600 -0
- ciris_agent-1.7.7.dist-info/METADATA +284 -0
- ciris_agent-1.7.7.dist-info/RECORD +986 -0
- ciris_agent-1.7.7.dist-info/WHEEL +5 -0
- ciris_agent-1.7.7.dist-info/entry_points.txt +15 -0
- ciris_agent-1.7.7.dist-info/licenses/LICENSE +205 -0
- ciris_agent-1.7.7.dist-info/licenses/NOTICE +82 -0
- ciris_agent-1.7.7.dist-info/top_level.txt +4 -0
- ciris_engine/__init__.py +15 -0
- ciris_engine/ciris_templates/ally.yaml +632 -0
- ciris_engine/ciris_templates/default.yaml +411 -0
- ciris_engine/ciris_templates/echo-core.yaml +629 -0
- ciris_engine/ciris_templates/echo-speculative.yaml +764 -0
- ciris_engine/ciris_templates/echo.yaml +647 -0
- ciris_engine/ciris_templates/sage.yaml +332 -0
- ciris_engine/ciris_templates/scout.yaml +338 -0
- ciris_engine/ciris_templates/test.yaml +168 -0
- ciris_engine/cli.py +42 -0
- ciris_engine/config/CIRIS_SERVICES.json +19 -0
- ciris_engine/config/MODEL_CAPABILITIES.json +419 -0
- ciris_engine/config/PRICING_DATA.json +179 -0
- ciris_engine/config/__init__.py +50 -0
- ciris_engine/config/ciris_services.py +113 -0
- ciris_engine/config/model_capabilities.py +388 -0
- ciris_engine/config/pricing_models.py +276 -0
- ciris_engine/constants.py +35 -0
- ciris_engine/data/__init__.py +1 -0
- ciris_engine/data/covenant_1.0b.txt +978 -0
- ciris_engine/gui_static/11steps.svg +107 -0
- ciris_engine/gui_static/2x-schematics.png +0 -0
- ciris_engine/gui_static/404/index.html +1 -0
- ciris_engine/gui_static/404.html +1 -0
- ciris_engine/gui_static/_next/static/0edhkwDxd5UccTsCmtaBi/_buildManifest.js +1 -0
- ciris_engine/gui_static/_next/static/0edhkwDxd5UccTsCmtaBi/_ssgManifest.js +1 -0
- ciris_engine/gui_static/_next/static/U-3xTQao7hc2wnAi-Uekm/_buildManifest.js +1 -0
- ciris_engine/gui_static/_next/static/U-3xTQao7hc2wnAi-Uekm/_ssgManifest.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/3297-60e86ba0f8a7b040.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/3835-2aad4b7f5f8e4643.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/4499-99a0bc47de0b8975.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/4534-af88cd4ba6e99bff.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/4541-84b455f9e0dc4cfe.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/4789-61412711484754bb.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/6539-c6398bc9d7018430.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/704-8e827b26cc8c2d32.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/704-fb45d630f3192c6f.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/8072-de4952a2e6d2b33f.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/8315-b91d03a3949db0af.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/8386-f93a83ccbd789bd9.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/87c73c54-781a7f35148d5433.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/8903-fefea3339a02d41b.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/9090-e66485adf8d9d990.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/_not-found/page-a67d9808462c23b1.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/api-keys/page-2d7ee1583bbbd02e.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/api-keys/page-6a3c2bae6fe92b7b.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/consent/page-2ed3a035136bc4e8.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/consent/page-b2f5c91844a32422.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/page-25b90f89af3ea58c.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/page-b65d16c94ecaf69c.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/privacy/page-675b6d05c8f9184f.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/privacy/page-cbee2e1c8ab52145.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/settings/page-0f44da06697cf9f0.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/account/settings/page-563420253577edbf.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/adapters/page-1854631018bc32be.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/agents/page-8353752c176a7c70.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/agents/page-f61a529f110a6040.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/api-demo/page-7f19b9d20d39be28.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/api-demo/page-d1063938f249b8bd.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/audit/page-321b6728b8fff0bb.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/audit/page-ebac35ca961a1277.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/billing/page-6f3dc3bd02924f8e.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/billing/page-fa4a469f814c821a.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/comms/page-0d4f734269addd8f.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/comms/page-79227d426050089c.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/config/page-018d21d683b6e5bc.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/config/page-2aa5a5363ca2a371.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/consent/page-198373205fd316e2.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/consent/page-f2ca39e7713b13f8.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/dashboard/page-1dd5a196f643c60d.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/dashboard/page-530a04d3abbb8cda.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/docs/page-3193b06d094ab654.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/docs/page-330e996dedb87aba.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/layout-0a70f5fc460298b1.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/layout-21f2f99dd5b336e9.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/login/page-33240e6c6034a49d.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/login/page-68ffab6d54a7fdcd.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/logs/page-8a6167aecc4a475c.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/memory/page-9ca8c5d0056de3ff.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/memory/page-e961226941c18f81.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/page-6fdb065a787a4974.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/page-89f87d431be6064a.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/runtime/page-2e728b9c43aa164d.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/runtime/page-c7dd033dc40a72f0.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/services/page-ae9f0bdf11d01a95.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/services/page-b10feb79ca5d75e5.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/sessions/page-13ebe7ef1c16ae11.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/sessions/page-e6c82b16d617f785.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/setup/page-0beb5f5b5a5c20fc.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/setup/page-2595e729eae30c0e.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/status-dashboard/page-1037c987aecc3653.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/status-dashboard/page-2ffd147f6d3162ff.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/system/page-2c5798d58cafcd91.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/system/page-505b1ba4eceb01c3.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/test-auth/page-b0cad31d5cb1b2fa.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/test-auth/page-f3ecd7a8012df230.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/test-login/page-f35117fdc4105801.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/test-login/page-fb583a7924114906.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/test-sdk/page-50f116fd76935563.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/test-sdk/page-c37d8aa5ba623a44.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/tools/page-429aec7a707777ef.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/tools/page-5f705aad60e0c04e.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/users/page-13476b8b0f3808cc.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/users/page-7e500d154ed5bba4.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/wa/page-cc4a9d8a5cb44d08.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/app/wa/page-ec3e429efbc79230.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/framework-9d29490f5ba089ba.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/main-1f554952e47a82c4.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/main-app-26fa8aed029082e5.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/main-app-97b0486ef6bcef25.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/pages/_app-6ce685456e616eb2.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/pages/_error-d4bce98d93fe21e7.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- ciris_engine/gui_static/_next/static/chunks/webpack-fcebd240b7f8477d.js +1 -0
- ciris_engine/gui_static/_next/static/css/16b94b1fe0cc6e37.css +3 -0
- ciris_engine/gui_static/_next/static/css/77a24ceaae86deff.css +3 -0
- ciris_engine/gui_static/_next/static/media/4cf2300e9c8272f7-s.p.woff2 +0 -0
- ciris_engine/gui_static/_next/static/media/747892c23ea88013-s.woff2 +0 -0
- ciris_engine/gui_static/_next/static/media/8d697b304b401681-s.woff2 +0 -0
- ciris_engine/gui_static/_next/static/media/93f479601ee12b01-s.p.woff2 +0 -0
- ciris_engine/gui_static/_next/static/media/9610d9e46709d722-s.woff2 +0 -0
- ciris_engine/gui_static/_next/static/media/ba015fad6dcf6784-s.woff2 +0 -0
- ciris_engine/gui_static/_next/static/media/d8298875641ec7d4-s.p.woff2 +0 -0
- ciris_engine/gui_static/account/api-keys/index.html +1 -0
- ciris_engine/gui_static/account/api-keys/index.txt +27 -0
- ciris_engine/gui_static/account/consent/index.html +1 -0
- ciris_engine/gui_static/account/consent/index.txt +27 -0
- ciris_engine/gui_static/account/index.html +1 -0
- ciris_engine/gui_static/account/index.txt +27 -0
- ciris_engine/gui_static/account/privacy/index.html +1 -0
- ciris_engine/gui_static/account/privacy/index.txt +27 -0
- ciris_engine/gui_static/account/settings/index.html +1 -0
- ciris_engine/gui_static/account/settings/index.txt +27 -0
- ciris_engine/gui_static/adapters/index.html +1 -0
- ciris_engine/gui_static/adapters/index.txt +27 -0
- ciris_engine/gui_static/agents/index.html +1 -0
- ciris_engine/gui_static/agents/index.txt +27 -0
- ciris_engine/gui_static/andrew-roberts-euBRXcx57T4-unsplash.jpg +0 -0
- ciris_engine/gui_static/api-demo/index.html +1 -0
- ciris_engine/gui_static/api-demo/index.txt +27 -0
- ciris_engine/gui_static/audit/index.html +1 -0
- ciris_engine/gui_static/audit/index.txt +27 -0
- ciris_engine/gui_static/billing/index.html +1 -0
- ciris_engine/gui_static/billing/index.txt +27 -0
- ciris_engine/gui_static/blurryinfo.png +0 -0
- ciris_engine/gui_static/chip-vincent-PkQDwfl9Flc-unsplash.jpg +0 -0
- ciris_engine/gui_static/ciris-architecture.svg +338 -0
- ciris_engine/gui_static/comms/index.html +1 -0
- ciris_engine/gui_static/comms/index.txt +27 -0
- ciris_engine/gui_static/config/index.html +1 -0
- ciris_engine/gui_static/config/index.txt +27 -0
- ciris_engine/gui_static/consent/index.html +1 -0
- ciris_engine/gui_static/consent/index.txt +27 -0
- ciris_engine/gui_static/dashboard/index.html +1 -0
- ciris_engine/gui_static/dashboard/index.txt +27 -0
- ciris_engine/gui_static/docs/index.html +1 -0
- ciris_engine/gui_static/docs/index.txt +27 -0
- ciris_engine/gui_static/eric.png +0 -0
- ciris_engine/gui_static/file.svg +1 -0
- ciris_engine/gui_static/globe.svg +1 -0
- ciris_engine/gui_static/index.html +1 -0
- ciris_engine/gui_static/index.txt +27 -0
- ciris_engine/gui_static/infogfx-1@2x.png +0 -0
- ciris_engine/gui_static/infogfx-2.png +0 -0
- ciris_engine/gui_static/infogfx-dark-1.png +0 -0
- ciris_engine/gui_static/kelly-vohs-soSTXmIxTDU-unsplash.jpg +0 -0
- ciris_engine/gui_static/login/index.html +1 -0
- ciris_engine/gui_static/login/index.txt +27 -0
- ciris_engine/gui_static/logs/index.html +1 -0
- ciris_engine/gui_static/logs/index.txt +27 -0
- ciris_engine/gui_static/memory/index.html +1 -0
- ciris_engine/gui_static/memory/index.txt +27 -0
- ciris_engine/gui_static/nathan-farrish-ArcTfEoBgzs-unsplash.jpg +0 -0
- ciris_engine/gui_static/next.svg +1 -0
- ciris_engine/gui_static/overview.svg +512 -0
- ciris_engine/gui_static/overview1.svg +407 -0
- ciris_engine/gui_static/overview2.svg +370 -0
- ciris_engine/gui_static/pipeline-visualization.svg +278 -0
- ciris_engine/gui_static/privacy-policy.html +160 -0
- ciris_engine/gui_static/runtime/index.html +8 -0
- ciris_engine/gui_static/runtime/index.txt +27 -0
- ciris_engine/gui_static/services/index.html +1 -0
- ciris_engine/gui_static/services/index.txt +27 -0
- ciris_engine/gui_static/sessions/index.html +1 -0
- ciris_engine/gui_static/sessions/index.txt +27 -0
- ciris_engine/gui_static/setup/index.html +1 -0
- ciris_engine/gui_static/setup/index.txt +27 -0
- ciris_engine/gui_static/status-dashboard/index.html +1 -0
- ciris_engine/gui_static/status-dashboard/index.txt +27 -0
- ciris_engine/gui_static/system/index.html +1 -0
- ciris_engine/gui_static/system/index.txt +27 -0
- ciris_engine/gui_static/terms-of-service.html +174 -0
- ciris_engine/gui_static/test-auth/index.html +1 -0
- ciris_engine/gui_static/test-auth/index.txt +27 -0
- ciris_engine/gui_static/test-login/index.html +1 -0
- ciris_engine/gui_static/test-login/index.txt +27 -0
- ciris_engine/gui_static/test-sdk/index.html +1 -0
- ciris_engine/gui_static/test-sdk/index.txt +27 -0
- ciris_engine/gui_static/tools/index.html +1 -0
- ciris_engine/gui_static/tools/index.txt +27 -0
- ciris_engine/gui_static/users/index.html +1 -0
- ciris_engine/gui_static/users/index.txt +27 -0
- ciris_engine/gui_static/vercel.svg +1 -0
- ciris_engine/gui_static/videos/video1.mp4 +0 -0
- ciris_engine/gui_static/videos/video3.mp4 +0 -0
- ciris_engine/gui_static/wa/index.html +1 -0
- ciris_engine/gui_static/wa/index.txt +27 -0
- ciris_engine/gui_static/window.svg +1 -0
- ciris_engine/logic/__init__.py +8 -0
- ciris_engine/logic/adapters/__init__.py +74 -0
- ciris_engine/logic/adapters/api/__init__.py +5 -0
- ciris_engine/logic/adapters/api/adapter.py +1037 -0
- ciris_engine/logic/adapters/api/api_communication.py +370 -0
- ciris_engine/logic/adapters/api/api_document.py +330 -0
- ciris_engine/logic/adapters/api/api_observer.py +24 -0
- ciris_engine/logic/adapters/api/api_runtime_control.py +388 -0
- ciris_engine/logic/adapters/api/api_tools.py +299 -0
- ciris_engine/logic/adapters/api/api_vision.py +215 -0
- ciris_engine/logic/adapters/api/app.py +272 -0
- ciris_engine/logic/adapters/api/auth.py +159 -0
- ciris_engine/logic/adapters/api/config.py +101 -0
- ciris_engine/logic/adapters/api/constants.py +55 -0
- ciris_engine/logic/adapters/api/dependencies/__init__.py +1 -0
- ciris_engine/logic/adapters/api/dependencies/auth.py +260 -0
- ciris_engine/logic/adapters/api/endpoints/__init__.py +1 -0
- ciris_engine/logic/adapters/api/endpoints/emergency.py +86 -0
- ciris_engine/logic/adapters/api/middleware/__init__.py +1 -0
- ciris_engine/logic/adapters/api/middleware/rate_limiter.py +302 -0
- ciris_engine/logic/adapters/api/models.py +29 -0
- ciris_engine/logic/adapters/api/routes/__init__.py +52 -0
- ciris_engine/logic/adapters/api/routes/agent.py +1762 -0
- ciris_engine/logic/adapters/api/routes/audit.py +707 -0
- ciris_engine/logic/adapters/api/routes/auth.py +1745 -0
- ciris_engine/logic/adapters/api/routes/billing.py +895 -0
- ciris_engine/logic/adapters/api/routes/config.py +329 -0
- ciris_engine/logic/adapters/api/routes/connectors.py +534 -0
- ciris_engine/logic/adapters/api/routes/consent.py +637 -0
- ciris_engine/logic/adapters/api/routes/dsar.py +637 -0
- ciris_engine/logic/adapters/api/routes/dsar_multi_source.py +484 -0
- ciris_engine/logic/adapters/api/routes/emergency.py +302 -0
- ciris_engine/logic/adapters/api/routes/memory.py +733 -0
- ciris_engine/logic/adapters/api/routes/memory_filters.py +230 -0
- ciris_engine/logic/adapters/api/routes/memory_models.py +112 -0
- ciris_engine/logic/adapters/api/routes/memory_queries.py +236 -0
- ciris_engine/logic/adapters/api/routes/memory_query_helpers.py +394 -0
- ciris_engine/logic/adapters/api/routes/memory_visualization.py +359 -0
- ciris_engine/logic/adapters/api/routes/memory_visualization_helpers.py +110 -0
- ciris_engine/logic/adapters/api/routes/partnership.py +541 -0
- ciris_engine/logic/adapters/api/routes/setup.py +1374 -0
- ciris_engine/logic/adapters/api/routes/system.py +3049 -0
- ciris_engine/logic/adapters/api/routes/system_extensions.py +952 -0
- ciris_engine/logic/adapters/api/routes/telemetry.py +1987 -0
- ciris_engine/logic/adapters/api/routes/telemetry_converters.py +141 -0
- ciris_engine/logic/adapters/api/routes/telemetry_helpers.py +111 -0
- ciris_engine/logic/adapters/api/routes/telemetry_logs_reader.py +280 -0
- ciris_engine/logic/adapters/api/routes/telemetry_metrics.py +131 -0
- ciris_engine/logic/adapters/api/routes/telemetry_models.py +190 -0
- ciris_engine/logic/adapters/api/routes/telemetry_otlp.py +878 -0
- ciris_engine/logic/adapters/api/routes/telemetry_resource_helpers.py +191 -0
- ciris_engine/logic/adapters/api/routes/tickets.py +541 -0
- ciris_engine/logic/adapters/api/routes/tools.py +556 -0
- ciris_engine/logic/adapters/api/routes/transparency.py +281 -0
- ciris_engine/logic/adapters/api/routes/users.py +981 -0
- ciris_engine/logic/adapters/api/routes/verification.py +373 -0
- ciris_engine/logic/adapters/api/routes/wa.py +369 -0
- ciris_engine/logic/adapters/api/service_configuration.py +177 -0
- ciris_engine/logic/adapters/api/services/__init__.py +1 -0
- ciris_engine/logic/adapters/api/services/auth_service.py +1417 -0
- ciris_engine/logic/adapters/api/services/oauth_security.py +68 -0
- ciris_engine/logic/adapters/base.py +141 -0
- ciris_engine/logic/adapters/base_adapter.py +73 -0
- ciris_engine/logic/adapters/base_observer.py +1141 -0
- ciris_engine/logic/adapters/base_vision.py +312 -0
- ciris_engine/logic/adapters/cirisnode_client.py +307 -0
- ciris_engine/logic/adapters/cli/__init__.py +3 -0
- ciris_engine/logic/adapters/cli/adapter.py +207 -0
- ciris_engine/logic/adapters/cli/cli_adapter.py +902 -0
- ciris_engine/logic/adapters/cli/cli_observer.py +268 -0
- ciris_engine/logic/adapters/cli/cli_tools.py +427 -0
- ciris_engine/logic/adapters/cli/cli_wa_service.py +134 -0
- ciris_engine/logic/adapters/cli/config.py +73 -0
- ciris_engine/logic/adapters/discord/__init__.py +3 -0
- ciris_engine/logic/adapters/discord/adapter.py +783 -0
- ciris_engine/logic/adapters/discord/ciris_discord_client.py +159 -0
- ciris_engine/logic/adapters/discord/config.py +177 -0
- ciris_engine/logic/adapters/discord/constants.py +185 -0
- ciris_engine/logic/adapters/discord/discord-stubs.pyi +50 -0
- ciris_engine/logic/adapters/discord/discord_adapter.py +1584 -0
- ciris_engine/logic/adapters/discord/discord_audit.py +150 -0
- ciris_engine/logic/adapters/discord/discord_channel_manager.py +351 -0
- ciris_engine/logic/adapters/discord/discord_connection_manager.py +313 -0
- ciris_engine/logic/adapters/discord/discord_embed_formatter.py +369 -0
- ciris_engine/logic/adapters/discord/discord_error_classifier.py +302 -0
- ciris_engine/logic/adapters/discord/discord_error_handler.py +316 -0
- ciris_engine/logic/adapters/discord/discord_guidance_handler.py +460 -0
- ciris_engine/logic/adapters/discord/discord_message_handler.py +207 -0
- ciris_engine/logic/adapters/discord/discord_observer.py +670 -0
- ciris_engine/logic/adapters/discord/discord_rate_limiter.py +249 -0
- ciris_engine/logic/adapters/discord/discord_reaction_handler.py +278 -0
- ciris_engine/logic/adapters/discord/discord_tool_handler.py +465 -0
- ciris_engine/logic/adapters/discord/discord_tool_service.py +790 -0
- ciris_engine/logic/adapters/discord/discord_tools.py +90 -0
- ciris_engine/logic/adapters/discord/discord_vision_helper.py +148 -0
- ciris_engine/logic/adapters/discord/py.typed +0 -0
- ciris_engine/logic/adapters/document_parser.py +320 -0
- ciris_engine/logic/audit/__init__.py +10 -0
- ciris_engine/logic/audit/hash_chain.py +313 -0
- ciris_engine/logic/audit/signature_manager.py +352 -0
- ciris_engine/logic/audit/verifier.py +408 -0
- ciris_engine/logic/buses/__init__.py +21 -0
- ciris_engine/logic/buses/base_bus.py +178 -0
- ciris_engine/logic/buses/bus_manager.py +121 -0
- ciris_engine/logic/buses/communication_bus.py +387 -0
- ciris_engine/logic/buses/llm_bus.py +722 -0
- ciris_engine/logic/buses/memory_bus.py +577 -0
- ciris_engine/logic/buses/prohibitions.py +502 -0
- ciris_engine/logic/buses/runtime_control_bus.py +539 -0
- ciris_engine/logic/buses/tool_bus.py +482 -0
- ciris_engine/logic/buses/wise_bus.py +684 -0
- ciris_engine/logic/config/__init__.py +25 -0
- ciris_engine/logic/config/bootstrap.py +255 -0
- ciris_engine/logic/config/config_accessor.py +202 -0
- ciris_engine/logic/config/db_paths.py +194 -0
- ciris_engine/logic/config/env_utils.py +39 -0
- ciris_engine/logic/conscience/__init__.py +16 -0
- ciris_engine/logic/conscience/build_deferral_package.py +0 -0
- ciris_engine/logic/conscience/core.py +688 -0
- ciris_engine/logic/conscience/interface.py +33 -0
- ciris_engine/logic/conscience/registry.py +76 -0
- ciris_engine/logic/conscience/thought_depth_guardrail.py +231 -0
- ciris_engine/logic/conscience/updated_status_conscience.py +156 -0
- ciris_engine/logic/context/__init__.py +10 -0
- ciris_engine/logic/context/batch_context.py +550 -0
- ciris_engine/logic/context/builder.py +149 -0
- ciris_engine/logic/context/channel_resolution.py +136 -0
- ciris_engine/logic/context/secrets_snapshot.py +52 -0
- ciris_engine/logic/context/system_snapshot.py +116 -0
- ciris_engine/logic/context/system_snapshot_helpers.py +1651 -0
- ciris_engine/logic/covenant/__init__.py +33 -0
- ciris_engine/logic/covenant/executor.py +303 -0
- ciris_engine/logic/covenant/extractor.py +382 -0
- ciris_engine/logic/covenant/handler.py +241 -0
- ciris_engine/logic/covenant/verifier.py +383 -0
- ciris_engine/logic/dma/__init__.py +15 -0
- ciris_engine/logic/dma/action_selection/__init__.py +11 -0
- ciris_engine/logic/dma/action_selection/action_instruction_generator.py +444 -0
- ciris_engine/logic/dma/action_selection/context_builder.py +508 -0
- ciris_engine/logic/dma/action_selection/faculty_integration.py +193 -0
- ciris_engine/logic/dma/action_selection/special_cases.py +132 -0
- ciris_engine/logic/dma/action_selection_pdma.py +365 -0
- ciris_engine/logic/dma/base_dma.py +335 -0
- ciris_engine/logic/dma/csdma.py +239 -0
- ciris_engine/logic/dma/dma_executor.py +575 -0
- ciris_engine/logic/dma/dsdma_base.py +410 -0
- ciris_engine/logic/dma/exceptions.py +4 -0
- ciris_engine/logic/dma/factory.py +150 -0
- ciris_engine/logic/dma/pdma.py +120 -0
- ciris_engine/logic/dma/prompt_loader.py +189 -0
- ciris_engine/logic/dma/prompts/action_selection_pdma.yml +58 -0
- ciris_engine/logic/dma/prompts/csdma_common_sense.yml +28 -0
- ciris_engine/logic/dma/prompts/dsdma_base.yml +17 -0
- ciris_engine/logic/dma/prompts/pdma_ethical.yml +42 -0
- ciris_engine/logic/formatters/__init__.py +26 -0
- ciris_engine/logic/formatters/crisis_resources.py +80 -0
- ciris_engine/logic/formatters/escalation.py +21 -0
- ciris_engine/logic/formatters/identity.py +224 -0
- ciris_engine/logic/formatters/prompt_blocks.py +64 -0
- ciris_engine/logic/formatters/system_snapshot.py +193 -0
- ciris_engine/logic/formatters/user_profiles.py +108 -0
- ciris_engine/logic/handlers/__init__.py +1 -0
- ciris_engine/logic/handlers/control/__init__.py +1 -0
- ciris_engine/logic/handlers/control/defer_handler.py +195 -0
- ciris_engine/logic/handlers/control/ponder_handler.py +154 -0
- ciris_engine/logic/handlers/control/reject_handler.py +81 -0
- ciris_engine/logic/handlers/external/__init__.py +1 -0
- ciris_engine/logic/handlers/external/observe_handler.py +154 -0
- ciris_engine/logic/handlers/external/speak_handler.py +250 -0
- ciris_engine/logic/handlers/external/tool_handler.py +148 -0
- ciris_engine/logic/handlers/memory/__init__.py +1 -0
- ciris_engine/logic/handlers/memory/forget_handler.py +107 -0
- ciris_engine/logic/handlers/memory/memorize_handler.py +391 -0
- ciris_engine/logic/handlers/memory/recall_handler.py +213 -0
- ciris_engine/logic/handlers/terminal/__init__.py +1 -0
- ciris_engine/logic/handlers/terminal/task_complete_handler.py +299 -0
- ciris_engine/logic/infrastructure/__init__.py +1 -0
- ciris_engine/logic/infrastructure/handlers/__init__.py +8 -0
- ciris_engine/logic/infrastructure/handlers/action_dispatcher.py +382 -0
- ciris_engine/logic/infrastructure/handlers/base_handler.py +450 -0
- ciris_engine/logic/infrastructure/handlers/exceptions.py +2 -0
- ciris_engine/logic/infrastructure/handlers/handler_registry.py +59 -0
- ciris_engine/logic/infrastructure/handlers/helpers.py +55 -0
- ciris_engine/logic/infrastructure/step_streaming.py +149 -0
- ciris_engine/logic/infrastructure/sub_services/__init__.py +1 -0
- ciris_engine/logic/infrastructure/sub_services/identity_variance_monitor.py +1035 -0
- ciris_engine/logic/infrastructure/sub_services/pattern_analysis_loop.py +758 -0
- ciris_engine/logic/infrastructure/sub_services/wa_cli_bootstrap.py +229 -0
- ciris_engine/logic/infrastructure/sub_services/wa_cli_display.py +176 -0
- ciris_engine/logic/infrastructure/sub_services/wa_cli_oauth.py +404 -0
- ciris_engine/logic/infrastructure/sub_services/wa_cli_wizard.py +181 -0
- ciris_engine/logic/persistence/__init__.py +130 -0
- ciris_engine/logic/persistence/analytics.py +97 -0
- ciris_engine/logic/persistence/db/__init__.py +28 -0
- ciris_engine/logic/persistence/db/core.py +520 -0
- ciris_engine/logic/persistence/db/dialect.py +380 -0
- ciris_engine/logic/persistence/db/execution_helpers.py +216 -0
- ciris_engine/logic/persistence/db/migration_runner.py +191 -0
- ciris_engine/logic/persistence/db/operations.py +313 -0
- ciris_engine/logic/persistence/db/query_builder.py +232 -0
- ciris_engine/logic/persistence/db/retry.py +154 -0
- ciris_engine/logic/persistence/db/setup.py +18 -0
- ciris_engine/logic/persistence/migrations/postgres/001_initial_schema.sql +4 -0
- ciris_engine/logic/persistence/migrations/postgres/002_add_retry_status.sql +3 -0
- ciris_engine/logic/persistence/migrations/postgres/003_add_task_update_tracking.sql +8 -0
- ciris_engine/logic/persistence/migrations/postgres/004_add_occurrence_id.sql +54 -0
- ciris_engine/logic/persistence/migrations/postgres/005_add_consolidation_locks.sql +22 -0
- ciris_engine/logic/persistence/migrations/postgres/006_add_correlation_id_unique_index.sql +16 -0
- ciris_engine/logic/persistence/migrations/postgres/007_add_dsar_tickets.sql +39 -0
- ciris_engine/logic/persistence/migrations/postgres/008_rename_to_tickets_add_sop.sql +123 -0
- ciris_engine/logic/persistence/migrations/postgres/009_add_ticket_status_columns.sql +39 -0
- ciris_engine/logic/persistence/migrations/postgres/010_add_images_to_tasks.sql +5 -0
- ciris_engine/logic/persistence/migrations/sqlite/001_initial_schema.sql +357 -0
- ciris_engine/logic/persistence/migrations/sqlite/002_add_retry_status.sql +3 -0
- ciris_engine/logic/persistence/migrations/sqlite/003_add_task_update_tracking.sql +8 -0
- ciris_engine/logic/persistence/migrations/sqlite/004_add_occurrence_id.sql +45 -0
- ciris_engine/logic/persistence/migrations/sqlite/005_add_consolidation_locks.sql +22 -0
- ciris_engine/logic/persistence/migrations/sqlite/006_add_correlation_id_unique_index.sql +16 -0
- ciris_engine/logic/persistence/migrations/sqlite/007_add_dsar_tickets.sql +39 -0
- ciris_engine/logic/persistence/migrations/sqlite/008_rename_to_tickets_add_sop.sql +120 -0
- ciris_engine/logic/persistence/migrations/sqlite/009_add_ticket_status_columns.sql +129 -0
- ciris_engine/logic/persistence/migrations/sqlite/010_add_images_to_tasks.sql +17 -0
- ciris_engine/logic/persistence/models/__init__.py +141 -0
- ciris_engine/logic/persistence/models/correlations.py +881 -0
- ciris_engine/logic/persistence/models/deferral.py +68 -0
- ciris_engine/logic/persistence/models/dsar.py +286 -0
- ciris_engine/logic/persistence/models/graph.py +362 -0
- ciris_engine/logic/persistence/models/identity.py +264 -0
- ciris_engine/logic/persistence/models/queue_status.py +139 -0
- ciris_engine/logic/persistence/models/tasks.py +1043 -0
- ciris_engine/logic/persistence/models/thoughts.py +400 -0
- ciris_engine/logic/persistence/models/tickets.py +518 -0
- ciris_engine/logic/persistence/stores/__init__.py +13 -0
- ciris_engine/logic/persistence/stores/auth_helpers.py +117 -0
- ciris_engine/logic/persistence/stores/authentication_store.py +414 -0
- ciris_engine/logic/persistence/utils.py +212 -0
- ciris_engine/logic/processors/__init__.py +30 -0
- ciris_engine/logic/processors/core/__init__.py +1 -0
- ciris_engine/logic/processors/core/base_processor.py +280 -0
- ciris_engine/logic/processors/core/main_processor.py +1777 -0
- ciris_engine/logic/processors/core/step_decorators.py +1583 -0
- ciris_engine/logic/processors/core/thought_processor/__init__.py +20 -0
- ciris_engine/logic/processors/core/thought_processor/action_execution.py +49 -0
- ciris_engine/logic/processors/core/thought_processor/conscience_execution.py +382 -0
- ciris_engine/logic/processors/core/thought_processor/finalize_action.py +66 -0
- ciris_engine/logic/processors/core/thought_processor/gather_context.py +120 -0
- ciris_engine/logic/processors/core/thought_processor/main.py +920 -0
- ciris_engine/logic/processors/core/thought_processor/perform_aspdma.py +86 -0
- ciris_engine/logic/processors/core/thought_processor/perform_dmas.py +106 -0
- ciris_engine/logic/processors/core/thought_processor/recursive_processing.py +237 -0
- ciris_engine/logic/processors/core/thought_processor/round_complete.py +52 -0
- ciris_engine/logic/processors/core/thought_processor/start_round.py +64 -0
- ciris_engine/logic/processors/exceptions.py +59 -0
- ciris_engine/logic/processors/states/__init__.py +1 -0
- ciris_engine/logic/processors/states/dream_processor.py +1381 -0
- ciris_engine/logic/processors/states/play_processor.py +141 -0
- ciris_engine/logic/processors/states/shutdown_processor.py +623 -0
- ciris_engine/logic/processors/states/solitude_processor.py +305 -0
- ciris_engine/logic/processors/states/wakeup_processor.py +802 -0
- ciris_engine/logic/processors/states/work_processor.py +742 -0
- ciris_engine/logic/processors/support/__init__.py +1 -0
- ciris_engine/logic/processors/support/dma_orchestrator.py +336 -0
- ciris_engine/logic/processors/support/processing_queue.py +133 -0
- ciris_engine/logic/processors/support/shutdown_condition_evaluator.py +294 -0
- ciris_engine/logic/processors/support/state_manager.py +358 -0
- ciris_engine/logic/processors/support/task_manager.py +303 -0
- ciris_engine/logic/processors/support/thought_escalation.py +116 -0
- ciris_engine/logic/processors/support/thought_manager.py +328 -0
- ciris_engine/logic/processors/support/thought_manager_enhanced.py +105 -0
- ciris_engine/logic/registries/__init__.py +34 -0
- ciris_engine/logic/registries/base.py +653 -0
- ciris_engine/logic/registries/circuit_breaker.py +275 -0
- ciris_engine/logic/registries/typed_registries.py +184 -0
- ciris_engine/logic/runtime/__init__.py +7 -0
- ciris_engine/logic/runtime/adapter_loader.py +261 -0
- ciris_engine/logic/runtime/adapter_manager.py +1053 -0
- ciris_engine/logic/runtime/ciris_runtime.py +2342 -0
- ciris_engine/logic/runtime/ciris_runtime_helpers.py +923 -0
- ciris_engine/logic/runtime/component_builder.py +361 -0
- ciris_engine/logic/runtime/identity_manager.py +219 -0
- ciris_engine/logic/runtime/module_loader.py +207 -0
- ciris_engine/logic/runtime/prevent_sideeffects.py +30 -0
- ciris_engine/logic/runtime/runtime_interface.py +23 -0
- ciris_engine/logic/runtime/service_initializer.py +1623 -0
- ciris_engine/logic/secrets/__init__.py +30 -0
- ciris_engine/logic/secrets/encryption.py +175 -0
- ciris_engine/logic/secrets/filter.py +295 -0
- ciris_engine/logic/secrets/service.py +652 -0
- ciris_engine/logic/secrets/store.py +669 -0
- ciris_engine/logic/services/__init__.py +1 -0
- ciris_engine/logic/services/adaptation/__init__.py +3 -0
- ciris_engine/logic/services/base_graph_service.py +142 -0
- ciris_engine/logic/services/base_infrastructure_service.py +69 -0
- ciris_engine/logic/services/base_scheduled_service.py +136 -0
- ciris_engine/logic/services/base_service.py +247 -0
- ciris_engine/logic/services/governance/__init__.py +3 -0
- ciris_engine/logic/services/governance/adaptive_filter/__init__.py +14 -0
- ciris_engine/logic/services/governance/adaptive_filter/service.py +818 -0
- ciris_engine/logic/services/governance/consent/__init__.py +53 -0
- ciris_engine/logic/services/governance/consent/air.py +403 -0
- ciris_engine/logic/services/governance/consent/decay.py +324 -0
- ciris_engine/logic/services/governance/consent/dsar_automation.py +589 -0
- ciris_engine/logic/services/governance/consent/exceptions.py +106 -0
- ciris_engine/logic/services/governance/consent/metrics.py +270 -0
- ciris_engine/logic/services/governance/consent/partnership.py +533 -0
- ciris_engine/logic/services/governance/consent/service.py +1256 -0
- ciris_engine/logic/services/governance/dsar/__init__.py +29 -0
- ciris_engine/logic/services/governance/dsar/orchestrator.py +977 -0
- ciris_engine/logic/services/governance/dsar/schemas.py +141 -0
- ciris_engine/logic/services/governance/dsar/signature_service.py +283 -0
- ciris_engine/logic/services/governance/self_observation/__init__.py +20 -0
- ciris_engine/logic/services/governance/self_observation/service.py +1153 -0
- ciris_engine/logic/services/governance/visibility/__init__.py +17 -0
- ciris_engine/logic/services/governance/visibility/service.py +512 -0
- ciris_engine/logic/services/governance/wise_authority/__init__.py +15 -0
- ciris_engine/logic/services/governance/wise_authority/service.py +827 -0
- ciris_engine/logic/services/graph/__init__.py +5 -0
- ciris_engine/logic/services/graph/audit_service/__init__.py +5 -0
- ciris_engine/logic/services/graph/audit_service/service.py +1675 -0
- ciris_engine/logic/services/graph/base.py +208 -0
- ciris_engine/logic/services/graph/config_service/__init__.py +5 -0
- ciris_engine/logic/services/graph/config_service/service.py +372 -0
- ciris_engine/logic/services/graph/incident_service/__init__.py +5 -0
- ciris_engine/logic/services/graph/incident_service/service.py +803 -0
- ciris_engine/logic/services/graph/memory_service.py +1120 -0
- ciris_engine/logic/services/graph/telemetry_service/__init__.py +5 -0
- ciris_engine/logic/services/graph/telemetry_service/exceptions.py +104 -0
- ciris_engine/logic/services/graph/telemetry_service/helpers.py +1337 -0
- ciris_engine/logic/services/graph/telemetry_service/service.py +2429 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/__init__.py +17 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/aggregation_helpers.py +355 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/cleanup_helpers.py +438 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/compressor.py +260 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/__init__.py +27 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/audit.py +326 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/conversation.py +291 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/memory.py +197 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/metrics.py +251 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/task.py +257 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/trace.py +363 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/data_converter.py +545 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/date_calculation_helpers.py +193 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/db_query_helpers.py +296 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/edge_helpers.py +92 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/edge_manager.py +896 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/extensive_helpers.py +322 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/period_manager.py +152 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/profound_helpers.py +277 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/query_manager.py +812 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/service.py +1692 -0
- ciris_engine/logic/services/graph/tsdb_consolidation/sql_builders.py +363 -0
- ciris_engine/logic/services/infrastructure/__init__.py +1 -0
- ciris_engine/logic/services/infrastructure/authentication/__init__.py +5 -0
- ciris_engine/logic/services/infrastructure/authentication/service.py +1634 -0
- ciris_engine/logic/services/infrastructure/database_maintenance/__init__.py +15 -0
- ciris_engine/logic/services/infrastructure/database_maintenance/service.py +764 -0
- ciris_engine/logic/services/infrastructure/resource_monitor/__init__.py +7 -0
- ciris_engine/logic/services/infrastructure/resource_monitor/ciris_billing_provider.py +755 -0
- ciris_engine/logic/services/infrastructure/resource_monitor/service.py +409 -0
- ciris_engine/logic/services/infrastructure/resource_monitor/simple_credit_provider.py +129 -0
- ciris_engine/logic/services/lifecycle/__init__.py +3 -0
- ciris_engine/logic/services/lifecycle/initialization/__init__.py +10 -0
- ciris_engine/logic/services/lifecycle/initialization/service.py +312 -0
- ciris_engine/logic/services/lifecycle/scheduler/__init__.py +5 -0
- ciris_engine/logic/services/lifecycle/scheduler/service.py +607 -0
- ciris_engine/logic/services/lifecycle/shutdown/__init__.py +9 -0
- ciris_engine/logic/services/lifecycle/shutdown/service.py +378 -0
- ciris_engine/logic/services/lifecycle/time/__init__.py +15 -0
- ciris_engine/logic/services/lifecycle/time/service.py +259 -0
- ciris_engine/logic/services/memory_service/__init__.py +8 -0
- ciris_engine/logic/services/mixins/__init__.py +13 -0
- ciris_engine/logic/services/mixins/example_usage.py +200 -0
- ciris_engine/logic/services/mixins/request_metrics.py +179 -0
- ciris_engine/logic/services/runtime/__init__.py +3 -0
- ciris_engine/logic/services/runtime/adapter_configuration/__init__.py +16 -0
- ciris_engine/logic/services/runtime/adapter_configuration/service.py +674 -0
- ciris_engine/logic/services/runtime/adapter_configuration/session.py +67 -0
- ciris_engine/logic/services/runtime/control_service/__init__.py +5 -0
- ciris_engine/logic/services/runtime/control_service/service.py +2269 -0
- ciris_engine/logic/services/runtime/llm_service/__init__.py +14 -0
- ciris_engine/logic/services/runtime/llm_service/pricing_calculator.py +279 -0
- ciris_engine/logic/services/runtime/llm_service/service.py +930 -0
- ciris_engine/logic/services/tools/__init__.py +5 -0
- ciris_engine/logic/services/tools/core_tool_service/__init__.py +8 -0
- ciris_engine/logic/services/tools/core_tool_service/service.py +852 -0
- ciris_engine/logic/setup/__init__.py +1 -0
- ciris_engine/logic/setup/first_run.py +250 -0
- ciris_engine/logic/setup/wizard.py +327 -0
- ciris_engine/logic/telemetry/__init__.py +46 -0
- ciris_engine/logic/telemetry/core.py +239 -0
- ciris_engine/logic/telemetry/hot_cold_config.py +133 -0
- ciris_engine/logic/telemetry/log_collector.py +190 -0
- ciris_engine/logic/telemetry/resource_monitor.py +7 -0
- ciris_engine/logic/telemetry/security.py +79 -0
- ciris_engine/logic/utils/__init__.py +18 -0
- ciris_engine/logic/utils/channel_utils.py +75 -0
- ciris_engine/logic/utils/consent/__init__.py +1 -0
- ciris_engine/logic/utils/consent/partnership_utils.py +172 -0
- ciris_engine/logic/utils/constants.py +92 -0
- ciris_engine/logic/utils/context_utils.py +145 -0
- ciris_engine/logic/utils/directory_setup.py +533 -0
- ciris_engine/logic/utils/graphql_context_provider.py +152 -0
- ciris_engine/logic/utils/identity_resolution.py +843 -0
- ciris_engine/logic/utils/incident_capture_handler.py +303 -0
- ciris_engine/logic/utils/initialization_manager.py +74 -0
- ciris_engine/logic/utils/jsondict_helpers.py +290 -0
- ciris_engine/logic/utils/log_sanitizer.py +97 -0
- ciris_engine/logic/utils/logging_config.py +151 -0
- ciris_engine/logic/utils/observability_decorators.py +544 -0
- ciris_engine/logic/utils/occurrence_utils.py +155 -0
- ciris_engine/logic/utils/path_resolution.py +281 -0
- ciris_engine/logic/utils/platform_detection.py +286 -0
- ciris_engine/logic/utils/privacy.py +266 -0
- ciris_engine/logic/utils/profile_loader.py +124 -0
- ciris_engine/logic/utils/profile_manager.py +16 -0
- ciris_engine/logic/utils/runtime_utils.py +69 -0
- ciris_engine/logic/utils/shutdown_manager.py +107 -0
- ciris_engine/logic/utils/task_formatters.py +60 -0
- ciris_engine/logic/utils/task_thought_factory.py +404 -0
- ciris_engine/logic/utils/thought_utils.py +54 -0
- ciris_engine/logic/utils/user_utils.py +70 -0
- ciris_engine/protocols/__init__.py +0 -0
- ciris_engine/protocols/adapters/__init__.py +35 -0
- ciris_engine/protocols/adapters/base.py +149 -0
- ciris_engine/protocols/adapters/configurable.py +265 -0
- ciris_engine/protocols/adapters/message.py +90 -0
- ciris_engine/protocols/audit/__init__.py +1 -0
- ciris_engine/protocols/buses/__init__.py +1 -0
- ciris_engine/protocols/config/__init__.py +1 -0
- ciris_engine/protocols/conscience/__init__.py +1 -0
- ciris_engine/protocols/consent.py +88 -0
- ciris_engine/protocols/context/__init__.py +1 -0
- ciris_engine/protocols/data/__init__.py +1 -0
- ciris_engine/protocols/dma/__init__.py +1 -0
- ciris_engine/protocols/dma/base.py +107 -0
- ciris_engine/protocols/faculties.py +34 -0
- ciris_engine/protocols/formatters/__init__.py +1 -0
- ciris_engine/protocols/handlers/__init__.py +1 -0
- ciris_engine/protocols/infrastructure/__init__.py +25 -0
- ciris_engine/protocols/infrastructure/base.py +377 -0
- ciris_engine/protocols/persistence/__init__.py +1 -0
- ciris_engine/protocols/pipeline_control.py +609 -0
- ciris_engine/protocols/processors/__init__.py +19 -0
- ciris_engine/protocols/processors/agent.py +299 -0
- ciris_engine/protocols/processors/base.py +130 -0
- ciris_engine/protocols/processors/orchestration.py +62 -0
- ciris_engine/protocols/registries/__init__.py +1 -0
- ciris_engine/protocols/runtime/__init__.py +1 -0
- ciris_engine/protocols/runtime/base.py +163 -0
- ciris_engine/protocols/secrets/__init__.py +1 -0
- ciris_engine/protocols/services/__init__.py +80 -0
- ciris_engine/protocols/services/adaptation/__init__.py +7 -0
- ciris_engine/protocols/services/adaptation/self_observation.py +265 -0
- ciris_engine/protocols/services/governance/__init__.py +20 -0
- ciris_engine/protocols/services/governance/communication.py +58 -0
- ciris_engine/protocols/services/governance/filter.py +56 -0
- ciris_engine/protocols/services/governance/visibility.py +32 -0
- ciris_engine/protocols/services/governance/wa_auth.py +192 -0
- ciris_engine/protocols/services/governance/wise_authority.py +75 -0
- ciris_engine/protocols/services/graph/__init__.py +19 -0
- ciris_engine/protocols/services/graph/audit.py +92 -0
- ciris_engine/protocols/services/graph/config.py +54 -0
- ciris_engine/protocols/services/graph/incident_management.py +103 -0
- ciris_engine/protocols/services/graph/memory.py +110 -0
- ciris_engine/protocols/services/graph/telemetry.py +51 -0
- ciris_engine/protocols/services/graph/tsdb_consolidation.py +87 -0
- ciris_engine/protocols/services/infrastructure/__init__.py +11 -0
- ciris_engine/protocols/services/infrastructure/authentication.py +159 -0
- ciris_engine/protocols/services/infrastructure/credit_gate.py +46 -0
- ciris_engine/protocols/services/infrastructure/database_maintenance.py +25 -0
- ciris_engine/protocols/services/infrastructure/resource_monitor.py +83 -0
- ciris_engine/protocols/services/lifecycle/__init__.py +13 -0
- ciris_engine/protocols/services/lifecycle/initialization.py +41 -0
- ciris_engine/protocols/services/lifecycle/scheduler.py +42 -0
- ciris_engine/protocols/services/lifecycle/shutdown.py +50 -0
- ciris_engine/protocols/services/lifecycle/time.py +31 -0
- ciris_engine/protocols/services/runtime/__init__.py +13 -0
- ciris_engine/protocols/services/runtime/llm.py +50 -0
- ciris_engine/protocols/services/runtime/runtime_control.py +193 -0
- ciris_engine/protocols/services/runtime/secrets.py +100 -0
- ciris_engine/protocols/services/runtime/tool.py +123 -0
- ciris_engine/protocols/telemetry/__init__.py +1 -0
- ciris_engine/protocols/utils/__init__.py +1 -0
- ciris_engine/schemas/__init__.py +112 -0
- ciris_engine/schemas/actions/__init__.py +37 -0
- ciris_engine/schemas/actions/parameters.py +137 -0
- ciris_engine/schemas/adapters/__init__.py +13 -0
- ciris_engine/schemas/adapters/cirisnode.py +135 -0
- ciris_engine/schemas/adapters/cli.py +97 -0
- ciris_engine/schemas/adapters/cli_tools.py +98 -0
- ciris_engine/schemas/adapters/discord.py +125 -0
- ciris_engine/schemas/adapters/graphql_core.py +144 -0
- ciris_engine/schemas/adapters/registration.py +47 -0
- ciris_engine/schemas/adapters/runtime_context.py +48 -0
- ciris_engine/schemas/adapters/tool_execution.py +45 -0
- ciris_engine/schemas/adapters/tools.py +96 -0
- ciris_engine/schemas/api/__init__.py +1 -0
- ciris_engine/schemas/api/agent.py +50 -0
- ciris_engine/schemas/api/audit.py +38 -0
- ciris_engine/schemas/api/auth.py +351 -0
- ciris_engine/schemas/api/config_security.py +242 -0
- ciris_engine/schemas/api/emergency.py +111 -0
- ciris_engine/schemas/api/responses.py +72 -0
- ciris_engine/schemas/api/runtime.py +26 -0
- ciris_engine/schemas/api/telemetry.py +109 -0
- ciris_engine/schemas/api/wa.py +90 -0
- ciris_engine/schemas/audit/__init__.py +13 -0
- ciris_engine/schemas/audit/core.py +139 -0
- ciris_engine/schemas/audit/hash_chain.py +58 -0
- ciris_engine/schemas/audit/verification.py +131 -0
- ciris_engine/schemas/buses/__init__.py +1 -0
- ciris_engine/schemas/config/__init__.py +41 -0
- ciris_engine/schemas/config/agent.py +279 -0
- ciris_engine/schemas/config/cognitive_state_behaviors.py +194 -0
- ciris_engine/schemas/config/default_dsar_sops.py +178 -0
- ciris_engine/schemas/config/essential.py +195 -0
- ciris_engine/schemas/config/tickets.py +86 -0
- ciris_engine/schemas/conscience/__init__.py +25 -0
- ciris_engine/schemas/conscience/context.py +34 -0
- ciris_engine/schemas/conscience/core.py +145 -0
- ciris_engine/schemas/conscience/results.py +24 -0
- ciris_engine/schemas/consent/__init__.py +5 -0
- ciris_engine/schemas/consent/core.py +404 -0
- ciris_engine/schemas/context/__init__.py +1 -0
- ciris_engine/schemas/covenant.py +382 -0
- ciris_engine/schemas/data/__init__.py +1 -0
- ciris_engine/schemas/dma/__init__.py +16 -0
- ciris_engine/schemas/dma/core.py +199 -0
- ciris_engine/schemas/dma/faculty.py +192 -0
- ciris_engine/schemas/dma/prompts.py +172 -0
- ciris_engine/schemas/dma/results.py +103 -0
- ciris_engine/schemas/formatters/__init__.py +1 -0
- ciris_engine/schemas/handlers/__init__.py +10 -0
- ciris_engine/schemas/handlers/context.py +119 -0
- ciris_engine/schemas/handlers/contexts.py +100 -0
- ciris_engine/schemas/handlers/core.py +167 -0
- ciris_engine/schemas/handlers/memory_schemas.py +67 -0
- ciris_engine/schemas/handlers/schemas.py +95 -0
- ciris_engine/schemas/identity.py +149 -0
- ciris_engine/schemas/infrastructure/__init__.py +1 -0
- ciris_engine/schemas/infrastructure/base.py +256 -0
- ciris_engine/schemas/infrastructure/behavioral_patterns.py +129 -0
- ciris_engine/schemas/infrastructure/feedback_loop.py +57 -0
- ciris_engine/schemas/infrastructure/identity_variance.py +141 -0
- ciris_engine/schemas/infrastructure/oauth.py +175 -0
- ciris_engine/schemas/infrastructure/wa_cli_wizard.py +54 -0
- ciris_engine/schemas/persistence/__init__.py +34 -0
- ciris_engine/schemas/persistence/core.py +140 -0
- ciris_engine/schemas/persistence/correlations.py +73 -0
- ciris_engine/schemas/persistence/postgres/__init__.py +1 -0
- ciris_engine/schemas/persistence/postgres/tables.py +280 -0
- ciris_engine/schemas/persistence/sqlite/__init__.py +1 -0
- ciris_engine/schemas/persistence/sqlite/tables.py +281 -0
- ciris_engine/schemas/platform.py +149 -0
- ciris_engine/schemas/processors/__init__.py +26 -0
- ciris_engine/schemas/processors/base.py +130 -0
- ciris_engine/schemas/processors/cognitive.py +77 -0
- ciris_engine/schemas/processors/context.py +35 -0
- ciris_engine/schemas/processors/core.py +152 -0
- ciris_engine/schemas/processors/dma.py +105 -0
- ciris_engine/schemas/processors/error.py +122 -0
- ciris_engine/schemas/processors/main.py +109 -0
- ciris_engine/schemas/processors/phase_results.py +21 -0
- ciris_engine/schemas/processors/results.py +99 -0
- ciris_engine/schemas/processors/solitude.py +79 -0
- ciris_engine/schemas/processors/state.py +202 -0
- ciris_engine/schemas/processors/state_example.py +177 -0
- ciris_engine/schemas/processors/states.py +21 -0
- ciris_engine/schemas/processors/status.py +34 -0
- ciris_engine/schemas/registries/__init__.py +1 -0
- ciris_engine/schemas/registries/base.py +66 -0
- ciris_engine/schemas/resources/__init__.py +15 -0
- ciris_engine/schemas/resources/crisis.py +315 -0
- ciris_engine/schemas/runtime/__init__.py +42 -0
- ciris_engine/schemas/runtime/adapter_management.py +186 -0
- ciris_engine/schemas/runtime/api.py +58 -0
- ciris_engine/schemas/runtime/audit.py +50 -0
- ciris_engine/schemas/runtime/bootstrap.py +33 -0
- ciris_engine/schemas/runtime/contexts.py +61 -0
- ciris_engine/schemas/runtime/core.py +161 -0
- ciris_engine/schemas/runtime/enums.py +167 -0
- ciris_engine/schemas/runtime/extended.py +232 -0
- ciris_engine/schemas/runtime/manifest.py +311 -0
- ciris_engine/schemas/runtime/memory.py +60 -0
- ciris_engine/schemas/runtime/messages.py +108 -0
- ciris_engine/schemas/runtime/models.py +156 -0
- ciris_engine/schemas/runtime/processing_context.py +43 -0
- ciris_engine/schemas/runtime/protocols_core.py +96 -0
- ciris_engine/schemas/runtime/resources.py +33 -0
- ciris_engine/schemas/runtime/system_context.py +417 -0
- ciris_engine/schemas/secrets/__init__.py +1 -0
- ciris_engine/schemas/secrets/core.py +267 -0
- ciris_engine/schemas/secrets/service.py +95 -0
- ciris_engine/schemas/services/__init__.py +33 -0
- ciris_engine/schemas/services/audit_summary_node.py +172 -0
- ciris_engine/schemas/services/authority/__init__.py +39 -0
- ciris_engine/schemas/services/authority/jwt.py +158 -0
- ciris_engine/schemas/services/authority/wa_updates.py +138 -0
- ciris_engine/schemas/services/authority/wise_authority.py +163 -0
- ciris_engine/schemas/services/authority_core.py +370 -0
- ciris_engine/schemas/services/capabilities.py +72 -0
- ciris_engine/schemas/services/community_core.py +95 -0
- ciris_engine/schemas/services/context.py +111 -0
- ciris_engine/schemas/services/conversation_summary_node.py +189 -0
- ciris_engine/schemas/services/core/__init__.py +153 -0
- ciris_engine/schemas/services/core/runtime.py +262 -0
- ciris_engine/schemas/services/core/runtime_config.py +117 -0
- ciris_engine/schemas/services/core/secrets.py +65 -0
- ciris_engine/schemas/services/correlation_node.py +179 -0
- ciris_engine/schemas/services/credit_gate.py +92 -0
- ciris_engine/schemas/services/discord_nodes.py +299 -0
- ciris_engine/schemas/services/feedback_core.py +131 -0
- ciris_engine/schemas/services/filters_core.py +270 -0
- ciris_engine/schemas/services/governance.py +26 -0
- ciris_engine/schemas/services/graph/__init__.py +26 -0
- ciris_engine/schemas/services/graph/attributes.py +254 -0
- ciris_engine/schemas/services/graph/audit.py +98 -0
- ciris_engine/schemas/services/graph/consolidation.py +338 -0
- ciris_engine/schemas/services/graph/edge_types.py +43 -0
- ciris_engine/schemas/services/graph/edges.py +88 -0
- ciris_engine/schemas/services/graph/incident.py +312 -0
- ciris_engine/schemas/services/graph/memory.py +84 -0
- ciris_engine/schemas/services/graph/node_data.py +174 -0
- ciris_engine/schemas/services/graph/query_results.py +82 -0
- ciris_engine/schemas/services/graph/telemetry.py +250 -0
- ciris_engine/schemas/services/graph/tsdb_consolidation.py +27 -0
- ciris_engine/schemas/services/graph/tsdb_models.py +107 -0
- ciris_engine/schemas/services/graph_core.py +196 -0
- ciris_engine/schemas/services/graph_typed_nodes.py +194 -0
- ciris_engine/schemas/services/infrastructure/__init__.py +1 -0
- ciris_engine/schemas/services/infrastructure/resource_monitor.py +20 -0
- ciris_engine/schemas/services/lifecycle/__init__.py +9 -0
- ciris_engine/schemas/services/lifecycle/initialization.py +33 -0
- ciris_engine/schemas/services/lifecycle/time.py +50 -0
- ciris_engine/schemas/services/llm.py +187 -0
- ciris_engine/schemas/services/metadata.py +43 -0
- ciris_engine/schemas/services/nodes.py +704 -0
- ciris_engine/schemas/services/operations.py +126 -0
- ciris_engine/schemas/services/requests.py +128 -0
- ciris_engine/schemas/services/resources_core.py +182 -0
- ciris_engine/schemas/services/runtime_control.py +1010 -0
- ciris_engine/schemas/services/shutdown.py +88 -0
- ciris_engine/schemas/services/special/__init__.py +0 -0
- ciris_engine/schemas/services/special/self_observation.py +396 -0
- ciris_engine/schemas/services/trace_summary_node.py +199 -0
- ciris_engine/schemas/services/visibility.py +98 -0
- ciris_engine/schemas/streaming/__init__.py +10 -0
- ciris_engine/schemas/streaming/reasoning_stream.py +95 -0
- ciris_engine/schemas/telemetry/__init__.py +0 -0
- ciris_engine/schemas/telemetry/collector.py +67 -0
- ciris_engine/schemas/telemetry/core.py +252 -0
- ciris_engine/schemas/telemetry/unified.py +59 -0
- ciris_engine/schemas/tools.py +72 -0
- ciris_engine/schemas/types.py +47 -0
- ciris_engine/schemas/utils/__init__.py +1 -0
- ciris_engine/schemas/utils/config_validator.py +54 -0
- ciris_engine/utils/__init__.py +1 -0
- ciris_engine/utils/serialization.py +35 -0
- ciris_sdk/__init__.py +124 -0
- ciris_sdk/auth_store.py +261 -0
- ciris_sdk/client.py +261 -0
- ciris_sdk/exceptions.py +73 -0
- ciris_sdk/model_types.py +258 -0
- ciris_sdk/models.py +354 -0
- ciris_sdk/pagination.py +214 -0
- ciris_sdk/rate_limiter.py +188 -0
- ciris_sdk/setup.py +17 -0
- ciris_sdk/telemetry_models.py +257 -0
- ciris_sdk/telemetry_responses.py +199 -0
- ciris_sdk/transport.py +177 -0
- ciris_sdk/websocket.py +400 -0
- main.py +766 -0
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Database Table Schemas v1 - PostgreSQL table definitions for CIRIS Agent
|
|
3
|
+
|
|
4
|
+
PostgreSQL-specific SQL DDL for all database tables.
|
|
5
|
+
Differences from SQLite:
|
|
6
|
+
- SERIAL instead of AUTOINCREMENT
|
|
7
|
+
- JSONB for better JSON performance
|
|
8
|
+
- Native timestamp types
|
|
9
|
+
- Different index syntax
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
# Tasks table for tracking agent tasks
|
|
13
|
+
# Note: images_json column is added by migration 010_add_images_to_tasks.sql
|
|
14
|
+
TASKS_TABLE_V1 = """
|
|
15
|
+
CREATE TABLE IF NOT EXISTS tasks (
|
|
16
|
+
task_id TEXT PRIMARY KEY,
|
|
17
|
+
channel_id TEXT NOT NULL,
|
|
18
|
+
description TEXT NOT NULL,
|
|
19
|
+
status TEXT NOT NULL,
|
|
20
|
+
priority INTEGER DEFAULT 0,
|
|
21
|
+
created_at TIMESTAMP NOT NULL,
|
|
22
|
+
updated_at TIMESTAMP NOT NULL,
|
|
23
|
+
parent_task_id TEXT,
|
|
24
|
+
context_json JSONB,
|
|
25
|
+
outcome_json JSONB,
|
|
26
|
+
retry_count INTEGER DEFAULT 0,
|
|
27
|
+
-- Task signing fields
|
|
28
|
+
signed_by TEXT,
|
|
29
|
+
signature TEXT,
|
|
30
|
+
signed_at TIMESTAMP
|
|
31
|
+
);
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
# Thoughts table for agent reasoning
|
|
35
|
+
THOUGHTS_TABLE_V1 = """
|
|
36
|
+
CREATE TABLE IF NOT EXISTS thoughts (
|
|
37
|
+
thought_id TEXT PRIMARY KEY,
|
|
38
|
+
source_task_id TEXT NOT NULL,
|
|
39
|
+
channel_id TEXT,
|
|
40
|
+
thought_type TEXT DEFAULT 'standard',
|
|
41
|
+
status TEXT NOT NULL,
|
|
42
|
+
created_at TIMESTAMP NOT NULL,
|
|
43
|
+
updated_at TIMESTAMP NOT NULL,
|
|
44
|
+
round_number INTEGER DEFAULT 0,
|
|
45
|
+
content TEXT NOT NULL,
|
|
46
|
+
context_json JSONB,
|
|
47
|
+
thought_depth INTEGER DEFAULT 0,
|
|
48
|
+
ponder_notes_json JSONB,
|
|
49
|
+
parent_thought_id TEXT,
|
|
50
|
+
final_action_json JSONB,
|
|
51
|
+
FOREIGN KEY (source_task_id) REFERENCES tasks(task_id)
|
|
52
|
+
);
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
# Feedback mappings for tracking responses
|
|
56
|
+
FEEDBACK_MAPPINGS_TABLE_V1 = """
|
|
57
|
+
CREATE TABLE IF NOT EXISTS feedback_mappings (
|
|
58
|
+
feedback_id TEXT PRIMARY KEY,
|
|
59
|
+
source_message_id TEXT,
|
|
60
|
+
target_thought_id TEXT,
|
|
61
|
+
feedback_type TEXT,
|
|
62
|
+
created_at TIMESTAMP NOT NULL
|
|
63
|
+
);
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
# Graph nodes for memory storage
|
|
67
|
+
GRAPH_NODES_TABLE_V1 = """
|
|
68
|
+
CREATE TABLE IF NOT EXISTS graph_nodes (
|
|
69
|
+
node_id TEXT NOT NULL,
|
|
70
|
+
scope TEXT NOT NULL,
|
|
71
|
+
node_type TEXT NOT NULL,
|
|
72
|
+
attributes_json JSONB,
|
|
73
|
+
version INTEGER DEFAULT 1,
|
|
74
|
+
updated_by TEXT,
|
|
75
|
+
updated_at TIMESTAMP,
|
|
76
|
+
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
77
|
+
PRIMARY KEY (node_id, scope)
|
|
78
|
+
);
|
|
79
|
+
CREATE INDEX IF NOT EXISTS idx_graph_nodes_scope ON graph_nodes(scope);
|
|
80
|
+
"""
|
|
81
|
+
|
|
82
|
+
# Graph edges for relationships
|
|
83
|
+
GRAPH_EDGES_TABLE_V1 = """
|
|
84
|
+
CREATE TABLE IF NOT EXISTS graph_edges (
|
|
85
|
+
edge_id TEXT PRIMARY KEY,
|
|
86
|
+
source_node_id TEXT NOT NULL,
|
|
87
|
+
target_node_id TEXT NOT NULL,
|
|
88
|
+
scope TEXT NOT NULL,
|
|
89
|
+
relationship TEXT NOT NULL,
|
|
90
|
+
weight REAL DEFAULT 1.0,
|
|
91
|
+
attributes_json JSONB,
|
|
92
|
+
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
93
|
+
FOREIGN KEY (source_node_id, scope) REFERENCES graph_nodes(node_id, scope),
|
|
94
|
+
FOREIGN KEY (target_node_id, scope) REFERENCES graph_nodes(node_id, scope)
|
|
95
|
+
);
|
|
96
|
+
CREATE INDEX IF NOT EXISTS idx_graph_edges_scope ON graph_edges(scope);
|
|
97
|
+
CREATE INDEX IF NOT EXISTS idx_graph_edges_source ON graph_edges(source_node_id);
|
|
98
|
+
CREATE INDEX IF NOT EXISTS idx_graph_edges_target ON graph_edges(target_node_id);
|
|
99
|
+
"""
|
|
100
|
+
|
|
101
|
+
# Service correlations with TSDB capabilities
|
|
102
|
+
SERVICE_CORRELATIONS_TABLE_V1 = """
|
|
103
|
+
CREATE TABLE IF NOT EXISTS service_correlations (
|
|
104
|
+
correlation_id TEXT PRIMARY KEY,
|
|
105
|
+
service_type TEXT NOT NULL,
|
|
106
|
+
handler_name TEXT NOT NULL,
|
|
107
|
+
action_type TEXT NOT NULL,
|
|
108
|
+
request_data JSONB,
|
|
109
|
+
response_data JSONB,
|
|
110
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
111
|
+
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
112
|
+
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
113
|
+
|
|
114
|
+
-- TSDB fields for unified telemetry storage
|
|
115
|
+
correlation_type TEXT NOT NULL DEFAULT 'service_interaction',
|
|
116
|
+
timestamp TIMESTAMP,
|
|
117
|
+
metric_name TEXT,
|
|
118
|
+
metric_value DOUBLE PRECISION,
|
|
119
|
+
log_level TEXT,
|
|
120
|
+
trace_id TEXT,
|
|
121
|
+
span_id TEXT,
|
|
122
|
+
parent_span_id TEXT,
|
|
123
|
+
tags JSONB,
|
|
124
|
+
retention_policy TEXT NOT NULL DEFAULT 'raw'
|
|
125
|
+
);
|
|
126
|
+
|
|
127
|
+
-- Core indexes
|
|
128
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_status ON service_correlations(status);
|
|
129
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_handler ON service_correlations(handler_name);
|
|
130
|
+
|
|
131
|
+
-- TSDB indexes for efficient queries
|
|
132
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_type ON service_correlations(correlation_type);
|
|
133
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_timestamp ON service_correlations(timestamp);
|
|
134
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_metric_name ON service_correlations(metric_name);
|
|
135
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_log_level ON service_correlations(log_level);
|
|
136
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_trace_id ON service_correlations(trace_id);
|
|
137
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_span_id ON service_correlations(span_id);
|
|
138
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_retention ON service_correlations(retention_policy);
|
|
139
|
+
|
|
140
|
+
-- Composite indexes for common TSDB query patterns
|
|
141
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_type_timestamp ON service_correlations(correlation_type, timestamp);
|
|
142
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_metric_timestamp ON service_correlations(metric_name, timestamp);
|
|
143
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_log_level_timestamp ON service_correlations(log_level, timestamp);
|
|
144
|
+
"""
|
|
145
|
+
|
|
146
|
+
# Audit log with hash chain and signatures
|
|
147
|
+
AUDIT_LOG_TABLE_V1 = """
|
|
148
|
+
CREATE TABLE IF NOT EXISTS audit_log (
|
|
149
|
+
entry_id SERIAL PRIMARY KEY,
|
|
150
|
+
event_id TEXT NOT NULL UNIQUE,
|
|
151
|
+
event_timestamp TIMESTAMP NOT NULL,
|
|
152
|
+
event_type TEXT NOT NULL,
|
|
153
|
+
originator_id TEXT NOT NULL,
|
|
154
|
+
event_payload JSONB,
|
|
155
|
+
|
|
156
|
+
-- Hash chain fields
|
|
157
|
+
sequence_number BIGINT NOT NULL UNIQUE CHECK(sequence_number > 0),
|
|
158
|
+
previous_hash TEXT NOT NULL,
|
|
159
|
+
entry_hash TEXT NOT NULL,
|
|
160
|
+
|
|
161
|
+
-- Signature fields
|
|
162
|
+
signature TEXT NOT NULL,
|
|
163
|
+
signing_key_id TEXT NOT NULL,
|
|
164
|
+
|
|
165
|
+
-- Indexing
|
|
166
|
+
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
167
|
+
);
|
|
168
|
+
|
|
169
|
+
-- Create indexes for efficient querying
|
|
170
|
+
CREATE INDEX IF NOT EXISTS idx_audit_event_type ON audit_log(event_type);
|
|
171
|
+
CREATE INDEX IF NOT EXISTS idx_audit_timestamp ON audit_log(event_timestamp);
|
|
172
|
+
CREATE INDEX IF NOT EXISTS idx_audit_originator ON audit_log(originator_id);
|
|
173
|
+
CREATE INDEX IF NOT EXISTS idx_audit_sequence ON audit_log(sequence_number);
|
|
174
|
+
"""
|
|
175
|
+
|
|
176
|
+
# Audit roots for Merkle tree verification
|
|
177
|
+
AUDIT_ROOTS_TABLE_V1 = """
|
|
178
|
+
CREATE TABLE IF NOT EXISTS audit_roots (
|
|
179
|
+
root_id SERIAL PRIMARY KEY,
|
|
180
|
+
sequence_start BIGINT NOT NULL,
|
|
181
|
+
sequence_end BIGINT NOT NULL,
|
|
182
|
+
root_hash TEXT NOT NULL,
|
|
183
|
+
timestamp TIMESTAMP NOT NULL,
|
|
184
|
+
external_anchor TEXT,
|
|
185
|
+
|
|
186
|
+
UNIQUE(sequence_start, sequence_end)
|
|
187
|
+
);
|
|
188
|
+
|
|
189
|
+
-- Create index for root lookup
|
|
190
|
+
CREATE INDEX IF NOT EXISTS idx_audit_roots_range ON audit_roots(sequence_start, sequence_end);
|
|
191
|
+
"""
|
|
192
|
+
|
|
193
|
+
# Audit signing keys
|
|
194
|
+
AUDIT_SIGNING_KEYS_TABLE_V1 = """
|
|
195
|
+
CREATE TABLE IF NOT EXISTS audit_signing_keys (
|
|
196
|
+
key_id TEXT PRIMARY KEY,
|
|
197
|
+
public_key TEXT NOT NULL,
|
|
198
|
+
algorithm TEXT NOT NULL DEFAULT 'rsa-pss' CHECK(algorithm IN ('rsa-pss', 'ed25519')),
|
|
199
|
+
key_size INTEGER NOT NULL DEFAULT 2048,
|
|
200
|
+
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
201
|
+
revoked_at TIMESTAMP
|
|
202
|
+
);
|
|
203
|
+
|
|
204
|
+
-- Create index for active key lookup
|
|
205
|
+
CREATE INDEX IF NOT EXISTS idx_audit_keys_active ON audit_signing_keys(created_at)
|
|
206
|
+
WHERE revoked_at IS NULL;
|
|
207
|
+
"""
|
|
208
|
+
|
|
209
|
+
# WA certificate table
|
|
210
|
+
WA_CERT_TABLE_V1 = """
|
|
211
|
+
CREATE TABLE IF NOT EXISTS wa_cert (
|
|
212
|
+
wa_id TEXT PRIMARY KEY,
|
|
213
|
+
name TEXT NOT NULL,
|
|
214
|
+
role TEXT CHECK(role IN ('root','authority','observer')),
|
|
215
|
+
pubkey TEXT NOT NULL,
|
|
216
|
+
jwt_kid TEXT NOT NULL UNIQUE,
|
|
217
|
+
password_hash TEXT,
|
|
218
|
+
api_key_hash TEXT,
|
|
219
|
+
oauth_provider TEXT,
|
|
220
|
+
oauth_external_id TEXT,
|
|
221
|
+
oauth_links_json JSONB,
|
|
222
|
+
veilid_id TEXT,
|
|
223
|
+
auto_minted INTEGER DEFAULT 0,
|
|
224
|
+
parent_wa_id TEXT,
|
|
225
|
+
parent_signature TEXT,
|
|
226
|
+
scopes_json JSONB NOT NULL,
|
|
227
|
+
custom_permissions_json JSONB,
|
|
228
|
+
adapter_id TEXT,
|
|
229
|
+
adapter_name TEXT,
|
|
230
|
+
adapter_metadata_json JSONB,
|
|
231
|
+
token_type TEXT DEFAULT 'standard',
|
|
232
|
+
created TIMESTAMP NOT NULL,
|
|
233
|
+
last_login TIMESTAMP,
|
|
234
|
+
active INTEGER DEFAULT 1,
|
|
235
|
+
|
|
236
|
+
-- Foreign key constraints
|
|
237
|
+
FOREIGN KEY (parent_wa_id) REFERENCES wa_cert(wa_id)
|
|
238
|
+
);
|
|
239
|
+
|
|
240
|
+
-- Performance and constraint indexes
|
|
241
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_wa_oauth ON wa_cert(oauth_provider, oauth_external_id)
|
|
242
|
+
WHERE oauth_provider IS NOT NULL;
|
|
243
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_wa_adapter ON wa_cert(adapter_id)
|
|
244
|
+
WHERE adapter_id IS NOT NULL;
|
|
245
|
+
CREATE INDEX IF NOT EXISTS idx_wa_pubkey ON wa_cert(pubkey);
|
|
246
|
+
CREATE INDEX IF NOT EXISTS idx_wa_active ON wa_cert(active);
|
|
247
|
+
CREATE INDEX IF NOT EXISTS idx_wa_jwt_kid ON wa_cert(jwt_kid);
|
|
248
|
+
CREATE INDEX IF NOT EXISTS idx_wa_role ON wa_cert(role);
|
|
249
|
+
CREATE INDEX IF NOT EXISTS idx_wa_parent ON wa_cert(parent_wa_id);
|
|
250
|
+
CREATE INDEX IF NOT EXISTS idx_wa_created ON wa_cert(created DESC);
|
|
251
|
+
CREATE INDEX IF NOT EXISTS idx_wa_token_type ON wa_cert(token_type);
|
|
252
|
+
"""
|
|
253
|
+
|
|
254
|
+
# All table definitions
|
|
255
|
+
ALL_TABLES = [
|
|
256
|
+
TASKS_TABLE_V1,
|
|
257
|
+
THOUGHTS_TABLE_V1,
|
|
258
|
+
FEEDBACK_MAPPINGS_TABLE_V1,
|
|
259
|
+
GRAPH_NODES_TABLE_V1,
|
|
260
|
+
GRAPH_EDGES_TABLE_V1,
|
|
261
|
+
SERVICE_CORRELATIONS_TABLE_V1,
|
|
262
|
+
AUDIT_LOG_TABLE_V1,
|
|
263
|
+
AUDIT_ROOTS_TABLE_V1,
|
|
264
|
+
AUDIT_SIGNING_KEYS_TABLE_V1,
|
|
265
|
+
WA_CERT_TABLE_V1,
|
|
266
|
+
]
|
|
267
|
+
|
|
268
|
+
__all__ = [
|
|
269
|
+
"TASKS_TABLE_V1",
|
|
270
|
+
"THOUGHTS_TABLE_V1",
|
|
271
|
+
"FEEDBACK_MAPPINGS_TABLE_V1",
|
|
272
|
+
"GRAPH_NODES_TABLE_V1",
|
|
273
|
+
"GRAPH_EDGES_TABLE_V1",
|
|
274
|
+
"SERVICE_CORRELATIONS_TABLE_V1",
|
|
275
|
+
"AUDIT_LOG_TABLE_V1",
|
|
276
|
+
"AUDIT_ROOTS_TABLE_V1",
|
|
277
|
+
"AUDIT_SIGNING_KEYS_TABLE_V1",
|
|
278
|
+
"WA_CERT_TABLE_V1",
|
|
279
|
+
"ALL_TABLES",
|
|
280
|
+
]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""SQLite persistence schemas."""
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Database Table Schemas v1 - SQLite table definitions for CIRIS Agent
|
|
3
|
+
|
|
4
|
+
Provides SQL DDL for all database tables used by the agent.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
# Tasks table for tracking agent tasks
|
|
8
|
+
# Note: images_json column is added by migration 010_add_images_to_tasks.sql
|
|
9
|
+
TASKS_TABLE_V1 = """
|
|
10
|
+
CREATE TABLE IF NOT EXISTS tasks (
|
|
11
|
+
task_id TEXT PRIMARY KEY,
|
|
12
|
+
channel_id TEXT NOT NULL,
|
|
13
|
+
description TEXT NOT NULL,
|
|
14
|
+
status TEXT NOT NULL,
|
|
15
|
+
priority INTEGER DEFAULT 0,
|
|
16
|
+
created_at TEXT NOT NULL,
|
|
17
|
+
updated_at TEXT NOT NULL,
|
|
18
|
+
parent_task_id TEXT,
|
|
19
|
+
context_json TEXT,
|
|
20
|
+
outcome_json TEXT,
|
|
21
|
+
retry_count INTEGER DEFAULT 0,
|
|
22
|
+
-- Task signing fields (from migration 003)
|
|
23
|
+
signed_by TEXT,
|
|
24
|
+
signature TEXT,
|
|
25
|
+
signed_at TEXT
|
|
26
|
+
);
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
# Thoughts table for agent reasoning
|
|
30
|
+
THOUGHTS_TABLE_V1 = """
|
|
31
|
+
CREATE TABLE IF NOT EXISTS thoughts (
|
|
32
|
+
thought_id TEXT PRIMARY KEY,
|
|
33
|
+
source_task_id TEXT NOT NULL,
|
|
34
|
+
channel_id TEXT,
|
|
35
|
+
thought_type TEXT DEFAULT 'standard',
|
|
36
|
+
status TEXT NOT NULL,
|
|
37
|
+
created_at TEXT NOT NULL,
|
|
38
|
+
updated_at TEXT NOT NULL,
|
|
39
|
+
round_number INTEGER DEFAULT 0,
|
|
40
|
+
content TEXT NOT NULL,
|
|
41
|
+
context_json TEXT,
|
|
42
|
+
thought_depth INTEGER DEFAULT 0,
|
|
43
|
+
ponder_notes_json TEXT,
|
|
44
|
+
parent_thought_id TEXT,
|
|
45
|
+
final_action_json TEXT,
|
|
46
|
+
FOREIGN KEY (source_task_id) REFERENCES tasks(task_id)
|
|
47
|
+
);
|
|
48
|
+
"""
|
|
49
|
+
|
|
50
|
+
# Feedback mappings for tracking responses
|
|
51
|
+
FEEDBACK_MAPPINGS_TABLE_V1 = """
|
|
52
|
+
CREATE TABLE IF NOT EXISTS feedback_mappings (
|
|
53
|
+
feedback_id TEXT PRIMARY KEY,
|
|
54
|
+
source_message_id TEXT,
|
|
55
|
+
target_thought_id TEXT,
|
|
56
|
+
feedback_type TEXT, -- 'identity' or 'environment'
|
|
57
|
+
created_at TEXT NOT NULL
|
|
58
|
+
);
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
# Graph nodes for memory storage
|
|
62
|
+
GRAPH_NODES_TABLE_V1 = """
|
|
63
|
+
CREATE TABLE IF NOT EXISTS graph_nodes (
|
|
64
|
+
node_id TEXT NOT NULL,
|
|
65
|
+
scope TEXT NOT NULL,
|
|
66
|
+
node_type TEXT NOT NULL,
|
|
67
|
+
attributes_json TEXT,
|
|
68
|
+
version INTEGER DEFAULT 1,
|
|
69
|
+
updated_by TEXT,
|
|
70
|
+
updated_at TEXT,
|
|
71
|
+
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
72
|
+
PRIMARY KEY (node_id, scope)
|
|
73
|
+
);
|
|
74
|
+
CREATE INDEX IF NOT EXISTS idx_graph_nodes_scope ON graph_nodes(scope);
|
|
75
|
+
"""
|
|
76
|
+
|
|
77
|
+
# Graph edges for relationships
|
|
78
|
+
GRAPH_EDGES_TABLE_V1 = """
|
|
79
|
+
CREATE TABLE IF NOT EXISTS graph_edges (
|
|
80
|
+
edge_id TEXT PRIMARY KEY,
|
|
81
|
+
source_node_id TEXT NOT NULL,
|
|
82
|
+
target_node_id TEXT NOT NULL,
|
|
83
|
+
scope TEXT NOT NULL,
|
|
84
|
+
relationship TEXT NOT NULL,
|
|
85
|
+
weight REAL DEFAULT 1.0,
|
|
86
|
+
attributes_json TEXT,
|
|
87
|
+
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
88
|
+
FOREIGN KEY (source_node_id, scope) REFERENCES graph_nodes(node_id, scope),
|
|
89
|
+
FOREIGN KEY (target_node_id, scope) REFERENCES graph_nodes(node_id, scope)
|
|
90
|
+
);
|
|
91
|
+
CREATE INDEX IF NOT EXISTS idx_graph_edges_scope ON graph_edges(scope);
|
|
92
|
+
CREATE INDEX IF NOT EXISTS idx_graph_edges_source ON graph_edges(source_node_id);
|
|
93
|
+
CREATE INDEX IF NOT EXISTS idx_graph_edges_target ON graph_edges(target_node_id);
|
|
94
|
+
"""
|
|
95
|
+
|
|
96
|
+
# Service correlations with TSDB capabilities
|
|
97
|
+
SERVICE_CORRELATIONS_TABLE_V1 = """
|
|
98
|
+
CREATE TABLE IF NOT EXISTS service_correlations (
|
|
99
|
+
correlation_id TEXT PRIMARY KEY,
|
|
100
|
+
service_type TEXT NOT NULL,
|
|
101
|
+
handler_name TEXT NOT NULL,
|
|
102
|
+
action_type TEXT NOT NULL,
|
|
103
|
+
request_data TEXT,
|
|
104
|
+
response_data TEXT,
|
|
105
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
106
|
+
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
107
|
+
updated_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
108
|
+
|
|
109
|
+
-- TSDB fields for unified telemetry storage
|
|
110
|
+
correlation_type TEXT NOT NULL DEFAULT 'service_interaction',
|
|
111
|
+
timestamp TEXT, -- ISO8601 timestamp for time queries
|
|
112
|
+
metric_name TEXT, -- For metric correlations
|
|
113
|
+
metric_value REAL, -- For metric correlations
|
|
114
|
+
log_level TEXT, -- For log correlations
|
|
115
|
+
trace_id TEXT, -- For distributed tracing
|
|
116
|
+
span_id TEXT, -- For trace spans
|
|
117
|
+
parent_span_id TEXT, -- For trace hierarchy
|
|
118
|
+
tags TEXT, -- JSON object for flexible tagging
|
|
119
|
+
retention_policy TEXT NOT NULL DEFAULT 'raw' -- raw, hourly_summary, daily_summary
|
|
120
|
+
);
|
|
121
|
+
|
|
122
|
+
-- Core indexes
|
|
123
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_status ON service_correlations(status);
|
|
124
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_handler ON service_correlations(handler_name);
|
|
125
|
+
|
|
126
|
+
-- TSDB indexes for efficient queries
|
|
127
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_type ON service_correlations(correlation_type);
|
|
128
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_timestamp ON service_correlations(timestamp);
|
|
129
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_metric_name ON service_correlations(metric_name);
|
|
130
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_log_level ON service_correlations(log_level);
|
|
131
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_trace_id ON service_correlations(trace_id);
|
|
132
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_span_id ON service_correlations(span_id);
|
|
133
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_retention ON service_correlations(retention_policy);
|
|
134
|
+
|
|
135
|
+
-- Composite indexes for common TSDB query patterns
|
|
136
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_type_timestamp ON service_correlations(correlation_type, timestamp);
|
|
137
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_metric_timestamp ON service_correlations(metric_name, timestamp);
|
|
138
|
+
CREATE INDEX IF NOT EXISTS idx_correlations_log_level_timestamp ON service_correlations(log_level, timestamp);
|
|
139
|
+
"""
|
|
140
|
+
|
|
141
|
+
# Audit log with hash chain and signatures
|
|
142
|
+
AUDIT_LOG_TABLE_V1 = """
|
|
143
|
+
CREATE TABLE IF NOT EXISTS audit_log (
|
|
144
|
+
entry_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
145
|
+
event_id TEXT NOT NULL UNIQUE, -- UUID for the event
|
|
146
|
+
event_timestamp TEXT NOT NULL, -- ISO8601
|
|
147
|
+
event_type TEXT NOT NULL,
|
|
148
|
+
originator_id TEXT NOT NULL,
|
|
149
|
+
event_payload TEXT, -- JSON payload
|
|
150
|
+
|
|
151
|
+
-- Hash chain fields
|
|
152
|
+
sequence_number INTEGER NOT NULL, -- Monotonic counter
|
|
153
|
+
previous_hash TEXT NOT NULL, -- SHA-256 of previous entry
|
|
154
|
+
entry_hash TEXT NOT NULL, -- SHA-256 of this entry's content
|
|
155
|
+
|
|
156
|
+
-- Signature fields
|
|
157
|
+
signature TEXT NOT NULL, -- Base64 encoded signature
|
|
158
|
+
signing_key_id TEXT NOT NULL, -- Key used to sign
|
|
159
|
+
|
|
160
|
+
-- Indexing
|
|
161
|
+
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
162
|
+
|
|
163
|
+
-- Constraints
|
|
164
|
+
UNIQUE(sequence_number),
|
|
165
|
+
CHECK(sequence_number > 0)
|
|
166
|
+
);
|
|
167
|
+
|
|
168
|
+
-- Create indexes for efficient querying
|
|
169
|
+
CREATE INDEX IF NOT EXISTS idx_audit_event_type ON audit_log(event_type);
|
|
170
|
+
CREATE INDEX IF NOT EXISTS idx_audit_timestamp ON audit_log(event_timestamp);
|
|
171
|
+
CREATE INDEX IF NOT EXISTS idx_audit_originator ON audit_log(originator_id);
|
|
172
|
+
CREATE INDEX IF NOT EXISTS idx_audit_sequence ON audit_log(sequence_number);
|
|
173
|
+
"""
|
|
174
|
+
|
|
175
|
+
# Audit roots for Merkle tree verification
|
|
176
|
+
AUDIT_ROOTS_TABLE_V1 = """
|
|
177
|
+
CREATE TABLE IF NOT EXISTS audit_roots (
|
|
178
|
+
root_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
179
|
+
sequence_start INTEGER NOT NULL,
|
|
180
|
+
sequence_end INTEGER NOT NULL,
|
|
181
|
+
root_hash TEXT NOT NULL, -- Merkle root of entries
|
|
182
|
+
timestamp TEXT NOT NULL,
|
|
183
|
+
external_anchor TEXT, -- External timestamp proof
|
|
184
|
+
|
|
185
|
+
UNIQUE(sequence_start, sequence_end)
|
|
186
|
+
);
|
|
187
|
+
|
|
188
|
+
-- Create index for root lookup
|
|
189
|
+
CREATE INDEX IF NOT EXISTS idx_audit_roots_range ON audit_roots(sequence_start, sequence_end);
|
|
190
|
+
"""
|
|
191
|
+
|
|
192
|
+
# Audit signing keys
|
|
193
|
+
AUDIT_SIGNING_KEYS_TABLE_V1 = """
|
|
194
|
+
CREATE TABLE IF NOT EXISTS audit_signing_keys (
|
|
195
|
+
key_id TEXT PRIMARY KEY,
|
|
196
|
+
public_key TEXT NOT NULL, -- PEM format public key
|
|
197
|
+
algorithm TEXT NOT NULL DEFAULT 'rsa-pss',
|
|
198
|
+
key_size INTEGER NOT NULL DEFAULT 2048,
|
|
199
|
+
created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
200
|
+
revoked_at TEXT, -- NULL if active
|
|
201
|
+
|
|
202
|
+
CHECK(algorithm IN ('rsa-pss', 'ed25519'))
|
|
203
|
+
);
|
|
204
|
+
|
|
205
|
+
-- Create index for active key lookup
|
|
206
|
+
CREATE INDEX IF NOT EXISTS idx_audit_keys_active ON audit_signing_keys(created_at)
|
|
207
|
+
WHERE revoked_at IS NULL;
|
|
208
|
+
"""
|
|
209
|
+
|
|
210
|
+
# WA certificate table
|
|
211
|
+
WA_CERT_TABLE_V1 = """
|
|
212
|
+
CREATE TABLE IF NOT EXISTS wa_cert (
|
|
213
|
+
wa_id TEXT PRIMARY KEY,
|
|
214
|
+
name TEXT NOT NULL,
|
|
215
|
+
role TEXT CHECK(role IN ('root','authority','observer')),
|
|
216
|
+
pubkey TEXT NOT NULL, -- base64url Ed25519
|
|
217
|
+
jwt_kid TEXT NOT NULL UNIQUE,
|
|
218
|
+
password_hash TEXT,
|
|
219
|
+
api_key_hash TEXT,
|
|
220
|
+
oauth_provider TEXT,
|
|
221
|
+
oauth_external_id TEXT,
|
|
222
|
+
oauth_links_json TEXT,
|
|
223
|
+
veilid_id TEXT,
|
|
224
|
+
auto_minted INTEGER DEFAULT 0, -- 1 = OAuth observer
|
|
225
|
+
parent_wa_id TEXT,
|
|
226
|
+
parent_signature TEXT,
|
|
227
|
+
scopes_json TEXT NOT NULL,
|
|
228
|
+
custom_permissions_json TEXT, -- Additional permissions beyond scopes
|
|
229
|
+
adapter_id TEXT, -- for adapter observers
|
|
230
|
+
adapter_name TEXT, -- Name of the adapter (Discord, CLI, etc)
|
|
231
|
+
adapter_metadata_json TEXT, -- Platform-specific metadata
|
|
232
|
+
token_type TEXT DEFAULT 'standard', -- 'channel'|'oauth'|'standard'
|
|
233
|
+
created TEXT NOT NULL,
|
|
234
|
+
last_login TEXT,
|
|
235
|
+
active INTEGER DEFAULT 1,
|
|
236
|
+
|
|
237
|
+
-- Foreign key constraints
|
|
238
|
+
FOREIGN KEY (parent_wa_id) REFERENCES wa_cert(wa_id)
|
|
239
|
+
);
|
|
240
|
+
|
|
241
|
+
-- Performance and constraint indexes
|
|
242
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_wa_oauth ON wa_cert(oauth_provider, oauth_external_id)
|
|
243
|
+
WHERE oauth_provider IS NOT NULL;
|
|
244
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_wa_adapter ON wa_cert(adapter_id)
|
|
245
|
+
WHERE adapter_id IS NOT NULL;
|
|
246
|
+
CREATE INDEX IF NOT EXISTS idx_wa_pubkey ON wa_cert(pubkey);
|
|
247
|
+
CREATE INDEX IF NOT EXISTS idx_wa_active ON wa_cert(active);
|
|
248
|
+
CREATE INDEX IF NOT EXISTS idx_wa_jwt_kid ON wa_cert(jwt_kid);
|
|
249
|
+
CREATE INDEX IF NOT EXISTS idx_wa_role ON wa_cert(role);
|
|
250
|
+
CREATE INDEX IF NOT EXISTS idx_wa_parent ON wa_cert(parent_wa_id);
|
|
251
|
+
CREATE INDEX IF NOT EXISTS idx_wa_created ON wa_cert(created DESC);
|
|
252
|
+
CREATE INDEX IF NOT EXISTS idx_wa_token_type ON wa_cert(token_type);
|
|
253
|
+
"""
|
|
254
|
+
|
|
255
|
+
# All table definitions
|
|
256
|
+
ALL_TABLES = [
|
|
257
|
+
TASKS_TABLE_V1,
|
|
258
|
+
THOUGHTS_TABLE_V1,
|
|
259
|
+
FEEDBACK_MAPPINGS_TABLE_V1,
|
|
260
|
+
GRAPH_NODES_TABLE_V1,
|
|
261
|
+
GRAPH_EDGES_TABLE_V1,
|
|
262
|
+
SERVICE_CORRELATIONS_TABLE_V1,
|
|
263
|
+
AUDIT_LOG_TABLE_V1,
|
|
264
|
+
AUDIT_ROOTS_TABLE_V1,
|
|
265
|
+
AUDIT_SIGNING_KEYS_TABLE_V1,
|
|
266
|
+
WA_CERT_TABLE_V1,
|
|
267
|
+
]
|
|
268
|
+
|
|
269
|
+
__all__ = [
|
|
270
|
+
"TASKS_TABLE_V1",
|
|
271
|
+
"THOUGHTS_TABLE_V1",
|
|
272
|
+
"FEEDBACK_MAPPINGS_TABLE_V1",
|
|
273
|
+
"GRAPH_NODES_TABLE_V1",
|
|
274
|
+
"GRAPH_EDGES_TABLE_V1",
|
|
275
|
+
"SERVICE_CORRELATIONS_TABLE_V1",
|
|
276
|
+
"AUDIT_LOG_TABLE_V1",
|
|
277
|
+
"AUDIT_ROOTS_TABLE_V1",
|
|
278
|
+
"AUDIT_SIGNING_KEYS_TABLE_V1",
|
|
279
|
+
"WA_CERT_TABLE_V1",
|
|
280
|
+
"ALL_TABLES",
|
|
281
|
+
]
|