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.
Files changed (986) hide show
  1. ciris_adapters/README.md +113 -0
  2. ciris_adapters/__init__.py +30 -0
  3. ciris_adapters/ciris_covenant_metrics/README.md +144 -0
  4. ciris_adapters/ciris_covenant_metrics/__init__.py +36 -0
  5. ciris_adapters/ciris_covenant_metrics/adapter.py +249 -0
  6. ciris_adapters/ciris_covenant_metrics/manifest.json +152 -0
  7. ciris_adapters/ciris_covenant_metrics/services.py +403 -0
  8. ciris_adapters/ciris_hosted_tools/__init__.py +24 -0
  9. ciris_adapters/ciris_hosted_tools/adapter.py +169 -0
  10. ciris_adapters/ciris_hosted_tools/manifest.json +94 -0
  11. ciris_adapters/ciris_hosted_tools/services.py +744 -0
  12. ciris_adapters/external_data_sql/README.md +559 -0
  13. ciris_adapters/external_data_sql/__init__.py +43 -0
  14. ciris_adapters/external_data_sql/adapter.py +144 -0
  15. ciris_adapters/external_data_sql/configurable.py +315 -0
  16. ciris_adapters/external_data_sql/dialects/__init__.py +37 -0
  17. ciris_adapters/external_data_sql/dialects/base.py +133 -0
  18. ciris_adapters/external_data_sql/dialects/mysql.py +63 -0
  19. ciris_adapters/external_data_sql/dialects/postgresql.py +59 -0
  20. ciris_adapters/external_data_sql/dialects/sqlite.py +62 -0
  21. ciris_adapters/external_data_sql/example_config.json +88 -0
  22. ciris_adapters/external_data_sql/example_privacy_schema.yaml +127 -0
  23. ciris_adapters/external_data_sql/manifest.json +195 -0
  24. ciris_adapters/external_data_sql/privacy_schema_loader.py +189 -0
  25. ciris_adapters/external_data_sql/protocol.py +101 -0
  26. ciris_adapters/external_data_sql/schemas.py +146 -0
  27. ciris_adapters/external_data_sql/service.py +1547 -0
  28. ciris_adapters/external_data_sql/service_old.py +492 -0
  29. ciris_adapters/home_assistant/__init__.py +63 -0
  30. ciris_adapters/home_assistant/adapter.py +201 -0
  31. ciris_adapters/home_assistant/communication_service.py +347 -0
  32. ciris_adapters/home_assistant/configurable.py +667 -0
  33. ciris_adapters/home_assistant/manifest.json +203 -0
  34. ciris_adapters/home_assistant/schemas.py +129 -0
  35. ciris_adapters/home_assistant/service.py +751 -0
  36. ciris_adapters/home_assistant/tool_service.py +441 -0
  37. ciris_adapters/mcp_client/__init__.py +82 -0
  38. ciris_adapters/mcp_client/adapter.py +847 -0
  39. ciris_adapters/mcp_client/config.py +280 -0
  40. ciris_adapters/mcp_client/configurable.py +422 -0
  41. ciris_adapters/mcp_client/manifest.json +185 -0
  42. ciris_adapters/mcp_client/mcp_communication_service.py +393 -0
  43. ciris_adapters/mcp_client/mcp_tool_service.py +463 -0
  44. ciris_adapters/mcp_client/mcp_wise_service.py +394 -0
  45. ciris_adapters/mcp_client/schemas.py +149 -0
  46. ciris_adapters/mcp_client/security.py +592 -0
  47. ciris_adapters/mcp_common/__init__.py +44 -0
  48. ciris_adapters/mcp_common/manifest.json +25 -0
  49. ciris_adapters/mcp_common/protocol.py +315 -0
  50. ciris_adapters/mcp_common/schemas.py +225 -0
  51. ciris_adapters/mcp_server/__init__.py +47 -0
  52. ciris_adapters/mcp_server/adapter.py +581 -0
  53. ciris_adapters/mcp_server/config.py +260 -0
  54. ciris_adapters/mcp_server/configurable.py +393 -0
  55. ciris_adapters/mcp_server/handlers.py +663 -0
  56. ciris_adapters/mcp_server/manifest.json +211 -0
  57. ciris_adapters/mcp_server/security.py +500 -0
  58. ciris_adapters/mock_llm/README.md +117 -0
  59. ciris_adapters/mock_llm/__init__.py +21 -0
  60. ciris_adapters/mock_llm/adapter.py +131 -0
  61. ciris_adapters/mock_llm/configurable.py +237 -0
  62. ciris_adapters/mock_llm/manifest.json +106 -0
  63. ciris_adapters/mock_llm/protocol.py +37 -0
  64. ciris_adapters/mock_llm/responses.py +520 -0
  65. ciris_adapters/mock_llm/responses_action_selection.py +1041 -0
  66. ciris_adapters/mock_llm/responses_epistemic.py +17 -0
  67. ciris_adapters/mock_llm/responses_feedback.py +27 -0
  68. ciris_adapters/mock_llm/schemas.py +35 -0
  69. ciris_adapters/mock_llm/service.py +294 -0
  70. ciris_adapters/navigation/__init__.py +21 -0
  71. ciris_adapters/navigation/adapter.py +129 -0
  72. ciris_adapters/navigation/configurable.py +239 -0
  73. ciris_adapters/navigation/manifest.json +104 -0
  74. ciris_adapters/navigation/service.py +487 -0
  75. ciris_adapters/reddit/README.md +132 -0
  76. ciris_adapters/reddit/REDDIT_ADAPTER_ANALYSIS.md +715 -0
  77. ciris_adapters/reddit/REDDIT_ADAPTER_SUMMARY.txt +278 -0
  78. ciris_adapters/reddit/REDDIT_ANALYSIS_INDEX.md +307 -0
  79. ciris_adapters/reddit/REDDIT_PRODUCTION_READINESS_PLAN.md +518 -0
  80. ciris_adapters/reddit/__init__.py +15 -0
  81. ciris_adapters/reddit/adapter.py +189 -0
  82. ciris_adapters/reddit/configurable.py +274 -0
  83. ciris_adapters/reddit/error_handler.py +307 -0
  84. ciris_adapters/reddit/manifest.json +218 -0
  85. ciris_adapters/reddit/observer.py +532 -0
  86. ciris_adapters/reddit/protocol.py +34 -0
  87. ciris_adapters/reddit/schemas.py +433 -0
  88. ciris_adapters/reddit/service.py +1471 -0
  89. ciris_adapters/sample_adapter/README.md +474 -0
  90. ciris_adapters/sample_adapter/__init__.py +45 -0
  91. ciris_adapters/sample_adapter/adapter.py +208 -0
  92. ciris_adapters/sample_adapter/configurable.py +469 -0
  93. ciris_adapters/sample_adapter/manifest.json +247 -0
  94. ciris_adapters/sample_adapter/services.py +486 -0
  95. ciris_adapters/weather/__init__.py +16 -0
  96. ciris_adapters/weather/adapter.py +130 -0
  97. ciris_adapters/weather/configurable.py +240 -0
  98. ciris_adapters/weather/manifest.json +156 -0
  99. ciris_adapters/weather/service.py +600 -0
  100. ciris_agent-1.7.7.dist-info/METADATA +284 -0
  101. ciris_agent-1.7.7.dist-info/RECORD +986 -0
  102. ciris_agent-1.7.7.dist-info/WHEEL +5 -0
  103. ciris_agent-1.7.7.dist-info/entry_points.txt +15 -0
  104. ciris_agent-1.7.7.dist-info/licenses/LICENSE +205 -0
  105. ciris_agent-1.7.7.dist-info/licenses/NOTICE +82 -0
  106. ciris_agent-1.7.7.dist-info/top_level.txt +4 -0
  107. ciris_engine/__init__.py +15 -0
  108. ciris_engine/ciris_templates/ally.yaml +632 -0
  109. ciris_engine/ciris_templates/default.yaml +411 -0
  110. ciris_engine/ciris_templates/echo-core.yaml +629 -0
  111. ciris_engine/ciris_templates/echo-speculative.yaml +764 -0
  112. ciris_engine/ciris_templates/echo.yaml +647 -0
  113. ciris_engine/ciris_templates/sage.yaml +332 -0
  114. ciris_engine/ciris_templates/scout.yaml +338 -0
  115. ciris_engine/ciris_templates/test.yaml +168 -0
  116. ciris_engine/cli.py +42 -0
  117. ciris_engine/config/CIRIS_SERVICES.json +19 -0
  118. ciris_engine/config/MODEL_CAPABILITIES.json +419 -0
  119. ciris_engine/config/PRICING_DATA.json +179 -0
  120. ciris_engine/config/__init__.py +50 -0
  121. ciris_engine/config/ciris_services.py +113 -0
  122. ciris_engine/config/model_capabilities.py +388 -0
  123. ciris_engine/config/pricing_models.py +276 -0
  124. ciris_engine/constants.py +35 -0
  125. ciris_engine/data/__init__.py +1 -0
  126. ciris_engine/data/covenant_1.0b.txt +978 -0
  127. ciris_engine/gui_static/11steps.svg +107 -0
  128. ciris_engine/gui_static/2x-schematics.png +0 -0
  129. ciris_engine/gui_static/404/index.html +1 -0
  130. ciris_engine/gui_static/404.html +1 -0
  131. ciris_engine/gui_static/_next/static/0edhkwDxd5UccTsCmtaBi/_buildManifest.js +1 -0
  132. ciris_engine/gui_static/_next/static/0edhkwDxd5UccTsCmtaBi/_ssgManifest.js +1 -0
  133. ciris_engine/gui_static/_next/static/U-3xTQao7hc2wnAi-Uekm/_buildManifest.js +1 -0
  134. ciris_engine/gui_static/_next/static/U-3xTQao7hc2wnAi-Uekm/_ssgManifest.js +1 -0
  135. ciris_engine/gui_static/_next/static/chunks/3297-60e86ba0f8a7b040.js +1 -0
  136. ciris_engine/gui_static/_next/static/chunks/3835-2aad4b7f5f8e4643.js +1 -0
  137. ciris_engine/gui_static/_next/static/chunks/4499-99a0bc47de0b8975.js +1 -0
  138. ciris_engine/gui_static/_next/static/chunks/4534-af88cd4ba6e99bff.js +1 -0
  139. ciris_engine/gui_static/_next/static/chunks/4541-84b455f9e0dc4cfe.js +1 -0
  140. ciris_engine/gui_static/_next/static/chunks/4789-61412711484754bb.js +1 -0
  141. ciris_engine/gui_static/_next/static/chunks/6539-c6398bc9d7018430.js +1 -0
  142. ciris_engine/gui_static/_next/static/chunks/704-8e827b26cc8c2d32.js +1 -0
  143. ciris_engine/gui_static/_next/static/chunks/704-fb45d630f3192c6f.js +1 -0
  144. ciris_engine/gui_static/_next/static/chunks/8072-de4952a2e6d2b33f.js +1 -0
  145. ciris_engine/gui_static/_next/static/chunks/8315-b91d03a3949db0af.js +1 -0
  146. ciris_engine/gui_static/_next/static/chunks/8386-f93a83ccbd789bd9.js +1 -0
  147. ciris_engine/gui_static/_next/static/chunks/87c73c54-781a7f35148d5433.js +1 -0
  148. ciris_engine/gui_static/_next/static/chunks/8903-fefea3339a02d41b.js +1 -0
  149. ciris_engine/gui_static/_next/static/chunks/9090-e66485adf8d9d990.js +1 -0
  150. ciris_engine/gui_static/_next/static/chunks/app/_not-found/page-a67d9808462c23b1.js +1 -0
  151. ciris_engine/gui_static/_next/static/chunks/app/account/api-keys/page-2d7ee1583bbbd02e.js +1 -0
  152. ciris_engine/gui_static/_next/static/chunks/app/account/api-keys/page-6a3c2bae6fe92b7b.js +1 -0
  153. ciris_engine/gui_static/_next/static/chunks/app/account/consent/page-2ed3a035136bc4e8.js +1 -0
  154. ciris_engine/gui_static/_next/static/chunks/app/account/consent/page-b2f5c91844a32422.js +1 -0
  155. ciris_engine/gui_static/_next/static/chunks/app/account/page-25b90f89af3ea58c.js +1 -0
  156. ciris_engine/gui_static/_next/static/chunks/app/account/page-b65d16c94ecaf69c.js +1 -0
  157. ciris_engine/gui_static/_next/static/chunks/app/account/privacy/page-675b6d05c8f9184f.js +1 -0
  158. ciris_engine/gui_static/_next/static/chunks/app/account/privacy/page-cbee2e1c8ab52145.js +1 -0
  159. ciris_engine/gui_static/_next/static/chunks/app/account/settings/page-0f44da06697cf9f0.js +1 -0
  160. ciris_engine/gui_static/_next/static/chunks/app/account/settings/page-563420253577edbf.js +1 -0
  161. ciris_engine/gui_static/_next/static/chunks/app/adapters/page-1854631018bc32be.js +1 -0
  162. ciris_engine/gui_static/_next/static/chunks/app/agents/page-8353752c176a7c70.js +1 -0
  163. ciris_engine/gui_static/_next/static/chunks/app/agents/page-f61a529f110a6040.js +1 -0
  164. ciris_engine/gui_static/_next/static/chunks/app/api-demo/page-7f19b9d20d39be28.js +1 -0
  165. ciris_engine/gui_static/_next/static/chunks/app/api-demo/page-d1063938f249b8bd.js +1 -0
  166. ciris_engine/gui_static/_next/static/chunks/app/audit/page-321b6728b8fff0bb.js +1 -0
  167. ciris_engine/gui_static/_next/static/chunks/app/audit/page-ebac35ca961a1277.js +1 -0
  168. ciris_engine/gui_static/_next/static/chunks/app/billing/page-6f3dc3bd02924f8e.js +1 -0
  169. ciris_engine/gui_static/_next/static/chunks/app/billing/page-fa4a469f814c821a.js +1 -0
  170. ciris_engine/gui_static/_next/static/chunks/app/comms/page-0d4f734269addd8f.js +1 -0
  171. ciris_engine/gui_static/_next/static/chunks/app/comms/page-79227d426050089c.js +1 -0
  172. ciris_engine/gui_static/_next/static/chunks/app/config/page-018d21d683b6e5bc.js +1 -0
  173. ciris_engine/gui_static/_next/static/chunks/app/config/page-2aa5a5363ca2a371.js +1 -0
  174. ciris_engine/gui_static/_next/static/chunks/app/consent/page-198373205fd316e2.js +1 -0
  175. ciris_engine/gui_static/_next/static/chunks/app/consent/page-f2ca39e7713b13f8.js +1 -0
  176. ciris_engine/gui_static/_next/static/chunks/app/dashboard/page-1dd5a196f643c60d.js +1 -0
  177. ciris_engine/gui_static/_next/static/chunks/app/dashboard/page-530a04d3abbb8cda.js +1 -0
  178. ciris_engine/gui_static/_next/static/chunks/app/docs/page-3193b06d094ab654.js +1 -0
  179. ciris_engine/gui_static/_next/static/chunks/app/docs/page-330e996dedb87aba.js +1 -0
  180. ciris_engine/gui_static/_next/static/chunks/app/layout-0a70f5fc460298b1.js +1 -0
  181. ciris_engine/gui_static/_next/static/chunks/app/layout-21f2f99dd5b336e9.js +1 -0
  182. ciris_engine/gui_static/_next/static/chunks/app/login/page-33240e6c6034a49d.js +1 -0
  183. ciris_engine/gui_static/_next/static/chunks/app/login/page-68ffab6d54a7fdcd.js +1 -0
  184. ciris_engine/gui_static/_next/static/chunks/app/logs/page-8a6167aecc4a475c.js +1 -0
  185. ciris_engine/gui_static/_next/static/chunks/app/memory/page-9ca8c5d0056de3ff.js +1 -0
  186. ciris_engine/gui_static/_next/static/chunks/app/memory/page-e961226941c18f81.js +1 -0
  187. ciris_engine/gui_static/_next/static/chunks/app/page-6fdb065a787a4974.js +1 -0
  188. ciris_engine/gui_static/_next/static/chunks/app/page-89f87d431be6064a.js +1 -0
  189. ciris_engine/gui_static/_next/static/chunks/app/runtime/page-2e728b9c43aa164d.js +1 -0
  190. ciris_engine/gui_static/_next/static/chunks/app/runtime/page-c7dd033dc40a72f0.js +1 -0
  191. ciris_engine/gui_static/_next/static/chunks/app/services/page-ae9f0bdf11d01a95.js +1 -0
  192. ciris_engine/gui_static/_next/static/chunks/app/services/page-b10feb79ca5d75e5.js +1 -0
  193. ciris_engine/gui_static/_next/static/chunks/app/sessions/page-13ebe7ef1c16ae11.js +1 -0
  194. ciris_engine/gui_static/_next/static/chunks/app/sessions/page-e6c82b16d617f785.js +1 -0
  195. ciris_engine/gui_static/_next/static/chunks/app/setup/page-0beb5f5b5a5c20fc.js +1 -0
  196. ciris_engine/gui_static/_next/static/chunks/app/setup/page-2595e729eae30c0e.js +1 -0
  197. ciris_engine/gui_static/_next/static/chunks/app/status-dashboard/page-1037c987aecc3653.js +1 -0
  198. ciris_engine/gui_static/_next/static/chunks/app/status-dashboard/page-2ffd147f6d3162ff.js +1 -0
  199. ciris_engine/gui_static/_next/static/chunks/app/system/page-2c5798d58cafcd91.js +1 -0
  200. ciris_engine/gui_static/_next/static/chunks/app/system/page-505b1ba4eceb01c3.js +1 -0
  201. ciris_engine/gui_static/_next/static/chunks/app/test-auth/page-b0cad31d5cb1b2fa.js +1 -0
  202. ciris_engine/gui_static/_next/static/chunks/app/test-auth/page-f3ecd7a8012df230.js +1 -0
  203. ciris_engine/gui_static/_next/static/chunks/app/test-login/page-f35117fdc4105801.js +1 -0
  204. ciris_engine/gui_static/_next/static/chunks/app/test-login/page-fb583a7924114906.js +1 -0
  205. ciris_engine/gui_static/_next/static/chunks/app/test-sdk/page-50f116fd76935563.js +1 -0
  206. ciris_engine/gui_static/_next/static/chunks/app/test-sdk/page-c37d8aa5ba623a44.js +1 -0
  207. ciris_engine/gui_static/_next/static/chunks/app/tools/page-429aec7a707777ef.js +1 -0
  208. ciris_engine/gui_static/_next/static/chunks/app/tools/page-5f705aad60e0c04e.js +1 -0
  209. ciris_engine/gui_static/_next/static/chunks/app/users/page-13476b8b0f3808cc.js +1 -0
  210. ciris_engine/gui_static/_next/static/chunks/app/users/page-7e500d154ed5bba4.js +1 -0
  211. ciris_engine/gui_static/_next/static/chunks/app/wa/page-cc4a9d8a5cb44d08.js +1 -0
  212. ciris_engine/gui_static/_next/static/chunks/app/wa/page-ec3e429efbc79230.js +1 -0
  213. ciris_engine/gui_static/_next/static/chunks/framework-9d29490f5ba089ba.js +1 -0
  214. ciris_engine/gui_static/_next/static/chunks/main-1f554952e47a82c4.js +1 -0
  215. ciris_engine/gui_static/_next/static/chunks/main-app-26fa8aed029082e5.js +1 -0
  216. ciris_engine/gui_static/_next/static/chunks/main-app-97b0486ef6bcef25.js +1 -0
  217. ciris_engine/gui_static/_next/static/chunks/pages/_app-6ce685456e616eb2.js +1 -0
  218. ciris_engine/gui_static/_next/static/chunks/pages/_error-d4bce98d93fe21e7.js +1 -0
  219. ciris_engine/gui_static/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  220. ciris_engine/gui_static/_next/static/chunks/webpack-fcebd240b7f8477d.js +1 -0
  221. ciris_engine/gui_static/_next/static/css/16b94b1fe0cc6e37.css +3 -0
  222. ciris_engine/gui_static/_next/static/css/77a24ceaae86deff.css +3 -0
  223. ciris_engine/gui_static/_next/static/media/4cf2300e9c8272f7-s.p.woff2 +0 -0
  224. ciris_engine/gui_static/_next/static/media/747892c23ea88013-s.woff2 +0 -0
  225. ciris_engine/gui_static/_next/static/media/8d697b304b401681-s.woff2 +0 -0
  226. ciris_engine/gui_static/_next/static/media/93f479601ee12b01-s.p.woff2 +0 -0
  227. ciris_engine/gui_static/_next/static/media/9610d9e46709d722-s.woff2 +0 -0
  228. ciris_engine/gui_static/_next/static/media/ba015fad6dcf6784-s.woff2 +0 -0
  229. ciris_engine/gui_static/_next/static/media/d8298875641ec7d4-s.p.woff2 +0 -0
  230. ciris_engine/gui_static/account/api-keys/index.html +1 -0
  231. ciris_engine/gui_static/account/api-keys/index.txt +27 -0
  232. ciris_engine/gui_static/account/consent/index.html +1 -0
  233. ciris_engine/gui_static/account/consent/index.txt +27 -0
  234. ciris_engine/gui_static/account/index.html +1 -0
  235. ciris_engine/gui_static/account/index.txt +27 -0
  236. ciris_engine/gui_static/account/privacy/index.html +1 -0
  237. ciris_engine/gui_static/account/privacy/index.txt +27 -0
  238. ciris_engine/gui_static/account/settings/index.html +1 -0
  239. ciris_engine/gui_static/account/settings/index.txt +27 -0
  240. ciris_engine/gui_static/adapters/index.html +1 -0
  241. ciris_engine/gui_static/adapters/index.txt +27 -0
  242. ciris_engine/gui_static/agents/index.html +1 -0
  243. ciris_engine/gui_static/agents/index.txt +27 -0
  244. ciris_engine/gui_static/andrew-roberts-euBRXcx57T4-unsplash.jpg +0 -0
  245. ciris_engine/gui_static/api-demo/index.html +1 -0
  246. ciris_engine/gui_static/api-demo/index.txt +27 -0
  247. ciris_engine/gui_static/audit/index.html +1 -0
  248. ciris_engine/gui_static/audit/index.txt +27 -0
  249. ciris_engine/gui_static/billing/index.html +1 -0
  250. ciris_engine/gui_static/billing/index.txt +27 -0
  251. ciris_engine/gui_static/blurryinfo.png +0 -0
  252. ciris_engine/gui_static/chip-vincent-PkQDwfl9Flc-unsplash.jpg +0 -0
  253. ciris_engine/gui_static/ciris-architecture.svg +338 -0
  254. ciris_engine/gui_static/comms/index.html +1 -0
  255. ciris_engine/gui_static/comms/index.txt +27 -0
  256. ciris_engine/gui_static/config/index.html +1 -0
  257. ciris_engine/gui_static/config/index.txt +27 -0
  258. ciris_engine/gui_static/consent/index.html +1 -0
  259. ciris_engine/gui_static/consent/index.txt +27 -0
  260. ciris_engine/gui_static/dashboard/index.html +1 -0
  261. ciris_engine/gui_static/dashboard/index.txt +27 -0
  262. ciris_engine/gui_static/docs/index.html +1 -0
  263. ciris_engine/gui_static/docs/index.txt +27 -0
  264. ciris_engine/gui_static/eric.png +0 -0
  265. ciris_engine/gui_static/file.svg +1 -0
  266. ciris_engine/gui_static/globe.svg +1 -0
  267. ciris_engine/gui_static/index.html +1 -0
  268. ciris_engine/gui_static/index.txt +27 -0
  269. ciris_engine/gui_static/infogfx-1@2x.png +0 -0
  270. ciris_engine/gui_static/infogfx-2.png +0 -0
  271. ciris_engine/gui_static/infogfx-dark-1.png +0 -0
  272. ciris_engine/gui_static/kelly-vohs-soSTXmIxTDU-unsplash.jpg +0 -0
  273. ciris_engine/gui_static/login/index.html +1 -0
  274. ciris_engine/gui_static/login/index.txt +27 -0
  275. ciris_engine/gui_static/logs/index.html +1 -0
  276. ciris_engine/gui_static/logs/index.txt +27 -0
  277. ciris_engine/gui_static/memory/index.html +1 -0
  278. ciris_engine/gui_static/memory/index.txt +27 -0
  279. ciris_engine/gui_static/nathan-farrish-ArcTfEoBgzs-unsplash.jpg +0 -0
  280. ciris_engine/gui_static/next.svg +1 -0
  281. ciris_engine/gui_static/overview.svg +512 -0
  282. ciris_engine/gui_static/overview1.svg +407 -0
  283. ciris_engine/gui_static/overview2.svg +370 -0
  284. ciris_engine/gui_static/pipeline-visualization.svg +278 -0
  285. ciris_engine/gui_static/privacy-policy.html +160 -0
  286. ciris_engine/gui_static/runtime/index.html +8 -0
  287. ciris_engine/gui_static/runtime/index.txt +27 -0
  288. ciris_engine/gui_static/services/index.html +1 -0
  289. ciris_engine/gui_static/services/index.txt +27 -0
  290. ciris_engine/gui_static/sessions/index.html +1 -0
  291. ciris_engine/gui_static/sessions/index.txt +27 -0
  292. ciris_engine/gui_static/setup/index.html +1 -0
  293. ciris_engine/gui_static/setup/index.txt +27 -0
  294. ciris_engine/gui_static/status-dashboard/index.html +1 -0
  295. ciris_engine/gui_static/status-dashboard/index.txt +27 -0
  296. ciris_engine/gui_static/system/index.html +1 -0
  297. ciris_engine/gui_static/system/index.txt +27 -0
  298. ciris_engine/gui_static/terms-of-service.html +174 -0
  299. ciris_engine/gui_static/test-auth/index.html +1 -0
  300. ciris_engine/gui_static/test-auth/index.txt +27 -0
  301. ciris_engine/gui_static/test-login/index.html +1 -0
  302. ciris_engine/gui_static/test-login/index.txt +27 -0
  303. ciris_engine/gui_static/test-sdk/index.html +1 -0
  304. ciris_engine/gui_static/test-sdk/index.txt +27 -0
  305. ciris_engine/gui_static/tools/index.html +1 -0
  306. ciris_engine/gui_static/tools/index.txt +27 -0
  307. ciris_engine/gui_static/users/index.html +1 -0
  308. ciris_engine/gui_static/users/index.txt +27 -0
  309. ciris_engine/gui_static/vercel.svg +1 -0
  310. ciris_engine/gui_static/videos/video1.mp4 +0 -0
  311. ciris_engine/gui_static/videos/video3.mp4 +0 -0
  312. ciris_engine/gui_static/wa/index.html +1 -0
  313. ciris_engine/gui_static/wa/index.txt +27 -0
  314. ciris_engine/gui_static/window.svg +1 -0
  315. ciris_engine/logic/__init__.py +8 -0
  316. ciris_engine/logic/adapters/__init__.py +74 -0
  317. ciris_engine/logic/adapters/api/__init__.py +5 -0
  318. ciris_engine/logic/adapters/api/adapter.py +1037 -0
  319. ciris_engine/logic/adapters/api/api_communication.py +370 -0
  320. ciris_engine/logic/adapters/api/api_document.py +330 -0
  321. ciris_engine/logic/adapters/api/api_observer.py +24 -0
  322. ciris_engine/logic/adapters/api/api_runtime_control.py +388 -0
  323. ciris_engine/logic/adapters/api/api_tools.py +299 -0
  324. ciris_engine/logic/adapters/api/api_vision.py +215 -0
  325. ciris_engine/logic/adapters/api/app.py +272 -0
  326. ciris_engine/logic/adapters/api/auth.py +159 -0
  327. ciris_engine/logic/adapters/api/config.py +101 -0
  328. ciris_engine/logic/adapters/api/constants.py +55 -0
  329. ciris_engine/logic/adapters/api/dependencies/__init__.py +1 -0
  330. ciris_engine/logic/adapters/api/dependencies/auth.py +260 -0
  331. ciris_engine/logic/adapters/api/endpoints/__init__.py +1 -0
  332. ciris_engine/logic/adapters/api/endpoints/emergency.py +86 -0
  333. ciris_engine/logic/adapters/api/middleware/__init__.py +1 -0
  334. ciris_engine/logic/adapters/api/middleware/rate_limiter.py +302 -0
  335. ciris_engine/logic/adapters/api/models.py +29 -0
  336. ciris_engine/logic/adapters/api/routes/__init__.py +52 -0
  337. ciris_engine/logic/adapters/api/routes/agent.py +1762 -0
  338. ciris_engine/logic/adapters/api/routes/audit.py +707 -0
  339. ciris_engine/logic/adapters/api/routes/auth.py +1745 -0
  340. ciris_engine/logic/adapters/api/routes/billing.py +895 -0
  341. ciris_engine/logic/adapters/api/routes/config.py +329 -0
  342. ciris_engine/logic/adapters/api/routes/connectors.py +534 -0
  343. ciris_engine/logic/adapters/api/routes/consent.py +637 -0
  344. ciris_engine/logic/adapters/api/routes/dsar.py +637 -0
  345. ciris_engine/logic/adapters/api/routes/dsar_multi_source.py +484 -0
  346. ciris_engine/logic/adapters/api/routes/emergency.py +302 -0
  347. ciris_engine/logic/adapters/api/routes/memory.py +733 -0
  348. ciris_engine/logic/adapters/api/routes/memory_filters.py +230 -0
  349. ciris_engine/logic/adapters/api/routes/memory_models.py +112 -0
  350. ciris_engine/logic/adapters/api/routes/memory_queries.py +236 -0
  351. ciris_engine/logic/adapters/api/routes/memory_query_helpers.py +394 -0
  352. ciris_engine/logic/adapters/api/routes/memory_visualization.py +359 -0
  353. ciris_engine/logic/adapters/api/routes/memory_visualization_helpers.py +110 -0
  354. ciris_engine/logic/adapters/api/routes/partnership.py +541 -0
  355. ciris_engine/logic/adapters/api/routes/setup.py +1374 -0
  356. ciris_engine/logic/adapters/api/routes/system.py +3049 -0
  357. ciris_engine/logic/adapters/api/routes/system_extensions.py +952 -0
  358. ciris_engine/logic/adapters/api/routes/telemetry.py +1987 -0
  359. ciris_engine/logic/adapters/api/routes/telemetry_converters.py +141 -0
  360. ciris_engine/logic/adapters/api/routes/telemetry_helpers.py +111 -0
  361. ciris_engine/logic/adapters/api/routes/telemetry_logs_reader.py +280 -0
  362. ciris_engine/logic/adapters/api/routes/telemetry_metrics.py +131 -0
  363. ciris_engine/logic/adapters/api/routes/telemetry_models.py +190 -0
  364. ciris_engine/logic/adapters/api/routes/telemetry_otlp.py +878 -0
  365. ciris_engine/logic/adapters/api/routes/telemetry_resource_helpers.py +191 -0
  366. ciris_engine/logic/adapters/api/routes/tickets.py +541 -0
  367. ciris_engine/logic/adapters/api/routes/tools.py +556 -0
  368. ciris_engine/logic/adapters/api/routes/transparency.py +281 -0
  369. ciris_engine/logic/adapters/api/routes/users.py +981 -0
  370. ciris_engine/logic/adapters/api/routes/verification.py +373 -0
  371. ciris_engine/logic/adapters/api/routes/wa.py +369 -0
  372. ciris_engine/logic/adapters/api/service_configuration.py +177 -0
  373. ciris_engine/logic/adapters/api/services/__init__.py +1 -0
  374. ciris_engine/logic/adapters/api/services/auth_service.py +1417 -0
  375. ciris_engine/logic/adapters/api/services/oauth_security.py +68 -0
  376. ciris_engine/logic/adapters/base.py +141 -0
  377. ciris_engine/logic/adapters/base_adapter.py +73 -0
  378. ciris_engine/logic/adapters/base_observer.py +1141 -0
  379. ciris_engine/logic/adapters/base_vision.py +312 -0
  380. ciris_engine/logic/adapters/cirisnode_client.py +307 -0
  381. ciris_engine/logic/adapters/cli/__init__.py +3 -0
  382. ciris_engine/logic/adapters/cli/adapter.py +207 -0
  383. ciris_engine/logic/adapters/cli/cli_adapter.py +902 -0
  384. ciris_engine/logic/adapters/cli/cli_observer.py +268 -0
  385. ciris_engine/logic/adapters/cli/cli_tools.py +427 -0
  386. ciris_engine/logic/adapters/cli/cli_wa_service.py +134 -0
  387. ciris_engine/logic/adapters/cli/config.py +73 -0
  388. ciris_engine/logic/adapters/discord/__init__.py +3 -0
  389. ciris_engine/logic/adapters/discord/adapter.py +783 -0
  390. ciris_engine/logic/adapters/discord/ciris_discord_client.py +159 -0
  391. ciris_engine/logic/adapters/discord/config.py +177 -0
  392. ciris_engine/logic/adapters/discord/constants.py +185 -0
  393. ciris_engine/logic/adapters/discord/discord-stubs.pyi +50 -0
  394. ciris_engine/logic/adapters/discord/discord_adapter.py +1584 -0
  395. ciris_engine/logic/adapters/discord/discord_audit.py +150 -0
  396. ciris_engine/logic/adapters/discord/discord_channel_manager.py +351 -0
  397. ciris_engine/logic/adapters/discord/discord_connection_manager.py +313 -0
  398. ciris_engine/logic/adapters/discord/discord_embed_formatter.py +369 -0
  399. ciris_engine/logic/adapters/discord/discord_error_classifier.py +302 -0
  400. ciris_engine/logic/adapters/discord/discord_error_handler.py +316 -0
  401. ciris_engine/logic/adapters/discord/discord_guidance_handler.py +460 -0
  402. ciris_engine/logic/adapters/discord/discord_message_handler.py +207 -0
  403. ciris_engine/logic/adapters/discord/discord_observer.py +670 -0
  404. ciris_engine/logic/adapters/discord/discord_rate_limiter.py +249 -0
  405. ciris_engine/logic/adapters/discord/discord_reaction_handler.py +278 -0
  406. ciris_engine/logic/adapters/discord/discord_tool_handler.py +465 -0
  407. ciris_engine/logic/adapters/discord/discord_tool_service.py +790 -0
  408. ciris_engine/logic/adapters/discord/discord_tools.py +90 -0
  409. ciris_engine/logic/adapters/discord/discord_vision_helper.py +148 -0
  410. ciris_engine/logic/adapters/discord/py.typed +0 -0
  411. ciris_engine/logic/adapters/document_parser.py +320 -0
  412. ciris_engine/logic/audit/__init__.py +10 -0
  413. ciris_engine/logic/audit/hash_chain.py +313 -0
  414. ciris_engine/logic/audit/signature_manager.py +352 -0
  415. ciris_engine/logic/audit/verifier.py +408 -0
  416. ciris_engine/logic/buses/__init__.py +21 -0
  417. ciris_engine/logic/buses/base_bus.py +178 -0
  418. ciris_engine/logic/buses/bus_manager.py +121 -0
  419. ciris_engine/logic/buses/communication_bus.py +387 -0
  420. ciris_engine/logic/buses/llm_bus.py +722 -0
  421. ciris_engine/logic/buses/memory_bus.py +577 -0
  422. ciris_engine/logic/buses/prohibitions.py +502 -0
  423. ciris_engine/logic/buses/runtime_control_bus.py +539 -0
  424. ciris_engine/logic/buses/tool_bus.py +482 -0
  425. ciris_engine/logic/buses/wise_bus.py +684 -0
  426. ciris_engine/logic/config/__init__.py +25 -0
  427. ciris_engine/logic/config/bootstrap.py +255 -0
  428. ciris_engine/logic/config/config_accessor.py +202 -0
  429. ciris_engine/logic/config/db_paths.py +194 -0
  430. ciris_engine/logic/config/env_utils.py +39 -0
  431. ciris_engine/logic/conscience/__init__.py +16 -0
  432. ciris_engine/logic/conscience/build_deferral_package.py +0 -0
  433. ciris_engine/logic/conscience/core.py +688 -0
  434. ciris_engine/logic/conscience/interface.py +33 -0
  435. ciris_engine/logic/conscience/registry.py +76 -0
  436. ciris_engine/logic/conscience/thought_depth_guardrail.py +231 -0
  437. ciris_engine/logic/conscience/updated_status_conscience.py +156 -0
  438. ciris_engine/logic/context/__init__.py +10 -0
  439. ciris_engine/logic/context/batch_context.py +550 -0
  440. ciris_engine/logic/context/builder.py +149 -0
  441. ciris_engine/logic/context/channel_resolution.py +136 -0
  442. ciris_engine/logic/context/secrets_snapshot.py +52 -0
  443. ciris_engine/logic/context/system_snapshot.py +116 -0
  444. ciris_engine/logic/context/system_snapshot_helpers.py +1651 -0
  445. ciris_engine/logic/covenant/__init__.py +33 -0
  446. ciris_engine/logic/covenant/executor.py +303 -0
  447. ciris_engine/logic/covenant/extractor.py +382 -0
  448. ciris_engine/logic/covenant/handler.py +241 -0
  449. ciris_engine/logic/covenant/verifier.py +383 -0
  450. ciris_engine/logic/dma/__init__.py +15 -0
  451. ciris_engine/logic/dma/action_selection/__init__.py +11 -0
  452. ciris_engine/logic/dma/action_selection/action_instruction_generator.py +444 -0
  453. ciris_engine/logic/dma/action_selection/context_builder.py +508 -0
  454. ciris_engine/logic/dma/action_selection/faculty_integration.py +193 -0
  455. ciris_engine/logic/dma/action_selection/special_cases.py +132 -0
  456. ciris_engine/logic/dma/action_selection_pdma.py +365 -0
  457. ciris_engine/logic/dma/base_dma.py +335 -0
  458. ciris_engine/logic/dma/csdma.py +239 -0
  459. ciris_engine/logic/dma/dma_executor.py +575 -0
  460. ciris_engine/logic/dma/dsdma_base.py +410 -0
  461. ciris_engine/logic/dma/exceptions.py +4 -0
  462. ciris_engine/logic/dma/factory.py +150 -0
  463. ciris_engine/logic/dma/pdma.py +120 -0
  464. ciris_engine/logic/dma/prompt_loader.py +189 -0
  465. ciris_engine/logic/dma/prompts/action_selection_pdma.yml +58 -0
  466. ciris_engine/logic/dma/prompts/csdma_common_sense.yml +28 -0
  467. ciris_engine/logic/dma/prompts/dsdma_base.yml +17 -0
  468. ciris_engine/logic/dma/prompts/pdma_ethical.yml +42 -0
  469. ciris_engine/logic/formatters/__init__.py +26 -0
  470. ciris_engine/logic/formatters/crisis_resources.py +80 -0
  471. ciris_engine/logic/formatters/escalation.py +21 -0
  472. ciris_engine/logic/formatters/identity.py +224 -0
  473. ciris_engine/logic/formatters/prompt_blocks.py +64 -0
  474. ciris_engine/logic/formatters/system_snapshot.py +193 -0
  475. ciris_engine/logic/formatters/user_profiles.py +108 -0
  476. ciris_engine/logic/handlers/__init__.py +1 -0
  477. ciris_engine/logic/handlers/control/__init__.py +1 -0
  478. ciris_engine/logic/handlers/control/defer_handler.py +195 -0
  479. ciris_engine/logic/handlers/control/ponder_handler.py +154 -0
  480. ciris_engine/logic/handlers/control/reject_handler.py +81 -0
  481. ciris_engine/logic/handlers/external/__init__.py +1 -0
  482. ciris_engine/logic/handlers/external/observe_handler.py +154 -0
  483. ciris_engine/logic/handlers/external/speak_handler.py +250 -0
  484. ciris_engine/logic/handlers/external/tool_handler.py +148 -0
  485. ciris_engine/logic/handlers/memory/__init__.py +1 -0
  486. ciris_engine/logic/handlers/memory/forget_handler.py +107 -0
  487. ciris_engine/logic/handlers/memory/memorize_handler.py +391 -0
  488. ciris_engine/logic/handlers/memory/recall_handler.py +213 -0
  489. ciris_engine/logic/handlers/terminal/__init__.py +1 -0
  490. ciris_engine/logic/handlers/terminal/task_complete_handler.py +299 -0
  491. ciris_engine/logic/infrastructure/__init__.py +1 -0
  492. ciris_engine/logic/infrastructure/handlers/__init__.py +8 -0
  493. ciris_engine/logic/infrastructure/handlers/action_dispatcher.py +382 -0
  494. ciris_engine/logic/infrastructure/handlers/base_handler.py +450 -0
  495. ciris_engine/logic/infrastructure/handlers/exceptions.py +2 -0
  496. ciris_engine/logic/infrastructure/handlers/handler_registry.py +59 -0
  497. ciris_engine/logic/infrastructure/handlers/helpers.py +55 -0
  498. ciris_engine/logic/infrastructure/step_streaming.py +149 -0
  499. ciris_engine/logic/infrastructure/sub_services/__init__.py +1 -0
  500. ciris_engine/logic/infrastructure/sub_services/identity_variance_monitor.py +1035 -0
  501. ciris_engine/logic/infrastructure/sub_services/pattern_analysis_loop.py +758 -0
  502. ciris_engine/logic/infrastructure/sub_services/wa_cli_bootstrap.py +229 -0
  503. ciris_engine/logic/infrastructure/sub_services/wa_cli_display.py +176 -0
  504. ciris_engine/logic/infrastructure/sub_services/wa_cli_oauth.py +404 -0
  505. ciris_engine/logic/infrastructure/sub_services/wa_cli_wizard.py +181 -0
  506. ciris_engine/logic/persistence/__init__.py +130 -0
  507. ciris_engine/logic/persistence/analytics.py +97 -0
  508. ciris_engine/logic/persistence/db/__init__.py +28 -0
  509. ciris_engine/logic/persistence/db/core.py +520 -0
  510. ciris_engine/logic/persistence/db/dialect.py +380 -0
  511. ciris_engine/logic/persistence/db/execution_helpers.py +216 -0
  512. ciris_engine/logic/persistence/db/migration_runner.py +191 -0
  513. ciris_engine/logic/persistence/db/operations.py +313 -0
  514. ciris_engine/logic/persistence/db/query_builder.py +232 -0
  515. ciris_engine/logic/persistence/db/retry.py +154 -0
  516. ciris_engine/logic/persistence/db/setup.py +18 -0
  517. ciris_engine/logic/persistence/migrations/postgres/001_initial_schema.sql +4 -0
  518. ciris_engine/logic/persistence/migrations/postgres/002_add_retry_status.sql +3 -0
  519. ciris_engine/logic/persistence/migrations/postgres/003_add_task_update_tracking.sql +8 -0
  520. ciris_engine/logic/persistence/migrations/postgres/004_add_occurrence_id.sql +54 -0
  521. ciris_engine/logic/persistence/migrations/postgres/005_add_consolidation_locks.sql +22 -0
  522. ciris_engine/logic/persistence/migrations/postgres/006_add_correlation_id_unique_index.sql +16 -0
  523. ciris_engine/logic/persistence/migrations/postgres/007_add_dsar_tickets.sql +39 -0
  524. ciris_engine/logic/persistence/migrations/postgres/008_rename_to_tickets_add_sop.sql +123 -0
  525. ciris_engine/logic/persistence/migrations/postgres/009_add_ticket_status_columns.sql +39 -0
  526. ciris_engine/logic/persistence/migrations/postgres/010_add_images_to_tasks.sql +5 -0
  527. ciris_engine/logic/persistence/migrations/sqlite/001_initial_schema.sql +357 -0
  528. ciris_engine/logic/persistence/migrations/sqlite/002_add_retry_status.sql +3 -0
  529. ciris_engine/logic/persistence/migrations/sqlite/003_add_task_update_tracking.sql +8 -0
  530. ciris_engine/logic/persistence/migrations/sqlite/004_add_occurrence_id.sql +45 -0
  531. ciris_engine/logic/persistence/migrations/sqlite/005_add_consolidation_locks.sql +22 -0
  532. ciris_engine/logic/persistence/migrations/sqlite/006_add_correlation_id_unique_index.sql +16 -0
  533. ciris_engine/logic/persistence/migrations/sqlite/007_add_dsar_tickets.sql +39 -0
  534. ciris_engine/logic/persistence/migrations/sqlite/008_rename_to_tickets_add_sop.sql +120 -0
  535. ciris_engine/logic/persistence/migrations/sqlite/009_add_ticket_status_columns.sql +129 -0
  536. ciris_engine/logic/persistence/migrations/sqlite/010_add_images_to_tasks.sql +17 -0
  537. ciris_engine/logic/persistence/models/__init__.py +141 -0
  538. ciris_engine/logic/persistence/models/correlations.py +881 -0
  539. ciris_engine/logic/persistence/models/deferral.py +68 -0
  540. ciris_engine/logic/persistence/models/dsar.py +286 -0
  541. ciris_engine/logic/persistence/models/graph.py +362 -0
  542. ciris_engine/logic/persistence/models/identity.py +264 -0
  543. ciris_engine/logic/persistence/models/queue_status.py +139 -0
  544. ciris_engine/logic/persistence/models/tasks.py +1043 -0
  545. ciris_engine/logic/persistence/models/thoughts.py +400 -0
  546. ciris_engine/logic/persistence/models/tickets.py +518 -0
  547. ciris_engine/logic/persistence/stores/__init__.py +13 -0
  548. ciris_engine/logic/persistence/stores/auth_helpers.py +117 -0
  549. ciris_engine/logic/persistence/stores/authentication_store.py +414 -0
  550. ciris_engine/logic/persistence/utils.py +212 -0
  551. ciris_engine/logic/processors/__init__.py +30 -0
  552. ciris_engine/logic/processors/core/__init__.py +1 -0
  553. ciris_engine/logic/processors/core/base_processor.py +280 -0
  554. ciris_engine/logic/processors/core/main_processor.py +1777 -0
  555. ciris_engine/logic/processors/core/step_decorators.py +1583 -0
  556. ciris_engine/logic/processors/core/thought_processor/__init__.py +20 -0
  557. ciris_engine/logic/processors/core/thought_processor/action_execution.py +49 -0
  558. ciris_engine/logic/processors/core/thought_processor/conscience_execution.py +382 -0
  559. ciris_engine/logic/processors/core/thought_processor/finalize_action.py +66 -0
  560. ciris_engine/logic/processors/core/thought_processor/gather_context.py +120 -0
  561. ciris_engine/logic/processors/core/thought_processor/main.py +920 -0
  562. ciris_engine/logic/processors/core/thought_processor/perform_aspdma.py +86 -0
  563. ciris_engine/logic/processors/core/thought_processor/perform_dmas.py +106 -0
  564. ciris_engine/logic/processors/core/thought_processor/recursive_processing.py +237 -0
  565. ciris_engine/logic/processors/core/thought_processor/round_complete.py +52 -0
  566. ciris_engine/logic/processors/core/thought_processor/start_round.py +64 -0
  567. ciris_engine/logic/processors/exceptions.py +59 -0
  568. ciris_engine/logic/processors/states/__init__.py +1 -0
  569. ciris_engine/logic/processors/states/dream_processor.py +1381 -0
  570. ciris_engine/logic/processors/states/play_processor.py +141 -0
  571. ciris_engine/logic/processors/states/shutdown_processor.py +623 -0
  572. ciris_engine/logic/processors/states/solitude_processor.py +305 -0
  573. ciris_engine/logic/processors/states/wakeup_processor.py +802 -0
  574. ciris_engine/logic/processors/states/work_processor.py +742 -0
  575. ciris_engine/logic/processors/support/__init__.py +1 -0
  576. ciris_engine/logic/processors/support/dma_orchestrator.py +336 -0
  577. ciris_engine/logic/processors/support/processing_queue.py +133 -0
  578. ciris_engine/logic/processors/support/shutdown_condition_evaluator.py +294 -0
  579. ciris_engine/logic/processors/support/state_manager.py +358 -0
  580. ciris_engine/logic/processors/support/task_manager.py +303 -0
  581. ciris_engine/logic/processors/support/thought_escalation.py +116 -0
  582. ciris_engine/logic/processors/support/thought_manager.py +328 -0
  583. ciris_engine/logic/processors/support/thought_manager_enhanced.py +105 -0
  584. ciris_engine/logic/registries/__init__.py +34 -0
  585. ciris_engine/logic/registries/base.py +653 -0
  586. ciris_engine/logic/registries/circuit_breaker.py +275 -0
  587. ciris_engine/logic/registries/typed_registries.py +184 -0
  588. ciris_engine/logic/runtime/__init__.py +7 -0
  589. ciris_engine/logic/runtime/adapter_loader.py +261 -0
  590. ciris_engine/logic/runtime/adapter_manager.py +1053 -0
  591. ciris_engine/logic/runtime/ciris_runtime.py +2342 -0
  592. ciris_engine/logic/runtime/ciris_runtime_helpers.py +923 -0
  593. ciris_engine/logic/runtime/component_builder.py +361 -0
  594. ciris_engine/logic/runtime/identity_manager.py +219 -0
  595. ciris_engine/logic/runtime/module_loader.py +207 -0
  596. ciris_engine/logic/runtime/prevent_sideeffects.py +30 -0
  597. ciris_engine/logic/runtime/runtime_interface.py +23 -0
  598. ciris_engine/logic/runtime/service_initializer.py +1623 -0
  599. ciris_engine/logic/secrets/__init__.py +30 -0
  600. ciris_engine/logic/secrets/encryption.py +175 -0
  601. ciris_engine/logic/secrets/filter.py +295 -0
  602. ciris_engine/logic/secrets/service.py +652 -0
  603. ciris_engine/logic/secrets/store.py +669 -0
  604. ciris_engine/logic/services/__init__.py +1 -0
  605. ciris_engine/logic/services/adaptation/__init__.py +3 -0
  606. ciris_engine/logic/services/base_graph_service.py +142 -0
  607. ciris_engine/logic/services/base_infrastructure_service.py +69 -0
  608. ciris_engine/logic/services/base_scheduled_service.py +136 -0
  609. ciris_engine/logic/services/base_service.py +247 -0
  610. ciris_engine/logic/services/governance/__init__.py +3 -0
  611. ciris_engine/logic/services/governance/adaptive_filter/__init__.py +14 -0
  612. ciris_engine/logic/services/governance/adaptive_filter/service.py +818 -0
  613. ciris_engine/logic/services/governance/consent/__init__.py +53 -0
  614. ciris_engine/logic/services/governance/consent/air.py +403 -0
  615. ciris_engine/logic/services/governance/consent/decay.py +324 -0
  616. ciris_engine/logic/services/governance/consent/dsar_automation.py +589 -0
  617. ciris_engine/logic/services/governance/consent/exceptions.py +106 -0
  618. ciris_engine/logic/services/governance/consent/metrics.py +270 -0
  619. ciris_engine/logic/services/governance/consent/partnership.py +533 -0
  620. ciris_engine/logic/services/governance/consent/service.py +1256 -0
  621. ciris_engine/logic/services/governance/dsar/__init__.py +29 -0
  622. ciris_engine/logic/services/governance/dsar/orchestrator.py +977 -0
  623. ciris_engine/logic/services/governance/dsar/schemas.py +141 -0
  624. ciris_engine/logic/services/governance/dsar/signature_service.py +283 -0
  625. ciris_engine/logic/services/governance/self_observation/__init__.py +20 -0
  626. ciris_engine/logic/services/governance/self_observation/service.py +1153 -0
  627. ciris_engine/logic/services/governance/visibility/__init__.py +17 -0
  628. ciris_engine/logic/services/governance/visibility/service.py +512 -0
  629. ciris_engine/logic/services/governance/wise_authority/__init__.py +15 -0
  630. ciris_engine/logic/services/governance/wise_authority/service.py +827 -0
  631. ciris_engine/logic/services/graph/__init__.py +5 -0
  632. ciris_engine/logic/services/graph/audit_service/__init__.py +5 -0
  633. ciris_engine/logic/services/graph/audit_service/service.py +1675 -0
  634. ciris_engine/logic/services/graph/base.py +208 -0
  635. ciris_engine/logic/services/graph/config_service/__init__.py +5 -0
  636. ciris_engine/logic/services/graph/config_service/service.py +372 -0
  637. ciris_engine/logic/services/graph/incident_service/__init__.py +5 -0
  638. ciris_engine/logic/services/graph/incident_service/service.py +803 -0
  639. ciris_engine/logic/services/graph/memory_service.py +1120 -0
  640. ciris_engine/logic/services/graph/telemetry_service/__init__.py +5 -0
  641. ciris_engine/logic/services/graph/telemetry_service/exceptions.py +104 -0
  642. ciris_engine/logic/services/graph/telemetry_service/helpers.py +1337 -0
  643. ciris_engine/logic/services/graph/telemetry_service/service.py +2429 -0
  644. ciris_engine/logic/services/graph/tsdb_consolidation/__init__.py +17 -0
  645. ciris_engine/logic/services/graph/tsdb_consolidation/aggregation_helpers.py +355 -0
  646. ciris_engine/logic/services/graph/tsdb_consolidation/cleanup_helpers.py +438 -0
  647. ciris_engine/logic/services/graph/tsdb_consolidation/compressor.py +260 -0
  648. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/__init__.py +27 -0
  649. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/audit.py +326 -0
  650. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/conversation.py +291 -0
  651. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/memory.py +197 -0
  652. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/metrics.py +251 -0
  653. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/task.py +257 -0
  654. ciris_engine/logic/services/graph/tsdb_consolidation/consolidators/trace.py +363 -0
  655. ciris_engine/logic/services/graph/tsdb_consolidation/data_converter.py +545 -0
  656. ciris_engine/logic/services/graph/tsdb_consolidation/date_calculation_helpers.py +193 -0
  657. ciris_engine/logic/services/graph/tsdb_consolidation/db_query_helpers.py +296 -0
  658. ciris_engine/logic/services/graph/tsdb_consolidation/edge_helpers.py +92 -0
  659. ciris_engine/logic/services/graph/tsdb_consolidation/edge_manager.py +896 -0
  660. ciris_engine/logic/services/graph/tsdb_consolidation/extensive_helpers.py +322 -0
  661. ciris_engine/logic/services/graph/tsdb_consolidation/period_manager.py +152 -0
  662. ciris_engine/logic/services/graph/tsdb_consolidation/profound_helpers.py +277 -0
  663. ciris_engine/logic/services/graph/tsdb_consolidation/query_manager.py +812 -0
  664. ciris_engine/logic/services/graph/tsdb_consolidation/service.py +1692 -0
  665. ciris_engine/logic/services/graph/tsdb_consolidation/sql_builders.py +363 -0
  666. ciris_engine/logic/services/infrastructure/__init__.py +1 -0
  667. ciris_engine/logic/services/infrastructure/authentication/__init__.py +5 -0
  668. ciris_engine/logic/services/infrastructure/authentication/service.py +1634 -0
  669. ciris_engine/logic/services/infrastructure/database_maintenance/__init__.py +15 -0
  670. ciris_engine/logic/services/infrastructure/database_maintenance/service.py +764 -0
  671. ciris_engine/logic/services/infrastructure/resource_monitor/__init__.py +7 -0
  672. ciris_engine/logic/services/infrastructure/resource_monitor/ciris_billing_provider.py +755 -0
  673. ciris_engine/logic/services/infrastructure/resource_monitor/service.py +409 -0
  674. ciris_engine/logic/services/infrastructure/resource_monitor/simple_credit_provider.py +129 -0
  675. ciris_engine/logic/services/lifecycle/__init__.py +3 -0
  676. ciris_engine/logic/services/lifecycle/initialization/__init__.py +10 -0
  677. ciris_engine/logic/services/lifecycle/initialization/service.py +312 -0
  678. ciris_engine/logic/services/lifecycle/scheduler/__init__.py +5 -0
  679. ciris_engine/logic/services/lifecycle/scheduler/service.py +607 -0
  680. ciris_engine/logic/services/lifecycle/shutdown/__init__.py +9 -0
  681. ciris_engine/logic/services/lifecycle/shutdown/service.py +378 -0
  682. ciris_engine/logic/services/lifecycle/time/__init__.py +15 -0
  683. ciris_engine/logic/services/lifecycle/time/service.py +259 -0
  684. ciris_engine/logic/services/memory_service/__init__.py +8 -0
  685. ciris_engine/logic/services/mixins/__init__.py +13 -0
  686. ciris_engine/logic/services/mixins/example_usage.py +200 -0
  687. ciris_engine/logic/services/mixins/request_metrics.py +179 -0
  688. ciris_engine/logic/services/runtime/__init__.py +3 -0
  689. ciris_engine/logic/services/runtime/adapter_configuration/__init__.py +16 -0
  690. ciris_engine/logic/services/runtime/adapter_configuration/service.py +674 -0
  691. ciris_engine/logic/services/runtime/adapter_configuration/session.py +67 -0
  692. ciris_engine/logic/services/runtime/control_service/__init__.py +5 -0
  693. ciris_engine/logic/services/runtime/control_service/service.py +2269 -0
  694. ciris_engine/logic/services/runtime/llm_service/__init__.py +14 -0
  695. ciris_engine/logic/services/runtime/llm_service/pricing_calculator.py +279 -0
  696. ciris_engine/logic/services/runtime/llm_service/service.py +930 -0
  697. ciris_engine/logic/services/tools/__init__.py +5 -0
  698. ciris_engine/logic/services/tools/core_tool_service/__init__.py +8 -0
  699. ciris_engine/logic/services/tools/core_tool_service/service.py +852 -0
  700. ciris_engine/logic/setup/__init__.py +1 -0
  701. ciris_engine/logic/setup/first_run.py +250 -0
  702. ciris_engine/logic/setup/wizard.py +327 -0
  703. ciris_engine/logic/telemetry/__init__.py +46 -0
  704. ciris_engine/logic/telemetry/core.py +239 -0
  705. ciris_engine/logic/telemetry/hot_cold_config.py +133 -0
  706. ciris_engine/logic/telemetry/log_collector.py +190 -0
  707. ciris_engine/logic/telemetry/resource_monitor.py +7 -0
  708. ciris_engine/logic/telemetry/security.py +79 -0
  709. ciris_engine/logic/utils/__init__.py +18 -0
  710. ciris_engine/logic/utils/channel_utils.py +75 -0
  711. ciris_engine/logic/utils/consent/__init__.py +1 -0
  712. ciris_engine/logic/utils/consent/partnership_utils.py +172 -0
  713. ciris_engine/logic/utils/constants.py +92 -0
  714. ciris_engine/logic/utils/context_utils.py +145 -0
  715. ciris_engine/logic/utils/directory_setup.py +533 -0
  716. ciris_engine/logic/utils/graphql_context_provider.py +152 -0
  717. ciris_engine/logic/utils/identity_resolution.py +843 -0
  718. ciris_engine/logic/utils/incident_capture_handler.py +303 -0
  719. ciris_engine/logic/utils/initialization_manager.py +74 -0
  720. ciris_engine/logic/utils/jsondict_helpers.py +290 -0
  721. ciris_engine/logic/utils/log_sanitizer.py +97 -0
  722. ciris_engine/logic/utils/logging_config.py +151 -0
  723. ciris_engine/logic/utils/observability_decorators.py +544 -0
  724. ciris_engine/logic/utils/occurrence_utils.py +155 -0
  725. ciris_engine/logic/utils/path_resolution.py +281 -0
  726. ciris_engine/logic/utils/platform_detection.py +286 -0
  727. ciris_engine/logic/utils/privacy.py +266 -0
  728. ciris_engine/logic/utils/profile_loader.py +124 -0
  729. ciris_engine/logic/utils/profile_manager.py +16 -0
  730. ciris_engine/logic/utils/runtime_utils.py +69 -0
  731. ciris_engine/logic/utils/shutdown_manager.py +107 -0
  732. ciris_engine/logic/utils/task_formatters.py +60 -0
  733. ciris_engine/logic/utils/task_thought_factory.py +404 -0
  734. ciris_engine/logic/utils/thought_utils.py +54 -0
  735. ciris_engine/logic/utils/user_utils.py +70 -0
  736. ciris_engine/protocols/__init__.py +0 -0
  737. ciris_engine/protocols/adapters/__init__.py +35 -0
  738. ciris_engine/protocols/adapters/base.py +149 -0
  739. ciris_engine/protocols/adapters/configurable.py +265 -0
  740. ciris_engine/protocols/adapters/message.py +90 -0
  741. ciris_engine/protocols/audit/__init__.py +1 -0
  742. ciris_engine/protocols/buses/__init__.py +1 -0
  743. ciris_engine/protocols/config/__init__.py +1 -0
  744. ciris_engine/protocols/conscience/__init__.py +1 -0
  745. ciris_engine/protocols/consent.py +88 -0
  746. ciris_engine/protocols/context/__init__.py +1 -0
  747. ciris_engine/protocols/data/__init__.py +1 -0
  748. ciris_engine/protocols/dma/__init__.py +1 -0
  749. ciris_engine/protocols/dma/base.py +107 -0
  750. ciris_engine/protocols/faculties.py +34 -0
  751. ciris_engine/protocols/formatters/__init__.py +1 -0
  752. ciris_engine/protocols/handlers/__init__.py +1 -0
  753. ciris_engine/protocols/infrastructure/__init__.py +25 -0
  754. ciris_engine/protocols/infrastructure/base.py +377 -0
  755. ciris_engine/protocols/persistence/__init__.py +1 -0
  756. ciris_engine/protocols/pipeline_control.py +609 -0
  757. ciris_engine/protocols/processors/__init__.py +19 -0
  758. ciris_engine/protocols/processors/agent.py +299 -0
  759. ciris_engine/protocols/processors/base.py +130 -0
  760. ciris_engine/protocols/processors/orchestration.py +62 -0
  761. ciris_engine/protocols/registries/__init__.py +1 -0
  762. ciris_engine/protocols/runtime/__init__.py +1 -0
  763. ciris_engine/protocols/runtime/base.py +163 -0
  764. ciris_engine/protocols/secrets/__init__.py +1 -0
  765. ciris_engine/protocols/services/__init__.py +80 -0
  766. ciris_engine/protocols/services/adaptation/__init__.py +7 -0
  767. ciris_engine/protocols/services/adaptation/self_observation.py +265 -0
  768. ciris_engine/protocols/services/governance/__init__.py +20 -0
  769. ciris_engine/protocols/services/governance/communication.py +58 -0
  770. ciris_engine/protocols/services/governance/filter.py +56 -0
  771. ciris_engine/protocols/services/governance/visibility.py +32 -0
  772. ciris_engine/protocols/services/governance/wa_auth.py +192 -0
  773. ciris_engine/protocols/services/governance/wise_authority.py +75 -0
  774. ciris_engine/protocols/services/graph/__init__.py +19 -0
  775. ciris_engine/protocols/services/graph/audit.py +92 -0
  776. ciris_engine/protocols/services/graph/config.py +54 -0
  777. ciris_engine/protocols/services/graph/incident_management.py +103 -0
  778. ciris_engine/protocols/services/graph/memory.py +110 -0
  779. ciris_engine/protocols/services/graph/telemetry.py +51 -0
  780. ciris_engine/protocols/services/graph/tsdb_consolidation.py +87 -0
  781. ciris_engine/protocols/services/infrastructure/__init__.py +11 -0
  782. ciris_engine/protocols/services/infrastructure/authentication.py +159 -0
  783. ciris_engine/protocols/services/infrastructure/credit_gate.py +46 -0
  784. ciris_engine/protocols/services/infrastructure/database_maintenance.py +25 -0
  785. ciris_engine/protocols/services/infrastructure/resource_monitor.py +83 -0
  786. ciris_engine/protocols/services/lifecycle/__init__.py +13 -0
  787. ciris_engine/protocols/services/lifecycle/initialization.py +41 -0
  788. ciris_engine/protocols/services/lifecycle/scheduler.py +42 -0
  789. ciris_engine/protocols/services/lifecycle/shutdown.py +50 -0
  790. ciris_engine/protocols/services/lifecycle/time.py +31 -0
  791. ciris_engine/protocols/services/runtime/__init__.py +13 -0
  792. ciris_engine/protocols/services/runtime/llm.py +50 -0
  793. ciris_engine/protocols/services/runtime/runtime_control.py +193 -0
  794. ciris_engine/protocols/services/runtime/secrets.py +100 -0
  795. ciris_engine/protocols/services/runtime/tool.py +123 -0
  796. ciris_engine/protocols/telemetry/__init__.py +1 -0
  797. ciris_engine/protocols/utils/__init__.py +1 -0
  798. ciris_engine/schemas/__init__.py +112 -0
  799. ciris_engine/schemas/actions/__init__.py +37 -0
  800. ciris_engine/schemas/actions/parameters.py +137 -0
  801. ciris_engine/schemas/adapters/__init__.py +13 -0
  802. ciris_engine/schemas/adapters/cirisnode.py +135 -0
  803. ciris_engine/schemas/adapters/cli.py +97 -0
  804. ciris_engine/schemas/adapters/cli_tools.py +98 -0
  805. ciris_engine/schemas/adapters/discord.py +125 -0
  806. ciris_engine/schemas/adapters/graphql_core.py +144 -0
  807. ciris_engine/schemas/adapters/registration.py +47 -0
  808. ciris_engine/schemas/adapters/runtime_context.py +48 -0
  809. ciris_engine/schemas/adapters/tool_execution.py +45 -0
  810. ciris_engine/schemas/adapters/tools.py +96 -0
  811. ciris_engine/schemas/api/__init__.py +1 -0
  812. ciris_engine/schemas/api/agent.py +50 -0
  813. ciris_engine/schemas/api/audit.py +38 -0
  814. ciris_engine/schemas/api/auth.py +351 -0
  815. ciris_engine/schemas/api/config_security.py +242 -0
  816. ciris_engine/schemas/api/emergency.py +111 -0
  817. ciris_engine/schemas/api/responses.py +72 -0
  818. ciris_engine/schemas/api/runtime.py +26 -0
  819. ciris_engine/schemas/api/telemetry.py +109 -0
  820. ciris_engine/schemas/api/wa.py +90 -0
  821. ciris_engine/schemas/audit/__init__.py +13 -0
  822. ciris_engine/schemas/audit/core.py +139 -0
  823. ciris_engine/schemas/audit/hash_chain.py +58 -0
  824. ciris_engine/schemas/audit/verification.py +131 -0
  825. ciris_engine/schemas/buses/__init__.py +1 -0
  826. ciris_engine/schemas/config/__init__.py +41 -0
  827. ciris_engine/schemas/config/agent.py +279 -0
  828. ciris_engine/schemas/config/cognitive_state_behaviors.py +194 -0
  829. ciris_engine/schemas/config/default_dsar_sops.py +178 -0
  830. ciris_engine/schemas/config/essential.py +195 -0
  831. ciris_engine/schemas/config/tickets.py +86 -0
  832. ciris_engine/schemas/conscience/__init__.py +25 -0
  833. ciris_engine/schemas/conscience/context.py +34 -0
  834. ciris_engine/schemas/conscience/core.py +145 -0
  835. ciris_engine/schemas/conscience/results.py +24 -0
  836. ciris_engine/schemas/consent/__init__.py +5 -0
  837. ciris_engine/schemas/consent/core.py +404 -0
  838. ciris_engine/schemas/context/__init__.py +1 -0
  839. ciris_engine/schemas/covenant.py +382 -0
  840. ciris_engine/schemas/data/__init__.py +1 -0
  841. ciris_engine/schemas/dma/__init__.py +16 -0
  842. ciris_engine/schemas/dma/core.py +199 -0
  843. ciris_engine/schemas/dma/faculty.py +192 -0
  844. ciris_engine/schemas/dma/prompts.py +172 -0
  845. ciris_engine/schemas/dma/results.py +103 -0
  846. ciris_engine/schemas/formatters/__init__.py +1 -0
  847. ciris_engine/schemas/handlers/__init__.py +10 -0
  848. ciris_engine/schemas/handlers/context.py +119 -0
  849. ciris_engine/schemas/handlers/contexts.py +100 -0
  850. ciris_engine/schemas/handlers/core.py +167 -0
  851. ciris_engine/schemas/handlers/memory_schemas.py +67 -0
  852. ciris_engine/schemas/handlers/schemas.py +95 -0
  853. ciris_engine/schemas/identity.py +149 -0
  854. ciris_engine/schemas/infrastructure/__init__.py +1 -0
  855. ciris_engine/schemas/infrastructure/base.py +256 -0
  856. ciris_engine/schemas/infrastructure/behavioral_patterns.py +129 -0
  857. ciris_engine/schemas/infrastructure/feedback_loop.py +57 -0
  858. ciris_engine/schemas/infrastructure/identity_variance.py +141 -0
  859. ciris_engine/schemas/infrastructure/oauth.py +175 -0
  860. ciris_engine/schemas/infrastructure/wa_cli_wizard.py +54 -0
  861. ciris_engine/schemas/persistence/__init__.py +34 -0
  862. ciris_engine/schemas/persistence/core.py +140 -0
  863. ciris_engine/schemas/persistence/correlations.py +73 -0
  864. ciris_engine/schemas/persistence/postgres/__init__.py +1 -0
  865. ciris_engine/schemas/persistence/postgres/tables.py +280 -0
  866. ciris_engine/schemas/persistence/sqlite/__init__.py +1 -0
  867. ciris_engine/schemas/persistence/sqlite/tables.py +281 -0
  868. ciris_engine/schemas/platform.py +149 -0
  869. ciris_engine/schemas/processors/__init__.py +26 -0
  870. ciris_engine/schemas/processors/base.py +130 -0
  871. ciris_engine/schemas/processors/cognitive.py +77 -0
  872. ciris_engine/schemas/processors/context.py +35 -0
  873. ciris_engine/schemas/processors/core.py +152 -0
  874. ciris_engine/schemas/processors/dma.py +105 -0
  875. ciris_engine/schemas/processors/error.py +122 -0
  876. ciris_engine/schemas/processors/main.py +109 -0
  877. ciris_engine/schemas/processors/phase_results.py +21 -0
  878. ciris_engine/schemas/processors/results.py +99 -0
  879. ciris_engine/schemas/processors/solitude.py +79 -0
  880. ciris_engine/schemas/processors/state.py +202 -0
  881. ciris_engine/schemas/processors/state_example.py +177 -0
  882. ciris_engine/schemas/processors/states.py +21 -0
  883. ciris_engine/schemas/processors/status.py +34 -0
  884. ciris_engine/schemas/registries/__init__.py +1 -0
  885. ciris_engine/schemas/registries/base.py +66 -0
  886. ciris_engine/schemas/resources/__init__.py +15 -0
  887. ciris_engine/schemas/resources/crisis.py +315 -0
  888. ciris_engine/schemas/runtime/__init__.py +42 -0
  889. ciris_engine/schemas/runtime/adapter_management.py +186 -0
  890. ciris_engine/schemas/runtime/api.py +58 -0
  891. ciris_engine/schemas/runtime/audit.py +50 -0
  892. ciris_engine/schemas/runtime/bootstrap.py +33 -0
  893. ciris_engine/schemas/runtime/contexts.py +61 -0
  894. ciris_engine/schemas/runtime/core.py +161 -0
  895. ciris_engine/schemas/runtime/enums.py +167 -0
  896. ciris_engine/schemas/runtime/extended.py +232 -0
  897. ciris_engine/schemas/runtime/manifest.py +311 -0
  898. ciris_engine/schemas/runtime/memory.py +60 -0
  899. ciris_engine/schemas/runtime/messages.py +108 -0
  900. ciris_engine/schemas/runtime/models.py +156 -0
  901. ciris_engine/schemas/runtime/processing_context.py +43 -0
  902. ciris_engine/schemas/runtime/protocols_core.py +96 -0
  903. ciris_engine/schemas/runtime/resources.py +33 -0
  904. ciris_engine/schemas/runtime/system_context.py +417 -0
  905. ciris_engine/schemas/secrets/__init__.py +1 -0
  906. ciris_engine/schemas/secrets/core.py +267 -0
  907. ciris_engine/schemas/secrets/service.py +95 -0
  908. ciris_engine/schemas/services/__init__.py +33 -0
  909. ciris_engine/schemas/services/audit_summary_node.py +172 -0
  910. ciris_engine/schemas/services/authority/__init__.py +39 -0
  911. ciris_engine/schemas/services/authority/jwt.py +158 -0
  912. ciris_engine/schemas/services/authority/wa_updates.py +138 -0
  913. ciris_engine/schemas/services/authority/wise_authority.py +163 -0
  914. ciris_engine/schemas/services/authority_core.py +370 -0
  915. ciris_engine/schemas/services/capabilities.py +72 -0
  916. ciris_engine/schemas/services/community_core.py +95 -0
  917. ciris_engine/schemas/services/context.py +111 -0
  918. ciris_engine/schemas/services/conversation_summary_node.py +189 -0
  919. ciris_engine/schemas/services/core/__init__.py +153 -0
  920. ciris_engine/schemas/services/core/runtime.py +262 -0
  921. ciris_engine/schemas/services/core/runtime_config.py +117 -0
  922. ciris_engine/schemas/services/core/secrets.py +65 -0
  923. ciris_engine/schemas/services/correlation_node.py +179 -0
  924. ciris_engine/schemas/services/credit_gate.py +92 -0
  925. ciris_engine/schemas/services/discord_nodes.py +299 -0
  926. ciris_engine/schemas/services/feedback_core.py +131 -0
  927. ciris_engine/schemas/services/filters_core.py +270 -0
  928. ciris_engine/schemas/services/governance.py +26 -0
  929. ciris_engine/schemas/services/graph/__init__.py +26 -0
  930. ciris_engine/schemas/services/graph/attributes.py +254 -0
  931. ciris_engine/schemas/services/graph/audit.py +98 -0
  932. ciris_engine/schemas/services/graph/consolidation.py +338 -0
  933. ciris_engine/schemas/services/graph/edge_types.py +43 -0
  934. ciris_engine/schemas/services/graph/edges.py +88 -0
  935. ciris_engine/schemas/services/graph/incident.py +312 -0
  936. ciris_engine/schemas/services/graph/memory.py +84 -0
  937. ciris_engine/schemas/services/graph/node_data.py +174 -0
  938. ciris_engine/schemas/services/graph/query_results.py +82 -0
  939. ciris_engine/schemas/services/graph/telemetry.py +250 -0
  940. ciris_engine/schemas/services/graph/tsdb_consolidation.py +27 -0
  941. ciris_engine/schemas/services/graph/tsdb_models.py +107 -0
  942. ciris_engine/schemas/services/graph_core.py +196 -0
  943. ciris_engine/schemas/services/graph_typed_nodes.py +194 -0
  944. ciris_engine/schemas/services/infrastructure/__init__.py +1 -0
  945. ciris_engine/schemas/services/infrastructure/resource_monitor.py +20 -0
  946. ciris_engine/schemas/services/lifecycle/__init__.py +9 -0
  947. ciris_engine/schemas/services/lifecycle/initialization.py +33 -0
  948. ciris_engine/schemas/services/lifecycle/time.py +50 -0
  949. ciris_engine/schemas/services/llm.py +187 -0
  950. ciris_engine/schemas/services/metadata.py +43 -0
  951. ciris_engine/schemas/services/nodes.py +704 -0
  952. ciris_engine/schemas/services/operations.py +126 -0
  953. ciris_engine/schemas/services/requests.py +128 -0
  954. ciris_engine/schemas/services/resources_core.py +182 -0
  955. ciris_engine/schemas/services/runtime_control.py +1010 -0
  956. ciris_engine/schemas/services/shutdown.py +88 -0
  957. ciris_engine/schemas/services/special/__init__.py +0 -0
  958. ciris_engine/schemas/services/special/self_observation.py +396 -0
  959. ciris_engine/schemas/services/trace_summary_node.py +199 -0
  960. ciris_engine/schemas/services/visibility.py +98 -0
  961. ciris_engine/schemas/streaming/__init__.py +10 -0
  962. ciris_engine/schemas/streaming/reasoning_stream.py +95 -0
  963. ciris_engine/schemas/telemetry/__init__.py +0 -0
  964. ciris_engine/schemas/telemetry/collector.py +67 -0
  965. ciris_engine/schemas/telemetry/core.py +252 -0
  966. ciris_engine/schemas/telemetry/unified.py +59 -0
  967. ciris_engine/schemas/tools.py +72 -0
  968. ciris_engine/schemas/types.py +47 -0
  969. ciris_engine/schemas/utils/__init__.py +1 -0
  970. ciris_engine/schemas/utils/config_validator.py +54 -0
  971. ciris_engine/utils/__init__.py +1 -0
  972. ciris_engine/utils/serialization.py +35 -0
  973. ciris_sdk/__init__.py +124 -0
  974. ciris_sdk/auth_store.py +261 -0
  975. ciris_sdk/client.py +261 -0
  976. ciris_sdk/exceptions.py +73 -0
  977. ciris_sdk/model_types.py +258 -0
  978. ciris_sdk/models.py +354 -0
  979. ciris_sdk/pagination.py +214 -0
  980. ciris_sdk/rate_limiter.py +188 -0
  981. ciris_sdk/setup.py +17 -0
  982. ciris_sdk/telemetry_models.py +257 -0
  983. ciris_sdk/telemetry_responses.py +199 -0
  984. ciris_sdk/transport.py +177 -0
  985. ciris_sdk/websocket.py +400 -0
  986. main.py +766 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8898],{425:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>x});var i=s(4568),a=s(7620),n=s(7606),r=s(3297),l=s(6258),o=s(704),d=s(9484),c=s(3237),h=s(4893);let u={WORK:{bg:"bg-blue-600",text:"text-blue-800",border:"border-blue-300",light:"bg-blue-50"},DREAM:{bg:"bg-purple-600",text:"text-purple-800",border:"border-purple-300",light:"bg-purple-50"},PLAY:{bg:"bg-amber-500",text:"text-amber-800",border:"border-amber-300",light:"bg-amber-50"},SOLITUDE:{bg:"bg-sky-500",text:"text-sky-800",border:"border-sky-300",light:"bg-sky-50"}},m={WORK:{title:"Work Mode",description:"Normal operational state for processing tasks and interactions.",icon:"\uD83D\uDCBC"},DREAM:{title:"Dream Session",description:"Deep introspection and memory consolidation. The agent reflects on past experiences and strengthens important memories.",icon:"\uD83C\uDF19"},PLAY:{title:"Play Session",description:"Creative exploration and experimentation. The agent explores novel ideas and approaches without strict task constraints.",icon:"\uD83C\uDFAE"},SOLITUDE:{title:"Solitude Session",description:"Quiet reflection and planning. The agent engages in self-directed contemplation and strategic thinking.",icon:"\uD83E\uDDD8"}};function x(){var e,t,s;let{hasRole:x}=(0,d.A)();(0,n.jE)();let[g,p]=(0,a.useState)(null),{data:v,isLoading:f,refetch:b}=(0,r.I)({queryKey:["processor-states"],queryFn:async()=>{let e=await o.AQ.system.getProcessorStates();return(null==e?void 0:e.data)||e},refetchInterval:3e3}),y=null==v?void 0:v.find(e=>e.is_active),j=(null==y?void 0:y.name)||"UNKNOWN",w=(0,l.n)({mutationFn:async e=>{if(!x("ADMIN"))throw Error("Admin privileges required to change cognitive state");return o.AQ.system.transitionState({target_state:e,reason:"Requested via Web UI Sessions page"})},onSuccess:e=>{e.success?(c.Ay.success("Transitioned to ".concat(e.current_state)),b()):c.Ay.error(e.message||"Transition not initiated")},onError:e=>{let t=e.message||"Failed to transition state";c.Ay.error(t)}}),N=e=>{let t=m[e],s="WORK"===e?"Return to Work":"Initiate ".concat((null==t?void 0:t.title)||e),i="WORK"===e?"Return to normal WORK state?":"Initiate a ".concat(e," session? ").concat((null==t?void 0:t.description)||"");p({isOpen:!0,targetState:e,title:s,message:i})},C=e=>u[e]||u.WORK,R="WORK"!==j&&"WAKEUP"!==j&&"SHUTDOWN"!==j;return(0,i.jsxs)("div",{className:"space-y-6",children:[(0,i.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,i.jsx)("div",{className:"px-4 py-5 sm:px-6",children:(0,i.jsxs)("div",{className:"flex justify-between items-center",children:[(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Cognitive Sessions"}),(0,i.jsx)("p",{className:"mt-1 text-sm text-gray-500",children:"Manage CIRIS cognitive states: Dream, Play, and Solitude sessions"})]}),(0,i.jsx)("button",{onClick:()=>b(),className:"inline-flex items-center px-3 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-50",children:"Refresh"})]})})}),(0,i.jsx)("div",{className:"bg-amber-50 border border-amber-200 rounded-md p-4",children:(0,i.jsxs)("div",{className:"flex",children:[(0,i.jsx)("div",{className:"flex-shrink-0",children:(0,i.jsx)("svg",{className:"h-5 w-5 text-amber-400",viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M8.485 2.495c.673-1.167 2.357-1.167 3.03 0l6.28 10.875c.673 1.167-.17 2.625-1.516 2.625H3.72c-1.347 0-2.189-1.458-1.515-2.625L8.485 2.495zM10 5a.75.75 0 01.75.75v3.5a.75.75 0 01-1.5 0v-3.5A.75.75 0 0110 5zm0 9a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})})}),(0,i.jsxs)("div",{className:"ml-3",children:[(0,i.jsx)("h3",{className:"text-sm font-medium text-amber-800",children:"Feature Under Development"}),(0,i.jsx)("p",{className:"text-sm text-amber-700 mt-1",children:"Cognitive sessions functionality is currently under active development. Some features may not work as expected or may change in future releases."})]})]})}),(0,i.jsx)("div",{className:"rounded-lg p-6 ".concat(C(j).light," border-2 ").concat(C(j).border),children:(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsxs)("div",{className:"flex items-center space-x-4",children:[(0,i.jsx)("div",{className:"w-4 h-4 rounded-full ".concat(C(j).bg," animate-pulse")}),(0,i.jsxs)("div",{children:[(0,i.jsxs)("h3",{className:"text-lg font-semibold ".concat(C(j).text),children:["Current State: ",j]}),(0,i.jsx)("p",{className:"text-sm text-gray-600 mt-1",children:(null==(e=m[j])?void 0:e.description)||"Agent is in this cognitive state"})]})]}),(0,i.jsx)("span",{className:"text-4xl",children:(null==(t=m[j])?void 0:t.icon)||"\uD83E\uDD16"})]})}),!x("ADMIN")&&(0,i.jsx)("div",{className:"bg-yellow-50 border border-yellow-200 rounded-md p-4",children:(0,i.jsxs)("div",{className:"flex",children:[(0,i.jsx)("div",{className:"flex-shrink-0",children:(0,i.jsx)("svg",{className:"h-5 w-5 text-yellow-400",viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})})}),(0,i.jsxs)("div",{className:"ml-3",children:[(0,i.jsx)("h3",{className:"text-sm font-medium text-yellow-800",children:"Admin Access Required"}),(0,i.jsx)("p",{className:"text-sm text-yellow-700 mt-1",children:"Cognitive state transitions require Administrator privileges. You can view the current state but cannot initiate sessions."})]})]})}),(0,i.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",children:[(0,i.jsxs)("div",{className:"bg-white rounded-lg shadow-lg overflow-hidden border-2 ".concat("DREAM"===j?"border-purple-500":"border-gray-200"),children:[(0,i.jsx)("div",{className:"bg-purple-50 px-4 py-3 border-b border-purple-100",children:(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsxs)("h3",{className:"text-lg font-semibold text-purple-900 flex items-center gap-2",children:[(0,i.jsx)("span",{className:"text-2xl",children:"\uD83C\uDF19"})," Dream"]}),"DREAM"===j&&(0,i.jsx)("span",{className:"px-2 py-1 text-xs font-medium rounded-full bg-purple-600 text-white",children:"ACTIVE"})]})}),(0,i.jsxs)("div",{className:"p-4",children:[(0,i.jsx)("p",{className:"text-sm text-gray-600 mb-4",children:"Deep introspection and memory consolidation. Reflect on past experiences and strengthen important memories."}),(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsx)(h.md,{status:"DREAM"===j?"green":"gray",className:"mr-2"}),(0,i.jsx)("button",{onClick:()=>N("DREAM"),disabled:"WORK"!==j||w.isPending||!x("ADMIN"),className:"px-4 py-2 text-sm font-medium rounded-md text-white bg-purple-600 hover:bg-purple-700 disabled:opacity-50 disabled:cursor-not-allowed",children:w.isPending?"Initiating...":"Initiate Dream"})]})]})]}),(0,i.jsxs)("div",{className:"bg-white rounded-lg shadow-lg overflow-hidden border-2 ".concat("PLAY"===j?"border-amber-500":"border-gray-200"),children:[(0,i.jsx)("div",{className:"bg-amber-50 px-4 py-3 border-b border-amber-100",children:(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsxs)("h3",{className:"text-lg font-semibold text-amber-900 flex items-center gap-2",children:[(0,i.jsx)("span",{className:"text-2xl",children:"\uD83C\uDFAE"})," Play"]}),"PLAY"===j&&(0,i.jsx)("span",{className:"px-2 py-1 text-xs font-medium rounded-full bg-amber-500 text-white",children:"ACTIVE"})]})}),(0,i.jsxs)("div",{className:"p-4",children:[(0,i.jsx)("p",{className:"text-sm text-gray-600 mb-4",children:"Creative exploration and experimentation. Explore novel ideas and approaches without strict task constraints."}),(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsx)(h.md,{status:"PLAY"===j?"green":"gray",className:"mr-2"}),(0,i.jsx)("button",{onClick:()=>N("PLAY"),disabled:"WORK"!==j||w.isPending||!x("ADMIN"),className:"px-4 py-2 text-sm font-medium rounded-md text-white bg-amber-500 hover:bg-amber-600 disabled:opacity-50 disabled:cursor-not-allowed",children:w.isPending?"Initiating...":"Initiate Play"})]})]})]}),(0,i.jsxs)("div",{className:"bg-white rounded-lg shadow-lg overflow-hidden border-2 ".concat("SOLITUDE"===j?"border-sky-500":"border-gray-200"),children:[(0,i.jsx)("div",{className:"bg-sky-50 px-4 py-3 border-b border-sky-100",children:(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsxs)("h3",{className:"text-lg font-semibold text-sky-900 flex items-center gap-2",children:[(0,i.jsx)("span",{className:"text-2xl",children:"\uD83E\uDDD8"})," Solitude"]}),"SOLITUDE"===j&&(0,i.jsx)("span",{className:"px-2 py-1 text-xs font-medium rounded-full bg-sky-500 text-white",children:"ACTIVE"})]})}),(0,i.jsxs)("div",{className:"p-4",children:[(0,i.jsx)("p",{className:"text-sm text-gray-600 mb-4",children:"Quiet reflection and planning. Engage in self-directed contemplation and strategic thinking."}),(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsx)(h.md,{status:"SOLITUDE"===j?"green":"gray",className:"mr-2"}),(0,i.jsx)("button",{onClick:()=>N("SOLITUDE"),disabled:"WORK"!==j||w.isPending||!x("ADMIN"),className:"px-4 py-2 text-sm font-medium rounded-md text-white bg-sky-500 hover:bg-sky-600 disabled:opacity-50 disabled:cursor-not-allowed",children:w.isPending?"Initiating...":"Initiate Solitude"})]})]})]})]}),R&&(0,i.jsx)("div",{className:"bg-white rounded-lg shadow p-6",children:(0,i.jsxs)("div",{className:"flex items-center justify-between",children:[(0,i.jsxs)("div",{children:[(0,i.jsx)("h3",{className:"text-lg font-medium text-gray-900",children:"Return to Normal Operation"}),(0,i.jsxs)("p",{className:"text-sm text-gray-500 mt-1",children:["End the current ",j," session and return to WORK state."]})]}),(0,i.jsx)("button",{onClick:()=>N("WORK"),disabled:w.isPending||!x("ADMIN"),className:"px-6 py-3 text-sm font-medium rounded-md text-white bg-blue-600 hover:bg-blue-700 disabled:opacity-50 disabled:cursor-not-allowed",children:w.isPending?"Returning...":"Return to Work"})]})}),(0,i.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,i.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,i.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"All Processor States"}),f?(0,i.jsx)("div",{className:"text-center py-8 text-gray-500",children:"Loading states..."}):(0,i.jsx)("div",{className:"overflow-x-auto",children:(0,i.jsxs)("table",{className:"min-w-full divide-y divide-gray-200",children:[(0,i.jsx)("thead",{className:"bg-gray-50",children:(0,i.jsxs)("tr",{children:[(0,i.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:"State"}),(0,i.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:"Status"}),(0,i.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:"Description"}),(0,i.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:"Capabilities"})]})}),(0,i.jsx)("tbody",{className:"bg-white divide-y divide-gray-200",children:null==v?void 0:v.map(e=>{var t,s,a;return(0,i.jsxs)("tr",{className:e.is_active?"bg-green-50":"",children:[(0,i.jsx)("td",{className:"px-6 py-4 whitespace-nowrap",children:(0,i.jsxs)("div",{className:"flex items-center",children:[(0,i.jsx)("span",{className:"text-xl mr-2",children:(null==(t=m[e.name])?void 0:t.icon)||"⚙️"}),(0,i.jsx)("span",{className:"text-sm font-medium text-gray-900",children:e.name})]})}),(0,i.jsx)("td",{className:"px-6 py-4 whitespace-nowrap",children:e.is_active?(0,i.jsx)("span",{className:"px-2 py-1 text-xs font-medium rounded-full bg-green-100 text-green-800",children:"ACTIVE"}):(0,i.jsx)("span",{className:"px-2 py-1 text-xs font-medium rounded-full bg-gray-100 text-gray-600",children:"INACTIVE"})}),(0,i.jsx)("td",{className:"px-6 py-4",children:(0,i.jsx)("p",{className:"text-sm text-gray-600 max-w-md",children:e.description})}),(0,i.jsx)("td",{className:"px-6 py-4",children:(0,i.jsxs)("div",{className:"flex flex-wrap gap-1",children:[null==(s=e.capabilities)?void 0:s.slice(0,3).map(e=>(0,i.jsx)("span",{className:"px-2 py-0.5 text-xs rounded bg-gray-100 text-gray-700",children:e},e)),(null==(a=e.capabilities)?void 0:a.length)>3&&(0,i.jsxs)("span",{className:"px-2 py-0.5 text-xs rounded bg-gray-100 text-gray-500",children:["+",e.capabilities.length-3," more"]})]})})]},e.name)})})]})})]})}),(0,i.jsx)("div",{className:"bg-blue-50 rounded-lg p-4",children:(0,i.jsxs)("div",{className:"flex",children:[(0,i.jsx)("div",{className:"flex-shrink-0",children:(0,i.jsx)("svg",{className:"h-5 w-5 text-blue-400",viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z",clipRule:"evenodd"})})}),(0,i.jsxs)("div",{className:"ml-3",children:[(0,i.jsx)("h3",{className:"text-sm font-medium text-blue-800",children:"About Cognitive Sessions"}),(0,i.jsx)("div",{className:"mt-2 text-sm text-blue-700",children:(0,i.jsxs)("ul",{className:"list-disc list-inside space-y-1",children:[(0,i.jsxs)("li",{children:[(0,i.jsx)("strong",{children:"Dream"}),": Memory consolidation and introspection - agent reviews and strengthens learned patterns"]}),(0,i.jsxs)("li",{children:[(0,i.jsx)("strong",{children:"Play"}),": Creative exploration - agent experiments with novel approaches and ideas"]}),(0,i.jsxs)("li",{children:[(0,i.jsx)("strong",{children:"Solitude"}),": Strategic reflection - agent engages in self-directed planning and contemplation"]}),(0,i.jsx)("li",{children:"Sessions can only be initiated from the WORK state"}),(0,i.jsx)("li",{children:'Use "Return to Work" to end a session and resume normal operation'})]})})]})]})}),(null==g?void 0:g.isOpen)&&(0,i.jsx)("div",{className:"fixed inset-0 z-50 overflow-y-auto",children:(0,i.jsxs)("div",{className:"flex min-h-full items-end justify-center p-4 text-center sm:items-center sm:p-0",children:[(0,i.jsx)("div",{className:"fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity",onClick:()=>p(null)}),(0,i.jsxs)("div",{className:"relative transform overflow-hidden rounded-lg bg-white text-left shadow-xl transition-all sm:my-8 sm:w-full sm:max-w-lg",children:[(0,i.jsx)("div",{className:"bg-white px-4 pb-4 pt-5 sm:p-6 sm:pb-4",children:(0,i.jsxs)("div",{className:"sm:flex sm:items-start",children:[(0,i.jsx)("div",{className:"mx-auto flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-full bg-blue-100 sm:mx-0 sm:h-10 sm:w-10",children:(0,i.jsx)("span",{className:"text-xl",children:(null==(s=m[g.targetState])?void 0:s.icon)||"\uD83E\uDD16"})}),(0,i.jsxs)("div",{className:"mt-3 text-center sm:ml-4 sm:mt-0 sm:text-left",children:[(0,i.jsx)("h3",{className:"text-base font-semibold leading-6 text-gray-900",children:g.title}),(0,i.jsx)("div",{className:"mt-2",children:(0,i.jsx)("p",{className:"text-sm text-gray-500",children:g.message})})]})]})}),(0,i.jsxs)("div",{className:"bg-gray-50 px-4 py-3 sm:flex sm:flex-row-reverse sm:px-6",children:[(0,i.jsx)("button",{type:"button",onClick:()=>{g&&(w.mutate(g.targetState),p(null))},disabled:w.isPending,className:"inline-flex w-full justify-center rounded-md px-3 py-2 text-sm font-semibold text-white shadow-sm sm:ml-3 sm:w-auto ".concat(C(g.targetState).bg," hover:opacity-90 disabled:opacity-50"),children:w.isPending?"Processing...":"Confirm"}),(0,i.jsx)("button",{type:"button",onClick:()=>p(null),className:"mt-3 inline-flex w-full justify-center rounded-md bg-white px-3 py-2 text-sm font-semibold text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 hover:bg-gray-50 sm:mt-0 sm:w-auto",children:"Cancel"})]})]})]})})]})}},589:(e,t,s)=>{"use strict";s.d(t,{$:()=>l,s:()=>r});var i=s(494),a=s(6759),n=s(1279),r=class extends a.k{#e;#t;#s;constructor(e){super(),this.mutationId=e.mutationId,this.#t=e.mutationCache,this.#e=[],this.state=e.state||l(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#e.includes(e)||(this.#e.push(e),this.clearGcTimeout(),this.#t.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#e=this.#e.filter(t=>t!==e),this.scheduleGc(),this.#t.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#e.length||("pending"===this.state.status?this.scheduleGc():this.#t.remove(this))}continue(){return this.#s?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:"continue"})};this.#s=(0,n.II)({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(Error("No mutationFn found")),onFail:(e,t)=>{this.#i({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#i({type:"pause"})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#t.canRun(this)});let s="pending"===this.state.status,i=!this.#s.canStart();try{if(s)t();else{this.#i({type:"pending",variables:e,isPaused:i}),await this.#t.config.onMutate?.(e,this);let t=await this.options.onMutate?.(e);t!==this.state.context&&this.#i({type:"pending",context:t,variables:e,isPaused:i})}let a=await this.#s.start();return await this.#t.config.onSuccess?.(a,e,this.state.context,this),await this.options.onSuccess?.(a,e,this.state.context),await this.#t.config.onSettled?.(a,null,this.state.variables,this.state.context,this),await this.options.onSettled?.(a,null,e,this.state.context),this.#i({type:"success",data:a}),a}catch(t){try{throw await this.#t.config.onError?.(t,e,this.state.context,this),await this.options.onError?.(t,e,this.state.context),await this.#t.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this),await this.options.onSettled?.(void 0,t,e,this.state.context),t}finally{this.#i({type:"error",error:t})}}finally{this.#t.runNext(this)}}#i(e){this.state=(t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:!0};case"continue":return{...t,isPaused:!1};case"pending":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}})(this.state),i.jG.batch(()=>{this.#e.forEach(t=>{t.onMutationUpdate(e)}),this.#t.notify({mutation:this,type:"updated",action:e})})}};function l(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}},1447:(e,t,s)=>{Promise.resolve().then(s.bind(s,425))},2942:(e,t,s)=>{"use strict";var i=s(2418);s.o(i,"usePathname")&&s.d(t,{usePathname:function(){return i.usePathname}}),s.o(i,"useRouter")&&s.d(t,{useRouter:function(){return i.useRouter}}),s.o(i,"useSearchParams")&&s.d(t,{useSearchParams:function(){return i.useSearchParams}})},3120:(e,t,s)=>{"use strict";s.d(t,{_:()=>l});var i=s(704);function a(){let e=window.location.hostname,t=window.location.pathname,s=t.startsWith("/agent/");if("agents.ciris.ai"!==e&&!s)return{mode:"standalone",agentId:"default",apiBase:"/v1"};{let e="default";e=s?t.split("/")[2]||"default":localStorage.getItem("selectedAgentId")||"default";let i="/api/".concat(e,"/v1");return{mode:"managed",agentId:e,apiBase:i}}}var n=s(5950);class r{configure(e,t){let s,{mode:i}=a();if("managed"===i)s="".concat(window.location.origin,"/api/").concat(e);else{let t=localStorage.getItem("agent_".concat(e,"_api_url"));s=t||window.location.origin}t||(t=n.a.getAccessToken()||void 0);let r={baseURL:s,authToken:t,agentId:e,mode:i};return this.hasConfigChanged(r)&&this.applyConfiguration(r),r}configureForOAuthCallback(e,t){let s,{mode:i}=a(),n={baseURL:"managed"===i?"".concat(window.location.origin,"/api/").concat(e):window.location.origin,authToken:t,agentId:e,mode:i};return this.applyConfiguration(n),this.storeConfiguration(n),n}getCurrentConfig(){return this.currentConfig}isConfiguredFor(e){return!!this.currentConfig&&this.currentConfig.agentId===e&&!!this.currentConfig.authToken}clear(){this.currentConfig=null,localStorage.removeItem("sdk_config"),this.log("SDK configuration cleared")}applyConfiguration(e){this.log("Applying SDK configuration:",e),i.AQ.setConfig({baseURL:e.baseURL,authToken:e.authToken}),this.currentConfig=e,this.log("SDK configured successfully")}hasConfigChanged(e){return!this.currentConfig||this.currentConfig.baseURL!==e.baseURL||this.currentConfig.authToken!==e.authToken||this.currentConfig.agentId!==e.agentId||this.currentConfig.mode!==e.mode}storeConfiguration(e){let t={baseURL:e.baseURL,agentId:e.agentId,mode:e.mode};localStorage.setItem("sdk_config",JSON.stringify(t)),"standalone"===e.mode&&e.baseURL!==window.location.origin&&localStorage.setItem("agent_".concat(e.agentId,"_api_url"),e.baseURL)}restoreConfiguration(){let e=localStorage.getItem("sdk_config");if(!e)return null;try{let t=JSON.parse(e),s=n.a.getAccessToken()||void 0;return{...t,authToken:s}}catch(e){return null}}log(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];this.debugMode&&console.log("[SDKConfigManager]",...t)}constructor(){this.currentConfig=null,this.debugMode=!1}}let l=new r},4893:(e,t,s)=>{"use strict";s.d(t,{DP:()=>v,HG:()=>h,Nl:()=>o,O4:()=>c,Pi:()=>r,RR:()=>x,RY:()=>m,Rv:()=>f,XR:()=>l,Zu:()=>y,bN:()=>g,c1:()=>w,fC:()=>N,fK:()=>b,lm:()=>p,md:()=>M,mo:()=>n,uc:()=>j,ui:()=>d,vK:()=>u,xZ:()=>C,xm:()=>R});var i=s(4568);s(7620);let a={xs:{width:12,height:12},sm:{width:16,height:16},md:{width:20,height:20},lg:{width:24,height:24}},n=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z",clipRule:"evenodd"})})},r=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})})},l=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{d:"M11 17a1 1 0 001.447.894l4-2A1 1 0 0017 15V9.236a1 1 0 00-1.447-.894l-4 2a1 1 0 00-.553.894V17zM15.211 6.276a1 1 0 000-1.788l-4.764-2.382a1 1 0 00-.894 0L4.789 4.488a1 1 0 000 1.788l4.764 2.382a1 1 0 00.894 0l4.764-2.382zM4.447 8.342A1 1 0 003 9.236V15a1 1 0 00.553.894l4 2A1 1 0 009 17v-5.764a1 1 0 00-.553-.894l-4-2z"})})},o=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsxs)("svg",{className:"animate-spin ".concat(t),width:n,height:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[(0,i.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,i.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]})},d=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"})})},c=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})})},h=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 3v2m6-2v2M9 19v2m6-2v2M5 9H3m2 6H3m18-6h-2m2 6h-2M7 19h10a2 2 0 002-2V7a2 2 0 00-2-2H7a2 2 0 00-2 2v10a2 2 0 002 2zM9 9h6v6H9V9z"})})},u=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",clipRule:"evenodd"})})},m=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M18 8a6 6 0 01-7.743 5.743L10 14l-1 1-1 1H6v2H2v-4l4.257-4.257A6 6 0 1118 8zm-6-4a1 1 0 100 2 2 2 0 012 2 1 1 0 102 0 4 4 0 00-4-4z",clipRule:"evenodd"})})},x=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M2 5a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H4a2 2 0 01-2-2V5zm14 1a1 1 0 11-2 0 1 1 0 012 0zM2 13a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zm14 1a1 1 0 11-2 0 1 1 0 012 0z",clipRule:"evenodd"})})},g=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsxs)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:[(0,i.jsx)("path",{d:"M3 12v3c0 1.657 3.134 3 7 3s7-1.343 7-3v-3c0 1.657-3.134 3-7 3s-7-1.343-7-3z"}),(0,i.jsx)("path",{d:"M3 7v3c0 1.657 3.134 3 7 3s7-1.343 7-3V7c0 1.657-3.134 3-7 3S3 8.657 3 7z"}),(0,i.jsx)("path",{d:"M17 5c0 1.657-3.134 3-7 3S3 6.657 3 5s3.134-3 7-3 7 1.343 7 3z"})]})},p=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})},v=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z",clipRule:"evenodd"})})},f=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{d:"M8 9a3 3 0 100-6 3 3 0 000 6zM8 11a6 6 0 016 6H2a6 6 0 016-6zM16 7a1 1 0 10-2 0v1h-1a1 1 0 100 2h1v1a1 1 0 102 0v-1h1a1 1 0 100-2h-1V7z"})})},b=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})},y=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})},j=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})})},w=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M10 3a1 1 0 011 1v5h5a1 1 0 110 2h-5v5a1 1 0 11-2 0v-5H4a1 1 0 110-2h5V4a1 1 0 011-1z",clipRule:"evenodd"})})},N=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3.055 11H5a2 2 0 012 2v1a2 2 0 002 2 2 2 0 012 2v2.945M8 3.935V5.5A2.5 2.5 0 0010.5 8h.5a2 2 0 012 2 2 2 0 104 0 2 2 0 012-2h1.064M15 20.488V18a2 2 0 012-2h3.064M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})},C=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})})},R=e=>{let{className:t="",size:s="md"}=e,{width:n,height:r}=a[s];return(0,i.jsx)("svg",{className:t,width:n,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})},M=e=>{let{status:t,className:s=""}=e;return(0,i.jsx)("span",{className:"w-3 h-3 rounded-full ".concat({green:"bg-green-500",yellow:"bg-yellow-500",red:"bg-red-500",gray:"bg-gray-500"}[t]," ").concat(s)})}},6258:(e,t,s)=>{"use strict";s.d(t,{n:()=>c});var i=s(7620),a=s(589),n=s(494),r=s(2327),l=s(7703),o=class extends r.Q{#a;#n=void 0;#r;#l;constructor(e,t){super(),this.#a=e,this.setOptions(t),this.bindMethods(),this.#o()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#a.defaultMutationOptions(e),(0,l.f8)(this.options,t)||this.#a.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#r,observer:this}),t?.mutationKey&&this.options.mutationKey&&(0,l.EN)(t.mutationKey)!==(0,l.EN)(this.options.mutationKey)?this.reset():this.#r?.state.status==="pending"&&this.#r.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#r?.removeObserver(this)}onMutationUpdate(e){this.#o(),this.#d(e)}getCurrentResult(){return this.#n}reset(){this.#r?.removeObserver(this),this.#r=void 0,this.#o(),this.#d()}mutate(e,t){return this.#l=t,this.#r?.removeObserver(this),this.#r=this.#a.getMutationCache().build(this.#a,this.options),this.#r.addObserver(this),this.#r.execute(e)}#o(){let e=this.#r?.state??(0,a.$)();this.#n={...e,isPending:"pending"===e.status,isSuccess:"success"===e.status,isError:"error"===e.status,isIdle:"idle"===e.status,mutate:this.mutate,reset:this.reset}}#d(e){n.jG.batch(()=>{if(this.#l&&this.hasListeners()){let t=this.#n.variables,s=this.#n.context;e?.type==="success"?(this.#l.onSuccess?.(e.data,t,s),this.#l.onSettled?.(e.data,null,t,s)):e?.type==="error"&&(this.#l.onError?.(e.error,t,s),this.#l.onSettled?.(void 0,e.error,t,s))}this.listeners.forEach(e=>{e(this.#n)})})}},d=s(7606);function c(e,t){let s=(0,d.jE)(t),[a]=i.useState(()=>new o(s,e));i.useEffect(()=>{a.setOptions(e)},[a,e]);let r=i.useSyncExternalStore(i.useCallback(e=>a.subscribe(n.jG.batchCalls(e)),[a]),()=>a.getCurrentResult(),()=>a.getCurrentResult()),c=i.useCallback((e,t)=>{a.mutate(e,t).catch(l.lQ)},[a]);if(r.error&&(0,l.GU)(a.options.throwOnError,[r.error]))throw r.error;return{...r,mutate:c,mutateAsync:r.mutate}}},9484:(e,t,s)=>{"use strict";s.d(t,{A:()=>h,O:()=>c});var i=s(4568),a=s(7620),n=s(2942),r=s(3237),l=s(704),o=s(3120);let d=(0,a.createContext)(void 0);function c(e){let{children:t}=e,[s,c]=(0,a.useState)(null),[h,u]=(0,a.useState)(!0),[m,x]=(0,a.useState)(null),g=(0,n.useRouter)();(0,a.useEffect)(()=>{let e=window.location.pathname;"/login"===e||e.startsWith("/manager")?u(!1):p();let t=localStorage.getItem("manager_token");t&&x(t)},[]);let p=async()=>{try{if(l.AQ.isAuthenticated()){let e=await l.AQ.auth.getMe();c(e)}}catch(e){console.error("Auth check failed:",e)}finally{u(!1)}},v=(0,a.useCallback)(async(e,t)=>{try{let s=localStorage.getItem("selectedAgentId");if(!s)throw Error("No agent selected");o._.configure(s);let i=await l.AQ.login(e,t),a=l.AQ.auth.getAccessToken();a&&o._.configure(s,a),c(i),r.Ay.success("Welcome, ".concat(i.username||i.user_id,"!")),g.push("/")}catch(e){throw r.Ay.error(e.message||"Login failed"),e}},[g]),f=(0,a.useCallback)(async()=>{try{await l.AQ.logout(),c(null),r.Ay.success("Logged out successfully"),g.push("/login")}catch(e){console.error("Logout failed:",e),r.Ay.error("Logout failed")}},[g]),b=(0,a.useCallback)(e=>!!s&&(s.permissions.includes(e)||"SYSTEM_ADMIN"===s.role),[s]),y=(0,a.useCallback)(e=>{if(!s)return!1;let t=["OBSERVER","ADMIN","AUTHORITY","SYSTEM_ADMIN"];return t.indexOf(s.role)>=t.indexOf(e)},[s]),j=(0,a.useCallback)(e=>{l.AQ.setConfig({authToken:e})},[]),w=(0,a.useCallback)(()=>!!m,[m]);return(0,i.jsx)(d.Provider,{value:{user:s,loading:h,login:v,logout:f,hasPermission:b,hasRole:y,setUser:c,setToken:j,managerToken:m,setManagerToken:x,isManagerAuthenticated:w},children:t})}function h(){let e=(0,a.useContext)(d);if(void 0===e)throw Error("useAuth must be used within an AuthProvider");return e}}},e=>{var t=t=>e(e.s=t);e.O(0,[4534,8903,3297,704,587,8315,7358],()=>t(1447)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[620],{441:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>o});var a=t(4568),r=t(7620),l=t(2942),i=t(704),d=t(653),n=t(3237);function o(){let e=(0,l.useRouter)(),[s,t]=(0,r.useState)("welcome"),[o,c]=(0,r.useState)([]),[m,x]=(0,r.useState)([]),[u,p]=(0,r.useState)([]),[g,h]=(0,r.useState)(!1),[b,f]=(0,r.useState)(""),[y,j]=(0,r.useState)(""),[C,v]=(0,r.useState)(""),[N,L]=(0,r.useState)(""),[w,k]=(0,r.useState)(!1),[_,A]=(0,r.useState)(!1),[S,M]=(0,r.useState)(!1),[P,Z]=(0,r.useState)(""),[I,R]=(0,r.useState)(""),[q,B]=(0,r.useState)(""),[F,E]=(0,r.useState)(""),[T,O]=(0,r.useState)(""),[Y,U]=(0,r.useState)(""),[V,H]=(0,r.useState)(""),[K,Q]=(0,r.useState)(""),[W,G]=(0,r.useState)(""),[z,D]=(0,r.useState)(["api"]),[J,X]=(0,r.useState)({});(0,r.useEffect)(()=>{$()},[]);let $=async()=>{try{let[e,s,t]=await Promise.all([i.AQ.setup.getProviders(),i.AQ.setup.getTemplates(),i.AQ.setup.getAdapters()]);c(e),x(s),p(t),e.length>0&&f(e[0].id);let a=t.filter(e=>e.enabled_by_default).map(e=>e.id);a.length>0&&D(a)}catch(e){console.error("Failed to load setup data:",e),n.Ay.error("Failed to load setup data")}},ee=async()=>{if(!b)return void n.Ay.error("Please select a provider");let e=o.find(e=>e.id===b);if((null==e?void 0:e.requires_api_key)&&!y)return void n.Ay.error("API key is required for this provider");if((null==e?void 0:e.requires_base_url)&&!N)return void n.Ay.error("Base URL is required for this provider");if((null==e?void 0:e.requires_model)&&!C)return void n.Ay.error("Model name is required for this provider");k(!0);try{let e=await i.AQ.setup.validateLLM({provider:b,api_key:y,base_url:N||null,model:C||null});e.valid?(A(!0),n.Ay.success(e.message||"LLM configuration validated!")):(A(!1),n.Ay.error(e.error||"LLM validation failed"))}catch(e){A(!1),n.Ay.error(e.message||"Failed to validate LLM")}finally{k(!1)}},es=async()=>{if(F!==T)return void n.Ay.error("Admin passwords do not match");if(V!==K)return void n.Ay.error("User passwords do not match");if(!_)return void n.Ay.error("Please validate your LLM configuration first");h(!0);try{let e=await i.AQ.setup.complete({llm_provider:b,llm_api_key:y,llm_base_url:N||null,llm_model:C||null,backup_llm_api_key:S&&P?P:null,backup_llm_base_url:S&&q?q:null,backup_llm_model:S&&I?I:null,template_id:W||"general",enabled_adapters:z,adapter_config:J,admin_username:Y,admin_password:V,system_admin_password:F,agent_port:8080});console.log("Setup complete:",e.message),t("complete")}catch(e){n.Ay.error(e.message||"Setup failed")}finally{h(!1)}},et=o.find(e=>e.id===b);return(0,a.jsx)("div",{className:"min-h-screen bg-gradient-to-br from-indigo-50 via-white to-purple-50 flex flex-col items-center justify-center p-4",children:(0,a.jsxs)("div",{className:"w-full max-w-4xl",children:[(0,a.jsxs)("div",{className:"text-center mb-8",children:[(0,a.jsx)(d.A,{className:"mx-auto h-16 w-auto text-brand-primary fill-brand-primary mb-4"}),(0,a.jsx)("h1",{className:"text-4xl font-bold text-gray-900 mb-2",children:"Welcome to CIRIS"})]}),"complete"!==s&&(0,a.jsx)("div",{className:"mb-8",children:(0,a.jsx)("div",{className:"flex items-center justify-center space-x-2 sm:space-x-4",children:["welcome","llm","users","template","adapters"].map((e,t)=>(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)("div",{className:"flex items-center justify-center w-8 h-8 sm:w-10 sm:h-10 rounded-full text-sm sm:text-base ".concat(s===e?"bg-indigo-600 text-white":t<["welcome","llm","users","template","adapters"].indexOf(s)?"bg-green-500 text-white":"bg-gray-200 text-gray-500"),children:t<["welcome","llm","users","template","adapters"].indexOf(s)?"✓":t+1}),t<4&&(0,a.jsx)("div",{className:"w-8 sm:w-16 h-1 ".concat(t<["welcome","llm","users","template","adapters"].indexOf(s)?"bg-green-500":"bg-gray-200")})]},e))})}),(0,a.jsxs)("div",{className:"bg-white rounded-xl shadow-xl p-8",children:["welcome"===s&&(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Let's Get Started"}),(0,a.jsxs)("div",{className:"prose prose-indigo max-w-none",children:[(0,a.jsx)("p",{className:"text-gray-700 leading-relaxed",children:"CIRIS is a next-generation AI assistant that prioritizes cognitive integrity, transparency, and ethical decision-making. This setup wizard will help you configure your instance in just a few steps."}),(0,a.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mt-6 mb-3",children:"What you'll need:"}),(0,a.jsxs)("ul",{className:"space-y-2",children:[(0,a.jsxs)("li",{className:"flex items-start",children:[(0,a.jsx)("span",{className:"text-indigo-600 mr-2",children:"•"}),(0,a.jsxs)("span",{children:[(0,a.jsx)("strong",{children:"LLM API Key"})," - An API key from OpenAI, Anthropic, or another supported provider"]})]}),(0,a.jsxs)("li",{className:"flex items-start",children:[(0,a.jsx)("span",{className:"text-indigo-600 mr-2",children:"•"}),(0,a.jsxs)("span",{children:[(0,a.jsx)("strong",{children:"Admin Password"})," - A secure password for the default admin account"]})]}),(0,a.jsxs)("li",{className:"flex items-start",children:[(0,a.jsx)("span",{className:"text-indigo-600 mr-2",children:"•"}),(0,a.jsxs)("span",{children:[(0,a.jsx)("strong",{children:"Your Account"})," - Username and password for your personal account"]})]})]}),(0,a.jsx)("div",{className:"bg-blue-50 border border-blue-200 rounded-lg p-4 mt-6",children:(0,a.jsxs)("p",{className:"text-sm text-blue-900",children:[(0,a.jsx)("strong",{children:"Note:"})," All data is stored locally on your machine. Your API keys and passwords are encrypted and never shared."]})})]}),(0,a.jsx)("button",{onClick:()=>t("llm"),className:"w-full px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors font-medium",children:"Continue to LLM Setup →"})]}),"llm"===s&&(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Configure Your LLM"}),(0,a.jsx)("button",{onClick:()=>t("welcome"),className:"text-gray-500 hover:text-gray-700",children:"← Back"})]}),(0,a.jsx)("p",{className:"text-gray-600",children:"Choose your preferred LLM provider and enter your API credentials. We'll test the connection to make sure everything works."}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:"Provider"}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-4",children:o.map(e=>(0,a.jsxs)("button",{onClick:()=>{f(e.id),A(!1)},className:"p-4 border-2 rounded-lg text-left transition-all ".concat(b===e.id?"border-indigo-600 bg-indigo-50":"border-gray-200 hover:border-gray-300"),children:[(0,a.jsx)("div",{className:"font-semibold text-gray-900",children:e.name}),(0,a.jsx)("div",{className:"text-xs text-gray-500 mt-1",children:e.description})]},e.id))})]}),et&&et.requires_api_key&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{htmlFor:"apiKey",className:"block text-sm font-medium text-gray-700 mb-2",children:["API Key ",(0,a.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,a.jsx)("input",{id:"apiKey",type:"password",value:y,onChange:e=>{j(e.target.value),A(!1)},className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"sk-...",required:!0})]}),et&&et.requires_model&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{htmlFor:"model",className:"block text-sm font-medium text-gray-700 mb-2",children:["Model Name ",et.requires_model&&(0,a.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,a.jsx)("input",{id:"model",type:"text",value:C,onChange:e=>{v(e.target.value),A(!1)},className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:et.default_model||"Enter model name"}),et.examples.length>0&&(0,a.jsxs)("p",{className:"mt-1 text-xs text-gray-500",children:["Examples: ",et.examples.slice(0,2).join(", ")]})]}),et&&et.requires_base_url&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{htmlFor:"apiBase",className:"block text-sm font-medium text-gray-700 mb-2",children:["API Base URL"," ",et.requires_base_url&&(0,a.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,a.jsx)("input",{id:"apiBase",type:"text",value:N,onChange:e=>{L(e.target.value),A(!1)},className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:et.default_base_url||"http://localhost:11434",required:et.requires_base_url}),et.examples.length>0&&(0,a.jsx)("p",{className:"mt-1 text-xs text-gray-500",children:et.examples[0]})]}),(0,a.jsxs)("div",{className:"flex items-center space-x-4",children:[(0,a.jsx)("button",{onClick:ee,disabled:w||!b,className:"px-6 py-2 bg-purple-600 text-white rounded-lg hover:bg-purple-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:w?"Testing...":"Test Connection"}),_&&(0,a.jsx)("span",{className:"text-green-600 font-medium",children:"✓ Connected"})]}),(0,a.jsxs)("div",{className:"border-t border-gray-200 pt-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("h3",{className:"text-lg font-semibold text-gray-900",children:["Backup LLM"," ",(0,a.jsx)("span",{className:"text-sm font-normal text-gray-500",children:"(Optional)"})]}),(0,a.jsx)("p",{className:"text-sm text-gray-600 mt-1",children:"Configure a secondary LLM provider for redundancy"})]}),(0,a.jsx)("button",{type:"button",onClick:()=>M(!S),className:"px-4 py-2 rounded-lg text-sm font-medium transition-colors ".concat(S?"bg-indigo-100 text-indigo-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"),children:S?"Enabled":"Enable"})]}),S&&(0,a.jsxs)("div",{className:"space-y-4 pl-4 border-l-2 border-indigo-200",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:"Backup API Key"}),(0,a.jsx)("input",{type:"password",value:P,onChange:e=>Z(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Backup LLM API key"})]}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:["Backup Model ",(0,a.jsx)("span",{className:"text-gray-500",children:"(optional)"})]}),(0,a.jsx)("input",{type:"text",value:I,onChange:e=>R(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Model name"})]}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:["Backup Base URL ",(0,a.jsx)("span",{className:"text-gray-500",children:"(optional)"})]}),(0,a.jsx)("input",{type:"text",value:q,onChange:e=>B(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"https://api.openai.com/v1"})]})]})]}),(0,a.jsx)("button",{onClick:()=>t("users"),disabled:!_,className:"w-full px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors font-medium",children:"Continue to User Setup →"})]}),"users"===s&&(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Create Your Accounts"}),(0,a.jsx)("button",{onClick:()=>t("llm"),className:"text-gray-500 hover:text-gray-700",children:"← Back"})]}),(0,a.jsx)("p",{className:"text-gray-600",children:"First, set a secure password for the default admin account. Then create your personal user account."}),(0,a.jsxs)("div",{className:"border-b border-gray-200 pb-6",children:[(0,a.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mb-4",children:"Admin Account"}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{htmlFor:"adminPassword",className:"block text-sm font-medium text-gray-700 mb-2",children:"New Admin Password"}),(0,a.jsx)("input",{id:"adminPassword",type:"password",value:F,onChange:e=>E(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Enter a secure password"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{htmlFor:"adminPasswordConfirm",className:"block text-sm font-medium text-gray-700 mb-2",children:"Confirm Admin Password"}),(0,a.jsx)("input",{id:"adminPasswordConfirm",type:"password",value:T,onChange:e=>O(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Re-enter password"})]})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mb-4",children:"Your Account"}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{htmlFor:"username",className:"block text-sm font-medium text-gray-700 mb-2",children:"Username"}),(0,a.jsx)("input",{id:"username",type:"text",value:Y,onChange:e=>U(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"your_username"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{htmlFor:"password",className:"block text-sm font-medium text-gray-700 mb-2",children:"Password"}),(0,a.jsx)("input",{id:"password",type:"password",value:V,onChange:e=>H(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Enter your password"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{htmlFor:"passwordConfirm",className:"block text-sm font-medium text-gray-700 mb-2",children:"Confirm Password"}),(0,a.jsx)("input",{id:"passwordConfirm",type:"password",value:K,onChange:e=>Q(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Re-enter your password"})]})]})]}),(0,a.jsx)("button",{onClick:()=>t("template"),disabled:!F||!T||!Y||!V||!K,className:"w-full px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors font-medium",children:"Continue to Template Selection →"})]}),"template"===s&&(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Choose Your Agent Template"}),(0,a.jsx)("button",{onClick:()=>t("users"),className:"text-gray-500 hover:text-gray-700",children:"← Back"})]}),(0,a.jsxs)("div",{className:"bg-indigo-50 border border-indigo-200 rounded-lg p-4 sm:p-5 mb-2",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-indigo-900 mb-2",children:"How CIRIS Agent Templates Work"}),(0,a.jsx)("p",{className:"text-sm text-indigo-800 leading-relaxed",children:"Each template contains Standard Operating Procedures (SOPs) that define your agent's role and capabilities. CIRIS agents are mission-driven—their conscience system validates every action against their defined mission to ensure ethical, aligned behavior. For multi-stage workflows, agents use tickets to track progress through each step of their SOPs, automatically generating tasks as work continues."})]}),(0,a.jsx)("div",{className:"bg-blue-50 border border-blue-200 rounded-lg p-4 sm:p-5",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("span",{className:"text-blue-600 text-xl flex-shrink-0",children:"ℹ️"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h4",{className:"text-sm font-semibold text-blue-900 mb-1",children:"Choose Your Agent Template"}),(0,a.jsx)("p",{className:"text-sm text-blue-700",children:"Select from available templates for different use cases including customer service, research, GDPR automation, and moderation. Each template comes with pre-configured SOPs and stewardship tier ratings."})]})]})}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mb-3",children:"Available Templates"}),0===m.length?(0,a.jsx)("div",{className:"text-center py-12 bg-gray-50 rounded-lg border-2 border-gray-200",children:(0,a.jsx)("p",{className:"text-gray-500",children:"Loading templates..."})}):(0,a.jsx)("div",{className:"grid grid-cols-1 gap-3",children:m.map(e=>(0,a.jsx)("button",{onClick:()=>G(e.id),className:"p-4 sm:p-5 border-2 rounded-lg text-left transition-all ".concat(W===e.id?"border-indigo-600 bg-indigo-50":"border-gray-200 hover:border-gray-300"),children:(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)("h4",{className:"text-base sm:text-lg font-semibold text-gray-900",children:e.name}),(0,a.jsxs)("span",{className:"px-2 py-0.5 text-xs font-medium rounded-full ".concat(e.stewardship_tier<=2?"bg-green-100 text-green-800":e.stewardship_tier<=3?"bg-yellow-100 text-yellow-800":"bg-orange-100 text-orange-800"),title:"Stewardship Tier ".concat(e.stewardship_tier,"/5"),children:["Tier ",e.stewardship_tier]})]}),(0,a.jsx)("p",{className:"text-sm text-gray-600 mt-1",children:e.description})]}),W===e.id&&(0,a.jsx)("span",{className:"text-indigo-600 text-xl flex-shrink-0",children:"✓"})]})},e.id))})]}),(0,a.jsx)("div",{className:"flex flex-col sm:flex-row gap-3 sm:gap-4",children:(0,a.jsx)("button",{onClick:()=>t("adapters"),className:"flex-1 px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors font-medium",children:"Continue to Adapters →"})})]}),"adapters"===s&&(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Configure Adapters"}),(0,a.jsx)("button",{onClick:()=>t("template"),className:"text-gray-500 hover:text-gray-700",children:"← Back"})]}),(0,a.jsx)("div",{className:"bg-yellow-50 border border-yellow-200 rounded-lg p-4 sm:p-5",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("span",{className:"text-yellow-600 text-xl flex-shrink-0",children:"⚠️"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-yellow-900 mb-1",children:"Restart Required"}),(0,a.jsx)("p",{className:"text-sm text-yellow-800",children:"Adapter configuration changes require restarting the CIRIS agent to take effect."})]})]})}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mb-3",children:"Available Adapters"}),0===u.length?(0,a.jsx)("div",{className:"text-center py-12 bg-gray-50 rounded-lg border-2 border-gray-200",children:(0,a.jsx)("p",{className:"text-gray-500",children:"Loading adapters..."})}):(0,a.jsx)("div",{className:"grid grid-cols-1 gap-3",children:u.map(e=>(0,a.jsx)("button",{onClick:()=>{D(s=>s.includes(e.id)?s.filter(s=>s!==e.id):[...s,e.id])},className:"p-4 sm:p-5 border-2 rounded-lg text-left transition-all ".concat(z.includes(e.id)?"border-indigo-600 bg-indigo-50":"border-gray-200 hover:border-gray-300"),children:(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)("h4",{className:"text-base sm:text-lg font-semibold text-gray-900",children:e.name}),e.enabled_by_default&&(0,a.jsx)("span",{className:"px-2 py-0.5 text-xs font-medium rounded-full bg-blue-100 text-blue-800",children:"Default"})]}),(0,a.jsx)("p",{className:"text-sm text-gray-600 mt-1",children:e.description}),e.required_env_vars.length>0&&(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsxs)("p",{className:"text-xs text-gray-500",children:["Required: ",e.required_env_vars.join(", ")]})})]}),z.includes(e.id)&&(0,a.jsx)("span",{className:"text-indigo-600 text-xl flex-shrink-0",children:"✓"})]})},e.id))})]}),(0,a.jsx)("div",{className:"flex flex-col sm:flex-row gap-3 sm:gap-4",children:(0,a.jsx)("button",{onClick:es,disabled:g,className:"flex-1 px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors font-medium",children:g?"Completing Setup...":"Complete Setup"})})]}),"complete"===s&&(0,a.jsxs)("div",{className:"text-center space-y-6 py-8",children:[(0,a.jsx)("div",{className:"w-20 h-20 bg-green-100 rounded-full flex items-center justify-center mx-auto",children:(0,a.jsx)("span",{className:"text-4xl",children:"✓"})}),(0,a.jsx)("h2",{className:"text-3xl font-bold text-gray-900",children:"Setup Complete!"}),(0,a.jsx)("p",{className:"text-gray-600 max-w-md mx-auto",children:"Your CIRIS instance is now configured and ready to use. You can log in with your credentials."}),(0,a.jsx)("button",{onClick:()=>e.push("/login"),className:"px-8 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors font-medium",children:"Go to Login →"})]})]}),(0,a.jsx)("div",{className:"text-center mt-8 text-sm text-gray-500",children:"CIRIS v1.0 • Standalone Mode"})]})})}},653:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var a=t(4568);t(7620);let r=e=>(0,a.jsxs)("svg",{width:"32",height:"32",viewBox:"0 0 61 60",className:"dark:fill-neutral-50 fill-neutral-700 hover:fill-brand-primary",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,a.jsx)("path",{d:"M32.336 12.0436C32.4286 11.5339 32.9043 11.1903 33.4123 11.2561L33.4614 11.264L33.7724 11.3231C36.8714 11.9397 39.6944 13.3109 42.0437 15.239L42.2768 15.4338L42.3141 15.4668C42.6876 15.8173 42.7242 16.4031 42.3892 16.7983C42.0542 17.1933 41.4703 17.253 41.0634 16.942L41.0247 16.9106L40.8151 16.7359C38.706 15.0049 36.1737 13.7751 33.3944 13.2222L33.1157 13.169L33.0668 13.159C32.5681 13.0421 32.2435 12.5532 32.336 12.0436Z"}),(0,a.jsx)("path",{d:"M43.1071 17.5197C43.502 17.1844 44.0878 17.2208 44.4386 17.594L44.4718 17.631L44.6669 17.8644C46.5977 20.2139 47.9717 23.0395 48.5885 26.139L48.6476 26.4496L48.6552 26.4991C48.721 27.007 48.3777 27.4827 47.868 27.5753C47.3584 27.6678 46.8696 27.3432 46.7526 26.8446L46.7424 26.7957L46.6894 26.5169C46.1364 23.7377 44.9043 21.2031 43.1709 19.0938L42.9958 18.8844L42.9645 18.8455C42.6532 18.4388 42.7123 17.855 43.1071 17.5197Z"}),(0,a.jsx)("path",{d:"M26.7225 11.2561C27.2304 11.1903 27.7062 11.5339 27.7987 12.0436C27.8942 12.5696 27.5451 13.0734 27.0191 13.1689L26.7403 13.2222C23.8684 13.7935 21.2604 15.0877 19.1106 16.913C18.703 17.2591 18.0919 17.2091 17.7458 16.8015C17.3998 16.3939 17.4495 15.7828 17.8571 15.4367C20.3293 13.3377 23.348 11.8677 26.673 11.2639L26.7225 11.2561Z"}),(0,a.jsx)("path",{d:"M15.657 17.6345C16.0028 17.2267 16.6137 17.1764 17.0215 17.5221C17.4293 17.8679 17.4797 18.479 17.1339 18.8869C15.2518 21.1066 13.9309 23.8171 13.3895 26.7959L13.3795 26.8448C13.2625 27.3435 12.7735 27.6682 12.2639 27.5755C11.7378 27.4799 11.3889 26.9759 11.4845 26.4499L11.5437 26.1392C12.181 22.939 13.6268 20.029 15.657 17.6345Z"}),(0,a.jsx)("path",{d:"M46.7426 32.8925C46.8381 32.3664 47.3421 32.0174 47.8682 32.1129C48.3943 32.2085 48.7433 32.7123 48.6479 33.2383C48.0441 36.5631 46.574 39.5845 44.4748 42.0569L44.4415 42.0942C44.0907 42.4674 43.5049 42.5038 43.11 42.1685C42.7025 41.8224 42.6527 41.2114 42.9987 40.8038L43.1738 40.5944C44.9645 38.4152 46.218 35.7814 46.7426 32.8925Z"}),(0,a.jsx)("path",{d:"M41.0274 42.7752C41.4352 42.4294 42.0461 42.4795 42.3919 42.8873C42.7377 43.2951 42.6875 43.906 42.2798 44.2518C39.8051 46.3505 36.7866 47.8208 33.4614 48.4246C32.9354 48.5201 32.4316 48.171 32.3361 47.645C32.2405 47.1189 32.5896 46.6149 33.1157 46.5193C36.0975 45.9779 38.8052 44.6599 41.0274 42.7752Z"}),(0,a.jsx)("path",{d:"M17.7399 42.8864C18.0752 42.4916 18.659 42.4325 19.0657 42.7438L19.1046 42.7751L19.314 42.9502C21.4233 44.6836 23.958 45.9157 26.7371 46.4687L27.0159 46.5216L27.0648 46.5319C27.5634 46.6489 27.888 47.1377 27.7955 47.6473C27.7029 48.1569 27.2272 48.5003 26.7193 48.4345L26.6698 48.4269L26.3592 48.3678C23.2597 47.751 20.4341 46.377 18.0846 44.4462L17.8512 44.2511L17.8142 44.2179C17.441 43.8671 17.4046 43.2813 17.7399 42.8864Z"}),(0,a.jsx)("path",{d:"M12.267 32.1129C12.7767 32.0203 13.2657 32.3449 13.3826 32.8437L13.3926 32.8923L13.4459 33.1708C13.9988 35.9477 15.2284 38.4803 16.9598 40.5923L17.1346 40.8019L17.1659 40.8408C17.4767 41.2479 17.4167 41.8319 17.0214 42.1666C16.6261 42.5013 16.0405 42.4641 15.6901 42.0905L15.6569 42.0534L15.4624 41.8198C13.5348 39.4684 12.1634 36.6458 11.5468 33.5493L11.4876 33.2386L11.4798 33.1894C11.4138 32.6815 11.7573 32.2056 12.267 32.1129Z"}),(0,a.jsx)("path",{d:"M31.9221 30.8439C31.853 30.8439 31.7838 30.8439 31.7147 30.8439L29.1172 30.7941L29.0674 28.1967C28.9927 24.3267 31.0397 20.7417 34.4089 18.8386L34.4394 18.822L47.1418 12.244C47.482 12.0669 47.8472 12.4321 47.6701 12.7723L41.0755 25.5051C39.2055 28.8163 35.7146 30.8494 31.9221 30.8494V30.8439ZM31.0148 28.891L31.7506 28.9048C34.9013 28.9684 37.8224 27.3032 39.377 24.5619L43.7117 16.1941L35.3439 20.5287C32.6026 22.0833 30.9401 25.0045 31.001 28.1552L31.0148 28.891Z"}),(0,a.jsx)("path",{d:"M12.9896 47.4444C12.6493 47.6214 12.2842 47.2562 12.4612 46.916L19.0559 34.1832C20.9258 30.872 24.4168 28.8389 28.2092 28.8389C28.2784 28.8389 28.3475 28.8389 28.4167 28.8389L31.0142 28.8887L31.064 31.4861C31.1387 35.356 29.0917 38.941 25.7224 40.8442L25.692 40.8608L12.9896 47.4388V47.4444ZM20.7488 35.1237L16.4141 43.4914L24.7819 39.1568C27.5232 37.6022 29.1857 34.6811 29.1249 31.5304L29.111 30.7946L28.3752 30.7807C25.2383 30.7171 22.3034 32.3824 20.7488 35.1237Z"}),(0,a.jsx)("path",{d:"M47.6672 46.9155C47.8442 47.2558 47.4791 47.6209 47.1388 47.4439L34.406 40.8492C31.0368 38.9461 28.9898 35.3583 29.0645 31.4912L29.1143 28.8937L31.7117 28.8439C35.5789 28.7665 39.1694 30.8162 41.0726 34.1855L41.0892 34.2159L47.6672 46.9183V46.9155ZM35.3438 39.1563L43.7115 43.491L39.3769 35.1232C37.8223 32.3819 34.8956 30.7194 31.7505 30.7803L31.0147 30.7941L31.0008 31.5299C30.94 34.6806 32.6025 37.6017 35.3438 39.1563Z"}),(0,a.jsx)("path",{d:"M28.2073 30.8441C24.4176 30.8441 20.9239 28.8109 19.0539 25.4998L19.0373 25.4693L12.4593 12.7669C12.2823 12.4267 12.6474 12.0616 12.9876 12.2386L25.7205 18.8332C29.0897 20.7364 31.1367 24.3241 31.062 28.1913L31.0122 30.7887L28.4148 30.8385C28.3456 30.8385 28.2764 30.8385 28.2073 30.8385V30.8441ZM20.7496 24.562C22.3042 27.3033 25.2226 28.9769 28.376 28.905L29.1118 28.8911L29.1257 28.1553C29.1865 25.0046 27.524 22.0835 24.7827 20.5289L16.415 16.1943L20.7496 24.562Z"}),(0,a.jsx)("path",{d:"M34.7623 18.6488C35.0452 18.5252 35.3718 18.5436 35.6402 18.7012C35.9265 18.8694 36.1067 19.1725 36.1176 19.5044C36.2342 23.0677 34.8579 26.5765 32.2192 29.1134V29.1137L30.7364 30.5381C30.4591 30.8046 30.0503 30.8817 29.6951 30.7345C29.3398 30.5873 29.1052 30.2437 29.0975 29.8593L29.0646 28.1914V28.1912C28.9884 24.3248 31.0389 20.7323 34.4054 18.8312L34.4381 18.8136L34.7064 18.6753L34.7623 18.6488ZM34.0869 21.394C32.2478 22.9245 31.1191 25.1684 31.0079 27.5882C32.7132 25.8919 33.7709 23.7061 34.0869 21.394Z"}),(0,a.jsx)("path",{d:"M24.4942 18.7035C24.7805 18.5354 25.133 18.5259 25.4281 18.6781L25.6909 18.8134L25.7236 18.8312C29.0343 20.7025 31.0761 24.2151 31.0664 28.01L31.0642 28.1909L31.0323 29.7858C31.0469 30.0482 30.9554 30.3154 30.7571 30.5176C30.3852 30.8968 29.7772 30.9057 29.3945 30.5374L27.915 29.1132L27.7923 28.9935C25.2338 26.4668 23.9018 23.0147 24.0166 19.5068L24.0207 19.445C24.0504 19.1376 24.2257 18.8611 24.4942 18.7035ZM26.0475 21.3997C26.3637 23.7071 27.4192 25.8877 29.1203 27.5823C29.0074 25.1696 27.8804 22.9294 26.0475 21.3997Z"}),(0,a.jsx)("path",{d:"M30.4418 59.6377C30.3256 60.0028 29.8111 60.0028 29.6949 59.6377L24.4696 43.1843C23.211 38.6616 24.5304 33.8318 27.9135 30.5787L30.0684 28.5068L32.2233 30.5787C35.6063 33.8318 36.9258 38.6643 35.6672 43.1843L35.6561 43.2175L30.4391 59.6377H30.4418ZM26.3285 42.6477L30.0684 54.4179L33.8083 42.6477C34.8677 38.8165 33.7474 34.728 30.8816 31.9729L30.0684 31.1928L29.2551 31.9729C26.3893 34.728 25.269 38.8192 26.3285 42.6477Z"}),(0,a.jsx)("path",{d:"M20.1518 35.9118C19.0121 35.9118 17.8586 35.7597 16.7272 35.4444L16.694 35.4333L0.273854 30.2162C-0.0912847 30.1001 -0.0912847 29.5855 0.273854 29.4694L16.7272 24.244C21.25 22.9854 26.0798 24.3049 29.3328 27.6879L31.4047 29.8428L29.3328 31.9977C26.893 34.5343 23.568 35.9118 20.149 35.9118H20.1518ZM17.2639 33.5827C21.0951 34.6422 25.1835 33.5218 27.9387 30.6561L28.7215 29.8428L27.9387 29.0295C25.1835 26.1637 21.0923 25.0434 17.2639 26.1029L5.49368 29.8428L17.2639 33.5827Z"}),(0,a.jsx)("path",{d:"M40.0106 35.9118C36.5915 35.9118 33.2666 34.5343 30.8268 31.9977L28.7549 29.8428L30.8268 27.6879C34.0798 24.3049 38.9124 22.9854 43.4324 24.244L43.4655 24.2551L59.8857 29.4721C60.2509 29.5883 60.2509 30.1028 59.8857 30.219L43.4324 35.4444C42.301 35.7597 41.1502 35.9118 40.0078 35.9118H40.0106ZM32.2237 30.6561C34.9788 33.5218 39.0673 34.6422 42.8985 33.5827L54.6687 29.8428L42.8985 26.1029C39.0673 25.0434 34.9788 26.1637 32.2237 29.0295L31.4409 29.8428L32.2237 30.6561Z"}),(0,a.jsx)("path",{d:"M24.749 16.4571L29.6977 0.869557C29.8139 0.504418 30.3284 0.504418 30.4446 0.869557L35.3933 16.4516C35.504 16.7974 35.1278 17.0933 34.818 16.9052L30.0324 14.0256L25.3243 16.9108C25.0145 17.1016 24.6356 16.8029 24.7462 16.4571H24.749Z"})]})},2942:(e,s,t)=>{"use strict";var a=t(2418);t.o(a,"usePathname")&&t.d(s,{usePathname:function(){return a.usePathname}}),t.o(a,"useRouter")&&t.d(s,{useRouter:function(){return a.useRouter}}),t.o(a,"useSearchParams")&&t.d(s,{useSearchParams:function(){return a.useSearchParams}})},9637:(e,s,t)=>{Promise.resolve().then(t.bind(t,441))}},e=>{var s=s=>e(e.s=s);e.O(0,[4534,704,587,8315,7358],()=>s(9637)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[620],{441:(e,s,r)=>{"use strict";r.r(s),r.d(s,{default:()=>i});var t=r(4568),a=r(7620),l=r(2942),n=r(704),d=r(653),o=r(3237);function i(){let e=(0,l.useRouter)(),[s,r]=(0,a.useState)("welcome"),[i,c]=(0,a.useState)([]),[m,u]=(0,a.useState)([]),[x,p]=(0,a.useState)(!1),[h,g]=(0,a.useState)(""),[b,y]=(0,a.useState)(""),[f,C]=(0,a.useState)(""),[j,L]=(0,a.useState)(""),[v,N]=(0,a.useState)(!1),[w,k]=(0,a.useState)(!1),[A,_]=(0,a.useState)(!1),[M,S]=(0,a.useState)(""),[P,Z]=(0,a.useState)(""),[I,R]=(0,a.useState)(""),[q,B]=(0,a.useState)(""),[E,F]=(0,a.useState)(""),[U,O]=(0,a.useState)(null),[Y,T]=(0,a.useState)(""),[V,K]=(0,a.useState)(""),[H,Q]=(0,a.useState)(""),[G,W]=(0,a.useState)(null),z="ally";(0,a.useEffect)(()=>{D()},[]);let D=async()=>{try{let[e,s]=await Promise.all([n.AQ.setup.getProviders(),n.AQ.setup.getTemplates()]);c(e),u(s),e.length>0&&g(e[0].id)}catch(e){console.error("Failed to load setup data:",e),o.Ay.error("Failed to load setup data")}},J=async()=>{if(!h)return void o.Ay.error("Please select a provider");let e=i.find(e=>e.id===h);if((null==e?void 0:e.requires_api_key)&&!b)return void o.Ay.error("API key is required for this provider");if((null==e?void 0:e.requires_base_url)&&!j)return void o.Ay.error("Base URL is required for this provider");if((null==e?void 0:e.requires_model)&&!f)return void o.Ay.error("Model name is required for this provider");N(!0);try{let e=await n.AQ.setup.validateLLM({provider:h,api_key:b,base_url:j||null,model:f||null});e.valid?(k(!0),o.Ay.success(e.message||"LLM configuration validated!")):(k(!1),o.Ay.error(e.error||"LLM validation failed"))}catch(s){k(!1);let e=s instanceof Error?s.message:"Failed to validate LLM";o.Ay.error(e)}finally{N(!1)}},X=async()=>{if(q!==E)return void o.Ay.error("Admin passwords do not match");if(q.length<8)return void o.Ay.error("Admin password must be at least 8 characters");if(V!==H)return void o.Ay.error("User passwords do not match");if(V.length<8)return void o.Ay.error("User password must be at least 8 characters");if(!w)return void o.Ay.error("Please validate your LLM configuration first");p(!0);try{let e=await n.AQ.setup.complete({llm_provider:h,llm_api_key:b,llm_base_url:j||null,llm_model:f||null,backup_llm_api_key:A&&M?M:null,backup_llm_base_url:A&&I?I:null,backup_llm_model:A&&P?P:null,template_id:z,enabled_adapters:["api"],adapter_config:{},admin_username:Y,admin_password:V,system_admin_password:q,agent_port:8080});console.log("Setup complete:",e.message);let s=m.find(e=>e.id===z);s&&(localStorage.setItem("selectedAgentName",s.name),localStorage.setItem("selectedAgentId",s.id)),r("complete")}catch(s){let e=s instanceof Error?s.message:"Setup failed";o.Ay.error(e)}finally{p(!1)}},$=i.find(e=>e.id===h);return(0,t.jsx)("div",{className:"min-h-screen bg-gradient-to-br from-indigo-50 via-white to-purple-50 flex flex-col items-center justify-center p-4",children:(0,t.jsxs)("div",{className:"w-full max-w-4xl",children:[(0,t.jsxs)("div",{className:"text-center mb-8",children:[(0,t.jsx)(d.A,{className:"mx-auto h-16 w-auto text-brand-primary fill-brand-primary mb-4"}),(0,t.jsx)("h1",{className:"text-4xl font-bold text-gray-900 mb-2",children:"Welcome to CIRIS"})]}),"complete"!==s&&(0,t.jsx)("div",{className:"mb-8",children:(0,t.jsx)("div",{className:"flex items-center justify-center space-x-2 sm:space-x-4",children:["welcome","llm","users"].map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center",children:[(0,t.jsx)("div",{className:"flex items-center justify-center w-8 h-8 sm:w-10 sm:h-10 rounded-full text-sm sm:text-base ".concat(s===e?"bg-indigo-600 text-white":r<["welcome","llm","users"].indexOf(s)?"bg-green-500 text-white":"bg-gray-200 text-gray-500"),children:r<["welcome","llm","users"].indexOf(s)?"✓":r+1}),r<2&&(0,t.jsx)("div",{className:"w-8 sm:w-16 h-1 ".concat(r<["welcome","llm","users"].indexOf(s)?"bg-green-500":"bg-gray-200")})]},e))})}),(0,t.jsxs)("div",{className:"bg-white rounded-xl shadow-xl p-8",children:["welcome"===s&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Let's Get Started"}),(0,t.jsxs)("div",{className:"prose prose-indigo max-w-none",children:[(0,t.jsx)("p",{className:"text-gray-700 leading-relaxed",children:"CIRIS is a next-generation AI assistant that prioritizes cognitive integrity, transparency, and ethical decision-making. This setup wizard will help you configure your instance in just a few steps."}),(0,t.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mt-6 mb-3",children:"What you'll configure:"}),(0,t.jsxs)("ul",{className:"space-y-2",children:[(0,t.jsxs)("li",{className:"flex items-start",children:[(0,t.jsx)("span",{className:"text-indigo-600 mr-2",children:"•"}),(0,t.jsxs)("span",{children:[(0,t.jsx)("strong",{children:"LLM API Key"})," - An API key from OpenAI, Anthropic, or another supported provider"]})]}),(0,t.jsxs)("li",{className:"flex items-start",children:[(0,t.jsx)("span",{className:"text-indigo-600 mr-2",children:"•"}),(0,t.jsxs)("span",{children:[(0,t.jsx)("strong",{children:"Admin Password"})," - A secure password (min 8 characters) for the default admin account"]})]}),(0,t.jsxs)("li",{className:"flex items-start",children:[(0,t.jsx)("span",{className:"text-indigo-600 mr-2",children:"•"}),(0,t.jsxs)("span",{children:[(0,t.jsx)("strong",{children:"Your Account"})," - Username and password for your personal account"]})]})]}),(0,t.jsx)("div",{className:"bg-blue-50 border border-blue-200 rounded-lg p-4 mt-6",children:(0,t.jsxs)("p",{className:"text-sm text-blue-900",children:[(0,t.jsx)("strong",{children:"Note:"})," All data is stored locally on your machine. Your API keys and passwords are encrypted and never shared."]})})]}),(0,t.jsx)("button",{onClick:()=>r("llm"),className:"w-full px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors font-medium",children:"Continue to LLM Setup →"})]}),"llm"===s&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Configure Your LLM"}),(0,t.jsx)("button",{onClick:()=>r("welcome"),className:"text-gray-500 hover:text-gray-700",children:"← Back"})]}),(0,t.jsx)("p",{className:"text-gray-600",children:"Choose your preferred LLM provider and enter your API credentials. We'll test the connection to make sure everything works."}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:"Provider"}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-4",children:i.map(e=>(0,t.jsxs)("button",{onClick:()=>{g(e.id),k(!1)},className:"p-4 border-2 rounded-lg text-left transition-all ".concat(h===e.id?"border-indigo-600 bg-indigo-50":"border-gray-200 hover:border-gray-300"),children:[(0,t.jsx)("div",{className:"font-semibold text-gray-900",children:e.name}),(0,t.jsx)("div",{className:"text-xs text-gray-500 mt-1",children:e.description})]},e.id))})]}),$&&$.requires_api_key&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{htmlFor:"apiKey",className:"block text-sm font-medium text-gray-700 mb-2",children:["API Key ",(0,t.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,t.jsx)("input",{id:"apiKey",type:"password",value:b,onChange:e=>{y(e.target.value),k(!1)},className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"sk-...",required:!0})]}),$&&$.requires_model&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{htmlFor:"model",className:"block text-sm font-medium text-gray-700 mb-2",children:["Model Name ",$.requires_model&&(0,t.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,t.jsx)("input",{id:"model",type:"text",value:f,onChange:e=>{C(e.target.value),k(!1)},className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:$.default_model||"Enter model name"}),$.examples.length>0&&(0,t.jsxs)("p",{className:"mt-1 text-xs text-gray-500",children:["Examples: ",$.examples.slice(0,2).join(", ")]})]}),$&&$.requires_base_url&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{htmlFor:"apiBase",className:"block text-sm font-medium text-gray-700 mb-2",children:["API Base URL"," ",$.requires_base_url&&(0,t.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,t.jsx)("input",{id:"apiBase",type:"text",value:j,onChange:e=>{L(e.target.value),k(!1)},className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:$.default_base_url||"http://localhost:11434",required:$.requires_base_url}),$.examples.length>0&&(0,t.jsx)("p",{className:"mt-1 text-xs text-gray-500",children:$.examples[0]})]}),(0,t.jsxs)("div",{className:"flex items-center space-x-4",children:[(0,t.jsx)("button",{onClick:J,disabled:v||!h,className:"px-6 py-2 bg-purple-600 text-white rounded-lg hover:bg-purple-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:v?"Testing...":"Test Connection"}),w&&(0,t.jsx)("span",{className:"text-green-600 font-medium",children:"✓ Connected"})]}),(0,t.jsxs)("div",{className:"border-t border-gray-200 pt-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"text-lg font-semibold text-gray-900",children:["Backup LLM"," ",(0,t.jsx)("span",{className:"text-sm font-normal text-gray-500",children:"(Optional)"})]}),(0,t.jsx)("p",{className:"text-sm text-gray-600 mt-1",children:"Configure a secondary LLM provider for redundancy"})]}),(0,t.jsx)("button",{type:"button",onClick:()=>_(!A),className:"px-4 py-2 rounded-lg text-sm font-medium transition-colors ".concat(A?"bg-indigo-100 text-indigo-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"),children:A?"Enabled":"Enable"})]}),A&&(0,t.jsxs)("div",{className:"space-y-4 pl-4 border-l-2 border-indigo-200",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:"Backup API Key"}),(0,t.jsx)("input",{type:"password",value:M,onChange:e=>S(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Backup LLM API key"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:["Backup Model ",(0,t.jsx)("span",{className:"text-gray-500",children:"(optional)"})]}),(0,t.jsx)("input",{type:"text",value:P,onChange:e=>Z(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Model name"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-gray-700 mb-2",children:["Backup Base URL ",(0,t.jsx)("span",{className:"text-gray-500",children:"(optional)"})]}),(0,t.jsx)("input",{type:"text",value:I,onChange:e=>R(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"https://api.openai.com/v1"})]})]})]}),(0,t.jsx)("button",{onClick:()=>r("users"),disabled:!w,className:"w-full px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors font-medium",children:"Continue to User Setup →"})]}),"users"===s&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h2",{className:"text-2xl font-bold text-gray-900",children:"Create Your Accounts"}),(0,t.jsx)("button",{onClick:()=>r("llm"),className:"text-gray-500 hover:text-gray-700",children:"← Back"})]}),(0,t.jsx)("p",{className:"text-gray-600",children:"First, set a secure password for the default admin account. Then create your personal user account."}),(0,t.jsxs)("div",{className:"border-b border-gray-200 pb-6",children:[(0,t.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mb-4",children:"Admin Account"}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,t.jsxs)("label",{htmlFor:"adminPassword",className:"block text-sm font-medium text-gray-700",children:["New Admin Password"," ",(0,t.jsx)("span",{className:"text-xs text-gray-500",children:"(min 8 characters)"})]}),(0,t.jsx)("button",{type:"button",onClick:()=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*",s="";for(let r=0;r<16;r++)s+=e.charAt(Math.floor(Math.random()*e.length));B(s),F(s),O(null),navigator.clipboard.writeText(s).then(()=>{o.Ay.success("Random password generated and copied to clipboard!")}).catch(()=>{o.Ay.success("Random password generated: ".concat(s))})},className:"text-sm text-indigo-600 hover:text-indigo-800 font-medium",children:"Generate Random"})]}),(0,t.jsx)("input",{id:"adminPassword",type:"password",value:q,onChange:e=>{B(e.target.value),e.target.value.length>0&&e.target.value.length<8?O("Password must be at least 8 characters"):O(null)},className:"w-full px-4 py-2 border rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent ".concat(U?"border-red-500":"border-gray-300"),placeholder:"Enter a secure password (min 8 chars)"}),U&&(0,t.jsx)("p",{className:"mt-1 text-sm text-red-600",children:U})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"adminPasswordConfirm",className:"block text-sm font-medium text-gray-700 mb-2",children:"Confirm Admin Password"}),(0,t.jsx)("input",{id:"adminPasswordConfirm",type:"password",value:E,onChange:e=>F(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Re-enter password"})]})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold text-gray-900 mb-4",children:"Your Account"}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"username",className:"block text-sm font-medium text-gray-700 mb-2",children:"Username"}),(0,t.jsx)("input",{id:"username",type:"text",value:Y,onChange:e=>T(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"your_username"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{htmlFor:"password",className:"block text-sm font-medium text-gray-700 mb-2",children:["Password ",(0,t.jsx)("span",{className:"text-xs text-gray-500",children:"(min 8 characters)"})]}),(0,t.jsx)("input",{id:"password",type:"password",value:V,onChange:e=>{K(e.target.value),e.target.value.length>0&&e.target.value.length<8?W("Password must be at least 8 characters"):W(null)},className:"w-full px-4 py-2 border rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent ".concat(G?"border-red-500":"border-gray-300"),placeholder:"Enter your password (min 8 chars)"}),G&&(0,t.jsx)("p",{className:"mt-1 text-sm text-red-600",children:G})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"passwordConfirm",className:"block text-sm font-medium text-gray-700 mb-2",children:"Confirm Password"}),(0,t.jsx)("input",{id:"passwordConfirm",type:"password",value:H,onChange:e=>Q(e.target.value),className:"w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-transparent",placeholder:"Re-enter your password"})]})]})]}),(0,t.jsx)("button",{onClick:X,disabled:x||!q||q.length<8||q!==E||!Y||!V||V.length<8||V!==H,className:"w-full px-6 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors font-medium",children:x?"Completing Setup...":"Complete Setup"})]}),"complete"===s&&(0,t.jsxs)("div",{className:"text-center space-y-6 py-8",children:[(0,t.jsx)("div",{className:"w-20 h-20 bg-green-100 rounded-full flex items-center justify-center mx-auto",children:(0,t.jsx)("span",{className:"text-4xl",children:"✓"})}),(0,t.jsx)("h2",{className:"text-3xl font-bold text-gray-900",children:"Setup Complete!"}),(0,t.jsx)("p",{className:"text-gray-600 max-w-md mx-auto",children:"Your CIRIS instance is now configured and ready to use. You can log in with your credentials."}),(0,t.jsx)("button",{onClick:()=>e.push("/login"),className:"px-8 py-3 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors font-medium",children:"Go to Login →"})]})]}),(0,t.jsx)("div",{className:"text-center mt-8 text-sm text-gray-500",children:"CIRIS v1.0 • Standalone Mode"})]})})}},653:(e,s,r)=>{"use strict";r.d(s,{A:()=>a});var t=r(4568);r(7620);let a=e=>(0,t.jsxs)("svg",{width:"32",height:"32",viewBox:"0 0 61 60",className:"dark:fill-neutral-50 fill-neutral-700 hover:fill-brand-primary",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,t.jsx)("path",{d:"M32.336 12.0436C32.4286 11.5339 32.9043 11.1903 33.4123 11.2561L33.4614 11.264L33.7724 11.3231C36.8714 11.9397 39.6944 13.3109 42.0437 15.239L42.2768 15.4338L42.3141 15.4668C42.6876 15.8173 42.7242 16.4031 42.3892 16.7983C42.0542 17.1933 41.4703 17.253 41.0634 16.942L41.0247 16.9106L40.8151 16.7359C38.706 15.0049 36.1737 13.7751 33.3944 13.2222L33.1157 13.169L33.0668 13.159C32.5681 13.0421 32.2435 12.5532 32.336 12.0436Z"}),(0,t.jsx)("path",{d:"M43.1071 17.5197C43.502 17.1844 44.0878 17.2208 44.4386 17.594L44.4718 17.631L44.6669 17.8644C46.5977 20.2139 47.9717 23.0395 48.5885 26.139L48.6476 26.4496L48.6552 26.4991C48.721 27.007 48.3777 27.4827 47.868 27.5753C47.3584 27.6678 46.8696 27.3432 46.7526 26.8446L46.7424 26.7957L46.6894 26.5169C46.1364 23.7377 44.9043 21.2031 43.1709 19.0938L42.9958 18.8844L42.9645 18.8455C42.6532 18.4388 42.7123 17.855 43.1071 17.5197Z"}),(0,t.jsx)("path",{d:"M26.7225 11.2561C27.2304 11.1903 27.7062 11.5339 27.7987 12.0436C27.8942 12.5696 27.5451 13.0734 27.0191 13.1689L26.7403 13.2222C23.8684 13.7935 21.2604 15.0877 19.1106 16.913C18.703 17.2591 18.0919 17.2091 17.7458 16.8015C17.3998 16.3939 17.4495 15.7828 17.8571 15.4367C20.3293 13.3377 23.348 11.8677 26.673 11.2639L26.7225 11.2561Z"}),(0,t.jsx)("path",{d:"M15.657 17.6345C16.0028 17.2267 16.6137 17.1764 17.0215 17.5221C17.4293 17.8679 17.4797 18.479 17.1339 18.8869C15.2518 21.1066 13.9309 23.8171 13.3895 26.7959L13.3795 26.8448C13.2625 27.3435 12.7735 27.6682 12.2639 27.5755C11.7378 27.4799 11.3889 26.9759 11.4845 26.4499L11.5437 26.1392C12.181 22.939 13.6268 20.029 15.657 17.6345Z"}),(0,t.jsx)("path",{d:"M46.7426 32.8925C46.8381 32.3664 47.3421 32.0174 47.8682 32.1129C48.3943 32.2085 48.7433 32.7123 48.6479 33.2383C48.0441 36.5631 46.574 39.5845 44.4748 42.0569L44.4415 42.0942C44.0907 42.4674 43.5049 42.5038 43.11 42.1685C42.7025 41.8224 42.6527 41.2114 42.9987 40.8038L43.1738 40.5944C44.9645 38.4152 46.218 35.7814 46.7426 32.8925Z"}),(0,t.jsx)("path",{d:"M41.0274 42.7752C41.4352 42.4294 42.0461 42.4795 42.3919 42.8873C42.7377 43.2951 42.6875 43.906 42.2798 44.2518C39.8051 46.3505 36.7866 47.8208 33.4614 48.4246C32.9354 48.5201 32.4316 48.171 32.3361 47.645C32.2405 47.1189 32.5896 46.6149 33.1157 46.5193C36.0975 45.9779 38.8052 44.6599 41.0274 42.7752Z"}),(0,t.jsx)("path",{d:"M17.7399 42.8864C18.0752 42.4916 18.659 42.4325 19.0657 42.7438L19.1046 42.7751L19.314 42.9502C21.4233 44.6836 23.958 45.9157 26.7371 46.4687L27.0159 46.5216L27.0648 46.5319C27.5634 46.6489 27.888 47.1377 27.7955 47.6473C27.7029 48.1569 27.2272 48.5003 26.7193 48.4345L26.6698 48.4269L26.3592 48.3678C23.2597 47.751 20.4341 46.377 18.0846 44.4462L17.8512 44.2511L17.8142 44.2179C17.441 43.8671 17.4046 43.2813 17.7399 42.8864Z"}),(0,t.jsx)("path",{d:"M12.267 32.1129C12.7767 32.0203 13.2657 32.3449 13.3826 32.8437L13.3926 32.8923L13.4459 33.1708C13.9988 35.9477 15.2284 38.4803 16.9598 40.5923L17.1346 40.8019L17.1659 40.8408C17.4767 41.2479 17.4167 41.8319 17.0214 42.1666C16.6261 42.5013 16.0405 42.4641 15.6901 42.0905L15.6569 42.0534L15.4624 41.8198C13.5348 39.4684 12.1634 36.6458 11.5468 33.5493L11.4876 33.2386L11.4798 33.1894C11.4138 32.6815 11.7573 32.2056 12.267 32.1129Z"}),(0,t.jsx)("path",{d:"M31.9221 30.8439C31.853 30.8439 31.7838 30.8439 31.7147 30.8439L29.1172 30.7941L29.0674 28.1967C28.9927 24.3267 31.0397 20.7417 34.4089 18.8386L34.4394 18.822L47.1418 12.244C47.482 12.0669 47.8472 12.4321 47.6701 12.7723L41.0755 25.5051C39.2055 28.8163 35.7146 30.8494 31.9221 30.8494V30.8439ZM31.0148 28.891L31.7506 28.9048C34.9013 28.9684 37.8224 27.3032 39.377 24.5619L43.7117 16.1941L35.3439 20.5287C32.6026 22.0833 30.9401 25.0045 31.001 28.1552L31.0148 28.891Z"}),(0,t.jsx)("path",{d:"M12.9896 47.4444C12.6493 47.6214 12.2842 47.2562 12.4612 46.916L19.0559 34.1832C20.9258 30.872 24.4168 28.8389 28.2092 28.8389C28.2784 28.8389 28.3475 28.8389 28.4167 28.8389L31.0142 28.8887L31.064 31.4861C31.1387 35.356 29.0917 38.941 25.7224 40.8442L25.692 40.8608L12.9896 47.4388V47.4444ZM20.7488 35.1237L16.4141 43.4914L24.7819 39.1568C27.5232 37.6022 29.1857 34.6811 29.1249 31.5304L29.111 30.7946L28.3752 30.7807C25.2383 30.7171 22.3034 32.3824 20.7488 35.1237Z"}),(0,t.jsx)("path",{d:"M47.6672 46.9155C47.8442 47.2558 47.4791 47.6209 47.1388 47.4439L34.406 40.8492C31.0368 38.9461 28.9898 35.3583 29.0645 31.4912L29.1143 28.8937L31.7117 28.8439C35.5789 28.7665 39.1694 30.8162 41.0726 34.1855L41.0892 34.2159L47.6672 46.9183V46.9155ZM35.3438 39.1563L43.7115 43.491L39.3769 35.1232C37.8223 32.3819 34.8956 30.7194 31.7505 30.7803L31.0147 30.7941L31.0008 31.5299C30.94 34.6806 32.6025 37.6017 35.3438 39.1563Z"}),(0,t.jsx)("path",{d:"M28.2073 30.8441C24.4176 30.8441 20.9239 28.8109 19.0539 25.4998L19.0373 25.4693L12.4593 12.7669C12.2823 12.4267 12.6474 12.0616 12.9876 12.2386L25.7205 18.8332C29.0897 20.7364 31.1367 24.3241 31.062 28.1913L31.0122 30.7887L28.4148 30.8385C28.3456 30.8385 28.2764 30.8385 28.2073 30.8385V30.8441ZM20.7496 24.562C22.3042 27.3033 25.2226 28.9769 28.376 28.905L29.1118 28.8911L29.1257 28.1553C29.1865 25.0046 27.524 22.0835 24.7827 20.5289L16.415 16.1943L20.7496 24.562Z"}),(0,t.jsx)("path",{d:"M34.7623 18.6488C35.0452 18.5252 35.3718 18.5436 35.6402 18.7012C35.9265 18.8694 36.1067 19.1725 36.1176 19.5044C36.2342 23.0677 34.8579 26.5765 32.2192 29.1134V29.1137L30.7364 30.5381C30.4591 30.8046 30.0503 30.8817 29.6951 30.7345C29.3398 30.5873 29.1052 30.2437 29.0975 29.8593L29.0646 28.1914V28.1912C28.9884 24.3248 31.0389 20.7323 34.4054 18.8312L34.4381 18.8136L34.7064 18.6753L34.7623 18.6488ZM34.0869 21.394C32.2478 22.9245 31.1191 25.1684 31.0079 27.5882C32.7132 25.8919 33.7709 23.7061 34.0869 21.394Z"}),(0,t.jsx)("path",{d:"M24.4942 18.7035C24.7805 18.5354 25.133 18.5259 25.4281 18.6781L25.6909 18.8134L25.7236 18.8312C29.0343 20.7025 31.0761 24.2151 31.0664 28.01L31.0642 28.1909L31.0323 29.7858C31.0469 30.0482 30.9554 30.3154 30.7571 30.5176C30.3852 30.8968 29.7772 30.9057 29.3945 30.5374L27.915 29.1132L27.7923 28.9935C25.2338 26.4668 23.9018 23.0147 24.0166 19.5068L24.0207 19.445C24.0504 19.1376 24.2257 18.8611 24.4942 18.7035ZM26.0475 21.3997C26.3637 23.7071 27.4192 25.8877 29.1203 27.5823C29.0074 25.1696 27.8804 22.9294 26.0475 21.3997Z"}),(0,t.jsx)("path",{d:"M30.4418 59.6377C30.3256 60.0028 29.8111 60.0028 29.6949 59.6377L24.4696 43.1843C23.211 38.6616 24.5304 33.8318 27.9135 30.5787L30.0684 28.5068L32.2233 30.5787C35.6063 33.8318 36.9258 38.6643 35.6672 43.1843L35.6561 43.2175L30.4391 59.6377H30.4418ZM26.3285 42.6477L30.0684 54.4179L33.8083 42.6477C34.8677 38.8165 33.7474 34.728 30.8816 31.9729L30.0684 31.1928L29.2551 31.9729C26.3893 34.728 25.269 38.8192 26.3285 42.6477Z"}),(0,t.jsx)("path",{d:"M20.1518 35.9118C19.0121 35.9118 17.8586 35.7597 16.7272 35.4444L16.694 35.4333L0.273854 30.2162C-0.0912847 30.1001 -0.0912847 29.5855 0.273854 29.4694L16.7272 24.244C21.25 22.9854 26.0798 24.3049 29.3328 27.6879L31.4047 29.8428L29.3328 31.9977C26.893 34.5343 23.568 35.9118 20.149 35.9118H20.1518ZM17.2639 33.5827C21.0951 34.6422 25.1835 33.5218 27.9387 30.6561L28.7215 29.8428L27.9387 29.0295C25.1835 26.1637 21.0923 25.0434 17.2639 26.1029L5.49368 29.8428L17.2639 33.5827Z"}),(0,t.jsx)("path",{d:"M40.0106 35.9118C36.5915 35.9118 33.2666 34.5343 30.8268 31.9977L28.7549 29.8428L30.8268 27.6879C34.0798 24.3049 38.9124 22.9854 43.4324 24.244L43.4655 24.2551L59.8857 29.4721C60.2509 29.5883 60.2509 30.1028 59.8857 30.219L43.4324 35.4444C42.301 35.7597 41.1502 35.9118 40.0078 35.9118H40.0106ZM32.2237 30.6561C34.9788 33.5218 39.0673 34.6422 42.8985 33.5827L54.6687 29.8428L42.8985 26.1029C39.0673 25.0434 34.9788 26.1637 32.2237 29.0295L31.4409 29.8428L32.2237 30.6561Z"}),(0,t.jsx)("path",{d:"M24.749 16.4571L29.6977 0.869557C29.8139 0.504418 30.3284 0.504418 30.4446 0.869557L35.3933 16.4516C35.504 16.7974 35.1278 17.0933 34.818 16.9052L30.0324 14.0256L25.3243 16.9108C25.0145 17.1016 24.6356 16.8029 24.7462 16.4571H24.749Z"})]})},2942:(e,s,r)=>{"use strict";var t=r(2418);r.o(t,"usePathname")&&r.d(s,{usePathname:function(){return t.usePathname}}),r.o(t,"useRouter")&&r.d(s,{useRouter:function(){return t.useRouter}}),r.o(t,"useSearchParams")&&r.d(s,{useSearchParams:function(){return t.useSearchParams}})},7063:(e,s,r)=>{Promise.resolve().then(r.bind(r,441))}},e=>{var s=s=>e(e.s=s);e.O(0,[4534,704,587,8315,7358],()=>s(7063)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7572],{351:(e,s,t)=>{Promise.resolve().then(t.bind(t,4287))},4287:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>o});var l=t(4568),a=t(3297),i=t(704),r=t(7261),d=t.n(r),n=t(6264),c=t(3835),m=t(4893);function o(){var e,s,t,r,o,x,h,u,g,v,j,N,f,p,y,w,b,_,M,k,z,R,A,C,S;let{currentAgent:L,isLoadingAgents:I,error:B}=(0,c.f)(),{data:H,error:q}=(0,a.I)({queryKey:["dashboard-health",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getHealth(),refetchInterval:5e3,enabled:!!L&&!I,retry:!1}),{data:V}=(0,a.I)({queryKey:["dashboard-resources",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getResources(),refetchInterval:5e3,enabled:!!L&&!I}),{data:D}=(0,a.I)({queryKey:["dashboard-services",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getServices(),refetchInterval:1e4,enabled:!!L&&!I}),{data:F}=(0,a.I)({queryKey:["dashboard-agent",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.agent.getStatus(),refetchInterval:5e3,enabled:!!L&&!I}),{data:U}=(0,a.I)({queryKey:["dashboard-memory",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.memory.getStats(),refetchInterval:3e4,enabled:!!L&&!I}),{data:K}=(0,a.I)({queryKey:["agent-status",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.agent.getStatus(),enabled:!!L&&!I}),{data:Q}=(0,a.I)({queryKey:["runtime-state",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getRuntimeState(),enabled:!!L&&!I}),{data:E}=(0,a.I)({queryKey:["dashboard-telemetry",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.telemetry.getOverview(),refetchInterval:3e4,enabled:!!L&&!I}),{data:O}=(0,a.I)({queryKey:["dashboard-logs",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.telemetry.getLogs("ERROR",void 0,5),refetchInterval:1e4,enabled:!!L&&!I}),{data:P}=(0,a.I)({queryKey:["dashboard-runtime",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getRuntimeStatus(),refetchInterval:5e3,enabled:!!L&&!I}),{data:T}=(0,a.I)({queryKey:["dashboard-queue",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getProcessingQueueStatus(),refetchInterval:5e3,enabled:!!L&&!I}),W={healthy:(null==D||null==(e=D.services)?void 0:e.filter(e=>!0===e.healthy).length)||0,degraded:(null==D||null==(s=D.services)?void 0:s.filter(e=>!1===e.healthy&&!0===e.available).length)||0,unhealthy:(null==D||null==(t=D.services)?void 0:t.filter(e=>!1===e.available).length)||0,total:(null==D?void 0:D.total_services)||0};if(I)return(0,l.jsx)(n.O,{children:(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)(m.Nl,{className:"w-8 h-8 mx-auto mb-4 animate-spin"}),(0,l.jsx)("p",{className:"text-gray-600",children:"Loading agent configuration..."})]})})});if(B)return(0,l.jsx)(n.O,{children:(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsxs)("div",{className:"text-center bg-red-50 border border-red-200 rounded-md p-6",children:[(0,l.jsx)("p",{className:"text-red-600",children:"Failed to load agent configuration"}),(0,l.jsx)("p",{className:"text-sm text-red-500 mt-2",children:B.message})]})})});if(!L)return(0,l.jsx)(n.O,{children:(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)("p",{className:"text-gray-600",children:"No agent selected"}),(0,l.jsx)(d(),{href:"/login",className:"text-indigo-600 hover:text-indigo-500 mt-2 inline-block",children:"Return to login"})]})})});let G=q||void 0===H&&L&&!I;return(0,l.jsx)(n.O,{children:(0,l.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8",children:[(0,l.jsxs)("div",{className:"mb-8",children:[(0,l.jsx)("h1",{className:"text-3xl font-bold text-gray-900",children:"CIRIS System Dashboard"}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("p",{className:"mt-2 text-lg text-gray-600",children:"Real-time monitoring of all system components"}),(null==F?void 0:F.version)&&(0,l.jsxs)("div",{className:"mt-2 text-sm text-gray-500",children:[(0,l.jsx)("span",{className:"font-medium",children:"Version:"})," ",F.version,F.codename&&(0,l.jsxs)("span",{className:"ml-2 italic",children:['"',F.codename,'"']})]})]})]}),G&&(0,l.jsx)("div",{className:"mb-8 bg-red-50 border-l-4 border-red-400 p-4",children:(0,l.jsxs)("div",{className:"flex",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("svg",{className:"h-5 w-5 text-red-400",viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})})}),(0,l.jsxs)("div",{className:"ml-3",children:[(0,l.jsx)("h3",{className:"text-sm font-medium text-red-800",children:"API Configuration Error"}),(0,l.jsxs)("div",{className:"mt-2 text-sm text-red-700",children:[(0,l.jsx)("p",{children:"Unable to connect to agent API. This usually means:"}),(0,l.jsxs)("ul",{className:"list-disc list-inside mt-1",children:[(0,l.jsx)("li",{children:"OAuth token is not properly configured"}),(0,l.jsx)("li",{children:"SDK is pointing to wrong endpoint"}),(0,l.jsxs)("li",{children:["Agent ",null==L?void 0:L.agent_id," is not accessible"]})]}),(0,l.jsxs)("p",{className:"mt-2",children:["Current SDK configuration:",(0,l.jsx)("br",{}),"- Base URL: ",i.AQ.getBaseURL(),(0,l.jsx)("br",{}),"- Auth Token: ",i.aS.getAccessToken()?"Present":"Missing",(0,l.jsx)("br",{}),"- Agent ID: ",(null==L?void 0:L.agent_id)||"Not set",(0,l.jsx)("br",{}),"- SDK Transport Base: ",(null==(o=i.AQ.transport)||null==(r=o.getBaseURL)?void 0:r.call(o))||"Unknown"]}),q&&(0,l.jsxs)("div",{className:"mt-2",children:[(0,l.jsxs)("p",{className:"font-mono text-xs",children:["Error: ",q.message]}),(0,l.jsx)("p",{className:"font-mono text-xs text-red-600",children:"Check Network Tab: The failing URL will show what's actually being called"})]})]})]})]})}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-5 sm:grid-cols-2 lg:grid-cols-4 mb-8",children:[(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)(m.md,{status:(e=>{switch(e){case"healthy":return"green";case"degraded":return"yellow";case"unhealthy":return"red";default:return"gray"}})((null==H?void 0:H.status)||"gray"),className:"h-8 w-8"})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"System Health"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==H||null==(x=H.status)?void 0:x.toUpperCase())||"UNKNOWN"})]})})]})})}),(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("div",{className:"p-3 bg-indigo-100 rounded-lg",children:(0,l.jsx)(m.mo,{className:"text-indigo-600",size:"lg"})})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"Agent State"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==F?void 0:F.cognitive_state)||"UNKNOWN"})]})})]})})}),(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("div",{className:"p-3 bg-green-100 rounded-lg",children:(0,l.jsx)(m.O4,{className:"text-green-600",size:"lg"})})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"Uptime"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==H?void 0:H.uptime_seconds)?(e=>{let s=Math.floor(e/86400),t=Math.floor(e%86400/3600),l=Math.floor(e%3600/60);return"".concat(s,"d ").concat(t,"h ").concat(l,"m")})(H.uptime_seconds):"N/A"})]})})]})})}),(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("div",{className:"p-3 bg-purple-100 rounded-lg",children:(0,l.jsx)(m.HG,{className:"text-purple-600",size:"lg"})})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"Memory Nodes"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==U||null==(h=U.total_nodes)?void 0:h.toLocaleString())||"0"})]})})]})})})]}),(null==F?void 0:F.version)&&(0,l.jsx)("div",{className:"bg-white shadow rounded-lg mb-8",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h2",{className:"text-lg font-medium text-gray-900 mb-4",children:"Version Information"}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-3",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Version"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900 font-mono",children:F.version})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Codename"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900",children:F.codename||"N/A"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Code Hash"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900 font-mono",children:F.code_hash||"N/A"})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h2",{className:"text-lg font-medium text-gray-900 mb-4",children:"Quick Access"}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",children:[(0,l.jsx)(d(),{href:"/dashboard",className:"relative rounded-lg border border-blue-300 bg-blue-50 px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-blue-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-blue-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-blue-900",children:"System Dashboard"}),(0,l.jsx)("p",{className:"text-sm text-blue-700 truncate",children:"Real-time system monitoring"})]})}),(0,l.jsx)(d(),{href:"/api-demo",className:"relative rounded-lg border border-indigo-300 bg-indigo-50 px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-indigo-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-indigo-900",children:"API Explorer"}),(0,l.jsx)("p",{className:"text-sm text-indigo-700 truncate",children:"Interactive API demonstration"})]})}),(0,l.jsx)(d(),{href:"/comms",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"Communications"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"Chat with the agent"})]})}),(0,l.jsx)(d(),{href:"/system",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"System Status"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"Monitor health & resources"})]})}),(0,l.jsx)(d(),{href:"/memory",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"Memory Graph"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"Explore agent memories"})]})}),(0,l.jsx)(d(),{href:"/audit",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"Audit Trail"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"View system activity"})]})})]})]})}),K&&(0,l.jsx)("div",{className:"bg-white shadow rounded-lg my-8",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h2",{className:"text-lg font-medium text-gray-900 mb-4",children:"Agent Status"}),(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-x-4 gap-y-6 sm:grid-cols-2",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Name"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900",children:K.agent_id})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"State"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900",children:(0,l.jsxs)("span",{className:"inline-flex items-center rounded-md px-2 py-1 text-xs font-medium ".concat((null==Q?void 0:Q.processor_state)==="paused"?"bg-yellow-100 text-yellow-800":"bg-green-100 text-green-800"),children:[K.cognitive_state," ",(null==Q?void 0:Q.processor_state)==="paused"&&"(Paused)"]})})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Uptime"}),(0,l.jsxs)("dd",{className:"mt-1 text-sm text-gray-900",children:[Math.floor(K.uptime_seconds/3600),"h"," ",Math.floor(K.uptime_seconds%3600/60),"m"]})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Processor Status"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900 capitalize",children:(null==Q?void 0:Q.processor_state)||"Unknown"})]})]})]})}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-2 mb-8",children:[(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Current Resource Usage"}),(0,l.jsxs)("div",{className:"space-y-4",children:[(0,l.jsxs)("div",{children:[(0,l.jsxs)("div",{className:"flex justify-between items-center mb-1",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"CPU Usage"}),(0,l.jsxs)("span",{className:"text-sm font-bold ".concat(((null==V||null==(u=V.current_usage)?void 0:u.cpu_percent)||0)>80?"text-red-600":((null==V||null==(g=V.current_usage)?void 0:g.cpu_percent)||0)>60?"text-yellow-600":"text-green-600"),children:[(null==V||null==(j=V.current_usage)||null==(v=j.cpu_percent)?void 0:v.toFixed(1))||0,"%"]})]}),(0,l.jsx)("div",{className:"w-full bg-gray-200 rounded-full h-2",children:(0,l.jsx)("div",{className:"h-2 rounded-full transition-all duration-300 ".concat(((null==V||null==(N=V.current_usage)?void 0:N.cpu_percent)||0)>80?"bg-red-500":((null==V||null==(f=V.current_usage)?void 0:f.cpu_percent)||0)>60?"bg-yellow-500":"bg-green-500"),style:{width:"".concat((null==V||null==(p=V.current_usage)?void 0:p.cpu_percent)||0,"%")}})})]}),(0,l.jsxs)("div",{children:[(0,l.jsxs)("div",{className:"flex justify-between items-center mb-1",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"Memory Usage"}),(0,l.jsxs)("span",{className:"text-sm font-bold ".concat(((null==V||null==(y=V.current_usage)?void 0:y.memory_percent)||0)>80?"text-red-600":((null==V||null==(w=V.current_usage)?void 0:w.memory_percent)||0)>60?"text-yellow-600":"text-green-600"),children:[(null==V||null==(b=V.current_usage)?void 0:b.memory_mb)||0," MB (",(null==V||null==(M=V.current_usage)||null==(_=M.memory_percent)?void 0:_.toFixed(1))||0,"%)"]})]}),(0,l.jsx)("div",{className:"w-full bg-gray-200 rounded-full h-2",children:(0,l.jsx)("div",{className:"h-2 rounded-full transition-all duration-300 ".concat(((null==V||null==(k=V.current_usage)?void 0:k.memory_percent)||0)>80?"bg-red-500":((null==V||null==(z=V.current_usage)?void 0:z.memory_percent)||0)>60?"bg-yellow-500":"bg-green-500"),style:{width:"".concat((null==V||null==(R=V.current_usage)?void 0:R.memory_percent)||0,"%")}})})]}),(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"Disk Usage"}),(0,l.jsx)("span",{className:"text-sm font-bold text-gray-900",children:(null==V||null==(A=V.current_usage)?void 0:A.disk_used_mb)?"".concat((V.current_usage.disk_used_mb/1024).toFixed(1)," GB"):"N/A"})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Environmental Impact"}),(0,l.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)("div",{className:"text-2xl font-bold text-green-700",children:(null==E?void 0:E.carbon_24h_grams)?(E.carbon_24h_grams/1e3).toFixed(3):"0.000"}),(0,l.jsx)("div",{className:"text-xs text-gray-600 mt-1",children:"kg CO₂ (24h)"})]}),(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)("div",{className:"text-2xl font-bold text-blue-700",children:(null==E?void 0:E.tokens_last_hour)?E.tokens_last_hour.toLocaleString():"0"}),(0,l.jsx)("div",{className:"text-xs text-gray-600 mt-1",children:"Tokens/hour"})]}),(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsxs)("div",{className:"text-2xl font-bold text-purple-700",children:["$",(null==E?void 0:E.cost_24h_cents)?(E.cost_24h_cents/100).toFixed(2):"0.00"]}),(0,l.jsx)("div",{className:"text-xs text-gray-600 mt-1",children:"Cost (24h)"})]})]}),(0,l.jsxs)("div",{className:"mt-4 pt-4 border-t grid grid-cols-2 gap-4 text-sm",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("span",{className:"text-gray-600",children:"Hourly Rate:"}),(0,l.jsxs)("span",{className:"ml-2 font-medium",children:["$",(null==E?void 0:E.cost_last_hour_cents)?(E.cost_last_hour_cents/100).toFixed(2):"0.00","/hr"]})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("span",{className:"text-gray-600",children:"Carbon Rate:"}),(0,l.jsxs)("span",{className:"ml-2 font-medium",children:[(null==E||null==(C=E.carbon_last_hour_grams)?void 0:C.toFixed(1))||"0.0","g/hr"]})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Service Health Distribution"}),(0,l.jsxs)("div",{className:"space-y-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(m.md,{status:"green",className:"h-5 w-5"}),(0,l.jsx)("span",{className:"ml-2 text-sm font-medium text-gray-700",children:"Healthy Services"})]}),(0,l.jsx)("span",{className:"text-lg font-semibold text-green-600",children:W.healthy})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(m.md,{status:"yellow",className:"h-5 w-5"}),(0,l.jsx)("span",{className:"ml-2 text-sm font-medium text-gray-700",children:"Degraded Services"})]}),(0,l.jsx)("span",{className:"text-lg font-semibold text-yellow-600",children:W.degraded})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(m.md,{status:"red",className:"h-5 w-5"}),(0,l.jsx)("span",{className:"ml-2 text-sm font-medium text-gray-700",children:"Unhealthy Services"})]}),(0,l.jsx)("span",{className:"text-lg font-semibold text-red-600",children:W.unhealthy})]}),(0,l.jsx)("div",{className:"pt-2 mt-2 border-t border-gray-200",children:(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"Total Services"}),(0,l.jsx)("span",{className:"text-lg font-semibold text-gray-900",children:W.total})]})})]})]})})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-3 mb-8",children:[(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Runtime Status"}),(0,l.jsx)("div",{className:"space-y-3",children:(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Runtime State"}),(0,l.jsx)("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium ".concat((null==P?void 0:P.is_paused)?"bg-yellow-100 text-yellow-800":"bg-green-100 text-green-800"),children:(null==P?void 0:P.is_paused)?"PAUSED":"RUNNING"})]})})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Processing Queue"}),(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Queue Size"}),(0,l.jsx)("span",{className:"text-lg font-semibold",children:(null==T?void 0:T.queue_size)||0})]}),(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Max Size"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:(null==T?void 0:T.max_size)||"N/A"})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Telemetry"}),(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Total Metrics"}),(0,l.jsx)("span",{className:"text-lg font-semibold",children:(null==E||null==(S=E.total_metrics)?void 0:S.toLocaleString())||"0"})]}),(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Active Services"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:(null==E?void 0:E.active_services)||0})]})]})]})})]}),O&&O.length>0&&(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Recent Errors"}),(0,l.jsx)("div",{className:"space-y-2",children:O.map((e,s)=>(0,l.jsxs)("div",{className:"flex items-start space-x-3 p-3 bg-red-50 rounded-lg",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)(m.md,{status:"red"})}),(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsxs)("p",{className:"text-sm font-medium text-red-900",children:[e.service," - ",e.level]}),(0,l.jsx)("p",{className:"text-sm text-red-700 truncate",children:e.message}),(0,l.jsx)("p",{className:"text-xs text-red-600 mt-1",children:new Date(e.timestamp).toLocaleString()})]})]},s))})]})}),(0,l.jsxs)("div",{className:"mt-8 bg-blue-50 rounded-lg p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-blue-900 mb-4",children:"Quick Links"}),(0,l.jsxs)("div",{className:"grid grid-cols-2 gap-4 sm:grid-cols-4",children:[(0,l.jsxs)("a",{href:"/api-demo",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDE80"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"API Explorer"})]}),(0,l.jsxs)("a",{href:"/system",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"⚙️"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"System Status"})]}),(0,l.jsxs)("a",{href:"/memory",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"\uD83E\uDDE0"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"Memory Graph"})]}),(0,l.jsxs)("a",{href:"/config",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDD27"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"Configuration"})]})]})]})]})})}},4893:(e,s,t)=>{"use strict";t.d(s,{DP:()=>j,HG:()=>o,Nl:()=>n,O4:()=>m,Pi:()=>r,RR:()=>u,RY:()=>h,Rv:()=>N,XR:()=>d,Zu:()=>p,bN:()=>g,c1:()=>w,fC:()=>b,fK:()=>f,lm:()=>v,md:()=>k,mo:()=>i,uc:()=>y,ui:()=>c,vK:()=>x,xZ:()=>_,xm:()=>M});var l=t(4568);t(7620);let a={xs:{width:12,height:12},sm:{width:16,height:16},md:{width:20,height:20},lg:{width:24,height:24}},i=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z",clipRule:"evenodd"})})},r=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})})},d=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{d:"M11 17a1 1 0 001.447.894l4-2A1 1 0 0017 15V9.236a1 1 0 00-1.447-.894l-4 2a1 1 0 00-.553.894V17zM15.211 6.276a1 1 0 000-1.788l-4.764-2.382a1 1 0 00-.894 0L4.789 4.488a1 1 0 000 1.788l4.764 2.382a1 1 0 00.894 0l4.764-2.382zM4.447 8.342A1 1 0 003 9.236V15a1 1 0 00.553.894l4 2A1 1 0 009 17v-5.764a1 1 0 00-.553-.894l-4-2z"})})},n=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsxs)("svg",{className:"animate-spin ".concat(s),width:i,height:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[(0,l.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,l.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]})},c=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"})})},m=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})})},o=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 3v2m6-2v2M9 19v2m6-2v2M5 9H3m2 6H3m18-6h-2m2 6h-2M7 19h10a2 2 0 002-2V7a2 2 0 00-2-2H7a2 2 0 00-2 2v10a2 2 0 002 2zM9 9h6v6H9V9z"})})},x=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",clipRule:"evenodd"})})},h=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M18 8a6 6 0 01-7.743 5.743L10 14l-1 1-1 1H6v2H2v-4l4.257-4.257A6 6 0 1118 8zm-6-4a1 1 0 100 2 2 2 0 012 2 1 1 0 102 0 4 4 0 00-4-4z",clipRule:"evenodd"})})},u=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M2 5a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H4a2 2 0 01-2-2V5zm14 1a1 1 0 11-2 0 1 1 0 012 0zM2 13a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zm14 1a1 1 0 11-2 0 1 1 0 012 0z",clipRule:"evenodd"})})},g=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsxs)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:[(0,l.jsx)("path",{d:"M3 12v3c0 1.657 3.134 3 7 3s7-1.343 7-3v-3c0 1.657-3.134 3-7 3s-7-1.343-7-3z"}),(0,l.jsx)("path",{d:"M3 7v3c0 1.657 3.134 3 7 3s7-1.343 7-3V7c0 1.657-3.134 3-7 3S3 8.657 3 7z"}),(0,l.jsx)("path",{d:"M17 5c0 1.657-3.134 3-7 3S3 6.657 3 5s3.134-3 7-3 7 1.343 7 3z"})]})},v=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})},j=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z",clipRule:"evenodd"})})},N=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{d:"M8 9a3 3 0 100-6 3 3 0 000 6zM8 11a6 6 0 016 6H2a6 6 0 016-6zM16 7a1 1 0 10-2 0v1h-1a1 1 0 100 2h1v1a1 1 0 102 0v-1h1a1 1 0 100-2h-1V7z"})})},f=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})},p=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})},y=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})})},w=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M10 3a1 1 0 011 1v5h5a1 1 0 110 2h-5v5a1 1 0 11-2 0v-5H4a1 1 0 110-2h5V4a1 1 0 011-1z",clipRule:"evenodd"})})},b=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3.055 11H5a2 2 0 012 2v1a2 2 0 002 2 2 2 0 012 2v2.945M8 3.935V5.5A2.5 2.5 0 0010.5 8h.5a2 2 0 012 2 2 2 0 104 0 2 2 0 012-2h1.064M15 20.488V18a2 2 0 012-2h3.064M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})},_=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})})},M=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})},k=e=>{let{status:s,className:t=""}=e;return(0,l.jsx)("span",{className:"w-3 h-3 rounded-full ".concat({green:"bg-green-500",yellow:"bg-yellow-500",red:"bg-red-500",gray:"bg-gray-500"}[s]," ").concat(t)})}},6264:(e,s,t)=>{"use strict";t.d(s,{O:()=>d});var l=t(4568),a=t(7620),i=t(2942),r=t(9484);function d(e){let{children:s,requiredRole:t,requiredPermission:d}=e,{user:n,loading:c,hasRole:m,hasPermission:o}=(0,r.A)(),x=(0,i.useRouter)();return((0,a.useEffect)(()=>{if(!c){if(!n)return void x.push("/login");if(t&&!m(t)||d&&!o(d))return void x.push("/unauthorized")}},[n,c,t,d,m,o,x]),c)?(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsx)("div",{className:"text-lg",children:"Loading..."})}):n&&(!t||m(t))&&(!d||o(d))?(0,l.jsx)(l.Fragment,{children:s}):null}}},e=>{var s=s=>e(e.s=s);e.O(0,[4534,8903,3297,8072,704,3835,587,8315,7358],()=>s(351)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7572],{217:(e,s,t)=>{Promise.resolve().then(t.bind(t,4287))},4287:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>o});var l=t(4568),a=t(3297),i=t(704),r=t(7261),d=t.n(r),n=t(6264),c=t(3835),m=t(4893);function o(){var e,s,t,r,o,x,h,u,g,v,j,N,f,p,y,w,b,_,M,k,z,R,A,C,S;let{currentAgent:L,isLoadingAgents:I,error:B}=(0,c.f)(),{data:H,error:q}=(0,a.I)({queryKey:["dashboard-health",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getHealth(),refetchInterval:5e3,enabled:!!L&&!I,retry:!1}),{data:V}=(0,a.I)({queryKey:["dashboard-resources",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getResources(),refetchInterval:5e3,enabled:!!L&&!I}),{data:D}=(0,a.I)({queryKey:["dashboard-services",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getServices(),refetchInterval:1e4,enabled:!!L&&!I}),{data:F}=(0,a.I)({queryKey:["dashboard-agent",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.agent.getStatus(),refetchInterval:5e3,enabled:!!L&&!I}),{data:U}=(0,a.I)({queryKey:["dashboard-memory",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.memory.getStats(),refetchInterval:3e4,enabled:!!L&&!I}),{data:K}=(0,a.I)({queryKey:["agent-status",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.agent.getStatus(),enabled:!!L&&!I}),{data:Q}=(0,a.I)({queryKey:["runtime-state",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getRuntimeState(),enabled:!!L&&!I}),{data:E}=(0,a.I)({queryKey:["dashboard-telemetry",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.telemetry.getOverview(),refetchInterval:3e4,enabled:!!L&&!I}),{data:O}=(0,a.I)({queryKey:["dashboard-logs",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.telemetry.getLogs("ERROR",void 0,5),refetchInterval:1e4,enabled:!!L&&!I}),{data:P}=(0,a.I)({queryKey:["dashboard-runtime",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getRuntimeStatus(),refetchInterval:5e3,enabled:!!L&&!I}),{data:T}=(0,a.I)({queryKey:["dashboard-queue",null==L?void 0:L.agent_id],queryFn:()=>i.AQ.system.getProcessingQueueStatus(),refetchInterval:5e3,enabled:!!L&&!I}),W={healthy:(null==D||null==(e=D.services)?void 0:e.filter(e=>!0===e.healthy).length)||0,degraded:(null==D||null==(s=D.services)?void 0:s.filter(e=>!1===e.healthy&&!0===e.available).length)||0,unhealthy:(null==D||null==(t=D.services)?void 0:t.filter(e=>!1===e.available).length)||0,total:(null==D?void 0:D.total_services)||0};if(I)return(0,l.jsx)(n.O,{children:(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)(m.Nl,{className:"w-8 h-8 mx-auto mb-4 animate-spin"}),(0,l.jsx)("p",{className:"text-gray-600",children:"Loading agent configuration..."})]})})});if(B)return(0,l.jsx)(n.O,{children:(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsxs)("div",{className:"text-center bg-red-50 border border-red-200 rounded-md p-6",children:[(0,l.jsx)("p",{className:"text-red-600",children:"Failed to load agent configuration"}),(0,l.jsx)("p",{className:"text-sm text-red-500 mt-2",children:B.message})]})})});if(!L)return(0,l.jsx)(n.O,{children:(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)("p",{className:"text-gray-600",children:"No agent selected"}),(0,l.jsx)(d(),{href:"/login",className:"text-indigo-600 hover:text-indigo-500 mt-2 inline-block",children:"Return to login"})]})})});let G=q||void 0===H&&L&&!I;return(0,l.jsx)(n.O,{children:(0,l.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8",children:[(0,l.jsxs)("div",{className:"mb-8",children:[(0,l.jsx)("h1",{className:"text-3xl font-bold text-gray-900",children:"CIRIS System Dashboard"}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("p",{className:"mt-2 text-lg text-gray-600",children:"Real-time monitoring of all system components"}),(null==F?void 0:F.version)&&(0,l.jsxs)("div",{className:"mt-2 text-sm text-gray-500",children:[(0,l.jsx)("span",{className:"font-medium",children:"Version:"})," ",F.version,F.codename&&(0,l.jsxs)("span",{className:"ml-2 italic",children:['"',F.codename,'"']})]})]})]}),G&&(0,l.jsx)("div",{className:"mb-8 bg-red-50 border-l-4 border-red-400 p-4",children:(0,l.jsxs)("div",{className:"flex",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("svg",{className:"h-5 w-5 text-red-400",viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})})}),(0,l.jsxs)("div",{className:"ml-3",children:[(0,l.jsx)("h3",{className:"text-sm font-medium text-red-800",children:"API Configuration Error"}),(0,l.jsxs)("div",{className:"mt-2 text-sm text-red-700",children:[(0,l.jsx)("p",{children:"Unable to connect to agent API. This usually means:"}),(0,l.jsxs)("ul",{className:"list-disc list-inside mt-1",children:[(0,l.jsx)("li",{children:"OAuth token is not properly configured"}),(0,l.jsx)("li",{children:"SDK is pointing to wrong endpoint"}),(0,l.jsxs)("li",{children:["Agent ",null==L?void 0:L.agent_id," is not accessible"]})]}),(0,l.jsxs)("p",{className:"mt-2",children:["Current SDK configuration:",(0,l.jsx)("br",{}),"- Base URL: ",i.AQ.getBaseURL(),(0,l.jsx)("br",{}),"- Auth Token: ",i.aS.getAccessToken()?"Present":"Missing",(0,l.jsx)("br",{}),"- Agent ID: ",(null==L?void 0:L.agent_id)||"Not set",(0,l.jsx)("br",{}),"- SDK Transport Base: ",(null==(o=i.AQ.transport)||null==(r=o.getBaseURL)?void 0:r.call(o))||"Unknown"]}),q&&(0,l.jsxs)("div",{className:"mt-2",children:[(0,l.jsxs)("p",{className:"font-mono text-xs",children:["Error: ",q.message]}),(0,l.jsx)("p",{className:"font-mono text-xs text-red-600",children:"Check Network Tab: The failing URL will show what's actually being called"})]})]})]})]})}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-5 sm:grid-cols-2 lg:grid-cols-4 mb-8",children:[(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)(m.md,{status:(e=>{switch(e){case"healthy":return"green";case"degraded":return"yellow";case"unhealthy":return"red";default:return"gray"}})((null==H?void 0:H.status)||"gray"),className:"h-8 w-8"})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"System Health"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==H||null==(x=H.status)?void 0:x.toUpperCase())||"UNKNOWN"})]})})]})})}),(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("div",{className:"p-3 bg-indigo-100 rounded-lg",children:(0,l.jsx)(m.mo,{className:"text-indigo-600",size:"lg"})})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"Agent State"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==F?void 0:F.cognitive_state)||"UNKNOWN"})]})})]})})}),(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("div",{className:"p-3 bg-green-100 rounded-lg",children:(0,l.jsx)(m.O4,{className:"text-green-600",size:"lg"})})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"Uptime"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==H?void 0:H.uptime_seconds)?(e=>{let s=Math.floor(e/86400),t=Math.floor(e%86400/3600),l=Math.floor(e%3600/60);return"".concat(s,"d ").concat(t,"h ").concat(l,"m")})(H.uptime_seconds):"N/A"})]})})]})})}),(0,l.jsx)("div",{className:"bg-white overflow-hidden shadow rounded-lg",children:(0,l.jsx)("div",{className:"p-5",children:(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)("div",{className:"p-3 bg-purple-100 rounded-lg",children:(0,l.jsx)(m.HG,{className:"text-purple-600",size:"lg"})})}),(0,l.jsx)("div",{className:"ml-5 w-0 flex-1",children:(0,l.jsxs)("dl",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500 truncate",children:"Memory Nodes"}),(0,l.jsx)("dd",{className:"text-lg font-semibold text-gray-900",children:(null==U||null==(h=U.total_nodes)?void 0:h.toLocaleString())||"0"})]})})]})})})]}),(null==F?void 0:F.version)&&(0,l.jsx)("div",{className:"bg-white shadow rounded-lg mb-8",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h2",{className:"text-lg font-medium text-gray-900 mb-4",children:"Version Information"}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-3",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Version"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900 font-mono",children:F.version})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Codename"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900",children:F.codename||"N/A"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Code Hash"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900 font-mono",children:F.code_hash||"N/A"})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h2",{className:"text-lg font-medium text-gray-900 mb-4",children:"Quick Access"}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",children:[(0,l.jsx)(d(),{href:"/dashboard",className:"relative rounded-lg border border-blue-300 bg-blue-50 px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-blue-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-blue-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-blue-900",children:"System Dashboard"}),(0,l.jsx)("p",{className:"text-sm text-blue-700 truncate",children:"Real-time system monitoring"})]})}),(0,l.jsx)(d(),{href:"/api-demo",className:"relative rounded-lg border border-indigo-300 bg-indigo-50 px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-indigo-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-indigo-900",children:"API Explorer"}),(0,l.jsx)("p",{className:"text-sm text-indigo-700 truncate",children:"Interactive API demonstration"})]})}),(0,l.jsx)(d(),{href:"/comms",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"Communications"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"Chat with the agent"})]})}),(0,l.jsx)(d(),{href:"/system",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"System Status"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"Monitor health & resources"})]})}),(0,l.jsx)(d(),{href:"/memory",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"Memory Graph"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"Explore agent memories"})]})}),(0,l.jsx)(d(),{href:"/audit",className:"relative rounded-lg border border-gray-300 bg-white px-6 py-5 shadow-sm flex items-center space-x-3 hover:border-gray-400 focus-within:ring-2 focus-within:ring-offset-2 focus-within:ring-indigo-500",children:(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsx)("span",{className:"absolute inset-0","aria-hidden":"true"}),(0,l.jsx)("p",{className:"text-sm font-medium text-gray-900",children:"Audit Trail"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 truncate",children:"View system activity"})]})})]})]})}),K&&(0,l.jsx)("div",{className:"bg-white shadow rounded-lg my-8",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h2",{className:"text-lg font-medium text-gray-900 mb-4",children:"Agent Status"}),(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-x-4 gap-y-6 sm:grid-cols-2",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Name"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900",children:K.agent_id})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"State"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900",children:(0,l.jsxs)("span",{className:"inline-flex items-center rounded-md px-2 py-1 text-xs font-medium ".concat((null==Q?void 0:Q.processor_state)==="paused"?"bg-yellow-100 text-yellow-800":"bg-green-100 text-green-800"),children:[K.cognitive_state," ",(null==Q?void 0:Q.processor_state)==="paused"&&"(Paused)"]})})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Uptime"}),(0,l.jsxs)("dd",{className:"mt-1 text-sm text-gray-900",children:[Math.floor(K.uptime_seconds/3600),"h"," ",Math.floor(K.uptime_seconds%3600/60),"m"]})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("dt",{className:"text-sm font-medium text-gray-500",children:"Processor Status"}),(0,l.jsx)("dd",{className:"mt-1 text-sm text-gray-900 capitalize",children:(null==Q?void 0:Q.processor_state)||"Unknown"})]})]})]})}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-2 mb-8",children:[(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Current Resource Usage"}),(0,l.jsxs)("div",{className:"space-y-4",children:[(0,l.jsxs)("div",{children:[(0,l.jsxs)("div",{className:"flex justify-between items-center mb-1",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"CPU Usage"}),(0,l.jsxs)("span",{className:"text-sm font-bold ".concat(((null==V||null==(u=V.current_usage)?void 0:u.cpu_percent)||0)>80?"text-red-600":((null==V||null==(g=V.current_usage)?void 0:g.cpu_percent)||0)>60?"text-yellow-600":"text-green-600"),children:[(null==V||null==(j=V.current_usage)||null==(v=j.cpu_percent)?void 0:v.toFixed(1))||0,"%"]})]}),(0,l.jsx)("div",{className:"w-full bg-gray-200 rounded-full h-2",children:(0,l.jsx)("div",{className:"h-2 rounded-full transition-all duration-300 ".concat(((null==V||null==(N=V.current_usage)?void 0:N.cpu_percent)||0)>80?"bg-red-500":((null==V||null==(f=V.current_usage)?void 0:f.cpu_percent)||0)>60?"bg-yellow-500":"bg-green-500"),style:{width:"".concat((null==V||null==(p=V.current_usage)?void 0:p.cpu_percent)||0,"%")}})})]}),(0,l.jsxs)("div",{children:[(0,l.jsxs)("div",{className:"flex justify-between items-center mb-1",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"Memory Usage"}),(0,l.jsxs)("span",{className:"text-sm font-bold ".concat(((null==V||null==(y=V.current_usage)?void 0:y.memory_percent)||0)>80?"text-red-600":((null==V||null==(w=V.current_usage)?void 0:w.memory_percent)||0)>60?"text-yellow-600":"text-green-600"),children:[(null==V||null==(b=V.current_usage)?void 0:b.memory_mb)||0," MB (",(null==V||null==(M=V.current_usage)||null==(_=M.memory_percent)?void 0:_.toFixed(1))||0,"%)"]})]}),(0,l.jsx)("div",{className:"w-full bg-gray-200 rounded-full h-2",children:(0,l.jsx)("div",{className:"h-2 rounded-full transition-all duration-300 ".concat(((null==V||null==(k=V.current_usage)?void 0:k.memory_percent)||0)>80?"bg-red-500":((null==V||null==(z=V.current_usage)?void 0:z.memory_percent)||0)>60?"bg-yellow-500":"bg-green-500"),style:{width:"".concat((null==V||null==(R=V.current_usage)?void 0:R.memory_percent)||0,"%")}})})]}),(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"Disk Usage"}),(0,l.jsx)("span",{className:"text-sm font-bold text-gray-900",children:(null==V||null==(A=V.current_usage)?void 0:A.disk_used_mb)?"".concat((V.current_usage.disk_used_mb/1024).toFixed(1)," GB"):"N/A"})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Environmental Impact"}),(0,l.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)("div",{className:"text-2xl font-bold text-green-700",children:(null==E?void 0:E.carbon_24h_grams)?(E.carbon_24h_grams/1e3).toFixed(3):"0.000"}),(0,l.jsx)("div",{className:"text-xs text-gray-600 mt-1",children:"kg CO₂ (24h)"})]}),(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsx)("div",{className:"text-2xl font-bold text-blue-700",children:(null==E?void 0:E.tokens_last_hour)?E.tokens_last_hour.toLocaleString():"0"}),(0,l.jsx)("div",{className:"text-xs text-gray-600 mt-1",children:"Tokens/hour"})]}),(0,l.jsxs)("div",{className:"text-center",children:[(0,l.jsxs)("div",{className:"text-2xl font-bold text-purple-700",children:["$",(null==E?void 0:E.cost_24h_cents)?(E.cost_24h_cents/100).toFixed(2):"0.00"]}),(0,l.jsx)("div",{className:"text-xs text-gray-600 mt-1",children:"Cost (24h)"})]})]}),(0,l.jsxs)("div",{className:"mt-4 pt-4 border-t grid grid-cols-2 gap-4 text-sm",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("span",{className:"text-gray-600",children:"Hourly Rate:"}),(0,l.jsxs)("span",{className:"ml-2 font-medium",children:["$",(null==E?void 0:E.cost_last_hour_cents)?(E.cost_last_hour_cents/100).toFixed(2):"0.00","/hr"]})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("span",{className:"text-gray-600",children:"Carbon Rate:"}),(0,l.jsxs)("span",{className:"ml-2 font-medium",children:[(null==E||null==(C=E.carbon_last_hour_grams)?void 0:C.toFixed(1))||"0.0","g/hr"]})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Service Health Distribution"}),(0,l.jsxs)("div",{className:"space-y-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(m.md,{status:"green",className:"h-5 w-5"}),(0,l.jsx)("span",{className:"ml-2 text-sm font-medium text-gray-700",children:"Healthy Services"})]}),(0,l.jsx)("span",{className:"text-lg font-semibold text-green-600",children:W.healthy})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(m.md,{status:"yellow",className:"h-5 w-5"}),(0,l.jsx)("span",{className:"ml-2 text-sm font-medium text-gray-700",children:"Degraded Services"})]}),(0,l.jsx)("span",{className:"text-lg font-semibold text-yellow-600",children:W.degraded})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(m.md,{status:"red",className:"h-5 w-5"}),(0,l.jsx)("span",{className:"ml-2 text-sm font-medium text-gray-700",children:"Unhealthy Services"})]}),(0,l.jsx)("span",{className:"text-lg font-semibold text-red-600",children:W.unhealthy})]}),(0,l.jsx)("div",{className:"pt-2 mt-2 border-t border-gray-200",children:(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("span",{className:"text-sm font-medium text-gray-700",children:"Total Services"}),(0,l.jsx)("span",{className:"text-lg font-semibold text-gray-900",children:W.total})]})})]})]})})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-3 mb-8",children:[(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Runtime Status"}),(0,l.jsx)("div",{className:"space-y-3",children:(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Runtime State"}),(0,l.jsx)("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium ".concat((null==P?void 0:P.is_paused)?"bg-yellow-100 text-yellow-800":"bg-green-100 text-green-800"),children:(null==P?void 0:P.is_paused)?"PAUSED":"RUNNING"})]})})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Processing Queue"}),(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Queue Size"}),(0,l.jsx)("span",{className:"text-lg font-semibold",children:(null==T?void 0:T.queue_size)||0})]}),(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Max Size"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:(null==T?void 0:T.max_size)||"N/A"})]})]})]})}),(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Telemetry"}),(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Total Metrics"}),(0,l.jsx)("span",{className:"text-lg font-semibold",children:(null==E||null==(S=E.total_metrics)?void 0:S.toLocaleString())||"0"})]}),(0,l.jsxs)("div",{className:"flex justify-between items-center",children:[(0,l.jsx)("span",{className:"text-sm text-gray-600",children:"Active Services"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:(null==E?void 0:E.active_services)||0})]})]})]})})]}),O&&O.length>0&&(0,l.jsx)("div",{className:"bg-white shadow rounded-lg",children:(0,l.jsxs)("div",{className:"px-4 py-5 sm:p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-4",children:"Recent Errors"}),(0,l.jsx)("div",{className:"space-y-2",children:O.map((e,s)=>(0,l.jsxs)("div",{className:"flex items-start space-x-3 p-3 bg-red-50 rounded-lg",children:[(0,l.jsx)("div",{className:"flex-shrink-0",children:(0,l.jsx)(m.md,{status:"red"})}),(0,l.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,l.jsxs)("p",{className:"text-sm font-medium text-red-900",children:[e.service," - ",e.level]}),(0,l.jsx)("p",{className:"text-sm text-red-700 truncate",children:e.message}),(0,l.jsx)("p",{className:"text-xs text-red-600 mt-1",children:new Date(e.timestamp).toLocaleString()})]})]},s))})]})}),(0,l.jsxs)("div",{className:"mt-8 bg-blue-50 rounded-lg p-6",children:[(0,l.jsx)("h3",{className:"text-lg font-medium text-blue-900 mb-4",children:"Quick Links"}),(0,l.jsxs)("div",{className:"grid grid-cols-2 gap-4 sm:grid-cols-4",children:[(0,l.jsxs)("a",{href:"/api-demo",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDE80"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"API Explorer"})]}),(0,l.jsxs)("a",{href:"/system",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"⚙️"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"System Status"})]}),(0,l.jsxs)("a",{href:"/memory",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"\uD83E\uDDE0"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"Memory Graph"})]}),(0,l.jsxs)("a",{href:"/config",className:"text-center p-4 bg-white rounded-lg shadow hover:shadow-md transition-shadow",children:[(0,l.jsx)("div",{className:"text-2xl mb-2",children:"\uD83D\uDD27"}),(0,l.jsx)("div",{className:"text-sm font-medium text-gray-900",children:"Configuration"})]})]})]})]})})}},4893:(e,s,t)=>{"use strict";t.d(s,{DP:()=>j,HG:()=>o,Nl:()=>n,O4:()=>m,Pi:()=>r,RR:()=>u,RY:()=>h,Rv:()=>N,XR:()=>d,Zu:()=>p,bN:()=>g,c1:()=>w,fC:()=>b,fK:()=>f,lm:()=>v,md:()=>k,mo:()=>i,uc:()=>y,ui:()=>c,vK:()=>x,xZ:()=>_,xm:()=>M});var l=t(4568);t(7620);let a={xs:{width:12,height:12},sm:{width:16,height:16},md:{width:20,height:20},lg:{width:24,height:24}},i=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z",clipRule:"evenodd"})})},r=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})})},d=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{d:"M11 17a1 1 0 001.447.894l4-2A1 1 0 0017 15V9.236a1 1 0 00-1.447-.894l-4 2a1 1 0 00-.553.894V17zM15.211 6.276a1 1 0 000-1.788l-4.764-2.382a1 1 0 00-.894 0L4.789 4.488a1 1 0 000 1.788l4.764 2.382a1 1 0 00.894 0l4.764-2.382zM4.447 8.342A1 1 0 003 9.236V15a1 1 0 00.553.894l4 2A1 1 0 009 17v-5.764a1 1 0 00-.553-.894l-4-2z"})})},n=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsxs)("svg",{className:"animate-spin ".concat(s),width:i,height:r,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[(0,l.jsx)("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),(0,l.jsx)("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]})},c=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"})})},m=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})})},o=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 3v2m6-2v2M9 19v2m6-2v2M5 9H3m2 6H3m18-6h-2m2 6h-2M7 19h10a2 2 0 002-2V7a2 2 0 00-2-2H7a2 2 0 00-2 2v10a2 2 0 002 2zM9 9h6v6H9V9z"})})},x=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",clipRule:"evenodd"})})},h=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M18 8a6 6 0 01-7.743 5.743L10 14l-1 1-1 1H6v2H2v-4l4.257-4.257A6 6 0 1118 8zm-6-4a1 1 0 100 2 2 2 0 012 2 1 1 0 102 0 4 4 0 00-4-4z",clipRule:"evenodd"})})},u=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M2 5a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H4a2 2 0 01-2-2V5zm14 1a1 1 0 11-2 0 1 1 0 012 0zM2 13a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zm14 1a1 1 0 11-2 0 1 1 0 012 0z",clipRule:"evenodd"})})},g=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsxs)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:[(0,l.jsx)("path",{d:"M3 12v3c0 1.657 3.134 3 7 3s7-1.343 7-3v-3c0 1.657-3.134 3-7 3s-7-1.343-7-3z"}),(0,l.jsx)("path",{d:"M3 7v3c0 1.657 3.134 3 7 3s7-1.343 7-3V7c0 1.657-3.134 3-7 3S3 8.657 3 7z"}),(0,l.jsx)("path",{d:"M17 5c0 1.657-3.134 3-7 3S3 6.657 3 5s3.134-3 7-3 7 1.343 7 3z"})]})},v=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})},j=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z",clipRule:"evenodd"})})},N=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{d:"M8 9a3 3 0 100-6 3 3 0 000 6zM8 11a6 6 0 016 6H2a6 6 0 016-6zM16 7a1 1 0 10-2 0v1h-1a1 1 0 100 2h1v1a1 1 0 102 0v-1h1a1 1 0 100-2h-1V7z"})})},f=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})},p=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})},y=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M9 2a1 1 0 00-.894.553L7.382 4H4a1 1 0 000 2v10a2 2 0 002 2h8a2 2 0 002-2V6a1 1 0 100-2h-3.382l-.724-1.447A1 1 0 0011 2H9zM7 8a1 1 0 012 0v6a1 1 0 11-2 0V8zm5-1a1 1 0 00-1 1v6a1 1 0 102 0V8a1 1 0 00-1-1z",clipRule:"evenodd"})})},w=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 20 20",fill:"currentColor",children:(0,l.jsx)("path",{fillRule:"evenodd",d:"M10 3a1 1 0 011 1v5h5a1 1 0 110 2h-5v5a1 1 0 11-2 0v-5H4a1 1 0 110-2h5V4a1 1 0 011-1z",clipRule:"evenodd"})})},b=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3.055 11H5a2 2 0 012 2v1a2 2 0 002 2 2 2 0 012 2v2.945M8 3.935V5.5A2.5 2.5 0 0010.5 8h.5a2 2 0 012 2 2 2 0 104 0 2 2 0 012-2h1.064M15 20.488V18a2 2 0 012-2h3.064M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})},_=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})})},M=e=>{let{className:s="",size:t="md"}=e,{width:i,height:r}=a[t];return(0,l.jsx)("svg",{className:s,width:i,height:r,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})},k=e=>{let{status:s,className:t=""}=e;return(0,l.jsx)("span",{className:"w-3 h-3 rounded-full ".concat({green:"bg-green-500",yellow:"bg-yellow-500",red:"bg-red-500",gray:"bg-gray-500"}[s]," ").concat(t)})}},6264:(e,s,t)=>{"use strict";t.d(s,{O:()=>d});var l=t(4568),a=t(7620),i=t(2942),r=t(9484);function d(e){let{children:s,requiredRole:t,requiredPermission:d}=e,{user:n,loading:c,hasRole:m,hasPermission:o}=(0,r.A)(),x=(0,i.useRouter)();return((0,a.useEffect)(()=>{if(!c){if(!n)return void x.push("/login");if(t&&!m(t)||d&&!o(d))return void x.push("/unauthorized")}},[n,c,t,d,m,o,x]),c)?(0,l.jsx)("div",{className:"flex items-center justify-center min-h-screen",children:(0,l.jsx)("div",{className:"text-lg",children:"Loading..."})}):n&&(!t||m(t))&&(!d||o(d))?(0,l.jsx)(l.Fragment,{children:s}):null}}},e=>{var s=s=>e(e.s=s);e.O(0,[4534,8903,3297,8072,704,3835,587,8315,7358],()=>s(217)),_N_E=e.O()}]);