rootcoz 4.4.2__tar.gz → 4.4.4__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 (449) hide show
  1. {rootcoz-4.4.2 → rootcoz-4.4.4}/.pre-commit-config.yaml +3 -2
  2. {rootcoz-4.4.2 → rootcoz-4.4.4}/AGENTS.md +19 -6
  3. {rootcoz-4.4.2 → rootcoz-4.4.4}/PKG-INFO +1 -1
  4. {rootcoz-4.4.2 → rootcoz-4.4.4}/README.md +121 -0
  5. {rootcoz-4.4.2 → rootcoz-4.4.4}/config.example.toml +3 -0
  6. rootcoz-4.4.2/docs/deployment-recipes.html → rootcoz-4.4.4/docs/api-reference.html +45 -54
  7. rootcoz-4.4.4/docs/api-reference.md +3 -0
  8. rootcoz-4.4.2/docs/api-reference.html → rootcoz-4.4.4/docs/automate-common-tasks-with-the-cli.html +45 -54
  9. rootcoz-4.4.4/docs/automate-common-tasks-with-the-cli.md +3 -0
  10. rootcoz-4.4.2/docs/cli-recipes.html → rootcoz-4.4.4/docs/cli-reference.html +45 -54
  11. rootcoz-4.4.4/docs/cli-reference.md +3 -0
  12. rootcoz-4.4.4/docs/collaborate-on-results.html +311 -0
  13. rootcoz-4.4.4/docs/collaborate-on-results.md +3 -0
  14. rootcoz-4.4.2/docs/environment-variables.html → rootcoz-4.4.4/docs/configuration-reference.html +39 -48
  15. rootcoz-4.4.4/docs/configuration-reference.md +3 -0
  16. rootcoz-4.4.4/docs/configure-analysis-context.html +311 -0
  17. rootcoz-4.4.4/docs/configure-analysis-context.md +3 -0
  18. rootcoz-4.4.4/docs/create-follow-up-issues-and-push-results.html +311 -0
  19. rootcoz-4.4.4/docs/create-follow-up-issues-and-push-results.md +3 -0
  20. rootcoz-4.4.4/docs/deploy-rootcoz.html +708 -0
  21. rootcoz-4.4.4/docs/deploy-rootcoz.md +423 -0
  22. rootcoz-4.4.2/docs/exploring-failure-history-and-test-trends.html → rootcoz-4.4.4/docs/explore-history-and-reports.html +121 -98
  23. rootcoz-4.4.4/docs/explore-history-and-reports.md +79 -0
  24. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/index.html +73 -73
  25. rootcoz-4.4.4/docs/llms-full.txt +1123 -0
  26. rootcoz-4.4.4/docs/llms.txt +17 -0
  27. rootcoz-4.4.4/docs/manage-account-and-notifications.html +311 -0
  28. rootcoz-4.4.4/docs/manage-account-and-notifications.md +3 -0
  29. rootcoz-4.4.4/docs/manage-users-and-server-settings.html +311 -0
  30. rootcoz-4.4.4/docs/manage-users-and-server-settings.md +3 -0
  31. rootcoz-4.4.4/docs/quickstart.html +673 -0
  32. rootcoz-4.4.4/docs/quickstart.md +243 -0
  33. rootcoz-4.4.4/docs/review-and-classify-failures.html +552 -0
  34. rootcoz-4.4.4/docs/review-and-classify-failures.md +201 -0
  35. rootcoz-4.4.4/docs/search-index.json +1 -0
  36. rootcoz-4.4.4/docs/submit-analyses.html +311 -0
  37. rootcoz-4.4.4/docs/submit-analyses.md +3 -0
  38. rootcoz-4.4.4/docs/track-analysis-progress.html +311 -0
  39. rootcoz-4.4.4/docs/track-analysis-progress.md +3 -0
  40. rootcoz-4.4.2/docs/managing-users-and-api-keys.html → rootcoz-4.4.4/docs/use-server-chat-for-cross-job-analysis.html +130 -162
  41. rootcoz-4.4.4/docs/use-server-chat-for-cross-job-analysis.md +147 -0
  42. {rootcoz-4.4.2 → rootcoz-4.4.4}/examples/pytest-junitxml/conftest_junit_ai.py +4 -4
  43. {rootcoz-4.4.2 → rootcoz-4.4.4}/examples/pytest-junitxml/conftest_junit_ai_utils.py +6 -5
  44. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/Sidebar.tsx +62 -1
  45. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/__tests__/Sidebar.test.tsx +71 -2
  46. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/api.ts +1 -1
  47. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/DashboardPage.tsx +85 -14
  48. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/NewAnalysisPage.tsx +0 -21
  49. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/ReportPage.tsx +42 -3
  50. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/ChildJobSection.tsx +21 -0
  51. rootcoz-4.4.4/frontend/src/pages/report/CrossFailurePatterns.tsx +50 -0
  52. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/ReAnalyzeDialog.tsx +0 -19
  53. rootcoz-4.4.4/frontend/src/pages/report/TestListSection.tsx +150 -0
  54. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/types/index.ts +30 -2
  55. {rootcoz-4.4.2 → rootcoz-4.4.4}/pyproject.toml +14 -1
  56. {rootcoz-4.4.2 → rootcoz-4.4.4}/scripts/helm-setup.py +4 -3
  57. {rootcoz-4.4.2 → rootcoz-4.4.4}/skills/rootcoz-analyze/SKILL.md +12 -0
  58. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/__init__.py +1 -1
  59. rootcoz-4.4.4/src/rootcoz/agents/__init__.py +0 -0
  60. rootcoz-4.4.4/src/rootcoz/agents/test-analyzer.md +127 -0
  61. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/ai_client.py +15 -10
  62. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/bug_creation.py +18 -17
  63. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/cli/client.py +179 -132
  64. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/cli/config.py +26 -19
  65. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/cli/main.py +231 -134
  66. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/cli/output.py +4 -3
  67. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/comment_enrichment.py +13 -6
  68. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/config.py +14 -14
  69. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/encryption.py +13 -12
  70. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/engine/chat.py +72 -32
  71. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/engine/core.py +737 -106
  72. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/feedback.py +5 -3
  73. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/github_issues.py +5 -3
  74. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/issue_matching.py +4 -3
  75. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/jenkins.py +5 -2
  76. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/jenkins_artifacts.py +8 -8
  77. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/jira.py +16 -13
  78. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/main.py +725 -430
  79. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/metadata_rules.py +31 -16
  80. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/models.py +150 -31
  81. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/monitoring.py +14 -10
  82. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/notifications.py +4 -2
  83. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/peer_analysis.py +25 -11
  84. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/prow_validation.py +6 -6
  85. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/reportportal.py +39 -24
  86. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/repository.py +1 -1
  87. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/result_fields.py +7 -0
  88. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/rootcoz_repo_settings.py +13 -8
  89. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/base.py +76 -24
  90. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/chat_workspace.py +2 -2
  91. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/file_source.py +11 -9
  92. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/jenkins_source.py +270 -156
  93. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/prow_source.py +99 -84
  94. rootcoz-4.4.4/src/rootcoz/sources/raw_source.py +106 -0
  95. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/registry.py +3 -1
  96. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/storage.py +394 -168
  97. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/utils.py +1 -1
  98. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/vapid.py +5 -4
  99. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/xml_enrichment.py +96 -40
  100. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/conftest.py +1 -0
  101. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_admin_approval.py +74 -74
  102. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_ai_tools.py +17 -14
  103. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_analysis_defaults.py +0 -3
  104. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_analyzer.py +420 -46
  105. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_auto_review.py +0 -1
  106. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_chat.py +16 -1
  107. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_cli_client.py +84 -1
  108. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_cli_config.py +68 -16
  109. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_cli_main.py +240 -103
  110. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_comment_intent.py +8 -11
  111. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_config.py +10 -30
  112. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_debug_request_logging.py +18 -16
  113. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_issues_198_201.py +23 -0
  114. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_main.py +380 -257
  115. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_metadata_rules.py +155 -3
  116. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_models.py +90 -34
  117. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_monitoring.py +18 -12
  118. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_prow_source.py +27 -21
  119. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_reportportal.py +8 -9
  120. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_rootcoz_repo_settings.py +2 -2
  121. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_setup_script.py +7 -5
  122. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_storage.py +76 -14
  123. {rootcoz-4.4.2 → rootcoz-4.4.4}/uv.lock +1 -1
  124. rootcoz-4.4.2/docs/analyzing-failures.html +0 -607
  125. rootcoz-4.4.2/docs/analyzing-failures.md +0 -324
  126. rootcoz-4.4.2/docs/api-endpoint-reference.html +0 -6047
  127. rootcoz-4.4.2/docs/api-endpoint-reference.md +0 -2270
  128. rootcoz-4.4.2/docs/api-reference.md +0 -9
  129. rootcoz-4.4.2/docs/automating-common-tasks-with-the-cli.html +0 -533
  130. rootcoz-4.4.2/docs/automating-common-tasks-with-the-cli.md +0 -238
  131. rootcoz-4.4.2/docs/chatting-with-ai.html +0 -320
  132. rootcoz-4.4.2/docs/chatting-with-ai.md +0 -9
  133. rootcoz-4.4.2/docs/cli-command-reference.html +0 -3052
  134. rootcoz-4.4.2/docs/cli-command-reference.md +0 -1123
  135. rootcoz-4.4.2/docs/cli-recipes.md +0 -9
  136. rootcoz-4.4.2/docs/cli-reference.html +0 -4105
  137. rootcoz-4.4.2/docs/cli-reference.md +0 -1906
  138. rootcoz-4.4.2/docs/cli-setup.html +0 -842
  139. rootcoz-4.4.2/docs/cli-setup.md +0 -413
  140. rootcoz-4.4.2/docs/commenting-and-mentioning-teammates.html +0 -456
  141. rootcoz-4.4.2/docs/commenting-and-mentioning-teammates.md +0 -114
  142. rootcoz-4.4.2/docs/configuration-reference.html +0 -1654
  143. rootcoz-4.4.2/docs/configuration-reference.md +0 -504
  144. rootcoz-4.4.2/docs/configuring-integrations.html +0 -901
  145. rootcoz-4.4.2/docs/configuring-integrations.md +0 -408
  146. rootcoz-4.4.2/docs/connecting-github-jira-and-report-portal.html +0 -475
  147. rootcoz-4.4.2/docs/connecting-github-jira-and-report-portal.md +0 -179
  148. rootcoz-4.4.2/docs/creating-github-and-jira-issues.html +0 -484
  149. rootcoz-4.4.2/docs/creating-github-and-jira-issues.md +0 -148
  150. rootcoz-4.4.2/docs/creating-issues.html +0 -320
  151. rootcoz-4.4.2/docs/creating-issues.md +0 -9
  152. rootcoz-4.4.2/docs/deployment-recipes.md +0 -9
  153. rootcoz-4.4.2/docs/environment-variables.md +0 -9
  154. rootcoz-4.4.2/docs/exploring-failure-history-and-test-trends.md +0 -78
  155. rootcoz-4.4.2/docs/finding-runs-on-the-dashboard.html +0 -422
  156. rootcoz-4.4.2/docs/finding-runs-on-the-dashboard.md +0 -78
  157. rootcoz-4.4.2/docs/llms-full.txt +0 -4121
  158. rootcoz-4.4.2/docs/llms.txt +0 -31
  159. rootcoz-4.4.2/docs/managing-users-and-api-keys.md +0 -156
  160. rootcoz-4.4.2/docs/managing-users.html +0 -320
  161. rootcoz-4.4.2/docs/managing-users.md +0 -9
  162. rootcoz-4.4.2/docs/peer-analysis.html +0 -547
  163. rootcoz-4.4.2/docs/peer-analysis.md +0 -224
  164. rootcoz-4.4.2/docs/pytest-integration.html +0 -320
  165. rootcoz-4.4.2/docs/pytest-integration.md +0 -9
  166. rootcoz-4.4.2/docs/quickstart.html +0 -317
  167. rootcoz-4.4.2/docs/quickstart.md +0 -9
  168. rootcoz-4.4.2/docs/reviewing-and-classifying-failures.html +0 -458
  169. rootcoz-4.4.2/docs/reviewing-and-classifying-failures.md +0 -109
  170. rootcoz-4.4.2/docs/reviewing-results.html +0 -687
  171. rootcoz-4.4.2/docs/reviewing-results.md +0 -347
  172. rootcoz-4.4.2/docs/run-your-first-analysis.html +0 -429
  173. rootcoz-4.4.2/docs/run-your-first-analysis.md +0 -119
  174. rootcoz-4.4.2/docs/search-index.json +0 -1
  175. rootcoz-4.4.2/docs/submitting-jenkins-builds-and-junit-xml.html +0 -489
  176. rootcoz-4.4.2/docs/submitting-jenkins-builds-and-junit-xml.md +0 -181
  177. rootcoz-4.4.2/docs/tracking-analysis-progress.html +0 -489
  178. rootcoz-4.4.2/docs/tracking-analysis-progress.md +0 -120
  179. rootcoz-4.4.2/docs/tracking-history.html +0 -668
  180. rootcoz-4.4.2/docs/tracking-history.md +0 -333
  181. rootcoz-4.4.2/docs/updating-your-profile-and-notifications.html +0 -461
  182. rootcoz-4.4.2/docs/updating-your-profile-and-notifications.md +0 -90
  183. rootcoz-4.4.2/src/rootcoz/sources/raw_source.py +0 -72
  184. {rootcoz-4.4.2 → rootcoz-4.4.4}/.coderabbit.yaml +0 -0
  185. {rootcoz-4.4.2 → rootcoz-4.4.4}/.dockerignore +0 -0
  186. {rootcoz-4.4.2 → rootcoz-4.4.4}/.env.example +0 -0
  187. {rootcoz-4.4.2 → rootcoz-4.4.4}/.flake8 +0 -0
  188. {rootcoz-4.4.2 → rootcoz-4.4.4}/.gitignore +0 -0
  189. {rootcoz-4.4.2 → rootcoz-4.4.4}/.gitleaks.toml +0 -0
  190. {rootcoz-4.4.2 → rootcoz-4.4.4}/.markdownlint.yaml +0 -0
  191. {rootcoz-4.4.2 → rootcoz-4.4.4}/.pr_agent.toml +0 -0
  192. {rootcoz-4.4.2 → rootcoz-4.4.4}/CLAUDE.md +0 -0
  193. {rootcoz-4.4.2 → rootcoz-4.4.4}/Dockerfile +0 -0
  194. {rootcoz-4.4.2 → rootcoz-4.4.4}/LICENSE +0 -0
  195. {rootcoz-4.4.2 → rootcoz-4.4.4}/OWNERS +0 -0
  196. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/Chart.yaml +0 -0
  197. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/README.md +0 -0
  198. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/examples/values-clusterip.yaml +0 -0
  199. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/examples/values-cursor-fixture.yaml +0 -0
  200. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/examples/values-kubernetes.yaml +0 -0
  201. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/examples/values-openshift.yaml +0 -0
  202. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/examples/values-vertex-fixture.yaml +0 -0
  203. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/NOTES.txt +0 -0
  204. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/_helpers.tpl +0 -0
  205. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/configmap.yaml +0 -0
  206. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/deployment.yaml +0 -0
  207. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/imagestream.yaml +0 -0
  208. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/ingress.yaml +0 -0
  209. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/pvc.yaml +0 -0
  210. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/route.yaml +0 -0
  211. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/secret-credentials.yaml +0 -0
  212. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/secret-cursor-auth.yaml +0 -0
  213. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/secret-encryption-key.yaml +0 -0
  214. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/secret-gcloud.yaml +0 -0
  215. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/service.yaml +0 -0
  216. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/serviceaccount.yaml +0 -0
  217. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/templates/tests/test-health.yaml +0 -0
  218. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/values.schema.json +0 -0
  219. {rootcoz-4.4.2 → rootcoz-4.4.4}/chart/values.yaml +0 -0
  220. {rootcoz-4.4.2 → rootcoz-4.4.4}/docker-compose.yaml +0 -0
  221. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/.nojekyll +0 -0
  222. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/callouts.js +0 -0
  223. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/codelabels.js +0 -0
  224. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/copy.js +0 -0
  225. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/github.js +0 -0
  226. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/scrollspy.js +0 -0
  227. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/search.js +0 -0
  228. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/style.css +0 -0
  229. {rootcoz-4.4.2 → rootcoz-4.4.4}/docs/assets/theme.js +0 -0
  230. {rootcoz-4.4.2 → rootcoz-4.4.4}/entrypoint.sh +0 -0
  231. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/.gitignore +0 -0
  232. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/README.md +0 -0
  233. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/eslint.config.js +0 -0
  234. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/index.html +0 -0
  235. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/package-lock.json +0 -0
  236. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/package.json +0 -0
  237. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/public/favicon.svg +0 -0
  238. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/public/icons.svg +0 -0
  239. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/public/sw.js +0 -0
  240. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/App.tsx +0 -0
  241. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/Header.tsx +0 -0
  242. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/Layout.tsx +0 -0
  243. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/UserBadge.tsx +0 -0
  244. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/__tests__/Header.test.tsx +0 -0
  245. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/layout/__tests__/Layout.test.tsx +0 -0
  246. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/AdditionalReposList.tsx +0 -0
  247. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ChatMarkdown.tsx +0 -0
  248. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ChatUI.tsx +0 -0
  249. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ClassificationBadge.tsx +0 -0
  250. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ConfirmDialog.tsx +0 -0
  251. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/CursorAuthBanner.tsx +0 -0
  252. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/CustomMessageBanner.tsx +0 -0
  253. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/DateRangePresetFilter.tsx +0 -0
  254. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ExpandCollapseButtons.tsx +0 -0
  255. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/FeedbackDialog.tsx +0 -0
  256. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/FieldLabel.tsx +0 -0
  257. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/LinkedText.tsx +0 -0
  258. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/LoadingSpinner.tsx +0 -0
  259. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/MetadataBadges.tsx +0 -0
  260. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/MetadataFilterBar.tsx +0 -0
  261. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ModelCombobox.tsx +0 -0
  262. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/MultiSelectFilter.tsx +0 -0
  263. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/NavBadge.tsx +0 -0
  264. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/NotificationToggle.tsx +0 -0
  265. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/OriginJobBanner.tsx +0 -0
  266. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/Pagination.tsx +0 -0
  267. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/PeerConfigList.tsx +0 -0
  268. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/PeerRoundEntry.tsx +0 -0
  269. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ProfileForm.tsx +0 -0
  270. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ProtectedRoute.tsx +0 -0
  271. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ProviderSelect.tsx +0 -0
  272. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/ReviewStatusFilter.tsx +0 -0
  273. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/RoleBadge.tsx +0 -0
  274. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/SearchInput.tsx +0 -0
  275. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/Section.tsx +0 -0
  276. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/SectionDivider.tsx +0 -0
  277. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/SortableHeader.tsx +0 -0
  278. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/StatusChip.tsx +0 -0
  279. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/Toggle.tsx +0 -0
  280. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/TokenField.tsx +0 -0
  281. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/TokenRequiredBanner.tsx +0 -0
  282. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/TrackerTokensFields.tsx +0 -0
  283. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/UuidCopyButton.tsx +0 -0
  284. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/WhatsNewDialog.tsx +0 -0
  285. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/ChatMarkdown.test.tsx +0 -0
  286. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/CursorAuthBanner.test.tsx +0 -0
  287. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/DateRangePresetFilter.test.tsx +0 -0
  288. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/FeedbackDialog.test.tsx +0 -0
  289. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/LinkedText.test.tsx +0 -0
  290. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/ProtectedRoute.test.tsx +0 -0
  291. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/StatusChip.test.tsx +0 -0
  292. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/shared/__tests__/WhatsNewDialog.test.tsx +0 -0
  293. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/badge.tsx +0 -0
  294. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/button.tsx +0 -0
  295. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/card.tsx +0 -0
  296. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/collapsible.tsx +0 -0
  297. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/dialog.tsx +0 -0
  298. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/dropdown-menu.tsx +0 -0
  299. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/input.tsx +0 -0
  300. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/popover.tsx +0 -0
  301. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/select.tsx +0 -0
  302. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/separator.tsx +0 -0
  303. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/skeleton.tsx +0 -0
  304. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/switch.tsx +0 -0
  305. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/table.tsx +0 -0
  306. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/textarea.tsx +0 -0
  307. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/components/ui/tooltip.tsx +0 -0
  308. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/constants/classifications.ts +0 -0
  309. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/hooks/useProviderModels.ts +0 -0
  310. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/index.css +0 -0
  311. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/SSEProvider.tsx +0 -0
  312. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/aiProviders.test.ts +0 -0
  313. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/api.test.ts +0 -0
  314. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/autoLink.test.ts +0 -0
  315. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/childJobHash.test.ts +0 -0
  316. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/cookies.test.ts +0 -0
  317. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/errorCapture.test.ts +0 -0
  318. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/format.test.ts +0 -0
  319. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/grouping.test.ts +0 -0
  320. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/peerDebate.test.ts +0 -0
  321. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/useProviderOptions.test.ts +0 -0
  322. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/__tests__/utils.test.ts +0 -0
  323. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/aiProviders.ts +0 -0
  324. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/auth.tsx +0 -0
  325. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/autoLink.ts +0 -0
  326. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/childJobHash.ts +0 -0
  327. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/constants.ts +0 -0
  328. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/cookies.ts +0 -0
  329. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/dateRange.ts +0 -0
  330. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/errorCapture.ts +0 -0
  331. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/failureKeys.ts +0 -0
  332. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/format.ts +0 -0
  333. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/grouping.ts +0 -0
  334. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/notifications.ts +0 -0
  335. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/originJobLabel.ts +0 -0
  336. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/peerDebate.ts +0 -0
  337. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/review-status.ts +0 -0
  338. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/reviewKey.ts +0 -0
  339. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/tokens.ts +0 -0
  340. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useClipboard.ts +0 -0
  341. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useExpandCollapseAll.ts +0 -0
  342. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useLatestRef.ts +0 -0
  343. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/usePeerModels.ts +0 -0
  344. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useProviderModels.ts +0 -0
  345. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useProviderOptions.ts +0 -0
  346. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useSessionState.ts +0 -0
  347. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/useTableSort.ts +0 -0
  348. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/lib/utils.ts +0 -0
  349. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/main.tsx +0 -0
  350. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/AdminChatPage.tsx +0 -0
  351. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/ChatPage.tsx +0 -0
  352. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/HistoryPage.tsx +0 -0
  353. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/LogsPage.tsx +0 -0
  354. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/MentionsPage.tsx +0 -0
  355. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/PendingApprovalPage.tsx +0 -0
  356. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/RegisterPage.tsx +0 -0
  357. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/ReportsPage.tsx +0 -0
  358. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/ServerSettingsPage.tsx +0 -0
  359. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/SettingsPage.tsx +0 -0
  360. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/StatusPage.tsx +0 -0
  361. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/TestHistoryPage.tsx +0 -0
  362. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/TokenUsagePage.tsx +0 -0
  363. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/UsersPage.tsx +0 -0
  364. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/__tests__/DashboardAnalysisFilter.test.ts +0 -0
  365. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/AllReviewedPrompt.tsx +0 -0
  366. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/BugCreationDialog.tsx +0 -0
  367. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/ClassificationSelect.tsx +0 -0
  368. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/CommentsSection.tsx +0 -0
  369. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/FailureCard.tsx +0 -0
  370. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/MentionTextarea.tsx +0 -0
  371. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/PatternSelect.tsx +0 -0
  372. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/PeerAnalysisSummary.tsx +0 -0
  373. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/PeerDebateSection.tsx +0 -0
  374. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/ReportContext.tsx +0 -0
  375. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/ReportPortalButton.tsx +0 -0
  376. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/ReviewToggle.tsx +0 -0
  377. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/TokenUsageBadge.tsx +0 -0
  378. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/TrackedInBadge.tsx +0 -0
  379. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/AllReviewedPrompt.test.tsx +0 -0
  380. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/CodeFixLiteralBlock.test.tsx +0 -0
  381. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/CommentsSection.test.tsx +0 -0
  382. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/MentionTextarea.test.tsx +0 -0
  383. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/PeerAnalysisSummary.test.tsx +0 -0
  384. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/ReportContext.test.ts +0 -0
  385. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/__tests__/useReviewSuggestion.test.tsx +0 -0
  386. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/pages/report/useReviewSuggestion.ts +0 -0
  387. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/test/setup.ts +0 -0
  388. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/src/theme.css +0 -0
  389. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/tsconfig.app.json +0 -0
  390. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/tsconfig.json +0 -0
  391. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/tsconfig.node.json +0 -0
  392. {rootcoz-4.4.2 → rootcoz-4.4.4}/frontend/vite.config.ts +0 -0
  393. {rootcoz-4.4.2 → rootcoz-4.4.4}/package-lock.json +0 -0
  394. {rootcoz-4.4.2 → rootcoz-4.4.4}/pypi-dist/.gitignore +0 -0
  395. {rootcoz-4.4.2 → rootcoz-4.4.4}/renovate.json +0 -0
  396. {rootcoz-4.4.2 → rootcoz-4.4.4}/sidecar-helper/.gitignore +0 -0
  397. {rootcoz-4.4.2 → rootcoz-4.4.4}/sidecar-helper/package-lock.json +0 -0
  398. {rootcoz-4.4.2 → rootcoz-4.4.4}/sidecar-helper/package.json +0 -0
  399. {rootcoz-4.4.2 → rootcoz-4.4.4}/sidecar-helper/src/server.ts +0 -0
  400. {rootcoz-4.4.2 → rootcoz-4.4.4}/sidecar-helper/tsconfig.json +0 -0
  401. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/ai-prompts/FAILURE_HISTORY_ANALYSIS.md +0 -0
  402. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/cli/__init__.py +0 -0
  403. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/engine/__init__.py +0 -0
  404. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/error_messages.py +0 -0
  405. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/logging_context.py +0 -0
  406. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/request_resolution.py +0 -0
  407. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/schemas/rootcoz-settings.schema.json +0 -0
  408. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/__init__.py +6 -6
  409. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/sources/prow_validation.py +0 -0
  410. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/token_tracking.py +0 -0
  411. {rootcoz-4.4.2 → rootcoz-4.4.4}/src/rootcoz/url_utils.py +0 -0
  412. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/__init__.py +0 -0
  413. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_ai_client.py +0 -0
  414. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_allow_list.py +0 -0
  415. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_api_notifications.py +0 -0
  416. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_api_token_usage.py +0 -0
  417. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_auth.py +0 -0
  418. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_bug_creation.py +0 -0
  419. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_cli_output.py +0 -0
  420. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_comment_enrichment.py +0 -0
  421. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_comments.py +0 -0
  422. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_encryption.py +0 -0
  423. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_feedback.py +1 -1
  424. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_github_issues.py +0 -0
  425. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_history.py +0 -0
  426. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_issue_matching.py +0 -0
  427. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_jenkins.py +0 -0
  428. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_jenkins_artifacts.py +1 -1
  429. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_jira.py +0 -0
  430. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_job_metadata.py +0 -0
  431. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_logging_context.py +0 -0
  432. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_mentions.py +0 -0
  433. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_no_real_sidecar.py +0 -0
  434. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_notifications.py +0 -0
  435. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_peer_analysis.py +0 -0
  436. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_prow_validation.py +0 -0
  437. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_reportportal_cli.py +0 -0
  438. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_reportportal_config.py +0 -0
  439. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_reportportal_endpoint.py +0 -0
  440. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_reports.py +0 -0
  441. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_repository.py +0 -0
  442. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_sources_base.py +0 -0
  443. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_storage_push.py +0 -0
  444. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_storage_token_usage.py +0 -0
  445. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_token_tracking.py +0 -0
  446. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_user_auth.py +0 -0
  447. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_vapid.py +0 -0
  448. {rootcoz-4.4.2 → rootcoz-4.4.4}/tests/test_xml_enrichment.py +0 -0
  449. {rootcoz-4.4.2 → rootcoz-4.4.4}/tox.toml +0 -0
