codd-dev 2.24.0__tar.gz → 2.26.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (569) hide show
  1. {codd_dev-2.24.0 → codd_dev-2.26.0}/PKG-INFO +1 -1
  2. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/__init__.py +1 -1
  3. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/__init__.py +10 -2
  4. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/cdp_browser.py +6 -0
  5. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/curl.py +2 -1
  6. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/playwright.py +2 -1
  7. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/vitest.py +2 -1
  8. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/greenfield/pipeline.py +260 -19
  9. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/implement_oracle.py +199 -8
  10. codd_dev-2.26.0/codd/implement_oracle_scope.py +1106 -0
  11. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/verify_runner.py +9 -1
  12. {codd_dev-2.24.0 → codd_dev-2.26.0}/pyproject.toml +1 -1
  13. {codd_dev-2.24.0 → codd_dev-2.26.0}/.gitignore +0 -0
  14. {codd_dev-2.24.0 → codd_dev-2.26.0}/LICENSE +0 -0
  15. {codd_dev-2.24.0 → codd_dev-2.26.0}/README.md +0 -0
  16. {codd_dev-2.24.0 → codd_dev-2.26.0}/bench_fixture/README.md +0 -0
  17. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/__main__.py +0 -0
  18. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/_git_helper.py +0 -0
  19. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/action_outcome.py +0 -0
  20. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/ai_invoke.py +0 -0
  21. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/ai_patch.py +0 -0
  22. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/artifact_contract.py +0 -0
  23. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/artifact_ids.py +0 -0
  24. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/artifacts/catalog.yaml +0 -0
  25. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/ask_user_question_adapter.py +0 -0
  26. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/assembler.py +0 -0
  27. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/bridge.py +0 -0
  28. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/brownfield/__init__.py +0 -0
  29. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/brownfield/pipeline.py +0 -0
  30. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/capability_completeness.py +0 -0
  31. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/claude_cli.py +0 -0
  32. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/cli.py +0 -0
  33. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/clustering.py +0 -0
  34. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/coherence_adapters.py +0 -0
  35. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/coherence_engine.py +0 -0
  36. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/confidence.py +0 -0
  37. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/config.py +0 -0
  38. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/config_schema.py +0 -0
  39. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/contracts.py +0 -0
  40. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/coverage_auditor.py +0 -0
  41. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/coverage_metrics.py +0 -0
  42. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/__init__.py +0 -0
  43. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/auto_repair.py +0 -0
  44. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/builder.py +0 -0
  45. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/__init__.py +0 -0
  46. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/_one_to_many_detection.py +0 -0
  47. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/artifact_contract_check.py +0 -0
  48. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/ci_health.py +0 -0
  49. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/dependency_freshness.py +0 -0
  50. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/depends_on_consistency.py +0 -0
  51. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/deployment_completeness.py +0 -0
  52. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/edge_validity.py +0 -0
  53. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/environment_coverage.py +0 -0
  54. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/implementation_coverage.py +0 -0
  55. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/node_completeness.py +0 -0
  56. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/opt_out.py +0 -0
  57. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/task_completion.py +0 -0
  58. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/transitive_closure.py +0 -0
  59. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/ui_coherence.py +0 -0
  60. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/checks/user_journey_coherence.py +0 -0
  61. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/coverage_axes.py +0 -0
  62. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/cli.yaml +0 -0
  63. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/cpp_embedded.yaml +0 -0
  64. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/csharp.yaml +0 -0
  65. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/elixir.yaml +0 -0
  66. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/generic.yaml +0 -0
  67. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/iot.yaml +0 -0
  68. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/java.yaml +0 -0
  69. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/kotlin.yaml +0 -0
  70. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/mobile.yaml +0 -0
  71. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/ruby.yaml +0 -0
  72. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/rust.yaml +0 -0
  73. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/scala.yaml +0 -0
  74. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/swift.yaml +0 -0
  75. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/test_frameworks.yaml +0 -0
  76. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/defaults/web.yaml +0 -0
  77. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/extractor.py +0 -0
  78. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/impact.py +0 -0
  79. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/dag/runner.py +0 -0
  80. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/defaults.py +0 -0
  81. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/defaults.yaml +0 -0
  82. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deploy_targets/__init__.py +0 -0
  83. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deploy_targets/app_service.py +0 -0
  84. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deploy_targets/base.py +0 -0
  85. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deploy_targets/docker_compose.py +0 -0
  86. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployer.py +0 -0
  87. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/__init__.py +0 -0
  88. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/checks/__init__.py +0 -0
  89. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/defaults/deploy_targets.yaml +0 -0
  90. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/defaults/runtime_capability_inference.yaml +0 -0
  91. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/defaults/schema_providers.yaml +0 -0
  92. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/defaults/verification_templates.yaml +0 -0
  93. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/extractor.py +0 -0
  94. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/ai_command.py +0 -0
  95. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/ai_command_factory.py +0 -0
  96. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/codex_app_server.py +0 -0
  97. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/llm_consideration.py +0 -0
  98. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/schema/__init__.py +0 -0
  99. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/schema/prisma.py +0 -0
  100. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/target/__init__.py +0 -0
  101. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/target/docker_compose.py +0 -0
  102. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/__init__.py +0 -0
  103. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/assertion_handlers.py +0 -0
  104. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/cdp_engines.py +0 -0
  105. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/cdp_launchers.py +0 -0
  106. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/cdp_wire.py +0 -0
  107. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/form_strategies.py +0 -0
  108. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/deployment/providers/verification/means_catalog.py +0 -0
  109. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/design_md.py +0 -0
  110. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/diff/__init__.py +0 -0
  111. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/diff/apply.py +0 -0
  112. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/diff/engine.py +0 -0
  113. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/diff/persistence.py +0 -0
  114. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/diff/templates/diff_prompt.md +0 -0
  115. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/discovery.py +0 -0
  116. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/drift.py +0 -0
  117. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/e2e_contract_coherence.py +0 -0
  118. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/e2e_extractor.py +0 -0
  119. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/e2e_generator.py +0 -0
  120. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/e2e_runner.py +0 -0
  121. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/__init__.py +0 -0
  122. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/apply.py +0 -0
  123. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/engine.py +0 -0
  124. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/finding.py +0 -0
  125. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/formatters/__init__.py +0 -0
  126. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/formatters/base.py +0 -0
  127. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/formatters/interactive.py +0 -0
  128. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/formatters/json_fmt.py +0 -0
  129. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/formatters/md.py +0 -0
  130. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/lexicon_loader.py +0 -0
  131. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/persistence.py +0 -0
  132. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/elicit/templates/elicit_prompt_L0.md +0 -0
  133. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/env_refs.py +0 -0
  134. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/extract_ai.py +0 -0
  135. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/extract_paths.py +0 -0
  136. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/extractor.py +0 -0
  137. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/__init__.py +0 -0
  138. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/candidate_selector.py +0 -0
  139. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/design_updater.py +0 -0
  140. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/impl_propagation.py +0 -0
  141. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/interactive_prompt.py +0 -0
  142. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/phenomenon_fixer.py +0 -0
  143. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/phenomenon_parser.py +0 -0
  144. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/risk_classifier.py +0 -0
  145. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/templates/clarification_question.txt +0 -0
  146. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/templates/design_update.txt +0 -0
  147. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/templates/impl_update.txt +0 -0
  148. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/templates/phenomenon_parse.txt +0 -0
  149. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/templates/risk_assessment.txt +0 -0
  150. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fix/templates_loader.py +0 -0
  151. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fixer.py +0 -0
  152. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fixup_drift.py +0 -0
  153. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fixup_drift_strategies/__init__.py +0 -0
  154. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fixup_drift_strategies/design_token_drift.py +0 -0
  155. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fixup_drift_strategies/lexicon_violation.py +0 -0
  156. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/fixup_drift_strategies/url_drift.py +0 -0
  157. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/frontmatter.py +0 -0
  158. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/generator.py +0 -0
  159. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/git_evidence.py +0 -0
  160. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/graph.py +0 -0
  161. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/greenfield/__init__.py +0 -0
  162. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hitl_session.py +0 -0
  163. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/__init__.py +0 -0
  164. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/pre-commit +0 -0
  165. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/recipes/claude_requirements_nudge.json +0 -0
  166. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/recipes/claude_settings_example.json +0 -0
  167. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/recipes/codex_hook.sh +0 -0
  168. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/recipes/git_post_commit.sh +0 -0
  169. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/hooks/recipes/git_pre_commit.sh +0 -0
  170. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/iac_nfr.py +0 -0
  171. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/implementer/__init__.py +0 -0
  172. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/implementer/chunked_runner.py +0 -0
  173. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/implementer/typecheck_loop.py +0 -0
  174. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/implementer.py +0 -0
  175. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/import_coherence.py +0 -0
  176. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/inheritance.py +0 -0
  177. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/init/__init__.py +0 -0
  178. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/init/lexicon_suggest.py +0 -0
  179. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/init/llm_lexicon_suggester.py +0 -0
  180. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/init/stack_detector.py +0 -0
  181. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/knowledge_fetcher.py +0 -0
  182. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon.py +0 -0
  183. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/__init__.py +0 -0
  184. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/formatters/__init__.py +0 -0
  185. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/formatters/html.py +0 -0
  186. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/formatters/json_fmt.py +0 -0
  187. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/formatters/md.py +0 -0
  188. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/inspector.py +0 -0
  189. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/manager.py +0 -0
  190. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/reporter.py +0 -0
  191. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/lexicon_cli/threshold.py +0 -0
  192. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/__init__.py +0 -0
  193. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/approval.py +0 -0
  194. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/best_practice_augmenter.py +0 -0
  195. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/criteria_expander.py +0 -0
  196. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/design_doc_extractor.py +0 -0
  197. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/impl_step_deriver.py +0 -0
  198. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/means_catalog_loader.py +0 -0
  199. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/parser.py +0 -0
  200. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/plan_deriver.py +0 -0
  201. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/prompt_builder.py +0 -0
  202. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/strategy_validator.py +0 -0
  203. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/best_practice_augment_meta.md +0 -0
  204. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/criteria_expand_meta.md +0 -0
  205. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/design_doc_extract_meta.md +0 -0
  206. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/impl_step_derive_meta.md +0 -0
  207. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/implementation_step_catalog.yaml +0 -0
  208. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/meta_instruction.md +0 -0
  209. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/plan_derive_meta.md +0 -0
  210. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/llm/templates/verification_means_catalog.yaml +0 -0
  211. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/mcp_server.py +0 -0
  212. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/measure.py +0 -0
  213. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/operational_e2e_audit.py +0 -0
  214. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/operations_derive.py +0 -0
  215. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/__init__.py +0 -0
  216. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/_shared.py +0 -0
  217. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/api_specs.py +0 -0
  218. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/filesystem_routes.py +0 -0
  219. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/iac.py +0 -0
  220. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/python_ast.py +0 -0
  221. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/schemas.py +0 -0
  222. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/tests_builddeps.py +0 -0
  223. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/parsing/treesitter.py +0 -0
  224. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/planner.py +0 -0
  225. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/policy.py +0 -0
  226. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/preflight/__init__.py +0 -0
  227. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/preflight/defaults/cli.yaml +0 -0
  228. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/preflight/defaults/generic.yaml +0 -0
  229. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/preflight/defaults/iot.yaml +0 -0
  230. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/preflight/defaults/mobile.yaml +0 -0
  231. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/preflight/defaults/web.yaml +0 -0
  232. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/project_types.py +0 -0
  233. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/propagate.py +0 -0
  234. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/propagation_common.py +0 -0
  235. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/propagator.py +0 -0
  236. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/reconciliation_ledger.py +0 -0
  237. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/registry.py +0 -0
  238. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/__init__.py +0 -0
  239. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/approval_repair.py +0 -0
  240. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/auto_scope_guard.py +0 -0
  241. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/engine.py +0 -0
  242. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/git_patcher.py +0 -0
  243. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/history.py +0 -0
  244. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/llm_repair_engine.py +0 -0
  245. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/loop.py +0 -0
  246. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/primary_picker.py +0 -0
  247. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/proof_breaks.py +0 -0
  248. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/repair_result.py +0 -0
  249. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/repairability_classifier.py +0 -0
  250. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/schema.py +0 -0
  251. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/templates/analyze_meta.md +0 -0
  252. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/templates/propose_meta.md +0 -0
  253. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/templates/repair_strategy_meta.md +0 -0
  254. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/templates/repairability_meta.md +0 -0
  255. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair/test_failure_attribution.py +0 -0
  256. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/repair_slice.py +0 -0
  257. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/require.py +0 -0
  258. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/require_plugins.py +0 -0
  259. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/require_propagate.py +0 -0
  260. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/required_artifacts/defaults/cli.yaml +0 -0
  261. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/required_artifacts/defaults/generic.yaml +0 -0
  262. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/required_artifacts/defaults/iot.yaml +0 -0
  263. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/required_artifacts/defaults/mobile.yaml +0 -0
  264. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/required_artifacts/defaults/web.yaml +0 -0
  265. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/required_artifacts_deriver.py +0 -0
  266. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_completeness/defaults/cli.yaml +0 -0
  267. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_completeness/defaults/generic.yaml +0 -0
  268. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_completeness/defaults/iot.yaml +0 -0
  269. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_completeness/defaults/mobile.yaml +0 -0
  270. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_completeness/defaults/web.yaml +0 -0
  271. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_completeness_auditor.py +0 -0
  272. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirement_reconciliation.py +0 -0
  273. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/requirements_meta.py +0 -0
  274. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/restoration_report.py +0 -0
  275. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/restore.py +0 -0
  276. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/routes_extractor.py +0 -0
  277. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/runtime_smoke/__init__.py +0 -0
  278. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/runtime_smoke/checks.py +0 -0
  279. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/runtime_smoke/config.py +0 -0
  280. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/runtime_smoke/report.py +0 -0
  281. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/runtime_smoke/runner.py +0 -0
  282. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/scanner.py +0 -0
  283. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/schema_refs.py +0 -0
  284. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/screen_flow_validator.py +0 -0
  285. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/screen_transition_extractor.py +0 -0
  286. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/screen_transitions/defaults.yaml +0 -0
  287. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/skills_cli/__init__.py +0 -0
  288. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/skills_cli/discovery.py +0 -0
  289. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/skills_cli/manager.py +0 -0
  290. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/skills_cli/paths.py +0 -0
  291. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/surface_reconciliation.py +0 -0
  292. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/synth.py +0 -0
  293. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/codd.yaml.tmpl +0 -0
  294. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/conventions.yaml.tmpl +0 -0
  295. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/data_dependencies.yaml.tmpl +0 -0
  296. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/doc_links.yaml.tmpl +0 -0
  297. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/extract_ai_prompt_baseline.md +0 -0
  298. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/extracted/api-contract.md.j2 +0 -0
  299. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/extracted/architecture-overview.md.j2 +0 -0
  300. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/extracted/module-detail.md.j2 +0 -0
  301. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/extracted/schema-design.md.j2 +0 -0
  302. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/extracted/system-context.md.j2 +0 -0
  303. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/gitignore.tmpl +0 -0
  304. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/lexicon_questions.md +0 -0
  305. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/lexicon_schema.yaml +0 -0
  306. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/templates/overrides.yaml.tmpl +0 -0
  307. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/test_detection.py +0 -0
  308. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/test_import_coherence.py +0 -0
  309. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/traceability.py +0 -0
  310. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/validator.py +0 -0
  311. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/verifiable_behavior_audit.py +0 -0
  312. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/watch/__init__.py +0 -0
  313. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/watch/events.py +0 -0
  314. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/watch/propagation_log.py +0 -0
  315. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/watch/propagation_pipeline.py +0 -0
  316. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/watch/test_runner.py +0 -0
  317. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/watch/watcher.py +0 -0
  318. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd/wiring.py +0 -0
  319. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ai_governance_eu_act/coverage_matrix.md +0 -0
  320. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ai_governance_eu_act/elicit_extend.md +0 -0
  321. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ai_governance_eu_act/lexicon.yaml +0 -0
  322. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ai_governance_eu_act/manifest.yaml +0 -0
  323. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ai_governance_eu_act/recommended_kinds.yaml +0 -0
  324. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ai_governance_eu_act/severity_rules.yaml +0 -0
  325. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rate_limiting_caching/coverage_matrix.md +0 -0
  326. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rate_limiting_caching/elicit_extend.md +0 -0
  327. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rate_limiting_caching/lexicon.yaml +0 -0
  328. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rate_limiting_caching/manifest.yaml +0 -0
  329. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rate_limiting_caching/recommended_kinds.yaml +0 -0
  330. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rate_limiting_caching/severity_rules.yaml +0 -0
  331. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rest_openapi/coverage_matrix.md +0 -0
  332. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rest_openapi/elicit_extend.md +0 -0
  333. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rest_openapi/lexicon.yaml +0 -0
  334. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rest_openapi/manifest.yaml +0 -0
  335. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rest_openapi/recommended_kinds.yaml +0 -0
  336. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/api_rest_openapi/severity_rules.yaml +0 -0
  337. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/babok/elicit_extend.md +0 -0
  338. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/babok/lexicon.yaml +0 -0
  339. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/babok/manifest.yaml +0 -0
  340. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/babok/recommended_kinds.yaml +0 -0
  341. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/babok/severity_rules.yaml +0 -0
  342. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_event_cloudevents/coverage_matrix.md +0 -0
  343. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_event_cloudevents/elicit_extend.md +0 -0
  344. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_event_cloudevents/lexicon.yaml +0 -0
  345. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_event_cloudevents/manifest.yaml +0 -0
  346. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_event_cloudevents/recommended_kinds.yaml +0 -0
  347. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_event_cloudevents/severity_rules.yaml +0 -0
  348. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_graphql/coverage_matrix.md +0 -0
  349. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_graphql/elicit_extend.md +0 -0
  350. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_graphql/lexicon.yaml +0 -0
  351. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_graphql/manifest.yaml +0 -0
  352. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_graphql/recommended_kinds.yaml +0 -0
  353. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_graphql/severity_rules.yaml +0 -0
  354. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_grpc_proto/coverage_matrix.md +0 -0
  355. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_grpc_proto/elicit_extend.md +0 -0
  356. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_grpc_proto/lexicon.yaml +0 -0
  357. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_grpc_proto/manifest.yaml +0 -0
  358. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_grpc_proto/recommended_kinds.yaml +0 -0
  359. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/backend_grpc_proto/severity_rules.yaml +0 -0
  360. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_hipaa/coverage_matrix.md +0 -0
  361. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_hipaa/elicit_extend.md +0 -0
  362. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_hipaa/lexicon.yaml +0 -0
  363. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_hipaa/manifest.yaml +0 -0
  364. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_hipaa/recommended_kinds.yaml +0 -0
  365. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_hipaa/severity_rules.yaml +0 -0
  366. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_iso27001/coverage_matrix.md +0 -0
  367. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_iso27001/elicit_extend.md +0 -0
  368. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_iso27001/lexicon.yaml +0 -0
  369. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_iso27001/manifest.yaml +0 -0
  370. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_iso27001/recommended_kinds.yaml +0 -0
  371. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_iso27001/severity_rules.yaml +0 -0
  372. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_pci_dss_4/coverage_matrix.md +0 -0
  373. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_pci_dss_4/elicit_extend.md +0 -0
  374. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_pci_dss_4/lexicon.yaml +0 -0
  375. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_pci_dss_4/manifest.yaml +0 -0
  376. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_pci_dss_4/recommended_kinds.yaml +0 -0
  377. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/compliance_pci_dss_4/severity_rules.yaml +0 -0
  378. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_aggregation_policies/coverage_matrix.md +0 -0
  379. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_aggregation_policies/elicit_extend.md +0 -0
  380. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_aggregation_policies/lexicon.yaml +0 -0
  381. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_aggregation_policies/manifest.yaml +0 -0
  382. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_aggregation_policies/recommended_kinds.yaml +0 -0
  383. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_aggregation_policies/severity_rules.yaml +0 -0
  384. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_eventsourcing_es_cqrs/coverage_matrix.md +0 -0
  385. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_eventsourcing_es_cqrs/elicit_extend.md +0 -0
  386. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_eventsourcing_es_cqrs/lexicon.yaml +0 -0
  387. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_eventsourcing_es_cqrs/manifest.yaml +0 -0
  388. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_eventsourcing_es_cqrs/recommended_kinds.yaml +0 -0
  389. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_eventsourcing_es_cqrs/severity_rules.yaml +0 -0
  390. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_governance_appi_gdpr/coverage_matrix.md +0 -0
  391. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_governance_appi_gdpr/elicit_extend.md +0 -0
  392. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_governance_appi_gdpr/lexicon.yaml +0 -0
  393. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_governance_appi_gdpr/manifest.yaml +0 -0
  394. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_governance_appi_gdpr/recommended_kinds.yaml +0 -0
  395. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_governance_appi_gdpr/severity_rules.yaml +0 -0
  396. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_nosql_jsonschema/coverage_matrix.md +0 -0
  397. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_nosql_jsonschema/elicit_extend.md +0 -0
  398. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_nosql_jsonschema/lexicon.yaml +0 -0
  399. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_nosql_jsonschema/manifest.yaml +0 -0
  400. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_nosql_jsonschema/recommended_kinds.yaml +0 -0
  401. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_nosql_jsonschema/severity_rules.yaml +0 -0
  402. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_relational_iso_sql/coverage_matrix.md +0 -0
  403. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_relational_iso_sql/elicit_extend.md +0 -0
  404. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_relational_iso_sql/lexicon.yaml +0 -0
  405. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_relational_iso_sql/manifest.yaml +0 -0
  406. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_relational_iso_sql/recommended_kinds.yaml +0 -0
  407. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/data_relational_iso_sql/severity_rules.yaml +0 -0
  408. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ddd_domain_driven_design/coverage_matrix.md +0 -0
  409. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ddd_domain_driven_design/elicit_extend.md +0 -0
  410. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ddd_domain_driven_design/lexicon.yaml +0 -0
  411. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ddd_domain_driven_design/manifest.yaml +0 -0
  412. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ddd_domain_driven_design/recommended_kinds.yaml +0 -0
  413. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ddd_domain_driven_design/severity_rules.yaml +0 -0
  414. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/dora_sre_metrics/coverage_matrix.md +0 -0
  415. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/dora_sre_metrics/elicit_extend.md +0 -0
  416. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/dora_sre_metrics/lexicon.yaml +0 -0
  417. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/dora_sre_metrics/manifest.yaml +0 -0
  418. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/dora_sre_metrics/recommended_kinds.yaml +0 -0
  419. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/dora_sre_metrics/severity_rules.yaml +0 -0
  420. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/i18n_unicode_cldr/coverage_matrix.md +0 -0
  421. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/i18n_unicode_cldr/elicit_extend.md +0 -0
  422. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/i18n_unicode_cldr/lexicon.yaml +0 -0
  423. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/i18n_unicode_cldr/manifest.yaml +0 -0
  424. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/i18n_unicode_cldr/recommended_kinds.yaml +0 -0
  425. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/i18n_unicode_cldr/severity_rules.yaml +0 -0
  426. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ml_model_cards/coverage_matrix.md +0 -0
  427. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ml_model_cards/elicit_extend.md +0 -0
  428. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ml_model_cards/lexicon.yaml +0 -0
  429. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ml_model_cards/manifest.yaml +0 -0
  430. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ml_model_cards/recommended_kinds.yaml +0 -0
  431. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ml_model_cards/severity_rules.yaml +0 -0
  432. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_a11y_native/coverage_matrix.md +0 -0
  433. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_a11y_native/elicit_extend.md +0 -0
  434. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_a11y_native/lexicon.yaml +0 -0
  435. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_a11y_native/manifest.yaml +0 -0
  436. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_a11y_native/recommended_kinds.yaml +0 -0
  437. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_a11y_native/severity_rules.yaml +0 -0
  438. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_android_material3/coverage_matrix.md +0 -0
  439. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_android_material3/elicit_extend.md +0 -0
  440. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_android_material3/lexicon.yaml +0 -0
  441. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_android_material3/manifest.yaml +0 -0
  442. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_android_material3/recommended_kinds.yaml +0 -0
  443. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_android_material3/severity_rules.yaml +0 -0
  444. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_ios_hig/coverage_matrix.md +0 -0
  445. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_ios_hig/elicit_extend.md +0 -0
  446. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_ios_hig/lexicon.yaml +0 -0
  447. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_ios_hig/manifest.yaml +0 -0
  448. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_ios_hig/recommended_kinds.yaml +0 -0
  449. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_ios_hig/severity_rules.yaml +0 -0
  450. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_security_masvs/coverage_matrix.md +0 -0
  451. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_security_masvs/elicit_extend.md +0 -0
  452. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_security_masvs/lexicon.yaml +0 -0
  453. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_security_masvs/manifest.yaml +0 -0
  454. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_security_masvs/recommended_kinds.yaml +0 -0
  455. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/mobile_security_masvs/severity_rules.yaml +0 -0
  456. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_cicd_pipeline/coverage_matrix.md +0 -0
  457. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_cicd_pipeline/elicit_extend.md +0 -0
  458. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_cicd_pipeline/lexicon.yaml +0 -0
  459. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_cicd_pipeline/manifest.yaml +0 -0
  460. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_cicd_pipeline/recommended_kinds.yaml +0 -0
  461. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_cicd_pipeline/severity_rules.yaml +0 -0
  462. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_iac_terraform/coverage_matrix.md +0 -0
  463. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_iac_terraform/elicit_extend.md +0 -0
  464. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_iac_terraform/lexicon.yaml +0 -0
  465. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_iac_terraform/manifest.yaml +0 -0
  466. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_iac_terraform/recommended_kinds.yaml +0 -0
  467. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_iac_terraform/severity_rules.yaml +0 -0
  468. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_kubernetes/coverage_matrix.md +0 -0
  469. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_kubernetes/elicit_extend.md +0 -0
  470. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_kubernetes/lexicon.yaml +0 -0
  471. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_kubernetes/manifest.yaml +0 -0
  472. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_kubernetes/recommended_kinds.yaml +0 -0
  473. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_kubernetes/severity_rules.yaml +0 -0
  474. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_observability_otel/coverage_matrix.md +0 -0
  475. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_observability_otel/elicit_extend.md +0 -0
  476. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_observability_otel/lexicon.yaml +0 -0
  477. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_observability_otel/manifest.yaml +0 -0
  478. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_observability_otel/recommended_kinds.yaml +0 -0
  479. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/ops_observability_otel/severity_rules.yaml +0 -0
  480. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_iso25010/coverage_matrix.md +0 -0
  481. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_iso25010/elicit_extend.md +0 -0
  482. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_iso25010/lexicon.yaml +0 -0
  483. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_iso25010/manifest.yaml +0 -0
  484. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_iso25010/recommended_kinds.yaml +0 -0
  485. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_iso25010/severity_rules.yaml +0 -0
  486. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_test_iso29119/coverage_matrix.md +0 -0
  487. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_test_iso29119/elicit_extend.md +0 -0
  488. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_test_iso29119/lexicon.yaml +0 -0
  489. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_test_iso29119/manifest.yaml +0 -0
  490. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_test_iso29119/recommended_kinds.yaml +0 -0
  491. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/process_test_iso29119/severity_rules.yaml +0 -0
  492. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/twelve_factor_app/coverage_matrix.md +0 -0
  493. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/twelve_factor_app/elicit_extend.md +0 -0
  494. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/twelve_factor_app/lexicon.yaml +0 -0
  495. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/twelve_factor_app/manifest.yaml +0 -0
  496. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/twelve_factor_app/recommended_kinds.yaml +0 -0
  497. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/twelve_factor_app/severity_rules.yaml +0 -0
  498. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_a11y_wcag22_aa/coverage_matrix.md +0 -0
  499. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_a11y_wcag22_aa/elicit_extend.md +0 -0
  500. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_a11y_wcag22_aa/lexicon.yaml +0 -0
  501. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_a11y_wcag22_aa/manifest.yaml +0 -0
  502. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_a11y_wcag22_aa/recommended_kinds.yaml +0 -0
  503. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_a11y_wcag22_aa/severity_rules.yaml +0 -0
  504. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_authn_webauthn/coverage_matrix.md +0 -0
  505. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_authn_webauthn/elicit_extend.md +0 -0
  506. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_authn_webauthn/lexicon.yaml +0 -0
  507. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_authn_webauthn/manifest.yaml +0 -0
  508. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_authn_webauthn/recommended_kinds.yaml +0 -0
  509. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_authn_webauthn/severity_rules.yaml +0 -0
  510. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_browser_compat/coverage_matrix.md +0 -0
  511. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_browser_compat/elicit_extend.md +0 -0
  512. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_browser_compat/lexicon.yaml +0 -0
  513. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_browser_compat/manifest.yaml +0 -0
  514. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_browser_compat/recommended_kinds.yaml +0 -0
  515. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_browser_compat/severity_rules.yaml +0 -0
  516. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_forms_html5/coverage_matrix.md +0 -0
  517. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_forms_html5/elicit_extend.md +0 -0
  518. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_forms_html5/lexicon.yaml +0 -0
  519. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_forms_html5/manifest.yaml +0 -0
  520. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_forms_html5/recommended_kinds.yaml +0 -0
  521. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_forms_html5/severity_rules.yaml +0 -0
  522. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_performance_core_web_vitals/coverage_matrix.md +0 -0
  523. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_performance_core_web_vitals/elicit_extend.md +0 -0
  524. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_performance_core_web_vitals/lexicon.yaml +0 -0
  525. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_performance_core_web_vitals/manifest.yaml +0 -0
  526. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_performance_core_web_vitals/recommended_kinds.yaml +0 -0
  527. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_performance_core_web_vitals/severity_rules.yaml +0 -0
  528. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_pwa_manifest/coverage_matrix.md +0 -0
  529. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_pwa_manifest/elicit_extend.md +0 -0
  530. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_pwa_manifest/lexicon.yaml +0 -0
  531. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_pwa_manifest/manifest.yaml +0 -0
  532. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_pwa_manifest/recommended_kinds.yaml +0 -0
  533. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_pwa_manifest/severity_rules.yaml +0 -0
  534. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_responsive/coverage_matrix.md +0 -0
  535. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_responsive/elicit_extend.md +0 -0
  536. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_responsive/lexicon.yaml +0 -0
  537. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_responsive/manifest.yaml +0 -0
  538. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_responsive/recommended_kinds.yaml +0 -0
  539. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_responsive/severity_rules.yaml +0 -0
  540. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_security_owasp/coverage_matrix.md +0 -0
  541. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_security_owasp/elicit_extend.md +0 -0
  542. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_security_owasp/lexicon.yaml +0 -0
  543. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_security_owasp/manifest.yaml +0 -0
  544. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_security_owasp/recommended_kinds.yaml +0 -0
  545. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_security_owasp/severity_rules.yaml +0 -0
  546. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_seo_schemaorg/coverage_matrix.md +0 -0
  547. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_seo_schemaorg/elicit_extend.md +0 -0
  548. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_seo_schemaorg/lexicon.yaml +0 -0
  549. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_seo_schemaorg/manifest.yaml +0 -0
  550. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_seo_schemaorg/recommended_kinds.yaml +0 -0
  551. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/lexicons/web_seo_schemaorg/severity_rules.yaml +0 -0
  552. {codd_dev-2.24.0 → codd_dev-2.26.0}/codd_plugins/stack_map.yaml +0 -0
  553. {codd_dev-2.24.0 → codd_dev-2.26.0}/docs/cookbook/cdp_browser/README.md +0 -0
  554. {codd_dev-2.24.0 → codd_dev-2.26.0}/docs/cookbook/presentation_aggregation/README.md +0 -0
  555. {codd_dev-2.24.0 → codd_dev-2.26.0}/docs/requirements/README.md +0 -0
  556. {codd_dev-2.24.0 → codd_dev-2.26.0}/dogfood/README.md +0 -0
  557. {codd_dev-2.24.0 → codd_dev-2.26.0}/dogfood/fixtures/flat_py_app/README.md +0 -0
  558. {codd_dev-2.24.0 → codd_dev-2.26.0}/examples/README.md +0 -0
  559. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-assemble/SKILL.md +0 -0
  560. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-evolve/SKILL.md +0 -0
  561. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-generate/SKILL.md +0 -0
  562. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-greenfield/SKILL.md +0 -0
  563. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-impact/SKILL.md +0 -0
  564. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-init/SKILL.md +0 -0
  565. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-propagate/SKILL.md +0 -0
  566. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-restore/SKILL.md +0 -0
  567. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-scan/SKILL.md +0 -0
  568. {codd_dev-2.24.0 → codd_dev-2.26.0}/skills/codd-validate/SKILL.md +0 -0
  569. {codd_dev-2.24.0 → codd_dev-2.26.0}/tests/integration/standalone_repair_skeleton/README.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codd-dev
