codna 0.2.58__tar.gz → 0.2.59__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 (954) hide show
  1. {codna-0.2.58 → codna-0.2.59}/PKG-INFO +1 -1
  2. {codna-0.2.58 → codna-0.2.59}/codna/__init__.py +1 -1
  3. {codna-0.2.58 → codna-0.2.59}/codna/webhook_lease.py +1 -1
  4. {codna-0.2.58 → codna-0.2.59}/codna/webhook_pg_queue.py +116 -40
  5. {codna-0.2.58 → codna-0.2.59}/codna/webhook_service.py +27 -0
  6. {codna-0.2.58 → codna-0.2.59}/codna.egg-info/PKG-INFO +1 -1
  7. {codna-0.2.58 → codna-0.2.59}/pyproject.toml +1 -1
  8. {codna-0.2.58 → codna-0.2.59}/tests/test_fly_toml.py +5 -0
  9. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_pg_queue.py +136 -0
  10. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_service.py +37 -0
  11. {codna-0.2.58 → codna-0.2.59}/MANIFEST.in +0 -0
  12. {codna-0.2.58 → codna-0.2.59}/README.md +0 -0
  13. {codna-0.2.58 → codna-0.2.59}/codna/_wheel_guard.py +0 -0
  14. {codna-0.2.58 → codna-0.2.59}/codna/admission_control.py +0 -0
  15. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/CLINE_FORK.md +0 -0
  16. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/CLINE_SDK_AZ_INTEGRATION_PLAN.md +0 -0
  17. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/CLINE_SDK_INTERFACE.md +0 -0
  18. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/CLINE_SDK_RESEARCH.md +0 -0
  19. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/package.json +0 -0
  20. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/run-server.bundle.mjs +0 -0
  21. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/run-server.mjs +0 -0
  22. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/run-server.stub.mjs +0 -0
  23. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/.gitignore +0 -0
  24. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/LICENSE +0 -0
  25. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/NOTICE +0 -0
  26. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/UPSTREAM_COMMIT.txt +0 -0
  27. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/README.md +0 -0
  28. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/acp-editor.ts +0 -0
  29. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/adapter.ts +0 -0
  30. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/algenta-plugin.ts +0 -0
  31. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/artifacts.test.ts +0 -0
  32. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/execution.test.ts +0 -0
  33. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/fallback.test.ts +0 -0
  34. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/fallback.ts +0 -0
  35. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/fix-runner.ts +0 -0
  36. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/http.test.ts +0 -0
  37. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/local-graph-tool.ts +0 -0
  38. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/mojo-gate.test.ts +0 -0
  39. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/mojo-gate.ts +0 -0
  40. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/policy.test.ts +0 -0
  41. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/postbuild.sh +0 -0
  42. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/proof-artifacts.test.ts +0 -0
  43. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/proof-provider.test.ts +0 -0
  44. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/proof-provider.ts +0 -0
  45. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/proofs.ts +0 -0
  46. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/provider-key.test.ts +0 -0
  47. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/raw-completions.ts +0 -0
  48. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/review-policy.test.ts +0 -0
  49. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/run-server.ts +0 -0
  50. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/scheduled-agents.ts +0 -0
  51. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/artifacts.ts +0 -0
  52. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/contracts.ts +0 -0
  53. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/execution.ts +0 -0
  54. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/http.ts +0 -0
  55. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/policy.ts +0 -0
  56. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/state.ts +0 -0
  57. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/streaming.test.ts +0 -0
  58. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/server/utils.ts +0 -0
  59. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/task-policy.ts +0 -0
  60. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/telys-localize.test.ts +0 -0
  61. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/telys-localize.ts +0 -0
  62. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/telys-worker.test.ts +0 -0
  63. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/telys-worker.ts +0 -0
  64. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/tools.test.ts +0 -0
  65. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/tools.ts +0 -0
  66. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/usage-cost.test.ts +0 -0
  67. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/usage-cost.ts +0 -0
  68. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/write-scope.test.ts +0 -0
  69. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/algenta/write-scope.ts +0 -0
  70. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/biome.json +0 -0
  71. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/bun.lock +0 -0
  72. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/package.json +0 -0
  73. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/.cline/rules/worktree_dependency_hygiene.md +0 -0
  74. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/.cline/skills/plugin.md +0 -0
  75. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/.gitignore +0 -0
  76. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/AGENTS.md +0 -0
  77. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/ARCHITECTURE.md +0 -0
  78. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/CHANGELOG.md +0 -0
  79. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/CONTRIBUTING.md +0 -0
  80. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/README.md +0 -0
  81. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/biome.json +0 -0
  82. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/README.md +0 -0
  83. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/README.md +0 -0
  84. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/changelog-generator.cron.md +0 -0
  85. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/code-style-audit.cron.md +0 -0
  86. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/daily-code-review.cron.md +0 -0
  87. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/dead-code-finder.cron.md +0 -0
  88. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/dependency-check.cron.md +0 -0
  89. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/documentation-check.cron.md +0 -0
  90. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/events/local-manual-test.event.md +0 -0
  91. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/events/local-plugin-event.event.md +0 -0
  92. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/events/pr-changelog-check.event.md +0 -0
  93. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/events/pr-review.event.md +0 -0
  94. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/events/pr-test-coverage.event.md +0 -0
  95. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/performance-baseline.cron.md +0 -0
  96. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/test-coverage-report.cron.md +0 -0
  97. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/type-check-strict.cron.md +0 -0
  98. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/cron/weekly-metrics-summary.cron.md +0 -0
  99. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PostToolUse.py +0 -0
  100. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PostToolUse.sh +0 -0
  101. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PostToolUse.ts +0 -0
  102. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse.py +0 -0
  103. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse.sh +0 -0
  104. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse.ts +0 -0
  105. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse_BlockDestructive.sh +0 -0
  106. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse_InjectContext.py +0 -0
  107. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse_InjectFileContext.sh +0 -0
  108. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse_ModifyInput.ts +0 -0
  109. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/PreToolUse_RequireReview.sh +0 -0
  110. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/README.md +0 -0
  111. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/SessionShutdown.sh +0 -0
  112. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/TaskComplete.sh +0 -0
  113. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/TaskStart.sh +0 -0
  114. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/hooks/custom-compaction-hook.example.ts +0 -0
  115. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/package.json +0 -0
  116. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/README.md +0 -0
  117. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/README.md +0 -0
  118. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/agents/anvil.md +0 -0
  119. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/agents/inquisitor.md +0 -0
  120. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/agents/oracle.md +0 -0
  121. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/agents/phantom.md +0 -0
  122. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/index.ts +0 -0
  123. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/package.json +0 -0
  124. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/api-design.md +0 -0
  125. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/code-review.md +0 -0
  126. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/debugging.md +0 -0
  127. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/documentation.md +0 -0
  128. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/migration.md +0 -0
  129. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/refactoring.md +0 -0
  130. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/skills/test-generation.md +0 -0
  131. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/agents-squad/tsconfig.json +0 -0
  132. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/automation-events.ts +0 -0
  133. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/background-terminal.ts +0 -0
  134. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/custom-compaction.ts +0 -0
  135. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/env-blocker.ts +0 -0
  136. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/gitignore-read-files-guard.ts +0 -0
  137. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/mac-notify.ts +0 -0
  138. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/openrouter-provider.ts +0 -0
  139. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/typescript-lsp/README.md +0 -0
  140. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/typescript-lsp/index.ts +0 -0
  141. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/weather-metrics.ts +0 -0
  142. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/plugins/web-search.ts +0 -0
  143. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/examples/tsconfig.json +0 -0
  144. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/README.md +0 -0
  145. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/README.md +0 -0
  146. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/bun.mts +0 -0
  147. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/package.json +0 -0
  148. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/src/agent-runtime.provider-form.test.ts +0 -0
  149. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/src/agent-runtime.test.ts +0 -0
  150. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/src/agent-runtime.ts +0 -0
  151. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/src/index.ts +0 -0
  152. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/tsconfig.build.json +0 -0
  153. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/tsconfig.dev.json +0 -0
  154. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/tsconfig.json +0 -0
  155. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/agents/vitest.config.ts +0 -0
  156. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/README.md +0 -0
  157. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/bun.mts +0 -0
  158. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/docs/messages-contract-v1.md +0 -0
  159. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/fixtures/messages/success.messages.json +0 -0
  160. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/package.json +0 -0
  161. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/scripts/telemetry-smoke-host.ts +0 -0
  162. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/scripts/telemetry-smoke.ts +0 -0
  163. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/ClineCore.test.ts +0 -0
  164. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/ClineCore.ts +0 -0
  165. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/cline-account-service.test.ts +0 -0
  166. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/cline-account-service.ts +0 -0
  167. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/featurebase-token.test.ts +0 -0
  168. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/index.ts +0 -0
  169. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/rpc.test.ts +0 -0
  170. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/rpc.ts +0 -0
  171. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/account/types.ts +0 -0
  172. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/bounded-ttl-cache.test.ts +0 -0
  173. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/bounded-ttl-cache.ts +0 -0
  174. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/client.test.ts +0 -0
  175. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/client.ts +0 -0
  176. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/cline.test.ts +0 -0
  177. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/cline.ts +0 -0
  178. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/codex.test.ts +0 -0
  179. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/codex.ts +0 -0
  180. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/oca.test.ts +0 -0
  181. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/oca.ts +0 -0
  182. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/server.test.ts +0 -0
  183. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/server.ts +0 -0
  184. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/types.ts +0 -0
  185. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/utils.test.ts +0 -0
  186. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/auth/utils.ts +0 -0
  187. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cline-core/automation.ts +0 -0
  188. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cline-core/runtime-services.ts +0 -0
  189. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cline-core/start-input.ts +0 -0
  190. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cline-core/telemetry.ts +0 -0
  191. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cline-core/types.ts +0 -0
  192. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/events/cron-event-ingress.test.ts +0 -0
  193. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/events/cron-event-ingress.ts +0 -0
  194. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/events/index.ts +0 -0
  195. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/index.ts +0 -0
  196. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/reports/cron-report-writer.ts +0 -0
  197. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/reports/index.ts +0 -0
  198. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/runner/cron-materializer.test.ts +0 -0
  199. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/runner/cron-materializer.ts +0 -0
  200. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/runner/cron-runner.test.ts +0 -0
  201. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/runner/cron-runner.ts +0 -0
  202. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/runner/index.ts +0 -0
  203. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/runner/resource-limiter.ts +0 -0
  204. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/schedule/index.ts +0 -0
  205. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/schedule/scheduler.test.ts +0 -0
  206. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/schedule/scheduler.ts +0 -0
  207. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/service/cron-service.ts +0 -0
  208. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/service/index.ts +0 -0
  209. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/service/schedule-command-service.ts +0 -0
  210. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/service/schedule-service.test.ts +0 -0
  211. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/service/schedule-service.ts +0 -0
  212. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/cron-reconciler.test.ts +0 -0
  213. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/cron-reconciler.ts +0 -0
  214. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/cron-spec-parser.test.ts +0 -0
  215. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/cron-spec-parser.ts +0 -0
  216. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/cron-watcher.test.ts +0 -0
  217. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/cron-watcher.ts +0 -0
  218. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/specs/index.ts +0 -0
  219. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/store/cron-schema.ts +0 -0
  220. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/store/index.ts +0 -0
  221. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/store/sqlite-cron-store.test.ts +0 -0
  222. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/cron/store/sqlite-cron-store.ts +0 -0
  223. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/index.ts +0 -0
  224. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/runtime-commands.test.ts +0 -0
  225. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/runtime-commands.ts +0 -0
  226. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/skill-frontmatter-toggle.test.ts +0 -0
  227. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/skill-frontmatter-toggle.ts +0 -0
  228. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/unified-config-file-watcher.test.ts +0 -0
  229. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/unified-config-file-watcher.ts +0 -0
  230. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/user-instruction-config-loader.test.ts +0 -0
  231. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/user-instruction-config-loader.ts +0 -0
  232. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/user-instruction-plugin.ts +0 -0
  233. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/config/user-instruction-service.ts +0 -0
  234. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/context/agentic-compaction.ts +0 -0
  235. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/context/basic-compaction.ts +0 -0
  236. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/context/compaction-shared.ts +0 -0
  237. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/context/compaction.live.test.ts +0 -0
  238. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/context/compaction.test.ts +0 -0
  239. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/context/compaction.ts +0 -0
  240. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/index.ts +0 -0
  241. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/client.ts +0 -0
  242. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/config-loader.test.ts +0 -0
  243. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/config-loader.ts +0 -0
  244. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/index.ts +0 -0
  245. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/manager.test.ts +0 -0
  246. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/manager.ts +0 -0
  247. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/name-transform.ts +0 -0
  248. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/oauth.test.ts +0 -0
  249. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/oauth.ts +0 -0
  250. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/policies.ts +0 -0
  251. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/tools.ts +0 -0
  252. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/mcp/types.ts +0 -0
  253. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-config-loader.test.ts +0 -0
  254. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-config-loader.ts +0 -0
  255. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-load-report.ts +0 -0
  256. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-loader.test.ts +0 -0
  257. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-loader.ts +0 -0
  258. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-module-import.ts +0 -0
  259. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-sandbox-bootstrap.ts +0 -0
  260. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-sandbox.test.ts +0 -0
  261. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-sandbox.ts +0 -0
  262. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/plugin/plugin-targeting.ts +0 -0
  263. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/constants.ts +0 -0
  264. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/definitions.test.ts +0 -0
  265. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/definitions.ts +0 -0
  266. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/apply-patch-parser.ts +0 -0
  267. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/apply-patch.test.ts +0 -0
  268. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/apply-patch.ts +0 -0
  269. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/bash.test.ts +0 -0
  270. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/bash.ts +0 -0
  271. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/editor.test.ts +0 -0
  272. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/editor.ts +0 -0
  273. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/file-read.test.ts +0 -0
  274. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/file-read.ts +0 -0
  275. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/index.ts +0 -0
  276. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/search.ts +0 -0
  277. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/executors/web-fetch.ts +0 -0
  278. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/helpers.ts +0 -0
  279. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/index.ts +0 -0
  280. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/model-tool-routing.test.ts +0 -0
  281. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/model-tool-routing.ts +0 -0
  282. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/presets.test.ts +0 -0
  283. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/presets.ts +0 -0
  284. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/runtime.test.ts +0 -0
  285. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/runtime.ts +0 -0
  286. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/schemas.ts +0 -0
  287. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/delegated-agent.ts +0 -0
  288. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/index.ts +0 -0
  289. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/multi-agent.lifecycle.test.ts +0 -0
  290. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/multi-agent.ts +0 -0
  291. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/projections.ts +0 -0
  292. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/runtime.ts +0 -0
  293. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/spawn-agent-tool.test.ts +0 -0
  294. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/spawn-agent-tool.ts +0 -0
  295. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/subagent-prompts.ts +0 -0
  296. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/team-tools.test.ts +0 -0
  297. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/team/team-tools.ts +0 -0
  298. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/extensions/tools/types.ts +0 -0
  299. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/checkpoint-hooks.test.ts +0 -0
  300. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/checkpoint-hooks.ts +0 -0
  301. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/hook-extension.ts +0 -0
  302. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/hook-file-config.test.ts +0 -0
  303. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/hook-file-config.ts +0 -0
  304. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/hook-file-hooks.test.ts +0 -0
  305. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/hook-file-hooks.ts +0 -0
  306. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/index.ts +0 -0
  307. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/subprocess-runner.ts +0 -0
  308. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hooks/subprocess.ts +0 -0
  309. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/connect.test.ts +0 -0
  310. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/connect.ts +0 -0
  311. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/index.test.ts +0 -0
  312. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/index.ts +0 -0
  313. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/session-client.test.ts +0 -0
  314. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/session-client.ts +0 -0
  315. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/client/ui-client.ts +0 -0
  316. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/daemon/entry.ts +0 -0
  317. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/daemon/index.test.ts +0 -0
  318. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/daemon/index.ts +0 -0
  319. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/daemon/runtime-handlers.ts +0 -0
  320. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/daemon/start-shared-server.ts +0 -0
  321. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/discovery/defaults.test.ts +0 -0
  322. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/discovery/defaults.ts +0 -0
  323. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/discovery/index.test.ts +0 -0
  324. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/discovery/index.ts +0 -0
  325. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/discovery/workspace.ts +0 -0
  326. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/index.ts +0 -0
  327. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/runtime-host/hub-runtime-host.test.ts +0 -0
  328. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/runtime-host/hub-runtime-host.ts +0 -0
  329. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/runtime-host/remote-runtime-host.ts +0 -0
  330. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/boundary.test.ts +0 -0
  331. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/browser-websocket.test.ts +0 -0
  332. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/browser-websocket.ts +0 -0
  333. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/command-transport.ts +0 -0
  334. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/fetch-wiring.test.ts +0 -0
  335. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/approval-handlers.ts +0 -0
  336. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/capability-handlers.ts +0 -0
  337. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/client-handlers.ts +0 -0
  338. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/context.ts +0 -0
  339. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/run-handlers.test.ts +0 -0
  340. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/run-handlers.ts +0 -0
  341. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/session-event-projector.ts +0 -0
  342. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/handlers/session-handlers.ts +0 -0
  343. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-capability-tool-executors.test.ts +0 -0
  344. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-client-contributions.ts +0 -0
  345. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-notifications.ts +0 -0
  346. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-schedule-events.ts +0 -0
  347. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-server-logging.ts +0 -0
  348. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-server-options.ts +0 -0
  349. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-server-transport.ts +0 -0
  350. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-session-records.ts +0 -0
  351. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/hub-websocket-server.ts +0 -0
  352. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/index.test.ts +0 -0
  353. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/index.ts +0 -0
  354. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/native-transport.ts +0 -0
  355. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/notification.test.ts +0 -0
  356. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/server/ui-events.test.ts +0 -0
  357. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/hub/settings.test.ts +0 -0
  358. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/index.ts +0 -0
  359. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/remote-config/integration.ts +0 -0
  360. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/capabilities/index.ts +0 -0
  361. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/capabilities/normalize-runtime-capabilities.ts +0 -0
  362. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/capabilities/runtime-capabilities.ts +0 -0
  363. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/config/agent-message-codec.test.ts +0 -0
  364. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/config/agent-message-codec.ts +0 -0
  365. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/config/agent-runtime-config-builder.test.ts +0 -0
  366. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/config/agent-runtime-config-builder.ts +0 -0
  367. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/history.test.ts +0 -0
  368. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/history.ts +0 -0
  369. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/host.test.ts +0 -0
  370. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/host.ts +0 -0
  371. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local/agent-event-bridge.ts +0 -0
  372. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local/session-record.ts +0 -0
  373. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local/session-service-invoker.ts +0 -0
  374. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local/spawn-tool.ts +0 -0
  375. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local/user-files.ts +0 -0
  376. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local-runtime-host.e2e.test.ts +0 -0
  377. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local-runtime-host.test.ts +0 -0
  378. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/local-runtime-host.ts +0 -0
  379. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/runtime-host-support.test.ts +0 -0
  380. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/runtime-host-support.ts +0 -0
  381. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/host/runtime-host.ts +0 -0
  382. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/index.ts +0 -0
  383. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-builder.team-persistence.test.ts +0 -0
  384. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-builder.test.ts +0 -0
  385. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-builder.ts +0 -0
  386. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-event-adapter.test.ts +0 -0
  387. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-event-adapter.ts +0 -0
  388. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-oauth-token-manager.test.ts +0 -0
  389. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-oauth-token-manager.ts +0 -0
  390. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/runtime-parity.test.ts +0 -0
  391. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/session-runtime-orchestrator.test.ts +0 -0
  392. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/session-runtime-orchestrator.ts +0 -0
  393. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/session-runtime.ts +0 -0
  394. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/orchestration/user-input-builder.ts +0 -0
  395. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/safety/loop-detection.ts +0 -0
  396. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/safety/mistake-tracker.ts +0 -0
  397. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/safety/rules.test.ts +0 -0
  398. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/safety/rules.ts +0 -0
  399. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/tools/subprocess-sandbox.test.ts +0 -0
  400. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/tools/subprocess-sandbox.ts +0 -0
  401. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/tools/tool-approval.ts +0 -0
  402. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/turn-queue/pending-prompt-service.test.ts +0 -0
  403. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/runtime/turn-queue/pending-prompt-service.ts +0 -0
  404. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/agent-events.ts +0 -0
  405. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/config.ts +0 -0
  406. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/global-settings.test.ts +0 -0
  407. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/global-settings.ts +0 -0
  408. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/apihandler-agent-model-adapter.test.ts +0 -0
  409. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/apihandler-agent-model-adapter.ts +0 -0
  410. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/cline-recommended-models.ts +0 -0
  411. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/configured-provider-registry.ts +0 -0
  412. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/handler-factory.test.ts +0 -0
  413. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/handler-factory.ts +0 -0
  414. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/provider-defaults.test.ts +0 -0
  415. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/provider-defaults.ts +0 -0
  416. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/provider-settings.test.ts +0 -0
  417. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/provider-settings.ts +0 -0
  418. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/runtime-config.ts +0 -0
  419. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/runtime-registry.ts +0 -0
  420. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/llms/runtime-types.ts +0 -0
  421. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/local-runtime-bootstrap.startup.test.ts +0 -0
  422. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/local-runtime-bootstrap.test.ts +0 -0
  423. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/local-runtime-bootstrap.ts +0 -0
  424. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/plugin-tools.ts +0 -0
  425. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/plugin-uninstall.test.ts +0 -0
  426. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/plugin-uninstall.ts +0 -0
  427. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/providers/local-provider-registry.ts +0 -0
  428. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/providers/local-provider-service.test.ts +0 -0
  429. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/providers/local-provider-service.ts +0 -0
  430. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/providers/model-source.ts +0 -0
  431. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/providers/provider-config-fields.test.ts +0 -0
  432. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/providers/provider-config-fields.ts +0 -0
  433. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/session-artifacts.ts +0 -0
  434. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/session-data.test.ts +0 -0
  435. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/session-data.ts +0 -0
  436. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/session-telemetry.ts +0 -0
  437. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/artifact-store.ts +0 -0
  438. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/file-team-store.ts +0 -0
  439. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/index.ts +0 -0
  440. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/provider-settings-legacy-migration.test.ts +0 -0
  441. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/provider-settings-legacy-migration.ts +0 -0
  442. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/provider-settings-manager.test.ts +0 -0
  443. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/provider-settings-manager.ts +0 -0
  444. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/session-store.ts +0 -0
  445. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/sqlite-session-store.ts +0 -0
  446. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/sqlite-team-store.ts +0 -0
  447. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/storage/team-store.ts +0 -0
  448. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/ITelemetryAdapter.ts +0 -0
  449. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/OpenTelemetryAdapter.test.ts +0 -0
  450. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/OpenTelemetryAdapter.ts +0 -0
  451. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/OpenTelemetryProvider.test.ts +0 -0
  452. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/OpenTelemetryProvider.ts +0 -0
  453. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/TelemetryLoggerSink.test.ts +0 -0
  454. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/TelemetryLoggerSink.ts +0 -0
  455. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/TelemetryService.test.ts +0 -0
  456. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/TelemetryService.ts +0 -0
  457. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/core-events.test.ts +0 -0
  458. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/core-events.ts +0 -0
  459. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/distinct-id.test.ts +0 -0
  460. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/distinct-id.ts +0 -0
  461. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/index.ts +0 -0
  462. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/telemetry/tool-context.ts +0 -0
  463. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/usage.test.ts +0 -0
  464. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/usage.ts +0 -0
  465. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/file-indexer.test.ts +0 -0
  466. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/file-indexer.ts +0 -0
  467. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/index.ts +0 -0
  468. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/mention-enricher.test.ts +0 -0
  469. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/mention-enricher.ts +0 -0
  470. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/workspace-manager.ts +0 -0
  471. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/workspace-manifest.ts +0 -0
  472. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/workspace-telemetry.test.ts +0 -0
  473. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/services/workspace/workspace-telemetry.ts +0 -0
  474. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/checkpoint-restore.test.ts +0 -0
  475. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/checkpoint-restore.ts +0 -0
  476. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/index.ts +0 -0
  477. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/models/session-graph.ts +0 -0
  478. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/models/session-manifest.ts +0 -0
  479. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/models/session-row.ts +0 -0
  480. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/file-session-service.ts +0 -0
  481. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/message-builder.test.ts +0 -0
  482. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/message-builder.ts +0 -0
  483. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/persistence-service.test.ts +0 -0
  484. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/persistence-service.ts +0 -0
  485. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/session-service.team-persistence.test.ts +0 -0
  486. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/services/session-service.ts +0 -0
  487. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/session-snapshot.ts +0 -0
  488. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/session-versioning-service.test.ts +0 -0
  489. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/session-versioning-service.ts +0 -0
  490. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/stores/conversation-store.ts +0 -0
  491. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/stores/session-manifest-store.ts +0 -0
  492. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/stores/team-persistence-store.ts +0 -0
  493. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/team/index.ts +0 -0
  494. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/team/team-child-session-manager.ts +0 -0
  495. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/session/team/team-session-coordinator.ts +0 -0
  496. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/settings/index.ts +0 -0
  497. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/settings/settings-service.test.ts +0 -0
  498. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/settings/settings-service.ts +0 -0
  499. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/settings/types.ts +0 -0
  500. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/chat-schema.ts +0 -0
  501. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/common.ts +0 -0
  502. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/config.ts +0 -0
  503. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/events.ts +0 -0
  504. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/index.ts +0 -0
  505. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/provider-settings.ts +0 -0
  506. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/session.ts +0 -0
  507. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/sessions.ts +0 -0
  508. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types/storage.ts +0 -0
  509. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/types.ts +0 -0
  510. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/src/version.ts +0 -0
  511. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/tsconfig.build.json +0 -0
  512. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/tsconfig.dev.json +0 -0
  513. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/tsconfig.json +0 -0
  514. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/tsconfig.smoke.json +0 -0
  515. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/vitest.config.ts +0 -0
  516. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/core/vitest.e2e.config.ts +0 -0
  517. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/AGENTS.md +0 -0
  518. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/README.md +0 -0
  519. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/bun.mts +0 -0
  520. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/fixtures/usage.json +0 -0
  521. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/package.json +0 -0
  522. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/scripts/fix-esm-imports.ts +0 -0
  523. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/scripts/generate-models.ts +0 -0
  524. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/scripts/models/generate-models-dev.ts +0 -0
  525. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/scripts/tsconfig.json +0 -0
  526. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/catalog/README.md +0 -0
  527. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/catalog/catalog-live.test.ts +0 -0
  528. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/catalog/catalog-live.ts +0 -0
  529. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/catalog/catalog.generated-access.ts +0 -0
  530. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/catalog/catalog.generated.ts +0 -0
  531. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/catalog/types.ts +0 -0
  532. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/index.browser.ts +0 -0
  533. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/index.ts +0 -0
  534. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/models.ts +0 -0
  535. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/ai-sdk.test.ts +0 -0
  536. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/ai-sdk.ts +0 -0
  537. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/async.ts +0 -0
  538. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/billing.test.ts +0 -0
  539. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/billing.ts +0 -0
  540. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/builtins-runtime.ts +0 -0
  541. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/builtins.test.ts +0 -0
  542. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/builtins.ts +0 -0
  543. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/compat.test.ts +0 -0
  544. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/compat.ts +0 -0
  545. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/config.ts +0 -0
  546. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/factory-registry.ts +0 -0
  547. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/format.test.ts +0 -0
  548. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/format.ts +0 -0
  549. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/gateway.test.ts +0 -0
  550. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/gateway.ts +0 -0
  551. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/handler.ts +0 -0
  552. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/http.ts +0 -0
  553. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/ids.test.ts +0 -0
  554. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/ids.ts +0 -0
  555. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/messages.ts +0 -0
  556. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/middleware/split-tool-images.test.ts +0 -0
  557. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/middleware/split-tool-images.ts +0 -0
  558. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/model-facts.ts +0 -0
  559. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/model-registry.ts +0 -0
  560. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/openai-codex-models.ts +0 -0
  561. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/provider-keys.ts +0 -0
  562. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/registry.ts +0 -0
  563. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/anthropic-compatible.test.ts +0 -0
  564. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/anthropic-compatible.ts +0 -0
  565. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/generic-compatible.ts +0 -0
  566. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/glm-thinking.ts +0 -0
  567. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/minimax-thinking.ts +0 -0
  568. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/provider-option-rules.ts +0 -0
  569. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/provider-options-types.ts +0 -0
  570. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/provider-options.test.ts +0 -0
  571. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/provider-options.ts +0 -0
  572. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/reasoning-codecs.ts +0 -0
  573. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/routing/utils.ts +0 -0
  574. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/stream.ts +0 -0
  575. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/types.ts +0 -0
  576. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/anthropic.test.ts +0 -0
  577. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/anthropic.ts +0 -0
  578. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/bedrock.test.ts +0 -0
  579. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/bedrock.ts +0 -0
  580. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/community.test.ts +0 -0
  581. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/community.ts +0 -0
  582. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/google.ts +0 -0
  583. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/minimax-thinking.test.ts +0 -0
  584. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/minimax-thinking.ts +0 -0
  585. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/mistral.ts +0 -0
  586. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/openai-compatible.ts +0 -0
  587. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/openai.ts +0 -0
  588. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/types.ts +0 -0
  589. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/vertex.test.ts +0 -0
  590. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers/vendors/vertex.ts +0 -0
  591. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers.browser.ts +0 -0
  592. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/providers.ts +0 -0
  593. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/services/langfuse-telemetry.test.ts +0 -0
  594. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/services/langfuse-telemetry.ts +0 -0
  595. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/live-providers.example.json +0 -0
  596. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/live-providers.openai-codex.example.json +0 -0
  597. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/live-providers.openai-codex.reasoning.example.json +0 -0
  598. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/live-providers.reasoning-disabled.example.json +0 -0
  599. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/live-providers.reasoning.example.json +0 -0
  600. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/live-providers.tools.example.json +0 -0
  601. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live-config.test.ts +0 -0
  602. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live-config.ts +0 -0
  603. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live-minimax-routing.test.ts +0 -0
  604. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live-reasoning.test.ts +0 -0
  605. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live-runner.ts +0 -0
  606. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live-tools.test.ts +0 -0
  607. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-live.test.ts +0 -0
  608. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-vcr/README.md +0 -0
  609. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-vcr/anthropic-claude-sonnet-4-6.json +0 -0
  610. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-vcr/cline-anthropic-sonnet.json +0 -0
  611. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-vcr/openai-codex-gpt-5-4.json +0 -0
  612. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-vcr/openai-compatible-deepseek-v4-pro.json +0 -0
  613. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/src/tests/provider-vcr.test.ts +0 -0
  614. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/tsconfig.build.json +0 -0
  615. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/tsconfig.dev.json +0 -0
  616. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/tsconfig.json +0 -0
  617. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/llms/vitest.config.ts +0 -0
  618. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/sdk/bun.mts +0 -0
  619. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/sdk/package.json +0 -0
  620. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/sdk/src/index.ts +0 -0
  621. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/sdk/tsconfig.build.json +0 -0
  622. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/sdk/tsconfig.json +0 -0
  623. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/README.md +0 -0
  624. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/bun.mts +0 -0
  625. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/package.json +0 -0
  626. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/agent.ts +0 -0
  627. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/agents/index.ts +0 -0
  628. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/agents/types.ts +0 -0
  629. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/automation/index.ts +0 -0
  630. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/automation/schemas.ts +0 -0
  631. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/automation/types.ts +0 -0
  632. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/connectors/events.ts +0 -0
  633. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/connectors/options.ts +0 -0
  634. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/cron/cron-spec-types.ts +0 -0
  635. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/cron/index.ts +0 -0
  636. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/db/index.ts +0 -0
  637. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/db/sqlite-db.test.ts +0 -0
  638. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/db/sqlite-db.ts +0 -0
  639. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/dispose.ts +0 -0
  640. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/extensions/context.ts +0 -0
  641. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/extensions/contribution-registry.test.ts +0 -0
  642. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/extensions/contribution-registry.ts +0 -0
  643. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/extensions/plugin.ts +0 -0
  644. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/hooks/contracts.ts +0 -0
  645. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/hooks/events.ts +0 -0
  646. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/hub.ts +0 -0
  647. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/index.browser.ts +0 -0
  648. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/index.ts +0 -0
  649. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/ai-sdk-format.test.ts +0 -0
  650. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/ai-sdk-format.ts +0 -0
  651. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/gateway.ts +0 -0
  652. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/messages.ts +0 -0
  653. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/model-info.ts +0 -0
  654. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/reasoning-effort.ts +0 -0
  655. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/requests.ts +0 -0
  656. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/tokens.ts +0 -0
  657. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/llms/tools.ts +0 -0
  658. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/logging/logger.ts +0 -0
  659. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/error.ts +0 -0
  660. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/headers/utils.ts +0 -0
  661. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/json.test.ts +0 -0
  662. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/json.ts +0 -0
  663. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/shell.test.ts +0 -0
  664. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/shell.ts +0 -0
  665. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/string.ts +0 -0
  666. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/time.ts +0 -0
  667. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/parse/zod.ts +0 -0
  668. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/prompt/cline.ts +0 -0
  669. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/prompt/format.test.ts +0 -0
  670. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/prompt/format.ts +0 -0
  671. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/prompt/system.ts +0 -0
  672. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/artifact-store.ts +0 -0
  673. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/blob-storage.ts +0 -0
  674. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/bundle.ts +0 -0
  675. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/constants.ts +0 -0
  676. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/index.ts +0 -0
  677. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/materializer.ts +0 -0
  678. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/paths.ts +0 -0
  679. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/runtime.test.ts +0 -0
  680. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/runtime.ts +0 -0
  681. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/schema.test.ts +0 -0
  682. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/schema.ts +0 -0
  683. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/remote-config/telemetry.ts +0 -0
  684. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/rpc/index.ts +0 -0
  685. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/rpc/runtime.ts +0 -0
  686. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/rpc/team-progress.ts +0 -0
  687. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/runtime/build-env.test.ts +0 -0
  688. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/runtime/build-env.ts +0 -0
  689. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/runtime/cline-environment.test.ts +0 -0
  690. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/runtime/cline-environment.ts +0 -0
  691. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/runtime/hub-daemon-env.test.ts +0 -0
  692. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/runtime/hub-daemon-env.ts +0 -0
  693. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/services/telemetry-config.ts +0 -0
  694. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/services/telemetry.test.ts +0 -0
  695. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/services/telemetry.ts +0 -0
  696. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/session/hook-context.ts +0 -0
  697. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/session/index.ts +0 -0
  698. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/session/records.ts +0 -0
  699. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/session/runtime-config.ts +0 -0
  700. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/session/runtime-env.ts +0 -0
  701. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/session/workspace.ts +0 -0
  702. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/storage/index.ts +0 -0
  703. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/storage/path-resolution.test.ts +0 -0
  704. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/storage/path-resolution.ts +0 -0
  705. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/storage/paths.home-dir.test.ts +0 -0
  706. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/storage/paths.test.ts +0 -0
  707. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/storage/paths.ts +0 -0
  708. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/team/index.ts +0 -0
  709. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/team/schema.ts +0 -0
  710. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/team/types.ts +0 -0
  711. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/tools/create.test.ts +0 -0
  712. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/tools/create.ts +0 -0
  713. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/types/auth.ts +0 -0
  714. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/types/index.ts +0 -0
  715. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/types/vcr.ts +0 -0
  716. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/vcr.test.ts +0 -0
  717. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/src/vcr.ts +0 -0
  718. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/tsconfig.build.json +0 -0
  719. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/tsconfig.json +0 -0
  720. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/shared/vitest.config.ts +0 -0
  721. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/packages/tsconfig.base.json +0 -0
  722. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/scripts/check-publish.ts +0 -0
  723. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/scripts/ci-node-smoke.ts +0 -0
  724. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/scripts/clean.ts +0 -0
  725. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/scripts/release.ts +0 -0
  726. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/scripts/run-vendored-tests.sh +0 -0
  727. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/scripts/version.ts +0 -0
  728. {codna-0.2.58 → codna-0.2.59}/codna/agent-core/vendor/cline/sdk/tsconfig.json +0 -0
  729. {codna-0.2.58 → codna-0.2.59}/codna/agent_core_runtime.py +0 -0
  730. {codna-0.2.58 → codna-0.2.59}/codna/byok_cli.py +0 -0
  731. {codna-0.2.58 → codna-0.2.59}/codna/ci_admission.py +0 -0
  732. {codna-0.2.58 → codna-0.2.59}/codna/ci_cli.py +0 -0
  733. {codna-0.2.58 → codna-0.2.59}/codna/cli.py +0 -0
  734. {codna-0.2.58 → codna-0.2.59}/codna/cli_errors.py +0 -0
  735. {codna-0.2.58 → codna-0.2.59}/codna/cline_agent.py +0 -0
  736. {codna-0.2.58 → codna-0.2.59}/codna/codeunits.py +0 -0
  737. {codna-0.2.58 → codna-0.2.59}/codna/codeunits_treesitter.py +0 -0
  738. {codna-0.2.58 → codna-0.2.59}/codna/config_file.py +0 -0
  739. {codna-0.2.58 → codna-0.2.59}/codna/doctor.py +0 -0
  740. {codna-0.2.58 → codna-0.2.59}/codna/doctor_output.py +0 -0
  741. {codna-0.2.58 → codna-0.2.59}/codna/engine.py +0 -0
  742. {codna-0.2.58 → codna-0.2.59}/codna/evasion.py +0 -0
  743. {codna-0.2.58 → codna-0.2.59}/codna/evidence.py +0 -0
  744. {codna-0.2.58 → codna-0.2.59}/codna/findings.py +0 -0
  745. {codna-0.2.58 → codna-0.2.59}/codna/fix_inputs.py +0 -0
  746. {codna-0.2.58 → codna-0.2.59}/codna/fix_run.py +0 -0
  747. {codna-0.2.58 → codna-0.2.59}/codna/focus_paths.py +0 -0
  748. {codna-0.2.58 → codna-0.2.59}/codna/gate.py +0 -0
  749. {codna-0.2.58 → codna-0.2.59}/codna/gitpush.py +0 -0
  750. {codna-0.2.58 → codna-0.2.59}/codna/impact.py +0 -0
  751. {codna-0.2.58 → codna-0.2.59}/codna/impact_cli.py +0 -0
  752. {codna-0.2.58 → codna-0.2.59}/codna/keystore.py +0 -0
  753. {codna-0.2.58 → codna-0.2.59}/codna/local_client.py +0 -0
  754. {codna-0.2.58 → codna-0.2.59}/codna/local_mojo_daemon.py +0 -0
  755. {codna-0.2.58 → codna-0.2.59}/codna/local_mojo_pool.py +0 -0
  756. {codna-0.2.58 → codna-0.2.59}/codna/local_repository_shims.py +0 -0
  757. {codna-0.2.58 → codna-0.2.59}/codna/local_runtime.py +0 -0
  758. {codna-0.2.58 → codna-0.2.59}/codna/localfix.py +0 -0
  759. {codna-0.2.58 → codna-0.2.59}/codna/login.py +0 -0
  760. {codna-0.2.58 → codna-0.2.59}/codna/manifest.py +0 -0
  761. {codna-0.2.58 → codna-0.2.59}/codna/mcp_cli.py +0 -0
  762. {codna-0.2.58 → codna-0.2.59}/codna/mcp_install.py +0 -0
  763. {codna-0.2.58 → codna-0.2.59}/codna/mcp_server.py +0 -0
  764. {codna-0.2.58 → codna-0.2.59}/codna/memory.py +0 -0
  765. {codna-0.2.58 → codna-0.2.59}/codna/memory_manifest.py +0 -0
  766. {codna-0.2.58 → codna-0.2.59}/codna/memory_rerank.py +0 -0
  767. {codna-0.2.58 → codna-0.2.59}/codna/netjail.py +0 -0
  768. {codna-0.2.58 → codna-0.2.59}/codna/packaged_agent_runner.py +0 -0
  769. {codna-0.2.58 → codna-0.2.59}/codna/packaged_git.py +0 -0
  770. {codna-0.2.58 → codna-0.2.59}/codna/packaged_repository_advanced.py +0 -0
  771. {codna-0.2.58 → codna-0.2.59}/codna/packaged_repository_backend.py +0 -0
  772. {codna-0.2.58 → codna-0.2.59}/codna/patch_text.py +0 -0
  773. {codna-0.2.58 → codna-0.2.59}/codna/patchgen.py +0 -0
  774. {codna-0.2.58 → codna-0.2.59}/codna/policy.py +0 -0
  775. {codna-0.2.58 → codna-0.2.59}/codna/project_rules.py +0 -0
  776. {codna-0.2.58 → codna-0.2.59}/codna/python_import_paths.py +0 -0
  777. {codna-0.2.58 → codna-0.2.59}/codna/refengine.py +0 -0
  778. {codna-0.2.58 → codna-0.2.59}/codna/remote_http.py +0 -0
  779. {codna-0.2.58 → codna-0.2.59}/codna/repo_backend.py +0 -0
  780. {codna-0.2.58 → codna-0.2.59}/codna/report_cli.py +0 -0
  781. {codna-0.2.58 → codna-0.2.59}/codna/repository_artifacts.py +0 -0
  782. {codna-0.2.58 → codna-0.2.59}/codna/review.py +0 -0
  783. {codna-0.2.58 → codna-0.2.59}/codna/review_budget.py +0 -0
  784. {codna-0.2.58 → codna-0.2.59}/codna/review_findings.py +0 -0
  785. {codna-0.2.58 → codna-0.2.59}/codna/review_github.py +0 -0
  786. {codna-0.2.58 → codna-0.2.59}/codna/runtime/__init__.py +0 -0
  787. {codna-0.2.58 → codna-0.2.59}/codna/runtime/config.py +0 -0
  788. {codna-0.2.58 → codna-0.2.59}/codna/runtime/health.py +0 -0
  789. {codna-0.2.58 → codna-0.2.59}/codna/runtime/local_stack.py +0 -0
  790. {codna-0.2.58 → codna-0.2.59}/codna/runtime/ports.py +0 -0
  791. {codna-0.2.58 → codna-0.2.59}/codna/runtime/processes.py +0 -0
  792. {codna-0.2.58 → codna-0.2.59}/codna/runtime_config.py +0 -0
  793. {codna-0.2.58 → codna-0.2.59}/codna/sandbox.py +0 -0
  794. {codna-0.2.58 → codna-0.2.59}/codna/sarif.py +0 -0
  795. {codna-0.2.58 → codna-0.2.59}/codna/scaffold.py +0 -0
  796. {codna-0.2.58 → codna-0.2.59}/codna/secure.py +0 -0
  797. {codna-0.2.58 → codna-0.2.59}/codna/secure_open_pr_cli.py +0 -0
  798. {codna-0.2.58 → codna-0.2.59}/codna/status.py +0 -0
  799. {codna-0.2.58 → codna-0.2.59}/codna/supervisor.py +0 -0
  800. {codna-0.2.58 → codna-0.2.59}/codna/telys_onboarding.py +0 -0
  801. {codna-0.2.58 → codna-0.2.59}/codna/telys_runtime.py +0 -0
  802. {codna-0.2.58 → codna-0.2.59}/codna/testrun.py +0 -0
  803. {codna-0.2.58 → codna-0.2.59}/codna/webhook.py +0 -0
  804. {codna-0.2.58 → codna-0.2.59}/codna/webhook_backend.py +0 -0
  805. {codna-0.2.58 → codna-0.2.59}/codna/webhook_ci_triage.py +0 -0
  806. {codna-0.2.58 → codna-0.2.59}/codna/webhook_cli.py +0 -0
  807. {codna-0.2.58 → codna-0.2.59}/codna/webhook_control.py +0 -0
  808. {codna-0.2.58 → codna-0.2.59}/codna/webhook_github.py +0 -0
  809. {codna-0.2.58 → codna-0.2.59}/codna/webhook_metering.py +0 -0
  810. {codna-0.2.58 → codna-0.2.59}/codna/webhook_metrics.py +0 -0
  811. {codna-0.2.58 → codna-0.2.59}/codna/webhook_ops.py +0 -0
  812. {codna-0.2.58 → codna-0.2.59}/codna/webhook_pg_ops.py +0 -0
  813. {codna-0.2.58 → codna-0.2.59}/codna/webhook_pg_schema.py +0 -0
  814. {codna-0.2.58 → codna-0.2.59}/codna/webhook_pool.py +0 -0
  815. {codna-0.2.58 → codna-0.2.59}/codna/webhook_procs.py +0 -0
  816. {codna-0.2.58 → codna-0.2.59}/codna/webhook_queue.py +0 -0
  817. {codna-0.2.58 → codna-0.2.59}/codna/webhook_redeliver.py +0 -0
  818. {codna-0.2.58 → codna-0.2.59}/codna/webhook_resume.py +0 -0
  819. {codna-0.2.58 → codna-0.2.59}/codna/webhook_retry.py +0 -0
  820. {codna-0.2.58 → codna-0.2.59}/codna/webhook_scaler.py +0 -0
  821. {codna-0.2.58 → codna-0.2.59}/codna/webhook_summaries.py +0 -0
  822. {codna-0.2.58 → codna-0.2.59}/codna/webhook_worker.py +0 -0
  823. {codna-0.2.58 → codna-0.2.59}/codna/worker.py +0 -0
  824. {codna-0.2.58 → codna-0.2.59}/codna/worktree.py +0 -0
  825. {codna-0.2.58 → codna-0.2.59}/codna/writer.py +0 -0
  826. {codna-0.2.58 → codna-0.2.59}/codna.egg-info/SOURCES.txt +0 -0
  827. {codna-0.2.58 → codna-0.2.59}/codna.egg-info/dependency_links.txt +0 -0
  828. {codna-0.2.58 → codna-0.2.59}/codna.egg-info/entry_points.txt +0 -0
  829. {codna-0.2.58 → codna-0.2.59}/codna.egg-info/requires.txt +0 -0
  830. {codna-0.2.58 → codna-0.2.59}/codna.egg-info/top_level.txt +0 -0
  831. {codna-0.2.58 → codna-0.2.59}/memengine/__init__.py +0 -0
  832. {codna-0.2.58 → codna-0.2.59}/memengine/_validate.py +0 -0
  833. {codna-0.2.58 → codna-0.2.59}/memengine/native_runtime.py +0 -0
  834. {codna-0.2.58 → codna-0.2.59}/setup.cfg +0 -0
  835. {codna-0.2.58 → codna-0.2.59}/setup.py +0 -0
  836. {codna-0.2.58 → codna-0.2.59}/tests/test_admission_control.py +0 -0
  837. {codna-0.2.58 → codna-0.2.59}/tests/test_agent_core_runtime.py +0 -0
  838. {codna-0.2.58 → codna-0.2.59}/tests/test_bench_driver_lazy_resolution.py +0 -0
  839. {codna-0.2.58 → codna-0.2.59}/tests/test_bench_env.py +0 -0
  840. {codna-0.2.58 → codna-0.2.59}/tests/test_benchmark_parity_imports.py +0 -0
  841. {codna-0.2.58 → codna-0.2.59}/tests/test_benchmark_suite.py +0 -0
  842. {codna-0.2.58 → codna-0.2.59}/tests/test_ci_admission.py +0 -0
  843. {codna-0.2.58 → codna-0.2.59}/tests/test_cli_doctor.py +0 -0
  844. {codna-0.2.58 → codna-0.2.59}/tests/test_cli_fix.py +0 -0
  845. {codna-0.2.58 → codna-0.2.59}/tests/test_cli_parser.py +0 -0
  846. {codna-0.2.58 → codna-0.2.59}/tests/test_cli_register.py +0 -0
  847. {codna-0.2.58 → codna-0.2.59}/tests/test_cli_surface_parity.py +0 -0
  848. {codna-0.2.58 → codna-0.2.59}/tests/test_cline_agent_unparseable_details.py +0 -0
  849. {codna-0.2.58 → codna-0.2.59}/tests/test_cline_fork_guard.py +0 -0
  850. {codna-0.2.58 → codna-0.2.59}/tests/test_codeunits.py +0 -0
  851. {codna-0.2.58 → codna-0.2.59}/tests/test_codeunits_treesitter.py +0 -0
  852. {codna-0.2.58 → codna-0.2.59}/tests/test_config_file.py +0 -0
  853. {codna-0.2.58 → codna-0.2.59}/tests/test_dev_check_script.py +0 -0
  854. {codna-0.2.58 → codna-0.2.59}/tests/test_dockerfile_webhook.py +0 -0
  855. {codna-0.2.58 → codna-0.2.59}/tests/test_dockerignore.py +0 -0
  856. {codna-0.2.58 → codna-0.2.59}/tests/test_doctor.py +0 -0
  857. {codna-0.2.58 → codna-0.2.59}/tests/test_download_telys_runtime_bundle.py +0 -0
  858. {codna-0.2.58 → codna-0.2.59}/tests/test_engine.py +0 -0
  859. {codna-0.2.58 → codna-0.2.59}/tests/test_engine_contract_integration.py +0 -0
  860. {codna-0.2.58 → codna-0.2.59}/tests/test_evasion.py +0 -0
  861. {codna-0.2.58 → codna-0.2.59}/tests/test_evidence.py +0 -0
  862. {codna-0.2.58 → codna-0.2.59}/tests/test_evidence_io.py +0 -0
  863. {codna-0.2.58 → codna-0.2.59}/tests/test_extract_nul.py +0 -0
  864. {codna-0.2.58 → codna-0.2.59}/tests/test_fix_inputs_remote.py +0 -0
  865. {codna-0.2.58 → codna-0.2.59}/tests/test_fix_run.py +0 -0
  866. {codna-0.2.58 → codna-0.2.59}/tests/test_gate.py +0 -0
  867. {codna-0.2.58 → codna-0.2.59}/tests/test_gitpush.py +0 -0
  868. {codna-0.2.58 → codna-0.2.59}/tests/test_impact.py +0 -0
  869. {codna-0.2.58 → codna-0.2.59}/tests/test_impact_cli.py +0 -0
  870. {codna-0.2.58 → codna-0.2.59}/tests/test_keys_file_dev_only.py +0 -0
  871. {codna-0.2.58 → codna-0.2.59}/tests/test_keystore.py +0 -0
  872. {codna-0.2.58 → codna-0.2.59}/tests/test_local_byok_cli.py +0 -0
  873. {codna-0.2.58 → codna-0.2.59}/tests/test_local_client.py +0 -0
  874. {codna-0.2.58 → codna-0.2.59}/tests/test_local_mojo_daemon.py +0 -0
  875. {codna-0.2.58 → codna-0.2.59}/tests/test_local_mojo_pool_runtime.py +0 -0
  876. {codna-0.2.58 → codna-0.2.59}/tests/test_local_runtime.py +0 -0
  877. {codna-0.2.58 → codna-0.2.59}/tests/test_local_runtime_lifecycle.py +0 -0
  878. {codna-0.2.58 → codna-0.2.59}/tests/test_localfix.py +0 -0
  879. {codna-0.2.58 → codna-0.2.59}/tests/test_login.py +0 -0
  880. {codna-0.2.58 → codna-0.2.59}/tests/test_manifest.py +0 -0
  881. {codna-0.2.58 → codna-0.2.59}/tests/test_mcp_default_repo.py +0 -0
  882. {codna-0.2.58 → codna-0.2.59}/tests/test_mcp_enrich.py +0 -0
  883. {codna-0.2.58 → codna-0.2.59}/tests/test_mcp_install.py +0 -0
  884. {codna-0.2.58 → codna-0.2.59}/tests/test_mcp_recall.py +0 -0
  885. {codna-0.2.58 → codna-0.2.59}/tests/test_mcp_report_bug.py +0 -0
  886. {codna-0.2.58 → codna-0.2.59}/tests/test_mcp_secure.py +0 -0
  887. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_errors.py +0 -0
  888. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_hybrid.py +0 -0
  889. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_incremental.py +0 -0
  890. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_license.py +0 -0
  891. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_rerank.py +0 -0
  892. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_wordllama_rerank.py +0 -0
  893. {codna-0.2.58 → codna-0.2.59}/tests/test_memory_wrapper.py +0 -0
  894. {codna-0.2.58 → codna-0.2.59}/tests/test_modularity.py +0 -0
  895. {codna-0.2.58 → codna-0.2.59}/tests/test_netjail.py +0 -0
  896. {codna-0.2.58 → codna-0.2.59}/tests/test_packaged_confidence.py +0 -0
  897. {codna-0.2.58 → codna-0.2.59}/tests/test_packaged_git_clone.py +0 -0
  898. {codna-0.2.58 → codna-0.2.59}/tests/test_packaged_guidance.py +0 -0
  899. {codna-0.2.58 → codna-0.2.59}/tests/test_packaged_remote_pr.py +0 -0
  900. {codna-0.2.58 → codna-0.2.59}/tests/test_packaged_runner_review_terminal_state.py +0 -0
  901. {codna-0.2.58 → codna-0.2.59}/tests/test_packaged_test_fix_scope.py +0 -0
  902. {codna-0.2.58 → codna-0.2.59}/tests/test_packaging.py +0 -0
  903. {codna-0.2.58 → codna-0.2.59}/tests/test_patch_text.py +0 -0
  904. {codna-0.2.58 → codna-0.2.59}/tests/test_patchgen.py +0 -0
  905. {codna-0.2.58 → codna-0.2.59}/tests/test_policy.py +0 -0
  906. {codna-0.2.58 → codna-0.2.59}/tests/test_refengine.py +0 -0
  907. {codna-0.2.58 → codna-0.2.59}/tests/test_release_readiness.py +0 -0
  908. {codna-0.2.58 → codna-0.2.59}/tests/test_repo_backend.py +0 -0
  909. {codna-0.2.58 → codna-0.2.59}/tests/test_report_cli.py +0 -0
  910. {codna-0.2.58 → codna-0.2.59}/tests/test_repository_artifacts.py +0 -0
  911. {codna-0.2.58 → codna-0.2.59}/tests/test_review_budget.py +0 -0
  912. {codna-0.2.58 → codna-0.2.59}/tests/test_review_error_details.py +0 -0
  913. {codna-0.2.58 → codna-0.2.59}/tests/test_review_findings.py +0 -0
  914. {codna-0.2.58 → codna-0.2.59}/tests/test_review_run_marker.py +0 -0
  915. {codna-0.2.58 → codna-0.2.59}/tests/test_rules_and_review.py +0 -0
  916. {codna-0.2.58 → codna-0.2.59}/tests/test_runtime_config.py +0 -0
  917. {codna-0.2.58 → codna-0.2.59}/tests/test_runtime_ports.py +0 -0
  918. {codna-0.2.58 → codna-0.2.59}/tests/test_runtime_processes.py +0 -0
  919. {codna-0.2.58 → codna-0.2.59}/tests/test_sandbox.py +0 -0
  920. {codna-0.2.58 → codna-0.2.59}/tests/test_sarif.py +0 -0
  921. {codna-0.2.58 → codna-0.2.59}/tests/test_scaffold_and_status.py +0 -0
  922. {codna-0.2.58 → codna-0.2.59}/tests/test_secure.py +0 -0
  923. {codna-0.2.58 → codna-0.2.59}/tests/test_stage_codna_telys_oem_license.py +0 -0
  924. {codna-0.2.58 → codna-0.2.59}/tests/test_stage_codna_telys_runtime.py +0 -0
  925. {codna-0.2.58 → codna-0.2.59}/tests/test_structured_error.py +0 -0
  926. {codna-0.2.58 → codna-0.2.59}/tests/test_supervisor.py +0 -0
  927. {codna-0.2.58 → codna-0.2.59}/tests/test_sync_wheel_memengine.py +0 -0
  928. {codna-0.2.58 → codna-0.2.59}/tests/test_telys_onboarding.py +0 -0
  929. {codna-0.2.58 → codna-0.2.59}/tests/test_telys_runtime_packaging.py +0 -0
  930. {codna-0.2.58 → codna-0.2.59}/tests/test_testrun.py +0 -0
  931. {codna-0.2.58 → codna-0.2.59}/tests/test_verify_pypi_trusted_publisher.py +0 -0
  932. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook.py +0 -0
  933. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_backend_spool.py +0 -0
  934. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_ci_triage.py +0 -0
  935. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_feedback_dispatch.py +0 -0
  936. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_github.py +0 -0
  937. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_github_ci.py +0 -0
  938. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_lease.py +0 -0
  939. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_metering.py +0 -0
  940. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_ops.py +0 -0
  941. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_queue.py +0 -0
  942. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_redeliver.py +0 -0
  943. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_resume.py +0 -0
  944. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_retry.py +0 -0
  945. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_scaler.py +0 -0
  946. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_scheduling.py +0 -0
  947. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_worker.py +0 -0
  948. {codna-0.2.58 → codna-0.2.59}/tests/test_webhook_worker_feedback_dispatch.py +0 -0
  949. {codna-0.2.58 → codna-0.2.59}/tests/test_wheel_guard.py +0 -0
  950. {codna-0.2.58 → codna-0.2.59}/tests/test_wheel_smoke_script.py +0 -0
  951. {codna-0.2.58 → codna-0.2.59}/tests/test_worker.py +0 -0
  952. {codna-0.2.58 → codna-0.2.59}/tests/test_workflows.py +0 -0
  953. {codna-0.2.58 → codna-0.2.59}/tests/test_worktree.py +0 -0
  954. {codna-0.2.58 → codna-0.2.59}/tests/test_writer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codna