@@ -42,9 +42,10 @@ repos:
42
42
  exclude: ^docs/
43
43
 
44
44
  - repo: https://github.com/astral-sh/ruff-pre-commit
45
- rev: v0.15.22
45
+ rev: v0.16.0
46
46
  hooks:
47
47
  - id: ruff
48
+ args: [--fix]
48
49
  - id: ruff-format
49
50
 
50
51
  - repo: https://github.com/gitleaks/gitleaks
@@ -61,7 +62,7 @@ repos:
61
62
  [types-requests, types-PyYAML, types-colorama, types-aiofiles, pydantic, pi-sidecar-client]
62
63
 
63
64
  - repo: https://github.com/pre-commit/mirrors-eslint
64
- rev: v10.7.0
65
+ rev: v10.8.0
65
66
  hooks:
66
67
  - id: eslint
67
68
  files: \.js$
@@ -82,7 +82,8 @@ uvx --with tox-uv tox -e chart # Helm chart only
82
82
  ```text
83
83
  src/rootcoz/
84
84
  engine/ # CI-agnostic analysis core
85
- core.py # Failure grouping, AI CLI orchestration, prompt building,
85
+ core.py # Failure grouping, AI orchestration (per-group with agent
86
+ # system_prompt + cross-failure detection), prompt building,
86
87
  # JSON response parsing, deduplication. Has ZERO knowledge
87
88
  # of any specific CI system.
88
89
  chat.py # Chat engine: workspace, AI session, prompt builder
@@ -99,9 +100,13 @@ src/rootcoz/
99
100
  prow_validation.py # Canonical Prow validators (+ URL helper re-exports for compatibility)
100
101
  url_utils.py # Cross-cutting HTTP(S) URL sanitization (strip userinfo, href)
101
102
  main.py # FastAPI app, unified POST /analyze endpoint, background tasks
102
- models.py # Pydantic request/response models
103
+ xml_enrichment.py # JUnit XML parsing: extract_all_tests_from_xml (pass/skip/fail),
104
+ # extract_failures_from_xml/extract_test_failures wrappers,
105
+ # apply_analysis_to_xml, build_enriched_xml
106
+ models.py # Pydantic request/response models (BaseTestEntry, FailedTest, etc.)
103
107
  config.py # Settings (env vars)
104
- storage.py # SQLite persistence
108
+ storage.py # SQLite persistence (includes test_entries table)
109
+ agents/ # Built-in pi agents (e.g. test-analyzer) copied to workspace .pi/agents/
105
110
  ai_client.py # AI provider constants and usage recording setup
106
111
  sidecar-helper/ # Pi SDK sidecar service (Node.js/TypeScript)
107
112
  src/server.ts # Thin wrapper calling @myk-org/pi-sidecar startSidecar()
@@ -169,7 +174,7 @@ Analyzed repositories can provide project-specific customization files under a `
169
174
 
