code-mower 0.5.0b11__tar.gz → 0.5.0b13__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 (269) hide show
  1. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/PKG-INFO +10 -7
  2. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/README.md +6 -6
  3. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/pyproject.toml +7 -1
  4. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/__init__.py +1 -1
  5. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/__init__.py +10 -1
  6. code_mower-0.5.0b13/src/code_mower/calibration/effect_report.py +578 -0
  7. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/value_report.py +99 -0
  8. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cli.py +1 -1
  9. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/__init__.py +4 -0
  10. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/bundle.py +9 -0
  11. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/dogfood.py +3 -0
  12. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/events.py +85 -0
  13. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/export.py +105 -0
  14. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/operations.py +9 -0
  15. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/upload.py +1 -0
  16. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/code_mower_calibration.py +55 -0
  17. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_local_cli.py +6 -2
  18. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/package_content.py +1 -1
  19. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/package_manifest.py +5 -0
  20. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_registry.py +2 -0
  21. code_mower-0.5.0b13/src/code_mower/providers/__init__.py +25 -0
  22. code_mower-0.5.0b13/src/code_mower/providers/local_cli.py +42 -0
  23. code_mower-0.5.0b13/src/code_mower/providers/provenance.py +231 -0
  24. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/code-mower.example.yml +2 -0
  25. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/providers.yml +2 -0
  26. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower.egg-info/PKG-INFO +10 -7
  27. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower.egg-info/SOURCES.txt +6 -0
  28. code_mower-0.5.0b13/src/code_mower.egg-info/requires.txt +5 -0
  29. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers.yml +2 -0
  30. code_mower-0.5.0b13/tests/test_calibration_effect_report.py +134 -0
  31. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_calibration_truth.py +4 -0
  32. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_cloud_client.py +39 -0
  33. code_mower-0.5.0b13/tests/test_provider_local_cli.py +88 -0
  34. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_release_hygiene.py +65 -37
  35. code_mower-0.5.0b11/src/code_mower.egg-info/requires.txt +0 -1
  36. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/CODE_OF_CONDUCT.md +0 -0
  37. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/LICENSE +0 -0
  38. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/MANIFEST.in +0 -0
  39. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/NOTICE +0 -0
  40. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/SUPPORT.md +0 -0
  41. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/requirements/requirements.txt +0 -0
  42. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/setup.cfg +0 -0
  43. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/adapters/__init__.py +0 -0
  44. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/adapters/_base.py +0 -0
  45. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/adapters/cursor_bugbot.py +0 -0
  46. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/adapters/gitar.py +0 -0
  47. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/adapters/greptile.py +0 -0
  48. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/adapters/qodo.py +0 -0
  49. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/antigravity_cli_audit_pr.py +0 -0
  50. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/audit_handoff_log.py +0 -0
  51. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/audit_labeler_lib.py +0 -0
  52. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/audit_progress.py +0 -0
  53. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/blind_review_artifacts.py +0 -0
  54. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/blind_review_coordinator.py +0 -0
  55. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/bootstrap.py +0 -0
  56. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/builder_experiment.py +0 -0
  57. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/arms.py +0 -0
  58. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/auto_discovery.py +0 -0
  59. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/commands.py +0 -0
  60. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/context_inputs.py +0 -0
  61. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/corpus.py +0 -0
  62. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/evidence.py +0 -0
  63. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/evidence_report.py +0 -0
  64. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/identity.py +0 -0
  65. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/metrics.py +0 -0
  66. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/overlap.py +0 -0
  67. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/planning.py +0 -0
  68. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/policy.py +0 -0
  69. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/results.py +0 -0
  70. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/run_results.py +0 -0
  71. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/run_status.py +0 -0
  72. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/runner.py +0 -0
  73. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/calibration/truth.py +0 -0
  74. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/checks.py +0 -0
  75. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/claude_audit_pr.py +0 -0
  76. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/claude_cli_bounce.py +0 -0
  77. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/claude_cli_environment.py +0 -0
  78. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/clear_stale.py +0 -0
  79. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud.py +0 -0
  80. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/doctor.py +0 -0
  81. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/endpoints.py +0 -0
  82. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/errors.py +0 -0
  83. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/git_metadata.py +0 -0
  84. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/manifest.py +0 -0
  85. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/reports.py +0 -0
  86. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/cloud_client/setup.py +0 -0
  87. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/code_mower_context_packs.py +0 -0
  88. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/code_mower_merge.py +0 -0
  89. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/code_mower_telemetry.py +0 -0
  90. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/coderabbit_cli_audit_pr.py +0 -0
  91. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/codex_audit_env_preflight.py +0 -0
  92. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/codex_audit_pr.py +0 -0
  93. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/codex_audit_schema_smoke.py +0 -0
  94. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/codex_audit_verdict.schema.json +0 -0
  95. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/config.py +0 -0
  96. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor.py +0 -0
  97. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/__init__.py +0 -0
  98. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/cloud.py +0 -0
  99. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/common.py +0 -0
  100. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github.py +0 -0
  101. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions.py +0 -0
  102. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_cost.py +0 -0
  103. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_cost_summary.py +0 -0
  104. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_failure_annotations.py +0 -0
  105. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_failure_models.py +0 -0
  106. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_failure_scan.py +0 -0
  107. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_failure_selection.py +0 -0
  108. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_failures.py +0 -0
  109. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_actions_permissions.py +0 -0
  110. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_api.py +0 -0
  111. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_branch.py +0 -0
  112. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_config.py +0 -0
  113. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_provider.py +0 -0
  114. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/github_repo.py +0 -0
  115. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/groups.py +0 -0
  116. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/models.py +0 -0
  117. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/output.py +0 -0
  118. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/presets.py +0 -0
  119. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/privacy.py +0 -0
  120. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_api_model.py +0 -0
  121. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_api_model_openai.py +0 -0
  122. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_api_model_profiles.py +0 -0
  123. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_env.py +0 -0
  124. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_env_required.py +0 -0
  125. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_env_tokens.py +0 -0
  126. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_local_cli_commands.py +0 -0
  127. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_local_cli_probe_config.py +0 -0
  128. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_probe.py +0 -0
  129. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_probe_auth.py +0 -0
  130. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_probe_evaluation.py +0 -0
  131. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_probe_json.py +0 -0
  132. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/provider_probe_remediation.py +0 -0
  133. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/providers.py +0 -0
  134. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/registry.py +0 -0
  135. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/runner.py +0 -0
  136. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/runtime.py +0 -0
  137. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/doctor_checks/runtime_github_auth.py +0 -0
  138. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/gemini_cli_audit_pr.py +0 -0
  139. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/hermes_cli_audit_pr.py +0 -0
  140. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/init.py +0 -0
  141. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/__init__.py +0 -0
  142. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/aider.py +0 -0
  143. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/antigravity_cli.py +0 -0
  144. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/claude.py +0 -0
  145. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/codex.py +0 -0
  146. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/devin.py +0 -0
  147. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/gemini_cli.py +0 -0
  148. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/hermes_cli.py +0 -0
  149. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/lane_configs/local_llm.py +0 -0
  150. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/local_llm_audit_pr.py +0 -0
  151. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/local_llm_bakeoff.py +0 -0
  152. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/local_llm_calibration.py +0 -0
  153. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/local_llm_profiles.py +0 -0
  154. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/migration.py +0 -0
  155. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/migration_install.py +0 -0
  156. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/migration_mirror.py +0 -0
  157. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/migration_readiness.py +0 -0
  158. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/migration_rehearsal.py +0 -0
  159. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/next_steps.py +0 -0
  160. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/package.py +0 -0
  161. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/package_paths.py +0 -0
  162. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/package_rendering.py +0 -0
  163. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/package_static.py +0 -0
  164. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/prompts.py +0 -0
  165. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/__init__.py +0 -0
  166. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/comments.py +0 -0
  167. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/git.py +0 -0
  168. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/github_auth.py +0 -0
  169. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/github_pr.py +0 -0
  170. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/pr_worktree.py +0 -0
  171. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/process.py +0 -0
  172. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/repo_paths.py +0 -0
  173. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/text_schema.py +0 -0
  174. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/verdict_artifacts.py +0 -0
  175. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/provider_runners/workspace.py +0 -0
  176. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/release_readiness.py +0 -0
  177. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/reviewer_metrics.py +0 -0
  178. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/saas_reviewer_labeler.py +0 -0
  179. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/secrets.py +0 -0
  180. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/builder-experiment.example.json +0 -0
  181. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/calibration-corpus.example.json +0 -0
  182. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/calibration-corpus.json +0 -0
  183. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/context-packs.example.json +0 -0
  184. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/base-audit.md +0 -0
  185. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/calibration-policy.md +0 -0
  186. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/context-driven-quality.md +0 -0
  187. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/docs-design.md +0 -0
  188. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/generic-programming.md +0 -0
  189. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/operability.md +0 -0
  190. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/package-runtime.md +0 -0
  191. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/lane_prompts/security-threat-model.md +0 -0
  192. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/product-support/code_mower +0 -0
  193. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/product-support/code_mower_standalone_pin.env +0 -0
  194. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/product-support/code_mower_standalone_shadow.sh +0 -0
  195. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/product-support/run_claude_audit_pr.sh +0 -0
  196. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/product-support/run_codex_audit_pr.sh +0 -0
  197. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/product-support/safe_gh_comment.py +0 -0
  198. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/reviewer-spend.example.json +0 -0
  199. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/reviewer-value-report.example.md +0 -0
  200. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/audit-label-cleanup.yml.j2 +0 -0
  201. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/hosted-bridge.yml.j2 +0 -0
  202. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/local-cli-audit.yml.j2 +0 -0
  203. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/private-standalone-shadow.yml.j2 +0 -0
  204. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/review-clear-stale.yml.j2 +0 -0
  205. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/saas-reviewer-labeler.yml.j2 +0 -0
  206. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/templates/workflows/trailer-comment-labeler.yml.j2 +0 -0
  207. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/trailer_comment_labeler.py +0 -0
  208. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower/versioning.py +0 -0
  209. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower.egg-info/dependency_links.txt +0 -0
  210. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower.egg-info/entry_points.txt +0 -0
  211. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/src/code_mower.egg-info/top_level.txt +0 -0
  212. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/builder-experiment.example.json +0 -0
  213. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/calibration-corpus.example.json +0 -0
  214. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/calibration-corpus.json +0 -0
  215. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/code-mower.yml.j2 +0 -0
  216. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/context-packs.example.json +0 -0
  217. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/cursor/BUGBOT.md +0 -0
  218. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/acp_bridge.yml +0 -0
  219. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/aider.yml +0 -0
  220. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/antigravity_cli.yml +0 -0
  221. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/claude_audit.yml +0 -0
  222. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/claude_review.yml +0 -0
  223. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/coderabbit_cli.yml +0 -0
  224. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/codex.yml +0 -0
  225. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/cursor_bugbot.yml +0 -0
  226. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/devin.yml +0 -0
  227. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/gemini_cli.yml +0 -0
  228. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/gitar.yml +0 -0
  229. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/greptile.yml +0 -0
  230. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/hermes_cli.yml +0 -0
  231. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/local_llm.yml +0 -0
  232. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/providers/qodo.yml +0 -0
  233. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/reviewer-spend.example.json +0 -0
  234. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/reviewer-value-report.example.md +0 -0
  235. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/audit-label-cleanup.yml.j2 +0 -0
  236. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/blind-review-artifacts-dry-run.yml.j2 +0 -0
  237. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/hosted-bridge.yml.j2 +0 -0
  238. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/local-cli-audit.yml.j2 +0 -0
  239. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/private-standalone-shadow.yml.j2 +0 -0
  240. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/review-clear-stale.yml.j2 +0 -0
  241. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/saas-reviewer-labeler.yml.j2 +0 -0
  242. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/templates/workflows/trailer-comment-labeler.yml.j2 +0 -0
  243. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_checks.py +0 -0
  244. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_claude_cli_bounce.py +0 -0
  245. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_clear_stale.py +0 -0
  246. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_cloud_git_metadata.py +0 -0
  247. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_cloud_manifest.py +0 -0
  248. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_cloud_reports.py +0 -0
  249. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_coderabbit_cli_audit_pr.py +0 -0
  250. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_actions_cost_summary.py +0 -0
  251. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_actions_failure_selection.py +0 -0
  252. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_boundaries.py +0 -0
  253. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_github_checks.py +0 -0
  254. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_output.py +0 -0
  255. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_privacy.py +0 -0
  256. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_provider_env_required.py +0 -0
  257. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_provider_env_tokens.py +0 -0
  258. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_provider_probe.py +0 -0
  259. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_doctor_registry.py +0 -0
  260. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_local_llm_github_helpers.py +0 -0
  261. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_comments.py +0 -0
  262. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_git.py +0 -0
  263. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_github_pr.py +0 -0
  264. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_pr_worktree.py +0 -0
  265. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_process.py +0 -0
  266. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_repo_paths.py +0 -0
  267. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_text_schema.py +0 -0
  268. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_provider_runners_workspace.py +0 -0
  269. {code_mower-0.5.0b11 → code_mower-0.5.0b13}/tests/test_reviewer_metrics_core.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code-mower