3
- Version: 0.2.58
3
+ Version: 0.2.59
4
4
  Summary: Local-first repo intelligence and agent fixing for Codna.
5
5
  Author: Thyn
6
6
  Maintainer: Thyn
@@ -5,4 +5,4 @@ This package is the `codna` CLI. Users never touch "algenta" directly — the en
5
5
  is an internal dependency reached over HTTP.
6
6
  """
7
7
 
8
- __version__ = "0.2.58"
8
+ __version__ = "0.2.59"
@@ -210,7 +210,7 @@ class Reaper:
210
210
  WebhookJob(kind, row["repo"], ref=head, pr_number=int(row["pr_number"]),
211
211
  installation_id=row.get("installation_id"),
212
212
  reason=f"reaper_requeue_current_head_after_{row.get('reason') or 'interrupt'}"[:120]),
213
- delivery_id=f"reaper-{rid}-{head}", priority=1)
213
+ delivery_id=f"reaper-{rid}-{head}", priority=1, unless_pending=True)
214
214
  return "superseded"
215
215
  return "skipped"
216
216
  hold = webhook_retry.backoff_s(kind, 1)
@@ -34,6 +34,7 @@ from typing import Any, Callable, Iterable, Mapping
34
34
 
35
35
  from . import webhook_retry
36
36
  from .webhook import WebhookJob, webhook_marker
37
+ from .webhook_control import SUPERSEDABLE_KINDS
37
38
  from .webhook_pg_schema import DEFAULT_SCHEMA, KINDS, connect, lock_key, migrate, validate_schema_name
38
39
  from .webhook_queue import QueuedJob
39
40
 
@@ -47,6 +48,8 @@ _JOB_COLUMNS = ("id, delivery_id, kind, repo, ref, installation_id, issue_number
47
48
  "check_run_id, check_started_at, posted, cancel_requested, last_error, result, created_at, "
48
49
  "claimed_at, finished_at, src_sqlite_id")
49
50
  _JOB_COLUMNS_J = ", ".join("j." + c.strip() for c in _JOB_COLUMNS.split(",")) # qualified, for UPDATE ... FROM
51
+ # The kinds a newer head of the same pull request retires (webhook_queue uses the same set).
52
+ _SUPERSEDABLE_SQL = ",".join(f"'{k}'" for k in sorted(SUPERSEDABLE_KINDS))
50
53
 
51
54
 
52
55
  def _log(event: str, **fields: Any) -> None:
@@ -211,8 +214,11 @@ class PostgresQueue:
211
214
  (a redelivery), a queued/running review or fix for the SAME head (``jobs_one_live_head``:
212
215
  a new GUID for a head already covered), a CI-failure fix for a (repo, ref) that already
213
216
  had one in the last 24 h (the rule ported line for line from the SQLite queue), or -- with
214
- ``unless_pending`` (the worker re-queueing a head that moved under a review, codna#569) --
215
- any waiting/running job of this kind for exactly this head, whatever the kind."""
217
+ ``unless_pending`` (the worker re-queueing a head that moved under a review, codna#569, and
218
+ the reaper queueing the current head of a reaped job) -- any job of this kind for exactly
219
+ this head that is waiting, running OR already finished: a head that has its review does not
220
+ get a second one because an older head's job noticed, as it ended, that the head had moved
221
+ (the older job is normally cancelled first; this closes the window in which it is not)."""
216
222
  if job.kind not in KINDS:
217
223
  raise ValueError(f"unknown job kind {job.kind!r}")
218
224
  if delivery_id is None:
@@ -228,33 +234,58 @@ class PostgresQueue:
228
234
  ).fetchone()
229
235
  if dup is not None:
230
236
  return False
231
- if unless_pending and job.ref and self._pending_within(conn, repo=job.repo_full_name, pr_number=job.pr_number,
232
- ref=job.ref, kind=job.kind):
233
- return False
234
- row = conn.execute(
235
- f"INSERT INTO {self._t('jobs')} (delivery_id, idempotency_key, kind, repo, ref, installation_id, "
236
- f"issue_number, pr_number, context, reason, priority, attempts, max_attempts, resumes, not_before, "
237
- f"check_run_id, created_at, src_sqlite_id) "
238
- f"VALUES (%(delivery_id)s, %(key)s, %(kind)s, %(repo)s, %(ref)s, %(installation_id)s, %(issue_number)s, "
239
- f"%(pr_number)s, %(context)s::jsonb, %(reason)s, %(priority)s, %(attempts)s, %(max_attempts)s, "
240
- f"%(resumes)s, %(not_before)s, %(check_run_id)s, COALESCE(%(created_at)s::timestamptz, {_NOW}), %(src)s) "
241
- f"ON CONFLICT DO NOTHING RETURNING id",
242
- {
243
- "delivery_id": delivery_id, "key": idempotency_key(job), "kind": job.kind,
244
- "repo": job.repo_full_name, "ref": job.ref, "installation_id": job.installation_id,
245
- "issue_number": job.issue_number, "pr_number": job.pr_number,
246
- "context": json.dumps(job.context) if job.context is not None else None,
247
- "reason": job.reason or "", "priority": int(priority), "attempts": int(attempts),
248
- "max_attempts": self.policy_for(job.kind).budget, "resumes": int(resumes),
249
- "not_before": not_before, "check_run_id": check_run_id, "created_at": created_at,
250
- "now": now, "src": src_sqlite_id,
251
- },
252
- ).fetchone()
253
- if row is None:
254
- return False
255
- self.event(int(row["id"]), "enqueued", conn=conn,
256
- detail={"delivery_id": delivery_id, "kind": job.kind, "reason": job.reason,
257
- "priority": int(priority), "imported_from_sqlite": src_sqlite_id is not None})
237
+ with conn.transaction():
238
+ if unless_pending and job.ref:
239
+ # Two requeuers can race for one head (two reapers servicing two reaped jobs of
240
+ # the same pull request; a mover and a reaper). For queued/running rows the
241
+ # jobs_one_live_head index already decides the race; a `done` row has no index,
242
+ # so the check and the insert are serialized per head: same-head requeues take
243
+ # this lock in turn, everything else is untouched.
244
+ conn.execute("SELECT pg_advisory_xact_lock(hashtext(%s))",
245
+ (lock_key(self._schema, f"head:{job.repo_full_name}|{job.pr_number}|{job.ref}|{job.kind}"),))
246
+ if self._covered_within(conn, repo=job.repo_full_name, pr_number=job.pr_number, ref=job.ref,
247
+ kind=job.kind, now=now):
248
+ return False
249
+ row = conn.execute(
250
+ f"INSERT INTO {self._t('jobs')} (delivery_id, idempotency_key, kind, repo, ref, installation_id, "
251
+ f"issue_number, pr_number, context, reason, priority, attempts, max_attempts, resumes, not_before, "
252
+ f"check_run_id, created_at, src_sqlite_id) "
253
+ f"VALUES (%(delivery_id)s, %(key)s, %(kind)s, %(repo)s, %(ref)s, %(installation_id)s, %(issue_number)s, "
254
+ f"%(pr_number)s, %(context)s::jsonb, %(reason)s, %(priority)s, %(attempts)s, %(max_attempts)s, "
255
+ f"%(resumes)s, %(not_before)s, %(check_run_id)s, COALESCE(%(created_at)s::timestamptz, {_NOW}), %(src)s) "
256
+ f"ON CONFLICT DO NOTHING RETURNING id",
257
+ {
258
+ "delivery_id": delivery_id, "key": idempotency_key(job), "kind": job.kind,
259
+ "repo": job.repo_full_name, "ref": job.ref, "installation_id": job.installation_id,
260
+ "issue_number": job.issue_number, "pr_number": job.pr_number,
261
+ "context": json.dumps(job.context) if job.context is not None else None,
262
+ "reason": job.reason or "", "priority": int(priority), "attempts": int(attempts),
263
+ "max_attempts": self.policy_for(job.kind).budget, "resumes": int(resumes),
264
+ "not_before": not_before, "check_run_id": check_run_id, "created_at": created_at,
265
+ "now": now, "src": src_sqlite_id,
266
+ },
267
+ ).fetchone()
268
+ if row is None:
269
+ return False
270
+ new_id = int(row["id"])
271
+ self.event(new_id, "enqueued", conn=conn,
272
+ detail={"delivery_id": delivery_id, "kind": job.kind, "reason": job.reason,
273
+ "priority": int(priority), "imported_from_sqlite": src_sqlite_id is not None})
274
+ if job.kind in SUPERSEDABLE_KINDS and job.pr_number is not None and job.ref:
275
+ # A new head of this pull request retires the WAITING older heads in the same
276
+ # transaction as its own insert -- the SQLite queue's rule (webhook_queue
277
+ # ``_supersede_within``), which this backend lacked: with the queue saturated,
278
+ # push A then push B had A's job run later, read the moved head, review B, and
279
+ # B's own job review B again (two `codna review` runs on one commit, measured
280
+ # 2026-09-20). The RUNNING older heads are flagged ``cancel_requested`` so the
281
+ # worker holding them -- on ANY machine, not only the ingress's own process --
282
+ # stops at its next heartbeat (webhook_service wires the lost lease into the
283
+ # same cancellation the ingress applies in-process). The row just written is
284
+ # excluded: a redelivery of the SAME head must not retire its predecessor.
285
+ self._supersede_within(conn, repo=job.repo_full_name, pr_number=job.pr_number,
286
+ new_ref=job.ref, exclude_row_id=new_id, now=now)
287
+ self._request_cancel_within(conn, repo=job.repo_full_name, pr_number=job.pr_number,
288
+ new_ref=job.ref, exclude_row_id=new_id)
258
289
  return True
259
290
 
260
291
  def _pending_within(self, conn: Any, *, repo: str, pr_number: int | None, ref: str | None, kind: str) -> bool:
@@ -263,6 +294,21 @@ class PostgresQueue:
263
294
  f"AND kind = %s AND status IN ('queued', 'running') LIMIT 1", (repo, pr_number, ref, kind)).fetchone()
264
295
  return row is not None
265
296
 
297
+ def _covered_within(self, conn: Any, *, repo: str, pr_number: int | None, ref: str | None, kind: str,
298
+ now: datetime | None) -> bool:
299
+ """``_pending_within`` plus rows that ran to a verdict (``done``) within the last 24 hours --
300
+ what ``enqueue``'s ``unless_pending`` asks. The window this guards is minutes wide (an older
301
+ head's job outliving the new head's review by at most the job timeout plus a lease), and
302
+ the bound keeps an old verdict from silencing a requeue of a head force-pushed back months
303
+ later; 24 h is the check_suite_failure dedup rule's window. A ``failed``/``dead``/
304
+ ``cancelled`` row does not cover the head."""
305
+ row = conn.execute(
306
+ f"SELECT 1 FROM {self._t('jobs')} WHERE repo = %(repo)s AND pr_number IS NOT DISTINCT FROM %(pr)s AND ref = %(ref)s "
307
+ f"AND kind = %(kind)s AND (status IN ('queued', 'running') "
308
+ f"OR (status = 'done' AND finished_at >= {_NOW} - interval '24 hours')) LIMIT 1",
309
+ {"repo": repo, "pr": pr_number, "ref": ref, "kind": kind, "now": now}).fetchone()
310
+ return row is not None
311
+
266
312
  def has_pending(self, *, repo: str, pr_number: int | None, ref: str | None, kind: str) -> bool:
267
313
  """Whether a job of ``kind`` for exactly this pull request head is already waiting or