170
175
  - **`settings.json`**: Optional non-sensitive analysis settings for the test repo. Validated against the JSON Schema in `src/rootcoz/schemas/rootcoz-settings.schema.json` (Pydantic model `RootcozRepoSettings`). Allowed keys only: `ai_provider`, `ai_model`, `ai_call_timeout`, `max_concurrent_ai_calls`, `peer_ai_configs`, `peer_analysis_max_rounds`, `additional_repos`. No secrets (tokens rejected). Priority for all allowed keys: request → `settings.json` → server. Loaded after the test repo is cloned (`rootcoz_repo_settings.py`).
171
176
  - **Prompt files**: `build_resources_section()` and `build_prompt_sections()` in `engine/core.py` scan `<repo>/.rootcoz/` for `ROOTCOZ_PROMPT.md` and `ROOTCOZ_HISTORY_PROMPT.md`. The issue prompt (`ROOTCOZ_ISSUE_PROMPT.md`) is fetched via the GitHub Contents API from `.rootcoz/` in `main.py`.
172
- - **Pi resources**: After cloning repos (analysis, re-analysis, and chat paths), `.rootcoz/{agents,skills,extensions}/` are copied into `<workspace>/.pi/` via `copy_rootcoz_pi_resources()` so pi's `DefaultResourceLoader` discovers them.
177
+ - **Pi resources**: After cloning repos (analysis, re-analysis, and chat paths), `.rootcoz/{agents,skills,extensions}/` are copied into `<workspace>/.pi/` via `copy_rootcoz_pi_resources()` so pi's `DefaultResourceLoader` discovers them. Built-in agents from `src/rootcoz/agents/` are then copied via `copy_builtin_agents_to_workspace()` — existing user agent files with the same name are NOT overwritten (user agents take precedence). Analysis sessions use tools `["read", "ls", "find", "grep"]` only (no `subagent`); the `test-analyzer` agent file is loaded as `system_prompt`. Chat sessions still include `subagent`.
173
178
  - This is a **breaking change** — the previous legacy prompt filenames in the repo root are no longer supported. Only `.rootcoz/` is recognized.