3
- Version: 0.5.0b11
3
+ Version: 0.5.0b13
4
4
  Summary: Multi-reviewer AI code audit orchestration
5
5
  License-Expression: Apache-2.0
6
6
  Requires-Python: >=3.11
@@ -8,6 +8,9 @@ Description-Content-Type: text/markdown
8
8
  License-File: LICENSE
9
9
  License-File: NOTICE
10
10
  Requires-Dist: PyYAML>=6.0
11
+ Provides-Extra: test
12
+ Requires-Dist: pytest>=8.0; extra == "test"
13
+ Requires-Dist: ruff>=0.8; extra == "test"
11
14
  Dynamic: license-file
12
15
 
13
16
  # Code Mower
@@ -98,11 +101,11 @@ Code Mower currently targets Python 3.11+; Python 3.12 is recommended.
98
101
 
99
102
  ```bash
100
103
  python3.12 --version
101
- pipx install --python python3.12 code-mower==0.5.0b11
104
+ pipx install --python python3.12 code-mower==0.5.0b13
102
105
  code-mower --version
103
106
  ```
104
107
 
105
- `0.5.0b11` is a beta release. Until Code Mower publishes a stable `1.0`
108
+ `0.5.0b13` is a beta release. Until Code Mower publishes a stable `1.0`
106
109
  line, use the explicit beta version above or allow prereleases with:
