observal-cli 1.4.4__tar.gz → 1.6.0__tar.gz

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 (1287) hide show
  1. observal_cli-1.6.0/.dockerignore +64 -0
  2. observal_cli-1.6.0/.github/pull_request_template.md +46 -0
  3. observal_cli-1.6.0/.github/workflows/ci.yml +296 -0
  4. observal_cli-1.6.0/.github/workflows/terraform.yml +194 -0
  5. observal_cli-1.6.0/.gitignore +81 -0
  6. observal_cli-1.6.0/AGENTS.md +236 -0
  7. observal_cli-1.6.0/CHANGELOG.md +1970 -0
  8. observal_cli-1.6.0/PKG-INFO +321 -0
  9. observal_cli-1.6.0/README.md +287 -0
  10. observal_cli-1.6.0/docker/Dockerfile.web +29 -0
  11. observal_cli-1.6.0/docker/docker-compose.yml +311 -0
  12. observal_cli-1.6.0/docker/nginx-azure.conf +51 -0
  13. observal_cli-1.6.0/docs/DEVELOPMENT_GUIDE.md +643 -0
  14. observal_cli-1.6.0/docs/SUMMARY.md +71 -0
  15. observal_cli-1.6.0/docs/adding-an-ide.md +566 -0
  16. observal_cli-1.6.0/docs/cli/README.md +96 -0
  17. observal_cli-1.6.0/docs/cli/agent.md +275 -0
  18. observal_cli-1.6.0/docs/cli/auth.md +132 -0
  19. observal_cli-1.6.0/docs/cli/migrate.md +539 -0
  20. observal_cli-1.6.0/docs/cli/ops.md +157 -0
  21. observal_cli-1.6.0/docs/getting-started/core-concepts.md +118 -0
  22. observal_cli-1.6.0/docs/getting-started/installation.md +152 -0
  23. observal_cli-1.6.0/docs/getting-started/quickstart.md +210 -0
  24. observal_cli-1.6.0/docs/insights-config.md +231 -0
  25. observal_cli-1.6.0/docs/licensing.md +70 -0
  26. observal_cli-1.6.0/docs/reference/config-files.md +120 -0
  27. observal_cli-1.6.0/docs/reference/environment-variables.md +136 -0
  28. observal_cli-1.6.0/docs/self-hosting/README.md +98 -0
  29. observal_cli-1.6.0/docs/self-hosting/authentication.md +148 -0
  30. observal_cli-1.6.0/docs/self-hosting/aws-terraform.md +424 -0
  31. observal_cli-1.6.0/docs/self-hosting/configuration.md +143 -0
  32. observal_cli-1.6.0/docs/self-hosting/data-retention.md +66 -0
  33. observal_cli-1.6.0/docs/self-hosting/databases.md +123 -0
  34. observal_cli-1.6.0/docs/self-hosting/deployment-settings.md +84 -0
  35. observal_cli-1.6.0/docs/self-hosting/gcp-terraform.md +277 -0
  36. observal_cli-1.6.0/docs/self-hosting/miscellaneous.md +71 -0
  37. observal_cli-1.6.0/docs/self-hosting/observability-settings.md +55 -0
  38. observal_cli-1.6.0/docs/self-hosting/okta-setup.md +423 -0
  39. observal_cli-1.6.0/docs/self-hosting/production-deploy.md +317 -0
  40. observal_cli-1.6.0/docs/self-hosting/releasing.md +143 -0
  41. observal_cli-1.6.0/docs/self-hosting/resource-tuning.md +154 -0
  42. observal_cli-1.6.0/docs/self-hosting/saml-settings.md +126 -0
  43. observal_cli-1.6.0/docs/self-hosting/single-node-deploy.md +367 -0
  44. observal_cli-1.6.0/docs/self-hosting/telemetry-pipeline.md +94 -0
  45. observal_cli-1.6.0/docs/self-hosting/token-expiry.md +68 -0
  46. observal_cli-1.6.0/docs/self-hosting/trusted-proxies.md +142 -0
  47. observal_cli-1.6.0/docs/use-cases/README.md +29 -0
  48. observal_cli-1.6.0/docs/use-cases/debug-agent-failures.md +93 -0
  49. observal_cli-1.6.0/docs/use-cases/observe-mcp-traffic.md +95 -0
  50. observal_cli-1.6.0/docs/use-cases/share-agent-configs.md +102 -0
  51. observal_cli-1.6.0/docs/use-cases/team-registry.md +131 -0
  52. observal_cli-1.6.0/ee/AGENTS.md +92 -0
  53. observal_cli-1.6.0/ee/observal_server/routes/audit.py +241 -0
  54. observal_cli-1.6.0/ee/observal_server/routes/sso_saml.py +504 -0
  55. observal_cli-1.6.0/ee/observal_server/services/audit.py +274 -0
  56. observal_cli-1.6.0/infra/terraform/aws/alb.tf +311 -0
  57. observal_cli-1.6.0/infra/terraform/aws/clickhouse.tf +127 -0
  58. observal_cli-1.6.0/infra/terraform/aws/deploy.sh +531 -0
  59. observal_cli-1.6.0/infra/terraform/aws/ecs.tf +469 -0
  60. observal_cli-1.6.0/infra/terraform/aws/examples/byovpc/README.md +33 -0
  61. observal_cli-1.6.0/infra/terraform/aws/examples/byovpc/main.tf +40 -0
  62. observal_cli-1.6.0/infra/terraform/aws/examples/byovpc/outputs.tf +17 -0
  63. observal_cli-1.6.0/infra/terraform/aws/examples/byovpc/terraform.tfvars.example +20 -0
  64. observal_cli-1.6.0/infra/terraform/aws/examples/byovpc/variables.tf +56 -0
  65. observal_cli-1.6.0/infra/terraform/aws/locals.tf +151 -0
  66. observal_cli-1.6.0/infra/terraform/aws/outputs.tf +90 -0
  67. observal_cli-1.6.0/infra/terraform/aws/postgresql.tf +80 -0
  68. observal_cli-1.6.0/infra/terraform/aws/redis.tf +38 -0
  69. observal_cli-1.6.0/infra/terraform/aws/security.tf +167 -0
  70. observal_cli-1.6.0/infra/terraform/aws/variables.tf +470 -0
  71. observal_cli-1.6.0/infra/terraform/aws/vpc.tf +154 -0
  72. observal_cli-1.6.0/infra/terraform/aws-ec2/deploy.sh +186 -0
  73. observal_cli-1.6.0/infra/terraform/aws-ec2/outputs.tf +53 -0
  74. observal_cli-1.6.0/infra/terraform/aws-ec2/terraform.tfvars.example +52 -0
  75. observal_cli-1.6.0/infra/terraform/aws-ec2/variables.tf +67 -0
  76. observal_cli-1.6.0/infra/terraform/aws-standard/README.md +71 -0
  77. observal_cli-1.6.0/infra/terraform/aws-standard/alb.tf +228 -0
  78. observal_cli-1.6.0/infra/terraform/aws-standard/data-host.tf +121 -0
  79. observal_cli-1.6.0/infra/terraform/aws-standard/data-user-data.sh.tftpl +228 -0
  80. observal_cli-1.6.0/infra/terraform/aws-standard/ecs-cluster.tf +42 -0
  81. observal_cli-1.6.0/infra/terraform/aws-standard/ecs-instances.tf +86 -0
  82. observal_cli-1.6.0/infra/terraform/aws-standard/ecs-services.tf +161 -0
  83. observal_cli-1.6.0/infra/terraform/aws-standard/ecs-tasks.tf +202 -0
  84. observal_cli-1.6.0/infra/terraform/aws-standard/iam.tf +162 -0
  85. observal_cli-1.6.0/infra/terraform/aws-standard/locals.tf +80 -0
  86. observal_cli-1.6.0/infra/terraform/aws-standard/logs.tf +39 -0
  87. observal_cli-1.6.0/infra/terraform/aws-standard/outputs.tf +54 -0
  88. observal_cli-1.6.0/infra/terraform/aws-standard/s3.tf +105 -0
  89. observal_cli-1.6.0/infra/terraform/aws-standard/secrets.tf +76 -0
  90. observal_cli-1.6.0/infra/terraform/aws-standard/security.tf +125 -0
  91. observal_cli-1.6.0/infra/terraform/aws-standard/terraform.tfvars.example +65 -0
  92. observal_cli-1.6.0/infra/terraform/aws-standard/variables.tf +234 -0
  93. observal_cli-1.6.0/infra/terraform/aws-standard/versions.tf +33 -0
  94. observal_cli-1.6.0/infra/terraform/aws-standard/vpc.tf +106 -0
  95. observal_cli-1.6.0/infra/terraform/azure/.terraform.lock.hcl +67 -0
  96. observal_cli-1.6.0/infra/terraform/azure/README.md +91 -0
  97. observal_cli-1.6.0/infra/terraform/azure/acr.tf +12 -0
  98. observal_cli-1.6.0/infra/terraform/azure/backend.tf +14 -0
  99. observal_cli-1.6.0/infra/terraform/azure/clickhouse.tf +86 -0
  100. observal_cli-1.6.0/infra/terraform/azure/cloud-init.yaml.tftpl +81 -0
  101. observal_cli-1.6.0/infra/terraform/azure/container-apps.tf +394 -0
  102. observal_cli-1.6.0/infra/terraform/azure/examples/minimal/.terraform.lock.hcl +87 -0
  103. observal_cli-1.6.0/infra/terraform/azure/examples/minimal/main.tf +20 -0
  104. observal_cli-1.6.0/infra/terraform/azure/grafana.tf +41 -0
  105. observal_cli-1.6.0/infra/terraform/azure/locals.tf +27 -0
  106. observal_cli-1.6.0/infra/terraform/azure/log-analytics.tf +12 -0
  107. observal_cli-1.6.0/infra/terraform/azure/network.tf +137 -0
  108. observal_cli-1.6.0/infra/terraform/azure/outputs.tf +42 -0
  109. observal_cli-1.6.0/infra/terraform/azure/postgresql.tf +52 -0
  110. observal_cli-1.6.0/infra/terraform/azure/prod.tfvars +35 -0
  111. observal_cli-1.6.0/infra/terraform/azure/redis.tf +29 -0
  112. observal_cli-1.6.0/infra/terraform/azure/resource-group.tf +8 -0
  113. observal_cli-1.6.0/infra/terraform/azure/secrets.tf +66 -0
  114. observal_cli-1.6.0/infra/terraform/azure/staging.tfvars +34 -0
  115. observal_cli-1.6.0/infra/terraform/azure/variables.tf +263 -0
  116. observal_cli-1.6.0/infra/terraform/azure/versions.tf +34 -0
  117. observal_cli-1.6.0/infra/terraform/deploy.sh +447 -0
  118. observal_cli-1.6.0/infra/terraform/gcp/.tflint.hcl +13 -0
  119. observal_cli-1.6.0/infra/terraform/gcp/examples/minimal/main.tf +21 -0
  120. observal_cli-1.6.0/observal-server/alembic/versions/006_feedback_one_per_user.py +29 -0
  121. observal_cli-1.6.0/observal-server/alembic/versions/007_invites.py +54 -0
  122. observal_cli-1.6.0/observal-server/alembic/versions/008_remove_invites.py +54 -0
  123. observal_cli-1.6.0/observal-server/alembic/versions/009_insights_version_progress.py +72 -0
  124. observal_cli-1.6.0/observal-server/api/middleware/audit.py +86 -0
  125. observal_cli-1.6.0/observal-server/api/routes/admin/enterprise_settings.py +494 -0
  126. observal_cli-1.6.0/observal-server/api/routes/agent/__init__.py +10 -0
  127. observal_cli-1.6.0/observal-server/api/routes/agent/crud.py +782 -0
  128. observal_cli-1.6.0/observal-server/api/routes/agent/draft.py +360 -0
  129. observal_cli-1.6.0/observal-server/api/routes/agent/insights.py +115 -0
  130. observal_cli-1.6.0/observal-server/api/routes/agent/install.py +365 -0
  131. observal_cli-1.6.0/observal-server/api/routes/auth.py +808 -0
  132. observal_cli-1.6.0/observal-server/api/routes/component_versions.py +394 -0
  133. observal_cli-1.6.0/observal-server/api/routes/config.py +174 -0
  134. observal_cli-1.6.0/observal-server/api/routes/device_auth.py +284 -0
  135. observal_cli-1.6.0/observal-server/api/routes/feedback.py +261 -0
  136. observal_cli-1.6.0/observal-server/api/routes/hook.py +417 -0
  137. observal_cli-1.6.0/observal-server/api/routes/insights.py +568 -0
  138. observal_cli-1.6.0/observal-server/api/routes/jwks.py +32 -0
  139. observal_cli-1.6.0/observal-server/api/routes/layer_snapshot.py +389 -0
  140. observal_cli-1.6.0/observal-server/api/routes/mcp.py +519 -0
  141. observal_cli-1.6.0/observal-server/api/routes/prompt.py +405 -0
  142. observal_cli-1.6.0/observal-server/api/routes/review.py +932 -0
  143. observal_cli-1.6.0/observal-server/api/routes/sandbox.py +365 -0
  144. observal_cli-1.6.0/observal-server/api/routes/sessions.py +433 -0
  145. observal_cli-1.6.0/observal-server/api/routes/skill.py +534 -0
  146. observal_cli-1.6.0/observal-server/api/routes/support.py +516 -0
  147. observal_cli-1.6.0/observal-server/main.py +522 -0
  148. observal_cli-1.6.0/observal-server/models/feedback.py +32 -0
  149. observal_cli-1.6.0/observal-server/models/insight_report.py +85 -0
  150. observal_cli-1.6.0/observal-server/pyproject.toml +78 -0
  151. observal_cli-1.6.0/observal-server/schemas/agent.py +245 -0
  152. observal_cli-1.6.0/observal-server/schemas/feedback.py +47 -0
  153. observal_cli-1.6.0/observal-server/schemas/hook.py +163 -0
  154. observal_cli-1.6.0/observal-server/schemas/ide_registry.py +420 -0
  155. observal_cli-1.6.0/observal-server/schemas/insights.py +81 -0
  156. observal_cli-1.6.0/observal-server/schemas/mcp.py +231 -0
  157. observal_cli-1.6.0/observal-server/schemas/prompt.py +103 -0
  158. observal_cli-1.6.0/observal-server/schemas/sandbox.py +114 -0
  159. observal_cli-1.6.0/observal-server/schemas/skill.py +147 -0
  160. observal_cli-1.6.0/observal-server/schemas/skill_commands.py +26 -0
  161. observal_cli-1.6.0/observal-server/services/agent_builder.py +644 -0
  162. observal_cli-1.6.0/observal-server/services/agent_registry_cache.py +201 -0
  163. observal_cli-1.6.0/observal-server/services/agent_resolver.py +301 -0
  164. observal_cli-1.6.0/observal-server/services/audit/__init__.py +31 -0
  165. observal_cli-1.6.0/observal-server/services/audit/classification.py +50 -0
  166. observal_cli-1.6.0/observal-server/services/clickhouse/insert.py +342 -0
  167. observal_cli-1.6.0/observal-server/services/clickhouse/schema.py +749 -0
  168. observal_cli-1.6.0/observal-server/services/component_version_extras.py +226 -0
  169. observal_cli-1.6.0/observal-server/services/config/skill_builder.py +111 -0
  170. observal_cli-1.6.0/observal-server/services/config_generator.py +239 -0
  171. observal_cli-1.6.0/observal-server/services/dynamic_settings.py +596 -0
  172. observal_cli-1.6.0/observal-server/services/hook_install_generator.py +207 -0
  173. observal_cli-1.6.0/observal-server/services/ide/__init__.py +217 -0
  174. observal_cli-1.6.0/observal-server/services/ide/antigravity.py +65 -0
  175. observal_cli-1.6.0/observal-server/services/ide/codex.py +67 -0
  176. observal_cli-1.6.0/observal-server/services/ide/copilot.py +92 -0
  177. observal_cli-1.6.0/observal-server/services/ide/copilot_cli.py +146 -0
  178. observal_cli-1.6.0/observal-server/services/ide/helpers.py +942 -0
  179. observal_cli-1.6.0/observal-server/services/ide/kiro.py +129 -0
  180. observal_cli-1.6.0/observal-server/services/ide/load_all.py +18 -0
  181. observal_cli-1.6.0/observal-server/services/ide/opencode.py +108 -0
  182. observal_cli-1.6.0/observal-server/services/insights/__init__.py +222 -0
  183. observal_cli-1.6.0/observal-server/services/insights/batch.py +485 -0
  184. observal_cli-1.6.0/observal-server/services/insights/generator.py +715 -0
  185. observal_cli-1.6.0/observal-server/services/insights/html_export.py +1775 -0
  186. observal_cli-1.6.0/observal-server/services/insights/sections.py +635 -0
  187. observal_cli-1.6.0/observal-server/services/insights/self_learn.py +1133 -0
  188. observal_cli-1.6.0/observal-server/services/insights/session_meta_extractor.py +799 -0
  189. observal_cli-1.6.0/observal-server/services/insights/version_impact.py +450 -0
  190. observal_cli-1.6.0/observal-server/services/jwt_service.py +96 -0
  191. observal_cli-1.6.0/observal-server/services/mcp_validator.py +856 -0
  192. observal_cli-1.6.0/observal-server/services/redis.py +177 -0
  193. observal_cli-1.6.0/observal-server/services/session_ingest.py +468 -0
  194. observal_cli-1.6.0/observal-server/services/session_parsers/__init__.py +68 -0
  195. observal_cli-1.6.0/observal-server/services/session_parsers/antigravity.py +157 -0
  196. observal_cli-1.6.0/observal-server/services/session_parsers/codex.py +273 -0
  197. observal_cli-1.6.0/observal-server/services/session_parsers/copilot_cli.py +258 -0
  198. observal_cli-1.6.0/observal-server/services/session_parsers/ingest_classify.py +959 -0
  199. observal_cli-1.6.0/observal-server/services/session_parsers/opencode.py +29 -0
  200. observal_cli-1.6.0/observal-server/services/skill_config_generator.py +174 -0
  201. observal_cli-1.6.0/observal-server/services/skill_validator.py +265 -0
  202. observal_cli-1.6.0/observal-server/uv.lock +3574 -0
  203. observal_cli-1.6.0/observal_cli/client.py +443 -0
  204. observal_cli-1.6.0/observal_cli/cmd_agent.py +1132 -0
  205. observal_cli-1.6.0/observal_cli/cmd_auth.py +1081 -0
  206. observal_cli-1.6.0/observal_cli/cmd_co_authors.py +77 -0
  207. observal_cli-1.6.0/observal_cli/cmd_doctor.py +1615 -0
  208. observal_cli-1.6.0/observal_cli/cmd_hook.py +459 -0
  209. observal_cli-1.6.0/observal_cli/cmd_insights.py +531 -0
  210. observal_cli-1.6.0/observal_cli/cmd_mcp.py +1651 -0
  211. observal_cli-1.6.0/observal_cli/cmd_migrate.py +2100 -0
  212. observal_cli-1.6.0/observal_cli/cmd_ops.py +1927 -0
  213. observal_cli-1.6.0/observal_cli/cmd_outdated.py +153 -0
  214. observal_cli-1.6.0/observal_cli/cmd_prompt.py +357 -0
  215. observal_cli-1.6.0/observal_cli/cmd_pull.py +818 -0
  216. observal_cli-1.6.0/observal_cli/cmd_reconcile_cli.py +147 -0
  217. observal_cli-1.6.0/observal_cli/cmd_sandbox.py +279 -0
  218. observal_cli-1.6.0/observal_cli/cmd_scan.py +399 -0
  219. observal_cli-1.6.0/observal_cli/cmd_skill.py +746 -0
  220. observal_cli-1.6.0/observal_cli/hooks/antigravity_session_push.py +218 -0
  221. observal_cli-1.6.0/observal_cli/hooks/codex_session_push.py +128 -0
  222. observal_cli-1.6.0/observal_cli/hooks/copilot_cli_session_push.py +254 -0
  223. observal_cli-1.6.0/observal_cli/hooks/copilot_vscode_session_push.py +167 -0
  224. observal_cli-1.6.0/observal_cli/ide/__init__.py +100 -0
  225. observal_cli-1.6.0/observal_cli/ide/antigravity.py +207 -0
  226. observal_cli-1.6.0/observal_cli/ide/codex.py +139 -0
  227. observal_cli-1.6.0/observal_cli/ide/copilot.py +149 -0
  228. observal_cli-1.6.0/observal_cli/ide/copilot_cli.py +243 -0
  229. observal_cli-1.6.0/observal_cli/ide/load_all.py +14 -0
  230. observal_cli-1.6.0/observal_cli/ide/opencode.py +311 -0
  231. observal_cli-1.6.0/observal_cli/ide_registry.py +425 -0
  232. observal_cli-1.6.0/observal_cli/ide_specs/antigravity_hooks_spec.py +101 -0
  233. observal_cli-1.6.0/observal_cli/ide_specs/codex_hooks_spec.py +49 -0
  234. observal_cli-1.6.0/observal_cli/ide_specs/copilot_cli_hooks_spec.py +65 -0
  235. observal_cli-1.6.0/observal_cli/ide_specs/copilot_hooks_spec.py +74 -0
  236. observal_cli-1.6.0/observal_cli/ide_specs/opencode_hooks_spec.py +62 -0
  237. observal_cli-1.6.0/observal_cli/layer.py +808 -0
  238. observal_cli-1.6.0/observal_cli/lockfile.py +440 -0
  239. observal_cli-1.6.0/observal_cli/main.py +294 -0
  240. observal_cli-1.6.0/observal_cli/render.py +200 -0
  241. observal_cli-1.6.0/observal_cli/sessions/antigravity.py +67 -0
  242. observal_cli-1.6.0/observal_cli/sessions/base.py +523 -0
  243. observal_cli-1.6.0/observal_cli/sessions/copilot_cli.py +161 -0
  244. observal_cli-1.6.0/observal_cli/shared/utils.py +299 -0
  245. observal_cli-1.6.0/observal_cli/skill_installer.py +96 -0
  246. observal_cli-1.6.0/observal_cli/skills/observal/SKILL.md +177 -0
  247. observal_cli-1.6.0/observal_cli/skills/observal/references/commands.md +187 -0
  248. observal_cli-1.6.0/observal_cli/skills/observal-agents/SKILL.md +171 -0
  249. observal_cli-1.6.0/observal_cli/skills/observal-ops/SKILL.md +68 -0
  250. observal_cli-1.6.0/observal_cli/skills/observal-registry/SKILL.md +208 -0
  251. observal_cli-1.6.0/observal_cli/tests/test_cmd_auth.py +350 -0
  252. observal_cli-1.6.0/observal_cli/tests/test_cmd_scan.py +137 -0
  253. observal_cli-1.6.0/packages/pi-extension/package.json +31 -0
  254. observal_cli-1.6.0/pnpm-lock.yaml +5844 -0
  255. observal_cli-1.6.0/pyproject.toml +156 -0
  256. observal_cli-1.6.0/scripts/check_terraform_consistency.py +330 -0
  257. observal_cli-1.6.0/tests/test_agent_builder_skills.py +128 -0
  258. observal_cli-1.6.0/tests/test_agent_composition.py +1412 -0
  259. observal_cli-1.6.0/tests/test_agent_config_generator.py +947 -0
  260. observal_cli-1.6.0/tests/test_agent_scoped_insights_routes.py +70 -0
  261. observal_cli-1.6.0/tests/test_antigravity_adapter.py +201 -0
  262. observal_cli-1.6.0/tests/test_antigravity_session_parser.py +438 -0
  263. observal_cli-1.6.0/tests/test_antigravity_sessions.py +290 -0
  264. observal_cli-1.6.0/tests/test_audit2_pr1_ingest_bounds.py +460 -0
  265. observal_cli-1.6.0/tests/test_audit_logging.py +330 -0
  266. observal_cli-1.6.0/tests/test_cli_ide_adapters.py +348 -0
  267. observal_cli-1.6.0/tests/test_cmd_insights.py +156 -0
  268. observal_cli-1.6.0/tests/test_cmd_prompt.py +263 -0
  269. observal_cli-1.6.0/tests/test_cmd_support.py +343 -0
  270. observal_cli-1.6.0/tests/test_component_version_extras.py +234 -0
  271. observal_cli-1.6.0/tests/test_config_generator_utils.py +38 -0
  272. observal_cli-1.6.0/tests/test_constants_sync.py +101 -0
  273. observal_cli-1.6.0/tests/test_copilot_integration.py +1166 -0
  274. observal_cli-1.6.0/tests/test_device_auth.py +725 -0
  275. observal_cli-1.6.0/tests/test_enterprise_audit.py +414 -0
  276. observal_cli-1.6.0/tests/test_field_validation.py +311 -0
  277. observal_cli-1.6.0/tests/test_ide_config_e2e.py +1412 -0
  278. observal_cli-1.6.0/tests/test_ide_refactor_baseline.py +350 -0
  279. observal_cli-1.6.0/tests/test_insights_agent_lookup.py +53 -0
  280. observal_cli-1.6.0/tests/test_integration.py +508 -0
  281. observal_cli-1.6.0/tests/test_migrate_telemetry.py +1299 -0
  282. observal_cli-1.6.0/tests/test_model_registry.py +562 -0
  283. observal_cli-1.6.0/tests/test_phase9_10.py +157 -0
  284. observal_cli-1.6.0/tests/test_preview_config.py +198 -0
  285. observal_cli-1.6.0/tests/test_pull_and_agent_cli.py +907 -0
  286. observal_cli-1.6.0/tests/test_registry_types.py +741 -0
  287. observal_cli-1.6.0/tests/test_self_learn_skill_md.py +56 -0
  288. observal_cli-1.6.0/tests/test_skill_config_generator.py +243 -0
  289. observal_cli-1.6.0/tests/test_skill_validator.py +271 -0
  290. observal_cli-1.6.0/tests/test_telemetry_collection.py +243 -0
  291. observal_cli-1.6.0/tests/test_version_check.py +528 -0
  292. observal_cli-1.6.0/uv.lock +1164 -0
  293. observal_cli-1.6.0/web/AGENTS.md +136 -0
  294. observal_cli-1.6.0/web/index.html +37 -0
  295. observal_cli-1.6.0/web/package.json +80 -0
  296. observal_cli-1.6.0/web/src/components/nav/registry-sidebar.tsx +335 -0
  297. observal_cli-1.6.0/web/src/components/registry/component-install-command.tsx +85 -0
  298. observal_cli-1.6.0/web/src/components/registry/pull-command.tsx +100 -0
  299. observal_cli-1.6.0/web/src/components/registry/review-form.tsx +294 -0
  300. observal_cli-1.6.0/web/src/components/registry/submit-component-dialog.tsx +1328 -0
  301. observal_cli-1.6.0/web/src/components/shared/empty-state.tsx +54 -0
  302. observal_cli-1.6.0/web/src/components/shared/error-state.tsx +49 -0
  303. observal_cli-1.6.0/web/src/components/ui/alert-dialog.tsx +130 -0
  304. observal_cli-1.6.0/web/src/components/wiki/help-context.tsx +77 -0
  305. observal_cli-1.6.0/web/src/components/wiki/help-panel.tsx +117 -0
  306. observal_cli-1.6.0/web/src/components/wiki/wiki-renderer.tsx +246 -0
  307. observal_cli-1.6.0/web/src/hooks/use-help-mode.ts +44 -0
  308. observal_cli-1.6.0/web/src/hooks/use-ides.ts +25 -0
  309. observal_cli-1.6.0/web/src/hooks/use-insights-api.ts +203 -0
  310. observal_cli-1.6.0/web/src/lib/api.ts +887 -0
  311. observal_cli-1.6.0/web/src/lib/docs-loader.ts +110 -0
  312. observal_cli-1.6.0/web/src/lib/docs-map.ts +133 -0
  313. observal_cli-1.6.0/web/src/lib/graphql-ws.ts +104 -0
  314. observal_cli-1.6.0/web/src/lib/ide-features.ts +100 -0
  315. observal_cli-1.6.0/web/src/lib/mcp-parser.ts +248 -0
  316. observal_cli-1.6.0/web/src/lib/model-display.ts +105 -0
  317. observal_cli-1.6.0/web/src/lib/types/admin.ts +538 -0
  318. observal_cli-1.6.0/web/src/lib/types/registry.ts +328 -0
  319. observal_cli-1.6.0/web/src/pages/admin/audit-log.tsx +376 -0
  320. observal_cli-1.6.0/web/src/pages/admin/insights/detail.tsx +1801 -0
  321. observal_cli-1.6.0/web/src/pages/admin/settings/insights-constants.ts +215 -0
  322. observal_cli-1.6.0/web/src/pages/admin/settings/insights-section.tsx +614 -0
  323. observal_cli-1.6.0/web/src/pages/admin/settings/model-combobox.tsx +224 -0
  324. observal_cli-1.6.0/web/src/pages/admin/settings.tsx +1990 -0
  325. observal_cli-1.6.0/web/src/pages/admin/sso.tsx +229 -0
  326. observal_cli-1.6.0/web/src/pages/admin/users.tsx +519 -0
  327. observal_cli-1.6.0/web/src/pages/registry/agents/builder.tsx +1156 -0
  328. observal_cli-1.6.0/web/src/pages/registry/agents/detail.tsx +819 -0
  329. observal_cli-1.6.0/web/src/pages/registry/components/detail.tsx +530 -0
  330. observal_cli-1.6.0/web/src/pages/user/traces/index.tsx +731 -0
  331. observal_cli-1.6.0/web/src/pages/wiki/index.tsx +127 -0
  332. observal_cli-1.6.0/web/src/routeTree.gen.ts +636 -0
  333. observal_cli-1.6.0/web/src/routes/_authed/agents/$agentId/insights/$reportId.tsx +11 -0
  334. observal_cli-1.6.0/web/src/routes/_authed/agents/$agentId.tsx +24 -0
  335. observal_cli-1.6.0/web/src/routes/_authed/insights/$reportId.tsx +35 -0
  336. observal_cli-1.6.0/web/src/routes/_authed/wiki/index.tsx +11 -0
  337. observal_cli-1.6.0/web/src/routes/_authed.tsx +34 -0
  338. observal_cli-1.4.4/.dockerignore +0 -66
  339. observal_cli-1.4.4/.github/pull_request_template.md +0 -39
  340. observal_cli-1.4.4/.github/workflows/ci.yml +0 -296
  341. observal_cli-1.4.4/.github/workflows/terraform.yml +0 -98
  342. observal_cli-1.4.4/.gitignore +0 -73
  343. observal_cli-1.4.4/AGENTS.md +0 -235
  344. observal_cli-1.4.4/CHANGELOG.md +0 -1851
  345. observal_cli-1.4.4/PKG-INFO +0 -305
  346. observal_cli-1.4.4/README.md +0 -271
  347. observal_cli-1.4.4/docker/Dockerfile.web +0 -28
  348. observal_cli-1.4.4/docker/docker-compose.yml +0 -311
  349. observal_cli-1.4.4/docs/DEVELOPMENT_GUIDE.md +0 -643
  350. observal_cli-1.4.4/docs/SUMMARY.md +0 -69
  351. observal_cli-1.4.4/docs/adding-an-ide.md +0 -549
  352. observal_cli-1.4.4/docs/cli/README.md +0 -97
  353. observal_cli-1.4.4/docs/cli/agent.md +0 -275
  354. observal_cli-1.4.4/docs/cli/auth.md +0 -155
  355. observal_cli-1.4.4/docs/cli/migrate.md +0 -515
  356. observal_cli-1.4.4/docs/cli/ops.md +0 -157
  357. observal_cli-1.4.4/docs/cli/profile.md +0 -113
  358. observal_cli-1.4.4/docs/getting-started/core-concepts.md +0 -122
  359. observal_cli-1.4.4/docs/getting-started/installation.md +0 -130
  360. observal_cli-1.4.4/docs/getting-started/quickstart.md +0 -201
  361. observal_cli-1.4.4/docs/licensing.md +0 -70
  362. observal_cli-1.4.4/docs/reference/config-files.md +0 -122
  363. observal_cli-1.4.4/docs/reference/environment-variables.md +0 -136
  364. observal_cli-1.4.4/docs/self-hosting/README.md +0 -73
  365. observal_cli-1.4.4/docs/self-hosting/authentication.md +0 -149
  366. observal_cli-1.4.4/docs/self-hosting/aws-terraform.md +0 -362
  367. observal_cli-1.4.4/docs/self-hosting/configuration.md +0 -143
  368. observal_cli-1.4.4/docs/self-hosting/databases.md +0 -123
  369. observal_cli-1.4.4/docs/self-hosting/okta-setup.md +0 -484
  370. observal_cli-1.4.4/docs/self-hosting/releasing.md +0 -143
  371. observal_cli-1.4.4/docs/self-hosting/telemetry-pipeline.md +0 -104
  372. observal_cli-1.4.4/docs/use-cases/README.md +0 -24
  373. observal_cli-1.4.4/docs/use-cases/debug-agent-failures.md +0 -93
  374. observal_cli-1.4.4/docs/use-cases/observe-mcp-traffic.md +0 -95
  375. observal_cli-1.4.4/docs/use-cases/share-agent-configs.md +0 -111
  376. observal_cli-1.4.4/docs/use-cases/team-registry.md +0 -130
  377. observal_cli-1.4.4/ee/AGENTS.md +0 -92
  378. observal_cli-1.4.4/ee/observal_server/routes/audit.py +0 -237
  379. observal_cli-1.4.4/ee/observal_server/routes/sso_saml.py +0 -504
  380. observal_cli-1.4.4/ee/observal_server/services/audit.py +0 -274
  381. observal_cli-1.4.4/infra/terraform/aws/alb.tf +0 -311
  382. observal_cli-1.4.4/infra/terraform/aws/clickhouse.tf +0 -127
  383. observal_cli-1.4.4/infra/terraform/aws/deploy.sh +0 -447
  384. observal_cli-1.4.4/infra/terraform/aws/ecs.tf +0 -469
  385. observal_cli-1.4.4/infra/terraform/aws/locals.tf +0 -41
  386. observal_cli-1.4.4/infra/terraform/aws/outputs.tf +0 -90
  387. observal_cli-1.4.4/infra/terraform/aws/postgresql.tf +0 -80
  388. observal_cli-1.4.4/infra/terraform/aws/redis.tf +0 -38
  389. observal_cli-1.4.4/infra/terraform/aws/security.tf +0 -165
  390. observal_cli-1.4.4/infra/terraform/aws/variables.tf +0 -393
  391. observal_cli-1.4.4/infra/terraform/aws/vpc.tf +0 -154
  392. observal_cli-1.4.4/infra/terraform/aws-ec2/deploy.sh +0 -228
  393. observal_cli-1.4.4/infra/terraform/aws-ec2/outputs.tf +0 -42
  394. observal_cli-1.4.4/infra/terraform/aws-ec2/terraform.tfvars.example +0 -24
  395. observal_cli-1.4.4/infra/terraform/aws-ec2/variables.tf +0 -55
  396. observal_cli-1.4.4/infra/terraform/gcp/examples/minimal/main.tf +0 -17
  397. observal_cli-1.4.4/observal-server/api/middleware/audit.py +0 -86
  398. observal_cli-1.4.4/observal-server/api/routes/admin/enterprise_settings.py +0 -323
  399. observal_cli-1.4.4/observal-server/api/routes/agent/__init__.py +0 -10
  400. observal_cli-1.4.4/observal-server/api/routes/agent/crud.py +0 -765
  401. observal_cli-1.4.4/observal-server/api/routes/agent/draft.py +0 -364
  402. observal_cli-1.4.4/observal-server/api/routes/agent/install.py +0 -345
  403. observal_cli-1.4.4/observal-server/api/routes/auth.py +0 -808
  404. observal_cli-1.4.4/observal-server/api/routes/component_versions.py +0 -353
  405. observal_cli-1.4.4/observal-server/api/routes/config.py +0 -159
  406. observal_cli-1.4.4/observal-server/api/routes/device_auth.py +0 -243
  407. observal_cli-1.4.4/observal-server/api/routes/feedback.py +0 -158
  408. observal_cli-1.4.4/observal-server/api/routes/hook.py +0 -410
  409. observal_cli-1.4.4/observal-server/api/routes/insights.py +0 -471
  410. observal_cli-1.4.4/observal-server/api/routes/jwks.py +0 -34
  411. observal_cli-1.4.4/observal-server/api/routes/mcp.py +0 -512
  412. observal_cli-1.4.4/observal-server/api/routes/prompt.py +0 -429
  413. observal_cli-1.4.4/observal-server/api/routes/review.py +0 -931
  414. observal_cli-1.4.4/observal-server/api/routes/sandbox.py +0 -389
  415. observal_cli-1.4.4/observal-server/api/routes/sessions.py +0 -434
  416. observal_cli-1.4.4/observal-server/api/routes/skill.py +0 -463
  417. observal_cli-1.4.4/observal-server/api/routes/support.py +0 -518
  418. observal_cli-1.4.4/observal-server/main.py +0 -507
  419. observal_cli-1.4.4/observal-server/models/feedback.py +0 -29
  420. observal_cli-1.4.4/observal-server/models/insight_report.py +0 -64
  421. observal_cli-1.4.4/observal-server/models/password_reset_token.py +0 -22
  422. observal_cli-1.4.4/observal-server/pyproject.toml +0 -75
  423. observal_cli-1.4.4/observal-server/schemas/agent.py +0 -244
  424. observal_cli-1.4.4/observal-server/schemas/feedback.py +0 -32
  425. observal_cli-1.4.4/observal-server/schemas/hook.py +0 -160
  426. observal_cli-1.4.4/observal-server/schemas/ide_registry.py +0 -405
  427. observal_cli-1.4.4/observal-server/schemas/insights.py +0 -58
  428. observal_cli-1.4.4/observal-server/schemas/mcp.py +0 -229
  429. observal_cli-1.4.4/observal-server/schemas/prompt.py +0 -102
  430. observal_cli-1.4.4/observal-server/schemas/sandbox.py +0 -124
  431. observal_cli-1.4.4/observal-server/schemas/skill.py +0 -128
  432. observal_cli-1.4.4/observal-server/services/agent_builder.py +0 -685
  433. observal_cli-1.4.4/observal-server/services/agent_registry_cache.py +0 -189
  434. observal_cli-1.4.4/observal-server/services/agent_resolver.py +0 -281
  435. observal_cli-1.4.4/observal-server/services/audit/__init__.py +0 -31
  436. observal_cli-1.4.4/observal-server/services/audit/classification.py +0 -50
  437. observal_cli-1.4.4/observal-server/services/clickhouse/insert.py +0 -323
  438. observal_cli-1.4.4/observal-server/services/clickhouse/schema.py +0 -726
  439. observal_cli-1.4.4/observal-server/services/component_version_extras.py +0 -207
  440. observal_cli-1.4.4/observal-server/services/config/skill_builder.py +0 -98
  441. observal_cli-1.4.4/observal-server/services/config_generator.py +0 -265
  442. observal_cli-1.4.4/observal-server/services/dynamic_settings.py +0 -586
  443. observal_cli-1.4.4/observal-server/services/hook_install_generator.py +0 -213
  444. observal_cli-1.4.4/observal-server/services/ide/__init__.py +0 -218
  445. observal_cli-1.4.4/observal-server/services/ide/codex.py +0 -48
  446. observal_cli-1.4.4/observal-server/services/ide/copilot.py +0 -76
  447. observal_cli-1.4.4/observal-server/services/ide/copilot_cli.py +0 -80
  448. observal_cli-1.4.4/observal-server/services/ide/gemini_cli.py +0 -58
  449. observal_cli-1.4.4/observal-server/services/ide/helpers.py +0 -675
  450. observal_cli-1.4.4/observal-server/services/ide/kiro.py +0 -119
  451. observal_cli-1.4.4/observal-server/services/ide/load_all.py +0 -18
  452. observal_cli-1.4.4/observal-server/services/ide/opencode.py +0 -67
  453. observal_cli-1.4.4/observal-server/services/insights/__init__.py +0 -218
  454. observal_cli-1.4.4/observal-server/services/insights/batch.py +0 -398
  455. observal_cli-1.4.4/observal-server/services/insights/generator.py +0 -534
  456. observal_cli-1.4.4/observal-server/services/insights/html_export.py +0 -1725
  457. observal_cli-1.4.4/observal-server/services/insights/sections.py +0 -549
  458. observal_cli-1.4.4/observal-server/services/insights/self_learn.py +0 -966
  459. observal_cli-1.4.4/observal-server/services/insights/session_meta_extractor.py +0 -732
  460. observal_cli-1.4.4/observal-server/services/jwt_service.py +0 -96
  461. observal_cli-1.4.4/observal-server/services/mcp_validator.py +0 -846
  462. observal_cli-1.4.4/observal-server/services/redis.py +0 -167
  463. observal_cli-1.4.4/observal-server/services/sandbox_config_generator.py +0 -27
  464. observal_cli-1.4.4/observal-server/services/sandbox_validator.py +0 -123
  465. observal_cli-1.4.4/observal-server/services/session_ingest.py +0 -389
  466. observal_cli-1.4.4/observal-server/services/session_parsers/__init__.py +0 -58
  467. observal_cli-1.4.4/observal-server/services/session_parsers/ingest_classify.py +0 -649
  468. observal_cli-1.4.4/observal-server/services/skill_config_generator.py +0 -140
  469. observal_cli-1.4.4/observal-server/services/skill_validator.py +0 -197
  470. observal_cli-1.4.4/observal-server/uv.lock +0 -3346
  471. observal_cli-1.4.4/observal_cli/client.py +0 -438
  472. observal_cli-1.4.4/observal_cli/cmd_agent.py +0 -1130
  473. observal_cli-1.4.4/observal_cli/cmd_auth.py +0 -1067
  474. observal_cli-1.4.4/observal_cli/cmd_co_authors.py +0 -94
  475. observal_cli-1.4.4/observal_cli/cmd_doctor.py +0 -835
  476. observal_cli-1.4.4/observal_cli/cmd_hook.py +0 -456
  477. observal_cli-1.4.4/observal_cli/cmd_mcp.py +0 -1540
  478. observal_cli-1.4.4/observal_cli/cmd_migrate.py +0 -2071
  479. observal_cli-1.4.4/observal_cli/cmd_ops.py +0 -1793
  480. observal_cli-1.4.4/observal_cli/cmd_prompt.py +0 -380
  481. observal_cli-1.4.4/observal_cli/cmd_pull.py +0 -702
  482. observal_cli-1.4.4/observal_cli/cmd_sandbox.py +0 -315
  483. observal_cli-1.4.4/observal_cli/cmd_scan.py +0 -410
  484. observal_cli-1.4.4/observal_cli/cmd_skill.py +0 -724
  485. observal_cli-1.4.4/observal_cli/ide/__init__.py +0 -101
  486. observal_cli-1.4.4/observal_cli/ide/codex.py +0 -103
  487. observal_cli-1.4.4/observal_cli/ide/copilot.py +0 -82
  488. observal_cli-1.4.4/observal_cli/ide/copilot_cli.py +0 -111
  489. observal_cli-1.4.4/observal_cli/ide/gemini_cli.py +0 -112
  490. observal_cli-1.4.4/observal_cli/ide/load_all.py +0 -14
  491. observal_cli-1.4.4/observal_cli/ide/opencode.py +0 -75
  492. observal_cli-1.4.4/observal_cli/ide_registry.py +0 -415
  493. observal_cli-1.4.4/observal_cli/ide_specs/pi_hooks_spec.py +0 -23
  494. observal_cli-1.4.4/observal_cli/main.py +0 -255
  495. observal_cli-1.4.4/observal_cli/render.py +0 -202
  496. observal_cli-1.4.4/observal_cli/sessions/base.py +0 -397
  497. observal_cli-1.4.4/observal_cli/shared/utils.py +0 -228
  498. observal_cli-1.4.4/observal_cli/skill_installer.py +0 -103
  499. observal_cli-1.4.4/observal_cli/skills/observal/SKILL.md +0 -160
  500. observal_cli-1.4.4/observal_cli/skills/observal/references/commands.md +0 -160
  501. observal_cli-1.4.4/observal_cli/skills/observal-agents/SKILL.md +0 -173
  502. observal_cli-1.4.4/observal_cli/skills/observal-ops/SKILL.md +0 -67
  503. observal_cli-1.4.4/observal_cli/skills/observal-registry/SKILL.md +0 -204
  504. observal_cli-1.4.4/observal_cli/tests/test_cmd_auth.py +0 -351
  505. observal_cli-1.4.4/observal_cli/tests/test_cmd_scan.py +0 -160
  506. observal_cli-1.4.4/packages/pi-extension/package.json +0 -31
  507. observal_cli-1.4.4/pnpm-lock.yaml +0 -5331
  508. observal_cli-1.4.4/pyproject.toml +0 -156
  509. observal_cli-1.4.4/tests/test_agent_builder_skills.py +0 -141
  510. observal_cli-1.4.4/tests/test_agent_composition.py +0 -1426
  511. observal_cli-1.4.4/tests/test_agent_config_generator.py +0 -977
  512. observal_cli-1.4.4/tests/test_audit2_pr1_ingest_bounds.py +0 -430
  513. observal_cli-1.4.4/tests/test_audit_logging.py +0 -330
  514. observal_cli-1.4.4/tests/test_cli_ide_adapters.py +0 -344
  515. observal_cli-1.4.4/tests/test_cmd_prompt.py +0 -274
  516. observal_cli-1.4.4/tests/test_cmd_support.py +0 -343
  517. observal_cli-1.4.4/tests/test_component_version_extras.py +0 -188
  518. observal_cli-1.4.4/tests/test_config_generator_utils.py +0 -40
  519. observal_cli-1.4.4/tests/test_constants_sync.py +0 -102
  520. observal_cli-1.4.4/tests/test_device_auth.py +0 -531
  521. observal_cli-1.4.4/tests/test_field_validation.py +0 -248
  522. observal_cli-1.4.4/tests/test_hipaa_audit.py +0 -414
  523. observal_cli-1.4.4/tests/test_ide_config_e2e.py +0 -1586
  524. observal_cli-1.4.4/tests/test_ide_refactor_baseline.py +0 -351
  525. observal_cli-1.4.4/tests/test_integration.py +0 -508
  526. observal_cli-1.4.4/tests/test_migrate_telemetry.py +0 -1297
  527. observal_cli-1.4.4/tests/test_model_registry.py +0 -579
  528. observal_cli-1.4.4/tests/test_phase9_10.py +0 -152
  529. observal_cli-1.4.4/tests/test_preview_config.py +0 -199
  530. observal_cli-1.4.4/tests/test_pull_and_agent_cli.py +0 -938
  531. observal_cli-1.4.4/tests/test_registry_types.py +0 -670
  532. observal_cli-1.4.4/tests/test_skill_config_generator.py +0 -167
  533. observal_cli-1.4.4/tests/test_skill_validator.py +0 -200
  534. observal_cli-1.4.4/tests/test_telemetry_collection.py +0 -288
  535. observal_cli-1.4.4/tests/test_version_check.py +0 -528
  536. observal_cli-1.4.4/uv.lock +0 -1164
  537. observal_cli-1.4.4/web/AGENTS.md +0 -136
  538. observal_cli-1.4.4/web/index.html +0 -36
  539. observal_cli-1.4.4/web/package.json +0 -86
  540. observal_cli-1.4.4/web/src/components/dashboard/dimension-radar.tsx +0 -72
  541. observal_cli-1.4.4/web/src/components/dashboard/latency-heatmap.tsx +0 -96
  542. observal_cli-1.4.4/web/src/components/dashboard/retention-widget.tsx +0 -64
  543. observal_cli-1.4.4/web/src/components/dashboard/time-range-select.tsx +0 -40
  544. observal_cli-1.4.4/web/src/components/dashboard/top-items-card.tsx +0 -49
  545. observal_cli-1.4.4/web/src/components/dashboard/trend-chart.tsx +0 -83
  546. observal_cli-1.4.4/web/src/components/nav/registry-sidebar.tsx +0 -333
  547. observal_cli-1.4.4/web/src/components/registry/feedback-list.tsx +0 -21
  548. observal_cli-1.4.4/web/src/components/registry/pull-command.tsx +0 -74
  549. observal_cli-1.4.4/web/src/components/registry/registry-detail.tsx +0 -127
  550. observal_cli-1.4.4/web/src/components/registry/registry-table.tsx +0 -149
  551. observal_cli-1.4.4/web/src/components/registry/review-form.tsx +0 -103
  552. observal_cli-1.4.4/web/src/components/registry/submit-component-dialog.tsx +0 -1340
  553. observal_cli-1.4.4/web/src/components/shared/empty-state.tsx +0 -49
  554. observal_cli-1.4.4/web/src/components/shared/error-state.tsx +0 -27
  555. observal_cli-1.4.4/web/src/components/traces/trace-list.tsx +0 -224
  556. observal_cli-1.4.4/web/src/components/ui/progress.tsx +0 -27
  557. observal_cli-1.4.4/web/src/hooks/use-ides.ts +0 -19
  558. observal_cli-1.4.4/web/src/hooks/use-insights-api.ts +0 -155
  559. observal_cli-1.4.4/web/src/lib/api.ts +0 -853
  560. observal_cli-1.4.4/web/src/lib/features.ts +0 -57
  561. observal_cli-1.4.4/web/src/lib/graphql-ws.ts +0 -88
  562. observal_cli-1.4.4/web/src/lib/ide-features.ts +0 -100
  563. observal_cli-1.4.4/web/src/lib/mcp-parser.ts +0 -248
  564. observal_cli-1.4.4/web/src/lib/model-display.ts +0 -105
  565. observal_cli-1.4.4/web/src/lib/types/admin.ts +0 -518
  566. observal_cli-1.4.4/web/src/lib/types/registry.ts +0 -325
  567. observal_cli-1.4.4/web/src/pages/admin/audit-log.tsx +0 -376
  568. observal_cli-1.4.4/web/src/pages/admin/insights/detail.tsx +0 -1769
  569. observal_cli-1.4.4/web/src/pages/admin/settings.tsx +0 -1733
  570. observal_cli-1.4.4/web/src/pages/admin/sso.tsx +0 -407
  571. observal_cli-1.4.4/web/src/pages/admin/users.tsx +0 -516
  572. observal_cli-1.4.4/web/src/pages/registry/agents/builder.tsx +0 -1142
  573. observal_cli-1.4.4/web/src/pages/registry/agents/detail.tsx +0 -875
  574. observal_cli-1.4.4/web/src/pages/registry/components/detail.tsx +0 -587
  575. observal_cli-1.4.4/web/src/pages/user/traces/index.tsx +0 -616
  576. observal_cli-1.4.4/web/src/routeTree.gen.ts +0 -583
  577. observal_cli-1.4.4/web/src/routes/_authed/agents/$agentId.tsx +0 -10
  578. observal_cli-1.4.4/web/src/routes/_authed/insights/$reportId.tsx +0 -10
  579. observal_cli-1.4.4/web/src/routes/_authed.tsx +0 -31
  580. {observal_cli-1.4.4 → observal_cli-1.6.0}/.clabot +0 -0
  581. {observal_cli-1.4.4 → observal_cli-1.6.0}/.editorconfig +0 -0
  582. {observal_cli-1.4.4 → observal_cli-1.6.0}/.env.example +0 -0
  583. {observal_cli-1.4.4 → observal_cli-1.6.0}/.gitattributes +0 -0
  584. {observal_cli-1.4.4 → observal_cli-1.6.0}/.gitbook.yaml +0 -0
  585. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/ISSUE_TEMPLATE/bug_report_form.yml +0 -0
  586. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  587. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  588. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/vex/observal.vex.json +0 -0
  589. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/badge-ghcr-pulls.yml +0 -0
  590. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/codeql.yml +0 -0
  591. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/dependency-review.yml +0 -0
  592. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/deploy.yml +0 -0
  593. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/e2e-frontend.yml +0 -0
  594. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/gitleaks.yml +0 -0
  595. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/pr-labels.yml +0 -0
  596. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/release.yml +0 -0
  597. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/sbom.yml +0 -0
  598. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/stale.yml +0 -0
  599. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/take-command.yml +0 -0
  600. {observal_cli-1.4.4 → observal_cli-1.6.0}/.github/workflows/update-homebrew-tap.yml +0 -0
  601. {observal_cli-1.4.4 → observal_cli-1.6.0}/.gitleaks.toml +0 -0
  602. {observal_cli-1.4.4 → observal_cli-1.6.0}/.pre-commit-config.yaml +0 -0
  603. {observal_cli-1.4.4 → observal_cli-1.6.0}/.reuse/license-policy.yml +0 -0
  604. {observal_cli-1.4.4 → observal_cli-1.6.0}/AI_POLICY.md +0 -0
  605. {observal_cli-1.4.4 → observal_cli-1.6.0}/CLA.md +0 -0
  606. {observal_cli-1.4.4 → observal_cli-1.6.0}/CODE_OF_CONDUCT.md +0 -0
  607. {observal_cli-1.4.4 → observal_cli-1.6.0}/CONTRIBUTING.md +0 -0
  608. {observal_cli-1.4.4 → observal_cli-1.6.0}/LICENSE +0 -0
  609. {observal_cli-1.4.4 → observal_cli-1.6.0}/LICENSES/AGPL-3.0-only.txt +0 -0
  610. {observal_cli-1.4.4 → observal_cli-1.6.0}/LICENSES/LicenseRef-Observal-Enterprise.txt +0 -0
  611. {observal_cli-1.4.4 → observal_cli-1.6.0}/LICENSES/OFL-1.1.txt +0 -0
  612. {observal_cli-1.4.4 → observal_cli-1.6.0}/Makefile +0 -0
  613. {observal_cli-1.4.4 → observal_cli-1.6.0}/REUSE.toml +0 -0
  614. {observal_cli-1.4.4 → observal_cli-1.6.0}/SECURITY.md +0 -0
  615. {observal_cli-1.4.4 → observal_cli-1.6.0}/SETUP.md +0 -0
  616. {observal_cli-1.4.4 → observal_cli-1.6.0}/cliff.toml +0 -0
  617. {observal_cli-1.4.4 → observal_cli-1.6.0}/codecov.yml +0 -0
  618. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/Dockerfile.api +0 -0
  619. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/clickhouse/config.d/memory.xml +0 -0
  620. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/clickhouse/users.d/memory.xml +0 -0
  621. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/docker-compose.dev.yml +0 -0
  622. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/docker-compose.enterprise.yml +0 -0
  623. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/docker-compose.production.yml +0 -0
  624. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/entrypoint.sh +0 -0
  625. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/nginx-spa.conf +0 -0
  626. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/nginx.conf +0 -0
  627. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/nginx.dev.conf +0 -0
  628. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/nginx.production.conf +0 -0
  629. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/server-package/docker-compose.yml +0 -0
  630. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/server-package/env.template +0 -0
  631. {observal_cli-1.4.4 → observal_cli-1.6.0}/docker/server-package/setup.sh +0 -0
  632. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/admin.md +0 -0
  633. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/component.md +0 -0
  634. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/config.md +0 -0
  635. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/doctor.md +0 -0
  636. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/models.md +0 -0
  637. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/prompt.md +0 -0
  638. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/pull.md +0 -0
  639. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/registry.md +0 -0
  640. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/scan.md +0 -0
  641. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/self.md +0 -0
  642. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/server.md +0 -0
  643. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/skill.md +0 -0
  644. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/support.md +0 -0
  645. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/cli/uninstall.md +0 -0
  646. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/e2e-test-checklist-enterprise.md +0 -0
  647. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/e2e-test-checklist.md +0 -0
  648. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/hooks.md +0 -0
  649. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/audit_logging.png +0 -0
  650. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/builder.png +0 -0
  651. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/complete_capture_thinking_response.png +0 -0
  652. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/component_registry.png +0 -0
  653. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/insights.png +0 -0
  654. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/leaderboard.png +0 -0
  655. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/registry.png +0 -0
  656. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/review-diff.png +0 -0
  657. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/review.png +0 -0
  658. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/ses1.png +0 -0
  659. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/span.png +0 -0
  660. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/img/traces.png +0 -0
  661. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/insights-setup.md +0 -0
  662. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/logo-light.svg +0 -0
  663. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/logo.svg +0 -0
  664. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/reference/api-endpoints.md +0 -0
  665. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/reference/hooks-spec.md +0 -0
  666. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/sandboxes.md +0 -0
  667. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-hosting/backup-and-restore.md +0 -0
  668. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-hosting/docker-compose.md +0 -0
  669. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-hosting/ports-and-volumes.md +0 -0
  670. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-hosting/requirements.md +0 -0
  671. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-hosting/troubleshooting.md +0 -0
  672. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-hosting/upgrades.md +0 -0
  673. {observal_cli-1.4.4 → observal_cli-1.6.0}/docs/self-observability.md +0 -0
  674. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/LICENSE +0 -0
  675. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/README.md +0 -0
  676. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/__init__.py +0 -0
  677. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/docs/cli-sso.md +0 -0
  678. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/docs/cli.md +0 -0
  679. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/docs/oidc-setup.md +0 -0
  680. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/docs/saml-setup.md +0 -0
  681. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/docs/scim-setup.md +0 -0
  682. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/license.py +0 -0
  683. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/__init__.py +0 -0
  684. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/middleware/__init__.py +0 -0
  685. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/middleware/enterprise_guard.py +0 -0
  686. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/routes/__init__.py +0 -0
  687. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/routes/admin_sso.py +0 -0
  688. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/routes/exec_dashboard.py +0 -0
  689. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/routes/scim.py +0 -0
  690. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/services/__init__.py +0 -0
  691. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/services/config_validator.py +0 -0
  692. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/services/saml.py +0 -0
  693. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/observal_server/services/scim_service.py +0 -0
  694. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/plugins/__init__.py +0 -0
  695. {observal_cli-1.4.4 → observal_cli-1.6.0}/ee/scripts/generate_license.py +0 -0
  696. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/agent-activity.json +0 -0
  697. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/audit-log.json +0 -0
  698. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/cost-tracking.json +0 -0
  699. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/error-rates.json +0 -0
  700. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/performance-resources.json +0 -0
  701. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/self-observability.json +0 -0
  702. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/session-overview.json +0 -0
  703. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/token-usage.json +0 -0
  704. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/dashboards/tool-call-frequency.json +0 -0
  705. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/provisioning/dashboards/default.yaml +0 -0
  706. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/provisioning/datasources/clickhouse.yaml +0 -0
  707. {observal_cli-1.4.4 → observal_cli-1.6.0}/grafana/provisioning/datasources/prometheus.yaml +0 -0
  708. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/.gitignore +0 -0
  709. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/.tflint.hcl +0 -0
  710. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/README.md +0 -0
  711. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/bootstrap/README.md +0 -0
  712. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/bootstrap/main.tf +0 -0
  713. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/bootstrap/outputs.tf +0 -0
  714. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/bootstrap/variables.tf +0 -0
  715. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/bootstrap/versions.tf +0 -0
  716. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/dns.tf +0 -0
  717. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/examples/minimal/README.md +0 -0
  718. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/examples/minimal/main.tf +0 -0
  719. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/examples/minimal/outputs.tf +0 -0
  720. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/examples/minimal/terraform.tfvars.example +0 -0
  721. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/examples/minimal/variables.tf +0 -0
  722. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/iam.tf +0 -0
  723. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/logs.tf +0 -0
  724. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/s3.tf +0 -0
  725. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/secrets.tf +0 -0
  726. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/terraform.tfvars.example +0 -0
  727. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/user-data.sh.tftpl +0 -0
  728. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws/versions.tf +0 -0
  729. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws-ec2/README.md +0 -0
  730. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/aws-ec2/main.tf +0 -0
  731. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/README.md +0 -0
  732. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/cloud-run.tf +0 -0
  733. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/cloud-sql.tf +0 -0
  734. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/data-host.tf +0 -0
  735. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/dns.tf +0 -0
  736. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/examples/minimal/outputs.tf +0 -0
  737. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/examples/minimal/terraform.tfvars.example +0 -0
  738. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/examples/minimal/variables.tf +0 -0
  739. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/locals.tf +0 -0
  740. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/memorystore.tf +0 -0
  741. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/network.tf +0 -0
  742. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/outputs.tf +0 -0
  743. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/registry.tf +0 -0
  744. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/secrets.tf +0 -0
  745. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/services.tf +0 -0
  746. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/storage.tf +0 -0
  747. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/terraform.tfvars.example +0 -0
  748. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/user-data.sh.tftpl +0 -0
  749. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/variables.tf +0 -0
  750. {observal_cli-1.4.4 → observal_cli-1.6.0}/infra/terraform/gcp/versions.tf +0 -0
  751. {observal_cli-1.4.4 → observal_cli-1.6.0}/install-server.sh +0 -0
  752. {observal_cli-1.4.4 → observal_cli-1.6.0}/install.sh +0 -0
  753. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/README.md +0 -0
  754. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/README +0 -0
  755. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/env.py +0 -0
  756. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/script.py.mako +0 -0
  757. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/versions/.gitkeep +0 -0
  758. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/versions/002_drop_visibility.py +0 -0
  759. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/versions/003_skill_registry_direct.py +0 -0
  760. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/versions/004_co_authors.py +0 -0
  761. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/versions/005_insight_self_learn.py +0 -0
  762. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic/versions/v1_baseline.py +0 -0
  763. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/alembic.ini +0 -0
  764. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/__init__.py +0 -0
  765. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/deps.py +0 -0
  766. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/graphql.py +0 -0
  767. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/middleware/__init__.py +0 -0
  768. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/middleware/content_type.py +0 -0
  769. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/middleware/request_id.py +0 -0
  770. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/middleware/trusted_proxy.py +0 -0
  771. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/ratelimit.py +0 -0
  772. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/__init__.py +0 -0
  773. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/admin/__init__.py +0 -0
  774. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/admin/_router.py +0 -0
  775. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/admin/helpers.py +0 -0
  776. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/admin/org.py +0 -0
  777. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/admin/retention.py +0 -0
  778. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/admin/users.py +0 -0
  779. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/agent/_router.py +0 -0
  780. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/agent/helpers.py +0 -0
  781. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/agent_versions.py +0 -0
  782. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/alert.py +0 -0
  783. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/audit.py +0 -0
  784. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/bulk.py +0 -0
  785. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/co_authors.py +0 -0
  786. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/component_source.py +0 -0
  787. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/dashboard.py +0 -0
  788. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/ingest.py +0 -0
  789. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/logs_stream.py +0 -0
  790. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/preview.py +0 -0
  791. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/reconcile.py +0 -0
  792. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/registry_models.py +0 -0
  793. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/routes/telemetry.py +0 -0
  794. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/api/sanitize.py +0 -0
  795. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/config.py +0 -0
  796. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/data/model_registry_seed.json +0 -0
  797. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/database.py +0 -0
  798. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/jobs/__init__.py +0 -0
  799. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/jobs/catalog.py +0 -0
  800. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/jobs/maintenance.py +0 -0
  801. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/logging_config.py +0 -0
  802. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/__init__.py +0 -0
  803. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/agent.py +0 -0
  804. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/agent_component.py +0 -0
  805. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/alert.py +0 -0
  806. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/alert_history.py +0 -0
  807. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/base.py +0 -0
  808. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/component_bundle.py +0 -0
  809. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/component_source.py +0 -0
  810. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/download.py +0 -0
  811. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/enterprise_config.py +0 -0
  812. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/exec_config.py +0 -0
  813. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/exporter_config.py +0 -0
  814. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/hook.py +0 -0
  815. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/insight_meta_cache.py +0 -0
  816. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/insight_session_facets.py +0 -0
  817. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/insight_session_meta.py +0 -0
  818. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/mcp.py +0 -0
  819. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/organization.py +0 -0
  820. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/prompt.py +0 -0
  821. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/saml_config.py +0 -0
  822. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/sandbox.py +0 -0
  823. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/scim_token.py +0 -0
  824. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/skill.py +0 -0
  825. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/submission.py +0 -0
  826. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/user.py +0 -0
  827. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/models/user_group.py +0 -0
  828. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/pyrightconfig.json +0 -0
  829. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/__init__.py +0 -0
  830. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/admin.py +0 -0
  831. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/alert.py +0 -0
  832. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/auth.py +0 -0
  833. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/bulk.py +0 -0
  834. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/component_source.py +0 -0
  835. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/component_version.py +0 -0
  836. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/constants.py +0 -0
  837. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/dashboard.py +0 -0
  838. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/models.py +0 -0
  839. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/retention.py +0 -0
  840. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/schemas/telemetry.py +0 -0
  841. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/__init__.py +0 -0
  842. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/agent_builder_types.py +0 -0
  843. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/agent_lock_file.py +0 -0
  844. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/agent_snapshot.py +0 -0
  845. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/alert_evaluator.py +0 -0
  846. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/anti_gaming.py +0 -0
  847. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/audit/helpers.py +0 -0
  848. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/audit/setup.py +0 -0
  849. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/audit/sink.py +0 -0
  850. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/cache.py +0 -0
  851. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/clickhouse/__init__.py +0 -0
  852. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/clickhouse/_settings.py +0 -0
  853. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/clickhouse/client.py +0 -0
  854. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/clickhouse/query.py +0 -0
  855. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/config/__init__.py +0 -0
  856. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/config/mcp_builder.py +0 -0
  857. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/crypto.py +0 -0
  858. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/demo_accounts.py +0 -0
  859. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/download_tracker.py +0 -0
  860. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/editing_lock.py +0 -0
  861. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/events.py +0 -0
  862. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/git_mirror_service.py +0 -0
  863. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/hook_config_generator.py +0 -0
  864. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/ide/claude_code.py +0 -0
  865. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/ide/cursor.py +0 -0
  866. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/ide/pi.py +0 -0
  867. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/ide_feature_inference.py +0 -0
  868. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/insights/_deps.py +0 -0
  869. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/insights/facets.py +0 -0
  870. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/insights/transcript.py +0 -0
  871. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/log_buffer.py +0 -0
  872. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/model_catalog.py +0 -0
  873. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/model_display.py +0 -0
  874. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/model_resolver.py +0 -0
  875. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/optic.py +0 -0
  876. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/registry_telemetry.py +0 -0
  877. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/request_context.py +0 -0
  878. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/retention.py +0 -0
  879. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/secrets_redactor.py +0 -0
  880. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/security_events.py +0 -0
  881. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/session_parsers/base.py +0 -0
  882. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/session_parsers/claude_code.py +0 -0
  883. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/session_parsers/cursor.py +0 -0
  884. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/session_parsers/kiro.py +0 -0
  885. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/session_parsers/pi.py +0 -0
  886. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/shared/__init__.py +0 -0
  887. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/shared/ip_utils.py +0 -0
  888. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/shared/utils.py +0 -0
  889. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/ssrf_guard.py +0 -0
  890. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/strategic_insights.py +0 -0
  891. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/username_generator.py +0 -0
  892. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/versioning.py +0 -0
  893. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/webhook_delivery.py +0 -0
  894. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/services/webhook_signer.py +0 -0
  895. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/__init__.py +0 -0
  896. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/conftest.py +0 -0
  897. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_agent_config_gen_versioned.py +0 -0
  898. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_agent_pull.py +0 -0
  899. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_agent_versions_api.py +0 -0
  900. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_anti_gaming.py +0 -0
  901. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_component_version_extras.py +0 -0
  902. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_component_versions_api.py +0 -0
  903. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_config.py +0 -0
  904. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_crypto.py +0 -0
  905. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_exec_dashboard.py +0 -0
  906. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_exec_formulas.py +0 -0
  907. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_ide_feature_inference.py +0 -0
  908. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_jwt.py +0 -0
  909. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_multi_tenancy.py +0 -0
  910. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_payload_protection.py +0 -0
  911. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_rbac.py +0 -0
  912. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/tests/test_security_events.py +0 -0
  913. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/version.py +0 -0
  914. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal-server/worker.py +0 -0
  915. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/README.md +0 -0
  916. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/__init__.py +0 -0
  917. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/__main__.py +0 -0
  918. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/analyzer.py +0 -0
  919. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/audit.py +0 -0
  920. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/branding.py +0 -0
  921. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_component.py +0 -0
  922. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_logs.py +0 -0
  923. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_models.py +0 -0
  924. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_reconcile.py +0 -0
  925. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_server.py +0 -0
  926. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_support.py +0 -0
  927. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_tail_flush.py +0 -0
  928. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/cmd_uninstall.py +0 -0
  929. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/config.py +0 -0
  930. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/constants.py +0 -0
  931. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/features.py +0 -0
  932. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/hooks/__init__.py +0 -0
  933. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/hooks/_cursor_post_worker.py +0 -0
  934. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/hooks/cursor_session_push.py +0 -0
  935. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/hooks/kiro_session_push.py +0 -0
  936. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/hooks/session_push.py +0 -0
  937. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide/base.py +0 -0
  938. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide/claude_code.py +0 -0
  939. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide/cursor.py +0 -0
  940. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide/kiro.py +0 -0
  941. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide/pi.py +0 -0
  942. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide/protocol.py +0 -0
  943. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide_specs/__init__.py +0 -0
  944. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide_specs/claude_code_hooks_spec.py +0 -0
  945. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/ide_specs/kiro_hooks_spec.py +0 -0
  946. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/install_detector.py +0 -0
  947. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/model_catalog.py +0 -0
  948. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/optic.py +0 -0
  949. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/prompts.py +0 -0
  950. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/proxy.py +0 -0
  951. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/pyinstaller.spec +0 -0
  952. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/requirements.txt +0 -0
  953. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sandbox_mcp.py +0 -0
  954. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sandbox_runner.py +0 -0
  955. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/__init__.py +0 -0
  956. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/backup.py +0 -0
  957. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/config_gen.py +0 -0
  958. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/constants.py +0 -0
  959. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/deps.py +0 -0
  960. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/orchestrator.py +0 -0
  961. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/server/updater.py +0 -0
  962. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sessions/__init__.py +0 -0
  963. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sessions/agent_marker.py +0 -0
  964. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sessions/claude_code.py +0 -0
  965. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sessions/cursor.py +0 -0
  966. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/sessions/kiro.py +0 -0
  967. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/settings_reconciler.py +0 -0
  968. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/shared/__init__.py +0 -0
  969. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/shim.py +0 -0
  970. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/skills/observal-admin/SKILL.md +0 -0
  971. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/skills/observal-advanced/SKILL.md +0 -0
  972. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/support/__init__.py +0 -0
  973. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/support/collectors.py +0 -0
  974. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/support/manifest.py +0 -0
  975. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/support/redaction.py +0 -0
  976. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/telemetry/__init__.py +0 -0
  977. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/telemetry_buffer.py +0 -0
  978. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/tests/__init__.py +0 -0
  979. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/tests/test_cmd_agent_versions.py +0 -0
  980. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/tests/test_cmd_component_versions.py +0 -0
  981. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/upgrade_executor.py +0 -0
  982. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/upgrade_lock.py +0 -0
  983. {observal_cli-1.4.4 → observal_cli-1.6.0}/observal_cli/version_check.py +0 -0
  984. {observal_cli-1.4.4 → observal_cli-1.6.0}/package.json +0 -0
  985. {observal_cli-1.4.4 → observal_cli-1.6.0}/packages/pi-extension/LICENSE +0 -0
  986. {observal_cli-1.4.4 → observal_cli-1.6.0}/packages/pi-extension/README.md +0 -0
  987. {observal_cli-1.4.4 → observal_cli-1.6.0}/packages/pi-extension/extensions/observal.ts +0 -0
  988. {observal_cli-1.4.4 → observal_cli-1.6.0}/pnpm-workspace.yaml +0 -0
  989. {observal_cli-1.4.4 → observal_cli-1.6.0}/prometheus.yml +0 -0
  990. {observal_cli-1.4.4 → observal_cli-1.6.0}/renovate.json +0 -0
  991. {observal_cli-1.4.4 → observal_cli-1.6.0}/screenshots/01-review-queue.png +0 -0
  992. {observal_cli-1.4.4 → observal_cli-1.6.0}/screenshots/02-detail-sheet-mcp.png +0 -0
  993. {observal_cli-1.4.4 → observal_cli-1.6.0}/screenshots/03-after-bulk-approve.png +0 -0
  994. {observal_cli-1.4.4 → observal_cli-1.6.0}/screenshots/04-rejection-reason-skills.png +0 -0
  995. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/add_spdx_headers.py +0 -0
  996. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/check_license_policy.py +0 -0
  997. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/check_migrations.py +0 -0
  998. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/check_secrets.sh +0 -0
  999. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/check_vulnerabilities.py +0 -0
  1000. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/generate_third_party_notices.py +0 -0
  1001. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/generate_vex.py +0 -0
  1002. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/license-format.json +0 -0
  1003. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/new_migration.sh +0 -0
  1004. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/refresh_model_snapshot.py +0 -0
  1005. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/seed_exec_dashboard.py +0 -0
  1006. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/seed_insight_report.py +0 -0
  1007. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/seed_test_skill.py +0 -0
  1008. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/sync_features.py +0 -0
  1009. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/sync_observal_skill.py +0 -0
  1010. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/test_version_e2e.sh +0 -0
  1011. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/test_xff_spoofing.sh +0 -0
  1012. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/update_spdx_copyright.py +0 -0
  1013. {observal_cli-1.4.4 → observal_cli-1.6.0}/scripts/verify_exec_dashboard.py +0 -0
  1014. {observal_cli-1.4.4 → observal_cli-1.6.0}/test-agent.json +0 -0
  1015. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/__init__.py +0 -0
  1016. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/conftest.py +0 -0
  1017. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/agent-edit-form.spec.ts +0 -0
  1018. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/auth.spec.ts +0 -0
  1019. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/component-edit-screenshots.spec.ts +0 -0
  1020. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/components.spec.ts +0 -0
  1021. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/frontend-flows.spec.ts +0 -0
  1022. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/helpers.ts +0 -0
  1023. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-agent-compat.spec.ts +0 -0
  1024. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-cli.spec.ts +0 -0
  1025. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-hooks.spec.ts +0 -0
  1026. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-lifecycle.spec.ts +0 -0
  1027. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-live.spec.ts +0 -0
  1028. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-otlp-logs.spec.ts +0 -0
  1029. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-otlp-traces.spec.ts +0 -0
  1030. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-web-agents.spec.ts +0 -0
  1031. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/kiro-web-traces.spec.ts +0 -0
  1032. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/package.json +0 -0
  1033. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/real-edit-release.spec.ts +0 -0
  1034. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/review-diff-screenshots.spec.ts +0 -0
  1035. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/shim-merge.spec.ts +0 -0
  1036. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/sso-login.spec.ts +0 -0
  1037. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/unarchive-agent.spec.ts +0 -0
  1038. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/e2e/visibility-removal-smoke.spec.ts +0 -0
  1039. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/fixtures/model_display_cases.json +0 -0
  1040. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/fixtures/skills/refactor-guide/SKILL.md +0 -0
  1041. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/fixtures/skills/security-auditor/SKILL.md +0 -0
  1042. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/fixtures/skills/test-writer/SKILL.md +0 -0
  1043. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/mock_mcp.py +0 -0
  1044. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_agent_name_lookup.py +0 -0
  1045. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_agent_rbac.py +0 -0
  1046. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_agent_review.py +0 -0
  1047. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_agent_snapshot.py +0 -0
  1048. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_alert_evaluator.py +0 -0
  1049. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_auth2_security.py +0 -0
  1050. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_auth_redis_down.py +0 -0
  1051. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_bulk.py +0 -0
  1052. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_bundles.py +0 -0
  1053. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_cli_errors.py +0 -0
  1054. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_clickhouse_phase1.py +0 -0
  1055. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_clickhouse_resource_tuning.py +0 -0
  1056. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_clickhouse_retention.py +0 -0
  1057. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_cursor_session_push.py +0 -0
  1058. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_demo_accounts.py +0 -0
  1059. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_deployment_guards.py +0 -0
  1060. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_docker_detection.py +0 -0
  1061. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_draft_workflow.py +0 -0
  1062. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_encryption_fake_keys.py +0 -0
  1063. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_endpoint_discovery.py +0 -0
  1064. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_enterprise.py +0 -0
  1065. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_env_detection_and_config.py +0 -0
  1066. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_events.py +0 -0
  1067. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_features_sync.py +0 -0
  1068. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_git_mirror.py +0 -0
  1069. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_graphql_phase6.py +0 -0
  1070. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_health.py +0 -0
  1071. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_ide_registry.py +0 -0
  1072. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_ingest_phase2.py +0 -0
  1073. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_install_detector.py +0 -0
  1074. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_listing_detail_access.py +0 -0
  1075. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_litellm_integration.py +0 -0
  1076. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_mcp_config_parser.py +0 -0
  1077. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_mcp_edit_submit.py +0 -0
  1078. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_migrate.py +0 -0
  1079. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_model_display.py +0 -0
  1080. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_observal_skill.py +0 -0
  1081. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_observal_skill_sync.py +0 -0
  1082. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_optic.py +0 -0
  1083. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_pi_session_parser.py +0 -0
  1084. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_proxy_phase4.py +0 -0
  1085. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_resilience.py +0 -0
  1086. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_retention.py +0 -0
  1087. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_retention_api.py +0 -0
  1088. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_retention_endpoints.py +0 -0
  1089. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_retention_logic.py +0 -0
  1090. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_retention_service.py +0 -0
  1091. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_retention_simulation.py +0 -0
  1092. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_review_queue.py +0 -0
  1093. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_saml.py +0 -0
  1094. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_saml_scim_integration.py +0 -0
  1095. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sanitize.py +0 -0
  1096. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_scan_kiro_home.py +0 -0
  1097. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_schema_redesign.py +0 -0
  1098. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_scim.py +0 -0
  1099. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec001_002_004_auth_hardening.py +0 -0
  1100. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec003_ratelimit.py +0 -0
  1101. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec003_trusted_proxy_middleware.py +0 -0
  1102. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec005_unsafe_defaults.py +0 -0
  1103. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec006_password_policy.py +0 -0
  1104. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec007_graphql_auth.py +0 -0
  1105. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec009_component_source_ownership.py +0 -0
  1106. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec009_org_scoping.py +0 -0
  1107. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec010_agent_listing.py +0 -0
  1108. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec015_openapi_flags.py +0 -0
  1109. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec023_cache_isolation.py +0 -0
  1110. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec024_tenant_scoping.py +0 -0
  1111. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec027_registry_sc.py +0 -0
  1112. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sec028_sso_guards.py +0 -0
  1113. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_secrets_redactor.py +0 -0
  1114. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_self_commands.py +0 -0
  1115. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_self_learn.py +0 -0
  1116. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_server_backup.py +0 -0
  1117. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_server_upgrade.py +0 -0
  1118. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_sessions_api.py +0 -0
  1119. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_settings_reconciler.py +0 -0
  1120. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_shim_error_handling.py +0 -0
  1121. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_ssrf_guard.py +0 -0
  1122. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_bundle_wiring.py +0 -0
  1123. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_collectors.py +0 -0
  1124. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_endpoint.py +0 -0
  1125. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_inspect.py +0 -0
  1126. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_integration.py +0 -0
  1127. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_manifest.py +0 -0
  1128. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_pbt.py +0 -0
  1129. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_support_redaction.py +0 -0
  1130. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_uninstall.py +0 -0
  1131. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_uninstall_windows.py +0 -0
  1132. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_upgrade_lock.py +0 -0
  1133. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_username_generator.py +0 -0
  1134. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_version_negotiation.py +0 -0
  1135. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_version_sync.py +0 -0
  1136. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_versioning.py +0 -0
  1137. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_webhook_delivery.py +0 -0
  1138. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_webhook_signer.py +0 -0
  1139. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_webhook_signer_properties.py +0 -0
  1140. {observal_cli-1.4.4 → observal_cli-1.6.0}/tests/test_worker_phase5.py +0 -0
  1141. {observal_cli-1.4.4 → observal_cli-1.6.0}/tools/release.sh +0 -0
  1142. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/.gitignore +0 -0
  1143. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/eslint.config.mjs +0 -0
  1144. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/playwright.config.ts +0 -0
  1145. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/pnpm-workspace.yaml +0 -0
  1146. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/postcss.config.mjs +0 -0
  1147. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/public/favicon.ico +0 -0
  1148. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/public/fonts/albert-sans-latin-variable.woff2 +0 -0
  1149. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/public/fonts/archivo-latin-variable.woff2 +0 -0
  1150. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/public/fonts/jetbrains-mono-latin-variable.woff2 +0 -0
  1151. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/public/icon.png +0 -0
  1152. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/public/observal-logo.svg +0 -0
  1153. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/app.css +0 -0
  1154. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/account/avatar-upload.tsx +0 -0
  1155. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/builder/model-picker.tsx +0 -0
  1156. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/builder/preview-panel.tsx +0 -0
  1157. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/builder/sortable-component-list.tsx +0 -0
  1158. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/builder/validation-panel.tsx +0 -0
  1159. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/bar-list.tsx +0 -0
  1160. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/dashboard-card.tsx +0 -0
  1161. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/export-button.tsx +0 -0
  1162. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/no-data.tsx +0 -0
  1163. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/query-error.tsx +0 -0
  1164. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/score-overview.tsx +0 -0
  1165. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dashboard/stat-card.tsx +0 -0
  1166. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/dynamic-title.tsx +0 -0
  1167. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/layouts/admin-guard.tsx +0 -0
  1168. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/layouts/auth-guard.tsx +0 -0
  1169. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/layouts/dashboard-shell.tsx +0 -0
  1170. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/layouts/page-header.tsx +0 -0
  1171. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/layouts/role-guard.tsx +0 -0
  1172. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/nav/command-menu.tsx +0 -0
  1173. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/nav/github-star-banner.tsx +0 -0
  1174. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/nav/nav-user.tsx +0 -0
  1175. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/agent-card.tsx +0 -0
  1176. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/agent-edit-form.tsx +0 -0
  1177. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/co-author-input.tsx +0 -0
  1178. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/component-card.tsx +0 -0
  1179. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/component-edit-form.tsx +0 -0
  1180. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/ide-badges.tsx +0 -0
  1181. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/install-dialog.tsx +0 -0
  1182. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/status-badge.tsx +0 -0
  1183. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/version-bump-dialog.tsx +0 -0
  1184. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/registry/version-dropdown.tsx +0 -0
  1185. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/review/review-detail-sheet.tsx +0 -0
  1186. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/review/review-diff-sheet.tsx +0 -0
  1187. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/review/validation-badges.tsx +0 -0
  1188. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/review/yaml-diff-view.tsx +0 -0
  1189. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/shared/retention-warning-banner.tsx +0 -0
  1190. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/shared/skeleton-layouts.tsx +0 -0
  1191. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/shared/version-mismatch-banner.tsx +0 -0
  1192. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/traces/span-tree.tsx +0 -0
  1193. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/traces/trace-detail.tsx +0 -0
  1194. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/avatar.tsx +0 -0
  1195. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/badge.tsx +0 -0
  1196. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/breadcrumb.tsx +0 -0
  1197. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/button.tsx +0 -0
  1198. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/card.tsx +0 -0
  1199. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/checkbox.tsx +0 -0
  1200. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/command.tsx +0 -0
  1201. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/dialog.tsx +0 -0
  1202. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/dropdown-menu.tsx +0 -0
  1203. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/input.tsx +0 -0
  1204. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/label.tsx +0 -0
  1205. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/popover.tsx +0 -0
  1206. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/resizable.tsx +0 -0
  1207. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/scroll-area.tsx +0 -0
  1208. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/select.tsx +0 -0
  1209. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/separator.tsx +0 -0
  1210. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/sheet.tsx +0 -0
  1211. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/sidebar.tsx +0 -0
  1212. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/skeleton.tsx +0 -0
  1213. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/sonner.tsx +0 -0
  1214. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/switch.tsx +0 -0
  1215. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/table.tsx +0 -0
  1216. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/tabs.tsx +0 -0
  1217. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/textarea.tsx +0 -0
  1218. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/theme-switcher.tsx +0 -0
  1219. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/components/ui/tooltip.tsx +0 -0
  1220. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-admin-api.ts +0 -0
  1221. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-admin-guard.ts +0 -0
  1222. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-agents-api.ts +0 -0
  1223. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-api.ts +0 -0
  1224. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-auth.ts +0 -0
  1225. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-dashboard-api.ts +0 -0
  1226. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-deployment-config.ts +0 -0
  1227. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-mobile.ts +0 -0
  1228. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-registry-api.ts +0 -0
  1229. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-review-api.ts +0 -0
  1230. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-role-guard.ts +0 -0
  1231. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-sessions-api.ts +0 -0
  1232. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/hooks/use-traces-api.ts +0 -0
  1233. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/export.ts +0 -0
  1234. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/query-client.ts +0 -0
  1235. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/theme.tsx +0 -0
  1236. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/types/dashboard.ts +0 -0
  1237. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/types/sessions.ts +0 -0
  1238. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/types.ts +0 -0
  1239. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/lib/utils.ts +0 -0
  1240. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/main.tsx +0 -0
  1241. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/adoption-tab.tsx +0 -0
  1242. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/cost-tab.tsx +0 -0
  1243. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/departments-tab.tsx +0 -0
  1244. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/insights-tab.tsx +0 -0
  1245. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/investments-tab.tsx +0 -0
  1246. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/stat-card.tsx +0 -0
  1247. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/components/velocity-tab.tsx +0 -0
  1248. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/context.ts +0 -0
  1249. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/dashboard/index.tsx +0 -0
  1250. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/diagnostics.tsx +0 -0
  1251. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/errors.tsx +0 -0
  1252. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/review.tsx +0 -0
  1253. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/admin/security-events.tsx +0 -0
  1254. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/device.tsx +0 -0
  1255. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/login.tsx +0 -0
  1256. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/registry/agents/index.tsx +0 -0
  1257. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/registry/components/index.tsx +0 -0
  1258. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/registry/home.tsx +0 -0
  1259. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/registry/leaderboard.tsx +0 -0
  1260. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/user/account.tsx +0 -0
  1261. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/pages/user/traces/detail.tsx +0 -0
  1262. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/(auth)/device.tsx +0 -0
  1263. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/(auth)/login.tsx +0 -0
  1264. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/__root.tsx +0 -0
  1265. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/audit-log.tsx +0 -0
  1266. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/dashboard.tsx +0 -0
  1267. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/diagnostics.tsx +0 -0
  1268. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/errors.tsx +0 -0
  1269. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/review.tsx +0 -0
  1270. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/security-events.tsx +0 -0
  1271. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/settings.tsx +0 -0
  1272. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/sso.tsx +0 -0
  1273. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin/users.tsx +0 -0
  1274. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_admin.tsx +0 -0
  1275. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_user/account.tsx +0 -0
  1276. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_user/traces/$traceId.tsx +0 -0
  1277. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_user/traces/index.tsx +0 -0
  1278. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/_user.tsx +0 -0
  1279. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/agents/builder.tsx +0 -0
  1280. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/agents/index.tsx +0 -0
  1281. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/components/$componentId.tsx +0 -0
  1282. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/components/index.tsx +0 -0
  1283. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/index.tsx +0 -0
  1284. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/routes/_authed/leaderboard.tsx +0 -0
  1285. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/src/vite-env.d.ts +0 -0
  1286. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/tsconfig.json +0 -0
  1287. {observal_cli-1.4.4 → observal_cli-1.6.0}/web/vite.config.ts +0 -0