268
314
  running -- the SQLite queue's question, answered from the shared table. ``ref`` None never
@@ -390,6 +436,12 @@ class PostgresQueue:
390
436
  row = conn.execute(f"SELECT cancel_requested FROM {self._t('jobs')} WHERE id = %s", (row_id,)).fetchone()
391
437
  return (row or {}).get("cancel_requested") if row else None
392
438
 
439
+ def set_lease_lost_handler(self, callback: Callable[[int, str], None] | None) -> None:
440
+ """Install (or clear) what the lease keeper calls when a lease can no longer be renewed:
441
+ the row was cancelled from outside (a newer head, an operator) or reaped. The service wires
442
+ the worker's own cancellation here once the queue exists (``webhook_service.build_service``)."""
443
+ self._on_lease_lost = callback
444
+
393
445
  def lease_lost_reason(self, row_id: int) -> str | None:
394
446
  """What the heartbeat recorded for a lease this process no longer holds, else None."""
395
447
  with self._leases_lock:
@@ -583,17 +635,41 @@ class PostgresQueue:
583
635
  if not repo or pr_number is None or not new_ref:
584
636
  return []
585
637
  with self._pool.connection() as conn, conn.transaction():
586
- rows = conn.execute(
587
- f"UPDATE {self._t('jobs')} SET status='superseded', finished_at={_NOW}, "
588
- f"result=%(r)s::jsonb, last_error='superseded' WHERE repo=%(repo)s AND pr_number=%(pr)s "
589
- f"AND kind IN ('review','fix') AND status='queued' AND ref IS NOT NULL AND ref <> %(ref)s "
590
- f"AND id <> %(ex)s RETURNING id",
591
- {"now": self._now(), "r": json.dumps({"summary": f"superseded by {new_ref[:8]}"}),
592
- "repo": repo, "pr": pr_number, "ref": new_ref, "ex": -1 if exclude_row_id is None else exclude_row_id},
593
- ).fetchall()
594
- ids = [int(r["id"]) for r in rows]
595
- for rid in ids:
596
- self.event(rid, "superseded", conn=conn, detail={"new_ref": new_ref})
638
+ return self._supersede_within(conn, repo=repo, pr_number=pr_number, new_ref=new_ref,
639
+ exclude_row_id=exclude_row_id, now=self._now())
640
+
641
+ def _supersede_within(self, conn: Any, *, repo: str, pr_number: int, new_ref: str,
642
+ exclude_row_id: int | None, now: datetime | None) -> list[int]:
643
+ """The retirement itself, inside a transaction the CALLER owns -- so ``enqueue`` makes the
644
+ insert and the retirement of the heads it replaces one atomic step."""
645
+ rows = conn.execute(
646
+ f"UPDATE {self._t('jobs')} SET status='superseded', finished_at={_NOW}, "
647
+ f"result=%(r)s::jsonb, last_error='superseded' WHERE repo=%(repo)s AND pr_number=%(pr)s "
648
+ f"AND kind IN ({_SUPERSEDABLE_SQL}) AND status='queued' AND ref IS NOT NULL AND ref <> %(ref)s "
649
+ f"AND id <> %(ex)s RETURNING id",
650
+ {"now": now, "r": json.dumps({"summary": f"superseded by {new_ref[:8]}"}),
651
+ "repo": repo, "pr": pr_number, "ref": new_ref, "ex": -1 if exclude_row_id is None else exclude_row_id},
652
+ ).fetchall()
653
+ ids = [int(r["id"]) for r in rows]
654
+ for rid in ids:
655
+ self.event(rid, "superseded", conn=conn, detail={"new_ref": new_ref})
656
+ return ids
657
+
658
+ def _request_cancel_within(self, conn: Any, *, repo: str, pr_number: int, new_ref: str,
659
+ exclude_row_id: int) -> list[int]:
660
+ """Ask the worker running an older head of this pull request to stop: ``cancel_requested``
661
+ fails its next heartbeat (``heartbeat``), and the lease keeper's callback cancels the job
662
+ where it runs. Rows already asked keep their first reason; the reaper finishes whichever
663
+ row its worker does not (``webhook_lease.Reaper._reap_one``)."""
664
+ rows = conn.execute(
665
+ f"UPDATE {self._t('jobs')} SET cancel_requested = %(why)s WHERE repo=%(repo)s AND pr_number=%(pr)s "
666
+ f"AND kind IN ({_SUPERSEDABLE_SQL}) AND status='running' AND ref IS NOT NULL AND ref <> %(ref)s "
667
+ f"AND cancel_requested IS NULL AND id <> %(ex)s RETURNING id",
668
+ {"why": f"superseded by {new_ref[:8]}", "repo": repo, "pr": pr_number, "ref": new_ref, "ex": exclude_row_id},
669
+ ).fetchall()
670
+ ids = [int(r["id"]) for r in rows]
671
+ for rid in ids:
672
+ self.event(rid, "cancel_requested", conn=conn, detail={"reason": "superseded", "new_ref": new_ref})
597
673
  return ids