174
179
 
175
180
  ### AI Tool Access (MANDATORY)
@@ -212,7 +217,7 @@ AI chat sessions MUST use restricted tool sets — **never give bash access**.
212
217
  - **Data access**: Use HTTP-backed custom tools via pi-sidecar (pi-sidecar ≥4.2.0)
213
218
  - **Never**: `bash`, `exec`, `write`, `edit` — the AI must not execute arbitrary commands or modify files
214
219
  - Custom tools define exactly which API endpoints the AI can call — nothing else is reachable
215
- - Per-job chat tools: `get_job_result`, `get_job_comments`, `search_jira`, `get_jira_issue`, `search_github_issues`, `get_github_issue` (conditional on user credentials)
220
+ - Per-job chat tools: `get_job_result`, `get_job_comments`, `get_job_tests`, `search_jira`, `get_jira_issue`, `search_github_issues`, `get_github_issue` (conditional on user credentials)
216
221
  - Admin chat tools: `db_schema`, `db_query` (read-only SQL against the database), `get_report_totals`, `get_classification_overrides`, `get_issues_created` (pre-built analytics reports), `save_report` (generate downloadable HTML report)
217
222
 
218
223
  ### CLI Parity
@@ -244,11 +249,19 @@ When not configured, error messages are role-aware: admins are pointed to Server
244
249
 