3
- Version: 2.24.0
3
+ Version: 2.26.0
4
4
  Summary: CoDD: Coherence-Driven Development — cross-artifact change impact analysis
5
5
  Project-URL: Homepage, https://github.com/yohey-w/codd-dev
6
6
  Project-URL: Repository, https://github.com/yohey-w/codd-dev
@@ -1,3 +1,3 @@
1
1
  """CoDD — Coherence-Driven Development."""
2
2
 
3
- __version__ = "2.24.0"
3
+ __version__ = "2.26.0"
@@ -67,8 +67,16 @@ class VerificationTemplate(ABC):
67
67
  """Generate the command used to verify ``runtime_state``."""
68
68
 
69
69
  @abstractmethod
70
- def execute(self, command: str) -> "VerificationResult":
71
- """Execute a verification command and return its result."""
70
+ def execute(self, command: str, cwd: Path | None = None) -> "VerificationResult":
71
+ """Execute a verification command and return its result.
72
+
73
+ ``cwd`` is the project root the command must run in. A test runner like
74
+ ``vitest`` roots its config/collection at the process working directory,
75
+ so executing it from the orchestrator's cwd (e.g. the CoDD install tree)
76
+ makes it load the WRONG ``vitest.config.ts`` and collect 0 tests. Pass
77
+ the generated project root here so every runner roots at the project.
78
+ ``None`` keeps the caller's current working directory (legacy behaviour).
79
+ """
72
80
 