598
674
 
599
675
  # --- migration to and from the SQLite file --------------------------------------------------
@@ -290,6 +290,16 @@ def build_service(*, environ: Any = None, queue: Any = None, pool_factory: Calla
290
290
  from .webhook_ops import _pg
291
291
 
292
292
  pg = _pg(queue)
293
+ if pg is not None and backend == "postgres" and role in ("all", "worker"):
294
+ # A lease this process can no longer renew means the row was taken from it: cancelled from
295
+ # outside (a newer head arriving at ANY ingress, an operator's `cancel`) or reaped after a
296
+ # missed heartbeat. The job still running here is stopped exactly as an in-process
297
+ # supersede stops it -- JobHandle.cancel + settle: runtime torn down, Check Run closed
298
+ # neutral, the row written once -- so a superseded review does not run on to post on a
299
+ # commit nobody is merging, and a cancelled fix never opens its pull request. Without this
300
+ # the ingress's ``supersede_running`` reached only its own process (measured 2026-09-20 on
301
+ # the ingress + worker-pool shape: the old head's review ran to completion).
302
+ pg.set_lease_lost_handler(_cancel_local_job(queue, github or _default_github()))
293
303
  concurrency = webhook_control.default_concurrency(e) # memory-derived, CODNA_WEBHOOK_CONCURRENCY wins when set
294
304
  pool = None
295
305
  registration = None
@@ -339,6 +349,23 @@ def _default_github() -> Any:
339
349
  return webhook_github
340
350
 
341
351
 
352
+ def _cancel_local_job(queue: Any, github: Any) -> Callable[[int, str], None]:
353
+ """The lease keeper's callback: cancel the job this process runs for a row it no longer holds.
354
+ ``reason`` is the row's ``cancel_requested`` text (``superseded by <sha>``, an operator's
355
+ reason) or ``lease_lost`` (reaped: another worker owns it now). A handle already cancelled --
356
+ the ingress's own in-process supersede got there first -- is left to that path."""
357
+ from . import webhook_control
358
+
359
+ def _on_lease_lost(row_id: int, reason: str) -> None:
360
+ handle = webhook_control.get_control().get(row_id)
361
+ if handle is None or handle.cancelled:
362
+ return
363
+ _log("job_cancelled_by_queue", row_id=row_id, kind=handle.kind, repo=handle.repo, reason=reason)
364
+ webhook_control.cancel_jobs([handle], reason="cancel_requested", summary=reason, github=github, queue=queue)
365
+
366
+ return _on_lease_lost
367
+
368
+
342
369
  def _process_with_job_context(*, pool_default: Callable[..., Any]) -> Callable[..., Any]:
343
370
  """Wrap the pool's per-job entry so the queue row id is visible to ``_job_env`` (thread-local)
344
371
  while the job runs: the CLI's review body then carries ``codna:review:run=<id>``."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codna
3
- Version: 0.2.58
3
+ Version: 0.2.59
4
4
  Summary: Local-first repo intelligence and agent fixing for Codna.
5
5
  Author: Thyn
6
6
  Maintainer: Thyn
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "codna"
3
- version = "0.2.58"
3
+ version = "0.2.59"
4
4
  description = "Local-first repo intelligence and agent fixing for Codna."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -83,6 +83,11 @@ def test_worker_pool_runs_the_postgres_backend_as_a_worker(worker):
83
83
 
84
84
  def test_worker_kill_timeout_is_at_flys_maximum_and_a_drained_worker_stays_stopped(worker):
85
85
  assert _seconds(worker["kill_timeout"]) == 300 # Fly's maximum: a longer fix must be DRAINED, never just stopped
86
+ # The pool's own drain grace must fill that window (its code default, 25 s, is the INGRESS
87
+ # machine's 30 s kill_timeout): measured 2026-09-20, a `fly machine stop` with the default
88
+ # exited 25 s into a 120 s review and handed it to the reaper.
89
+ drain_s = int(worker["env"]["CODNA_WEBHOOK_DRAIN_S"])
90
+ assert 240 <= drain_s <= _seconds(worker["kill_timeout"]) - 5
86
91
  [restart] = worker["restart"]
87
92
  assert restart["policy"] == "on-failure" # exit 0 after a drain = the machine stays stopped (the pool shrinks)
88
93
 
@@ -282,6 +282,142 @@ def test_heartbeat_renews_only_the_owners_live_lease(make_pg_queue):
282
282
  assert other.heartbeat(claimed.row_id, owner="someone-else:1:t") is False
283
283
 
284
284
 
285
+ def test_a_new_head_on_enqueue_retires_waiting_older_heads_and_flags_the_running_one(make_pg_queue):
286
+ """The SQLite queue's rule, on this backend too: push A then push B on one pull request must
287
+ leave ONE live job for it. Measured without this (2026-09-20, load proof): A's job ran later,
288
+ read the moved head, reviewed B -- and B's own job reviewed B again, two `codna review` runs
289
+ on one commit. The waiting older heads are retired in the insert's own transaction; the
290
+ running one is asked to stop (``cancel_requested``), which its worker learns at its next beat."""
291
+ q = make_pg_queue()
292
+ other = make_pg_queue(tenant_default_cap=3)
293
+ assert q.enqueue(_job(ref="A", pr=7), delivery_id="dA")
294
+ running = q.claim()
295
+ assert running is not None and running.job.ref == "A"
296
+ assert q.enqueue(_job(ref="B", pr=7), delivery_id="dB") # waits behind A
297
+ assert q.enqueue(_job(kind="fix", ref="B", pr=7, reason="review_comment_codna_fix"), delivery_id="dBfix")
298
+ assert q.enqueue(_job(ref="B", pr=7), delivery_id="dB-redelivered") is False # same head, new GUID: nothing retired
299
+ assert q.enqueue(_job(kind="queue", ref="G", pr=7, reason="merge_group_checks_requested"), delivery_id="dG") # a group commit is never stale
300
+ assert q.enqueue(_job(ref=None, pr=7, reason="comment_codna_review"), delivery_id="dNoRef") # resolves its head when it runs
301
+ assert q.enqueue(_job(ref="A", pr=8, installation=43), delivery_id="dA8") # another pull request
302
+ assert q.enqueue(_job(ref="C", pr=7), delivery_id="dC")
303
+ by = {r["delivery_id"]: r for r in q.recent(limit=20)}
304
+ assert by["dB"]["status"] == "superseded" and by["dBfix"]["status"] == "superseded"
305
+ assert by["dB"]["result"] == {"summary": "superseded by C"} and by["dBfix"]["last_error"] == "superseded"
306
+ assert {by[d]["status"] for d in ("dG", "dNoRef", "dA8", "dC")} == {"queued"}
307
+ # The running row was asked to stop when B arrived and keeps that first reason (a later head
308
+ # does not overwrite it); its worker learns at its next beat.
309
+ assert by["dA"]["status"] == "running" and q.job(running.row_id)["cancel_requested"] == "superseded by B"
310
+ assert q.heartbeat(running.row_id) is False
311
+ assert [e["event"] for e in q.events(running.row_id)][-1] == "cancel_requested"
312
+ assert [e["event"] for e in q.events(by["dB"]["id"])][-1] == "superseded"
313
+ claimed = [c.delivery_id for c in (other.claim() for _ in range(5)) if c is not None]
314
+ assert set(claimed) == {"dA8", "dNoRef", "dC"} # tenant 42: A + two more = its cap of 3
315
+ assert not {"dB", "dBfix"} & set(claimed)
316
+
317
+
318
+ def test_the_worker_holding_a_superseded_head_learns_it_through_its_lease(make_pg_queue):
319
+ """Cross-machine: the push lands at an ingress, the review runs on a worker elsewhere. The
320
+ worker's lease keeper reports the row's reason, which webhook_service turns into the same
321
+ cancellation the ingress applies to its own process."""
322
+ ingress = make_pg_queue(owner="ingress:1")
323
+ lost = []
324
+ worker = make_pg_queue(owner="worker-b:1", heartbeat_s=0.05, lease_s=5,
325
+ on_lease_lost=lambda rid, why: lost.append((rid, why)))
326
+ assert ingress.enqueue(_job(ref="A", pr=7), delivery_id="dA")
327
+ claimed = worker.claim()
328
+ assert ingress.enqueue(_job(ref="B", pr=7), delivery_id="dB")
329
+ pause = threading.Event()
330
+ for _ in range(200):
331
+ if lost:
332
+ break
333
+ pause.wait(0.05)
334
+ assert lost == [(claimed.row_id, "superseded by B")]
335
+ assert worker.lease_lost_reason(claimed.row_id) == "superseded by B"
336
+
337
+
338
+ def test_unless_pending_also_skips_a_head_that_already_has_its_verdict(make_pg_queue):
339
+ """The window the supersede leaves open: an older head's job ends normally before its worker
340
+ learns it was superseded, sees the head moved, and re-queues the new head -- which was already
341
+ reviewed. ``unless_pending`` treats a finished (``done``) row as covering the head; a plain
342
+ enqueue (a `@codna review` re-request) still queues it."""
343
+ clock = _Clock()
344
+ q = make_pg_queue(clock=clock)
345
+ assert q.enqueue(_job(ref="B", pr=7), delivery_id="dB")
346
+ claimed = q.claim()
347
+ q.complete(claimed.row_id, status="done", result={"summary": "reviewed"})
348
+ assert q.enqueue(_job(ref="B", pr=7, reason="head_moved_during_review"), delivery_id="head-moved-1-B", unless_pending=True) is False
349
+ clock.advance(23 * 3600)
350
+ assert q.enqueue(_job(ref="B", pr=7, reason="head_moved_during_review"), delivery_id="head-moved-1-B-later", unless_pending=True) is False
351
+ clock.advance(2 * 3600) # a verdict older than 24 h covers nothing
352
+ assert q.enqueue(_job(ref="B", pr=7, reason="head_moved_during_review"), delivery_id="head-moved-1-B-old", unless_pending=True) is True
353
+ q.complete(q.claim().row_id, status="done", result={"summary": "reviewed again"})
354
+ assert q.enqueue(_job(ref="B", pr=7, reason="head_moved_during_review"), delivery_id="head-moved-1-B-again", unless_pending=True) is False
355
+ assert q.enqueue(_job(ref="F", pr=9), delivery_id="dF") # a head whose only row FAILED
356
+ failed = q.claim()
357
+ assert failed is not None and failed.delivery_id == "dF"
358
+ q.complete(failed.row_id, status="failed", result={"error": "cli_error"}, retry=False)
359
+ assert q.job(failed.row_id)["status"] == "failed"
360
+ assert q.enqueue(_job(ref="F", pr=9), delivery_id="head-moved-2-F", unless_pending=True) is True # not covered
361
+ assert q.enqueue(_job(ref="B", pr=7, reason="comment_codna_review"), delivery_id="dB-again") is True
362
+ assert q.counts() == {"done": 2, "failed": 1, "queued": 2}
363
+
364
+
365
+ def test_racing_requeues_for_one_reviewed_head_insert_at_most_one_row(make_pg_queue):
366
+ """Two requeuers (two reapers, a mover and a reaper) asking ``unless_pending`` for the same
367
+ head at the same time: the check runs inside the insert's transaction under a per-head
368
+ advisory lock, so only one can insert -- and none when the head already has its verdict."""
369
+ q = make_pg_queue(pool_max=12)
370
+ assert q.enqueue(_job(ref="B", pr=7), delivery_id="dB")
371
+ q.complete(q.claim().row_id, status="done", result={"summary": "reviewed"})
372
+ results, barrier = [], threading.Barrier(8)
373
+
374
+ def _requeue(i):
375
+ barrier.wait()
376
+ results.append(q.enqueue(_job(ref="B", pr=7, reason="head_moved_during_review"), delivery_id=f"requeue-{i}", unless_pending=True))
377
+
378
+ threads = [threading.Thread(target=_requeue, args=(i,)) for i in range(8)]
379
+ for t in threads:
380
+ t.start()
381
+ for t in threads:
382
+ t.join(timeout=30)
383
+ assert results == [False] * 8 and q.counts() == {"done": 1}
384
+ # and for a head with NO verdict yet, exactly one of the racers inserts
385
+ results.clear()
386
+ barrier = threading.Barrier(8)
387
+ threads = [threading.Thread(target=lambda i=i: (barrier.wait(), results.append(
388
+ q.enqueue(_job(ref="C", pr=7, reason="head_moved_during_review"), delivery_id=f"requeue-C-{i}", unless_pending=True))))
389
+ for i in range(8)]
390
+ for t in threads:
391
+ t.start()
392
+ for t in threads:
393
+ t.join(timeout=30)
394
+ assert results.count(True) == 1 and q.counts() == {"done": 1, "queued": 1}
395
+
396
+
397
+ def test_the_reaper_does_not_queue_a_current_head_that_was_already_reviewed(make_pg_queue):
398
+ """Same window, reaper side: a worker dies while finishing an older head after the current head
399
+ was already reviewed. The stale row is cancelled and its Check Run closed; the current head is
400
+ NOT queued a second time."""
401
+ clock = _Clock()
402
+ ingress = make_pg_queue(owner="ingress:1", clock=clock, lease_s=10)
403
+ worker = make_pg_queue(owner="worker-a:1", clock=clock, lease_s=10)
404
+ ingress.enqueue(_job(ref="newhead", pr=7), delivery_id="dNew")
405
+ reviewed = worker.claim()
406
+ worker.complete(reviewed.row_id, status="done", result={"summary": "reviewed newhead"})
407
+ ingress.enqueue(_job(ref="oldhead", pr=7, reason="late_delivery"), delivery_id="dOld") # a late event for the older head
408
+ stale = worker.claim()
409
+ worker.record_check_run(stale.row_id, 77)
410
+ worker.abandon_leases()
411
+ clock.advance(11)
412
+ github = _GitHub(head="newhead", open_runs={77})
413
+ reaper = Reaper(ingress, app_id="APP", private_key="pem", github=github, environ={}, leader=_Held())
414
+ assert reaper.reap_expired()["superseded"] == 1
415
+ assert ingress.job(stale.row_id)["status"] == "cancelled"
416
+ assert [c[1:3] for c in github.of("complete")] == [(77, "cancelled")]
417
+ assert worker.claim() is None # newhead already has its verdict: nothing queued
418
+ assert ingress.counts() == {"done": 1, "cancelled": 1}
419
+
420
+
285
421
  def test_cancel_requested_fails_the_heartbeat_and_the_lost_lease_is_reported(make_pg_queue):
286
422
  lost = []
287
423
  q = make_pg_queue(heartbeat_s=0.05, lease_s=5, on_lease_lost=lambda rid, why: lost.append((rid, why)))
@@ -6,6 +6,7 @@ from __future__ import annotations
6
6
 
7
7
  import json
8
8
  import threading
9
+ import time
9
10
  from http.server import ThreadingHTTPServer
10
11
  from urllib.request import Request, urlopen
11
12
  from urllib.error import HTTPError
@@ -239,3 +240,39 @@ def test_argparse_exposes_the_new_subcommands():
239
240
  assert ns.action_name == "queue" and ns.direction == "export"
240
241
  assert parser.parse_args(["webhook", "migrate"]).action_name == "migrate"
241
242
  assert parser.parse_args(["webhook"]).action == "serve" # bare `codna webhook` still serves
243
+
244
+
245
+ def test_a_lost_lease_cancels_the_job_this_process_runs(make_pg_queue, tmp_path, monkeypatch):
246
+ """The Postgres backend's cross-machine cancellation, wired end to end: a row cancelled from
247
+ outside (here a newer head enqueued as another ingress would) fails the worker's next heartbeat,
248
+ and build_service's lease-lost handler stops the local job exactly as an in-process supersede
249
+ does -- handle cancelled, row written once with the reason, the next claim is the new head."""
250
+ from codna import webhook_control
251
+ from codna.webhook import WebhookJob
252
+
253
+ pg = make_pg_queue(heartbeat_s=0.05, lease_s=5)
254
+ monkeypatch.setenv("CODNA_WEBHOOK_QUEUE", str(tmp_path / "queue.db"))
255
+ monkeypatch.setenv("CODNA_RUNTIME_ROOT", str(tmp_path / "rt"))
256
+ monkeypatch.setenv("TMPDIR", str(tmp_path / "tmp"))
257
+ monkeypatch.setenv("CODNA_WEBHOOK_QUEUE_BACKEND", "postgres")
258
+ monkeypatch.setenv("CODNA_WEBHOOK_ROLE", "worker")
259
+ monkeypatch.delenv("FLY_API_TOKEN", raising=False)
260
+ build_service(queue=pg, pool_factory=_Pool) # the injected queue gets the handler too
261
+ assert pg.enqueue(WebhookJob("review", "acme/app", ref="old", pr_number=7, installation_id=42, reason="t"), delivery_id="d1")
262
+ claimed = pg.claim()
263
+ handle = webhook_control.get_control().register(row_id=claimed.row_id, kind="review", repo="acme/app",
264
+ pr_number=7, ref="old", deadline_s=600)
265
+ try:
266
+ assert pg.enqueue(WebhookJob("review", "acme/app", ref="new", pr_number=7, installation_id=42, reason="t"), delivery_id="d2")
267
+ for _ in range(200):
268
+ if handle.cancelled and pg.row_state(claimed.row_id)[0] != "running":
269
+ break
270
+ time.sleep(0.05)
271
+ assert handle.cancelled and handle.cancel_detail == "superseded by new"
272
+ assert pg.row_state(claimed.row_id)[0] == "done"
273
+ assert pg.job(claimed.row_id)["result"] == {"summary": "superseded by new", "cancelled": "cancel_requested"}
274
+ nxt = pg.claim()
275
+ assert nxt is not None and nxt.job.ref == "new"
276
+ finally:
277
+ webhook_control.get_control().release(claimed.row_id)
278
+ pg.set_lease_lost_handler(None)
File without changes
File without changes
File without changes