245
250
  `rootcoz-ai` is the reserved system identity for all AI-originated actions (auto-review, classification). The identity string is defined as `AI_SYSTEM_USERNAME` in `storage.py` — all code must use this constant instead of hardcoding the string. It is blocked from user registration. The `POST /history/classify` endpoint uses `source="ai"` in the request body to identify AI callers, and stores `created_by = "rootcoz-ai"` for attribution. A backend guard prevents AI from overriding user classifications.
246
251
 
252
+ ### Test Entries & Zero-Failure Fast Path
253
+
254
+ All test outcomes (passed, skipped, failed) are stored in the `test_entries` table with `child_job_name`/`child_build_number` scoping. Counts are cached in `result_json` for dashboard display. The `BaseTestEntry` model (base class of `FailedTest`) provides the shared `test_name`/`duration`/`status` fields.
255
+
256
+ - **Paginated API**: `GET /api/results/{job_id}/tests?status=passed&status=skipped&offset=0&limit=50` (viewer+ auth, CLI: `rootcoz results tests`)
257
+ - **Zero-failure fast path**: When `CISourceResult.skip_analysis=True` (e.g. Jenkins SUCCESS, file with no failures), the pipeline skips AI analysis, repo cloning, and workspace setup. Test entries are still saved and counts cached. Metadata assignment, SSE notifications, and auth enforcement still apply.
258
+ - **Jenkins FAILURE/UNSTABLE/ABORTED with empty test report**: NOT fast path — console-only analysis runs (preserves existing behavior).
259
+
247
260
  ### Failure Deduplication