@@ -0,0 +1,64 @@
1
+ # SPDX-FileCopyrightText: 2026 Hari Srinivasan <harisrini21@gmail.com>
2
+ # SPDX-FileCopyrightText: 2026 SrihariLegend <sriharilegend23@gmail.com>
3
+ # SPDX-License-Identifier: AGPL-3.0-only
4
+
5
+ # Version control
6
+ **/.git
7
+
8
+ # Python artifacts
9
+ **/__pycache__
10
+ **/.venv
11
+ *.pyc
12
+ .pytest_cache/
13
+ .coverage
14
+ htmlcov/
15
+
16
+ # Node.js artifacts
17
+ **/node_modules
18
+ **/.next
19
+
20
+ # Documentation assets (screenshots not needed in images)
21
+ LICENSE
22
+ screenshots/
23
+
24
+ # Testing (not shipped in images)
25
+ tests/
26
+
27
+ # CLI tool (separate distribution, not in API or web image)
28
+ observal_cli/
29
+
30
+ # Development tooling
31
+ .github/
32
+ .vscode/
33
+ .idea/
34
+ *.code-workspace
35
+
36
+ # Scripts and tools (not needed in containers)
37
+ scripts/
38
+ tools/
39
+
40
+ # Demo configs
41
+ demo/
42
+
43
+ # Monitoring configs (volume-mounted at runtime, not baked in)
44
+ grafana/
45
+ prometheus.yml
46
+ otel-collector-config.yaml
47
+
48
+ # Docker sub-configs (not needed inside images)
49
+ docker/docker-compose*.yml
50
+ docker/clickhouse/
51
+ docker/nginx.conf
52
+ docker/nginx.dev.conf
53
+ docker/nginx.production.conf
54
+ docker/server-package/
55
+
56
+ # Environment and logs
57
+ .env
58
+ .env.*
59
+ !.env.example
60
+ *.log
61
+
62
+ # Misc
63
+ renovate.json
64
+ cliff.toml
@@ -0,0 +1,46 @@
1
+ <!-- SPDX-FileCopyrightText: 2026 Hari Srinivasan <harisrini21@gmail.com> -->
2
+ <!-- SPDX-FileCopyrightText: 2026 Shaan Narendran <shaannaren06@gmail.com> -->
3
+ <!-- SPDX-FileCopyrightText: 2026 Piyush <pranyasharma55555@gmail.com> -->
4
+ <!-- SPDX-License-Identifier: AGPL-3.0-only -->
5
+
6
+ <!--- Please fill the necessary details below -->
7
+ ## Purpose / Description
8
+ _Describe the problem or feature and motivation_
9
+
10
+ ## Fixes
11
+ * Fixes #<!-- replace this comment with the issue number e.g. 'Fixes #100'-->
12
+
13
+ ## Approach
14
+ _How does this change address the problem?_
15
+
16
+ ## How Has This Been Tested?
17
+
18
+ Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
19
+
20
+ ## Learning (optional, can help others)
21
+ _Describe the research stage_
22
+
23
+ _Links to blog posts, patterns, libraries or addons used to solve this problem_
24
+
25
+ ## Checklist
26
+ _Please, go through these checks before submitting the PR._
27
+
28
+ - [ ] You have a descriptive commit message with a short title (first line, max 50 chars).
29
+ - [ ] You have commented your code, particularly in hard-to-understand areas
30
+ - [ ] You have performed a self-review of your own code
31
+ - [ ] UI changes: include screenshots of all affected screens (in particular showing any new or changed strings)
32
+
33
+ <!--- Uncomment this section ONLY if this PR introduces new resources (external libraries, icons etc)
34
+ ## Licenses
35
+ _For each new external resource, add a row to the table below:_
36
+
37
+ | Library | Description | License |
38
+ | --- | --- | --- |
39
+ | Sample Icon Library | Sample Description | [MIT License](https://opensource.org/licenses/MIT) |
40
+ --->
41
+
42
+ ## AI Assistance
43
+ _Was generative AI tooling used to co-author this PR?_
44
+
45
+ - [ ] Yes(Please Specify the tool):
46
+ - [ ] Was the generated code manually reviewed and tested?
@@ -0,0 +1,296 @@
1
+ # SPDX-FileCopyrightText: 2026 Hari Srinivasan <harisrini21@gmail.com>
2
+ # SPDX-FileCopyrightText: 2026 Lokesh Selvam <lokeshselvam7025@gmail.com>
3
+ # SPDX-FileCopyrightText: 2026 Naraen Rammoorthi <naraen13@gmail.com>
4
+ # SPDX-FileCopyrightText: 2026 Shaan Narendran <shaannaren06@gmail.com>
5
+ # SPDX-FileCopyrightText: 2026 Vishnu Muthiah <vishnu.muthiah04@gmail.com>
6
+ # SPDX-License-Identifier: AGPL-3.0-only
7
+
8
+ # ─────────────────────────────────────────────────────────────────────────────
9
+ # Observal CI — runs on every PR targeting main and on pushes to main.
10
+ #
11
+ # Recommended branch-protection rules (Settings → Branches → main):
12
+ # Required status checks:
13
+ # • lint
14
+ # • reuse-lint
15
+ # • test (3.11)
16
+ # • test (3.12)
17
+ # • test (3.13)
18
+ # • web-lint
19
+ # • docker-build
20
+ # • import-boundary
21
+ # • dependency-audit
22
+ # Require a pull request before merging
23
+ # Require approvals: 1
24
+ # Do not allow bypassing the above settings
25
+ # ─────────────────────────────────────────────────────────────────────────────
26
+
27
+ name: CI
28
+
29
+ on:
30
+ pull_request:
31
+ branches: [main]
32
+ push:
33
+ branches: [main]
34
+
35
+ concurrency:
36
+ group: ci-${{ github.ref }}
37
+ cancel-in-progress: true
38
+
39
+ # ── Job 0: Path filtering ─────────────────────────────────────────────────────
40
+ jobs:
41
+ changes:
42
+ runs-on: ubuntu-latest
43
+ permissions:
44
+ pull-requests: read
45
+ outputs:
46
+ python: ${{ steps.filter.outputs.python }}
47
+ web: ${{ steps.filter.outputs.web }}
48
+ docker: ${{ steps.filter.outputs.docker }}
49
+ steps:
50
+ - uses: actions/checkout@v6
51
+ - uses: dorny/paths-filter@v4
52
+ id: filter
53
+ with:
54
+ filters: |
55
+ python:
56
+ - 'observal_cli/**/*.py'
57
+ - 'observal-server/**/*.py'
58
+ - 'tests/**/*.py'
59
+ - 'pyproject.toml'
60
+ - 'uv.lock'
61
+ - 'Makefile'
62
+ - '.pre-commit-config.yaml'
63
+ - '.github/workflows/ci.yml'
64
+ web:
65
+ - 'web/**'
66
+ - '.github/workflows/ci.yml'
67
+ docker:
68
+ - 'docker/**'
69
+ - 'observal_cli/**'
70
+ - 'observal-server/**'
71
+ - 'web/**'
72
+ - 'pyproject.toml'
73
+ - 'uv.lock'
74
+ - 'web/package.json'
75
+ - 'pnpm-lock.yaml'
76
+ - '.env.example'
77
+ - '.github/workflows/ci.yml'
78
+
79
+ # ── Job 1: Python lint ────────────────────────────────────────────────────────
80
+ lint:
81
+ name: lint
82
+ runs-on: ubuntu-latest
83
+ needs: changes
84
+ steps:
85
+ - name: Skip if no Python changes
86
+ if: needs.changes.outputs.python != 'true'
87
+ run: |
88
+ echo "::notice::No Python changes detected, skipping lint"
89
+ echo "This job reports success to satisfy branch protection"
90
+
91
+ - uses: actions/checkout@v6
92
+ if: needs.changes.outputs.python == 'true'
93
+
94
+ - uses: astral-sh/setup-uv@v8.1.0
95
+ if: needs.changes.outputs.python == 'true'
96
+ with:
97
+ enable-cache: true
98
+
99
+ - name: Install Python 3.13
100
+ if: needs.changes.outputs.python == 'true'
101
+ run: uv python install 3.13
102
+
103
+ - name: ruff check
104
+ if: needs.changes.outputs.python == 'true'
105
+ run: uv run --with ruff==0.15.12 ruff check .
106
+
107
+ - name: ruff format --check
108
+ if: needs.changes.outputs.python == 'true'
109
+ run: uv run --with ruff==0.15.12 ruff format --check .
110
+
111
+ # ── Job 2: REUSE license compliance ──────────────────────────────────────────────
112
+ reuse-lint:
113
+ name: reuse-lint
114
+ runs-on: ubuntu-latest
115
+ steps:
116
+ - uses: actions/checkout@v6
117
+
118
+ - name: REUSE compliance check
119
+ uses: fsfe/reuse-action@v6
120
+
121
+ # ── Job 3: Python tests (matrix) ──────────────────────────────────────────────
122
+ test:
123
+ name: test (${{ matrix.python-version }})
124
+ runs-on: ubuntu-latest
125
+ needs: changes
126
+ strategy:
127
+ fail-fast: false
128
+ matrix:
129
+ python-version: ["3.11", "3.12", "3.13"]
130
+
131
+ steps:
132
+ - name: Skip if no Python changes
133
+ if: needs.changes.outputs.python != 'true'
134
+ run: |
135
+ echo "::notice::No Python changes detected, skipping test"
136
+ echo "This job reports success to satisfy branch protection"
137
+
138
+ - uses: actions/checkout@v6
139
+ if: needs.changes.outputs.python == 'true'
140
+
141
+ - uses: astral-sh/setup-uv@v8.1.0
142
+ if: needs.changes.outputs.python == 'true'
143
+ with:
144
+ enable-cache: true
145
+
146
+ - name: Install Python ${{ matrix.python-version }}
147
+ if: needs.changes.outputs.python == 'true'
148
+ run: uv python install ${{ matrix.python-version }}
149
+
150
+ - name: Install project dependencies
151
+ if: needs.changes.outputs.python == 'true'
152
+ run: |
153
+ cd observal-server
154
+ uv sync --python ${{ matrix.python-version }} --group dev
155
+
156
+ - name: Run pytest
157
+ if: needs.changes.outputs.python == 'true'
158
+ run: |
159
+ cd observal-server
160
+ uv run \
161
+ --python ${{ matrix.python-version }} \
162
+ --with asyncpg \
163
+ --with hypothesis \
164
+ --with pyarrow \
165
+ --with pytest-cov \
166
+ pytest ../tests/ -q \
167
+ ${{ matrix.python-version == '3.13' && '--cov=../observal_cli --cov=. --cov-report=xml' || '' }}
168
+
169
+ - name: Upload coverage to Codecov
170
+ if: needs.changes.outputs.python == 'true' && matrix.python-version == '3.13'
171
+ uses: codecov/codecov-action@v6
172
+ with:
173
+ files: observal-server/coverage.xml
174
+ token: ${{ secrets.CODECOV_TOKEN }}
175
+ fail_ci_if_error: false
176
+
177
+ # ── Job 4: Next.js lint + typecheck ───────────────────────────────────────────
178
+ web-lint:
179
+ name: web-lint
180
+ runs-on: ubuntu-latest
181
+ needs: changes
182
+ defaults:
183
+ run:
184
+ working-directory: web
185
+
186
+ steps:
187
+ - name: Skip if no web changes
188
+ if: needs.changes.outputs.web != 'true'
189
+ working-directory: .
190
+ run: |
191
+ echo "::notice::No web changes detected, skipping web-lint"
192
+ echo "This job reports success to satisfy branch protection"
193
+
194
+ - uses: actions/checkout@v6
195
+ if: needs.changes.outputs.web == 'true'
196
+
197
+ - uses: pnpm/action-setup@v6
198
+ if: needs.changes.outputs.web == 'true'
199
+
200
+ - uses: actions/setup-node@v6
201
+ if: needs.changes.outputs.web == 'true'
202
+ with:
203
+ node-version: 24
204
+ cache: pnpm
205
+ cache-dependency-path: pnpm-lock.yaml
206
+
207
+ - name: Install dependencies
208
+ if: needs.changes.outputs.web == 'true'
209
+ working-directory: .
210
+ run: pnpm install --frozen-lockfile
211
+
212
+ - name: ESLint
213
+ if: needs.changes.outputs.web == 'true'
214
+ run: pnpm run lint
215
+
216
+ - name: TypeScript typecheck
217
+ if: needs.changes.outputs.web == 'true'
218
+ run: pnpm run typecheck
219
+
220
+ # ── Job 5: Import boundary check ─────────────────────────────────────────────
221
+ import-boundary:
222
+ name: import-boundary
223
+ runs-on: ubuntu-latest
224
+ needs: changes
225
+ if: needs.changes.outputs.python == 'true'
226
+ steps:
227
+ - uses: actions/checkout@v6
228
+
229
+ - name: Check ee/ import boundary
230
+ run: |
231
+ echo "Checking that core does not import from ee/..."
232
+ VIOLATIONS=$(grep -rn "from ee\b\|import ee\b" observal-server/ observal_cli/ --include="*.py" | grep -v "main.py" | grep -v "services/insights/__init__.py" | grep -v "services/audit/__init__.py" | grep -v "/tests/" || true)
233
+ if [ -n "$VIOLATIONS" ]; then
234
+ echo "::error::Import boundary violation — core must not import from ee/"
235
+ echo "$VIOLATIONS"
236
+ exit 1
237
+ fi
238
+ echo "✓ No import boundary violations found"
239
+
240
+ # ── Job 6: Docker build ───────────────────────────────────────────────────────
241
+ docker-build:
242
+ name: docker-build
243
+ runs-on: ubuntu-latest
244
+ needs: changes
245
+ defaults:
246
+ run:
247
+ working-directory: docker
248
+
249
+ steps:
250
+ - name: Skip if no Docker changes
251
+ if: needs.changes.outputs.docker != 'true'
252
+ working-directory: .
253
+ run: |
254
+ echo "::notice::No Docker changes detected, skipping docker-build"
255
+ echo "This job reports success to satisfy branch protection"
256
+
257
+ - uses: actions/checkout@v6
258
+ if: needs.changes.outputs.docker == 'true'
259
+
260
+ - name: Create stub .env
261
+ if: needs.changes.outputs.docker == 'true'
262
+ run: touch ../.env
263
+
264
+ - name: Build images
265
+ if: needs.changes.outputs.docker == 'true'
266
+ run: docker compose build
267
+
268
+ # ── Job 7: Dependency audit ─────────────────────────────────────────────────
269
+ dependency-audit:
270
+ name: dependency-audit
271
+ runs-on: ubuntu-latest
272
+ steps:
273
+ - uses: actions/checkout@v6
274
+
275
+ - uses: astral-sh/setup-uv@v8.1.0
276
+ with:
277
+ enable-cache: true
278
+
279
+ - name: Run pip-audit
280
+ run: |
281
+ uv python install 3.12
282
+ cd observal-server
283
+ uv run --with pip-audit pip-audit --strict --desc --ignore-vuln PYSEC-2025-183 --ignore-vuln PYSEC-2026-161 --ignore-vuln CVE-2026-47265
284
+
285
+ - uses: pnpm/action-setup@v6
286
+
287
+ - uses: actions/setup-node@v6
288
+ with:
289
+ node-version: 24
290
+ cache: pnpm
291
+ cache-dependency-path: pnpm-lock.yaml
292
+
293
+ - name: Run pnpm audit
294
+ run: |
295
+ pnpm install --frozen-lockfile
296
+ pnpm audit --prod
@@ -0,0 +1,194 @@
1
+ # SPDX-FileCopyrightText: 2026 Apoorv Garg <apoorvgarg.21@gmail.com>
2
+ # SPDX-FileCopyrightText: 2026 Vishnu Muthiah <vishnu.muthiah04@gmail.com>
3
+ # SPDX-License-Identifier: AGPL-3.0-only
4
+
5
+ # ─────────────────────────────────────────────────────────────────────────────
6
+ # Terraform — fmt + validate + tflint + env consistency for all modules.
7
+ #
8
+ # Runs on PRs and pushes to main that touch infra/terraform/**, .env.example,
9
+ # or observal-server/config.py. No cloud credentials needed.
10
+ #
11
+ # Modules covered:
12
+ # • infra/terraform/aws (ECS Fargate — full matrix)
13
+ # • infra/terraform/gcp (Cloud Run — full matrix)
14
+ # • infra/terraform/aws-ec2 (single-instance — fmt+validate only)
15
+ #
16
+ # aws-ec2 is excluded from the matrix and consistency checks because it uses
17
+ # different variable conventions (name vs name_prefix, no clickhouse_mode).
18
+ # ─────────────────────────────────────────────────────────────────────────────
19
+
20
+ name: Terraform
21
+
22
+ on:
23
+ pull_request:
24
+ branches: [main]
25
+ paths:
26
+ - 'infra/terraform/**'
27
+ - '.github/workflows/terraform.yml'
28
+ - '.env.example'
29
+ - 'observal-server/config.py'
30
+ push:
31
+ branches: [main]
32
+ paths:
33
+ - 'infra/terraform/**'
34
+ - '.github/workflows/terraform.yml'
35
+ - '.env.example'
36
+ - 'observal-server/config.py'
37
+
38
+ concurrency:
39
+ group: terraform-${{ github.ref }}
40
+ cancel-in-progress: true
41
+
42
+ jobs:
43
+ # ── fmt + validate (aws, gcp) ──────────────────────────────────────────────
44
+ fmt-validate:
45
+ name: "${{ matrix.module }} fmt+validate"
46
+ runs-on: ubuntu-latest
47
+ permissions:
48
+ contents: read
49
+ strategy:
50
+ fail-fast: false
51
+ matrix:
52
+ module: [aws, gcp]
53
+ include:
54
+ - module: aws
55
+ working_dir: infra/terraform/aws
56
+ has_bootstrap: true
57
+ - module: gcp
58
+ working_dir: infra/terraform/gcp
59
+ has_bootstrap: false
60
+
61
+ steps:
62
+ - name: Checkout
63
+ uses: actions/checkout@v6
64
+
65
+ - name: Setup Terraform
66
+ uses: hashicorp/setup-terraform@v4
67
+ with:
68
+ terraform_version: 1.9.8
69
+ terraform_wrapper: false
70
+
71
+ - name: terraform fmt (recursive)
72
+ working-directory: ${{ matrix.working_dir }}
73
+ run: terraform fmt -check -recursive -diff
74
+
75
+ - name: terraform init (root module, no backend)
76
+ working-directory: ${{ matrix.working_dir }}
77
+ run: terraform init -backend=false -input=false
78
+
79
+ - name: terraform validate (root module)
80
+ working-directory: ${{ matrix.working_dir }}
81
+ run: terraform validate -no-color
82
+
83
+ - name: terraform init (examples/minimal)
84
+ working-directory: ${{ matrix.working_dir }}/examples/minimal
85
+ run: terraform init -backend=false -input=false
86
+
87
+ - name: terraform validate (examples/minimal)
88
+ working-directory: ${{ matrix.working_dir }}/examples/minimal
89
+ run: terraform validate -no-color
90
+
91
+ - name: Check examples/byovpc exists
92
+ id: byovpc
93
+ run: test -f "${{ matrix.working_dir }}/examples/byovpc/main.tf" && echo "exists=true" >> "$GITHUB_OUTPUT" || echo "exists=false" >> "$GITHUB_OUTPUT"
94
+
95
+ - name: terraform init (examples/byovpc)
96
+ if: steps.byovpc.outputs.exists == 'true'
97
+ working-directory: ${{ matrix.working_dir }}/examples/byovpc
98
+ run: terraform init -backend=false -input=false
99
+
100
+ - name: terraform validate (examples/byovpc)
101
+ if: steps.byovpc.outputs.exists == 'true'
102
+ working-directory: ${{ matrix.working_dir }}/examples/byovpc
103
+ run: terraform validate -no-color
104
+
105
+ - name: terraform init (bootstrap)
106
+ if: matrix.has_bootstrap
107
+ working-directory: ${{ matrix.working_dir }}/bootstrap
108
+ run: terraform init -backend=false -input=false
109
+
110
+ - name: terraform validate (bootstrap)
111
+ if: matrix.has_bootstrap
112
+ working-directory: ${{ matrix.working_dir }}/bootstrap
113
+ run: terraform validate -no-color
114
+
115
+ # ── tflint (aws, gcp) ─────────────────────────────────────────────────────
116
+ tflint:
117
+ name: "${{ matrix.module }} tflint"
118
+ runs-on: ubuntu-latest
119
+ permissions:
120
+ contents: read
121
+ strategy:
122
+ fail-fast: false
123
+ matrix:
124
+ module: [aws, gcp]
125
+ include:
126
+ - module: aws
127
+ working_dir: infra/terraform/aws
128
+ - module: gcp
129
+ working_dir: infra/terraform/gcp
130
+
131
+ steps:
132
+ - name: Checkout
133
+ uses: actions/checkout@v6
134
+
135
+ - name: Setup tflint
136
+ uses: terraform-linters/setup-tflint@v6
137
+ with:
138
+ tflint_version: v0.55.0
139
+
140
+ - name: tflint init
141
+ working-directory: ${{ matrix.working_dir }}
142
+ run: tflint --init
143
+ env:
144
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
145
+
146
+ - name: tflint
147
+ working-directory: ${{ matrix.working_dir }}
148
+ run: tflint --recursive --format=compact
149
+
150
+ # ── aws-ec2 (lightweight, different conventions) ───────────────────────────
151
+ fmt-validate-ec2:
152
+ name: "aws-ec2 fmt+validate"
153
+ runs-on: ubuntu-latest
154
+ permissions:
155
+ contents: read
156
+
157
+ steps:
158
+ - name: Checkout
159
+ uses: actions/checkout@v6
160
+
161
+ - name: Setup Terraform
162
+ uses: hashicorp/setup-terraform@v4
163
+ with:
164
+ terraform_version: 1.9.8
165
+ terraform_wrapper: false
166
+
167
+ - name: terraform fmt
168
+ working-directory: infra/terraform/aws-ec2
169
+ run: terraform fmt -check -diff
170
+
171
+ - name: terraform init + validate
172
+ working-directory: infra/terraform/aws-ec2
173
+ run: |
174
+ terraform init -backend=false -input=false
175
+ terraform validate -no-color
176
+
177
+ # ── Terraform <-> App env consistency ──────────────────────────────────────
178
+ consistency:
179
+ name: "terraform-env consistency"
180
+ runs-on: ubuntu-latest
181
+ permissions:
182
+ contents: read
183
+
184
+ steps:
185
+ - name: Checkout
186
+ uses: actions/checkout@v6
187
+
188
+ - name: Setup Python
189
+ uses: actions/setup-python@v5
190
+ with:
191
+ python-version: '3.12'
192
+
193
+ - name: Run consistency checks
194
+ run: python scripts/check_terraform_consistency.py
@@ -0,0 +1,81 @@
1
+ # SPDX-FileCopyrightText: 2026 Aryan Iyappan <aryaniyappan2006@gmail.com>
2
+ # SPDX-FileCopyrightText: 2026 Subramania Raja <dhanpraja231@gmail.com>
3
+ # SPDX-FileCopyrightText: 2026 Hari Srinivasan <harisrini21@gmail.com>
4
+ # SPDX-FileCopyrightText: 2026 Shaan Narendran <shaannaren06@gmail.com>
5
+ # SPDX-License-Identifier: AGPL-3.0-only
6
+
7
+ __pycache__/
8
+ *.pyc
9
+ *.pyo
10
+ .env
11
+ *.egg-info/
12
+ dist/
13
+ build/
14
+ .eggs/
15
+
16
+ # IDE / editor
17
+ .vscode/
18
+ .idea/
19
+ *.swp
20
+ *.swo
21
+ *~
22
+
23
+ # AI agent / coding tool configs
24
+ .claude/
25
+ CLAUDE.md
26
+ .kiro/
27
+ .cursor/
28
+ .cursorignore
29
+ .cursorindexingignore
30
+ .gemini/
31
+ GEMINI.md
32
+ .opencode/
33
+ .github/copilot-instructions.md
34
+ .github/hooks/
35
+ .copilot/
36
+ .worktrees/
37
+
38
+ # OS
39
+ .DS_Store
40
+ Thumbs.db
41
+
42
+ # Python
43
+ .venv/
44
+ .mypy_cache/
45
+ .ruff_cache/
46
+ .pytest_cache/
47
+ htmlcov/
48
+ .coverage
49
+ *.cover
50
+
51
+ # Node
52
+ observal-web/node_modules/
53
+ observal-web/dist/
54
+
55
+ # Docker
56
+ docker/data/
57
+ docker/clickhouse/users.d/default-user.xml
58
+
59
+ # Terraform
60
+ **/.terraform/
61
+ *.tfplan
62
+ *.tfstate
63
+ *.tfstate.backup
64
+
65
+ # Local / ephemeral
66
+ .playwright-mcp/
67
+ e2e-screenshots/
68
+ migration/
69
+ *.pem
70
+ test-scan.json
71
+
72
+ # Private packages (symlinked for local Docker builds)
73
+ observal-insights/
74
+ .observal/
75
+ .pi-lens/
76
+ node_modules
77
+ .pi/
78
+ .mcp.json
79
+ *.bak
80
+ scripts/seed_demo.py
81
+ .playwright-cli/