107
110
 
108
111
  ```bash
@@ -145,7 +148,7 @@ First-time command map: [docs/launch-command-surface.md](docs/launch-command-sur
145
148
 
146
149
  The current PyPI beta has been rehearsed end-to-end from a clean install:
147
150
  [First-User Install Rehearsal](docs/first-user-install-rehearsal.md) records
148
- the latest 10/10 public-package readiness proof for `code-mower==0.5.0b11`.
151
+ the latest 10/10 public-package readiness proof for `code-mower==0.5.0b13`.
149
152
 
150
153
  ## Why Not Just Run Codex Or Claude Yourself?
151
154
 
@@ -250,9 +253,9 @@ best?" to "which AI builder plus reviewer loop ships best on this product?" See
250
253
 
251
254
  ## Installation Status
252
255
 
253
- The current public beta is `v0.5.0-beta.11` from
256
+ The current public beta is `v0.5.0-beta.13` from
254
257
  [codemower-ai/code-mower](https://github.com/codemower-ai/code-mower), published
255
- as `code-mower==0.5.0b11` on [PyPI](https://pypi.org/project/code-mower/).
258
+ as `code-mower==0.5.0b13` on [PyPI](https://pypi.org/project/code-mower/).
256
259
  GitHub releases remain the auditable source for tags, build artifacts, and
257
260
  release notes.
258
261
 
@@ -261,7 +264,7 @@ For source checkout development and release rehearsal, use:
261
264
  ```bash