248
261
 
249
262
  When multiple tests fail with the same error:
250
263
  1. Failures are grouped by error signature (SHA-256 hash of normalized error + stack trace)
251
- 2. Only one AI CLI call per unique error type
264
+ 2. One `call_ai_once` per unique error with `test-analyzer` agent as system_prompt (cross-failure patterns detected in a final pass)
252
265
  3. Analysis is applied to all failures with matching signature
253
266
  4. Signatures are normalized before hashing (timestamps, UUIDs, pod name suffixes, build numbers stripped)
254
267
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rootcoz
3
- Version: 4.4.2
3
+ Version: 4.4.4
4
4
  Summary: AI-powered root cause analysis for CI/CD test failures
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE
@@ -67,10 +67,129 @@ Jobs can omit `gcs_prefix`; RootCoz auto-resolves it via prowjob.json or the Pro
67
67
 
68
68
  - **AI-Powered Failure Analysis** — Classifies test failures as code issues or product bugs
69
69
  - **Multi-CI Support** — Analyzes builds from Jenkins, Prow (GCS artifacts), or raw JUnit XML input with a unified pipeline
70
+ - **Full Test Visibility** — Stores and displays all test outcomes (passed, skipped, failed) from CI sources. Zero-failure jobs are handled as a fast path with no AI overhead.
70
71
  - **AI Token Usage Tracking** — Track token consumption, costs, and duration for all AI CLI calls. Admin dashboard shows usage by provider/model/time period with CSV export.
71
72
  - **Public OpenAPI** — `/openapi.json`, `/docs`, and `/redoc` are available without authentication
72
73
  - **Sparse result fields** — `GET /results/{job_id}?fields=status,result.summary,...` returns only allowlisted paths (full values). Discover paths via `GET /api/results/fields` or `rootcoz results fields`
73
74
  - **Reports access flag** — Non-admins need `can_view_reports` (admin grant / `rootcoz admin users set-can-view-reports`) to call `/api/reports/*` and `rootcoz reports`
