observal-cli 1.4.2__tar.gz → 1.4.3__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 (944) hide show
  1. {observal_cli-1.4.2 → observal_cli-1.4.3}/CHANGELOG.md +527 -590
  2. {observal_cli-1.4.2 → observal_cli-1.4.3}/PKG-INFO +1 -1
  3. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/SUMMARY.md +2 -0
  4. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/README.md +2 -0
  5. observal_cli-1.4.3/docs/cli/skill.md +196 -0
  6. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/alb.tf +2 -2
  7. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/deploy.sh +5 -5
  8. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/dns.tf +1 -1
  9. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/ecs.tf +5 -1
  10. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/locals.tf +2 -2
  11. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/terraform.tfvars.example +14 -0
  12. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/user-data.sh.tftpl +15 -2
  13. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/variables.tf +6 -0
  14. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/config.py +0 -4
  15. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/pyproject.toml +1 -1
  16. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/ide_registry.py +3 -3
  17. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/agent_builder.py +4 -3
  18. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/opencode.py +2 -1
  19. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_payload_protection.py +16 -16
  20. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/uv.lock +1 -1
  21. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide_registry.py +3 -3
  22. observal_cli-1.4.3/observal_cli/tests/test_cmd_auth.py +351 -0
  23. observal_cli-1.4.3/observal_cli/tests/test_cmd_scan.py +160 -0
  24. {observal_cli-1.4.2 → observal_cli-1.4.3}/packages/pi-extension/package.json +1 -1
  25. {observal_cli-1.4.2 → observal_cli-1.4.3}/pyproject.toml +1 -1
  26. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_ide_config_e2e.py +29 -11
  27. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_model_registry.py +8 -0
  28. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_pull_and_agent_cli.py +64 -0
  29. {observal_cli-1.4.2 → observal_cli-1.4.3}/uv.lock +11 -1
  30. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/package.json +1 -1
  31. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/review/review-detail-sheet.tsx +5 -15
  32. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/traces/trace-list.tsx +2 -7
  33. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/audit-log.tsx +32 -4
  34. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/user/traces/index.tsx +25 -5
  35. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/audit-log.tsx +7 -0
  36. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_user/traces/index.tsx +8 -0
  37. {observal_cli-1.4.2 → observal_cli-1.4.3}/.clabot +0 -0
  38. {observal_cli-1.4.2 → observal_cli-1.4.3}/.dockerignore +0 -0
  39. {observal_cli-1.4.2 → observal_cli-1.4.3}/.editorconfig +0 -0
  40. {observal_cli-1.4.2 → observal_cli-1.4.3}/.env.example +0 -0
  41. {observal_cli-1.4.2 → observal_cli-1.4.3}/.gitattributes +0 -0
  42. {observal_cli-1.4.2 → observal_cli-1.4.3}/.gitbook.yaml +0 -0
  43. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/ISSUE_TEMPLATE/bug_report_form.yml +0 -0
  44. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  45. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  46. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/pull_request_template.md +0 -0
  47. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/vex/observal.vex.json +0 -0
  48. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/badge-ghcr-pulls.yml +0 -0
  49. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/ci.yml +0 -0
  50. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/codeql.yml +0 -0
  51. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/dependency-review.yml +0 -0
  52. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/deploy.yml +0 -0
  53. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/e2e-frontend.yml +0 -0
  54. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/gitleaks.yml +0 -0
  55. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/pr-labels.yml +0 -0
  56. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/release.yml +0 -0
  57. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/sbom.yml +0 -0
  58. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/stale.yml +0 -0
  59. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/take-command.yml +0 -0
  60. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/terraform.yml +0 -0
  61. {observal_cli-1.4.2 → observal_cli-1.4.3}/.github/workflows/update-homebrew-tap.yml +0 -0
  62. {observal_cli-1.4.2 → observal_cli-1.4.3}/.gitignore +0 -0
  63. {observal_cli-1.4.2 → observal_cli-1.4.3}/.gitleaks.toml +0 -0
  64. {observal_cli-1.4.2 → observal_cli-1.4.3}/.pre-commit-config.yaml +0 -0
  65. {observal_cli-1.4.2 → observal_cli-1.4.3}/.reuse/license-policy.yml +0 -0
  66. {observal_cli-1.4.2 → observal_cli-1.4.3}/AGENTS.md +0 -0
  67. {observal_cli-1.4.2 → observal_cli-1.4.3}/AI_POLICY.md +0 -0
  68. {observal_cli-1.4.2 → observal_cli-1.4.3}/CLA.md +0 -0
  69. {observal_cli-1.4.2 → observal_cli-1.4.3}/CODE_OF_CONDUCT.md +0 -0
  70. {observal_cli-1.4.2 → observal_cli-1.4.3}/CONTRIBUTING.md +0 -0
  71. {observal_cli-1.4.2 → observal_cli-1.4.3}/LICENSE +0 -0
  72. {observal_cli-1.4.2 → observal_cli-1.4.3}/LICENSES/AGPL-3.0-only.txt +0 -0
  73. {observal_cli-1.4.2 → observal_cli-1.4.3}/LICENSES/LicenseRef-Observal-Enterprise.txt +0 -0
  74. {observal_cli-1.4.2 → observal_cli-1.4.3}/LICENSES/OFL-1.1.txt +0 -0
  75. {observal_cli-1.4.2 → observal_cli-1.4.3}/Makefile +0 -0
  76. {observal_cli-1.4.2 → observal_cli-1.4.3}/README.md +0 -0
  77. {observal_cli-1.4.2 → observal_cli-1.4.3}/REUSE.toml +0 -0
  78. {observal_cli-1.4.2 → observal_cli-1.4.3}/SECURITY.md +0 -0
  79. {observal_cli-1.4.2 → observal_cli-1.4.3}/SETUP.md +0 -0
  80. {observal_cli-1.4.2 → observal_cli-1.4.3}/cliff.toml +0 -0
  81. {observal_cli-1.4.2 → observal_cli-1.4.3}/codecov.yml +0 -0
  82. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/Dockerfile.api +0 -0
  83. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/Dockerfile.web +0 -0
  84. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/clickhouse/config.d/memory.xml +0 -0
  85. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/clickhouse/users.d/memory.xml +0 -0
  86. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/docker-compose.dev.yml +0 -0
  87. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/docker-compose.enterprise.yml +0 -0
  88. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/docker-compose.production.yml +0 -0
  89. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/docker-compose.yml +0 -0
  90. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/entrypoint.sh +0 -0
  91. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/nginx-spa.conf +0 -0
  92. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/nginx.conf +0 -0
  93. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/nginx.dev.conf +0 -0
  94. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/nginx.production.conf +0 -0
  95. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/server-package/docker-compose.yml +0 -0
  96. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/server-package/env.template +0 -0
  97. {observal_cli-1.4.2 → observal_cli-1.4.3}/docker/server-package/setup.sh +0 -0
  98. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/DEVELOPMENT_GUIDE.md +0 -0
  99. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/adding-an-ide.md +0 -0
  100. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/admin.md +0 -0
  101. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/agent.md +0 -0
  102. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/auth.md +0 -0
  103. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/component.md +0 -0
  104. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/config.md +0 -0
  105. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/doctor.md +0 -0
  106. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/migrate.md +0 -0
  107. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/models.md +0 -0
  108. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/ops.md +0 -0
  109. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/profile.md +0 -0
  110. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/prompt.md +0 -0
  111. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/pull.md +0 -0
  112. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/registry.md +0 -0
  113. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/scan.md +0 -0
  114. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/self.md +0 -0
  115. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/server.md +0 -0
  116. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/support.md +0 -0
  117. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/cli/uninstall.md +0 -0
  118. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/e2e-test-checklist-enterprise.md +0 -0
  119. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/e2e-test-checklist.md +0 -0
  120. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/getting-started/core-concepts.md +0 -0
  121. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/getting-started/installation.md +0 -0
  122. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/getting-started/quickstart.md +0 -0
  123. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/hooks.md +0 -0
  124. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/audit_logging.png +0 -0
  125. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/builder.png +0 -0
  126. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/complete_capture_thinking_response.png +0 -0
  127. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/component_registry.png +0 -0
  128. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/insights.png +0 -0
  129. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/leaderboard.png +0 -0
  130. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/registry.png +0 -0
  131. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/review-diff.png +0 -0
  132. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/review.png +0 -0
  133. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/ses1.png +0 -0
  134. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/span.png +0 -0
  135. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/img/traces.png +0 -0
  136. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/licensing.md +0 -0
  137. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/logo-light.svg +0 -0
  138. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/logo.svg +0 -0
  139. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/reference/api-endpoints.md +0 -0
  140. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/reference/config-files.md +0 -0
  141. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/reference/environment-variables.md +0 -0
  142. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/reference/hooks-spec.md +0 -0
  143. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/sandboxes.md +0 -0
  144. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/README.md +0 -0
  145. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/authentication.md +0 -0
  146. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/aws-terraform.md +0 -0
  147. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/backup-and-restore.md +0 -0
  148. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/configuration.md +0 -0
  149. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/databases.md +0 -0
  150. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/docker-compose.md +0 -0
  151. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/okta-setup.md +0 -0
  152. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/ports-and-volumes.md +0 -0
  153. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/releasing.md +0 -0
  154. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/requirements.md +0 -0
  155. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/telemetry-pipeline.md +0 -0
  156. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/troubleshooting.md +0 -0
  157. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-hosting/upgrades.md +0 -0
  158. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/self-observability.md +0 -0
  159. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/use-cases/README.md +0 -0
  160. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/use-cases/debug-agent-failures.md +0 -0
  161. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/use-cases/observe-mcp-traffic.md +0 -0
  162. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/use-cases/share-agent-configs.md +0 -0
  163. {observal_cli-1.4.2 → observal_cli-1.4.3}/docs/use-cases/team-registry.md +0 -0
  164. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/AGENTS.md +0 -0
  165. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/LICENSE +0 -0
  166. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/README.md +0 -0
  167. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/__init__.py +0 -0
  168. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/docs/cli-sso.md +0 -0
  169. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/docs/cli.md +0 -0
  170. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/docs/oidc-setup.md +0 -0
  171. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/docs/saml-setup.md +0 -0
  172. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/docs/scim-setup.md +0 -0
  173. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/license.py +0 -0
  174. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/__init__.py +0 -0
  175. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/middleware/__init__.py +0 -0
  176. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/middleware/enterprise_guard.py +0 -0
  177. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/routes/__init__.py +0 -0
  178. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/routes/admin_sso.py +0 -0
  179. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/routes/audit.py +0 -0
  180. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/routes/exec_dashboard.py +0 -0
  181. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/routes/scim.py +0 -0
  182. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/routes/sso_saml.py +0 -0
  183. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/services/__init__.py +0 -0
  184. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/services/audit.py +0 -0
  185. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/services/config_validator.py +0 -0
  186. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/services/saml.py +0 -0
  187. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/observal_server/services/scim_service.py +0 -0
  188. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/plugins/__init__.py +0 -0
  189. {observal_cli-1.4.2 → observal_cli-1.4.3}/ee/scripts/generate_license.py +0 -0
  190. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/agent-activity.json +0 -0
  191. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/audit-log.json +0 -0
  192. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/cost-tracking.json +0 -0
  193. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/error-rates.json +0 -0
  194. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/performance-resources.json +0 -0
  195. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/self-observability.json +0 -0
  196. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/session-overview.json +0 -0
  197. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/token-usage.json +0 -0
  198. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/dashboards/tool-call-frequency.json +0 -0
  199. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/provisioning/dashboards/default.yaml +0 -0
  200. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/provisioning/datasources/clickhouse.yaml +0 -0
  201. {observal_cli-1.4.2 → observal_cli-1.4.3}/grafana/provisioning/datasources/prometheus.yaml +0 -0
  202. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/.gitignore +0 -0
  203. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/.tflint.hcl +0 -0
  204. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/README.md +0 -0
  205. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/bootstrap/README.md +0 -0
  206. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/bootstrap/main.tf +0 -0
  207. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/bootstrap/outputs.tf +0 -0
  208. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/bootstrap/variables.tf +0 -0
  209. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/bootstrap/versions.tf +0 -0
  210. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/clickhouse.tf +0 -0
  211. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/examples/minimal/README.md +0 -0
  212. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/examples/minimal/main.tf +0 -0
  213. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/examples/minimal/outputs.tf +0 -0
  214. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/examples/minimal/terraform.tfvars.example +0 -0
  215. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/examples/minimal/variables.tf +0 -0
  216. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/iam.tf +0 -0
  217. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/logs.tf +0 -0
  218. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/outputs.tf +0 -0
  219. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/postgresql.tf +0 -0
  220. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/redis.tf +0 -0
  221. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/s3.tf +0 -0
  222. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/secrets.tf +0 -0
  223. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/security.tf +0 -0
  224. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/versions.tf +0 -0
  225. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/aws/vpc.tf +0 -0
  226. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/README.md +0 -0
  227. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/cloud-run.tf +0 -0
  228. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/cloud-sql.tf +0 -0
  229. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/data-host.tf +0 -0
  230. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/dns.tf +0 -0
  231. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/examples/minimal/main.tf +0 -0
  232. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/examples/minimal/outputs.tf +0 -0
  233. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/examples/minimal/terraform.tfvars.example +0 -0
  234. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/examples/minimal/variables.tf +0 -0
  235. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/locals.tf +0 -0
  236. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/memorystore.tf +0 -0
  237. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/network.tf +0 -0
  238. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/outputs.tf +0 -0
  239. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/registry.tf +0 -0
  240. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/secrets.tf +0 -0
  241. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/services.tf +0 -0
  242. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/storage.tf +0 -0
  243. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/terraform.tfvars.example +0 -0
  244. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/user-data.sh.tftpl +0 -0
  245. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/variables.tf +0 -0
  246. {observal_cli-1.4.2 → observal_cli-1.4.3}/infra/terraform/gcp/versions.tf +0 -0
  247. {observal_cli-1.4.2 → observal_cli-1.4.3}/install-server.sh +0 -0
  248. {observal_cli-1.4.2 → observal_cli-1.4.3}/install.sh +0 -0
  249. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/README.md +0 -0
  250. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/README +0 -0
  251. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/env.py +0 -0
  252. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/script.py.mako +0 -0
  253. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/versions/.gitkeep +0 -0
  254. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/versions/002_drop_visibility.py +0 -0
  255. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/versions/003_skill_registry_direct.py +0 -0
  256. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/versions/004_co_authors.py +0 -0
  257. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/versions/005_insight_self_learn.py +0 -0
  258. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic/versions/v1_baseline.py +0 -0
  259. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/alembic.ini +0 -0
  260. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/__init__.py +0 -0
  261. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/deps.py +0 -0
  262. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/graphql.py +0 -0
  263. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/middleware/__init__.py +0 -0
  264. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/middleware/audit.py +0 -0
  265. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/middleware/content_type.py +0 -0
  266. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/middleware/request_id.py +0 -0
  267. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/middleware/trusted_proxy.py +0 -0
  268. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/ratelimit.py +0 -0
  269. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/__init__.py +0 -0
  270. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/__init__.py +0 -0
  271. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/_router.py +0 -0
  272. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/enterprise_settings.py +0 -0
  273. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/helpers.py +0 -0
  274. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/org.py +0 -0
  275. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/retention.py +0 -0
  276. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/admin/users.py +0 -0
  277. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent/__init__.py +0 -0
  278. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent/_router.py +0 -0
  279. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent/crud.py +0 -0
  280. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent/draft.py +0 -0
  281. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent/helpers.py +0 -0
  282. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent/install.py +0 -0
  283. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/agent_versions.py +0 -0
  284. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/alert.py +0 -0
  285. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/audit.py +0 -0
  286. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/auth.py +0 -0
  287. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/bulk.py +0 -0
  288. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/co_authors.py +0 -0
  289. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/component_source.py +0 -0
  290. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/component_versions.py +0 -0
  291. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/config.py +0 -0
  292. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/dashboard.py +0 -0
  293. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/device_auth.py +0 -0
  294. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/feedback.py +0 -0
  295. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/hook.py +0 -0
  296. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/ingest.py +0 -0
  297. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/insights.py +0 -0
  298. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/jwks.py +0 -0
  299. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/logs_stream.py +0 -0
  300. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/mcp.py +0 -0
  301. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/preview.py +0 -0
  302. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/prompt.py +0 -0
  303. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/reconcile.py +0 -0
  304. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/registry_models.py +0 -0
  305. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/review.py +0 -0
  306. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/sandbox.py +0 -0
  307. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/sessions.py +0 -0
  308. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/skill.py +0 -0
  309. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/support.py +0 -0
  310. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/routes/telemetry.py +0 -0
  311. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/api/sanitize.py +0 -0
  312. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/data/model_registry_seed.json +0 -0
  313. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/database.py +0 -0
  314. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/jobs/__init__.py +0 -0
  315. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/jobs/catalog.py +0 -0
  316. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/jobs/maintenance.py +0 -0
  317. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/logging_config.py +0 -0
  318. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/main.py +0 -0
  319. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/__init__.py +0 -0
  320. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/agent.py +0 -0
  321. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/agent_component.py +0 -0
  322. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/alert.py +0 -0
  323. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/alert_history.py +0 -0
  324. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/base.py +0 -0
  325. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/component_bundle.py +0 -0
  326. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/component_source.py +0 -0
  327. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/download.py +0 -0
  328. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/enterprise_config.py +0 -0
  329. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/exec_config.py +0 -0
  330. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/exporter_config.py +0 -0
  331. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/feedback.py +0 -0
  332. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/hook.py +0 -0
  333. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/insight_meta_cache.py +0 -0
  334. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/insight_report.py +0 -0
  335. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/insight_session_facets.py +0 -0
  336. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/insight_session_meta.py +0 -0
  337. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/mcp.py +0 -0
  338. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/organization.py +0 -0
  339. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/password_reset_token.py +0 -0
  340. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/prompt.py +0 -0
  341. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/saml_config.py +0 -0
  342. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/sandbox.py +0 -0
  343. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/scim_token.py +0 -0
  344. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/skill.py +0 -0
  345. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/submission.py +0 -0
  346. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/user.py +0 -0
  347. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/models/user_group.py +0 -0
  348. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/pyrightconfig.json +0 -0
  349. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/__init__.py +0 -0
  350. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/admin.py +0 -0
  351. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/agent.py +0 -0
  352. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/alert.py +0 -0
  353. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/auth.py +0 -0
  354. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/bulk.py +0 -0
  355. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/component_source.py +0 -0
  356. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/component_version.py +0 -0
  357. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/constants.py +0 -0
  358. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/dashboard.py +0 -0
  359. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/feedback.py +0 -0
  360. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/hook.py +0 -0
  361. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/insights.py +0 -0
  362. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/mcp.py +0 -0
  363. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/models.py +0 -0
  364. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/prompt.py +0 -0
  365. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/retention.py +0 -0
  366. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/sandbox.py +0 -0
  367. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/skill.py +0 -0
  368. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/schemas/telemetry.py +0 -0
  369. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/__init__.py +0 -0
  370. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/agent_builder_types.py +0 -0
  371. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/agent_lock_file.py +0 -0
  372. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/agent_registry_cache.py +0 -0
  373. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/agent_resolver.py +0 -0
  374. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/agent_snapshot.py +0 -0
  375. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/alert_evaluator.py +0 -0
  376. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/anti_gaming.py +0 -0
  377. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/audit/__init__.py +0 -0
  378. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/audit/classification.py +0 -0
  379. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/audit/helpers.py +0 -0
  380. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/audit/setup.py +0 -0
  381. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/audit/sink.py +0 -0
  382. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/cache.py +0 -0
  383. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/clickhouse/__init__.py +0 -0
  384. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/clickhouse/_settings.py +0 -0
  385. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/clickhouse/client.py +0 -0
  386. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/clickhouse/insert.py +0 -0
  387. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/clickhouse/query.py +0 -0
  388. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/clickhouse/schema.py +0 -0
  389. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/component_version_extras.py +0 -0
  390. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/config/__init__.py +0 -0
  391. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/config/mcp_builder.py +0 -0
  392. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/config/skill_builder.py +0 -0
  393. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/config_generator.py +0 -0
  394. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/crypto.py +0 -0
  395. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/demo_accounts.py +0 -0
  396. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/download_tracker.py +0 -0
  397. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/dynamic_settings.py +0 -0
  398. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/editing_lock.py +0 -0
  399. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/events.py +0 -0
  400. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/git_mirror_service.py +0 -0
  401. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/hook_config_generator.py +0 -0
  402. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/hook_install_generator.py +0 -0
  403. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/__init__.py +0 -0
  404. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/claude_code.py +0 -0
  405. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/codex.py +0 -0
  406. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/copilot.py +0 -0
  407. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/copilot_cli.py +0 -0
  408. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/cursor.py +0 -0
  409. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/gemini_cli.py +0 -0
  410. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/helpers.py +0 -0
  411. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/kiro.py +0 -0
  412. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/load_all.py +0 -0
  413. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide/pi.py +0 -0
  414. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ide_feature_inference.py +0 -0
  415. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/__init__.py +0 -0
  416. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/_deps.py +0 -0
  417. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/batch.py +0 -0
  418. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/facets.py +0 -0
  419. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/generator.py +0 -0
  420. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/html_export.py +0 -0
  421. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/sections.py +0 -0
  422. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/self_learn.py +0 -0
  423. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/session_meta_extractor.py +0 -0
  424. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/insights/transcript.py +0 -0
  425. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/jwt_service.py +0 -0
  426. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/log_buffer.py +0 -0
  427. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/mcp_validator.py +0 -0
  428. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/model_catalog.py +0 -0
  429. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/model_display.py +0 -0
  430. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/model_resolver.py +0 -0
  431. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/optic.py +0 -0
  432. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/redis.py +0 -0
  433. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/registry_telemetry.py +0 -0
  434. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/request_context.py +0 -0
  435. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/retention.py +0 -0
  436. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/sandbox_config_generator.py +0 -0
  437. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/sandbox_validator.py +0 -0
  438. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/secrets_redactor.py +0 -0
  439. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/security_events.py +0 -0
  440. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_ingest.py +0 -0
  441. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/__init__.py +0 -0
  442. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/base.py +0 -0
  443. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/claude_code.py +0 -0
  444. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/cursor.py +0 -0
  445. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/ingest_classify.py +0 -0
  446. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/kiro.py +0 -0
  447. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/session_parsers/pi.py +0 -0
  448. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/shared/__init__.py +0 -0
  449. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/shared/ip_utils.py +0 -0
  450. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/shared/utils.py +0 -0
  451. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/skill_config_generator.py +0 -0
  452. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/skill_validator.py +0 -0
  453. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/ssrf_guard.py +0 -0
  454. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/strategic_insights.py +0 -0
  455. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/username_generator.py +0 -0
  456. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/versioning.py +0 -0
  457. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/webhook_delivery.py +0 -0
  458. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/services/webhook_signer.py +0 -0
  459. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/__init__.py +0 -0
  460. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/conftest.py +0 -0
  461. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_agent_config_gen_versioned.py +0 -0
  462. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_agent_pull.py +0 -0
  463. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_agent_versions_api.py +0 -0
  464. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_anti_gaming.py +0 -0
  465. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_component_version_extras.py +0 -0
  466. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_component_versions_api.py +0 -0
  467. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_config.py +0 -0
  468. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_crypto.py +0 -0
  469. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_exec_dashboard.py +0 -0
  470. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_exec_formulas.py +0 -0
  471. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_ide_feature_inference.py +0 -0
  472. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_jwt.py +0 -0
  473. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_multi_tenancy.py +0 -0
  474. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_rbac.py +0 -0
  475. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/tests/test_security_events.py +0 -0
  476. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/version.py +0 -0
  477. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal-server/worker.py +0 -0
  478. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/README.md +0 -0
  479. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/__init__.py +0 -0
  480. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/__main__.py +0 -0
  481. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/analyzer.py +0 -0
  482. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/audit.py +0 -0
  483. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/branding.py +0 -0
  484. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/client.py +0 -0
  485. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_agent.py +0 -0
  486. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_auth.py +0 -0
  487. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_co_authors.py +0 -0
  488. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_component.py +0 -0
  489. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_doctor.py +0 -0
  490. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_hook.py +0 -0
  491. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_logs.py +0 -0
  492. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_mcp.py +0 -0
  493. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_migrate.py +0 -0
  494. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_models.py +0 -0
  495. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_ops.py +0 -0
  496. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_profile.py +0 -0
  497. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_prompt.py +0 -0
  498. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_pull.py +0 -0
  499. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_reconcile.py +0 -0
  500. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_sandbox.py +0 -0
  501. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_scan.py +0 -0
  502. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_server.py +0 -0
  503. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_skill.py +0 -0
  504. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_support.py +0 -0
  505. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_tail_flush.py +0 -0
  506. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/cmd_uninstall.py +0 -0
  507. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/config.py +0 -0
  508. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/constants.py +0 -0
  509. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/features.py +0 -0
  510. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/hooks/__init__.py +0 -0
  511. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/hooks/_cursor_post_worker.py +0 -0
  512. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/hooks/cursor_session_push.py +0 -0
  513. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/hooks/kiro_session_push.py +0 -0
  514. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/hooks/session_push.py +0 -0
  515. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/__init__.py +0 -0
  516. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/base.py +0 -0
  517. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/claude_code.py +0 -0
  518. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/codex.py +0 -0
  519. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/copilot.py +0 -0
  520. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/copilot_cli.py +0 -0
  521. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/cursor.py +0 -0
  522. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/gemini_cli.py +0 -0
  523. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/kiro.py +0 -0
  524. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/load_all.py +0 -0
  525. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/opencode.py +0 -0
  526. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/pi.py +0 -0
  527. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide/protocol.py +0 -0
  528. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide_specs/__init__.py +0 -0
  529. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide_specs/claude_code_hooks_spec.py +0 -0
  530. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide_specs/kiro_hooks_spec.py +0 -0
  531. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/ide_specs/pi_hooks_spec.py +0 -0
  532. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/install_detector.py +0 -0
  533. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/main.py +0 -0
  534. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/model_catalog.py +0 -0
  535. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/optic.py +0 -0
  536. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/prompts.py +0 -0
  537. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/proxy.py +0 -0
  538. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/pyinstaller.spec +0 -0
  539. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/render.py +0 -0
  540. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/requirements.txt +0 -0
  541. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sandbox_mcp.py +0 -0
  542. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sandbox_runner.py +0 -0
  543. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/__init__.py +0 -0
  544. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/backup.py +0 -0
  545. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/config_gen.py +0 -0
  546. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/constants.py +0 -0
  547. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/deps.py +0 -0
  548. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/orchestrator.py +0 -0
  549. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/server/updater.py +0 -0
  550. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sessions/__init__.py +0 -0
  551. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sessions/agent_marker.py +0 -0
  552. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sessions/base.py +0 -0
  553. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sessions/claude_code.py +0 -0
  554. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sessions/cursor.py +0 -0
  555. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/sessions/kiro.py +0 -0
  556. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/settings_reconciler.py +0 -0
  557. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/shared/__init__.py +0 -0
  558. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/shared/utils.py +0 -0
  559. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/shim.py +0 -0
  560. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skill_installer.py +0 -0
  561. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal/SKILL.md +0 -0
  562. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal/references/commands.md +0 -0
  563. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal-admin/SKILL.md +0 -0
  564. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal-advanced/SKILL.md +0 -0
  565. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal-agents/SKILL.md +0 -0
  566. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal-ops/SKILL.md +0 -0
  567. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/skills/observal-registry/SKILL.md +0 -0
  568. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/support/__init__.py +0 -0
  569. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/support/collectors.py +0 -0
  570. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/support/manifest.py +0 -0
  571. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/support/redaction.py +0 -0
  572. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/telemetry/__init__.py +0 -0
  573. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/telemetry_buffer.py +0 -0
  574. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/tests/__init__.py +0 -0
  575. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/tests/test_cmd_agent_versions.py +0 -0
  576. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/tests/test_cmd_component_versions.py +0 -0
  577. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/upgrade_executor.py +0 -0
  578. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/upgrade_lock.py +0 -0
  579. {observal_cli-1.4.2 → observal_cli-1.4.3}/observal_cli/version_check.py +0 -0
  580. {observal_cli-1.4.2 → observal_cli-1.4.3}/package.json +0 -0
  581. {observal_cli-1.4.2 → observal_cli-1.4.3}/packages/pi-extension/LICENSE +0 -0
  582. {observal_cli-1.4.2 → observal_cli-1.4.3}/packages/pi-extension/README.md +0 -0
  583. {observal_cli-1.4.2 → observal_cli-1.4.3}/packages/pi-extension/extensions/observal.ts +0 -0
  584. {observal_cli-1.4.2 → observal_cli-1.4.3}/pnpm-lock.yaml +0 -0
  585. {observal_cli-1.4.2 → observal_cli-1.4.3}/pnpm-workspace.yaml +0 -0
  586. {observal_cli-1.4.2 → observal_cli-1.4.3}/prometheus.yml +0 -0
  587. {observal_cli-1.4.2 → observal_cli-1.4.3}/renovate.json +0 -0
  588. {observal_cli-1.4.2 → observal_cli-1.4.3}/screenshots/01-review-queue.png +0 -0
  589. {observal_cli-1.4.2 → observal_cli-1.4.3}/screenshots/02-detail-sheet-mcp.png +0 -0
  590. {observal_cli-1.4.2 → observal_cli-1.4.3}/screenshots/03-after-bulk-approve.png +0 -0
  591. {observal_cli-1.4.2 → observal_cli-1.4.3}/screenshots/04-rejection-reason-skills.png +0 -0
  592. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/add_spdx_headers.py +0 -0
  593. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/check_license_policy.py +0 -0
  594. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/check_migrations.py +0 -0
  595. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/check_secrets.sh +0 -0
  596. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/check_vulnerabilities.py +0 -0
  597. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/generate_third_party_notices.py +0 -0
  598. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/generate_vex.py +0 -0
  599. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/license-format.json +0 -0
  600. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/new_migration.sh +0 -0
  601. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/refresh_model_snapshot.py +0 -0
  602. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/seed_exec_dashboard.py +0 -0
  603. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/seed_insight_report.py +0 -0
  604. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/seed_test_skill.py +0 -0
  605. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/sync_features.py +0 -0
  606. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/sync_observal_skill.py +0 -0
  607. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/test_version_e2e.sh +0 -0
  608. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/test_xff_spoofing.sh +0 -0
  609. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/update_spdx_copyright.py +0 -0
  610. {observal_cli-1.4.2 → observal_cli-1.4.3}/scripts/verify_exec_dashboard.py +0 -0
  611. {observal_cli-1.4.2 → observal_cli-1.4.3}/test-agent.json +0 -0
  612. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/__init__.py +0 -0
  613. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/conftest.py +0 -0
  614. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/agent-edit-form.spec.ts +0 -0
  615. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/auth.spec.ts +0 -0
  616. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/component-edit-screenshots.spec.ts +0 -0
  617. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/components.spec.ts +0 -0
  618. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/frontend-flows.spec.ts +0 -0
  619. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/helpers.ts +0 -0
  620. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-agent-compat.spec.ts +0 -0
  621. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-cli.spec.ts +0 -0
  622. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-hooks.spec.ts +0 -0
  623. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-lifecycle.spec.ts +0 -0
  624. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-live.spec.ts +0 -0
  625. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-otlp-logs.spec.ts +0 -0
  626. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-otlp-traces.spec.ts +0 -0
  627. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-web-agents.spec.ts +0 -0
  628. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/kiro-web-traces.spec.ts +0 -0
  629. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/package.json +0 -0
  630. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/real-edit-release.spec.ts +0 -0
  631. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/review-diff-screenshots.spec.ts +0 -0
  632. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/shim-merge.spec.ts +0 -0
  633. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/sso-login.spec.ts +0 -0
  634. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/unarchive-agent.spec.ts +0 -0
  635. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/e2e/visibility-removal-smoke.spec.ts +0 -0
  636. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/fixtures/model_display_cases.json +0 -0
  637. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/fixtures/skills/refactor-guide/SKILL.md +0 -0
  638. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/fixtures/skills/security-auditor/SKILL.md +0 -0
  639. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/fixtures/skills/test-writer/SKILL.md +0 -0
  640. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/mock_mcp.py +0 -0
  641. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_builder_skills.py +0 -0
  642. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_composition.py +0 -0
  643. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_config_generator.py +0 -0
  644. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_name_lookup.py +0 -0
  645. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_rbac.py +0 -0
  646. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_review.py +0 -0
  647. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_agent_snapshot.py +0 -0
  648. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_alert_evaluator.py +0 -0
  649. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_audit_logging.py +0 -0
  650. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_auth2_security.py +0 -0
  651. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_auth_redis_down.py +0 -0
  652. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_bulk.py +0 -0
  653. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_bundles.py +0 -0
  654. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_cli_errors.py +0 -0
  655. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_cli_ide_adapters.py +0 -0
  656. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_clickhouse_phase1.py +0 -0
  657. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_clickhouse_resource_tuning.py +0 -0
  658. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_clickhouse_retention.py +0 -0
  659. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_cmd_prompt.py +0 -0
  660. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_cmd_support.py +0 -0
  661. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_component_version_extras.py +0 -0
  662. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_config_generator_utils.py +0 -0
  663. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_constants_sync.py +0 -0
  664. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_cursor_session_push.py +0 -0
  665. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_demo_accounts.py +0 -0
  666. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_deployment_guards.py +0 -0
  667. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_device_auth.py +0 -0
  668. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_docker_detection.py +0 -0
  669. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_draft_workflow.py +0 -0
  670. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_encryption_fake_keys.py +0 -0
  671. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_endpoint_discovery.py +0 -0
  672. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_enterprise.py +0 -0
  673. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_env_detection_and_config.py +0 -0
  674. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_events.py +0 -0
  675. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_features_sync.py +0 -0
  676. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_field_validation.py +0 -0
  677. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_git_mirror.py +0 -0
  678. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_graphql_phase6.py +0 -0
  679. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_health.py +0 -0
  680. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_hipaa_audit.py +0 -0
  681. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_ide_refactor_baseline.py +0 -0
  682. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_ide_registry.py +0 -0
  683. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_ingest_phase2.py +0 -0
  684. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_install_detector.py +0 -0
  685. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_integration.py +0 -0
  686. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_listing_detail_access.py +0 -0
  687. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_mcp_config_parser.py +0 -0
  688. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_mcp_edit_submit.py +0 -0
  689. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_migrate.py +0 -0
  690. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_migrate_telemetry.py +0 -0
  691. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_model_display.py +0 -0
  692. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_observal_skill.py +0 -0
  693. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_observal_skill_sync.py +0 -0
  694. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_optic.py +0 -0
  695. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_phase9_10.py +0 -0
  696. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_pi_session_parser.py +0 -0
  697. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_preview_config.py +0 -0
  698. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_proxy_phase4.py +0 -0
  699. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_registry_types.py +0 -0
  700. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_resilience.py +0 -0
  701. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_retention.py +0 -0
  702. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_retention_api.py +0 -0
  703. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_retention_endpoints.py +0 -0
  704. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_retention_logic.py +0 -0
  705. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_retention_service.py +0 -0
  706. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_retention_simulation.py +0 -0
  707. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_review_queue.py +0 -0
  708. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_saml.py +0 -0
  709. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_saml_scim_integration.py +0 -0
  710. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sanitize.py +0 -0
  711. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_scan_kiro_home.py +0 -0
  712. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_schema_redesign.py +0 -0
  713. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_scim.py +0 -0
  714. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec001_002_004_auth_hardening.py +0 -0
  715. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec003_ratelimit.py +0 -0
  716. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec003_trusted_proxy_middleware.py +0 -0
  717. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec005_unsafe_defaults.py +0 -0
  718. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec006_password_policy.py +0 -0
  719. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec007_graphql_auth.py +0 -0
  720. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec009_component_source_ownership.py +0 -0
  721. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec009_org_scoping.py +0 -0
  722. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec010_agent_listing.py +0 -0
  723. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec015_openapi_flags.py +0 -0
  724. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec023_cache_isolation.py +0 -0
  725. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec024_tenant_scoping.py +0 -0
  726. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec027_registry_sc.py +0 -0
  727. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sec028_sso_guards.py +0 -0
  728. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_secrets_redactor.py +0 -0
  729. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_self_commands.py +0 -0
  730. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_self_learn.py +0 -0
  731. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_server_backup.py +0 -0
  732. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_server_upgrade.py +0 -0
  733. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_sessions_api.py +0 -0
  734. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_settings_reconciler.py +0 -0
  735. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_shim_error_handling.py +0 -0
  736. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_skill_config_generator.py +0 -0
  737. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_skill_validator.py +0 -0
  738. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_ssrf_guard.py +0 -0
  739. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_bundle_wiring.py +0 -0
  740. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_collectors.py +0 -0
  741. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_endpoint.py +0 -0
  742. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_inspect.py +0 -0
  743. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_integration.py +0 -0
  744. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_manifest.py +0 -0
  745. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_pbt.py +0 -0
  746. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_support_redaction.py +0 -0
  747. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_telemetry_collection.py +0 -0
  748. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_uninstall.py +0 -0
  749. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_uninstall_windows.py +0 -0
  750. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_upgrade_lock.py +0 -0
  751. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_username_generator.py +0 -0
  752. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_version_check.py +0 -0
  753. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_version_negotiation.py +0 -0
  754. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_version_sync.py +0 -0
  755. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_versioning.py +0 -0
  756. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_webhook_delivery.py +0 -0
  757. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_webhook_signer.py +0 -0
  758. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_webhook_signer_properties.py +0 -0
  759. {observal_cli-1.4.2 → observal_cli-1.4.3}/tests/test_worker_phase5.py +0 -0
  760. {observal_cli-1.4.2 → observal_cli-1.4.3}/tools/release.sh +0 -0
  761. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/.gitignore +0 -0
  762. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/AGENTS.md +0 -0
  763. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/eslint.config.mjs +0 -0
  764. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/index.html +0 -0
  765. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/playwright.config.ts +0 -0
  766. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/pnpm-workspace.yaml +0 -0
  767. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/postcss.config.mjs +0 -0
  768. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/public/favicon.ico +0 -0
  769. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/public/fonts/albert-sans-latin-variable.woff2 +0 -0
  770. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/public/fonts/archivo-latin-variable.woff2 +0 -0
  771. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/public/fonts/jetbrains-mono-latin-variable.woff2 +0 -0
  772. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/public/icon.png +0 -0
  773. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/public/observal-logo.svg +0 -0
  774. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/app.css +0 -0
  775. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/account/avatar-upload.tsx +0 -0
  776. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/builder/model-picker.tsx +0 -0
  777. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/builder/preview-panel.tsx +0 -0
  778. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/builder/sortable-component-list.tsx +0 -0
  779. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/builder/validation-panel.tsx +0 -0
  780. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/bar-list.tsx +0 -0
  781. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/dashboard-card.tsx +0 -0
  782. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/dimension-radar.tsx +0 -0
  783. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/export-button.tsx +0 -0
  784. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/latency-heatmap.tsx +0 -0
  785. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/no-data.tsx +0 -0
  786. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/query-error.tsx +0 -0
  787. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/retention-widget.tsx +0 -0
  788. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/score-overview.tsx +0 -0
  789. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/stat-card.tsx +0 -0
  790. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/time-range-select.tsx +0 -0
  791. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/top-items-card.tsx +0 -0
  792. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dashboard/trend-chart.tsx +0 -0
  793. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/dynamic-title.tsx +0 -0
  794. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/layouts/admin-guard.tsx +0 -0
  795. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/layouts/auth-guard.tsx +0 -0
  796. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/layouts/dashboard-shell.tsx +0 -0
  797. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/layouts/page-header.tsx +0 -0
  798. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/layouts/role-guard.tsx +0 -0
  799. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/nav/command-menu.tsx +0 -0
  800. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/nav/github-star-banner.tsx +0 -0
  801. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/nav/nav-user.tsx +0 -0
  802. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/nav/registry-sidebar.tsx +0 -0
  803. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/agent-card.tsx +0 -0
  804. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/agent-edit-form.tsx +0 -0
  805. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/co-author-input.tsx +0 -0
  806. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/component-card.tsx +0 -0
  807. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/component-edit-form.tsx +0 -0
  808. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/feedback-list.tsx +0 -0
  809. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/ide-badges.tsx +0 -0
  810. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/install-dialog.tsx +0 -0
  811. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/pull-command.tsx +0 -0
  812. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/registry-detail.tsx +0 -0
  813. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/registry-table.tsx +0 -0
  814. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/review-form.tsx +0 -0
  815. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/status-badge.tsx +0 -0
  816. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/submit-component-dialog.tsx +0 -0
  817. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/version-bump-dialog.tsx +0 -0
  818. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/registry/version-dropdown.tsx +0 -0
  819. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/review/review-diff-sheet.tsx +0 -0
  820. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/review/validation-badges.tsx +0 -0
  821. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/review/yaml-diff-view.tsx +0 -0
  822. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/shared/empty-state.tsx +0 -0
  823. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/shared/error-state.tsx +0 -0
  824. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/shared/retention-warning-banner.tsx +0 -0
  825. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/shared/skeleton-layouts.tsx +0 -0
  826. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/shared/version-mismatch-banner.tsx +0 -0
  827. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/traces/span-tree.tsx +0 -0
  828. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/traces/trace-detail.tsx +0 -0
  829. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/avatar.tsx +0 -0
  830. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/badge.tsx +0 -0
  831. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/breadcrumb.tsx +0 -0
  832. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/button.tsx +0 -0
  833. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/card.tsx +0 -0
  834. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/checkbox.tsx +0 -0
  835. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/command.tsx +0 -0
  836. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/dialog.tsx +0 -0
  837. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/dropdown-menu.tsx +0 -0
  838. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/input.tsx +0 -0
  839. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/label.tsx +0 -0
  840. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/popover.tsx +0 -0
  841. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/progress.tsx +0 -0
  842. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/resizable.tsx +0 -0
  843. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/scroll-area.tsx +0 -0
  844. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/select.tsx +0 -0
  845. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/separator.tsx +0 -0
  846. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/sheet.tsx +0 -0
  847. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/sidebar.tsx +0 -0
  848. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/skeleton.tsx +0 -0
  849. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/sonner.tsx +0 -0
  850. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/switch.tsx +0 -0
  851. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/table.tsx +0 -0
  852. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/tabs.tsx +0 -0
  853. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/textarea.tsx +0 -0
  854. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/theme-switcher.tsx +0 -0
  855. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/components/ui/tooltip.tsx +0 -0
  856. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-admin-api.ts +0 -0
  857. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-admin-guard.ts +0 -0
  858. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-agents-api.ts +0 -0
  859. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-api.ts +0 -0
  860. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-auth.ts +0 -0
  861. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-dashboard-api.ts +0 -0
  862. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-deployment-config.ts +0 -0
  863. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-ides.ts +0 -0
  864. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-insights-api.ts +0 -0
  865. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-mobile.ts +0 -0
  866. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-registry-api.ts +0 -0
  867. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-review-api.ts +0 -0
  868. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-role-guard.ts +0 -0
  869. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-sessions-api.ts +0 -0
  870. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/hooks/use-traces-api.ts +0 -0
  871. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/api.ts +0 -0
  872. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/export.ts +0 -0
  873. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/features.ts +0 -0
  874. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/graphql-ws.ts +0 -0
  875. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/ide-features.ts +0 -0
  876. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/mcp-parser.ts +0 -0
  877. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/model-display.ts +0 -0
  878. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/query-client.ts +0 -0
  879. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/theme.tsx +0 -0
  880. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/types/admin.ts +0 -0
  881. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/types/dashboard.ts +0 -0
  882. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/types/registry.ts +0 -0
  883. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/types/sessions.ts +0 -0
  884. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/types.ts +0 -0
  885. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/lib/utils.ts +0 -0
  886. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/main.tsx +0 -0
  887. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/adoption-tab.tsx +0 -0
  888. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/cost-tab.tsx +0 -0
  889. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/departments-tab.tsx +0 -0
  890. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/insights-tab.tsx +0 -0
  891. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/investments-tab.tsx +0 -0
  892. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/stat-card.tsx +0 -0
  893. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/components/velocity-tab.tsx +0 -0
  894. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/context.ts +0 -0
  895. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/dashboard/index.tsx +0 -0
  896. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/diagnostics.tsx +0 -0
  897. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/errors.tsx +0 -0
  898. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/insights/detail.tsx +0 -0
  899. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/insights/index.tsx +0 -0
  900. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/review.tsx +0 -0
  901. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/security-events.tsx +0 -0
  902. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/settings.tsx +0 -0
  903. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/sso.tsx +0 -0
  904. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/admin/users.tsx +0 -0
  905. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/device.tsx +0 -0
  906. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/login.tsx +0 -0
  907. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/agents/builder.tsx +0 -0
  908. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/agents/detail.tsx +0 -0
  909. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/agents/index.tsx +0 -0
  910. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/components/detail.tsx +0 -0
  911. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/components/index.tsx +0 -0
  912. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/home.tsx +0 -0
  913. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/registry/leaderboard.tsx +0 -0
  914. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/user/account.tsx +0 -0
  915. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/pages/user/traces/detail.tsx +0 -0
  916. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routeTree.gen.ts +0 -0
  917. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/(auth)/device.tsx +0 -0
  918. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/(auth)/login.tsx +0 -0
  919. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/__root.tsx +0 -0
  920. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/dashboard.tsx +0 -0
  921. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/diagnostics.tsx +0 -0
  922. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/errors.tsx +0 -0
  923. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/insights/$reportId.tsx +0 -0
  924. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/insights/index.tsx +0 -0
  925. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/review.tsx +0 -0
  926. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/security-events.tsx +0 -0
  927. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/settings.tsx +0 -0
  928. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/sso.tsx +0 -0
  929. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin/users.tsx +0 -0
  930. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_admin.tsx +0 -0
  931. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_user/account.tsx +0 -0
  932. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_user/traces/$traceId.tsx +0 -0
  933. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/_user.tsx +0 -0
  934. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/agents/$agentId.tsx +0 -0
  935. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/agents/builder.tsx +0 -0
  936. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/agents/index.tsx +0 -0
  937. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/components/$componentId.tsx +0 -0
  938. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/components/index.tsx +0 -0
  939. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/index.tsx +0 -0
  940. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed/leaderboard.tsx +0 -0
  941. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/routes/_authed.tsx +0 -0
  942. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/src/vite-env.d.ts +0 -0
  943. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/tsconfig.json +0 -0
  944. {observal_cli-1.4.2 → observal_cli-1.4.3}/web/vite.config.ts +0 -0