262
265
  scripts/dev-python
263
266
  scripts/dev-python -m venv .venv
264
- .venv/bin/python -m pip install -e . ruff
267
+ .venv/bin/python -m pip install -e ".[test]"
265
268
  ```
266
269
 
267
270
  The wrapper resolves Python 3.12+ and refuses stale or old system Python shims.
@@ -86,11 +86,11 @@ Code Mower currently targets Python 3.11+; Python 3.12 is recommended.
86
86
 
87
87
  ```bash
88
88
  python3.12 --version
89
- pipx install --python python3.12 code-mower==0.5.0b11
89
+ pipx install --python python3.12 code-mower==0.5.0b13
90
90
  code-mower --version
91
91
  ```
92
92
 
93
- `0.5.0b11` is a beta release. Until Code Mower publishes a stable `1.0`
93
+ `0.5.0b13` is a beta release. Until Code Mower publishes a stable `1.0`
94
94
  line, use the explicit beta version above or allow prereleases with:
95
95
 
96
96
  ```bash
@@ -133,7 +133,7 @@ First-time command map: [docs/launch-command-surface.md](docs/launch-command-sur
133
133
 
134
134
  The current PyPI beta has been rehearsed end-to-end from a clean install:
135
135
  [First-User Install Rehearsal](docs/first-user-install-rehearsal.md) records
136
- the latest 10/10 public-package readiness proof for `code-mower==0.5.0b11`.
136
+ the latest 10/10 public-package readiness proof for `code-mower==0.5.0b13`.
137
137
 
138
138
  ## Why Not Just Run Codex Or Claude Yourself?
139
139
 
@@ -238,9 +238,9 @@ best?" to "which AI builder plus reviewer loop ships best on this product?" See
238
238
 
239
239
  ## Installation Status
240
240
 
241
- The current public beta is `v0.5.0-beta.11` from
241
+ The current public beta is `v0.5.0-beta.13` from
242
242
  [codemower-ai/code-mower](https://github.com/codemower-ai/code-mower), published
243
- as `code-mower==0.5.0b11` on [PyPI](https://pypi.org/project/code-mower/).
243
+ as `code-mower==0.5.0b13` on [PyPI](https://pypi.org/project/code-mower/).
244
244
  GitHub releases remain the auditable source for tags, build artifacts, and
245
245
  release notes.
246
246
 
@@ -249,7 +249,7 @@ For source checkout development and release rehearsal, use:
249
249
  ```bash
250
250
  scripts/dev-python
251
251
  scripts/dev-python -m venv .venv
252
- .venv/bin/python -m pip install -e . ruff
252
+ .venv/bin/python -m pip install -e ".[test]"
253
253
  ```
254
254
 
255
255
  The wrapper resolves Python 3.12+ and refuses stale or old system Python shims.
@@ -4,13 +4,19 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "code-mower"
7
- version = "0.5.0b11"
7
+ version = "0.5.0b13"
8
8
  description = "Multi-reviewer AI code audit orchestration"
9
9
  requires-python = ">=3.11"
10
10
  readme = "README.md"
11
11
  license = "Apache-2.0"
12
12
  dependencies = ["PyYAML>=6.0"]
13
13
 
14
+ [project.optional-dependencies]
15
+ test = [
16
+ "pytest>=8.0",
17
+ "ruff>=0.8",
18
+ ]
19
+
14
20
  [project.scripts]
15
21
  code-mower = "code_mower.cli:main"
16
22
 
@@ -1,3 +1,3 @@
1
1
  """Code Mower package."""
2
2
 
3
- __version__ = "0.5.0b11"
3
+ __version__ = "0.5.0b13"
@@ -13,6 +13,11 @@ from .evidence import (
13
13
  USEFUL_EVIDENCE_DISPOSITIONS,
14
14
  )
15
15
  from .evidence_report import build_reviewer_evidence_report, render_evidence_text
16
+ from .effect_report import (
17
+ build_effect_report,
18
+ render_effect_report_text,
19
+ reviewer_dimensions,
20
+ )
16
21
  from .arms import DEFAULT_CLI_LANES, DEFAULT_LOCAL_LLM_PROFILES, default_arms
17
22
  from .commands import (
18
23
  command_lane_id,
@@ -94,7 +99,7 @@ from .truth import (
94
99
  normalize_truth_expectation,
95
100
  truth_for_item,
96
101
  )
97
- from .value_report import build_value_report, render_value_report_text
102
+ from .value_report import build_value_report, render_value_report_html, render_value_report_text
98
103
 
99
104
  __all__ = [
100
105
  "KNOWN_EVIDENCE_DISPOSITIONS",
@@ -121,6 +126,7 @@ __all__ = [
121
126
  "TRUTH_EXPECTATION_UNKNOWN",
122
127
  "USEFUL_EVIDENCE_DISPOSITIONS",
123
128
  "build_lane_policy_report",
129
+ "build_effect_report",
124
130
  "build_reviewer_evidence_report",
125
131
  "build_value_report",
126
132
  "build_pilot_plan",
@@ -158,12 +164,15 @@ __all__ = [
158
164
  "build_overlap_report",
159
165
  "render_overlap_text",
160
166
  "render_evidence_text",
167
+ "render_effect_report_text",
161
168
  "render_materialized_context_pack_prompt_text",
162
169
  "render_plan_text",
163
170
  "render_policy_text",
164
171
  "render_value_report_text",
172
+ "render_value_report_html",
165
173
  "run_records_from_summary",
166
174
  "run_matches_disposition_rule",
175
+ "reviewer_dimensions",
167
176
  "repo_path_for_item",
168
177
  "repo_roots_from_path_map",
169
178
  "result_command_dir",