75
+ - **Analyze-time labels** — Pass `--label` / `-l` on `rootcoz analyze` (or `labels` in the API / config.toml) to merge job metadata labels at submit time
76
+
77
+ ## Custom Analysis Agents
78
+
79
+ rootcoz supports user-provided analysis agents that extend or customize the AI failure analysis pipeline. Agents are defined as Markdown files and are automatically discovered and executed during analysis.
80
+
81
+ ### How It Works
82
+
83
+ 1. Place agent `.md` files in `.rootcoz/agents/` in your analyzed repository
84
+ 2. When rootcoz clones the repo for analysis, it copies `.rootcoz/agents/` to the workspace `.pi/agents/`
85
+ 3. The AI orchestrator loads the built-in `test-analyzer` agent body as the `system_prompt` for per-group AI calls (read via the `read` tool, not dispatched as a subagent)
86
+ 4. Other project agents (non-`test-analyzer`) are read via the STEP 0 hard gate before analysis begins — the AI reads each agent file using the `read` tool to incorporate their guidance
87
+ 5. To override the built-in analyzer, name your agent `test-analyzer` — user agents take precedence
88
+
89
+ ### Creating an Agent
90
+
91
+ Create a Markdown file in `.rootcoz/agents/` with YAML frontmatter:
92
+
93
+ ```markdown
94
+ ---
95
+ name: my-analyzer
96
+ description: Brief description of what this agent does.
97
+ tools:
98
+ - read
99
+ - ls
100
+ - find
101
+ - grep
102
+ ---
103
+
104
+ # My Custom Analyzer
105
+
106
+ Your agent instructions here...
107
+ ```
108
+
109
+ ### Requirements
110
+
111
+ - **Name**: Must match `^[A-Za-z0-9._-]{1,64}$` — prefer frontmatter `name:`; filename stem is used as fallback when it matches the same regex
112
+ - **Format**: Markdown file with YAML frontmatter. `name:` is preferred (filename stem is the fallback when it matches the safe regex). `description:` and `tools:` are recommended — see below
113
+ - **Tools**: Strongly recommended — list `tools: [read, ls, find, grep]` in frontmatter to restrict available tools. Without this, pi may grant default builtins including `bash`
114
+ - **Discovery**: Names that don't match the regex are silently skipped (not sanitized/rewritten)
115
+ - **Response** (test-analyzer or overrides): Return a valid JSON object matching the `AnalysisDetail` schema. Other STEP 0 agents return free-form text that gets incorporated into the analysis details:
116
+
117
+ ```json
118
+ {
119
+ "classification": "PRODUCT BUG | CODE ISSUE | INFRASTRUCTURE",
120
+ "pattern": "NEW | REGRESSION | FLAKY | INTERMITTENT | KNOWN_BUG | PERSISTENT",
121
+ "affected_tests": ["test_name_1"],
122
+ "details": "Detailed analysis text",
123
+ "artifacts_evidence": "Evidence from build artifacts"
124
+ }
125
+ ```
126
+
127
+ For `CODE ISSUE`, include a `code_fix` object. For `PRODUCT BUG`, include a `product_bug_report` object.
128
+
129
+ ### Example Agent
130
+
131
+ ```markdown
132
+ ---
133
+ name: k8s-analyzer
134
+ description: Analyzes Kubernetes-related test failures including pod scheduling, networking, storage, and RBAC issues.
135
+ tools:
136
+ - read
137
+ - ls
138
+ - find
139
+ - grep
140
+ ---
141
+
142
+ # Kubernetes Failure Analyzer
143
+
144
+ You specialize in analyzing Kubernetes-related test failures.
145
+
146
+ ## Instructions
147
+
148
+ 1. Read the failure details file provided by the orchestrator
149
+ 2. Look for Kubernetes-specific errors (pod scheduling, resource limits, network policies)
150
+ 3. Check build artifacts for kubectl logs, pod descriptions, and event dumps
151
+ 4. Return your findings as free-form text (STEP 0 advisory agents are not per-group classifiers)
152
+
153
+ ## Focus Areas
154
+
155
+ - Pod scheduling failures (Insufficient CPU/memory, node affinity)
156
+ - Network connectivity issues (DNS resolution, service endpoints)
157
+ - Storage provisioning failures (PVC binding, StorageClass issues)
158
+ - RBAC and security context problems
159
+ ```
160
+
161
+ ### Agent Discovery
162
+
163
+ - Agents are discovered from `.rootcoz/agents/*.md` files
164
+ - The `name` field in frontmatter is preferred; filename stem is used as fallback
165
+ - User agents take precedence over built-in agents with the same name
166
+ - Agent names are validated against `^[A-Za-z0-9._-]{1,64}$` — non-matching names/stems are silently skipped
167
+
168
+ ### Built-in Agents
169
+
170
+ rootcoz ships a built-in `test-analyzer` agent that handles the core failure analysis. It is automatically copied to the workspace and used by the orchestrator. User agents with the same name override it.
171
+
172
+ ### Cross-Failure Patterns
173
+
174
+ When using orchestrated analysis (default, non-peer mode), the orchestrator AI sees ALL failure groups and can detect cross-failure patterns — correlations impossible with per-group isolation.
175
+
176
+ Patterns appear in the API response as `cross_failure_patterns` on the job result:
177
+
178
+ ```json
179
+ {
180
+ "cross_failure_patterns": [
181
+ {
182
+ "pattern": "15 failures share the same NFS mount timeout",
183
+ "affected_tests": ["test_a", "test_b"],
184
+ "suggested_root_cause": "NFS server infrastructure issue"
185
+ }
186
+ ]
187
+ }
188
+ ```
189
+
190
+ On `GET /results/{job_id}`, the field lives at `result.cross_failure_patterns`. The frontend displays these patterns on the job report page between the summary and individual failure cards.
191
+
192
+ **Note:** Cross-failure patterns are only detected in orchestrated mode. When `peer_ai_configs` is set, the legacy per-group analysis path is used and no cross-failure patterns are generated.
74
193
 
75
194
  ## CLI
76
195
 
@@ -80,6 +199,7 @@ export ROOTCOZ_SERVER=http://localhost:8000
80
199
 
81
200
  rootcoz health
82
201
  rootcoz analyze --job-name my-job --build-number 42
202
+ rootcoz analyze --job-name my-job --build-number 42 --label Nightly -l CNV
83
203
  rootcoz analyze --source prow \
84
204
  --job-name periodic-ci-e2e-aws \
85
205
  --build-number 1234567890 \
@@ -87,6 +207,7 @@ rootcoz analyze --source prow \
87
207
  --gcs-bucket test-platform-results \
88
208
  --gcs-prefix logs/periodic-ci-e2e-aws/1234567890
89
209
  rootcoz results list
210
+ rootcoz results tests <job_id> # List test entries (passed/skipped/failed)
90
211
  rootcoz admin token-usage # Summary dashboard
91
212
  rootcoz admin token-usage --group-by model # Grouped breakdown
92
213
  rootcoz admin token-usage --job-id <uuid> # Per-job usage
@@ -41,6 +41,9 @@ enable_jira = true
41
41
  # GitHub
42
42
  github_token = "ghp_your-github-token"
43
43
 
44
+ # Job metadata labels (comma-separated); merged into job_metadata.labels on analyze
45
+ # labels = "Nightly,CNV"
46
+
44
47
  [servers.dev]
45
48
  url = "http://localhost:8000"
46
49
  username = "your-username"
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Deployment Recipes - rootcoz</title>
7
- <meta name="description" content="Automatically diagnose CI/CD test failures with AI and get actionable root cause analysis in seconds">
6
+ <title>API Endpoint Reference - rootcoz</title>
7
+ <meta name="description" content="Understand failing CI runs, collaborate on fixes, and create follow-up issues faster.">
8
8
  <link rel="stylesheet" href="assets/style.css">
9
9
  <script>try{var t=localStorage.getItem('theme');if(t==='dark')document.documentElement.setAttribute('data-theme','dark')}catch(e){}</script>
10
10
  <link rel="alternate" type="text/plain" title="LLM Documentation Index" href="llms.txt">
@@ -14,7 +14,7 @@
14
14
  <aside class="sidebar" id="sidebar">
15
15
  <div class="sidebar-header">
16
16
  <a href="index.html" class="sidebar-logo">rootcoz</a>
17
- <p class="sidebar-tagline">Automatically diagnose CI/CD test failures with AI and get actionable root cause analysis in seconds</p>
17
+ <p class="sidebar-tagline">Understand failing CI runs, collaborate on fixes, and create follow-up issues faster.</p>
18
18
  </div>
19
19
 
20
20
  <div class="sidebar-search">
@@ -35,13 +35,6 @@
35
35
  </a>
36
36
  </li>
37
37
 
38
- <li>
39
- <a href="cli-setup.html"
40
- class="nav-link">
41
- Setting Up the CLI
42
- </a>
43
- </li>
44
-
45
38
  </ul>
46
39
  </div>
47
40
 
@@ -50,65 +43,72 @@
50
43
  <ul class="nav-group-pages">
51
44
 
52
45
  <li>
53
- <a href="analyzing-failures.html"
46
+ <a href="submit-analyses.html"
47
+ class="nav-link">
48
+ Submitting Analyses
49
+ </a>
50
+ </li>
51
+
52
+ <li>
53
+ <a href="configure-analysis-context.html"
54
54
  class="nav-link">