73
81
 
74
82
  VERIFICATION_TEMPLATES: dict[str, type[VerificationTemplate]] = {}
@@ -83,7 +83,13 @@ class CdpBrowser(VerificationTemplate):
83
83
  self,
84
84
  command: str,
85
85
  axis_overrides: Mapping[str, str] | None = None,
86
+ cwd: Path | None = None,
86
87
  ) -> VerificationResult:
88
+ # ``cwd`` is accepted for interface uniformity (the verify runner passes
89
+ # it to every template) but is intentionally unused here: this template
90
+ # drives a CDP browser session, not a cwd-rooted subprocess, and already
91
+ # resolves the project root from the execution plan itself
92
+ # (``generate_test_command`` stamps ``plan["project_root"]``).
87
93
  started_at = time.monotonic()
88
94
  wire: CdpWire | None = None
89
95
  result: VerificationResult | None = None
@@ -65,7 +65,7 @@ class CurlTemplate(VerificationTemplate):
65
65
  return f"curl -s -o /dev/null -w '%{{http_code}}' -X POST {target}"
66
66
  return f"curl -s -o /dev/null -w '%{{http_code}}' {target}"
67
67
 
68
- def execute(self, command: str) -> VerificationResult:
68
+ def execute(self, command: str, cwd: Path | None = None) -> VerificationResult:
69
69
  if self.dry_run:
70
70
  return VerificationResult(passed=True, output=command, duration=0.0)
71
71
 
@@ -74,6 +74,7 @@ class CurlTemplate(VerificationTemplate):
74
74
  completed = subprocess.run(
75
75
  command,
76
76
  shell=True,
77
+ cwd=cwd,
77
78
  capture_output=True,
78
79
  text=True,
79
80
  timeout=self.timeout,
@@ -70,12 +70,13 @@ class PlaywrightTemplate(VerificationTemplate):
70
70
 
71
71
  return " ".join(parts)
72
72
 
73
- def execute(self, command: str) -> VerificationResult:
73
+ def execute(self, command: str, cwd: Path | None = None) -> VerificationResult:
74
74
  started_at = time.monotonic()
75
75
  try:
76
76
  completed = subprocess.run(
77
77
  command,
78
78
  shell=True,
79
+ cwd=cwd,
79
80
  capture_output=True,
80
81
  text=True,
81
82
  timeout=self.timeout,
@@ -101,12 +101,13 @@ class VitestTemplate(VerificationTemplate):
101
101
  command = ["npx", "vitest", "run", shlex.quote(test_target)]
102
102
  return " ".join(command)
103
103
 
104
- def execute(self, command: str) -> VerificationResult:
104
+ def execute(self, command: str, cwd: Path | None = None) -> VerificationResult:
105
105
  started_at = time.monotonic()
106
106
  try:
107
107
  completed = subprocess.run(
108
108
  command,
109
109
  shell=True,
110
+ cwd=cwd,
110
111
  capture_output=True,
111
112
  text=True,
112
113
  timeout=self.timeout,
@@ -741,14 +741,16 @@ class GreenfieldPipeline:
741
741
  Ensures the stack topology is scaffolded first (idempotent — the same
742
742
  ``_ensure_test_runner`` verify uses), so the oracle's config (tsconfig)
743
743
  exists to certify and run against AT implement-time. Then runs the gate
744
- with a ``rerun(feedback)`` callback that re-invokes implementation for
745
- every task carrying the normalized oracle feedback (the cross-file
746
- incoherence is not localized to one task, so the whole build is
747
- regenerated under the feedback — the same broad-rerun shape the VB
748
- coverage gate uses). A non-passing final result is a StageError; an
749
- uncertifiable oracle scope (OracleScopeError) propagates as a hard
750
- failure. The whole gate is a NO-OP for a stack without a declared
751
- implement-time oracle.
744
+ with a SCOPED ``rerun(feedback, scope)`` callback: on an oracle failure
745
+ the gate derives the both-ends-of-the-broken-edge scope and re-implements
746
+ ONLY the owning tasks (under a write-fence), escalating
747
+ narrow→expanded→broad only when the diagnostic signature fails to move
748
+ (see ``codd.implement_oracle_scope`` + ``run_implement_oracle_gate``).
749
+ ``scope is None`` ⇒ the broad fallback (re-implement every task the
750
+ legacy shape the VB coverage gate uses). A non-passing final result is a
751
+ StageError; an uncertifiable oracle scope (OracleScopeError) propagates
752
+ as a hard failure. The whole gate is a NO-OP for a stack without a
753
+ declared implement-time oracle.
752
754
  """
753
755
  from codd.implement_oracle import (
754
756
  OracleScopeError,
@@ -776,8 +778,14 @@ class GreenfieldPipeline:
776
778
  # clobbering, so verify's re-scaffold is a no-op.
777
779
  self._ensure_test_runner(project_root)
778
780
 
779
- def _rerun(feedback: str) -> None:
780
- self._rerun_tasks_with_feedback(project_root, tasks, feedback, options)
781
+ # The path→owning-task index for the SCOPED rerun: declared task outputs
782
+ # UNION the config-derived output paths. Built once; the gate consults it
783
+ # to localize each rerun to the diagnostics' owners.
784
+ scope_index = self._build_oracle_scope_index(project_root, tasks, config)
785
+ manifest_paths = self._oracle_manifest_paths(project_root)
786
+
787
+ def _rerun(feedback: str, scope: Any = None) -> None:
788
+ self._rerun_tasks_with_feedback(project_root, tasks, feedback, options, scope=scope)
781
789
 
782
790
  try:
783
791
  result = run_implement_oracle_gate(
@@ -789,6 +797,8 @@ class GreenfieldPipeline:
789
797
  config=config,
790
798
  rerun=_rerun,
791
799
  echo=self.echo,
800
+ scope_index=scope_index,
801
+ manifest_paths=manifest_paths,
792
802
  )
793
803
  except OracleScopeError as exc:
794
804
  raise StageError(str(exc)) from exc
@@ -802,29 +812,122 @@ class GreenfieldPipeline:
802
812
  f"{result.category_counts()}. {result.detail}"
803
813
  )
804
814
 
815
+ def _build_oracle_scope_index(
816
+ self,
817
+ project_root: Path,
818
+ tasks: list[ImplementTaskRef],
819
+ config: dict[str, Any],
820
+ ) -> Any:
821
+ """Build the path→owning-task index used to scope an oracle rerun.
822
+
823
+ Unions each task's DECLARED ``output_paths`` with its CONFIG-derived
824
+ output paths (``_output_paths_for_task`` — the same resolution the rerun
825
+ itself uses), so a diagnostic on any owned file/dir maps back to the task
826
+ that wrote it. A failure to build the index degrades the gate to the
827
+ broad rerun (``None`` → ``scope_index`` unset), never aborts.
828
+ """
829
+ try:
830
+ from codd.implement_oracle_scope import build_path_owner_index
831
+
832
+ config_output_paths: dict[str, list[str]] = {}
833
+ for task in tasks:
834
+ try:
835
+ config_output_paths[task.task_id] = (
836
+ list(task.output_paths)
837
+ if task.output_paths
838
+ else _output_paths_for_task(config, task)
839
+ )
840
+ except Exception: # noqa: BLE001 — a task whose paths fail just falls to broad.
841
+ config_output_paths[task.task_id] = list(task.output_paths or ())
842
+ return build_path_owner_index(
843
+ tasks,
844
+ project_root=project_root,
845
+ config=config,
846
+ config_output_paths=config_output_paths,
847
+ )
848
+ except Exception as exc: # noqa: BLE001 — index build is best-effort.
849
+ self.echo(f"[greenfield] implement-oracle: scope index unavailable ({exc}); rerun stays broad.")
850
+ return None
851
+
852
+ def _oracle_manifest_paths(self, project_root: Path) -> tuple[str, ...]:
853
+ """Manifest/config files the write-fence always permits (they are shared).
854
+
855
+ A scoped rerun may legitimately touch the build manifest/config even when
856
+ no task "owns" it (e.g. adding a dependency the fix needs). Only files
857
+ that actually exist are listed, project-relative.
858
+ """
859
+ candidates = (
860
+ "package.json",
861
+ "tsconfig.json",
862
+ "package-lock.json",
863
+ "pnpm-lock.yaml",
864
+ "yarn.lock",
865
+ )
866
+ present: list[str] = []
867
+ for name in candidates:
868
+ if (project_root / name).is_file():
869
+ present.append(name)
870
+ return tuple(present)
871
+
805
872
  def _rerun_tasks_with_feedback(
806
873
  self,
807
874
  project_root: Path,
808
875
  tasks: list[ImplementTaskRef],
809
876
  feedback: str,
810
877
  options: dict[str, Any],
878
+ *,
879
+ scope: Any = None,
811
880
  ) -> None:
812
- """Re-invoke implementation for every task carrying ``feedback``.
813
-
814
- Routes through the SAME implement path the stage uses
815
- (``implement_tasks`` with the resolved output paths), threading the
816
- normalized oracle feedback so the SUT regenerates coherent files. Uses
817
- the configured implement-task runner only when it is the default
818
- (feedback-aware path); a custom injected runner has no feedback channel,
819
- so this falls back to ``implement_tasks`` directly.
881
+ """Re-invoke implementation under ``feedback`` SCOPED when ``scope`` set.
882
+
883
+ ``scope is None`` (or a broad scope) → re-implement EVERY task (the
884
+ legacy broad rerun). A scoped :class:`~codd.implement_oracle_scope.OracleRerunScope`
885
+ re-implement ONLY its ``task_ids``, under a WRITE-FENCE: out-of-scope
886
+ files the SUT writes during the scoped rerun are reverted afterwards (an
887
+ out-of-scope CREATE is removed, an out-of-scope MODIFY is restored), so a
888
+ "targeted" rerun cannot silently regenerate the whole tree. The fence is
889
+ OFF for a broad rerun (broad legitimately rewrites everything).
890
+
891
+ Routes through the SAME implement path the stage uses (``implement_tasks``
892
+ with the resolved output paths), threading the normalized oracle feedback
893
+ so the SUT regenerates coherent files.
820
894
  """
821
895
  from codd.config import load_project_config
822
- from codd.implementer import implement_tasks
823
896
 
824
897
  try:
825
898
  config = load_project_config(project_root)
826
899
  except (FileNotFoundError, ValueError):
827
900
  config = {}
901
+
902
+ scoped = scope is not None and not bool(getattr(scope, "is_broad", lambda: False)())
903
+ if not scoped:
904
+ self._reimplement_tasks(project_root, tasks, feedback, config)
905
+ return
906
+
907
+ # Scoped rerun: only the scope's tasks, fenced to its allowed paths.
908
+ target_ids = set(getattr(scope, "task_ids", ()) or ())
909
+ scoped_tasks = [task for task in tasks if task.task_id in target_ids]
910
+ if not scoped_tasks:
911
+ # Nothing resolvable in this scope (defensive) → broad, never a no-op.
912
+ self.echo("[greenfield] implement-oracle: scoped task set empty — re-running broad.")
913
+ self._reimplement_tasks(project_root, tasks, feedback, config)
914
+ return
915
+
916
+ allowed = tuple(getattr(scope, "allowed_paths", ()) or ())
917
+ with _OracleWriteFence(project_root, allowed_paths=allowed, echo=self.echo) as fence:
918
+ self._reimplement_tasks(project_root, scoped_tasks, feedback, config)
919
+ fence.enforce()
920
+
921
+ def _reimplement_tasks(
922
+ self,
923
+ project_root: Path,
924
+ tasks: list[ImplementTaskRef],
925
+ feedback: str,
926
+ config: dict[str, Any],
927
+ ) -> None:
928
+ """Re-run ``implement_tasks`` for each given task carrying ``feedback``."""
929
+ from codd.implementer import implement_tasks
930
+
828
931
  for task in tasks:
829
932
  output_paths = (
830
933
  list(task.output_paths)
@@ -1253,6 +1356,144 @@ def _default_generate_wave_runner(project_root: Path, wave: int, *, ai_command:
1253
1356
  return f"{generated} generated, {len(results) - generated} skipped"
1254
1357
 
1255
1358
 
1359
+ #: Directories never snapshotted/fenced — vendored deps, VCS, the codd cache,
1360
+ #: build output. A write here is not a SUT source-write the fence governs.
1361
+ _FENCE_EXCLUDE_DIRS = frozenset(
1362
+ {"node_modules", ".git", ".codd", ".hg", ".svn", "dist", "build", "__pycache__", ".pytest_cache"}
1363
+ )
1364
+ #: Source/test file suffixes the fence tracks. Restricting to code keeps the
1365
+ #: snapshot cheap and avoids fighting tooling that touches caches/logs.
1366
+ _FENCE_TRACKED_SUFFIXES = frozenset(
1367
+ {".ts", ".tsx", ".mts", ".cts", ".js", ".jsx", ".mjs", ".cjs", ".py", ".json"}
1368
+ )
1369
+
1370
+
1371
+ class _OracleWriteFence:
1372
+ """Restrict a SCOPED oracle rerun's writes to the scope's ``allowed_paths``.
1373
+
1374
+ Re-implementing only the scoped tasks does NOT stop the SUT from writing
1375
+ OUT-of-scope files (the design's #1 implementation note). The fence snapshots
1376
+ the tracked source/test tree on entry; on :meth:`enforce` it reverts every
1377
+ out-of-scope change made during the rerun — an out-of-scope CREATE is deleted,
1378
+ an out-of-scope MODIFY is restored to its pre-rerun bytes. In-scope writes
1379
+ (under an allowed file/dir, or a manifest/config) pass untouched. This makes
1380
+ a "targeted" rerun genuinely local: it cannot silently regenerate the tree.
1381
+
1382
+ ``allowed_paths`` entries are matched as exact files OR directory prefixes
1383
+ (a task that owns ``src/`` may write any file under ``src/``). An EMPTY
1384
+ allow-set means "no fence" (the broad rerun's signal) and the caller does not
1385
+ construct a fence in that case.
1386
+ """
1387
+
1388
+ def __init__(self, project_root: Path, *, allowed_paths: tuple[str, ...], echo: Callable[[str], str]):
1389
+ self._root = Path(project_root).resolve()
1390
+ self._allowed_files, self._allowed_dirs = self._split_allowed(allowed_paths)
1391
+ self._echo = echo
1392
+ self._snapshot: dict[str, bytes] = {}
1393
+
1394
+ def __enter__(self) -> "_OracleWriteFence":
1395
+ self._snapshot = self._capture()
1396
+ return self
1397
+
1398
+ def __exit__(self, *_exc: Any) -> None:
1399
+ # The fence does not suppress exceptions; enforce() is called explicitly
1400
+ # by the caller on the SUCCESS path so a failing rerun's exception still
1401
+ # propagates with the tree left for the caller's error handling.
1402
+ return None
1403
+
1404
+ def enforce(self) -> None:
1405
+ """Revert every out-of-scope create/modify made since entry."""
1406
+ current = self._capture()
1407
+ reverted_modified: list[str] = []
1408
+ reverted_created: list[str] = []
1409
+
1410
+ # Reverts for modified/created files.
1411
+ for rel, content in current.items():
1412
+ if self._is_allowed(rel):
1413
+ continue
1414
+ if rel in self._snapshot:
1415
+ if self._snapshot[rel] != content:
1416
+ self._restore(rel, self._snapshot[rel])
1417
+ reverted_modified.append(rel)
1418
+ else:
1419
+ self._remove(rel)
1420
+ reverted_created.append(rel)
1421
+
1422
+ # Re-create any tracked file the scoped rerun DELETED out of scope (a
1423
+ # deletion is also an out-of-scope mutation we must undo).
1424
+ reverted_deleted: list[str] = []
1425
+ for rel, content in self._snapshot.items():
1426
+ if rel in current or self._is_allowed(rel):
1427
+ continue
1428
+ self._restore(rel, content)
1429
+ reverted_deleted.append(rel)
1430
+
1431
+ total = len(reverted_modified) + len(reverted_created) + len(reverted_deleted)
1432
+ if total:
1433
+ self._echo(
1434
+ "[greenfield] implement-oracle: write-fence reverted "
1435
+ f"{total} out-of-scope change(s) "
1436
+ f"(modified={len(reverted_modified)}, created={len(reverted_created)}, "
1437
+ f"deleted={len(reverted_deleted)}); the scoped rerun is kept local."
1438
+ )
1439
+
1440
+ # ── internals ──
1441
+ @staticmethod
1442
+ def _split_allowed(allowed_paths: tuple[str, ...]) -> tuple[set[str], list[str]]:
1443
+ files: set[str] = set()
1444
+ dirs: list[str] = []
1445
+ for raw in allowed_paths:
1446
+ norm = str(raw).strip().replace("\\", "/").strip("/")
1447
+ if not norm:
1448
+ continue
1449
+ if PurePosixPath(norm).suffix:
1450
+ files.add(norm)
1451
+ else:
1452
+ dirs.append(norm)
1453
+ return files, dirs
1454
+
1455
+ def _is_allowed(self, rel: str) -> bool:
1456
+ if rel in self._allowed_files:
1457
+ return True
1458
+ for directory in self._allowed_dirs:
1459
+ if rel == directory or rel.startswith(directory + "/"):
1460
+ return True
1461
+ return False
1462
+
1463
+ def _capture(self) -> dict[str, bytes]:
1464
+ out: dict[str, bytes] = {}
1465
+ for path in self._iter_tracked_files():
1466
+ try:
1467
+ out[path.relative_to(self._root).as_posix()] = path.read_bytes()
1468
+ except OSError:
1469
+ continue
1470
+ return out
1471
+
1472
+ def _iter_tracked_files(self):
1473
+ import os
1474
+
1475
+ for dirpath, dirnames, filenames in os.walk(self._root):
1476
+ dirnames[:] = [d for d in dirnames if d not in _FENCE_EXCLUDE_DIRS]
1477
+ for name in filenames:
1478
+ if PurePosixPath(name).suffix in _FENCE_TRACKED_SUFFIXES:
1479
+ yield Path(dirpath) / name
1480
+
1481
+ def _restore(self, rel: str, content: bytes) -> None:
1482
+ target = self._root / rel
1483
+ try:
1484
+ target.parent.mkdir(parents=True, exist_ok=True)
1485
+ target.write_bytes(content)
1486
+ except OSError as exc:
1487
+ self._echo(f"[greenfield] implement-oracle: write-fence could not restore {rel} ({exc}).")
1488
+
1489
+ def _remove(self, rel: str) -> None:
1490
+ target = self._root / rel
1491
+ try:
1492
+ target.unlink()
1493
+ except OSError as exc:
1494
+ self._echo(f"[greenfield] implement-oracle: write-fence could not remove {rel} ({exc}).")
1495
+
1496
+
1256
1497
  def _default_task_lister(project_root: Path) -> list[ImplementTaskRef]:
1257
1498
  from codd.implementer import list_implement_tasks
1258
1499