@@ -10,6 +10,27 @@
10
10
 
11
11
  All notable changes to this project will be documented in this file.
12
12
 
13
+ ## [1.4.3] - 2026-05-31
14
+
15
+ ### Added
16
+
17
+ - persist audit log search filters in URL params (**web**) ([bbf7e47](https://github.com/BlazeUp-AI/Observal/commit/bbf7e473a6a0f4352778fa5ce4d34c922fa9bdbc))
18
+ - persist trace filters in URL search params ([324d47f](https://github.com/BlazeUp-AI/Observal/commit/324d47fcd68bffabcea433b5f3d2c7bc0f502077))
19
+
20
+ ### Documentation
21
+
22
+ - add cli/skill.md reference (#1207) ([3e8d0bf](https://github.com/BlazeUp-AI/Observal/commit/3e8d0bf01f03e22147818e213e092adcafa1151c))
23
+
24
+ ### Fixed
25
+
26
+ - support BYO-VPC Fargate deployment with private zones (**infra**) ([5dabfc0](https://github.com/BlazeUp-AI/Observal/commit/5dabfc01027ca9362d92161e65af39047095f7bf))
27
+ - use dynamic agent-specific rules file paths (**opencode**) ([c1097b7](https://github.com/BlazeUp-AI/Observal/commit/c1097b7cbfe717a23d033eed15ebcfea051ee7e1))
28
+ - unify loading skeletons via shared canonical layouts (**web**) ([5b56253](https://github.com/BlazeUp-AI/Observal/commit/5b56253199ea27e7516dff99d2ad0453b48f628c))
29
+ - replace magic status codes with constants in test_payload_protection.py (**lint**) ([0ee8bd1](https://github.com/BlazeUp-AI/Observal/commit/0ee8bd1f56daab81efb233795d7c1e8299cf83b2))
30
+
31
+ ### Testing
32
+
33
+ - add E2E tests for auth and scan commands (**cli**) ([feb6f29](https://github.com/BlazeUp-AI/Observal/commit/feb6f29e12e86480ffb699486f385a94fea5e684))
13
34
  ## [1.4.2] - 2026-05-31
14
35
 
15
36
  ### Added
@@ -17,8 +38,78 @@ All notable changes to this project will be documented in this file.
17
38
  - add dependency review action for PR license gate (**ci**) ([b6327d9](https://github.com/BlazeUp-AI/Observal/commit/b6327d951fc6a8f9ce37d311bde8c2e74c8c19a1))
18
39
  - add OpenVEX and THIRD_PARTY_NOTICES generation (**ci**) ([6687430](https://github.com/BlazeUp-AI/Observal/commit/6687430908ea2105e8a24ee9eb725d1d6000e90e))
19
40
  - move insights out of ee/ and remove license gate ([4330b37](https://github.com/BlazeUp-AI/Observal/commit/4330b373a0b0063c2348959999a69ba37b11cc19))
41
+
42
+ ### Documentation
43
+
44
+ - add commercial licensing whitepaper for enterprise buyers ([55f4535](https://github.com/BlazeUp-AI/Observal/commit/55f45356b85214166265c0de512ec5c998b4ae29))
45
+
46
+ ### Fixed
47
+
48
+ - resolve all prod deployment failures in Terraform module (**infra**) ([3579aa0](https://github.com/BlazeUp-AI/Observal/commit/3579aa02bdf5b82b9d4a5cf51cf59bb501157a04))
49
+ ## [1.4.1] - 2026-05-31
50
+
51
+ ### Added
52
+
20
53
  - add GCP Terraform module for self-hosting (**infra**) ([3f4312b](https://github.com/BlazeUp-AI/Observal/commit/3f4312b1c9456d0074a3f5819fe673fb44cc62ea))
54
+
55
+ ### Fixed
56
+
57
+ - close API key redaction gaps across ingest, GraphQL, and settings (**security**) ([100c272](https://github.com/BlazeUp-AI/Observal/commit/100c27281bd7aa83d7e0418c1d51dd3148a2db9d))
58
+ - auto-enable APIs, fix Cloud SQL edition, AR proxy for ghcr.io (**infra/gcp**) ([31652c0](https://github.com/BlazeUp-AI/Observal/commit/31652c0a9fb2520f8b0a1257b4f2b938aa773388))
59
+ - align Terraform env vars with v1.0 and fix template bugs (**infra**) ([685cca3](https://github.com/BlazeUp-AI/Observal/commit/685cca3e4cd294c7b25178283620af00de44c4bb))
60
+ ## [1.4.0] - 2026-05-31
61
+
62
+ ### Added
63
+
21
64
  - make sensitive settings write-once and retractable (**security**) ([b6b4fc1](https://github.com/BlazeUp-AI/Observal/commit/b6b4fc1f4f90d30c3c6bceef9d62d6faa5d214c7))
65
+
66
+ ### Fixed
67
+
68
+ - correct tool count and strip ANSI from thinking blocks (**ui+parser**) ([cb97420](https://github.com/BlazeUp-AI/Observal/commit/cb974206eb1aead4429f2345b59a80296bcd9e3b))
69
+ - fix off-by-one in byte offset tracking (**pi-extension**) ([39e2135](https://github.com/BlazeUp-AI/Observal/commit/39e2135ea59eeb4c43a87fdb66fac2d5f3ef1f22))
70
+ - prevent partial line reads during concurrent agent writes (**cli**) ([c9f9b32](https://github.com/BlazeUp-AI/Observal/commit/c9f9b32cfc9c5f94ebbbf4f851f23ad868c84e86))
71
+ - fix TS type errors in incremental session fetch (**frontend**) ([794f98b](https://github.com/BlazeUp-AI/Observal/commit/794f98b1eb55bbdaaaa0c0935b11a550b2b53ec6))
72
+ - add tmpfs mounts and remove enterprise image logic (**infra**) ([02886aa](https://github.com/BlazeUp-AI/Observal/commit/02886aa8312169683a45e5306e4443c3dbc592e1))
73
+
74
+ ### Other
75
+
76
+ - remove obsolete release-enterprise workflow ([cdf0078](https://github.com/BlazeUp-AI/Observal/commit/cdf007890efe0c23dd0d83ff8aaf563770cb8ef7))
77
+
78
+ ### Performance
79
+
80
+ - add partition key to session_stats_agg (**clickhouse**) ([013aae1](https://github.com/BlazeUp-AI/Observal/commit/013aae196ec58bc5e6c3394572c7650bf973e72a))
81
+ - tune for 512M container with 500+ concurrent users (**postgres**) ([bc161e0](https://github.com/BlazeUp-AI/Observal/commit/bc161e03a8a2667f40a223bd38e363dd58aac09c))
82
+ - convert 3 BaseHTTPMiddleware to pure ASGI (**middleware**) ([0b7096a](https://github.com/BlazeUp-AI/Observal/commit/0b7096aa86d303735ef1ba4a925bb1a806f8d29d))
83
+ - add slim query variants without blob columns (**clickhouse**) ([1415fb1](https://github.com/BlazeUp-AI/Observal/commit/1415fb11696456510ed3b290900ec2d9ff5c4443))
84
+ - skip dedup query on first push with Redis flag guard (**ingest**) ([575842d](https://github.com/BlazeUp-AI/Observal/commit/575842dd3facf0aa5f186543ee4b16604655cdd0))
85
+ - incremental session detail fetch with after_offset (**frontend**) ([b64a8a2](https://github.com/BlazeUp-AI/Observal/commit/b64a8a2f2e2c96110d9c3b2159334546309d3342))
86
+ - add after_offset param for incremental detail fetch (**sessions**) ([6e2676b](https://github.com/BlazeUp-AI/Observal/commit/6e2676bc6dbba781b1f101d2027eb9f6ff83d885))
87
+ - raise merge tree part thresholds for high ingest (**clickhouse**) ([cce4b91](https://github.com/BlazeUp-AI/Observal/commit/cce4b91f14cee7cdd16bc17c33ecd0eb84f2dffd))
88
+ - cache agent_id name→UUID resolution in Redis (5min TTL) (**ingest**) ([90e19fd](https://github.com/BlazeUp-AI/Observal/commit/90e19fdbfd5063f798d7875d0cca3a57860ee8a4))
89
+ - combine 15 regex patterns into single alternation (**redactor**) ([847ecde](https://github.com/BlazeUp-AI/Observal/commit/847ecde2d807c48e1120039502f179d2960b8882))
90
+ - enable async_insert with sync override for audit (**clickhouse**) ([b890023](https://github.com/BlazeUp-AI/Observal/commit/b89002305ed1e4b55b10b31e2878af7412d6f244))
91
+ - set maxmemory 200mb with volatile-lru eviction (**redis**) ([22a4f2b](https://github.com/BlazeUp-AI/Observal/commit/22a4f2b5994d3ca96a35b212d0d7f8467784425b))
92
+ - add rate limit of 300/minute per client IP (**ingest**) ([cd66b15](https://github.com/BlazeUp-AI/Observal/commit/cd66b152b3f2b7e2ad7e2a3a1cf00981482dc078))
93
+ - skip ContentType depth check on ingest/telemetry (**middleware**) ([22acc2b](https://github.com/BlazeUp-AI/Observal/commit/22acc2bff68c083c6175c8a49ba093109707066a))
94
+ - remove GZipMiddleware, nginx handles compression (**middleware**) ([0d68724](https://github.com/BlazeUp-AI/Observal/commit/0d68724b846781aea78eba30d82a17040f2f94c8))
95
+ - remove _invalidate_cache from hot-path inserts (**cache**) ([8314cca](https://github.com/BlazeUp-AI/Observal/commit/8314cca002410e7a5300f30ff5ef65d2d9ad3c40))
96
+ - reduce session detail polling to 5s fallback (**frontend**) ([cd0a61c](https://github.com/BlazeUp-AI/Observal/commit/cd0a61c64717e37b0cf815898a784988ecab4704))
97
+ - increase max_jobs from 5 to 15 (**worker**) ([9504a75](https://github.com/BlazeUp-AI/Observal/commit/9504a75e05b25a743d77116df87019577bf505a6))
98
+ - add uvicorn workers for multi-core throughput (**docker**) ([8c7181d](https://github.com/BlazeUp-AI/Observal/commit/8c7181dbe1955f4c3dc1c0a3fd1d733435aa8c30))
99
+ - increase connection pool sizes for 500+ concurrent users (**scale**) ([c28d325](https://github.com/BlazeUp-AI/Observal/commit/c28d3255193a1b5f9f5fe566108a33df772cad0a))
100
+ - set keepalive connections equal to max connections (**clickhouse**) ([8ffb7ee](https://github.com/BlazeUp-AI/Observal/commit/8ffb7eee53d75e0246cdfe5b82f123bc571326cf))
101
+ - add upstream keepalive and WebSocket timeout (**nginx**) ([6465c6e](https://github.com/BlazeUp-AI/Observal/commit/6465c6ef88832639bb0b358c9ed6bd4dfe5967ff))
102
+ - fire-and-forget Redis publish on session ingest (**ingest**) ([cf502c4](https://github.com/BlazeUp-AI/Observal/commit/cf502c4e5e984589b1ab33e049a6ab4cdead69fa))
103
+ - use session-specific channels for targeted fan-out (**pubsub**) ([bc615fe](https://github.com/BlazeUp-AI/Observal/commit/bc615fe5ded1eafc111edb8febdffe9b38eb9d54))
104
+ - use OrderedDict for O(1) LRU eviction in registry cache (**cache**) ([c1fa3fd](https://github.com/BlazeUp-AI/Observal/commit/c1fa3fd3d31a737022be50080aaec9a3ca17bbd7))
105
+ - add partition-independent FINAL optimization (**dashboard**) ([c8f09ad](https://github.com/BlazeUp-AI/Observal/commit/c8f09ad6b71ec9c4daee1fc6929a573ce6899412))
106
+ - parallelize ClickHouse queries with asyncio.gather (**dashboard**) ([dcb03fd](https://github.com/BlazeUp-AI/Observal/commit/dcb03fdfa4c42913c921c3ee4b8fe65edde83158))
107
+ - pipeline 3 Redis checks into 1 round-trip (**auth**) ([9a777fd](https://github.com/BlazeUp-AI/Observal/commit/9a777fd6e051f3b8213924208059c7e7e783812d))
108
+ - publish sessions:updated on successful session ingest (**ingest**) ([f6e8450](https://github.com/BlazeUp-AI/Observal/commit/f6e84505138dc382840fd02b4acc5747dc6d0765))
109
+ ## [1.3.1] - 2026-05-30
110
+
111
+ ### Added
112
+
22
113
  - migrate from Next.js to Vite + TanStack Router (**web**) ([c4578d7](https://github.com/BlazeUp-AI/Observal/commit/c4578d78ccea5385ed618cbd2cfed55b64cc0e1d))
23
114
  - add ring buffer sink, SSE log streaming, CLI --remote (**optic**) ([76979cb](https://github.com/BlazeUp-AI/Observal/commit/76979cb99a1788d085c494434bdadb29829ea506))
24
115
  - add Okta OIDC setup documentation (**saml**) ([2657aa3](https://github.com/BlazeUp-AI/Observal/commit/2657aa37a1f8afdf5b298d4934a8b0f006915528))
@@ -43,21 +134,8 @@ All notable changes to this project will be documented in this file.
43
134
  - break clickhouse client/schema cycle via _settings module (**server**) ([e65b884](https://github.com/BlazeUp-AI/Observal/commit/e65b884b5cacc574a4df9f20611bcb10817649a6))
44
135
  - extract DashboardRangeContext to break 3 import cycles (**web**) ([bbc105e](https://github.com/BlazeUp-AI/Observal/commit/bbc105e912bb8fc8af5ab390a6be3dc2c3c8de2c))
45
136
 
46
- ### Documentation
47
-
48
- - add commercial licensing whitepaper for enterprise buyers ([55f4535](https://github.com/BlazeUp-AI/Observal/commit/55f45356b85214166265c0de512ec5c998b4ae29))
49
-
50
137
  ### Fixed
51
138
 
52
- - resolve all prod deployment failures in Terraform module (**infra**) ([3579aa0](https://github.com/BlazeUp-AI/Observal/commit/3579aa02bdf5b82b9d4a5cf51cf59bb501157a04))
53
- - close API key redaction gaps across ingest, GraphQL, and settings (**security**) ([100c272](https://github.com/BlazeUp-AI/Observal/commit/100c27281bd7aa83d7e0418c1d51dd3148a2db9d))
54
- - auto-enable APIs, fix Cloud SQL edition, AR proxy for ghcr.io (**infra/gcp**) ([31652c0](https://github.com/BlazeUp-AI/Observal/commit/31652c0a9fb2520f8b0a1257b4f2b938aa773388))
55
- - align Terraform env vars with v1.0 and fix template bugs (**infra**) ([685cca3](https://github.com/BlazeUp-AI/Observal/commit/685cca3e4cd294c7b25178283620af00de44c4bb))
56
- - correct tool count and strip ANSI from thinking blocks (**ui+parser**) ([cb97420](https://github.com/BlazeUp-AI/Observal/commit/cb974206eb1aead4429f2345b59a80296bcd9e3b))
57
- - fix off-by-one in byte offset tracking (**pi-extension**) ([39e2135](https://github.com/BlazeUp-AI/Observal/commit/39e2135ea59eeb4c43a87fdb66fac2d5f3ef1f22))
58
- - prevent partial line reads during concurrent agent writes (**cli**) ([c9f9b32](https://github.com/BlazeUp-AI/Observal/commit/c9f9b32cfc9c5f94ebbbf4f851f23ad868c84e86))
59
- - fix TS type errors in incremental session fetch (**frontend**) ([794f98b](https://github.com/BlazeUp-AI/Observal/commit/794f98b1eb55bbdaaaa0c0935b11a550b2b53ec6))
60
- - add tmpfs mounts and remove enterprise image logic (**infra**) ([02886aa](https://github.com/BlazeUp-AI/Observal/commit/02886aa8312169683a45e5306e4443c3dbc592e1))
61
139
  - escape shell variable in user-data.sh.tftpl (**infra**) ([b60cd16](https://github.com/BlazeUp-AI/Observal/commit/b60cd161c6fbda5ba2cd2d6af77714ae6d9ae36a))
62
140
  - remove references to nonexistent enterprise artifacts (**infra**) ([9292cf9](https://github.com/BlazeUp-AI/Observal/commit/9292cf90b8d73f4d30be84bc1ca1c09f9297b50e))
63
141
  - update scancode license-policy path after move to .reuse/ (**ci**) ([d081dfa](https://github.com/BlazeUp-AI/Observal/commit/d081dfaacde4f3ea9623db0440d0407c8bf49d85))
@@ -96,7 +174,6 @@ All notable changes to this project will be documented in this file.
96
174
 
97
175
  ### Other
98
176
 
99
- - remove obsolete release-enterprise workflow ([cdf0078](https://github.com/BlazeUp-AI/Observal/commit/cdf007890efe0c23dd0d83ff8aaf563770cb8ef7))
100
177
  - set version to 1.3.0 (skip burned release) ([9318611](https://github.com/BlazeUp-AI/Observal/commit/93186116796e13089ec73a856365d96f00585eed))
101
178
  - update actions/setup-node action to v6 (#1278) (**deps**) ([1a015f4](https://github.com/BlazeUp-AI/Observal/commit/1a015f4f569b0177801afc40e1f698f2788b02c1))
102
179
  - remove outdated docs, images, and stale references ([b831dd5](https://github.com/BlazeUp-AI/Observal/commit/b831dd555d5f5efcb5902aef9710dc82da0df774))
@@ -104,38 +181,6 @@ All notable changes to this project will be documented in this file.
104
181
  - update dependency ruff to v0.15.15 (#1275) (**deps**) ([90b3fb4](https://github.com/BlazeUp-AI/Observal/commit/90b3fb413dd5f62eff9ccd4cc4eaa1e8a54b4d18))
105
182
  - update docker images (minor/patch) (#1276) (**deps**) ([e287405](https://github.com/BlazeUp-AI/Observal/commit/e287405c45997b8c02715abaedc3b02fe982753d))
106
183
 
107
- ### Performance
108
-
109
- - add partition key to session_stats_agg (**clickhouse**) ([013aae1](https://github.com/BlazeUp-AI/Observal/commit/013aae196ec58bc5e6c3394572c7650bf973e72a))
110
- - tune for 512M container with 500+ concurrent users (**postgres**) ([bc161e0](https://github.com/BlazeUp-AI/Observal/commit/bc161e03a8a2667f40a223bd38e363dd58aac09c))
111
- - convert 3 BaseHTTPMiddleware to pure ASGI (**middleware**) ([0b7096a](https://github.com/BlazeUp-AI/Observal/commit/0b7096aa86d303735ef1ba4a925bb1a806f8d29d))
112
- - add slim query variants without blob columns (**clickhouse**) ([1415fb1](https://github.com/BlazeUp-AI/Observal/commit/1415fb11696456510ed3b290900ec2d9ff5c4443))
113
- - skip dedup query on first push with Redis flag guard (**ingest**) ([575842d](https://github.com/BlazeUp-AI/Observal/commit/575842dd3facf0aa5f186543ee4b16604655cdd0))
114
- - incremental session detail fetch with after_offset (**frontend**) ([b64a8a2](https://github.com/BlazeUp-AI/Observal/commit/b64a8a2f2e2c96110d9c3b2159334546309d3342))
115
- - add after_offset param for incremental detail fetch (**sessions**) ([6e2676b](https://github.com/BlazeUp-AI/Observal/commit/6e2676bc6dbba781b1f101d2027eb9f6ff83d885))
116
- - raise merge tree part thresholds for high ingest (**clickhouse**) ([cce4b91](https://github.com/BlazeUp-AI/Observal/commit/cce4b91f14cee7cdd16bc17c33ecd0eb84f2dffd))
117
- - cache agent_id name→UUID resolution in Redis (5min TTL) (**ingest**) ([90e19fd](https://github.com/BlazeUp-AI/Observal/commit/90e19fdbfd5063f798d7875d0cca3a57860ee8a4))
118
- - combine 15 regex patterns into single alternation (**redactor**) ([847ecde](https://github.com/BlazeUp-AI/Observal/commit/847ecde2d807c48e1120039502f179d2960b8882))
119
- - enable async_insert with sync override for audit (**clickhouse**) ([b890023](https://github.com/BlazeUp-AI/Observal/commit/b89002305ed1e4b55b10b31e2878af7412d6f244))
120
- - set maxmemory 200mb with volatile-lru eviction (**redis**) ([22a4f2b](https://github.com/BlazeUp-AI/Observal/commit/22a4f2b5994d3ca96a35b212d0d7f8467784425b))
121
- - add rate limit of 300/minute per client IP (**ingest**) ([cd66b15](https://github.com/BlazeUp-AI/Observal/commit/cd66b152b3f2b7e2ad7e2a3a1cf00981482dc078))
122
- - skip ContentType depth check on ingest/telemetry (**middleware**) ([22acc2b](https://github.com/BlazeUp-AI/Observal/commit/22acc2bff68c083c6175c8a49ba093109707066a))
123
- - remove GZipMiddleware, nginx handles compression (**middleware**) ([0d68724](https://github.com/BlazeUp-AI/Observal/commit/0d68724b846781aea78eba30d82a17040f2f94c8))
124
- - remove _invalidate_cache from hot-path inserts (**cache**) ([8314cca](https://github.com/BlazeUp-AI/Observal/commit/8314cca002410e7a5300f30ff5ef65d2d9ad3c40))
125
- - reduce session detail polling to 5s fallback (**frontend**) ([cd0a61c](https://github.com/BlazeUp-AI/Observal/commit/cd0a61c64717e37b0cf815898a784988ecab4704))
126
- - increase max_jobs from 5 to 15 (**worker**) ([9504a75](https://github.com/BlazeUp-AI/Observal/commit/9504a75e05b25a743d77116df87019577bf505a6))
127
- - add uvicorn workers for multi-core throughput (**docker**) ([8c7181d](https://github.com/BlazeUp-AI/Observal/commit/8c7181dbe1955f4c3dc1c0a3fd1d733435aa8c30))
128
- - increase connection pool sizes for 500+ concurrent users (**scale**) ([c28d325](https://github.com/BlazeUp-AI/Observal/commit/c28d3255193a1b5f9f5fe566108a33df772cad0a))
129
- - set keepalive connections equal to max connections (**clickhouse**) ([8ffb7ee](https://github.com/BlazeUp-AI/Observal/commit/8ffb7eee53d75e0246cdfe5b82f123bc571326cf))
130
- - add upstream keepalive and WebSocket timeout (**nginx**) ([6465c6e](https://github.com/BlazeUp-AI/Observal/commit/6465c6ef88832639bb0b358c9ed6bd4dfe5967ff))
131
- - fire-and-forget Redis publish on session ingest (**ingest**) ([cf502c4](https://github.com/BlazeUp-AI/Observal/commit/cf502c4e5e984589b1ab33e049a6ab4cdead69fa))
132
- - use session-specific channels for targeted fan-out (**pubsub**) ([bc615fe](https://github.com/BlazeUp-AI/Observal/commit/bc615fe5ded1eafc111edb8febdffe9b38eb9d54))
133
- - use OrderedDict for O(1) LRU eviction in registry cache (**cache**) ([c1fa3fd](https://github.com/BlazeUp-AI/Observal/commit/c1fa3fd3d31a737022be50080aaec9a3ca17bbd7))
134
- - add partition-independent FINAL optimization (**dashboard**) ([c8f09ad](https://github.com/BlazeUp-AI/Observal/commit/c8f09ad6b71ec9c4daee1fc6929a573ce6899412))
135
- - parallelize ClickHouse queries with asyncio.gather (**dashboard**) ([dcb03fd](https://github.com/BlazeUp-AI/Observal/commit/dcb03fdfa4c42913c921c3ee4b8fe65edde83158))
136
- - pipeline 3 Redis checks into 1 round-trip (**auth**) ([9a777fd](https://github.com/BlazeUp-AI/Observal/commit/9a777fd6e051f3b8213924208059c7e7e783812d))
137
- - publish sessions:updated on successful session ingest (**ingest**) ([f6e8450](https://github.com/BlazeUp-AI/Observal/commit/f6e84505138dc382840fd02b4acc5747dc6d0765))
138
-
139
184
  ### Testing
140
185
 
141
186
  - update agent listing tests for auth requirement ([f74a674](https://github.com/BlazeUp-AI/Observal/commit/f74a674337a827c978c9d40e45b78bcf0396b04f))
@@ -610,78 +655,6 @@ All notable changes to this project will be documented in this file.
610
655
  - JSON paste as default MCP submit/edit with shared parser (**UI**) ([55daede](https://github.com/BlazeUp-AI/Observal/commit/55daede837428239afdc88fe7fb67adebbc0247a))
611
656
  - make JSON paste the default MCP submission method (**cli**) ([ff9e3de](https://github.com/BlazeUp-AI/Observal/commit/ff9e3de8716ac129f3e3d573d899fab036ebff8f))
612
657
  - add backend integration tests against real DB ([7e1e8ee](https://github.com/BlazeUp-AI/Observal/commit/7e1e8eee215aeb02ad1eb1c29339ddf1ff049cb8))
613
-
614
- ### CI
615
-
616
- - add workflow for backend integration tests ([ba4e741](https://github.com/BlazeUp-AI/Observal/commit/ba4e741feaf813f27eec071c7720ac9451f90866))
617
-
618
- ### Documentation
619
-
620
- - update quick start with curl-install and move license to bottom ([d1b4dfa](https://github.com/BlazeUp-AI/Observal/commit/d1b4dfa2f07f645111086d5b957d9b8ed3e1a9d3))
621
-
622
- ### Fixed
623
-
624
- - correct sentinel timestamp causing broken duration/started columns (**traces**) ([56733af](https://github.com/BlazeUp-AI/Observal/commit/56733af5d0ed0361eea48baa7273158625c521e1))
625
- - stub page and hide from sidebar pending rework (**errors**) ([7ccf37b](https://github.com/BlazeUp-AI/Observal/commit/7ccf37b57d84e05a2efac59cf9b52d99345f142d))
626
- - replace import-based detection with INSIGHTS_AVAILABLE env flag (**insights**) ([d822993](https://github.com/BlazeUp-AI/Observal/commit/d82299371690c6cec3d214cbef09da6fb14fbc34))
627
- - resolve pre-commit and pre-push hook failures ([236f9c1](https://github.com/BlazeUp-AI/Observal/commit/236f9c1081d337fd7b5a2de16d6d74ecbbbefea8))
628
- - wire token counts and correct duration in session list ([7719683](https://github.com/BlazeUp-AI/Observal/commit/7719683887a0d2573ee0783f46a9b3860671f1c1))
629
- - use sessionStorage for access token in loginToWebUI helper (**e2e**) ([4d39d12](https://github.com/BlazeUp-AI/Observal/commit/4d39d12148611f478ba7108ee76e9487bbe98588))
630
- - replace nonexistent observal-hook.sh with session_push.py (**hooks**) ([77014e6](https://github.com/BlazeUp-AI/Observal/commit/77014e61ddf3207400ed1305bd5e88b2ace5a1e3))
631
- - stop enterprise compose file from overriding DEPLOYMENT_MODE ([08e317d](https://github.com/BlazeUp-AI/Observal/commit/08e317d00bb73c6166faaf754b5bae5050e890bc))
632
- - login page respects ?next= param after authentication ([0acca4b](https://github.com/BlazeUp-AI/Observal/commit/0acca4b2aef48136b845d240b1015d7c8f3d995c))
633
- - migrate JWT signing from HS256 to ES256 (**security**) ([e562524](https://github.com/BlazeUp-AI/Observal/commit/e56252495d9e6297ca29dfc3064032ad77f0d93d))
634
- - user-level token revocation and Redis fail-closed auth (**security**) ([899fa0c](https://github.com/BlazeUp-AI/Observal/commit/899fa0c910086f93754c8e69dac4f098ef4c476a))
635
- - update remaining localStorage reads to sessionStorage for access token ([71feea2](https://github.com/BlazeUp-AI/Observal/commit/71feea2e2ff2fe3f082dd9060088792f39760d31))
636
- - enforce org ownership on component source routes (**security**) ([2f9dbcb](https://github.com/BlazeUp-AI/Observal/commit/2f9dbcb97c7c50e7bf51b0fa819b1a1334c01323))
637
- - scope admin dashboard and telemetry queries to requesting user's org (**security**) ([afe13b1](https://github.com/BlazeUp-AI/Observal/commit/afe13b16a3760c851fe24aeb9b7cd8e951e67c5d))
638
- - private agents not visible to anonymous callers in local mode (**security**) ([78d465f](https://github.com/BlazeUp-AI/Observal/commit/78d465f52c0dc2c137628de0497301af14b9f7b9))
639
- - scope private registry listings to owner org (**security**) ([af993b0](https://github.com/BlazeUp-AI/Observal/commit/af993b04dca6db3fe8e60b21165bdf10e5dc1021))
640
- - require authentication on GraphQL telemetry endpoint (**security**) ([ed65c9e](https://github.com/BlazeUp-AI/Observal/commit/ed65c9eda6d4dbe188747123f4a6b78354c1c72c))
641
- - block startup with weak SECRET_KEY, warn on insecure defaults in settings (**security**) ([a22ec35](https://github.com/BlazeUp-AI/Observal/commit/a22ec35d325082bb1966d6f367624003448515f6))
642
- - enforce password strength on account creation and change (OBSV-SEC-006) (**security**) ([cc65f9f](https://github.com/BlazeUp-AI/Observal/commit/cc65f9f0f33e73664672c61820071b96b256da71))
643
- - add 'unsafe-inline' to CSP script-src for Next.js hydration ([15dcaf8](https://github.com/BlazeUp-AI/Observal/commit/15dcaf8e183c7c4a5d68523864c6d23ec1c3082f))
644
- - hide OpenAPI docs and metrics endpoints by default (OBSV-SEC-015) (**security**) ([c338b88](https://github.com/BlazeUp-AI/Observal/commit/c338b88f8e43cbdc91de07f846f06710496d3c80))
645
- - require approved status for agent install, validate MCP commands (OBSV-SEC-027) (**security**) ([5b6a3a0](https://github.com/BlazeUp-AI/Observal/commit/5b6a3a0852c277dc5eeb9dc4838203b2e40a9247))
646
- - block password lifecycle routes in SSO-only mode (OBSV-SEC-028) (**security**) ([298cc09](https://github.com/BlazeUp-AI/Observal/commit/298cc090c60a11bd9a97f5b1b9428760f51e2265))
647
- - rate limiting only trusts XFF from configured trusted proxies (OBSV-SEC-003) (**security**) ([1b9f087](https://github.com/BlazeUp-AI/Observal/commit/1b9f08741256a98dca7499a3ca3fad1e79b750c9))
648
- - address PR review feedback ([007e05c](https://github.com/BlazeUp-AI/Observal/commit/007e05cc626c46c8bd0d16542487d5635178eca4))
649
- - add SPDX header and suppress bandit false positive (**ci**) ([a2efe47](https://github.com/BlazeUp-AI/Observal/commit/a2efe476cb1b8f837f10a7ac03ac4b543657da41))
650
- - renumber insight migration 0004 -> 0005 (**alembic**) ([050a8c2](https://github.com/BlazeUp-AI/Observal/commit/050a8c24ee63c3b5e8b80088bb13287fafcd4dc2))
651
- - CSP middleware and access token in sessionStorage (OBSV-SEC-025) (**security**) ([1040029](https://github.com/BlazeUp-AI/Observal/commit/10400295015f6a398e60901bb98bf2e7d34dbaa4))
652
- - harden EC2 bootstrap script (OBSV-SEC-020) (**security**) ([d230bf0](https://github.com/BlazeUp-AI/Observal/commit/d230bf081b281be00e506d1c0629d47369968915))
653
- - block operational paths at ALB by default (OBSV-SEC-018) (**security**) ([0b35ccf](https://github.com/BlazeUp-AI/Observal/commit/0b35ccfae02fbc7b94dc4a0c30a6411e2b92b455))
654
- - block operational metadata paths in nginx (OBSV-SEC-017) (**security**) ([4a430ab](https://github.com/BlazeUp-AI/Observal/commit/4a430ab80e2a0f24b228b6636d95a3dce70b7baf))
655
- - centralise SSRF guard for webhooks, git clone, MCP analysis (OBSV-SEC-012/013/014) (**security**) ([b78dc96](https://github.com/BlazeUp-AI/Observal/commit/b78dc96b4fc11b0260445c82081567497c87100a))
656
- - allow MCP config fields in version extras validation (**api**) ([831a0d1](https://github.com/BlazeUp-AI/Observal/commit/831a0d14624545a14dbb2bc4bc9b6686f8039662))
657
- - emit JSON-RPC error notification on MCP startup failure (**shim**) ([4b64b5e](https://github.com/BlazeUp-AI/Observal/commit/4b64b5e18eff18627f24049657fec040ddea757c))
658
- - bind stateful services to loopback in Docker Compose (OBSV-SEC-016) (**security**) ([6dbcfac](https://github.com/BlazeUp-AI/Observal/commit/6dbcfac2ad69af80ec69e3c4ea32c9ee0d69c694))
659
- - include auth identity in cache key to prevent cross-user hits (OBSV-SEC-023) (**security**) ([cd3acf6](https://github.com/BlazeUp-AI/Observal/commit/cd3acf6a8e131f9e9f5fb06d213ce0adf6e8c5b6))
660
- - redact secrets from support log collector output (OBSV-SEC-022) (**security**) ([7a27288](https://github.com/BlazeUp-AI/Observal/commit/7a27288102be0fe34be25418d4329257467f8abc))
661
- - redact secrets before sending content to LLM providers (OBSV-SEC-021) (**security**) ([19ac039](https://github.com/BlazeUp-AI/Observal/commit/19ac0397d2c222ab760329b01eefdddac6c712c2))
662
- - require auth on telemetry reconcile endpoint (OBSV-SEC-011) (**security**) ([9f275df](https://github.com/BlazeUp-AI/Observal/commit/9f275df2cc66224b2560e26fa4b5ab5972f3adab))
663
- - restrict support diagnostics to admin role (OBSV-SEC-008) (**security**) ([4ed0883](https://github.com/BlazeUp-AI/Observal/commit/4ed08833c822aad9c97c6a1e5a2349328f73effd))
664
- - apply execution time floor to every ClickHouse query (OBSV-SEC-026) (**security**) ([b1d80bd](https://github.com/BlazeUp-AI/Observal/commit/b1d80bd657b16f1a80850380d2168e20ec910d37))
665
- - validate session IDs before SQL interpolation in shim enrichment (**security**) ([66ca3d0](https://github.com/BlazeUp-AI/Observal/commit/66ca3d02439e845d028d59c4e7d5d5799babed6d))
666
- - use FINAL instead of GROUP BY for session_stats_agg (**server**) ([ce8069b](https://github.com/BlazeUp-AI/Observal/commit/ce8069bea89238b2471e6018c1dbe13fa0aece65))
667
- - default to ~/.observal on macOS for Docker compatibility (**deploy**) ([119aed3](https://github.com/BlazeUp-AI/Observal/commit/119aed3127ee4847ce146785816386656feb87ee))
668
- - add OBSERVAL_FORCE=1 to skip overwrite prompt (**deploy**) ([9910a94](https://github.com/BlazeUp-AI/Observal/commit/9910a94a353a2ecdf654f6842cb5478eb5d99563))
669
- - read from /dev/tty so curl|bash works interactively (**deploy**) ([4bc203b](https://github.com/BlazeUp-AI/Observal/commit/4bc203bbaf4b0b16f46078700e0783098ae2b103))
670
-
671
- ### Other
672
-
673
- - remove hardcoded dev paths and stale internal docs ([6f39743](https://github.com/BlazeUp-AI/Observal/commit/6f39743cc3c2d6cec4c54be833a3410a6334b957))
674
- - ignore pi-lens cache directories ([b8d84e2](https://github.com/BlazeUp-AI/Observal/commit/b8d84e2d39a0f6daa0c2b6cca32d7814d293ec07))
675
- - update dependency authlib to v1.7.1 [security] (#923) (**deps**) ([6a00ce3](https://github.com/BlazeUp-AI/Observal/commit/6a00ce3e33f89ffdc05d42d2a563ef0633ac761e))
676
- - ignore and untrack Terraform plan files (OBSV-SEC-019) (**security**) ([c4873d4](https://github.com/BlazeUp-AI/Observal/commit/c4873d4469a5efdc6db470a82f156fec4763fa4c))
677
-
678
- ### Testing
679
-
680
- - add coverage for MCP config parser, shim errors, and edit/submit ([8896814](https://github.com/BlazeUp-AI/Observal/commit/889681403a06bca72120a7e4869b337f4d2b5f51))
681
- ## [0.5.0] - 2026-05-13
682
-
683
- ### Added
684
-
685
658
  - slim curl-install to use pre-built images only (**deploy**) ([630a19f](https://github.com/BlazeUp-AI/Observal/commit/630a19f0752d0560e916e6376fb6751f085362a4))
686
659
  - add browser-level Playwright e2e tests for 4 UI flows ([28f0274](https://github.com/BlazeUp-AI/Observal/commit/28f0274c8a6611cca9d12bbba02c0c7c2de96285))
687
660
  - user profile picture is configurable (**UI**) ([442bc7c](https://github.com/BlazeUp-AI/Observal/commit/442bc7ce16c1869d936c2ed590bb008bd76ec7a9))
@@ -765,376 +738,14 @@ All notable changes to this project will be documented in this file.
765
738
  - add AgentVersion table and restructure Agent to identity-only (**db**) ([93b4a70](https://github.com/BlazeUp-AI/Observal/commit/93b4a70e4d8c199ded7a1b2f0e476ddc2f4ca42a))
766
739
  - add component version tables for all 5 types (**db**) ([3dab14b](https://github.com/BlazeUp-AI/Observal/commit/3dab14b8453a5bf69e42b47e3ed27cd483a55f89))
767
740
  - implement agent registry RBAC (**server**) ([196a040](https://github.com/BlazeUp-AI/Observal/commit/196a0407d8e83e46b4d13353beb692feb58117c4))
768
-
769
- ### CI
770
-
771
- - add deploy-dev workflow for main branch auto-deploy ([40f2203](https://github.com/BlazeUp-AI/Observal/commit/40f22031befc48c38ec3af8c6886ead52ac61cca))
772
- - add deploy-dev workflow for main branch auto-deploy ([4393ce0](https://github.com/BlazeUp-AI/Observal/commit/4393ce0fcfd3a2832fcb9f5dbebd7cb3b9e3a893))
773
- - trigger on release tags only, not push to main (**deploy**) ([83cbf33](https://github.com/BlazeUp-AI/Observal/commit/83cbf3367b3426cd08d615af693191a7c3a6ae1e))
774
- - add stale issue/PR workflow with keep open exemption ([b3f8433](https://github.com/BlazeUp-AI/Observal/commit/b3f8433750f8f5292ea448b8b41fb5b8eef262ba))
775
-
776
- ### Changed
777
-
778
- - derive org columns and NOT NULL defaults from schema, improve warnings ([5380a65](https://github.com/BlazeUp-AI/Observal/commit/5380a650744196d1eba88e93b700eb03a6b6c9d9))
779
- - address review feedback on migrate import ([1fa852e](https://github.com/BlazeUp-AI/Observal/commit/1fa852e9e82994d796b35bc3c8003801c8f30289))
780
- - redesign HTML report with warm, refined color scheme (**insights**) ([894e327](https://github.com/BlazeUp-AI/Observal/commit/894e327939d3e36807605ba2b2ca3df7ec01e61d))
781
- - remove triplicated display logic from CLI and frontend ([b5ab0be](https://github.com/BlazeUp-AI/Observal/commit/b5ab0be6d63a83de5e06c1c89174d950b41b0fbd))
782
- - move extra_ingest_rows into kiro.py (**ingest**) ([f0e7540](https://github.com/BlazeUp-AI/Observal/commit/f0e754078fcf951c4ad45514d8396dd26811529f))
783
- - move Kiro credits logic to ingest_classify.py (**ingest**) ([054fbf1](https://github.com/BlazeUp-AI/Observal/commit/054fbf1abc1fd1d83ca45718826d58044ac008ca))
784
- - ruff format hook_event resolution (**kiro**) ([723ec55](https://github.com/BlazeUp-AI/Observal/commit/723ec55782d66e6827f413213cef0f4db15ae3d7))
785
- - replace enrichment-heavy route with clean Harness version (**reconcile**) ([95d34e0](https://github.com/BlazeUp-AI/Observal/commit/95d34e0311b16edc25581aeb7c572e22d894ea6b))
786
- - remove CLI commands, keep crash recovery library (**reconcile**) ([5103982](https://github.com/BlazeUp-AI/Observal/commit/5103982496d42ac0782816c071c3dd170c4c5023))
787
- - remove legacy hook pipeline, keep shim and buffer (**telemetry**) ([40a5be4](https://github.com/BlazeUp-AI/Observal/commit/40a5be4d63a796dc02ddb49221370ed4d4e424a7))
788
- - rewrite queries to use session_events table (**sessions**) ([437cf58](https://github.com/BlazeUp-AI/Observal/commit/437cf5873da924b1c9b8d193aa14f32a56c5329a))
789
- - strip shim/OTEL logic, keep only session push hooks (**doctor**) ([883b95a](https://github.com/BlazeUp-AI/Observal/commit/883b95aee1b364f9f361543eda6f7fb4fca3ad8a))
790
- - squash all 28 migrations into single baseline (**migrations**) ([1c5abdd](https://github.com/BlazeUp-AI/Observal/commit/1c5abdd04e7bfea798026f54391d984bce0f1a8f))
791
- - ruff format agent.py ([4ef21c3](https://github.com/BlazeUp-AI/Observal/commit/4ef21c345ae13302cf66530a6e8ca5a2a63c6cf3))
792
- - ruff format api route files ([b003bbe](https://github.com/BlazeUp-AI/Observal/commit/b003bbe0eb66dbf225348834e0a8f65a04a217ce))
793
- - ruff format component_version_extras and component_versions ([af394b6](https://github.com/BlazeUp-AI/Observal/commit/af394b685ff123900710bed6c98f3d177acd24a6))
794
-
795
- ### Documentation
796
-
797
- - fix support bundle docs to match implementation ([5ace152](https://github.com/BlazeUp-AI/Observal/commit/5ace1528505828edd2b5d75116fe1c6222d33996))
798
- - add CLI reference for support bundle commands ([59c661e](https://github.com/BlazeUp-AI/Observal/commit/59c661e206b75acac76d2fde576606e97ee45081))
799
- - move AnkiDroid callout before ToC and expand attribution note ([0c890be](https://github.com/BlazeUp-AI/Observal/commit/0c890be4f1f419b0c21e69f22a711f48a9a69e70))
800
- - add CLA and update CONTRIBUTING.md ([b9e7ae8](https://github.com/BlazeUp-AI/Observal/commit/b9e7ae8934a98f3157d88b842ee8671f4eaf20aa))
801
- - update docs link, CLI examples, and fix self-hosting diagram ([c9dcb78](https://github.com/BlazeUp-AI/Observal/commit/c9dcb78526a80032b29e37e3e74d747d8c856992))
802
- - add CLI reference for observal migrate commands ([ad9c1c2](https://github.com/BlazeUp-AI/Observal/commit/ad9c1c2f4a3f2efa9f85d11e555314ff9c31e440))
803
- - overhaul README, SETUP, AGENTS, add screenshots, drop e2e artifacts ([ca435f5](https://github.com/BlazeUp-AI/Observal/commit/ca435f5df8eb061899c2c4c31727a2bc1e25bb5a))
804
- - add Insights V2 roadmap tracking progress across 5 phases ([fe037d5](https://github.com/BlazeUp-AI/Observal/commit/fe037d5c616e7215a135aa2fe4d148e2b93ab6a1))
805
- - update AGENTS.md with new routes, services, and components ([dc5f1aa](https://github.com/BlazeUp-AI/Observal/commit/dc5f1aa1a48cc705d18b91e3159bc2a3de2be7a2))
806
- - update e2e checklist with versioning, editing, and trace toggle tests ([c72c9d3](https://github.com/BlazeUp-AI/Observal/commit/c72c9d31312f70d70970611c8bc86e6c25f81479))
807
- - add screenshots for agent edit form PR ([7860394](https://github.com/BlazeUp-AI/Observal/commit/786039462ee8ffa626c461040e2066967869df6b))
808
-
809
- ### Fixed
810
-
811
- - preserve SPDX headers in generated changelog (**compliance**) ([636a359](https://github.com/BlazeUp-AI/Observal/commit/636a359b3fafb4d4cd17223f3bc8220937f10a1d))
812
- - improve setup.sh post-install output (**deploy**) ([6884923](https://github.com/BlazeUp-AI/Observal/commit/6884923078e1647b0f12735f2e43b291c41c8270))
813
- - add SPDX copyright headers to support.md (**compliance**) ([6c358bd](https://github.com/BlazeUp-AI/Observal/commit/6c358bdb58654f9f8b179fa27ffed8e062e79fe0))
814
- - resolve CircularDependencyError in review approve endpoint ([a17b435](https://github.com/BlazeUp-AI/Observal/commit/a17b435a5aa42a08da8681747e3da47f1ef0deb6))
815
- - wrap SPDX string in REUSE-Ignore to fix reuse-lint (**ci**) ([cef600f](https://github.com/BlazeUp-AI/Observal/commit/cef600ffaec97a10b82ca22bbcb3faa13a513d26))
816
- - move coverage config to observal-server/pyproject.toml (**ci**) ([9ef4f1c](https://github.com/BlazeUp-AI/Observal/commit/9ef4f1cf985c21c17b86c57c30209ec512732b9e))
817
- - add version tables to INSERT_ORDER and disable FK checks during import ([9943142](https://github.com/BlazeUp-AI/Observal/commit/9943142224970e0b196c2b3c1c77b36070faab91))
818
- - remove unused import and fix license-policy formatting (**ci**) ([b76831d](https://github.com/BlazeUp-AI/Observal/commit/b76831dbccf075d29f2682cb86a9e569066e36e5))
819
- - replace magic values with named constants in deps.py (**lint**) ([f7ff034](https://github.com/BlazeUp-AI/Observal/commit/f7ff0349ad726a221702218271c43837ff2537f5))
820
- - resolve SimpleAggregateFunction query errors in session_stats_agg (**clickhouse**) ([b6bdd99](https://github.com/BlazeUp-AI/Observal/commit/b6bdd99fc907157ea1841c368996de3087f71ddf))
821
- - update postgres volume mount for v18 compatibility (**docker**) ([93c0600](https://github.com/BlazeUp-AI/Observal/commit/93c060078f3eb3234b21d24278f807ce9619a2ff))
822
- - trigger EC2 deploy on push to main instead of tags (**deploy**) ([6cda8b1](https://github.com/BlazeUp-AI/Observal/commit/6cda8b18250a3b8eb719c2f64d73a847f19fc2da))
823
- - trigger EC2 deploy on push to main instead of tags (**deploy**) ([cb7bae4](https://github.com/BlazeUp-AI/Observal/commit/cb7bae4963ea3b3654417c62f666447225213679))
824
- - replace all Apache 2.0 references with AGPL-3.0 ([66abe34](https://github.com/BlazeUp-AI/Observal/commit/66abe34ddb19d779eeb75174aa7038192f60105b))
825
- - update redis image assertion to 8-alpine (**tests**) ([7da9551](https://github.com/BlazeUp-AI/Observal/commit/7da955197387f74d2fbedc3fcdf57f24c844eabc))
826
- - capture post-Stop tail lines via delayed flush subprocess (**cli**) ([357fdee](https://github.com/BlazeUp-AI/Observal/commit/357fdeeb356784242097f95b6b3713cf4d99f64c))
827
- - exclude subagent sessions from top-level list (**sessions**) ([ac0052c](https://github.com/BlazeUp-AI/Observal/commit/ac0052c8d3b54ed4b90bee2ab7d823eace3469f3))
828
- - auto-refresh expired tokens in session_push hook (**cli**) ([6ba62cd](https://github.com/BlazeUp-AI/Observal/commit/6ba62cdb6e214166c9b86fa7d9c6e727beae23a7))
829
- - resolve ClickHouse ILLEGAL_AGGREGATION in session query (**insights**) ([d9e72aa](https://github.com/BlazeUp-AI/Observal/commit/d9e72aa466684fde340e0dfa50c9dfa974ea0fec))
830
- - ruff fixes in ee/observal_insights (**lint**) ([39da878](https://github.com/BlazeUp-AI/Observal/commit/39da8782b4f5f3ed3b03f68ad51be65118ee1825))
831
- - use cursor offset not ctime for pulled_at guard (**attribution**) ([afcfccc](https://github.com/BlazeUp-AI/Observal/commit/afcfcccce06c29469780b4e1b2d5b52c890a7964))
832
- - remove unused imports, use datetime.UTC alias (**lint**) ([05db9db](https://github.com/BlazeUp-AI/Observal/commit/05db9db96e228bb73fbbcc3658c89f8b1603a10c))
833
- - renumber meta_cache migration to 0003 (**migration**) ([2dd2e2a](https://github.com/BlazeUp-AI/Observal/commit/2dd2e2a182b4d22987d7ca1c89c5e4e736db0459))
834
- - prevent session leak via pulled_at timestamp (**attribution**) ([77e7ce8](https://github.com/BlazeUp-AI/Observal/commit/77e7ce89569f0872e73e86932acab824b9c483e3))
835
- - update web frontend (minor/patch) (#779) (**deps**) ([a9b3722](https://github.com/BlazeUp-AI/Observal/commit/a9b37224e053836b86bf8f480b429f0e782ec5f3))
836
- - include per-IDE model overrides in agent snapshot and pull flow ([a048910](https://github.com/BlazeUp-AI/Observal/commit/a048910ee18d8998b68e2a19e4db321e91a7628a))
837
- - use 2099 sentinel timestamp for kiro_credits row (**kiro**) ([5804c15](https://github.com/BlazeUp-AI/Observal/commit/5804c1500250771cbf793d757a3d6be075c88e57))
838
- - proper Callable type for _EXTRA_ROWS_HANDLERS (**types**) ([959ca3b](https://github.com/BlazeUp-AI/Observal/commit/959ca3be3789dc0a2293c27a6f9d6fbdefa7edbd))
839
- - store credits even when Stop has no new JSONL lines (**kiro**) ([b9d8284](https://github.com/BlazeUp-AI/Observal/commit/b9d8284bc6edd3636bfd8d5117ba7822028db949))
840
- - fix credits not being sent on Stop hook (**kiro**) ([75597f0](https://github.com/BlazeUp-AI/Observal/commit/75597f0af0ccb0003a7bc94ea50f37b216f1bf1a))
841
- - remove stale CLI usage docstring (**reconcile**) ([27bbd66](https://github.com/BlazeUp-AI/Observal/commit/27bbd66d9734a2cab66fefd777cdcfa424505b33))
842
- - restore --hook/--shim/--all flags and shim helpers (**doctor**) ([fdfc0b8](https://github.com/BlazeUp-AI/Observal/commit/fdfc0b89738486f475275c040453772890a3874e))
843
- - replace --all with --hook in doctor patch calls (**auth**) ([3ba67dd](https://github.com/BlazeUp-AI/Observal/commit/3ba67dde79e44f5b2a69c063a162bd978299fab2))
844
- - fix ruff unused imports, remove stale telemetry tests (**lint+tests**) ([34e4b16](https://github.com/BlazeUp-AI/Observal/commit/34e4b1617c1c49cf9c1dad92666c4659d394f723))
845
- - remove Active Hooks section + sentinel-safe stats (**traces**) ([f1341ff](https://github.com/BlazeUp-AI/Observal/commit/f1341ff0ef83463c6e9de8c33b01c00df485ac02))
846
- - sentinel-safe first timestamp in trace title/breadcrumb (**ui**) ([1067087](https://github.com/BlazeUp-AI/Observal/commit/10670878041545087a3bd380adcc3174b2256456))
847
- - filter kiro_credits events + unify token accumulation (**traces**) ([5f0fc42](https://github.com/BlazeUp-AI/Observal/commit/5f0fc427dd612c9c520f8fa7a6a2ef670e6cec5a))
848
- - add session_parser key to CLI ide_registry mirror (**ingest**) ([e07a4ba](https://github.com/BlazeUp-AI/Observal/commit/e07a4ba93abcec5bb4b7050f05ab2c39f34405c6))
849
- - apply ruff formatting to hook submit (**cli**) ([ebe53f1](https://github.com/BlazeUp-AI/Observal/commit/ebe53f108b097d703bcb8487049bc38ee009df33))
850
- - handle invalid JSON in `hook submit` handler config prompt (**cli**) ([7b2469e](https://github.com/BlazeUp-AI/Observal/commit/7b2469eb2b8c5f88ad38c3944f8165762682576e))
851
- - auto-populate Owner field in all submit forms (**registry**) ([1700c63](https://github.com/BlazeUp-AI/Observal/commit/1700c63f3790c9229954a2a95af488508c21057c))
852
- - display rate limit error properly on login page (**web**) ([c632ad6](https://github.com/BlazeUp-AI/Observal/commit/c632ad67ba7db05c7342dfdf786adb7ce9f71e3c))
853
- - remove session ID from all user-facing views (**ui**) ([38ab52b](https://github.com/BlazeUp-AI/Observal/commit/38ab52bd8cba0b1445837955d73e7eea00a9af87))
854
- - full screen utilization and flex wrap issues (**insights**) ([caae785](https://github.com/BlazeUp-AI/Observal/commit/caae7858ae042d6e4f1e51b906804f335d7c368b))
855
- - remove dead metrics endpoints and legacy telemetry tables (**dashboard**) ([27cb6a8](https://github.com/BlazeUp-AI/Observal/commit/27cb6a8bd6793220278427d2da4ba496ae52e081))
856
- - pin pnpm@10 to fix ERR_PNPM_IGNORED_BUILDS in CI (**docker**) ([2313e19](https://github.com/BlazeUp-AI/Observal/commit/2313e19565a1d48bf191a7282f4eba3c0261183d))
857
- - resolve lint, import-boundary, and docker-build failures (**ci**) ([1850779](https://github.com/BlazeUp-AI/Observal/commit/1850779482589b1debe4c180b166a2fef0bc1af4))
858
- - align session_cache and facets with actual DB schema (**insights**) ([eeef3fa](https://github.com/BlazeUp-AI/Observal/commit/eeef3faa1ed86d6aa43f99ab4a0e8a3ce5dfc86c))
859
- - add TTL retention for system logs to prevent OOM (**clickhouse**) ([2224992](https://github.com/BlazeUp-AI/Observal/commit/22249920659e416b91a854283b5fc7bf89bd08e8))
860
- - docs & add bootstrap ([5feb50e](https://github.com/BlazeUp-AI/Observal/commit/5feb50e225d575a388efea49f70f0661ca7f0a31))
861
- - remove unused locals flagged by tflint (**infra**) ([11239fa](https://github.com/BlazeUp-AI/Observal/commit/11239fa7c377a65d0a8cc4ba695364334f189821))
862
- - resolve lint, format, and test failures (**ci**) ([dc0a89e](https://github.com/BlazeUp-AI/Observal/commit/dc0a89ed3e5e9c642a951b8a2c5360fc13256d45))
863
- - restore trace_dedup module needed for session detail view (**sessions**) ([28095bc](https://github.com/BlazeUp-AI/Observal/commit/28095bcfa6b4db739aa2ac800410be491b56dad2))
864
- - call configure_insights() on worker startup (**worker**) ([8a59c3d](https://github.com/BlazeUp-AI/Observal/commit/8a59c3d189e84ace7eeaf1c5e8268558627b0315))
865
- - strip insights source post-install instead of pre-build (**docker**) ([b47578b](https://github.com/BlazeUp-AI/Observal/commit/b47578b1db05d5b42747591d73ee162e4e0a176b))
866
- - sum credits in sessions list instead of picking arbitrary value ([8df012d](https://github.com/BlazeUp-AI/Observal/commit/8df012d0786672a91788645f5d4ba9c87ce12fb3))
867
- - read credits from Kiro session files instead of SQLite ([fbd6678](https://github.com/BlazeUp-AI/Observal/commit/fbd6678bfff0d2bb32f2a9e809fbfe50e47a8a34))
868
- - use absolute Python path in Kiro hook commands ([38ef120](https://github.com/BlazeUp-AI/Observal/commit/38ef1202ac4500cff0475b4df0b2f6ccda57a8ea))
869
- - show prompt count fallback and rewrite hook python paths (**kiro**) ([e32c48e](https://github.com/BlazeUp-AI/Observal/commit/e32c48e4227ef08757c1d4e58250eba732cdeadb))
870
- - persist session_id between Kiro hooks and add debug logging (**hooks**) ([f9c1c28](https://github.com/BlazeUp-AI/Observal/commit/f9c1c284e1a5b5c7c1ba5ff75781cbb84c09fdc9))
871
- - allow super_admin to manage agents regardless of org_id (**agents**) ([0be9d76](https://github.com/BlazeUp-AI/Observal/commit/0be9d76196fe20d2693790654e935081191f4ec6))
872
- - set owner_org_id and public visibility on bulk-create (**agents**) ([29222c9](https://github.com/BlazeUp-AI/Observal/commit/29222c9b96d75649948a958a14dc3e85888b6eb4))
873
- - correct setup steps — use doctor patch, remove local server section (**docs**) ([9de5581](https://github.com/BlazeUp-AI/Observal/commit/9de55819751e3169dc26ab99463a393d4c1c0182))
874
- - use short summary in skill file YAML frontmatter (**skills**) ([3819631](https://github.com/BlazeUp-AI/Observal/commit/38196310bcde75ec22d7f18c2432327f0bab02a6))
875
- - remove AWS env var overrides that clobber .env credentials (**docker**) ([17f3fbb](https://github.com/BlazeUp-AI/Observal/commit/17f3fbb01178f0e0006ce07b7196c41346a31a87))
876
- - derive component downloads from agent installs (#736) (**leaderboard**) ([823dd77](https://github.com/BlazeUp-AI/Observal/commit/823dd77e0c4ba8586cc05d81a5226038da0cf12c))
877
- - hide notifications stub from account settings (**web**) ([2a11947](https://github.com/BlazeUp-AI/Observal/commit/2a119473220919bb9fa9558757bb160170bb44a3))
878
- - flush version changes before updating latest_version_id (**review**) ([0a7253d](https://github.com/BlazeUp-AI/Observal/commit/0a7253dc81fe2d31e5f000568fe5596f21726a40))
879
- - update web frontend (minor/patch) (#576) (**deps**) ([ce578e4](https://github.com/BlazeUp-AI/Observal/commit/ce578e410bb549f12f816316b205b3327d83a251))
880
- - use persistent SSL config so merges stop breaking HTTPS (**deploy**) ([9f50890](https://github.com/BlazeUp-AI/Observal/commit/9f5089049bde8e0ee2840edaf2246dd7eb393840))
881
- - version-aware component review queue, detail, and actions (**review**) ([a4aef71](https://github.com/BlazeUp-AI/Observal/commit/a4aef7174a9975b6a4ad6a726cab83ab86d298fa))
882
- - inject prompt component templates into generated rules files (**agent-install**) ([c5114b8](https://github.com/BlazeUp-AI/Observal/commit/c5114b8e5155173c5912622dbb05e96da28c6ff0))
883
- - only infer frontend URL behind TLS proxy, not local nginx (**api**) ([e82be65](https://github.com/BlazeUp-AI/Observal/commit/e82be65634c34e67ac5d13d31a3b26a983a8190f))
884
- - only owners and co-maintainers can edit their agents (**agent-edit**) ([45fbf1a](https://github.com/BlazeUp-AI/Observal/commit/45fbf1ab1e56e2afe0764ab0505617d4f36dd33d))
885
- - allow admins to release versions, save draft as new version (**agent-edit**) ([78d2878](https://github.com/BlazeUp-AI/Observal/commit/78d28789d4b2166199a6a07b9b0c207f310f6c0d))
886
- - derive device auth verification URL from request headers (**api**) ([2d7373a](https://github.com/BlazeUp-AI/Observal/commit/2d7373a2b9415887ea0a942fa1a6388dd1dbcb66))
887
- - fix empty component board, TS build, sandbox type (**leaderboard+feedback**) ([1c7a719](https://github.com/BlazeUp-AI/Observal/commit/1c7a71910cba612b6697b625049f72cf5432b89c))
888
- - remove f-string without placeholder, use ternary (**lint**) ([31c5898](https://github.com/BlazeUp-AI/Observal/commit/31c5898234519e9d7a6f6e9532f9f1c01996d299))
889
- - materialize hook components into Kiro agent configs (**hooks**) ([8d3508e](https://github.com/BlazeUp-AI/Observal/commit/8d3508e3585dcbe30dd073697f683e419a4b6799))
890
- - allow regular users to unarchive their own agents (**agents**) ([04adb4e](https://github.com/BlazeUp-AI/Observal/commit/04adb4e1d31e3833cc33ecea34ee6302fe11e9c6))
891
- - allow unarchive/delete to find non-approved agents (**agents**) ([4915a9c](https://github.com/BlazeUp-AI/Observal/commit/4915a9c1175ea1a4c23ac269019b831acd4252da))
892
- - write skill files to disk during agent pull (**cli**) ([f848842](https://github.com/BlazeUp-AI/Observal/commit/f84884288462d3c5319b5ecabad0023980f3b131))
893
- - grant same-org users view access to all org agents (**agents**) ([0c6e808](https://github.com/BlazeUp-AI/Observal/commit/0c6e808df9b58da305cf5a6b9a28f88d90212fb9))
894
- - allow same-org users to see all org agents (**agents**) ([43b5132](https://github.com/BlazeUp-AI/Observal/commit/43b51329e0a731e48f4068cbee0c582fffa24862))
895
- - wire hook components into agent config generation (**agents**) ([a738e39](https://github.com/BlazeUp-AI/Observal/commit/a738e39d0af6a3a5eb817e4d5c695bc15bb94b6c))
896
- - use posix paths for hook scripts on Windows (**cli**) ([13f5228](https://github.com/BlazeUp-AI/Observal/commit/13f5228f8de72ccf58aad80294e75a0591413ede))
897
- - rename "My Submissions" to "Drafts" on agents page (**web**) ([7b69959](https://github.com/BlazeUp-AI/Observal/commit/7b699599ac9c3d12e40ee52ba4e3fdd47b0625f6))
898
- - prevent archiving non-approved agents, show archived in my agents (**agents**) ([6fd60fd](https://github.com/BlazeUp-AI/Observal/commit/6fd60fdaafd0dfa54439de5fc2c60f823aeaa1b8))
899
- - allow null git_url in manifest export (**agents**) ([8c97332](https://github.com/BlazeUp-AI/Observal/commit/8c97332830ef9e94596705d631f6ad46a9a165b9))
900
- - exclude archived agents from pending review count (**web**) ([228f6ad](https://github.com/BlazeUp-AI/Observal/commit/228f6ad25aaef54a0dedb0573e0ee1f2608ba970))
901
- - resolve_listing status filter joins through version table (**registry**) ([8ad9f4d](https://github.com/BlazeUp-AI/Observal/commit/8ad9f4d810dfb50f8d643abd60a5b78fe8e66f19))
902
- - handle Unicode output on Windows cp1252 consoles (**cli**) ([05181f6](https://github.com/BlazeUp-AI/Observal/commit/05181f6d2176c28abbfb1c210dc0aa709108184a))
903
- - use explicit SQL update for archive/unarchive status (**agents**) ([198ad36](https://github.com/BlazeUp-AI/Observal/commit/198ad36cc0dcbe465d4d466c6dcb634fa4c02544))
904
- - default visibility to public in local deployment mode (**agents**) ([e380f2c](https://github.com/BlazeUp-AI/Observal/commit/e380f2c52a4e8591819d43ea5381674f905c9537))
905
- - resolve duplicate Alembic revision 0023 causing deploy failure (**db**) ([d99ec31](https://github.com/BlazeUp-AI/Observal/commit/d99ec31fca620e314b53af9888fb568444f25aac))
906
- - remove max-width constraint and add min-w-0 for flex scaling (**web**) ([b7c4ef3](https://github.com/BlazeUp-AI/Observal/commit/b7c4ef3c8131d3d061f314a0378226a121b35f59))
907
- - set edit-lock fields on agent mock to prevent TypeError (**tests**) ([22a2a93](https://github.com/BlazeUp-AI/Observal/commit/22a2a930d8ad8d678b3d79d172b5664a4581fc25))
908
- - harden edit lock concurrency and review correctness (**api,cli,web**) ([eb9cd6a](https://github.com/BlazeUp-AI/Observal/commit/eb9cd6a3512eee3cea1186aabb6fadd96fb5d57c))
909
- - resolve lint errors and test failures from edit lock feature (**api**) ([f335927](https://github.com/BlazeUp-AI/Observal/commit/f335927afec215098deccfbb462292fc3961d826))
910
- - harden edit lock, review approve/reject, and error handling (#663) (**api,web**) ([3b80fae](https://github.com/BlazeUp-AI/Observal/commit/3b80faeef04283c57852960ccd7e4a1ff691c5f2))
911
- - harden component version validation (**api**) ([3412812](https://github.com/BlazeUp-AI/Observal/commit/341281257781b666ac93c1f2cdaa96d2a4eca303))
912
- - update e2e assertions for new hook_bridge features and agent paths (**tests**) ([e0ff08e](https://github.com/BlazeUp-AI/Observal/commit/e0ff08ed6d671c75fd2f2a04fef6d489cf093668))
913
- - cache race condition, unbounded memory, and repeated HTTP calls ([4fc41f0](https://github.com/BlazeUp-AI/Observal/commit/4fc41f00861f240890dc0be9f941040b0375ccb8))
914
- - update copilot rules_file path assertion (**tests**) ([12a342a](https://github.com/BlazeUp-AI/Observal/commit/12a342abe64d37bdbe4b96b2d35f944be778e4a5))
915
- - resolve hook paths for all IDEs, not a hardcoded subset (**cli**) ([86a75ee](https://github.com/BlazeUp-AI/Observal/commit/86a75ee323f68cc6db3991d476efaa7524d883c2))
916
- - raise 401 for expired tokens in optional_current_user (**auth**) ([ed2862c](https://github.com/BlazeUp-AI/Observal/commit/ed2862cad4bb784f617ed0254c105817d1802d08))
917
- - add trim() to /take and /drop to handle trailing whitespace (**ci**) ([7e4b180](https://github.com/BlazeUp-AI/Observal/commit/7e4b180ac9ea54d7a9bc50b9adc2020ae0504126))
918
- - resolve agent version approve CircularDependencyError (**api**) ([9bc3ce2](https://github.com/BlazeUp-AI/Observal/commit/9bc3ce20cd9eb0c488d755104979a5e25c66d813))
919
- - flush version status before promoting latest_version_id (**review**) ([4471a7d](https://github.com/BlazeUp-AI/Observal/commit/4471a7d574e4c628843f2b4a38e5b3050c656329))
920
- - use short model names in frontmatter instead of stripped IDs (**config**) ([5147d33](https://github.com/BlazeUp-AI/Observal/commit/5147d33b2cda99a0e6f3bf2d57b827cf799b9215))
921
- - approve/reject agent by pending version, not latest_version (**review**) ([b868453](https://github.com/BlazeUp-AI/Observal/commit/b868453e4add9d8ccc5aeabd9408ca100ea23688))
922
- - migrate update_draft to version-scoped component columns (**agent**) ([e9875cf](https://github.com/BlazeUp-AI/Observal/commit/e9875cf566ce4bd304f9a41ddb0f4c315781c996))
923
- - pass full model ID instead of short name in frontmatter (**config**) ([bee95bd](https://github.com/BlazeUp-AI/Observal/commit/bee95bd0738c9bbdeffe98a0c17f4614222123d2))
924
- - use agent's stored model_name as fallback in config generator (**config**) ([3ffb739](https://github.com/BlazeUp-AI/Observal/commit/3ffb7396dd122e13fed2af8cf31f285f3fa32719))
925
- - handle cross-version import and include all ClickHouse tables in deep copy (#681) (**migrate**) ([832166a](https://github.com/BlazeUp-AI/Observal/commit/832166a3423b9a1db4bcc81a10c568cde63b2e47))
926
- - stop traces after logout by revoking tokens server-side (#668) (**auth**) ([e1c6a50](https://github.com/BlazeUp-AI/Observal/commit/e1c6a50395d599d56ffc3170ca1ac6174de9e812))
927
- - resolve agent names via server instead of stale local cache (#684) ([228c656](https://github.com/BlazeUp-AI/Observal/commit/228c65615542424787e9fb3272e8bcfa0bedb451))
928
- - resolve agent update 500 error (missing property setters) (**api**) ([a91878a](https://github.com/BlazeUp-AI/Observal/commit/a91878a4502d470f88d9fd5367234450617085d8))
929
- - fix agent edit form Playwright tests (**e2e**) ([7d8c2d5](https://github.com/BlazeUp-AI/Observal/commit/7d8c2d59158db1d1434470f8e346cb00fdc3f7c0))
930
- - resolve component delete 500 errors (#677, #678) (**api**) ([ca33351](https://github.com/BlazeUp-AI/Observal/commit/ca333511348e291dff76ef5fce9b3e44407d8595))
931
- - correct version lookup and sync lockfile (**cli**) ([9c474dc](https://github.com/BlazeUp-AI/Observal/commit/9c474dc26757155aa35a2eada68784e35836da22))
932
- - detect and block conflicting `observal` package (#671) (**cli**) ([d6e6616](https://github.com/BlazeUp-AI/Observal/commit/d6e661672b05c653ddae50e30ef379578418f87c))
933
- - move pull command from root to `observal agent pull` (#673) (**cli**) ([f092894](https://github.com/BlazeUp-AI/Observal/commit/f092894c93f077a514aeb007b29bfcb69685a796))
934
- - add latest_approved_version to response and fix agent pull (#667) (**api**) ([9f1256a](https://github.com/BlazeUp-AI/Observal/commit/9f1256a69bdc6eb3628e8d01f71e348048c6bb0b))
935
- - resolve agent deletion 500 errors (**api**) ([e19c67c](https://github.com/BlazeUp-AI/Observal/commit/e19c67ca7ecb14af4a2f24089b1c4ef21c715312))
936
- - review queue queries pending versions directly (**api**) ([2c989b3](https://github.com/BlazeUp-AI/Observal/commit/2c989b3540f9f929a8030be0566c324bd35d1317))
937
- - address 5 correctness bugs in agent edit form (**web**) ([c3429c9](https://github.com/BlazeUp-AI/Observal/commit/c3429c991411beb3df25858582ae51dd3e094102))
938
- - use canonical IDE list from ide_registry.py in edit form (**web**) ([48330d1](https://github.com/BlazeUp-AI/Observal/commit/48330d1ae7981d6eced1a4db897bb4f873b47adb))
939
- - resolve entrypoint migration incompatibility on fresh DB (**docker**) ([59fddfd](https://github.com/BlazeUp-AI/Observal/commit/59fddfd3491656ae5314b8dce87664975b0e4170))
940
- - wire version dropdown to fetch and display version-specific data (**web**) ([9aec74d](https://github.com/BlazeUp-AI/Observal/commit/9aec74dc3f256f8ff91e4b04be7c507bd7e3c0ed))
941
- - address 3 bugs in agent release/pull commands (**cli**) ([610c5fc](https://github.com/BlazeUp-AI/Observal/commit/610c5fc05e76fb661bd876612eb33f14bc375a7a))
942
- - complete agent versioning spec compliance (#622) (**api**) ([9a2c78c](https://github.com/BlazeUp-AI/Observal/commit/9a2c78c7d6ab4d34ceccef724fecc869b7d64970))
943
- - address RBAC review feedback (**server**) ([b705660](https://github.com/BlazeUp-AI/Observal/commit/b7056609fb885b4e5726aa87db97ef61f66abf3d))
944
- - apply ruff format to RBAC files (**server**) ([3af617a](https://github.com/BlazeUp-AI/Observal/commit/3af617a28afdf449301e54ade1b0c6b530711409))
945
- - fix import sorting in alembic migration (**server**) ([99a7b81](https://github.com/BlazeUp-AI/Observal/commit/99a7b819ce48341af7feb6aa29da7be5029e1045))
946
- - fixed the linting issues (**server**) ([b5eb5a0](https://github.com/BlazeUp-AI/Observal/commit/b5eb5a0a98ecc2fcbb427d45c45566fb3c1a8988))
947
-
948
- ### Other
949
-
950
- - add SPDX license headers for REUSE compliance ([df9b065](https://github.com/BlazeUp-AI/Observal/commit/df9b0652949043dd53710d12f8bdf8ada5c9ced3))
951
- - add SPDX headers and fix pre-commit hook for new files ([4653ffa](https://github.com/BlazeUp-AI/Observal/commit/4653ffac901632e251cf7a791b82aec517688c20))
952
- - add Codecov for test coverage reporting (**ci**) ([016d312](https://github.com/BlazeUp-AI/Observal/commit/016d3121c992e15b7e4838696fe3307ac61d7df0))
953
- - add SPDX headers to all source files (REUSE 3.3 compliant) ([193d7c9](https://github.com/BlazeUp-AI/Observal/commit/193d7c94a1360cd7918617a47e84ef691a35a493))
954
- - remove DCO, CLA-assistant is the sole contributor agreement ([90635ca](https://github.com/BlazeUp-AI/Observal/commit/90635ca6a8afe6d8adb1ee66f7948372aeab233f))
955
- - update terraform-linters/setup-tflint action to v6 (**deps**) ([47e7736](https://github.com/BlazeUp-AI/Observal/commit/47e77365da31820a113860e5a094b9146a335fe9))
956
- - update pnpm/action-setup action to v6 (**deps**) ([cb1c7e1](https://github.com/BlazeUp-AI/Observal/commit/cb1c7e1c21245ee914df229cf3d65aab8207977b))
957
- - update redis docker tag to v8 (**deps**) ([c8a7592](https://github.com/BlazeUp-AI/Observal/commit/c8a75924d65c0339449957671ea1b2865a42e8c9))
958
- - update postgres docker tag to v18 (**deps**) ([0905772](https://github.com/BlazeUp-AI/Observal/commit/0905772b1d115eacee0e2cd19c19e50c894fc201))
959
- - update hashicorp/setup-terraform action to v4 (**deps**) ([bd36feb](https://github.com/BlazeUp-AI/Observal/commit/bd36feb5e63d1ba40f6ec31d3a4178aa192cb67b))
960
- - update github/codeql-action action to v4 (**deps**) ([1089756](https://github.com/BlazeUp-AI/Observal/commit/10897565ed1ff5d18cbc3f4b3d820721e5326c9e))
961
- - update actions/checkout action to v6 (**deps**) ([8be0707](https://github.com/BlazeUp-AI/Observal/commit/8be07072fd91e9f05b53088b027283170cb0914f))
962
- - update tflint plugin terraform-linters/tflint-ruleset-aws to v0.47.0 (#778) (**deps**) ([574d28f](https://github.com/BlazeUp-AI/Observal/commit/574d28fa3ea0fc22a7cca02d8e2402c291a7ce4b))
963
- - remove ops sync tombstone (**ops**) ([2917e1c](https://github.com/BlazeUp-AI/Observal/commit/2917e1ce93d3fd960ccc224951f6d43743b7d2f2))
964
- - update docker images (minor/patch) (#777) (**deps**) ([4d29e1f](https://github.com/BlazeUp-AI/Observal/commit/4d29e1f299fddfc77a37ccf16bf42ca7e1468fe0))
965
- - update dependency python-multipart to v0.0.27 [security] (#767) (**deps**) ([66db454](https://github.com/BlazeUp-AI/Observal/commit/66db4547aa49dbc0a56ad6824ea3319fb9a940f2))
966
- - update dependency mako to v1.3.12 [security] (#766) (**deps**) ([f1c6fd4](https://github.com/BlazeUp-AI/Observal/commit/f1c6fd4628545c261814d94888cdbeb259680871))
967
- - add pyrightconfig.json to observal-server ([4a02084](https://github.com/BlazeUp-AI/Observal/commit/4a0208466b66ce58c6e6125e8d9a3016969c71c5))
968
- - update github artifact actions (**deps**) ([af5e2db](https://github.com/BlazeUp-AI/Observal/commit/af5e2db8e345fc00b56e4d96549a8a5d195fd3a0))
969
- - update actions/stale action to v10 (**deps**) ([a11966a](https://github.com/BlazeUp-AI/Observal/commit/a11966ad46461c19bc7517252534d6981746c0b7))
970
- - update actions/github-script action to v9 (**deps**) ([3a2b92c](https://github.com/BlazeUp-AI/Observal/commit/3a2b92c5d9fb1c54b1f105bee15e5b12cab0850c))
971
- - update astral-sh/setup-uv action to v8 (**deps**) ([b7d0896](https://github.com/BlazeUp-AI/Observal/commit/b7d08965ead0f40fa17e0b46eda6752468bc5bdc))
972
- - update actions/setup-python action to v6 (**deps**) ([0002d7f](https://github.com/BlazeUp-AI/Observal/commit/0002d7f4ec49b92f8206eeb93851629109e1d992))
973
- - update actions/checkout action to v6 (**deps**) ([04db00c](https://github.com/BlazeUp-AI/Observal/commit/04db00c3addd189bcef7fa0455fe583060c2a882))
974
- - update actions/attest-build-provenance action to v4 (**deps**) ([2e23a47](https://github.com/BlazeUp-AI/Observal/commit/2e23a4758f1d6a195d0158e98c9e844f313b954f))
975
- - update dependency python to 3.14 (#577) (**deps**) ([5420a10](https://github.com/BlazeUp-AI/Observal/commit/5420a100006067355651befb83f1289413077f83))
976
- - update docker images (minor/patch) (#578) (**deps**) ([9a86d40](https://github.com/BlazeUp-AI/Observal/commit/9a86d40d82fd6b378758aa0ec2a607c48a12fb36))
977
- - automerge minor+patch Renovate PRs (**deps**) ([66cb1ba](https://github.com/BlazeUp-AI/Observal/commit/66cb1baf8d0b84760cb1564a6614eb98700581f2))
978
- - cleanup anti-patterns in registered-agents-only files ([3e0ee48](https://github.com/BlazeUp-AI/Observal/commit/3e0ee4810f2eae53990c1022c79e8a8557798729))
979
- - ruff format agent_config_generator ([742e0d7](https://github.com/BlazeUp-AI/Observal/commit/742e0d7816f5aa1d8526644bfe856794761ee2f6))
980
- - ruff format agent routes ([89c869f](https://github.com/BlazeUp-AI/Observal/commit/89c869f6d9aad692e381375968f4cc836fab5ee6))
981
- - ruff format agent routes ([a82308e](https://github.com/BlazeUp-AI/Observal/commit/a82308e3c876fc565d32ce2bf21ec6f220c7e589))
982
- - cleanup anti-patterns in review and api modules ([7bc87b4](https://github.com/BlazeUp-AI/Observal/commit/7bc87b487aefdcade8d1cb2f619ac7e9825787a9))
983
- - cleanup anti-patterns in CLI agent commands ([dd0a5aa](https://github.com/BlazeUp-AI/Observal/commit/dd0a5aa494e81ec54c6ba775c21b7ec266885efe))
984
- - cleanup mechanical anti-patterns in routes ([6e9732e](https://github.com/BlazeUp-AI/Observal/commit/6e9732e5988c9d42a7d27c58035be7abd5871031))
985
- - cleanup anti-patterns in agent RBAC implementation ([98e72db](https://github.com/BlazeUp-AI/Observal/commit/98e72db3d5d967f1b4e701afdd0965ef2bd80b10))
986
-
987
- ### Performance
988
-
989
- - migrate _ev_session_details to session_stats_agg (**insights**) ([d3463ea](https://github.com/BlazeUp-AI/Observal/commit/d3463ea14e59aa8b65139553cabe96db317af521))
990
- - migrate _ev_per_session_tokens to session_stats_agg (**insights**) ([b6f6053](https://github.com/BlazeUp-AI/Observal/commit/b6f60534a81f8ed6b9602091c4721884cee17613))
991
- - migrate _ev_subagent_stats to session_stats_agg (**insights**) ([5844f3b](https://github.com/BlazeUp-AI/Observal/commit/5844f3bdad656e7b1215397f6a140910c7c702c3))
992
- - migrate _ev_duration_stats to session_stats_agg (**insights**) ([70006ad](https://github.com/BlazeUp-AI/Observal/commit/70006ad2285da64e0ad0c088cb71479648b8a5f1))
993
- - migrate _ev_credit_aggregates to session_stats_agg (**insights**) ([6626780](https://github.com/BlazeUp-AI/Observal/commit/66267805db095898607367cca44300dc7936abc1))
994
- - migrate _ev_token_aggregates to session_stats_agg (**insights**) ([3aaa7c2](https://github.com/BlazeUp-AI/Observal/commit/3aaa7c2ea11015ce124baadf87899ead2a73e7f5))
995
- - migrate _ev_session_overview to session_stats_agg (**insights**) ([ea867b4](https://github.com/BlazeUp-AI/Observal/commit/ea867b4d93e4ddb5e8a0d401914918e5d9080d2f))
996
- - migrate _count_sessions_in_events to session_stats_agg (**insights**) ([53db78e](https://github.com/BlazeUp-AI/Observal/commit/53db78eb7a9a1deaed00d6058faf3136270b57b9))
997
- - add proj_session_view projection on session_events (**clickhouse**) ([0100bb9](https://github.com/BlazeUp-AI/Observal/commit/0100bb9d500920ba34bd08bdbda91bcdc7349690))
998
- - replace parent_session_id bloom_filter with set(0) (**clickhouse**) ([4d38c70](https://github.com/BlazeUp-AI/Observal/commit/4d38c705e553694ef7b4820f38b0ae5b3803e70f))
999
- - replace event_type bloom_filter with set(20) skip index (**clickhouse**) ([b0f595a](https://github.com/BlazeUp-AI/Observal/commit/b0f595a3beb117e7f610087163c04d5b98f23f96))
1000
- - drop FINAL from session existence check (**reconcile**) ([ce7733b](https://github.com/BlazeUp-AI/Observal/commit/ce7733bac026b74c667eb8e4bae91717c216e58a))
1001
- - parallel FINAL scans + partition-scoped dedup in get_session (**sessions**) ([1152bc2](https://github.com/BlazeUp-AI/Observal/commit/1152bc2ebf32c8a55c305eb31359d307423c422a))
1002
- - migrate stats endpoint to session_stats_agg (**sessions**) ([99db552](https://github.com/BlazeUp-AI/Observal/commit/99db552be788bbcaad5b24fc7982d721ba34a3bc))
1003
- - migrate summary endpoint to session_stats_agg (**sessions**) ([11d7474](https://github.com/BlazeUp-AI/Observal/commit/11d7474df650a45fb25d2c919dd2f1939eca41dc))
1004
- - rank top-50 sessions via session_stats_agg, drop FINAL scan (**insights**) ([b6e84b1](https://github.com/BlazeUp-AI/Observal/commit/b6e84b140a37a2036bf9f7492b5443558df731c8))
1005
- - replace JSONExtract with materialized columns in metrics (**insights**) ([5a2e1bb](https://github.com/BlazeUp-AI/Observal/commit/5a2e1bb52c825d4c116efa5964210923111d1d5a))
1006
- - add session_stats_agg AggregatingMergeTree MV (**clickhouse**) ([5d54f30](https://github.com/BlazeUp-AI/Observal/commit/5d54f30d2df1b2726606b8313b286544b15777ba))
1007
-
1008
- ### Testing
1009
-
1010
- - cover IDE feature inference (**server**) ([49d341e](https://github.com/BlazeUp-AI/Observal/commit/49d341eb87e81318cfd384abcaf719a2c0790605))
1011
- - add component edit form screenshot spec (**e2e**) ([6fd363b](https://github.com/BlazeUp-AI/Observal/commit/6fd363b2d6bf0323862b868ebdc2a0ed1d425a78))
1012
- - add full edit → release → review Playwright flow (**e2e**) ([8672d9a](https://github.com/BlazeUp-AI/Observal/commit/8672d9ae8fdd62ecde89060ab1cdf6c85c7223a6))
1013
- ## [0.4.0] - 2026-04-28
1014
-
1015
- ### Added
1016
-
1017
741
  - add account page with profile, theme picker, and notifications (**web**) ([d748558](https://github.com/BlazeUp-AI/Observal/commit/d7485587c3bbdfd043fdfe58eb6bc4c4170758e1))
1018
742
  - add 10 curated IDE themes with hand-tuned oklch palettes (**web**) ([dcbb704](https://github.com/BlazeUp-AI/Observal/commit/dcbb7047bb31d3fc0fd590b9092b5bbe3270e8ce))
1019
743
  - add `observal doctor cleanup` command (**cli**) ([ab26241](https://github.com/BlazeUp-AI/Observal/commit/ab26241ab2a129a9479e92b78425138dc5477e8e))
1020
-
1021
- ### Changed
1022
-
1023
- - centralize IDE registry into single source of truth (**registry**) ([295ad48](https://github.com/BlazeUp-AI/Observal/commit/295ad486387ee2804c3e357d8c974dcda206fa54))
1024
- - restructure scan/doctor commands, fix Kiro active sessions (**cli**) ([7273872](https://github.com/BlazeUp-AI/Observal/commit/7273872f5f3e2d3de06f56542ade3ea05f9759af))
1025
- - extract IDE hook specs into observal_cli/ide_specs/ (**cli**) ([4ff36b5](https://github.com/BlazeUp-AI/Observal/commit/4ff36b5989da2a22486051676973de9bfc5be299))
1026
- - rename hooks_spec.py → claude_code_spec.py (**cli**) ([404831b](https://github.com/BlazeUp-AI/Observal/commit/404831bdb5635731c7c77fe7fe7d6dec5314260c))
1027
- - format test_ide_config_e2e.py ([707156a](https://github.com/BlazeUp-AI/Observal/commit/707156a0612a9f52abc44c4e418f8e69bfc9c195))
1028
- - format telemetry.py and cmd_scan.py ([cc92e5b](https://github.com/BlazeUp-AI/Observal/commit/cc92e5b21005b8155a9e8d11059f42a7602a1b4a))
1029
- - format test_settings_reconciler.py ([fedfcbb](https://github.com/BlazeUp-AI/Observal/commit/fedfcbbfb840bfc9a4e895c11d76eef3b1d76a10))
1030
- - fix remaining /otel/hooks references across CLI commands (**cli**) ([637e8fd](https://github.com/BlazeUp-AI/Observal/commit/637e8fd1a6a0c6fa17efec9c7e7b2c3b5931855c))
1031
- - merge OTLP handlers from otlp.py, delete otlp.py (**telemetry**) ([098995e](https://github.com/BlazeUp-AI/Observal/commit/098995e7b6e94ec4ddbc372cc75be690feec5d40))
1032
- - rename otel_dashboard → sessions, prefix /api/v1/sessions (**api**) ([ea9275a](https://github.com/BlazeUp-AI/Observal/commit/ea9275a195b1e44ae8bf963cd39af299da5d4a1b))
1033
- - rename /otel/ API paths to /sessions/ (**web**) ([22cc14d](https://github.com/BlazeUp-AI/Observal/commit/22cc14d157118b55c29fe96f2df51d763e1e970a))
1034
- - move hooks handler from otel_dashboard to telemetry router (**telemetry**) ([aee071e](https://github.com/BlazeUp-AI/Observal/commit/aee071e7325ca0ff6d23357c01924d3585962a58))
1035
- - use server_url for OTLP, remove port derivation (**cli**) ([637ee9f](https://github.com/BlazeUp-AI/Observal/commit/637ee9f2eea346b0e54a5789d457aa8e3e5f264e))
1036
- - fix OTLP fallbacks and hook URL paths (**config-gen**) ([6717515](https://github.com/BlazeUp-AI/Observal/commit/67175151797e7ca9d2b8b93122ce3f2ec2cc1a98))
1037
- - switch to HTTP/JSON OTLP, single-endpoint URLs (**hooks-spec**) ([f532296](https://github.com/BlazeUp-AI/Observal/commit/f532296ac1cc8eb39a6a5d955ddf8840617fb8f2))
1038
- - single-endpoint OTLP — remove gRPC, default to API URL (**config**) ([79e9801](https://github.com/BlazeUp-AI/Observal/commit/79e9801577c640e7318b11a9cba032816bbcfefc))
1039
- - remove OTEL collector, add nginx /v1/ routing (**infra**) ([d4f45ed](https://github.com/BlazeUp-AI/Observal/commit/d4f45edeb7e141c70d56a3f191f32a60e9b09198))
1040
- - remove redundant steering file generation (**kiro**) ([c49ec3c](https://github.com/BlazeUp-AI/Observal/commit/c49ec3c39505d4b46ddfa7e2ca4b5fd13fd58810))
1041
-
1042
- ### Documentation
1043
-
1044
- - update stale docstring references to claude_code_spec ([e00e193](https://github.com/BlazeUp-AI/Observal/commit/e00e1930240eddabf2a9e583e59c0eda3f378434))
1045
- - update for single-endpoint architecture ([861a3cf](https://github.com/BlazeUp-AI/Observal/commit/861a3cf6fc1cf060e1c92a69c8ea08ded3295ef4))
1046
-
1047
- ### Fixed
1048
-
1049
- - update IDE paths and add skill support per official docs (**registry**) ([1904f94](https://github.com/BlazeUp-AI/Observal/commit/1904f94c15a9ab980d73ff8818fd76fa6bd0a49b))
1050
- - correct VS Code mcp_servers_key and Claude Code home_mcp_config (**registry**) ([1693b40](https://github.com/BlazeUp-AI/Observal/commit/1693b404923b70543ab735c7e5084ab196b3ea0a))
1051
- - make session DAG visualization theme-aware (**web**) ([9f5f542](https://github.com/BlazeUp-AI/Observal/commit/9f5f542a5e7ce10a87d8273dcd9d7897c80eedcd))
1052
- - replace hardcoded colors with semantic theme tokens (**web**) ([ae3b5c4](https://github.com/BlazeUp-AI/Observal/commit/ae3b5c4fecc0ed619aab1316ec8ee4ee9663d022))
1053
- - hide enterprise-only sidebar items in local mode, fix collapsed logo (**web**) ([aad850f](https://github.com/BlazeUp-AI/Observal/commit/aad850f7cd000cbe5ca4720f6195ad128670014d))
1054
- - prevent duplicate Observal hooks in Kiro agent configs ([6256a56](https://github.com/BlazeUp-AI/Observal/commit/6256a569b3f86c1571c81811e0d623429b340486))
1055
- - use sys.executable and python detection for cross-platform hook injection (**hooks**) ([7ee202a](https://github.com/BlazeUp-AI/Observal/commit/7ee202a1375cf29f349d0c88738202500476255f))
1056
- - use sys.executable for hook commands, not hardcoded python3 (**cli**) ([1ddcc81](https://github.com/BlazeUp-AI/Observal/commit/1ddcc8140e982caaf6eadb1af4965e589108a0c6))
1057
- - update crypto public-key URL and e2e test paths (**cli**) ([f01e635](https://github.com/BlazeUp-AI/Observal/commit/f01e6359406b857e03cec640ca02edddb210cb85))
1058
- - update copilot CLI hook test to use module invocation format (**test**) ([d526a4b](https://github.com/BlazeUp-AI/Observal/commit/d526a4b52de380b4f0b9e27a1d874fc940d48363))
1059
- - doctor cleanup should also clean kiro_default.json (**cli**) ([5f7a755](https://github.com/BlazeUp-AI/Observal/commit/5f7a75528263fc0101b1e4b917f29412f58dbae1))
1060
- - use module invocation for hook injection, not cat|python3 pipes (**cli**) ([50af818](https://github.com/BlazeUp-AI/Observal/commit/50af81803f3d3eedbfc6f9fbe0ea5978ba82f314))
1061
- - write native OTLP logs to otel_logs table (**telemetry**) ([4381188](https://github.com/BlazeUp-AI/Observal/commit/4381188f5b0c85f8049e12cc3824d59b3fd9b739))
1062
- - update copilot CLI hooks and remaining otel/hooks references (**cli**) ([be5c960](https://github.com/BlazeUp-AI/Observal/commit/be5c960f0532a5b27f9eccc4ea0fed4977198eca))
1063
- - normalize all IDE ServiceName values in SQL query (**sessions**) ([4e86302](https://github.com/BlazeUp-AI/Observal/commit/4e863026c55c27c4ad29b529d5989652c32640ec))
1064
- - remove exception detail leaks in eval kernel (**security**) ([9d56b6c](https://github.com/BlazeUp-AI/Observal/commit/9d56b6c4770d784912af702a60f580eb0c68e178))
1065
- - address CodeQL findings (**security**) ([ef08221](https://github.com/BlazeUp-AI/Observal/commit/ef08221f2028a04171073d7c03f6b10e7c8c337e))
1066
- - update test expectations and fix eslint warnings (**ci**) ([723a29c](https://github.com/BlazeUp-AI/Observal/commit/723a29cfe32099ead233eaaaddbe9c3245e3d836))
1067
- - seed Kiro hooks with telemetry commands (**agent-builder**) ([14bea3d](https://github.com/BlazeUp-AI/Observal/commit/14bea3d1170e97927e43eeb67792525212cbb781))
1068
- - move /traces /errors /stats above /{session_id} catch-all (**sessions**) ([39d9a60](https://github.com/BlazeUp-AI/Observal/commit/39d9a60b15bd4e9dc4c8a3581f8bbc583a1fdd2d))
1069
- - remove duplicate /sessions prefix from route paths (**sessions**) ([606a00d](https://github.com/BlazeUp-AI/Observal/commit/606a00d16d1e67ca6d5516d988681a48910e5cda))
1070
- - replace structlog with stdlib logging (**sessions**) ([106d489](https://github.com/BlazeUp-AI/Observal/commit/106d4898e6cf1799d1248351456a4fa11b6a84d7))
1071
- - fix remaining OtelSession type reference (**web**) ([c6983a8](https://github.com/BlazeUp-AI/Observal/commit/c6983a86ab148d31266dd637787f57a8e8235f3e))
1072
- - add otel_logs DDL to init_clickhouse (**clickhouse**) ([17fd514](https://github.com/BlazeUp-AI/Observal/commit/17fd514a87d6ac0a1e7cf20d6640dd724adc1b07))
1073
-
1074
- ### Other
1075
-
1076
- - update docker/build-push-action action to v7 (**deps**) ([20f2626](https://github.com/BlazeUp-AI/Observal/commit/20f26263f09cfc4c9f95b52d6e5509f3d34af58a))
1077
- - update docker/login-action action to v4 (**deps**) ([e5d87a9](https://github.com/BlazeUp-AI/Observal/commit/e5d87a9dd2fa1b06b384efae2dd87019fbc36d6c))
1078
- - update docker/setup-buildx-action action to v4 (**deps**) ([5e5f3f8](https://github.com/BlazeUp-AI/Observal/commit/5e5f3f8f9b0749265cb28ae39912acd0f0d2c1fb))
1079
- - sync observal-server uv.lock version to 0.3.4 ([eed7bdd](https://github.com/BlazeUp-AI/Observal/commit/eed7bdded2218e60d08aafb623cefa698223b7ff))
1080
-
1081
- ### Testing
1082
-
1083
- - update expectations for single-endpoint architecture ([3d271a6](https://github.com/BlazeUp-AI/Observal/commit/3d271a629adc4b5f4e380152b5f5e59f66aeea5c))
1084
- ## [0.3.4] - 2026-04-25
1085
-
1086
- ### Added
1087
-
1088
744
  - add copilot-cli doctor checks and SLI repair ([fe8f91a](https://github.com/BlazeUp-AI/Observal/commit/fe8f91af37c6e3d354906c022aaba2e12eb4b816))
1089
745
  - add copilot-cli scan and hook injection ([8956644](https://github.com/BlazeUp-AI/Observal/commit/8956644008e824ba59675be52448880170a544e8))
1090
746
  - add copilot-cli server-side config generation ([7c71b94](https://github.com/BlazeUp-AI/Observal/commit/7c71b94b2bdeb3827ecfb48bda0180b065d4de8f))
1091
747
  - add copilot-cli hook scripts ([4e22c5c](https://github.com/BlazeUp-AI/Observal/commit/4e22c5cf5907c30488e9cb73137495e057463535))
1092
748
  - add copilot-cli to IDE constants and feature matrix ([065900b](https://github.com/BlazeUp-AI/Observal/commit/065900b63c6f7fd60c1c6d11d9e730d51732293e))
1093
-
1094
- ### Documentation
1095
-
1096
- - add copilot-cli integration guide ([c459254](https://github.com/BlazeUp-AI/Observal/commit/c459254ee837e396e9d8dc3a9fc8b3c40d7c4cb6))
1097
-
1098
- ### Fixed
1099
-
1100
- - add missing event name mappings for prompt counting (**copilot**) ([0a3acf7](https://github.com/BlazeUp-AI/Observal/commit/0a3acf7c0f135e79291915a9d5081996a7d54762))
1101
- - auto-shim copilot/opencode MCP servers during login (**auth**) ([3d12220](https://github.com/BlazeUp-AI/Observal/commit/3d1222013fd0c2907ae82f5b346949c4bf673795))
1102
- - match native agent config schema and fix prompt injection (**kiro**) ([cb773cc](https://github.com/BlazeUp-AI/Observal/commit/cb773cc090540150bc1284063d06b6b243c5e5fc))
1103
- - replace fragile cat|sed|curl Unix pipelines with Python hook scripts (**kiro**) ([c304172](https://github.com/BlazeUp-AI/Observal/commit/c304172d8a96ed48e56b9f92d73fa5f876effe29))
1104
- - use LB URL as Dockerfile build-time default for API rewrites (**docker**) ([af54ebd](https://github.com/BlazeUp-AI/Observal/commit/af54ebd826ea4789b88894d51136644c25a4e683))
1105
- - preserve URL scheme in endpoint derivation and fix port issues (**config**) ([ef28cfe](https://github.com/BlazeUp-AI/Observal/commit/ef28cfe33e801c816ce529d6b827d84e14979340))
1106
- - reformat test_ide_config_e2e.py to satisfy ruff (**lint**) ([4c065ba](https://github.com/BlazeUp-AI/Observal/commit/4c065ba732c07dd43326eb3d84bbe12be2b040d8))
1107
- - rename camelCase test function to satisfy ruff N802 (**test**) ([77a57d4](https://github.com/BlazeUp-AI/Observal/commit/77a57d47a276495b8898dd2706fd6321cfda02ae))
1108
- - add Copilot CLI platform detection and hide unsupported fields (**web**) ([2259794](https://github.com/BlazeUp-AI/Observal/commit/22597942a864c521e61d3d3f0d5fbf2cf97552c1))
1109
- - add JSONC parsing and per-event hook names for Copilot CLI (**cli**) ([096fd3c](https://github.com/BlazeUp-AI/Observal/commit/096fd3c5092d0fa0e4d6e439d0e7c86ad85540a3))
1110
- - normalize Copilot CLI payloads and inject event names (**hooks**) ([a9d47fa](https://github.com/BlazeUp-AI/Observal/commit/a9d47faa3e327c64bb8ba5cb7be34c9c212ae50e))
1111
- - respect --ide filter in fallback home scan (**scan**) ([cf379dd](https://github.com/BlazeUp-AI/Observal/commit/cf379ddeaca9b24ab6b2f158e3711da433903520))
1112
- - only trace registered Kiro agents, skip kiro_default (**scan**) ([db39514](https://github.com/BlazeUp-AI/Observal/commit/db3951494f61f3e724c6dfc3fb659badd6e916ba))
1113
- - only trace registered Kiro agents, skip kiro_default (**scan**) ([63d2b5d](https://github.com/BlazeUp-AI/Observal/commit/63d2b5dc21b608e7039ddfbd8794afff5de58943))
1114
- - only trace registered Kiro agents, skip kiro_default (**scan**) ([9cdc9c5](https://github.com/BlazeUp-AI/Observal/commit/9cdc9c5cd7b451c968696fd0dda288c7db8f97d1))
1115
- - preserve host port in proxy headers to fix Kiro agent tracing (**nginx**) ([60dcda9](https://github.com/BlazeUp-AI/Observal/commit/60dcda95124b5e0e06307c66a43db2fde8056907))
1116
-
1117
- ### Other
1118
-
1119
- - update dependency ruff to v0.15.12 (#575) (**deps**) ([a8a406d](https://github.com/BlazeUp-AI/Observal/commit/a8a406df83a1978b157c0c8d6aac359d70a2da7b))
1120
-
1121
- ### Performance
1122
-
1123
- - multi-stage API build, expand dockerignore, add nginx gzip (**docker**) ([21fd2a4](https://github.com/BlazeUp-AI/Observal/commit/21fd2a461bd01709df7775655aedc91a07e608e6))
1124
-
1125
- ### Testing
1126
-
1127
- - update assertions for new config format (**kiro**) ([550ade5](https://github.com/BlazeUp-AI/Observal/commit/550ade505fa9eb1658799bdce050cd140927a2d4))
1128
- - add copilot-cli e2e tests ([dfabf02](https://github.com/BlazeUp-AI/Observal/commit/dfabf0215d6bdbb9bc1d0f0e2fb50e36dbe6f6d4))
1129
- ## [0.3.3] - 2026-04-24
1130
-
1131
- ### Fixed
1132
-
1133
- - filter release artifact download to skip Docker metadata (**ci**) ([dbd6a1b](https://github.com/BlazeUp-AI/Observal/commit/dbd6a1b66ec1dd3a6db067ecc9bc41a17174a329))
1134
- ## [0.3.2] - 2026-04-24
1135
-
1136
- ### Added
1137
-
1138
749
  - add Edit and Resubmit UI for rejected agents and components (**web**) ([1d22a61](https://github.com/BlazeUp-AI/Observal/commit/1d22a61a940d2cf7dd3248515079b1d7d34429f0))
1139
750
  - inject hooks via scan and auth login, update doctor (**gemini**) ([2e3b3a0](https://github.com/BlazeUp-AI/Observal/commit/2e3b3a0e8beffa44d9db3121fbd559ebb0f8bd08))
1140
751
  - add hook_bridge and otlp_telemetry to feature matrix (**gemini**) ([e3b442c](https://github.com/BlazeUp-AI/Observal/commit/e3b442c99a3ba3df986703cc9813172980ac806d))
@@ -1199,14 +810,108 @@ All notable changes to this project will be documented in this file.
1199
810
  - add structlog and prometheus-fastapi-instrumentator dependencies ([ce788b9](https://github.com/BlazeUp-AI/Observal/commit/ce788b945d791189134cbcb7ee772f97c8063a5f))
1200
811
  - split settings into sections with resource tooltips (**web**) ([227b783](https://github.com/BlazeUp-AI/Observal/commit/227b783761c96280997bd6dafd859d00df744163))
1201
812
  - add runtime ClickHouse resource tuning via admin UI (**server,web**) ([6400bd6](https://github.com/BlazeUp-AI/Observal/commit/6400bd66346af9679025e8e915a945402b4ef1d3))
813
+ - redesign traces page with unified Kiro and Claude Code view (**web**) ([e648ad5](https://github.com/BlazeUp-AI/Observal/commit/e648ad535a0766fcea6bb42a3df7bd3fbb390baf))
814
+ - extend session types, API layer, and hooks for v4 traces (**web**) ([5575ac4](https://github.com/BlazeUp-AI/Observal/commit/5575ac404506fe3242261230c91c8f58c296b39f))
815
+ - add user resolution, platform/time filters, and summary endpoint (**server**) ([2befd44](https://github.com/BlazeUp-AI/Observal/commit/2befd44097c3b3b799578a237b16473842b98ff5))
816
+ - propagate username through hooks and env vars (**cli**) ([f41ff37](https://github.com/BlazeUp-AI/Observal/commit/f41ff37201574e1b44dea3be7f8d48c5a97a79df))
817
+ - show IDE compatibility badges on agent cards and detail pages (**web**) ([151e55b](https://github.com/BlazeUp-AI/Observal/commit/151e55be229f64a878182dbc100aba69e33e1bed))
818
+ - auto-infer IDE compatibility on agent create/update and warn at install (**server**) ([e1e39ae](https://github.com/BlazeUp-AI/Observal/commit/e1e39ae3ca9e03796dffb19f518f6d0d74889424))
819
+ - add required_ide_features and inferred_supported_ides to agent model (**server**) ([1214bc3](https://github.com/BlazeUp-AI/Observal/commit/1214bc3ac76932759951658688dd091abcd86b22))
820
+ - add IDE feature inference service (**server**) ([82b897e](https://github.com/BlazeUp-AI/Observal/commit/82b897e66a47f4c2926f6a9a5703852f3a77a4ff))
821
+ - add IDE feature capability matrix to constants (**server**) ([f259125](https://github.com/BlazeUp-AI/Observal/commit/f25912560f3807a1a0cdf629391fda4f747d0fc2))
822
+ - detect dollar-sign input vars in git-URL submit path (**cli**) ([a22c37e](https://github.com/BlazeUp-AI/Observal/commit/a22c37e29a83f852d6a49a3b99a901dc7ea7af6f))
823
+ - substitute $VAR placeholders in stored args at install time (**server**) ([a415036](https://github.com/BlazeUp-AI/Observal/commit/a415036096c927a22b8389b5270d686d43f84a58))
824
+ - detect dollar-sign input variables in mcp submit --config (**cli**) ([0705ee0](https://github.com/BlazeUp-AI/Observal/commit/0705ee00b0ff0d2c00f110f10a15de5df8bb2210))
825
+ - add ASCII welcome banner on auth login (#202) ([043147f](https://github.com/BlazeUp-AI/Observal/commit/043147fde13efc05c3fb1da7e539d160b00c91bd))
826
+ - add Redis-backed caching and gzip compression ([1803470](https://github.com/BlazeUp-AI/Observal/commit/18034709d7d1cccafd490bfe06558e53156d3547))
827
+ - add post-auth onboarding with IDE detection and component upload ([8660f3e](https://github.com/BlazeUp-AI/Observal/commit/8660f3e8fdc2ce0fe91faadf49bc6f1c4257a78b))
828
+ - allow users to view their own traces (#431) (**traces**) ([3be2c5c](https://github.com/BlazeUp-AI/Observal/commit/3be2c5c69d95f2f9b6df9cdeeb442586144050d1))
829
+ - generate IDE-specific skill files on agent install (#431) (**skills**) ([b276718](https://github.com/BlazeUp-AI/Observal/commit/b276718d29427a5ab30a5db0e35d12f4440db339))
830
+ - add structured security event logging for SIEM integration (#233) (**sec**) ([5d61282](https://github.com/BlazeUp-AI/Observal/commit/5d61282f9003c7001d4b19226362a92971982c99))
831
+ - add escape_like() utility and tests (**sec**) ([2c9ee56](https://github.com/BlazeUp-AI/Observal/commit/2c9ee561d4fc4e01e8b6da0d858376452a6843f1))
832
+ - add shim badge on trace events with merged shim data (**ui**) ([929cb47](https://github.com/BlazeUp-AI/Observal/commit/929cb47023c810f9db9861d9c6a79ec7615e1179))
833
+ - add unarchive action for archived agents ([9a9e352](https://github.com/BlazeUp-AI/Observal/commit/9a9e352c283f88e6b73697d3cfe1fdbb0f8908c0))
834
+ - add delete/withdraw action for pending items in review queue ([71e4250](https://github.com/BlazeUp-AI/Observal/commit/71e4250702288ed2be517f1cff06a6191005110b))
835
+ - add draft workflow and submission forms for all component types ([2f52f02](https://github.com/BlazeUp-AI/Observal/commit/2f52f02ceeb4ed3471bde8a98c60f90cbc6dde5f))
836
+ - add custom inline prompt input to agent builder Prompts tab (**web**) ([6029763](https://github.com/BlazeUp-AI/Observal/commit/60297638de8be62e05c3f30cd7676d75f7fb4b93))
837
+ - unwrap mcpServers wrappers and extract server name from pasted configs (**cli**) ([1ddc49b](https://github.com/BlazeUp-AI/Observal/commit/1ddc49bdde6e46458aa4505282a535456a0a806c))
838
+ - add header prompting at install time for SSE/HTTP servers (**cli**) ([b4dd457](https://github.com/BlazeUp-AI/Observal/commit/b4dd457f445a148319c7504828b267e6e1b3916d))
839
+ - revamp submit UX with config preview and direct JSON config support (**cli**) ([0a3ff6f](https://github.com/BlazeUp-AI/Observal/commit/0a3ff6f4ca8a5485fab5510e6ac3822100a41d61))
840
+ - support three transport types — stdio, SSE, HTTP proxy (**config**) ([522f270](https://github.com/BlazeUp-AI/Observal/commit/522f27081b5066e8be3f815d2bd6054acad477e8))
841
+ - store command/args/url/headers on submit, pass headers on install (**routes**) ([9b38fff](https://github.com/BlazeUp-AI/Observal/commit/9b38fffd7f094b938b3434c88bbd9fc8a23330d2))
842
+ - auto-detect docker images and infer command/args from repos (**validator**) ([1b6b34c](https://github.com/BlazeUp-AI/Observal/commit/1b6b34c7e40ce2095ca44ce504fdc61fa5facef8))
843
+ - add transport/SSE/header fields to MCP schemas (**schemas**) ([daa2d5d](https://github.com/BlazeUp-AI/Observal/commit/daa2d5d624218b44502dba5878126325a834f2fb))
844
+ - add command, args, url, headers, auto_approve columns to mcp_listings (**db**) ([a7f184c](https://github.com/BlazeUp-AI/Observal/commit/a7f184c4f5aa78e4fe66e4958fe69f22aa188c38))
845
+ - org-scope agent endpoints and stamp owner_org_id on all listings (**multi-tenancy**) ([aff0883](https://github.com/BlazeUp-AI/Observal/commit/aff088355fce90806e720181baeb679ae745b011))
846
+ - org-scoped project_id and route filtering (**multi-tenancy**) ([10c41e4](https://github.com/BlazeUp-AI/Observal/commit/10c41e4a82606caa6cab5e5156a122fbee34c527))
847
+ - scope user management to org and assign org_id on creation (**admin**) ([2bdf1ea](https://github.com/BlazeUp-AI/Observal/commit/2bdf1eafd4a4bce56da6223b978c8291122d9901))
848
+ - add org-aware dependencies and auto-assign default org (**auth**) ([0d25bd2](https://github.com/BlazeUp-AI/Observal/commit/0d25bd2a0fa7a2faee1fcdd6096ec6e8773e7b63))
849
+ - add version bump dialog to agent builder (**web**) ([5875985](https://github.com/BlazeUp-AI/Observal/commit/5875985c550d3476a5bc548b134b424268c6d66c))
850
+ - add draft workflow with localStorage auto-save (**web**) ([837e3dc](https://github.com/BlazeUp-AI/Observal/commit/837e3dc6a9eb93e35e99e5b868dca7427779a57e))
851
+ - add agents tab with component readiness to review page (**web**) ([a20cd85](https://github.com/BlazeUp-AI/Observal/commit/a20cd8549677e1bcb10204025c14648308290006))
852
+ - add agent bulk-create command (**cli**) ([d2d360b](https://github.com/BlazeUp-AI/Observal/commit/d2d360bedd7ec543e60d29bb371fdeab978d3af9))
853
+ - add user filter and component tabs to leaderboard (**web**) ([cb52a55](https://github.com/BlazeUp-AI/Observal/commit/cb52a55b62d288ea4da10c5d229146b860ff63d4))
854
+ - add archive action to agent pages (**web**) ([ddc8e9c](https://github.com/BlazeUp-AI/Observal/commit/ddc8e9c1291166754c3126c507f9d5b490505b75))
855
+ - add API hooks for review, archive, draft, version, leaderboard, bulk (**web**) ([7e2fe92](https://github.com/BlazeUp-AI/Observal/commit/7e2fe92969b4962a789f8939c80b3068ede93653))
856
+ - add bulk agent upload endpoint and schemas (**server**) ([1295e58](https://github.com/BlazeUp-AI/Observal/commit/1295e58317932d5852b95fabd7598152bc6b04e1))
857
+ - add archived variant to StatusBadge (**web**) ([7bf035d](https://github.com/BlazeUp-AI/Observal/commit/7bf035dfa936b03180f1ea4ccc0f38e80286a421))
858
+ - add dismissible GitHub star banner to page header ([11d3d09](https://github.com/BlazeUp-AI/Observal/commit/11d3d0927e84927d33d2a1c3d77803aebcfb251b))
859
+ - add username field to User model (#339) (**auth**) ([c001b1b](https://github.com/BlazeUp-AI/Observal/commit/c001b1b3f29ff66a87ce3e96e3fa91a6598e6a80))
860
+ - add delete agent functionality to frontend (**web**) ([4204176](https://github.com/BlazeUp-AI/Observal/commit/42041769d2a52f6f6a9d5d4c920cbce856a52a3a))
861
+ - add review queue, versioning, bundles, archive, and draft workflow (**agent**) ([27f1f6a](https://github.com/BlazeUp-AI/Observal/commit/27f1f6a81f4258d63c3814464b684cde072d4385))
862
+ - add observal agents cli cmds (**agent**) ([7e6a206](https://github.com/BlazeUp-AI/Observal/commit/7e6a2069817aa13777891f847c8843c3ff93431a))
863
+ - robust multi-language env var detection and config generation fixes ([5d633c5](https://github.com/BlazeUp-AI/Observal/commit/5d633c555d350895b461859d6c818c67466564f0))
864
+ - unify telemetry — merge hooks, shims, and OTLP into one event stream ([1dce747](https://github.com/BlazeUp-AI/Observal/commit/1dce7472b2a3706fbf92cd4dbbd01d6cf105bc8f))
865
+ - add live session updates via GraphQL subscriptions ([9cc5bd1](https://github.com/BlazeUp-AI/Observal/commit/9cc5bd188617dbbfd51005336cdd9d24e34665e5))
1202
866
 
1203
867
  ### CI
1204
868
 
869
+ - add workflow for backend integration tests ([ba4e741](https://github.com/BlazeUp-AI/Observal/commit/ba4e741feaf813f27eec071c7720ac9451f90866))
870
+ - add deploy-dev workflow for main branch auto-deploy ([40f2203](https://github.com/BlazeUp-AI/Observal/commit/40f22031befc48c38ec3af8c6886ead52ac61cca))
871
+ - add deploy-dev workflow for main branch auto-deploy ([4393ce0](https://github.com/BlazeUp-AI/Observal/commit/4393ce0fcfd3a2832fcb9f5dbebd7cb3b9e3a893))
872
+ - trigger on release tags only, not push to main (**deploy**) ([83cbf33](https://github.com/BlazeUp-AI/Observal/commit/83cbf3367b3426cd08d615af693191a7c3a6ae1e))
873
+ - add stale issue/PR workflow with keep open exemption ([b3f8433](https://github.com/BlazeUp-AI/Observal/commit/b3f8433750f8f5292ea448b8b41fb5b8eef262ba))
1205
874
  - use GitHub App token for release tag push ([0c9c696](https://github.com/BlazeUp-AI/Observal/commit/0c9c69635a6c9f0772d3bf465e4956b577d02c16))
1206
875
  - automated release pipeline for CLI, Docker, and server packages ([877e4e1](https://github.com/BlazeUp-AI/Observal/commit/877e4e1705f900f88c6c03582fcd39569aec8268))
876
+ - add asyncpg and hypothesis to test runner ([abff6ad](https://github.com/BlazeUp-AI/Observal/commit/abff6ad95887a6414636b4cd8b64100b450037e5))
877
+ - add auto-deploy workflow for EC2 server ([c6d3fc8](https://github.com/BlazeUp-AI/Observal/commit/c6d3fc886422702b880f8ddfea4bbfab64d44ed4))
1207
878
 
1208
879
  ### Changed
1209
880
 
881
+ - derive org columns and NOT NULL defaults from schema, improve warnings ([5380a65](https://github.com/BlazeUp-AI/Observal/commit/5380a650744196d1eba88e93b700eb03a6b6c9d9))
882
+ - address review feedback on migrate import ([1fa852e](https://github.com/BlazeUp-AI/Observal/commit/1fa852e9e82994d796b35bc3c8003801c8f30289))
883
+ - redesign HTML report with warm, refined color scheme (**insights**) ([894e327](https://github.com/BlazeUp-AI/Observal/commit/894e327939d3e36807605ba2b2ca3df7ec01e61d))
884
+ - remove triplicated display logic from CLI and frontend ([b5ab0be](https://github.com/BlazeUp-AI/Observal/commit/b5ab0be6d63a83de5e06c1c89174d950b41b0fbd))
885
+ - move extra_ingest_rows into kiro.py (**ingest**) ([f0e7540](https://github.com/BlazeUp-AI/Observal/commit/f0e754078fcf951c4ad45514d8396dd26811529f))
886
+ - move Kiro credits logic to ingest_classify.py (**ingest**) ([054fbf1](https://github.com/BlazeUp-AI/Observal/commit/054fbf1abc1fd1d83ca45718826d58044ac008ca))
887
+ - ruff format hook_event resolution (**kiro**) ([723ec55](https://github.com/BlazeUp-AI/Observal/commit/723ec55782d66e6827f413213cef0f4db15ae3d7))
888
+ - replace enrichment-heavy route with clean Harness version (**reconcile**) ([95d34e0](https://github.com/BlazeUp-AI/Observal/commit/95d34e0311b16edc25581aeb7c572e22d894ea6b))
889
+ - remove CLI commands, keep crash recovery library (**reconcile**) ([5103982](https://github.com/BlazeUp-AI/Observal/commit/5103982496d42ac0782816c071c3dd170c4c5023))
890
+ - remove legacy hook pipeline, keep shim and buffer (**telemetry**) ([40a5be4](https://github.com/BlazeUp-AI/Observal/commit/40a5be4d63a796dc02ddb49221370ed4d4e424a7))
891
+ - rewrite queries to use session_events table (**sessions**) ([437cf58](https://github.com/BlazeUp-AI/Observal/commit/437cf5873da924b1c9b8d193aa14f32a56c5329a))
892
+ - strip shim/OTEL logic, keep only session push hooks (**doctor**) ([883b95a](https://github.com/BlazeUp-AI/Observal/commit/883b95aee1b364f9f361543eda6f7fb4fca3ad8a))
893
+ - squash all 28 migrations into single baseline (**migrations**) ([1c5abdd](https://github.com/BlazeUp-AI/Observal/commit/1c5abdd04e7bfea798026f54391d984bce0f1a8f))
894
+ - ruff format agent.py ([4ef21c3](https://github.com/BlazeUp-AI/Observal/commit/4ef21c345ae13302cf66530a6e8ca5a2a63c6cf3))
895
+ - ruff format api route files ([b003bbe](https://github.com/BlazeUp-AI/Observal/commit/b003bbe0eb66dbf225348834e0a8f65a04a217ce))
896
+ - ruff format component_version_extras and component_versions ([af394b6](https://github.com/BlazeUp-AI/Observal/commit/af394b685ff123900710bed6c98f3d177acd24a6))
897
+ - centralize IDE registry into single source of truth (**registry**) ([295ad48](https://github.com/BlazeUp-AI/Observal/commit/295ad486387ee2804c3e357d8c974dcda206fa54))
898
+ - restructure scan/doctor commands, fix Kiro active sessions (**cli**) ([7273872](https://github.com/BlazeUp-AI/Observal/commit/7273872f5f3e2d3de06f56542ade3ea05f9759af))
899
+ - extract IDE hook specs into observal_cli/ide_specs/ (**cli**) ([4ff36b5](https://github.com/BlazeUp-AI/Observal/commit/4ff36b5989da2a22486051676973de9bfc5be299))
900
+ - rename hooks_spec.py → claude_code_spec.py (**cli**) ([404831b](https://github.com/BlazeUp-AI/Observal/commit/404831bdb5635731c7c77fe7fe7d6dec5314260c))
901
+ - format test_ide_config_e2e.py ([707156a](https://github.com/BlazeUp-AI/Observal/commit/707156a0612a9f52abc44c4e418f8e69bfc9c195))
902
+ - format telemetry.py and cmd_scan.py ([cc92e5b](https://github.com/BlazeUp-AI/Observal/commit/cc92e5b21005b8155a9e8d11059f42a7602a1b4a))
903
+ - format test_settings_reconciler.py ([fedfcbb](https://github.com/BlazeUp-AI/Observal/commit/fedfcbbfb840bfc9a4e895c11d76eef3b1d76a10))
904
+ - fix remaining /otel/hooks references across CLI commands (**cli**) ([637e8fd](https://github.com/BlazeUp-AI/Observal/commit/637e8fd1a6a0c6fa17efec9c7e7b2c3b5931855c))
905
+ - merge OTLP handlers from otlp.py, delete otlp.py (**telemetry**) ([098995e](https://github.com/BlazeUp-AI/Observal/commit/098995e7b6e94ec4ddbc372cc75be690feec5d40))
906
+ - rename otel_dashboard → sessions, prefix /api/v1/sessions (**api**) ([ea9275a](https://github.com/BlazeUp-AI/Observal/commit/ea9275a195b1e44ae8bf963cd39af299da5d4a1b))
907
+ - rename /otel/ API paths to /sessions/ (**web**) ([22cc14d](https://github.com/BlazeUp-AI/Observal/commit/22cc14d157118b55c29fe96f2df51d763e1e970a))
908
+ - move hooks handler from otel_dashboard to telemetry router (**telemetry**) ([aee071e](https://github.com/BlazeUp-AI/Observal/commit/aee071e7325ca0ff6d23357c01924d3585962a58))
909
+ - use server_url for OTLP, remove port derivation (**cli**) ([637ee9f](https://github.com/BlazeUp-AI/Observal/commit/637ee9f2eea346b0e54a5789d457aa8e3e5f264e))
910
+ - fix OTLP fallbacks and hook URL paths (**config-gen**) ([6717515](https://github.com/BlazeUp-AI/Observal/commit/67175151797e7ca9d2b8b93122ce3f2ec2cc1a98))
911
+ - switch to HTTP/JSON OTLP, single-endpoint URLs (**hooks-spec**) ([f532296](https://github.com/BlazeUp-AI/Observal/commit/f532296ac1cc8eb39a6a5d955ddf8840617fb8f2))
912
+ - single-endpoint OTLP — remove gRPC, default to API URL (**config**) ([79e9801](https://github.com/BlazeUp-AI/Observal/commit/79e9801577c640e7318b11a9cba032816bbcfefc))
913
+ - remove OTEL collector, add nginx /v1/ routing (**infra**) ([d4f45ed](https://github.com/BlazeUp-AI/Observal/commit/d4f45edeb7e141c70d56a3f191f32a60e9b09198))
914
+ - remove redundant steering file generation (**kiro**) ([c49ec3c](https://github.com/BlazeUp-AI/Observal/commit/c49ec3c39505d4b46ddfa7e2ca4b5fd13fd58810))
1210
915
  - fix ruff lint and format issues ([6e33021](https://github.com/BlazeUp-AI/Observal/commit/6e33021f5d2ad5b5484b45e591a75458e10ec2b3))
1211
916
  - ruff format main.py ([14832c9](https://github.com/BlazeUp-AI/Observal/commit/14832c9ecda57dba9a9a07843dfc7103eaef34a8))
1212
917
  - fix ruff lint (ternary + import sorting) ([2406c3d](https://github.com/BlazeUp-AI/Observal/commit/2406c3d2168d1a1729f4bd03da00a7a68a11d2e1))
@@ -1220,9 +925,32 @@ All notable changes to this project will be documented in this file.
1220
925
  - fix ruff format line length in redis.py ([0a5400a](https://github.com/BlazeUp-AI/Observal/commit/0a5400a57073fd944072ba47902c76ba29095c06))
1221
926
  - convert f-string logs to structured keyword arguments ([33e49b3](https://github.com/BlazeUp-AI/Observal/commit/33e49b36b32bb8086cbd40ab6c8a61daca8b02ba))
1222
927
  - fix ruff formatting in admin routes and clickhouse service ([b57c9fa](https://github.com/BlazeUp-AI/Observal/commit/b57c9fa64ff4462a32a21d8bae2fe81c9e0b4813))
928
+ - fix ruff lint and formatting in client.py (**cli**) ([ab5935c](https://github.com/BlazeUp-AI/Observal/commit/ab5935c0e6240103527df084394ff80dae82fd01))
929
+ - format review.py for ruff ([f2c68fe](https://github.com/BlazeUp-AI/Observal/commit/f2c68fe4ac0fa704871098f5de093435c99179e7))
930
+ - fix ruff formatting in route and CLI files ([55b5f2b](https://github.com/BlazeUp-AI/Observal/commit/55b5f2baf96dbcd52a1789496818bcceab25e436))
931
+ - format test_docker_detection.py for ruff ([e6f5d11](https://github.com/BlazeUp-AI/Observal/commit/e6f5d1106361475c25271bd51715b68d02770e99))
932
+ - fix ruff format violations in agent_config_generator and cmd_pull ([7128f79](https://github.com/BlazeUp-AI/Observal/commit/7128f79625f5339dd568a4cdfbd6ab956cf47b90))
933
+ - apply ruff format to test_eval_phase8.py ([edce7e6](https://github.com/BlazeUp-AI/Observal/commit/edce7e6957d49fded1238426e0ef3401cd2669af))
934
+ - apply ruff format to changed files ([e9967d8](https://github.com/BlazeUp-AI/Observal/commit/e9967d83d484a0c47a3900885352988069fc3dc7))
935
+ - move eval services and tests into subpackages (**eval**) ([82b935a](https://github.com/BlazeUp-AI/Observal/commit/82b935aaaab5ff345fb63f8b528d74477ebcdcdf))
1223
936
 
1224
937
  ### Documentation
1225
938
 
939
+ - update quick start with curl-install and move license to bottom ([d1b4dfa](https://github.com/BlazeUp-AI/Observal/commit/d1b4dfa2f07f645111086d5b957d9b8ed3e1a9d3))
940
+ - fix support bundle docs to match implementation ([5ace152](https://github.com/BlazeUp-AI/Observal/commit/5ace1528505828edd2b5d75116fe1c6222d33996))
941
+ - add CLI reference for support bundle commands ([59c661e](https://github.com/BlazeUp-AI/Observal/commit/59c661e206b75acac76d2fde576606e97ee45081))
942
+ - move AnkiDroid callout before ToC and expand attribution note ([0c890be](https://github.com/BlazeUp-AI/Observal/commit/0c890be4f1f419b0c21e69f22a711f48a9a69e70))
943
+ - add CLA and update CONTRIBUTING.md ([b9e7ae8](https://github.com/BlazeUp-AI/Observal/commit/b9e7ae8934a98f3157d88b842ee8671f4eaf20aa))
944
+ - update docs link, CLI examples, and fix self-hosting diagram ([c9dcb78](https://github.com/BlazeUp-AI/Observal/commit/c9dcb78526a80032b29e37e3e74d747d8c856992))
945
+ - add CLI reference for observal migrate commands ([ad9c1c2](https://github.com/BlazeUp-AI/Observal/commit/ad9c1c2f4a3f2efa9f85d11e555314ff9c31e440))
946
+ - overhaul README, SETUP, AGENTS, add screenshots, drop e2e artifacts ([ca435f5](https://github.com/BlazeUp-AI/Observal/commit/ca435f5df8eb061899c2c4c31727a2bc1e25bb5a))
947
+ - add Insights V2 roadmap tracking progress across 5 phases ([fe037d5](https://github.com/BlazeUp-AI/Observal/commit/fe037d5c616e7215a135aa2fe4d148e2b93ab6a1))
948
+ - update AGENTS.md with new routes, services, and components ([dc5f1aa](https://github.com/BlazeUp-AI/Observal/commit/dc5f1aa1a48cc705d18b91e3159bc2a3de2be7a2))
949
+ - update e2e checklist with versioning, editing, and trace toggle tests ([c72c9d3](https://github.com/BlazeUp-AI/Observal/commit/c72c9d31312f70d70970611c8bc86e6c25f81479))
950
+ - add screenshots for agent edit form PR ([7860394](https://github.com/BlazeUp-AI/Observal/commit/786039462ee8ffa626c461040e2066967869df6b))
951
+ - update stale docstring references to claude_code_spec ([e00e193](https://github.com/BlazeUp-AI/Observal/commit/e00e1930240eddabf2a9e583e59c0eda3f378434))
952
+ - update for single-endpoint architecture ([861a3cf](https://github.com/BlazeUp-AI/Observal/commit/861a3cf6fc1cf060e1c92a69c8ea08ded3295ef4))
953
+ - add copilot-cli integration guide ([c459254](https://github.com/BlazeUp-AI/Observal/commit/c459254ee837e396e9d8dc3a9fc8b3c40d7c4cb6))
1226
954
  - update integration docs for hook bridge (**gemini**) ([a2d7d9a](https://github.com/BlazeUp-AI/Observal/commit/a2d7d9a6b5a84bd2bedebcdefe6e60e866fc6be6))
1227
955
  - add enterprise E2E test checklist ([4ba96ba](https://github.com/BlazeUp-AI/Observal/commit/4ba96ba0bd297e8dfbd0742c8bdcec7855c1b51b))
1228
956
  - switch Docker callouts from [!IMPORTANT] to [!NOTE] ([087f66c](https://github.com/BlazeUp-AI/Observal/commit/087f66cffc4f473c56c9cdadca364ee1529c3110))
@@ -1242,9 +970,238 @@ All notable changes to this project will be documented in this file.
1242
970
  - update CLI reference, README, and changelog for multi-IDE support ([27343ac](https://github.com/BlazeUp-AI/Observal/commit/27343acbb5d1593be2aefb78d92b301c70dc62d1))
1243
971
  - add screenshots for review queue features (#449) ([995eef4](https://github.com/BlazeUp-AI/Observal/commit/995eef4dd94c14f7e3aa602d0bce9d5a05c61430))
1244
972
  - add self-observability documentation ([fd6413c](https://github.com/BlazeUp-AI/Observal/commit/fd6413c6b25a523730ec6bc78d32fbcb5c3b4818))
973
+ - add design spec for agent unarchive feature (#396) ([4cf0bf1](https://github.com/BlazeUp-AI/Observal/commit/4cf0bf1ae5c2d1db21782f683b8310f1e4c07ce3))
974
+ - add IDE support tiers, remove telemetry hook refs from docs ([fdb3b41](https://github.com/BlazeUp-AI/Observal/commit/fdb3b413fb4556a0cbb0ff8f4e48864dc7f9f570))
975
+ - add IDE support tiers, remove hook references from docs ([336018f](https://github.com/BlazeUp-AI/Observal/commit/336018f733ba464250d56bea84b6fe95c96fa0c7))
976
+ - add eval subsystem reference (docs/eval.md) ([739fe03](https://github.com/BlazeUp-AI/Observal/commit/739fe03fb2f979e24bdd12e359f0e4cf3c2cdbcd))
977
+ - add READMEs for observal-server, ee, tests, and observal_cli ([9c39e49](https://github.com/BlazeUp-AI/Observal/commit/9c39e491bf6de42cca00d7a41730ec52902811e7))
978
+ - replace boilerplate README with frontend reference (**web**) ([31eed93](https://github.com/BlazeUp-AI/Observal/commit/31eed93a2c55e4e4cd6cbab3efe2476d0bf6bc90))
1245
979
 
1246
980
  ### Fixed
1247
981
 
982
+ - correct sentinel timestamp causing broken duration/started columns (**traces**) ([56733af](https://github.com/BlazeUp-AI/Observal/commit/56733af5d0ed0361eea48baa7273158625c521e1))
983
+ - stub page and hide from sidebar pending rework (**errors**) ([7ccf37b](https://github.com/BlazeUp-AI/Observal/commit/7ccf37b57d84e05a2efac59cf9b52d99345f142d))
984
+ - replace import-based detection with INSIGHTS_AVAILABLE env flag (**insights**) ([d822993](https://github.com/BlazeUp-AI/Observal/commit/d82299371690c6cec3d214cbef09da6fb14fbc34))
985
+ - resolve pre-commit and pre-push hook failures ([236f9c1](https://github.com/BlazeUp-AI/Observal/commit/236f9c1081d337fd7b5a2de16d6d74ecbbbefea8))
986
+ - wire token counts and correct duration in session list ([7719683](https://github.com/BlazeUp-AI/Observal/commit/7719683887a0d2573ee0783f46a9b3860671f1c1))
987
+ - use sessionStorage for access token in loginToWebUI helper (**e2e**) ([4d39d12](https://github.com/BlazeUp-AI/Observal/commit/4d39d12148611f478ba7108ee76e9487bbe98588))
988
+ - replace nonexistent observal-hook.sh with session_push.py (**hooks**) ([77014e6](https://github.com/BlazeUp-AI/Observal/commit/77014e61ddf3207400ed1305bd5e88b2ace5a1e3))
989
+ - stop enterprise compose file from overriding DEPLOYMENT_MODE ([08e317d](https://github.com/BlazeUp-AI/Observal/commit/08e317d00bb73c6166faaf754b5bae5050e890bc))
990
+ - login page respects ?next= param after authentication ([0acca4b](https://github.com/BlazeUp-AI/Observal/commit/0acca4b2aef48136b845d240b1015d7c8f3d995c))
991
+ - migrate JWT signing from HS256 to ES256 (**security**) ([e562524](https://github.com/BlazeUp-AI/Observal/commit/e56252495d9e6297ca29dfc3064032ad77f0d93d))
992
+ - user-level token revocation and Redis fail-closed auth (**security**) ([899fa0c](https://github.com/BlazeUp-AI/Observal/commit/899fa0c910086f93754c8e69dac4f098ef4c476a))
993
+ - update remaining localStorage reads to sessionStorage for access token ([71feea2](https://github.com/BlazeUp-AI/Observal/commit/71feea2e2ff2fe3f082dd9060088792f39760d31))
994
+ - enforce org ownership on component source routes (**security**) ([2f9dbcb](https://github.com/BlazeUp-AI/Observal/commit/2f9dbcb97c7c50e7bf51b0fa819b1a1334c01323))
995
+ - scope admin dashboard and telemetry queries to requesting user's org (**security**) ([afe13b1](https://github.com/BlazeUp-AI/Observal/commit/afe13b16a3760c851fe24aeb9b7cd8e951e67c5d))
996
+ - private agents not visible to anonymous callers in local mode (**security**) ([78d465f](https://github.com/BlazeUp-AI/Observal/commit/78d465f52c0dc2c137628de0497301af14b9f7b9))
997
+ - scope private registry listings to owner org (**security**) ([af993b0](https://github.com/BlazeUp-AI/Observal/commit/af993b04dca6db3fe8e60b21165bdf10e5dc1021))
998
+ - require authentication on GraphQL telemetry endpoint (**security**) ([ed65c9e](https://github.com/BlazeUp-AI/Observal/commit/ed65c9eda6d4dbe188747123f4a6b78354c1c72c))
999
+ - block startup with weak SECRET_KEY, warn on insecure defaults in settings (**security**) ([a22ec35](https://github.com/BlazeUp-AI/Observal/commit/a22ec35d325082bb1966d6f367624003448515f6))
1000
+ - enforce password strength on account creation and change (OBSV-SEC-006) (**security**) ([cc65f9f](https://github.com/BlazeUp-AI/Observal/commit/cc65f9f0f33e73664672c61820071b96b256da71))
1001
+ - add 'unsafe-inline' to CSP script-src for Next.js hydration ([15dcaf8](https://github.com/BlazeUp-AI/Observal/commit/15dcaf8e183c7c4a5d68523864c6d23ec1c3082f))
1002
+ - hide OpenAPI docs and metrics endpoints by default (OBSV-SEC-015) (**security**) ([c338b88](https://github.com/BlazeUp-AI/Observal/commit/c338b88f8e43cbdc91de07f846f06710496d3c80))
1003
+ - require approved status for agent install, validate MCP commands (OBSV-SEC-027) (**security**) ([5b6a3a0](https://github.com/BlazeUp-AI/Observal/commit/5b6a3a0852c277dc5eeb9dc4838203b2e40a9247))
1004
+ - block password lifecycle routes in SSO-only mode (OBSV-SEC-028) (**security**) ([298cc09](https://github.com/BlazeUp-AI/Observal/commit/298cc090c60a11bd9a97f5b1b9428760f51e2265))
1005
+ - rate limiting only trusts XFF from configured trusted proxies (OBSV-SEC-003) (**security**) ([1b9f087](https://github.com/BlazeUp-AI/Observal/commit/1b9f08741256a98dca7499a3ca3fad1e79b750c9))
1006
+ - address PR review feedback ([007e05c](https://github.com/BlazeUp-AI/Observal/commit/007e05cc626c46c8bd0d16542487d5635178eca4))
1007
+ - add SPDX header and suppress bandit false positive (**ci**) ([a2efe47](https://github.com/BlazeUp-AI/Observal/commit/a2efe476cb1b8f837f10a7ac03ac4b543657da41))
1008
+ - renumber insight migration 0004 -> 0005 (**alembic**) ([050a8c2](https://github.com/BlazeUp-AI/Observal/commit/050a8c24ee63c3b5e8b80088bb13287fafcd4dc2))
1009
+ - CSP middleware and access token in sessionStorage (OBSV-SEC-025) (**security**) ([1040029](https://github.com/BlazeUp-AI/Observal/commit/10400295015f6a398e60901bb98bf2e7d34dbaa4))
1010
+ - harden EC2 bootstrap script (OBSV-SEC-020) (**security**) ([d230bf0](https://github.com/BlazeUp-AI/Observal/commit/d230bf081b281be00e506d1c0629d47369968915))
1011
+ - block operational paths at ALB by default (OBSV-SEC-018) (**security**) ([0b35ccf](https://github.com/BlazeUp-AI/Observal/commit/0b35ccfae02fbc7b94dc4a0c30a6411e2b92b455))
1012
+ - block operational metadata paths in nginx (OBSV-SEC-017) (**security**) ([4a430ab](https://github.com/BlazeUp-AI/Observal/commit/4a430ab80e2a0f24b228b6636d95a3dce70b7baf))
1013
+ - centralise SSRF guard for webhooks, git clone, MCP analysis (OBSV-SEC-012/013/014) (**security**) ([b78dc96](https://github.com/BlazeUp-AI/Observal/commit/b78dc96b4fc11b0260445c82081567497c87100a))
1014
+ - allow MCP config fields in version extras validation (**api**) ([831a0d1](https://github.com/BlazeUp-AI/Observal/commit/831a0d14624545a14dbb2bc4bc9b6686f8039662))
1015
+ - emit JSON-RPC error notification on MCP startup failure (**shim**) ([4b64b5e](https://github.com/BlazeUp-AI/Observal/commit/4b64b5e18eff18627f24049657fec040ddea757c))
1016
+ - bind stateful services to loopback in Docker Compose (OBSV-SEC-016) (**security**) ([6dbcfac](https://github.com/BlazeUp-AI/Observal/commit/6dbcfac2ad69af80ec69e3c4ea32c9ee0d69c694))
1017
+ - include auth identity in cache key to prevent cross-user hits (OBSV-SEC-023) (**security**) ([cd3acf6](https://github.com/BlazeUp-AI/Observal/commit/cd3acf6a8e131f9e9f5fb06d213ce0adf6e8c5b6))
1018
+ - redact secrets from support log collector output (OBSV-SEC-022) (**security**) ([7a27288](https://github.com/BlazeUp-AI/Observal/commit/7a27288102be0fe34be25418d4329257467f8abc))
1019
+ - redact secrets before sending content to LLM providers (OBSV-SEC-021) (**security**) ([19ac039](https://github.com/BlazeUp-AI/Observal/commit/19ac0397d2c222ab760329b01eefdddac6c712c2))
1020
+ - require auth on telemetry reconcile endpoint (OBSV-SEC-011) (**security**) ([9f275df](https://github.com/BlazeUp-AI/Observal/commit/9f275df2cc66224b2560e26fa4b5ab5972f3adab))
1021
+ - restrict support diagnostics to admin role (OBSV-SEC-008) (**security**) ([4ed0883](https://github.com/BlazeUp-AI/Observal/commit/4ed08833c822aad9c97c6a1e5a2349328f73effd))
1022
+ - apply execution time floor to every ClickHouse query (OBSV-SEC-026) (**security**) ([b1d80bd](https://github.com/BlazeUp-AI/Observal/commit/b1d80bd657b16f1a80850380d2168e20ec910d37))
1023
+ - validate session IDs before SQL interpolation in shim enrichment (**security**) ([66ca3d0](https://github.com/BlazeUp-AI/Observal/commit/66ca3d02439e845d028d59c4e7d5d5799babed6d))
1024
+ - use FINAL instead of GROUP BY for session_stats_agg (**server**) ([ce8069b](https://github.com/BlazeUp-AI/Observal/commit/ce8069bea89238b2471e6018c1dbe13fa0aece65))
1025
+ - default to ~/.observal on macOS for Docker compatibility (**deploy**) ([119aed3](https://github.com/BlazeUp-AI/Observal/commit/119aed3127ee4847ce146785816386656feb87ee))
1026
+ - add OBSERVAL_FORCE=1 to skip overwrite prompt (**deploy**) ([9910a94](https://github.com/BlazeUp-AI/Observal/commit/9910a94a353a2ecdf654f6842cb5478eb5d99563))
1027
+ - read from /dev/tty so curl|bash works interactively (**deploy**) ([4bc203b](https://github.com/BlazeUp-AI/Observal/commit/4bc203bbaf4b0b16f46078700e0783098ae2b103))
1028
+ - preserve SPDX headers in generated changelog (**compliance**) ([636a359](https://github.com/BlazeUp-AI/Observal/commit/636a359b3fafb4d4cd17223f3bc8220937f10a1d))
1029
+ - improve setup.sh post-install output (**deploy**) ([6884923](https://github.com/BlazeUp-AI/Observal/commit/6884923078e1647b0f12735f2e43b291c41c8270))
1030
+ - add SPDX copyright headers to support.md (**compliance**) ([6c358bd](https://github.com/BlazeUp-AI/Observal/commit/6c358bdb58654f9f8b179fa27ffed8e062e79fe0))
1031
+ - resolve CircularDependencyError in review approve endpoint ([a17b435](https://github.com/BlazeUp-AI/Observal/commit/a17b435a5aa42a08da8681747e3da47f1ef0deb6))
1032
+ - wrap SPDX string in REUSE-Ignore to fix reuse-lint (**ci**) ([cef600f](https://github.com/BlazeUp-AI/Observal/commit/cef600ffaec97a10b82ca22bbcb3faa13a513d26))
1033
+ - move coverage config to observal-server/pyproject.toml (**ci**) ([9ef4f1c](https://github.com/BlazeUp-AI/Observal/commit/9ef4f1cf985c21c17b86c57c30209ec512732b9e))
1034
+ - add version tables to INSERT_ORDER and disable FK checks during import ([9943142](https://github.com/BlazeUp-AI/Observal/commit/9943142224970e0b196c2b3c1c77b36070faab91))
1035
+ - remove unused import and fix license-policy formatting (**ci**) ([b76831d](https://github.com/BlazeUp-AI/Observal/commit/b76831dbccf075d29f2682cb86a9e569066e36e5))
1036
+ - replace magic values with named constants in deps.py (**lint**) ([f7ff034](https://github.com/BlazeUp-AI/Observal/commit/f7ff0349ad726a221702218271c43837ff2537f5))
1037
+ - resolve SimpleAggregateFunction query errors in session_stats_agg (**clickhouse**) ([b6bdd99](https://github.com/BlazeUp-AI/Observal/commit/b6bdd99fc907157ea1841c368996de3087f71ddf))
1038
+ - update postgres volume mount for v18 compatibility (**docker**) ([93c0600](https://github.com/BlazeUp-AI/Observal/commit/93c060078f3eb3234b21d24278f807ce9619a2ff))
1039
+ - trigger EC2 deploy on push to main instead of tags (**deploy**) ([6cda8b1](https://github.com/BlazeUp-AI/Observal/commit/6cda8b18250a3b8eb719c2f64d73a847f19fc2da))
1040
+ - trigger EC2 deploy on push to main instead of tags (**deploy**) ([cb7bae4](https://github.com/BlazeUp-AI/Observal/commit/cb7bae4963ea3b3654417c62f666447225213679))
1041
+ - replace all Apache 2.0 references with AGPL-3.0 ([66abe34](https://github.com/BlazeUp-AI/Observal/commit/66abe34ddb19d779eeb75174aa7038192f60105b))
1042
+ - update redis image assertion to 8-alpine (**tests**) ([7da9551](https://github.com/BlazeUp-AI/Observal/commit/7da955197387f74d2fbedc3fcdf57f24c844eabc))
1043
+ - capture post-Stop tail lines via delayed flush subprocess (**cli**) ([357fdee](https://github.com/BlazeUp-AI/Observal/commit/357fdeeb356784242097f95b6b3713cf4d99f64c))
1044
+ - exclude subagent sessions from top-level list (**sessions**) ([ac0052c](https://github.com/BlazeUp-AI/Observal/commit/ac0052c8d3b54ed4b90bee2ab7d823eace3469f3))
1045
+ - auto-refresh expired tokens in session_push hook (**cli**) ([6ba62cd](https://github.com/BlazeUp-AI/Observal/commit/6ba62cdb6e214166c9b86fa7d9c6e727beae23a7))
1046
+ - resolve ClickHouse ILLEGAL_AGGREGATION in session query (**insights**) ([d9e72aa](https://github.com/BlazeUp-AI/Observal/commit/d9e72aa466684fde340e0dfa50c9dfa974ea0fec))
1047
+ - ruff fixes in ee/observal_insights (**lint**) ([39da878](https://github.com/BlazeUp-AI/Observal/commit/39da8782b4f5f3ed3b03f68ad51be65118ee1825))
1048
+ - use cursor offset not ctime for pulled_at guard (**attribution**) ([afcfccc](https://github.com/BlazeUp-AI/Observal/commit/afcfcccce06c29469780b4e1b2d5b52c890a7964))
1049
+ - remove unused imports, use datetime.UTC alias (**lint**) ([05db9db](https://github.com/BlazeUp-AI/Observal/commit/05db9db96e228bb73fbbcc3658c89f8b1603a10c))
1050
+ - renumber meta_cache migration to 0003 (**migration**) ([2dd2e2a](https://github.com/BlazeUp-AI/Observal/commit/2dd2e2a182b4d22987d7ca1c89c5e4e736db0459))
1051
+ - prevent session leak via pulled_at timestamp (**attribution**) ([77e7ce8](https://github.com/BlazeUp-AI/Observal/commit/77e7ce89569f0872e73e86932acab824b9c483e3))
1052
+ - update web frontend (minor/patch) (#779) (**deps**) ([a9b3722](https://github.com/BlazeUp-AI/Observal/commit/a9b37224e053836b86bf8f480b429f0e782ec5f3))
1053
+ - include per-IDE model overrides in agent snapshot and pull flow ([a048910](https://github.com/BlazeUp-AI/Observal/commit/a048910ee18d8998b68e2a19e4db321e91a7628a))
1054
+ - use 2099 sentinel timestamp for kiro_credits row (**kiro**) ([5804c15](https://github.com/BlazeUp-AI/Observal/commit/5804c1500250771cbf793d757a3d6be075c88e57))
1055
+ - proper Callable type for _EXTRA_ROWS_HANDLERS (**types**) ([959ca3b](https://github.com/BlazeUp-AI/Observal/commit/959ca3be3789dc0a2293c27a6f9d6fbdefa7edbd))
1056
+ - store credits even when Stop has no new JSONL lines (**kiro**) ([b9d8284](https://github.com/BlazeUp-AI/Observal/commit/b9d8284bc6edd3636bfd8d5117ba7822028db949))
1057
+ - fix credits not being sent on Stop hook (**kiro**) ([75597f0](https://github.com/BlazeUp-AI/Observal/commit/75597f0af0ccb0003a7bc94ea50f37b216f1bf1a))
1058
+ - remove stale CLI usage docstring (**reconcile**) ([27bbd66](https://github.com/BlazeUp-AI/Observal/commit/27bbd66d9734a2cab66fefd777cdcfa424505b33))
1059
+ - restore --hook/--shim/--all flags and shim helpers (**doctor**) ([fdfc0b8](https://github.com/BlazeUp-AI/Observal/commit/fdfc0b89738486f475275c040453772890a3874e))
1060
+ - replace --all with --hook in doctor patch calls (**auth**) ([3ba67dd](https://github.com/BlazeUp-AI/Observal/commit/3ba67dde79e44f5b2a69c063a162bd978299fab2))
1061
+ - fix ruff unused imports, remove stale telemetry tests (**lint+tests**) ([34e4b16](https://github.com/BlazeUp-AI/Observal/commit/34e4b1617c1c49cf9c1dad92666c4659d394f723))
1062
+ - remove Active Hooks section + sentinel-safe stats (**traces**) ([f1341ff](https://github.com/BlazeUp-AI/Observal/commit/f1341ff0ef83463c6e9de8c33b01c00df485ac02))
1063
+ - sentinel-safe first timestamp in trace title/breadcrumb (**ui**) ([1067087](https://github.com/BlazeUp-AI/Observal/commit/10670878041545087a3bd380adcc3174b2256456))
1064
+ - filter kiro_credits events + unify token accumulation (**traces**) ([5f0fc42](https://github.com/BlazeUp-AI/Observal/commit/5f0fc427dd612c9c520f8fa7a6a2ef670e6cec5a))
1065
+ - add session_parser key to CLI ide_registry mirror (**ingest**) ([e07a4ba](https://github.com/BlazeUp-AI/Observal/commit/e07a4ba93abcec5bb4b7050f05ab2c39f34405c6))
1066
+ - apply ruff formatting to hook submit (**cli**) ([ebe53f1](https://github.com/BlazeUp-AI/Observal/commit/ebe53f108b097d703bcb8487049bc38ee009df33))
1067
+ - handle invalid JSON in `hook submit` handler config prompt (**cli**) ([7b2469e](https://github.com/BlazeUp-AI/Observal/commit/7b2469eb2b8c5f88ad38c3944f8165762682576e))
1068
+ - auto-populate Owner field in all submit forms (**registry**) ([1700c63](https://github.com/BlazeUp-AI/Observal/commit/1700c63f3790c9229954a2a95af488508c21057c))
1069
+ - display rate limit error properly on login page (**web**) ([c632ad6](https://github.com/BlazeUp-AI/Observal/commit/c632ad67ba7db05c7342dfdf786adb7ce9f71e3c))
1070
+ - remove session ID from all user-facing views (**ui**) ([38ab52b](https://github.com/BlazeUp-AI/Observal/commit/38ab52bd8cba0b1445837955d73e7eea00a9af87))
1071
+ - full screen utilization and flex wrap issues (**insights**) ([caae785](https://github.com/BlazeUp-AI/Observal/commit/caae7858ae042d6e4f1e51b906804f335d7c368b))
1072
+ - remove dead metrics endpoints and legacy telemetry tables (**dashboard**) ([27cb6a8](https://github.com/BlazeUp-AI/Observal/commit/27cb6a8bd6793220278427d2da4ba496ae52e081))
1073
+ - pin pnpm@10 to fix ERR_PNPM_IGNORED_BUILDS in CI (**docker**) ([2313e19](https://github.com/BlazeUp-AI/Observal/commit/2313e19565a1d48bf191a7282f4eba3c0261183d))
1074
+ - resolve lint, import-boundary, and docker-build failures (**ci**) ([1850779](https://github.com/BlazeUp-AI/Observal/commit/1850779482589b1debe4c180b166a2fef0bc1af4))
1075
+ - align session_cache and facets with actual DB schema (**insights**) ([eeef3fa](https://github.com/BlazeUp-AI/Observal/commit/eeef3faa1ed86d6aa43f99ab4a0e8a3ce5dfc86c))
1076
+ - add TTL retention for system logs to prevent OOM (**clickhouse**) ([2224992](https://github.com/BlazeUp-AI/Observal/commit/22249920659e416b91a854283b5fc7bf89bd08e8))
1077
+ - docs & add bootstrap ([5feb50e](https://github.com/BlazeUp-AI/Observal/commit/5feb50e225d575a388efea49f70f0661ca7f0a31))
1078
+ - remove unused locals flagged by tflint (**infra**) ([11239fa](https://github.com/BlazeUp-AI/Observal/commit/11239fa7c377a65d0a8cc4ba695364334f189821))
1079
+ - resolve lint, format, and test failures (**ci**) ([dc0a89e](https://github.com/BlazeUp-AI/Observal/commit/dc0a89ed3e5e9c642a951b8a2c5360fc13256d45))
1080
+ - restore trace_dedup module needed for session detail view (**sessions**) ([28095bc](https://github.com/BlazeUp-AI/Observal/commit/28095bcfa6b4db739aa2ac800410be491b56dad2))
1081
+ - call configure_insights() on worker startup (**worker**) ([8a59c3d](https://github.com/BlazeUp-AI/Observal/commit/8a59c3d189e84ace7eeaf1c5e8268558627b0315))
1082
+ - strip insights source post-install instead of pre-build (**docker**) ([b47578b](https://github.com/BlazeUp-AI/Observal/commit/b47578b1db05d5b42747591d73ee162e4e0a176b))
1083
+ - sum credits in sessions list instead of picking arbitrary value ([8df012d](https://github.com/BlazeUp-AI/Observal/commit/8df012d0786672a91788645f5d4ba9c87ce12fb3))
1084
+ - read credits from Kiro session files instead of SQLite ([fbd6678](https://github.com/BlazeUp-AI/Observal/commit/fbd6678bfff0d2bb32f2a9e809fbfe50e47a8a34))
1085
+ - use absolute Python path in Kiro hook commands ([38ef120](https://github.com/BlazeUp-AI/Observal/commit/38ef1202ac4500cff0475b4df0b2f6ccda57a8ea))
1086
+ - show prompt count fallback and rewrite hook python paths (**kiro**) ([e32c48e](https://github.com/BlazeUp-AI/Observal/commit/e32c48e4227ef08757c1d4e58250eba732cdeadb))
1087
+ - persist session_id between Kiro hooks and add debug logging (**hooks**) ([f9c1c28](https://github.com/BlazeUp-AI/Observal/commit/f9c1c284e1a5b5c7c1ba5ff75781cbb84c09fdc9))
1088
+ - allow super_admin to manage agents regardless of org_id (**agents**) ([0be9d76](https://github.com/BlazeUp-AI/Observal/commit/0be9d76196fe20d2693790654e935081191f4ec6))
1089
+ - set owner_org_id and public visibility on bulk-create (**agents**) ([29222c9](https://github.com/BlazeUp-AI/Observal/commit/29222c9b96d75649948a958a14dc3e85888b6eb4))
1090
+ - correct setup steps — use doctor patch, remove local server section (**docs**) ([9de5581](https://github.com/BlazeUp-AI/Observal/commit/9de55819751e3169dc26ab99463a393d4c1c0182))
1091
+ - use short summary in skill file YAML frontmatter (**skills**) ([3819631](https://github.com/BlazeUp-AI/Observal/commit/38196310bcde75ec22d7f18c2432327f0bab02a6))
1092
+ - remove AWS env var overrides that clobber .env credentials (**docker**) ([17f3fbb](https://github.com/BlazeUp-AI/Observal/commit/17f3fbb01178f0e0006ce07b7196c41346a31a87))
1093
+ - derive component downloads from agent installs (#736) (**leaderboard**) ([823dd77](https://github.com/BlazeUp-AI/Observal/commit/823dd77e0c4ba8586cc05d81a5226038da0cf12c))
1094
+ - hide notifications stub from account settings (**web**) ([2a11947](https://github.com/BlazeUp-AI/Observal/commit/2a119473220919bb9fa9558757bb160170bb44a3))
1095
+ - flush version changes before updating latest_version_id (**review**) ([0a7253d](https://github.com/BlazeUp-AI/Observal/commit/0a7253dc81fe2d31e5f000568fe5596f21726a40))
1096
+ - update web frontend (minor/patch) (#576) (**deps**) ([ce578e4](https://github.com/BlazeUp-AI/Observal/commit/ce578e410bb549f12f816316b205b3327d83a251))
1097
+ - use persistent SSL config so merges stop breaking HTTPS (**deploy**) ([9f50890](https://github.com/BlazeUp-AI/Observal/commit/9f5089049bde8e0ee2840edaf2246dd7eb393840))
1098
+ - version-aware component review queue, detail, and actions (**review**) ([a4aef71](https://github.com/BlazeUp-AI/Observal/commit/a4aef7174a9975b6a4ad6a726cab83ab86d298fa))
1099
+ - inject prompt component templates into generated rules files (**agent-install**) ([c5114b8](https://github.com/BlazeUp-AI/Observal/commit/c5114b8e5155173c5912622dbb05e96da28c6ff0))
1100
+ - only infer frontend URL behind TLS proxy, not local nginx (**api**) ([e82be65](https://github.com/BlazeUp-AI/Observal/commit/e82be65634c34e67ac5d13d31a3b26a983a8190f))
1101
+ - only owners and co-maintainers can edit their agents (**agent-edit**) ([45fbf1a](https://github.com/BlazeUp-AI/Observal/commit/45fbf1ab1e56e2afe0764ab0505617d4f36dd33d))
1102
+ - allow admins to release versions, save draft as new version (**agent-edit**) ([78d2878](https://github.com/BlazeUp-AI/Observal/commit/78d28789d4b2166199a6a07b9b0c207f310f6c0d))
1103
+ - derive device auth verification URL from request headers (**api**) ([2d7373a](https://github.com/BlazeUp-AI/Observal/commit/2d7373a2b9415887ea0a942fa1a6388dd1dbcb66))
1104
+ - fix empty component board, TS build, sandbox type (**leaderboard+feedback**) ([1c7a719](https://github.com/BlazeUp-AI/Observal/commit/1c7a71910cba612b6697b625049f72cf5432b89c))
1105
+ - remove f-string without placeholder, use ternary (**lint**) ([31c5898](https://github.com/BlazeUp-AI/Observal/commit/31c5898234519e9d7a6f6e9532f9f1c01996d299))
1106
+ - materialize hook components into Kiro agent configs (**hooks**) ([8d3508e](https://github.com/BlazeUp-AI/Observal/commit/8d3508e3585dcbe30dd073697f683e419a4b6799))
1107
+ - allow regular users to unarchive their own agents (**agents**) ([04adb4e](https://github.com/BlazeUp-AI/Observal/commit/04adb4e1d31e3833cc33ecea34ee6302fe11e9c6))
1108
+ - allow unarchive/delete to find non-approved agents (**agents**) ([4915a9c](https://github.com/BlazeUp-AI/Observal/commit/4915a9c1175ea1a4c23ac269019b831acd4252da))
1109
+ - write skill files to disk during agent pull (**cli**) ([f848842](https://github.com/BlazeUp-AI/Observal/commit/f84884288462d3c5319b5ecabad0023980f3b131))
1110
+ - grant same-org users view access to all org agents (**agents**) ([0c6e808](https://github.com/BlazeUp-AI/Observal/commit/0c6e808df9b58da305cf5a6b9a28f88d90212fb9))
1111
+ - allow same-org users to see all org agents (**agents**) ([43b5132](https://github.com/BlazeUp-AI/Observal/commit/43b51329e0a731e48f4068cbee0c582fffa24862))
1112
+ - wire hook components into agent config generation (**agents**) ([a738e39](https://github.com/BlazeUp-AI/Observal/commit/a738e39d0af6a3a5eb817e4d5c695bc15bb94b6c))
1113
+ - use posix paths for hook scripts on Windows (**cli**) ([13f5228](https://github.com/BlazeUp-AI/Observal/commit/13f5228f8de72ccf58aad80294e75a0591413ede))
1114
+ - rename "My Submissions" to "Drafts" on agents page (**web**) ([7b69959](https://github.com/BlazeUp-AI/Observal/commit/7b699599ac9c3d12e40ee52ba4e3fdd47b0625f6))
1115
+ - prevent archiving non-approved agents, show archived in my agents (**agents**) ([6fd60fd](https://github.com/BlazeUp-AI/Observal/commit/6fd60fdaafd0dfa54439de5fc2c60f823aeaa1b8))
1116
+ - allow null git_url in manifest export (**agents**) ([8c97332](https://github.com/BlazeUp-AI/Observal/commit/8c97332830ef9e94596705d631f6ad46a9a165b9))
1117
+ - exclude archived agents from pending review count (**web**) ([228f6ad](https://github.com/BlazeUp-AI/Observal/commit/228f6ad25aaef54a0dedb0573e0ee1f2608ba970))
1118
+ - resolve_listing status filter joins through version table (**registry**) ([8ad9f4d](https://github.com/BlazeUp-AI/Observal/commit/8ad9f4d810dfb50f8d643abd60a5b78fe8e66f19))
1119
+ - handle Unicode output on Windows cp1252 consoles (**cli**) ([05181f6](https://github.com/BlazeUp-AI/Observal/commit/05181f6d2176c28abbfb1c210dc0aa709108184a))
1120
+ - use explicit SQL update for archive/unarchive status (**agents**) ([198ad36](https://github.com/BlazeUp-AI/Observal/commit/198ad36cc0dcbe465d4d466c6dcb634fa4c02544))
1121
+ - default visibility to public in local deployment mode (**agents**) ([e380f2c](https://github.com/BlazeUp-AI/Observal/commit/e380f2c52a4e8591819d43ea5381674f905c9537))
1122
+ - resolve duplicate Alembic revision 0023 causing deploy failure (**db**) ([d99ec31](https://github.com/BlazeUp-AI/Observal/commit/d99ec31fca620e314b53af9888fb568444f25aac))
1123
+ - remove max-width constraint and add min-w-0 for flex scaling (**web**) ([b7c4ef3](https://github.com/BlazeUp-AI/Observal/commit/b7c4ef3c8131d3d061f314a0378226a121b35f59))
1124
+ - set edit-lock fields on agent mock to prevent TypeError (**tests**) ([22a2a93](https://github.com/BlazeUp-AI/Observal/commit/22a2a930d8ad8d678b3d79d172b5664a4581fc25))
1125
+ - harden edit lock concurrency and review correctness (**api,cli,web**) ([eb9cd6a](https://github.com/BlazeUp-AI/Observal/commit/eb9cd6a3512eee3cea1186aabb6fadd96fb5d57c))
1126
+ - resolve lint errors and test failures from edit lock feature (**api**) ([f335927](https://github.com/BlazeUp-AI/Observal/commit/f335927afec215098deccfbb462292fc3961d826))
1127
+ - harden edit lock, review approve/reject, and error handling (#663) (**api,web**) ([3b80fae](https://github.com/BlazeUp-AI/Observal/commit/3b80faeef04283c57852960ccd7e4a1ff691c5f2))
1128
+ - harden component version validation (**api**) ([3412812](https://github.com/BlazeUp-AI/Observal/commit/341281257781b666ac93c1f2cdaa96d2a4eca303))
1129
+ - update e2e assertions for new hook_bridge features and agent paths (**tests**) ([e0ff08e](https://github.com/BlazeUp-AI/Observal/commit/e0ff08ed6d671c75fd2f2a04fef6d489cf093668))
1130
+ - cache race condition, unbounded memory, and repeated HTTP calls ([4fc41f0](https://github.com/BlazeUp-AI/Observal/commit/4fc41f00861f240890dc0be9f941040b0375ccb8))
1131
+ - update copilot rules_file path assertion (**tests**) ([12a342a](https://github.com/BlazeUp-AI/Observal/commit/12a342abe64d37bdbe4b96b2d35f944be778e4a5))
1132
+ - resolve hook paths for all IDEs, not a hardcoded subset (**cli**) ([86a75ee](https://github.com/BlazeUp-AI/Observal/commit/86a75ee323f68cc6db3991d476efaa7524d883c2))
1133
+ - raise 401 for expired tokens in optional_current_user (**auth**) ([ed2862c](https://github.com/BlazeUp-AI/Observal/commit/ed2862cad4bb784f617ed0254c105817d1802d08))
1134
+ - add trim() to /take and /drop to handle trailing whitespace (**ci**) ([7e4b180](https://github.com/BlazeUp-AI/Observal/commit/7e4b180ac9ea54d7a9bc50b9adc2020ae0504126))
1135
+ - resolve agent version approve CircularDependencyError (**api**) ([9bc3ce2](https://github.com/BlazeUp-AI/Observal/commit/9bc3ce20cd9eb0c488d755104979a5e25c66d813))
1136
+ - flush version status before promoting latest_version_id (**review**) ([4471a7d](https://github.com/BlazeUp-AI/Observal/commit/4471a7d574e4c628843f2b4a38e5b3050c656329))
1137
+ - use short model names in frontmatter instead of stripped IDs (**config**) ([5147d33](https://github.com/BlazeUp-AI/Observal/commit/5147d33b2cda99a0e6f3bf2d57b827cf799b9215))
1138
+ - approve/reject agent by pending version, not latest_version (**review**) ([b868453](https://github.com/BlazeUp-AI/Observal/commit/b868453e4add9d8ccc5aeabd9408ca100ea23688))
1139
+ - migrate update_draft to version-scoped component columns (**agent**) ([e9875cf](https://github.com/BlazeUp-AI/Observal/commit/e9875cf566ce4bd304f9a41ddb0f4c315781c996))
1140
+ - pass full model ID instead of short name in frontmatter (**config**) ([bee95bd](https://github.com/BlazeUp-AI/Observal/commit/bee95bd0738c9bbdeffe98a0c17f4614222123d2))
1141
+ - use agent's stored model_name as fallback in config generator (**config**) ([3ffb739](https://github.com/BlazeUp-AI/Observal/commit/3ffb7396dd122e13fed2af8cf31f285f3fa32719))
1142
+ - handle cross-version import and include all ClickHouse tables in deep copy (#681) (**migrate**) ([832166a](https://github.com/BlazeUp-AI/Observal/commit/832166a3423b9a1db4bcc81a10c568cde63b2e47))
1143
+ - stop traces after logout by revoking tokens server-side (#668) (**auth**) ([e1c6a50](https://github.com/BlazeUp-AI/Observal/commit/e1c6a50395d599d56ffc3170ca1ac6174de9e812))
1144
+ - resolve agent names via server instead of stale local cache (#684) ([228c656](https://github.com/BlazeUp-AI/Observal/commit/228c65615542424787e9fb3272e8bcfa0bedb451))
1145
+ - resolve agent update 500 error (missing property setters) (**api**) ([a91878a](https://github.com/BlazeUp-AI/Observal/commit/a91878a4502d470f88d9fd5367234450617085d8))
1146
+ - fix agent edit form Playwright tests (**e2e**) ([7d8c2d5](https://github.com/BlazeUp-AI/Observal/commit/7d8c2d59158db1d1434470f8e346cb00fdc3f7c0))
1147
+ - resolve component delete 500 errors (#677, #678) (**api**) ([ca33351](https://github.com/BlazeUp-AI/Observal/commit/ca333511348e291dff76ef5fce9b3e44407d8595))
1148
+ - correct version lookup and sync lockfile (**cli**) ([9c474dc](https://github.com/BlazeUp-AI/Observal/commit/9c474dc26757155aa35a2eada68784e35836da22))
1149
+ - detect and block conflicting `observal` package (#671) (**cli**) ([d6e6616](https://github.com/BlazeUp-AI/Observal/commit/d6e661672b05c653ddae50e30ef379578418f87c))
1150
+ - move pull command from root to `observal agent pull` (#673) (**cli**) ([f092894](https://github.com/BlazeUp-AI/Observal/commit/f092894c93f077a514aeb007b29bfcb69685a796))
1151
+ - add latest_approved_version to response and fix agent pull (#667) (**api**) ([9f1256a](https://github.com/BlazeUp-AI/Observal/commit/9f1256a69bdc6eb3628e8d01f71e348048c6bb0b))
1152
+ - resolve agent deletion 500 errors (**api**) ([e19c67c](https://github.com/BlazeUp-AI/Observal/commit/e19c67ca7ecb14af4a2f24089b1c4ef21c715312))
1153
+ - review queue queries pending versions directly (**api**) ([2c989b3](https://github.com/BlazeUp-AI/Observal/commit/2c989b3540f9f929a8030be0566c324bd35d1317))
1154
+ - address 5 correctness bugs in agent edit form (**web**) ([c3429c9](https://github.com/BlazeUp-AI/Observal/commit/c3429c991411beb3df25858582ae51dd3e094102))
1155
+ - use canonical IDE list from ide_registry.py in edit form (**web**) ([48330d1](https://github.com/BlazeUp-AI/Observal/commit/48330d1ae7981d6eced1a4db897bb4f873b47adb))
1156
+ - resolve entrypoint migration incompatibility on fresh DB (**docker**) ([59fddfd](https://github.com/BlazeUp-AI/Observal/commit/59fddfd3491656ae5314b8dce87664975b0e4170))
1157
+ - wire version dropdown to fetch and display version-specific data (**web**) ([9aec74d](https://github.com/BlazeUp-AI/Observal/commit/9aec74dc3f256f8ff91e4b04be7c507bd7e3c0ed))
1158
+ - address 3 bugs in agent release/pull commands (**cli**) ([610c5fc](https://github.com/BlazeUp-AI/Observal/commit/610c5fc05e76fb661bd876612eb33f14bc375a7a))
1159
+ - complete agent versioning spec compliance (#622) (**api**) ([9a2c78c](https://github.com/BlazeUp-AI/Observal/commit/9a2c78c7d6ab4d34ceccef724fecc869b7d64970))
1160
+ - address RBAC review feedback (**server**) ([b705660](https://github.com/BlazeUp-AI/Observal/commit/b7056609fb885b4e5726aa87db97ef61f66abf3d))
1161
+ - apply ruff format to RBAC files (**server**) ([3af617a](https://github.com/BlazeUp-AI/Observal/commit/3af617a28afdf449301e54ade1b0c6b530711409))
1162
+ - fix import sorting in alembic migration (**server**) ([99a7b81](https://github.com/BlazeUp-AI/Observal/commit/99a7b819ce48341af7feb6aa29da7be5029e1045))
1163
+ - fixed the linting issues (**server**) ([b5eb5a0](https://github.com/BlazeUp-AI/Observal/commit/b5eb5a0a98ecc2fcbb427d45c45566fb3c1a8988))
1164
+ - update IDE paths and add skill support per official docs (**registry**) ([1904f94](https://github.com/BlazeUp-AI/Observal/commit/1904f94c15a9ab980d73ff8818fd76fa6bd0a49b))
1165
+ - correct VS Code mcp_servers_key and Claude Code home_mcp_config (**registry**) ([1693b40](https://github.com/BlazeUp-AI/Observal/commit/1693b404923b70543ab735c7e5084ab196b3ea0a))
1166
+ - make session DAG visualization theme-aware (**web**) ([9f5f542](https://github.com/BlazeUp-AI/Observal/commit/9f5f542a5e7ce10a87d8273dcd9d7897c80eedcd))
1167
+ - replace hardcoded colors with semantic theme tokens (**web**) ([ae3b5c4](https://github.com/BlazeUp-AI/Observal/commit/ae3b5c4fecc0ed619aab1316ec8ee4ee9663d022))
1168
+ - hide enterprise-only sidebar items in local mode, fix collapsed logo (**web**) ([aad850f](https://github.com/BlazeUp-AI/Observal/commit/aad850f7cd000cbe5ca4720f6195ad128670014d))
1169
+ - prevent duplicate Observal hooks in Kiro agent configs ([6256a56](https://github.com/BlazeUp-AI/Observal/commit/6256a569b3f86c1571c81811e0d623429b340486))
1170
+ - use sys.executable and python detection for cross-platform hook injection (**hooks**) ([7ee202a](https://github.com/BlazeUp-AI/Observal/commit/7ee202a1375cf29f349d0c88738202500476255f))
1171
+ - use sys.executable for hook commands, not hardcoded python3 (**cli**) ([1ddcc81](https://github.com/BlazeUp-AI/Observal/commit/1ddcc8140e982caaf6eadb1af4965e589108a0c6))
1172
+ - update crypto public-key URL and e2e test paths (**cli**) ([f01e635](https://github.com/BlazeUp-AI/Observal/commit/f01e6359406b857e03cec640ca02edddb210cb85))
1173
+ - update copilot CLI hook test to use module invocation format (**test**) ([d526a4b](https://github.com/BlazeUp-AI/Observal/commit/d526a4b52de380b4f0b9e27a1d874fc940d48363))
1174
+ - doctor cleanup should also clean kiro_default.json (**cli**) ([5f7a755](https://github.com/BlazeUp-AI/Observal/commit/5f7a75528263fc0101b1e4b917f29412f58dbae1))
1175
+ - use module invocation for hook injection, not cat|python3 pipes (**cli**) ([50af818](https://github.com/BlazeUp-AI/Observal/commit/50af81803f3d3eedbfc6f9fbe0ea5978ba82f314))
1176
+ - write native OTLP logs to otel_logs table (**telemetry**) ([4381188](https://github.com/BlazeUp-AI/Observal/commit/4381188f5b0c85f8049e12cc3824d59b3fd9b739))
1177
+ - update copilot CLI hooks and remaining otel/hooks references (**cli**) ([be5c960](https://github.com/BlazeUp-AI/Observal/commit/be5c960f0532a5b27f9eccc4ea0fed4977198eca))
1178
+ - normalize all IDE ServiceName values in SQL query (**sessions**) ([4e86302](https://github.com/BlazeUp-AI/Observal/commit/4e863026c55c27c4ad29b529d5989652c32640ec))
1179
+ - remove exception detail leaks in eval kernel (**security**) ([9d56b6c](https://github.com/BlazeUp-AI/Observal/commit/9d56b6c4770d784912af702a60f580eb0c68e178))
1180
+ - address CodeQL findings (**security**) ([ef08221](https://github.com/BlazeUp-AI/Observal/commit/ef08221f2028a04171073d7c03f6b10e7c8c337e))
1181
+ - update test expectations and fix eslint warnings (**ci**) ([723a29c](https://github.com/BlazeUp-AI/Observal/commit/723a29cfe32099ead233eaaaddbe9c3245e3d836))
1182
+ - seed Kiro hooks with telemetry commands (**agent-builder**) ([14bea3d](https://github.com/BlazeUp-AI/Observal/commit/14bea3d1170e97927e43eeb67792525212cbb781))
1183
+ - move /traces /errors /stats above /{session_id} catch-all (**sessions**) ([39d9a60](https://github.com/BlazeUp-AI/Observal/commit/39d9a60b15bd4e9dc4c8a3581f8bbc583a1fdd2d))
1184
+ - remove duplicate /sessions prefix from route paths (**sessions**) ([606a00d](https://github.com/BlazeUp-AI/Observal/commit/606a00d16d1e67ca6d5516d988681a48910e5cda))
1185
+ - replace structlog with stdlib logging (**sessions**) ([106d489](https://github.com/BlazeUp-AI/Observal/commit/106d4898e6cf1799d1248351456a4fa11b6a84d7))
1186
+ - fix remaining OtelSession type reference (**web**) ([c6983a8](https://github.com/BlazeUp-AI/Observal/commit/c6983a86ab148d31266dd637787f57a8e8235f3e))
1187
+ - add otel_logs DDL to init_clickhouse (**clickhouse**) ([17fd514](https://github.com/BlazeUp-AI/Observal/commit/17fd514a87d6ac0a1e7cf20d6640dd724adc1b07))
1188
+ - add missing event name mappings for prompt counting (**copilot**) ([0a3acf7](https://github.com/BlazeUp-AI/Observal/commit/0a3acf7c0f135e79291915a9d5081996a7d54762))
1189
+ - auto-shim copilot/opencode MCP servers during login (**auth**) ([3d12220](https://github.com/BlazeUp-AI/Observal/commit/3d1222013fd0c2907ae82f5b346949c4bf673795))
1190
+ - match native agent config schema and fix prompt injection (**kiro**) ([cb773cc](https://github.com/BlazeUp-AI/Observal/commit/cb773cc090540150bc1284063d06b6b243c5e5fc))
1191
+ - replace fragile cat|sed|curl Unix pipelines with Python hook scripts (**kiro**) ([c304172](https://github.com/BlazeUp-AI/Observal/commit/c304172d8a96ed48e56b9f92d73fa5f876effe29))
1192
+ - use LB URL as Dockerfile build-time default for API rewrites (**docker**) ([af54ebd](https://github.com/BlazeUp-AI/Observal/commit/af54ebd826ea4789b88894d51136644c25a4e683))
1193
+ - preserve URL scheme in endpoint derivation and fix port issues (**config**) ([ef28cfe](https://github.com/BlazeUp-AI/Observal/commit/ef28cfe33e801c816ce529d6b827d84e14979340))
1194
+ - reformat test_ide_config_e2e.py to satisfy ruff (**lint**) ([4c065ba](https://github.com/BlazeUp-AI/Observal/commit/4c065ba732c07dd43326eb3d84bbe12be2b040d8))
1195
+ - rename camelCase test function to satisfy ruff N802 (**test**) ([77a57d4](https://github.com/BlazeUp-AI/Observal/commit/77a57d47a276495b8898dd2706fd6321cfda02ae))
1196
+ - add Copilot CLI platform detection and hide unsupported fields (**web**) ([2259794](https://github.com/BlazeUp-AI/Observal/commit/22597942a864c521e61d3d3f0d5fbf2cf97552c1))
1197
+ - add JSONC parsing and per-event hook names for Copilot CLI (**cli**) ([096fd3c](https://github.com/BlazeUp-AI/Observal/commit/096fd3c5092d0fa0e4d6e439d0e7c86ad85540a3))
1198
+ - normalize Copilot CLI payloads and inject event names (**hooks**) ([a9d47fa](https://github.com/BlazeUp-AI/Observal/commit/a9d47faa3e327c64bb8ba5cb7be34c9c212ae50e))
1199
+ - respect --ide filter in fallback home scan (**scan**) ([cf379dd](https://github.com/BlazeUp-AI/Observal/commit/cf379ddeaca9b24ab6b2f158e3711da433903520))
1200
+ - only trace registered Kiro agents, skip kiro_default (**scan**) ([db39514](https://github.com/BlazeUp-AI/Observal/commit/db3951494f61f3e724c6dfc3fb659badd6e916ba))
1201
+ - only trace registered Kiro agents, skip kiro_default (**scan**) ([63d2b5d](https://github.com/BlazeUp-AI/Observal/commit/63d2b5dc21b608e7039ddfbd8794afff5de58943))
1202
+ - only trace registered Kiro agents, skip kiro_default (**scan**) ([9cdc9c5](https://github.com/BlazeUp-AI/Observal/commit/9cdc9c5cd7b451c968696fd0dda288c7db8f97d1))
1203
+ - preserve host port in proxy headers to fix Kiro agent tracing (**nginx**) ([60dcda9](https://github.com/BlazeUp-AI/Observal/commit/60dcda95124b5e0e06307c66a43db2fde8056907))
1204
+ - filter release artifact download to skip Docker metadata (**ci**) ([dbd6a1b](https://github.com/BlazeUp-AI/Observal/commit/dbd6a1b66ec1dd3a6db067ecc9bc41a17174a329))
1248
1205
  - rename package to observal-cli to match PyPI project (**pypi**) ([9e27f7a](https://github.com/BlazeUp-AI/Observal/commit/9e27f7a4645022356f9fcf02358449664f38c250))
1249
1206
  - disable provenance on per-arch Docker builds (**ci**) ([50a8853](https://github.com/BlazeUp-AI/Observal/commit/50a88535f84b488b87afad4749f908d6d9cf2c9c))
1250
1207
  - native multi-arch Docker builds, drop deprecated macos-13 (**ci**) ([d8232c8](https://github.com/BlazeUp-AI/Observal/commit/d8232c85bdc1a43fb524858ac7ded001ed3a5544))
@@ -1327,116 +1284,6 @@ All notable changes to this project will be documented in this file.
1327
1284
  - reduce batch size and ensure async insert durability (**otel**) ([e289ced](https://github.com/BlazeUp-AI/Observal/commit/e289ced397d7b031108c1cd52adaa185cb29415b))
1328
1285
  - make ClickHouse and OTEL memory limits configurable (**docker**) ([2c317eb](https://github.com/BlazeUp-AI/Observal/commit/2c317eb4c6aa5c2a6878d76cbeeecf72eecc14d5))
1329
1286
  - add ClickHouse memory config to prevent OOM on low-RAM hosts (**docker**) ([ede9da9](https://github.com/BlazeUp-AI/Observal/commit/ede9da95ef39a88a730ba09d65e1608b8faf8154))
1330
-
1331
- ### Other
1332
-
1333
- - remove volumes in rebuild-clean target ([c36996f](https://github.com/BlazeUp-AI/Observal/commit/c36996fd65e8b11c83f35576f16dfd2b66bec7f5))
1334
- - semvar fix (**pre-bump**) ([f7179ff](https://github.com/BlazeUp-AI/Observal/commit/f7179ff33347614def431e430a0ca0186d6c1790))
1335
- - remove registration endpoint and CLI command (**auth**) ([28fc0f1](https://github.com/BlazeUp-AI/Observal/commit/28fc0f1277a5f632710446f7e18934a8a28d2096))
1336
- - gitignore AI agent and IDE config directories ([2454408](https://github.com/BlazeUp-AI/Observal/commit/245440842607985380a21e2798d834b95fdfb3e4))
1337
- - remove magic-agent.json and docs/superpowers/ ([3ddeed5](https://github.com/BlazeUp-AI/Observal/commit/3ddeed50d0335d9c2b0e18ab0a597ba38f94a7c3))
1338
- - ignore playwright and e2e screenshot artifacts ([9dd9f20](https://github.com/BlazeUp-AI/Observal/commit/9dd9f20664572215d0e07e99fcc8c32e8627e1d9))
1339
- - add pre-push DCO sign-off check ([04c0ac5](https://github.com/BlazeUp-AI/Observal/commit/04c0ac54a237264a158dea5b2d55a409ac27f460))
1340
- - add pre-commit secrets guard to block .env and API key leaks ([e3cf243](https://github.com/BlazeUp-AI/Observal/commit/e3cf2433112203096a4d1e6892e4f0b067691f37))
1341
- - add .worktrees/ to .gitignore ([5f651bf](https://github.com/BlazeUp-AI/Observal/commit/5f651bf8d29c960fe7b341beadc3fa1e9f302451))
1342
- - enable gitbooks for docs ([2e4eef2](https://github.com/BlazeUp-AI/Observal/commit/2e4eef2e10227192a42462277a82f1c242d7e39a))
1343
-
1344
- ### Performance
1345
-
1346
- - resolve trace_privacy at auth time, eliminate extra DB calls ([6f3602c](https://github.com/BlazeUp-AI/Observal/commit/6f3602c636a2b147a5622c2856931383bce091b4))
1347
-
1348
- ### Testing
1349
-
1350
- - update e2e tests for hook bridge and disabled OTLP (**gemini**) ([9655b26](https://github.com/BlazeUp-AI/Observal/commit/9655b26b3df6f6c34cdb7e7ddfa3c4be0ae46ec9))
1351
- - add comprehensive tests for Auth 2.0 security features (**auth**) ([adeafd3](https://github.com/BlazeUp-AI/Observal/commit/adeafd3570613f748a2872bb580e64bc1df99be1))
1352
- - update enterprise tests for real SAML/SCIM behavior (**ee**) ([5568201](https://github.com/BlazeUp-AI/Observal/commit/55682010cd05bfef16701be79b388a62b7487ee9))
1353
- - add tests for dollar-var placeholder display ([c352100](https://github.com/BlazeUp-AI/Observal/commit/c3521008b775688174e1619e1f7904582c93e6c2))
1354
- - add edge case tests for ClickHouse resource tuning ([31bd3f7](https://github.com/BlazeUp-AI/Observal/commit/31bd3f7adb39c55c3ff72817db42d339ce7911f4))
1355
- ## [0.2.0] - 2026-04-21
1356
-
1357
- ### Added
1358
-
1359
- - redesign traces page with unified Kiro and Claude Code view (**web**) ([e648ad5](https://github.com/BlazeUp-AI/Observal/commit/e648ad535a0766fcea6bb42a3df7bd3fbb390baf))
1360
- - extend session types, API layer, and hooks for v4 traces (**web**) ([5575ac4](https://github.com/BlazeUp-AI/Observal/commit/5575ac404506fe3242261230c91c8f58c296b39f))
1361
- - add user resolution, platform/time filters, and summary endpoint (**server**) ([2befd44](https://github.com/BlazeUp-AI/Observal/commit/2befd44097c3b3b799578a237b16473842b98ff5))
1362
- - propagate username through hooks and env vars (**cli**) ([f41ff37](https://github.com/BlazeUp-AI/Observal/commit/f41ff37201574e1b44dea3be7f8d48c5a97a79df))
1363
- - show IDE compatibility badges on agent cards and detail pages (**web**) ([151e55b](https://github.com/BlazeUp-AI/Observal/commit/151e55be229f64a878182dbc100aba69e33e1bed))
1364
- - auto-infer IDE compatibility on agent create/update and warn at install (**server**) ([e1e39ae](https://github.com/BlazeUp-AI/Observal/commit/e1e39ae3ca9e03796dffb19f518f6d0d74889424))
1365
- - add required_ide_features and inferred_supported_ides to agent model (**server**) ([1214bc3](https://github.com/BlazeUp-AI/Observal/commit/1214bc3ac76932759951658688dd091abcd86b22))
1366
- - add IDE feature inference service (**server**) ([82b897e](https://github.com/BlazeUp-AI/Observal/commit/82b897e66a47f4c2926f6a9a5703852f3a77a4ff))
1367
- - add IDE feature capability matrix to constants (**server**) ([f259125](https://github.com/BlazeUp-AI/Observal/commit/f25912560f3807a1a0cdf629391fda4f747d0fc2))
1368
- - detect dollar-sign input vars in git-URL submit path (**cli**) ([a22c37e](https://github.com/BlazeUp-AI/Observal/commit/a22c37e29a83f852d6a49a3b99a901dc7ea7af6f))
1369
- - substitute $VAR placeholders in stored args at install time (**server**) ([a415036](https://github.com/BlazeUp-AI/Observal/commit/a415036096c927a22b8389b5270d686d43f84a58))
1370
- - detect dollar-sign input variables in mcp submit --config (**cli**) ([0705ee0](https://github.com/BlazeUp-AI/Observal/commit/0705ee00b0ff0d2c00f110f10a15de5df8bb2210))
1371
- - add ASCII welcome banner on auth login (#202) ([043147f](https://github.com/BlazeUp-AI/Observal/commit/043147fde13efc05c3fb1da7e539d160b00c91bd))
1372
- - add Redis-backed caching and gzip compression ([1803470](https://github.com/BlazeUp-AI/Observal/commit/18034709d7d1cccafd490bfe06558e53156d3547))
1373
- - add post-auth onboarding with IDE detection and component upload ([8660f3e](https://github.com/BlazeUp-AI/Observal/commit/8660f3e8fdc2ce0fe91faadf49bc6f1c4257a78b))
1374
- - allow users to view their own traces (#431) (**traces**) ([3be2c5c](https://github.com/BlazeUp-AI/Observal/commit/3be2c5c69d95f2f9b6df9cdeeb442586144050d1))
1375
- - generate IDE-specific skill files on agent install (#431) (**skills**) ([b276718](https://github.com/BlazeUp-AI/Observal/commit/b276718d29427a5ab30a5db0e35d12f4440db339))
1376
- - add structured security event logging for SIEM integration (#233) (**sec**) ([5d61282](https://github.com/BlazeUp-AI/Observal/commit/5d61282f9003c7001d4b19226362a92971982c99))
1377
- - add escape_like() utility and tests (**sec**) ([2c9ee56](https://github.com/BlazeUp-AI/Observal/commit/2c9ee561d4fc4e01e8b6da0d858376452a6843f1))
1378
- - add shim badge on trace events with merged shim data (**ui**) ([929cb47](https://github.com/BlazeUp-AI/Observal/commit/929cb47023c810f9db9861d9c6a79ec7615e1179))
1379
- - add unarchive action for archived agents ([9a9e352](https://github.com/BlazeUp-AI/Observal/commit/9a9e352c283f88e6b73697d3cfe1fdbb0f8908c0))
1380
- - add delete/withdraw action for pending items in review queue ([71e4250](https://github.com/BlazeUp-AI/Observal/commit/71e4250702288ed2be517f1cff06a6191005110b))
1381
- - add draft workflow and submission forms for all component types ([2f52f02](https://github.com/BlazeUp-AI/Observal/commit/2f52f02ceeb4ed3471bde8a98c60f90cbc6dde5f))
1382
- - add custom inline prompt input to agent builder Prompts tab (**web**) ([6029763](https://github.com/BlazeUp-AI/Observal/commit/60297638de8be62e05c3f30cd7676d75f7fb4b93))
1383
- - unwrap mcpServers wrappers and extract server name from pasted configs (**cli**) ([1ddc49b](https://github.com/BlazeUp-AI/Observal/commit/1ddc49bdde6e46458aa4505282a535456a0a806c))
1384
- - add header prompting at install time for SSE/HTTP servers (**cli**) ([b4dd457](https://github.com/BlazeUp-AI/Observal/commit/b4dd457f445a148319c7504828b267e6e1b3916d))
1385
- - revamp submit UX with config preview and direct JSON config support (**cli**) ([0a3ff6f](https://github.com/BlazeUp-AI/Observal/commit/0a3ff6f4ca8a5485fab5510e6ac3822100a41d61))
1386
- - support three transport types — stdio, SSE, HTTP proxy (**config**) ([522f270](https://github.com/BlazeUp-AI/Observal/commit/522f27081b5066e8be3f815d2bd6054acad477e8))
1387
- - store command/args/url/headers on submit, pass headers on install (**routes**) ([9b38fff](https://github.com/BlazeUp-AI/Observal/commit/9b38fffd7f094b938b3434c88bbd9fc8a23330d2))
1388
- - auto-detect docker images and infer command/args from repos (**validator**) ([1b6b34c](https://github.com/BlazeUp-AI/Observal/commit/1b6b34c7e40ce2095ca44ce504fdc61fa5facef8))
1389
- - add transport/SSE/header fields to MCP schemas (**schemas**) ([daa2d5d](https://github.com/BlazeUp-AI/Observal/commit/daa2d5d624218b44502dba5878126325a834f2fb))
1390
- - add command, args, url, headers, auto_approve columns to mcp_listings (**db**) ([a7f184c](https://github.com/BlazeUp-AI/Observal/commit/a7f184c4f5aa78e4fe66e4958fe69f22aa188c38))
1391
- - org-scope agent endpoints and stamp owner_org_id on all listings (**multi-tenancy**) ([aff0883](https://github.com/BlazeUp-AI/Observal/commit/aff088355fce90806e720181baeb679ae745b011))
1392
- - org-scoped project_id and route filtering (**multi-tenancy**) ([10c41e4](https://github.com/BlazeUp-AI/Observal/commit/10c41e4a82606caa6cab5e5156a122fbee34c527))
1393
- - scope user management to org and assign org_id on creation (**admin**) ([2bdf1ea](https://github.com/BlazeUp-AI/Observal/commit/2bdf1eafd4a4bce56da6223b978c8291122d9901))
1394
- - add org-aware dependencies and auto-assign default org (**auth**) ([0d25bd2](https://github.com/BlazeUp-AI/Observal/commit/0d25bd2a0fa7a2faee1fcdd6096ec6e8773e7b63))
1395
- - add version bump dialog to agent builder (**web**) ([5875985](https://github.com/BlazeUp-AI/Observal/commit/5875985c550d3476a5bc548b134b424268c6d66c))
1396
- - add draft workflow with localStorage auto-save (**web**) ([837e3dc](https://github.com/BlazeUp-AI/Observal/commit/837e3dc6a9eb93e35e99e5b868dca7427779a57e))
1397
- - add agents tab with component readiness to review page (**web**) ([a20cd85](https://github.com/BlazeUp-AI/Observal/commit/a20cd8549677e1bcb10204025c14648308290006))
1398
- - add agent bulk-create command (**cli**) ([d2d360b](https://github.com/BlazeUp-AI/Observal/commit/d2d360bedd7ec543e60d29bb371fdeab978d3af9))
1399
- - add user filter and component tabs to leaderboard (**web**) ([cb52a55](https://github.com/BlazeUp-AI/Observal/commit/cb52a55b62d288ea4da10c5d229146b860ff63d4))
1400
- - add archive action to agent pages (**web**) ([ddc8e9c](https://github.com/BlazeUp-AI/Observal/commit/ddc8e9c1291166754c3126c507f9d5b490505b75))
1401
- - add API hooks for review, archive, draft, version, leaderboard, bulk (**web**) ([7e2fe92](https://github.com/BlazeUp-AI/Observal/commit/7e2fe92969b4962a789f8939c80b3068ede93653))
1402
- - add bulk agent upload endpoint and schemas (**server**) ([1295e58](https://github.com/BlazeUp-AI/Observal/commit/1295e58317932d5852b95fabd7598152bc6b04e1))
1403
- - add archived variant to StatusBadge (**web**) ([7bf035d](https://github.com/BlazeUp-AI/Observal/commit/7bf035dfa936b03180f1ea4ccc0f38e80286a421))
1404
- - add dismissible GitHub star banner to page header ([11d3d09](https://github.com/BlazeUp-AI/Observal/commit/11d3d0927e84927d33d2a1c3d77803aebcfb251b))
1405
- - add username field to User model (#339) (**auth**) ([c001b1b](https://github.com/BlazeUp-AI/Observal/commit/c001b1b3f29ff66a87ce3e96e3fa91a6598e6a80))
1406
- - add delete agent functionality to frontend (**web**) ([4204176](https://github.com/BlazeUp-AI/Observal/commit/42041769d2a52f6f6a9d5d4c920cbce856a52a3a))
1407
- - add review queue, versioning, bundles, archive, and draft workflow (**agent**) ([27f1f6a](https://github.com/BlazeUp-AI/Observal/commit/27f1f6a81f4258d63c3814464b684cde072d4385))
1408
- - add observal agents cli cmds (**agent**) ([7e6a206](https://github.com/BlazeUp-AI/Observal/commit/7e6a2069817aa13777891f847c8843c3ff93431a))
1409
- - robust multi-language env var detection and config generation fixes ([5d633c5](https://github.com/BlazeUp-AI/Observal/commit/5d633c555d350895b461859d6c818c67466564f0))
1410
- - unify telemetry — merge hooks, shims, and OTLP into one event stream ([1dce747](https://github.com/BlazeUp-AI/Observal/commit/1dce7472b2a3706fbf92cd4dbbd01d6cf105bc8f))
1411
- - add live session updates via GraphQL subscriptions ([9cc5bd1](https://github.com/BlazeUp-AI/Observal/commit/9cc5bd188617dbbfd51005336cdd9d24e34665e5))
1412
-
1413
- ### CI
1414
-
1415
- - add asyncpg and hypothesis to test runner ([abff6ad](https://github.com/BlazeUp-AI/Observal/commit/abff6ad95887a6414636b4cd8b64100b450037e5))
1416
- - add auto-deploy workflow for EC2 server ([c6d3fc8](https://github.com/BlazeUp-AI/Observal/commit/c6d3fc886422702b880f8ddfea4bbfab64d44ed4))
1417
-
1418
- ### Changed
1419
-
1420
- - fix ruff lint and formatting in client.py (**cli**) ([ab5935c](https://github.com/BlazeUp-AI/Observal/commit/ab5935c0e6240103527df084394ff80dae82fd01))
1421
- - format review.py for ruff ([f2c68fe](https://github.com/BlazeUp-AI/Observal/commit/f2c68fe4ac0fa704871098f5de093435c99179e7))
1422
- - fix ruff formatting in route and CLI files ([55b5f2b](https://github.com/BlazeUp-AI/Observal/commit/55b5f2baf96dbcd52a1789496818bcceab25e436))
1423
- - format test_docker_detection.py for ruff ([e6f5d11](https://github.com/BlazeUp-AI/Observal/commit/e6f5d1106361475c25271bd51715b68d02770e99))
1424
- - fix ruff format violations in agent_config_generator and cmd_pull ([7128f79](https://github.com/BlazeUp-AI/Observal/commit/7128f79625f5339dd568a4cdfbd6ab956cf47b90))
1425
- - apply ruff format to test_eval_phase8.py ([edce7e6](https://github.com/BlazeUp-AI/Observal/commit/edce7e6957d49fded1238426e0ef3401cd2669af))
1426
- - apply ruff format to changed files ([e9967d8](https://github.com/BlazeUp-AI/Observal/commit/e9967d83d484a0c47a3900885352988069fc3dc7))
1427
- - move eval services and tests into subpackages (**eval**) ([82b935a](https://github.com/BlazeUp-AI/Observal/commit/82b935aaaab5ff345fb63f8b528d74477ebcdcdf))
1428
-
1429
- ### Documentation
1430
-
1431
- - add design spec for agent unarchive feature (#396) ([4cf0bf1](https://github.com/BlazeUp-AI/Observal/commit/4cf0bf1ae5c2d1db21782f683b8310f1e4c07ce3))
1432
- - add IDE support tiers, remove telemetry hook refs from docs ([fdb3b41](https://github.com/BlazeUp-AI/Observal/commit/fdb3b413fb4556a0cbb0ff8f4e48864dc7f9f570))
1433
- - add IDE support tiers, remove hook references from docs ([336018f](https://github.com/BlazeUp-AI/Observal/commit/336018f733ba464250d56bea84b6fe95c96fa0c7))
1434
- - add eval subsystem reference (docs/eval.md) ([739fe03](https://github.com/BlazeUp-AI/Observal/commit/739fe03fb2f979e24bdd12e359f0e4cf3c2cdbcd))
1435
- - add READMEs for observal-server, ee, tests, and observal_cli ([9c39e49](https://github.com/BlazeUp-AI/Observal/commit/9c39e491bf6de42cca00d7a41730ec52902811e7))
1436
- - replace boilerplate README with frontend reference (**web**) ([31eed93](https://github.com/BlazeUp-AI/Observal/commit/31eed93a2c55e4e4cd6cbab3efe2476d0bf6bc90))
1437
-
1438
- ### Fixed
1439
-
1440
1287
  - improve session query perf, push platform filter to ClickHouse (**server**) ([284c953](https://github.com/BlazeUp-AI/Observal/commit/284c953a35b21902e9761666f70e4fa01d9fa7d4))
1441
1288
  - skip IDE inference when components unchanged in update routes (**server**) ([5adc883](https://github.com/BlazeUp-AI/Observal/commit/5adc883b14f519fb95768687a9a3b04562208caf))
1442
1289
  - don't highlight Agents nav when on leaderboard or builder (**web**) ([b29af69](https://github.com/BlazeUp-AI/Observal/commit/b29af6918a0457dd4d723befa361993f7272f147))
@@ -1523,6 +1370,61 @@ All notable changes to this project will be documented in this file.
1523
1370
 
1524
1371
  ### Other
1525
1372
 
1373
+ - remove hardcoded dev paths and stale internal docs ([6f39743](https://github.com/BlazeUp-AI/Observal/commit/6f39743cc3c2d6cec4c54be833a3410a6334b957))
1374
+ - ignore pi-lens cache directories ([b8d84e2](https://github.com/BlazeUp-AI/Observal/commit/b8d84e2d39a0f6daa0c2b6cca32d7814d293ec07))
1375
+ - update dependency authlib to v1.7.1 [security] (#923) (**deps**) ([6a00ce3](https://github.com/BlazeUp-AI/Observal/commit/6a00ce3e33f89ffdc05d42d2a563ef0633ac761e))
1376
+ - ignore and untrack Terraform plan files (OBSV-SEC-019) (**security**) ([c4873d4](https://github.com/BlazeUp-AI/Observal/commit/c4873d4469a5efdc6db470a82f156fec4763fa4c))
1377
+ - add SPDX license headers for REUSE compliance ([df9b065](https://github.com/BlazeUp-AI/Observal/commit/df9b0652949043dd53710d12f8bdf8ada5c9ced3))
1378
+ - add SPDX headers and fix pre-commit hook for new files ([4653ffa](https://github.com/BlazeUp-AI/Observal/commit/4653ffac901632e251cf7a791b82aec517688c20))
1379
+ - add Codecov for test coverage reporting (**ci**) ([016d312](https://github.com/BlazeUp-AI/Observal/commit/016d3121c992e15b7e4838696fe3307ac61d7df0))
1380
+ - add SPDX headers to all source files (REUSE 3.3 compliant) ([193d7c9](https://github.com/BlazeUp-AI/Observal/commit/193d7c94a1360cd7918617a47e84ef691a35a493))
1381
+ - remove DCO, CLA-assistant is the sole contributor agreement ([90635ca](https://github.com/BlazeUp-AI/Observal/commit/90635ca6a8afe6d8adb1ee66f7948372aeab233f))
1382
+ - update terraform-linters/setup-tflint action to v6 (**deps**) ([47e7736](https://github.com/BlazeUp-AI/Observal/commit/47e77365da31820a113860e5a094b9146a335fe9))
1383
+ - update pnpm/action-setup action to v6 (**deps**) ([cb1c7e1](https://github.com/BlazeUp-AI/Observal/commit/cb1c7e1c21245ee914df229cf3d65aab8207977b))
1384
+ - update redis docker tag to v8 (**deps**) ([c8a7592](https://github.com/BlazeUp-AI/Observal/commit/c8a75924d65c0339449957671ea1b2865a42e8c9))
1385
+ - update postgres docker tag to v18 (**deps**) ([0905772](https://github.com/BlazeUp-AI/Observal/commit/0905772b1d115eacee0e2cd19c19e50c894fc201))
1386
+ - update hashicorp/setup-terraform action to v4 (**deps**) ([bd36feb](https://github.com/BlazeUp-AI/Observal/commit/bd36feb5e63d1ba40f6ec31d3a4178aa192cb67b))
1387
+ - update github/codeql-action action to v4 (**deps**) ([1089756](https://github.com/BlazeUp-AI/Observal/commit/10897565ed1ff5d18cbc3f4b3d820721e5326c9e))
1388
+ - update actions/checkout action to v6 (**deps**) ([8be0707](https://github.com/BlazeUp-AI/Observal/commit/8be07072fd91e9f05b53088b027283170cb0914f))
1389
+ - update tflint plugin terraform-linters/tflint-ruleset-aws to v0.47.0 (#778) (**deps**) ([574d28f](https://github.com/BlazeUp-AI/Observal/commit/574d28fa3ea0fc22a7cca02d8e2402c291a7ce4b))
1390
+ - remove ops sync tombstone (**ops**) ([2917e1c](https://github.com/BlazeUp-AI/Observal/commit/2917e1ce93d3fd960ccc224951f6d43743b7d2f2))
1391
+ - update docker images (minor/patch) (#777) (**deps**) ([4d29e1f](https://github.com/BlazeUp-AI/Observal/commit/4d29e1f299fddfc77a37ccf16bf42ca7e1468fe0))
1392
+ - update dependency python-multipart to v0.0.27 [security] (#767) (**deps**) ([66db454](https://github.com/BlazeUp-AI/Observal/commit/66db4547aa49dbc0a56ad6824ea3319fb9a940f2))
1393
+ - update dependency mako to v1.3.12 [security] (#766) (**deps**) ([f1c6fd4](https://github.com/BlazeUp-AI/Observal/commit/f1c6fd4628545c261814d94888cdbeb259680871))
1394
+ - add pyrightconfig.json to observal-server ([4a02084](https://github.com/BlazeUp-AI/Observal/commit/4a0208466b66ce58c6e6125e8d9a3016969c71c5))
1395
+ - update github artifact actions (**deps**) ([af5e2db](https://github.com/BlazeUp-AI/Observal/commit/af5e2db8e345fc00b56e4d96549a8a5d195fd3a0))
1396
+ - update actions/stale action to v10 (**deps**) ([a11966a](https://github.com/BlazeUp-AI/Observal/commit/a11966ad46461c19bc7517252534d6981746c0b7))
1397
+ - update actions/github-script action to v9 (**deps**) ([3a2b92c](https://github.com/BlazeUp-AI/Observal/commit/3a2b92c5d9fb1c54b1f105bee15e5b12cab0850c))
1398
+ - update astral-sh/setup-uv action to v8 (**deps**) ([b7d0896](https://github.com/BlazeUp-AI/Observal/commit/b7d08965ead0f40fa17e0b46eda6752468bc5bdc))
1399
+ - update actions/setup-python action to v6 (**deps**) ([0002d7f](https://github.com/BlazeUp-AI/Observal/commit/0002d7f4ec49b92f8206eeb93851629109e1d992))
1400
+ - update actions/checkout action to v6 (**deps**) ([04db00c](https://github.com/BlazeUp-AI/Observal/commit/04db00c3addd189bcef7fa0455fe583060c2a882))
1401
+ - update actions/attest-build-provenance action to v4 (**deps**) ([2e23a47](https://github.com/BlazeUp-AI/Observal/commit/2e23a4758f1d6a195d0158e98c9e844f313b954f))
1402
+ - update dependency python to 3.14 (#577) (**deps**) ([5420a10](https://github.com/BlazeUp-AI/Observal/commit/5420a100006067355651befb83f1289413077f83))
1403
+ - update docker images (minor/patch) (#578) (**deps**) ([9a86d40](https://github.com/BlazeUp-AI/Observal/commit/9a86d40d82fd6b378758aa0ec2a607c48a12fb36))
1404
+ - automerge minor+patch Renovate PRs (**deps**) ([66cb1ba](https://github.com/BlazeUp-AI/Observal/commit/66cb1baf8d0b84760cb1564a6614eb98700581f2))
1405
+ - cleanup anti-patterns in registered-agents-only files ([3e0ee48](https://github.com/BlazeUp-AI/Observal/commit/3e0ee4810f2eae53990c1022c79e8a8557798729))
1406
+ - ruff format agent_config_generator ([742e0d7](https://github.com/BlazeUp-AI/Observal/commit/742e0d7816f5aa1d8526644bfe856794761ee2f6))
1407
+ - ruff format agent routes ([89c869f](https://github.com/BlazeUp-AI/Observal/commit/89c869f6d9aad692e381375968f4cc836fab5ee6))
1408
+ - ruff format agent routes ([a82308e](https://github.com/BlazeUp-AI/Observal/commit/a82308e3c876fc565d32ce2bf21ec6f220c7e589))
1409
+ - cleanup anti-patterns in review and api modules ([7bc87b4](https://github.com/BlazeUp-AI/Observal/commit/7bc87b487aefdcade8d1cb2f619ac7e9825787a9))
1410
+ - cleanup anti-patterns in CLI agent commands ([dd0a5aa](https://github.com/BlazeUp-AI/Observal/commit/dd0a5aa494e81ec54c6ba775c21b7ec266885efe))
1411
+ - cleanup mechanical anti-patterns in routes ([6e9732e](https://github.com/BlazeUp-AI/Observal/commit/6e9732e5988c9d42a7d27c58035be7abd5871031))
1412
+ - cleanup anti-patterns in agent RBAC implementation ([98e72db](https://github.com/BlazeUp-AI/Observal/commit/98e72db3d5d967f1b4e701afdd0965ef2bd80b10))
1413
+ - update docker/build-push-action action to v7 (**deps**) ([20f2626](https://github.com/BlazeUp-AI/Observal/commit/20f26263f09cfc4c9f95b52d6e5509f3d34af58a))
1414
+ - update docker/login-action action to v4 (**deps**) ([e5d87a9](https://github.com/BlazeUp-AI/Observal/commit/e5d87a9dd2fa1b06b384efae2dd87019fbc36d6c))
1415
+ - update docker/setup-buildx-action action to v4 (**deps**) ([5e5f3f8](https://github.com/BlazeUp-AI/Observal/commit/5e5f3f8f9b0749265cb28ae39912acd0f0d2c1fb))
1416
+ - sync observal-server uv.lock version to 0.3.4 ([eed7bdd](https://github.com/BlazeUp-AI/Observal/commit/eed7bdded2218e60d08aafb623cefa698223b7ff))
1417
+ - update dependency ruff to v0.15.12 (#575) (**deps**) ([a8a406d](https://github.com/BlazeUp-AI/Observal/commit/a8a406df83a1978b157c0c8d6aac359d70a2da7b))
1418
+ - remove volumes in rebuild-clean target ([c36996f](https://github.com/BlazeUp-AI/Observal/commit/c36996fd65e8b11c83f35576f16dfd2b66bec7f5))
1419
+ - semvar fix (**pre-bump**) ([f7179ff](https://github.com/BlazeUp-AI/Observal/commit/f7179ff33347614def431e430a0ca0186d6c1790))
1420
+ - remove registration endpoint and CLI command (**auth**) ([28fc0f1](https://github.com/BlazeUp-AI/Observal/commit/28fc0f1277a5f632710446f7e18934a8a28d2096))
1421
+ - gitignore AI agent and IDE config directories ([2454408](https://github.com/BlazeUp-AI/Observal/commit/245440842607985380a21e2798d834b95fdfb3e4))
1422
+ - remove magic-agent.json and docs/superpowers/ ([3ddeed5](https://github.com/BlazeUp-AI/Observal/commit/3ddeed50d0335d9c2b0e18ab0a597ba38f94a7c3))
1423
+ - ignore playwright and e2e screenshot artifacts ([9dd9f20](https://github.com/BlazeUp-AI/Observal/commit/9dd9f20664572215d0e07e99fcc8c32e8627e1d9))
1424
+ - add pre-push DCO sign-off check ([04c0ac5](https://github.com/BlazeUp-AI/Observal/commit/04c0ac54a237264a158dea5b2d55a409ac27f460))
1425
+ - add pre-commit secrets guard to block .env and API key leaks ([e3cf243](https://github.com/BlazeUp-AI/Observal/commit/e3cf2433112203096a4d1e6892e4f0b067691f37))
1426
+ - add .worktrees/ to .gitignore ([5f651bf](https://github.com/BlazeUp-AI/Observal/commit/5f651bf8d29c960fe7b341beadc3fa1e9f302451))
1427
+ - enable gitbooks for docs ([2e4eef2](https://github.com/BlazeUp-AI/Observal/commit/2e4eef2e10227192a42462277a82f1c242d7e39a))
1526
1428
  - fix ruff formatting ([ebb1b99](https://github.com/BlazeUp-AI/Observal/commit/ebb1b9946d52c89ac4e572d72adc49753b003b59))
1527
1429
  - add migration chain validation and generator scripts ([f5b7550](https://github.com/BlazeUp-AI/Observal/commit/f5b7550edf536c2c8cf6bd3f7111d4739d459cd7))
1528
1430
  - update dependency eslint to v10 (**deps**) ([19640ad](https://github.com/BlazeUp-AI/Observal/commit/19640adcda3358b27775d143beef1a547101b7c4))
@@ -1538,8 +1440,43 @@ All notable changes to this project will be documented in this file.
1538
1440
  - add Renovate config for automated dependency updates ([acfadae](https://github.com/BlazeUp-AI/Observal/commit/acfadae9b5a1800321e34c7c78558d7fe8a9c1f9))
1539
1441
  - remove empty 26.0.1 file, move images to docs/images/ ([1eeecb9](https://github.com/BlazeUp-AI/Observal/commit/1eeecb9b43839aa414599e65121d58c5777f2122))
1540
1442
 
1443
+ ### Performance
1444
+
1445
+ - migrate _ev_session_details to session_stats_agg (**insights**) ([d3463ea](https://github.com/BlazeUp-AI/Observal/commit/d3463ea14e59aa8b65139553cabe96db317af521))
1446
+ - migrate _ev_per_session_tokens to session_stats_agg (**insights**) ([b6f6053](https://github.com/BlazeUp-AI/Observal/commit/b6f60534a81f8ed6b9602091c4721884cee17613))
1447
+ - migrate _ev_subagent_stats to session_stats_agg (**insights**) ([5844f3b](https://github.com/BlazeUp-AI/Observal/commit/5844f3bdad656e7b1215397f6a140910c7c702c3))
1448
+ - migrate _ev_duration_stats to session_stats_agg (**insights**) ([70006ad](https://github.com/BlazeUp-AI/Observal/commit/70006ad2285da64e0ad0c088cb71479648b8a5f1))
1449
+ - migrate _ev_credit_aggregates to session_stats_agg (**insights**) ([6626780](https://github.com/BlazeUp-AI/Observal/commit/66267805db095898607367cca44300dc7936abc1))
1450
+ - migrate _ev_token_aggregates to session_stats_agg (**insights**) ([3aaa7c2](https://github.com/BlazeUp-AI/Observal/commit/3aaa7c2ea11015ce124baadf87899ead2a73e7f5))
1451
+ - migrate _ev_session_overview to session_stats_agg (**insights**) ([ea867b4](https://github.com/BlazeUp-AI/Observal/commit/ea867b4d93e4ddb5e8a0d401914918e5d9080d2f))
1452
+ - migrate _count_sessions_in_events to session_stats_agg (**insights**) ([53db78e](https://github.com/BlazeUp-AI/Observal/commit/53db78eb7a9a1deaed00d6058faf3136270b57b9))
1453
+ - add proj_session_view projection on session_events (**clickhouse**) ([0100bb9](https://github.com/BlazeUp-AI/Observal/commit/0100bb9d500920ba34bd08bdbda91bcdc7349690))
1454
+ - replace parent_session_id bloom_filter with set(0) (**clickhouse**) ([4d38c70](https://github.com/BlazeUp-AI/Observal/commit/4d38c705e553694ef7b4820f38b0ae5b3803e70f))
1455
+ - replace event_type bloom_filter with set(20) skip index (**clickhouse**) ([b0f595a](https://github.com/BlazeUp-AI/Observal/commit/b0f595a3beb117e7f610087163c04d5b98f23f96))
1456
+ - drop FINAL from session existence check (**reconcile**) ([ce7733b](https://github.com/BlazeUp-AI/Observal/commit/ce7733bac026b74c667eb8e4bae91717c216e58a))
1457
+ - parallel FINAL scans + partition-scoped dedup in get_session (**sessions**) ([1152bc2](https://github.com/BlazeUp-AI/Observal/commit/1152bc2ebf32c8a55c305eb31359d307423c422a))
1458
+ - migrate stats endpoint to session_stats_agg (**sessions**) ([99db552](https://github.com/BlazeUp-AI/Observal/commit/99db552be788bbcaad5b24fc7982d721ba34a3bc))
1459
+ - migrate summary endpoint to session_stats_agg (**sessions**) ([11d7474](https://github.com/BlazeUp-AI/Observal/commit/11d7474df650a45fb25d2c919dd2f1939eca41dc))
1460
+ - rank top-50 sessions via session_stats_agg, drop FINAL scan (**insights**) ([b6e84b1](https://github.com/BlazeUp-AI/Observal/commit/b6e84b140a37a2036bf9f7492b5443558df731c8))
1461
+ - replace JSONExtract with materialized columns in metrics (**insights**) ([5a2e1bb](https://github.com/BlazeUp-AI/Observal/commit/5a2e1bb52c825d4c116efa5964210923111d1d5a))
1462
+ - add session_stats_agg AggregatingMergeTree MV (**clickhouse**) ([5d54f30](https://github.com/BlazeUp-AI/Observal/commit/5d54f30d2df1b2726606b8313b286544b15777ba))
1463
+ - multi-stage API build, expand dockerignore, add nginx gzip (**docker**) ([21fd2a4](https://github.com/BlazeUp-AI/Observal/commit/21fd2a461bd01709df7775655aedc91a07e608e6))
1464
+ - resolve trace_privacy at auth time, eliminate extra DB calls ([6f3602c](https://github.com/BlazeUp-AI/Observal/commit/6f3602c636a2b147a5622c2856931383bce091b4))
1465
+
1541
1466
  ### Testing
1542
1467
 
1468
+ - add coverage for MCP config parser, shim errors, and edit/submit ([8896814](https://github.com/BlazeUp-AI/Observal/commit/889681403a06bca72120a7e4869b337f4d2b5f51))
1469
+ - cover IDE feature inference (**server**) ([49d341e](https://github.com/BlazeUp-AI/Observal/commit/49d341eb87e81318cfd384abcaf719a2c0790605))
1470
+ - add component edit form screenshot spec (**e2e**) ([6fd363b](https://github.com/BlazeUp-AI/Observal/commit/6fd363b2d6bf0323862b868ebdc2a0ed1d425a78))
1471
+ - add full edit → release → review Playwright flow (**e2e**) ([8672d9a](https://github.com/BlazeUp-AI/Observal/commit/8672d9ae8fdd62ecde89060ab1cdf6c85c7223a6))
1472
+ - update expectations for single-endpoint architecture ([3d271a6](https://github.com/BlazeUp-AI/Observal/commit/3d271a629adc4b5f4e380152b5f5e59f66aeea5c))
1473
+ - update assertions for new config format (**kiro**) ([550ade5](https://github.com/BlazeUp-AI/Observal/commit/550ade505fa9eb1658799bdce050cd140927a2d4))
1474
+ - add copilot-cli e2e tests ([dfabf02](https://github.com/BlazeUp-AI/Observal/commit/dfabf0215d6bdbb9bc1d0f0e2fb50e36dbe6f6d4))
1475
+ - update e2e tests for hook bridge and disabled OTLP (**gemini**) ([9655b26](https://github.com/BlazeUp-AI/Observal/commit/9655b26b3df6f6c34cdb7e7ddfa3c4be0ae46ec9))
1476
+ - add comprehensive tests for Auth 2.0 security features (**auth**) ([adeafd3](https://github.com/BlazeUp-AI/Observal/commit/adeafd3570613f748a2872bb580e64bc1df99be1))
1477
+ - update enterprise tests for real SAML/SCIM behavior (**ee**) ([5568201](https://github.com/BlazeUp-AI/Observal/commit/55682010cd05bfef16701be79b388a62b7487ee9))
1478
+ - add tests for dollar-var placeholder display ([c352100](https://github.com/BlazeUp-AI/Observal/commit/c3521008b775688174e1619e1f7904582c93e6c2))
1479
+ - add edge case tests for ClickHouse resource tuning ([31bd3f7](https://github.com/BlazeUp-AI/Observal/commit/31bd3f7adb39c55c3ff72817db42d339ce7911f4))
1543
1480
  - add tests for dollar-sign variable detection and substitution ([fc37b7a](https://github.com/BlazeUp-AI/Observal/commit/fc37b7ab821cd86b99c420d55d9f3052f3d3bf3b))
1544
1481
  - add docker detection, command inference, SSE config, and direct submit tests ([fb0f5b1](https://github.com/BlazeUp-AI/Observal/commit/fb0f5b101e43833d2786ba17d2071c7c68c1082d))
1545
1482
  - add 32-test org isolation suite (**multi-tenancy**) ([0b63188](https://github.com/BlazeUp-AI/Observal/commit/0b631884906af26dfd6ed42d8cd7107e4eab60f8))