55
- Analyzing Test Failures
55
+ Configuring Analysis Context
56
56
  </a>
57
57
  </li>
58
58
 
59
59
  <li>
60
- <a href="reviewing-results.html"
60
+ <a href="track-analysis-progress.html"
61
61
  class="nav-link">
62
- Reviewing Analysis Results
62
+ Tracking Analysis Progress
63
63
  </a>
64
64
  </li>
65
65
 
66
66
  <li>
67
- <a href="chatting-with-ai.html"
67
+ <a href="review-and-classify-failures.html"
68
68
  class="nav-link">
69
- Chatting with AI About Failures
69
+ Reviewing and Classifying Failures
70
70
  </a>
71
71
  </li>
72
72
 
73
73
  <li>
74
- <a href="creating-issues.html"
74
+ <a href="collaborate-on-results.html"
75
75
  class="nav-link">
76
- Creating Bug Reports from Analysis
76
+ Collaborating on Results
77
77
  </a>
78
78
  </li>
79
79
 
80
80
  <li>
81
- <a href="configuring-integrations.html"
81
+ <a href="manage-account-and-notifications.html"
82
82
  class="nav-link">
83
- Configuring Integrations
83
+ Managing Your Account and Notifications
84
84
  </a>
85
85
  </li>
86
86
 
87
87
  <li>
88
- <a href="peer-analysis.html"
88
+ <a href="create-follow-up-issues-and-push-results.html"
89
89
  class="nav-link">
90
- Using Multi-AI Peer Analysis
90
+ Creating Follow-Up Issues and Pushing Results
91
91
  </a>
92
92
  </li>
93
93
 
94
94
  <li>
95
- <a href="managing-users.html"
95
+ <a href="explore-history-and-reports.html"
96
96
  class="nav-link">
97
- Managing Users and Roles
97
+ Exploring History and Reports
98
98
  </a>
99
99
  </li>
100
100
 
101
101
  <li>
102
- <a href="tracking-history.html"
102
+ <a href="manage-users-and-server-settings.html"
103
103
  class="nav-link">
104
- Tracking Failure History and Reports
104
+ Managing Users and Server Settings
105
105
  </a>
106
106
  </li>
107
107
 
108
108
  <li>
109
- <a href="pytest-integration.html"
109
+ <a href="use-server-chat-for-cross-job-analysis.html"
110
110
  class="nav-link">
111
- Integrating with pytest
111
+ Use Server Chat for Cross-Job Analysis
112
112
  </a>
113
113
  </li>
114
114
 
@@ -120,16 +120,16 @@
120
120
  <ul class="nav-group-pages">
121
121
 
122
122
  <li>
123
- <a href="deployment-recipes.html"
124
- class="nav-link active" aria-current="page">
125
- Deployment Recipes
123
+ <a href="automate-common-tasks-with-the-cli.html"
124
+ class="nav-link">
125
+ Automating Common Tasks with the CLI
126
126
  </a>
127
127
  </li>
128
128
 
129
129
  <li>
130
- <a href="cli-recipes.html"
130
+ <a href="deploy-rootcoz.html"
131
131
  class="nav-link">
132
- CLI Recipes
132
+ Deploying RootCoz
133
133
  </a>
134
134
  </li>
135
135
 
@@ -142,8 +142,8 @@
142
142
 
143
143
  <li>
144
144
  <a href="api-reference.html"
145
- class="nav-link">
146
- REST API Reference
145
+ class="nav-link active" aria-current="page">
146
+ API Endpoint Reference
147
147
  </a>
148
148
  </li>
149
149
 
@@ -155,9 +155,9 @@
155
155
  </li>
156
156
 
157
157
  <li>
158
- <a href="environment-variables.html"
158
+ <a href="configuration-reference.html"
159
159
  class="nav-link">
160
- Environment Variables and Configuration
160
+ Configuration Reference
161
161
  </a>
162
162
  </li>
163
163
 
@@ -210,28 +210,21 @@
210
210
  converted to HTML server-side by the markdown library, not
211
211
  user-supplied input. XSS risk is minimal and accepted since
212
212
  the AI generates the content, not end users. -->
213
- <p>Let me explore the repository structure and key files to write accurate documentation.Now let me explore the key deployment-related files:</p>
214
- <h2 id="related-pages">Related Pages</h2>
215
- <ul>
216
- <li><a href="quickstart.html">Quickstart</a></li>
217
- <li><a href="environment-variables.html">Environment Variables and Configuration</a></li>
218
- <li><a href="configuring-integrations.html">Configuring Integrations</a></li>
219
- <li><a href="managing-users.html">Managing Users and Roles</a></li>
220
- <li><a href="cli-setup.html">Setting Up the CLI</a></li>
221
- </ul>
213
+ <h1 id="api-endpoint-reference">API Endpoint Reference</h1>
214
+ <p><em>Documentation generation failed. Please re-run.</em></p>
222
215
  </div>
223
216
  </article>
224
217
  <nav class="page-nav">
225
218
 
226
- <a href="pytest-integration.html" class="page-nav-link page-nav-prev">
219
+ <a href="deploy-rootcoz.html" class="page-nav-link page-nav-prev">
227
220
  <span class="page-nav-label">Previous</span>
228
- <span class="page-nav-title">Integrating with pytest</span>
221
+ <span class="page-nav-title">Deploying RootCoz</span>
229
222
  </a>
230
223
 
231
224
 
232
- <a href="cli-recipes.html" class="page-nav-link page-nav-next">
225
+ <a href="cli-reference.html" class="page-nav-link page-nav-next">
233
226
  <span class="page-nav-label">Next</span>
234
- <span class="page-nav-title">CLI Recipes</span>
227
+ <span class="page-nav-title">CLI Command Reference</span>
235
228
  </a>
236
229
 
237
230
  </nav>
@@ -240,9 +233,7 @@
240
233
  <div class="toc-container">
241
234
  <h3>On this page</h3>
242
235
  <div class="toc">
243
- <ul>
244
- <li><a href="#related-pages">Related Pages</a></li>
245
- </ul>
236
+ <ul></ul>
246
237
  </div>
247
238
 
248
239
  </div>
@@ -253,7 +244,7 @@
253
244
 
254
245
  <footer class="page-footer">
255
246
 
256
- <span class="footer-version">Generated from version 4.2.0</span>
247
+ <span class="footer-version">Generated from version 4.4.2</span>
257
248
  <span class="footer-sep">&middot;</span>
258
249
 
259
250
  Generated with <a href="https://github.com/myk-org/docsfy" target="_blank" rel="noopener">docs<span class="brand-accent">fy</span></a>
@@ -0,0 +1,3 @@
1
+ # API Endpoint Reference
2
+
3
+ *Documentation generation failed. Please re-run.*