atdd 0.2.7__tar.gz → 0.2.12__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 (191) hide show
  1. {atdd-0.2.7/src/atdd.egg-info → atdd-0.2.12}/PKG-INFO +10 -2
  2. {atdd-0.2.7 → atdd-0.2.12}/README.md +9 -1
  3. {atdd-0.2.7 → atdd-0.2.12}/pyproject.toml +1 -1
  4. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/gate.py +25 -0
  5. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/test_runner.py +2 -2
  6. {atdd-0.2.7 → atdd-0.2.12/src/atdd.egg-info}/PKG-INFO +10 -2
  7. {atdd-0.2.7 → atdd-0.2.12}/LICENSE +0 -0
  8. {atdd-0.2.7 → atdd-0.2.12}/setup.cfg +0 -0
  9. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/__init__.py +0 -0
  10. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/__main__.py +0 -0
  11. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/cli.py +0 -0
  12. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/__init__.py +0 -0
  13. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/__init__.py +0 -0
  14. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/add_persistence_metadata.py +0 -0
  15. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/analyze_migrations.py +0 -0
  16. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/consumers.py +0 -0
  17. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/infer_governance_status.py +0 -0
  18. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/initializer.py +0 -0
  19. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/interface.py +0 -0
  20. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/inventory.py +0 -0
  21. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/migration.py +0 -0
  22. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/registry.py +0 -0
  23. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/session.py +0 -0
  24. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/sync.py +0 -0
  25. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/test_interface.py +0 -0
  26. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/tests/__init__.py +0 -0
  27. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/tests/test_telemetry_array_validation.py +0 -0
  28. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/commands/traceability.py +0 -0
  29. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/conventions/session.convention.yaml +0 -0
  30. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/overlays/__init__.py +0 -0
  31. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/overlays/claude.md +0 -0
  32. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/schemas/config.schema.json +0 -0
  33. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/schemas/manifest.schema.json +0 -0
  34. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/templates/ATDD.md +0 -0
  35. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/templates/SESSION-TEMPLATE.md +0 -0
  36. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/utils/__init__.py +0 -0
  37. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/utils/graph/__init__.py +0 -0
  38. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/utils/graph/urn.py +0 -0
  39. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/__init__.py +0 -0
  40. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/shared_fixtures.py +0 -0
  41. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/test_enrich_wagon_registry.py +0 -0
  42. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/test_registry.py +0 -0
  43. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/test_session_validation.py +0 -0
  44. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/test_traceability.py +0 -0
  45. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/test_update_feature_paths.py +0 -0
  46. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coach/validators/test_validate_contract_consumers.py +0 -0
  47. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/__init__.py +0 -0
  48. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/adapter.recipe.yaml +0 -0
  49. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/backend.convention.yaml +0 -0
  50. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/boundaries.convention.yaml +0 -0
  51. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/commons.convention.yaml +0 -0
  52. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/complexity.recipe.yaml +0 -0
  53. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/component-naming.convention.yaml +0 -0
  54. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/design.convention.yaml +0 -0
  55. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/design.recipe.yaml +0 -0
  56. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/dto.convention.yaml +0 -0
  57. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/frontend.convention.yaml +0 -0
  58. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/green.convention.yaml +0 -0
  59. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/presentation.convention.yaml +0 -0
  60. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/refactor.convention.yaml +0 -0
  61. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/technology.convention.yaml +0 -0
  62. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/tests/__init__.py +0 -0
  63. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/tests/test_adapter_recipe.py +0 -0
  64. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/tests/test_complexity_recipe.py +0 -0
  65. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/tests/test_component_taxonomy.py +0 -0
  66. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/tests/test_component_urn_naming.py +0 -0
  67. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/tests/test_thinness_recipe.py +0 -0
  68. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/thinness.recipe.yaml +0 -0
  69. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/train.convention.yaml +0 -0
  70. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/conventions/verification.protocol.yaml +0 -0
  71. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/schemas/design_system.schema.json +0 -0
  72. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/__init__.py +0 -0
  73. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_commons_structure.py +0 -0
  74. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_complexity.py +0 -0
  75. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_cross_language_consistency.py +0 -0
  76. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_design_system_compliance.py +0 -0
  77. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_dto_testing_patterns.py +0 -0
  78. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_green_cross_stack_layers.py +0 -0
  79. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_green_layer_dependencies.py +0 -0
  80. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_green_python_layer_structure.py +0 -0
  81. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_green_supabase_layer_structure.py +0 -0
  82. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_import_boundaries.py +0 -0
  83. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_init_file_urns.py +0 -0
  84. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_preact_layer_boundaries.py +0 -0
  85. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_presentation_convention.py +0 -0
  86. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_python_architecture.py +0 -0
  87. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_quality_metrics.py +0 -0
  88. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_station_master_pattern.py +0 -0
  89. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_train_infrastructure.py +0 -0
  90. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_train_urns.py +0 -0
  91. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_typescript_architecture.py +0 -0
  92. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_usecase_structure.py +0 -0
  93. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/coder/validators/test_wagon_boundaries.py +0 -0
  94. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/conftest.py +0 -0
  95. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/__init__.py +0 -0
  96. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/acceptance.convention.yaml +0 -0
  97. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/appendix.convention.yaml +0 -0
  98. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/artifact-naming.convention.yaml +0 -0
  99. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/component.convention.yaml +0 -0
  100. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/criteria.convention.yaml +0 -0
  101. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/feature.convention.yaml +0 -0
  102. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/interface.convention.yaml +0 -0
  103. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/steps.convention.yaml +0 -0
  104. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/train.convention.yaml +0 -0
  105. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/wagon.convention.yaml +0 -0
  106. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/conventions/wmbt.convention.yaml +0 -0
  107. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/acceptance.schema.json +0 -0
  108. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/appendix.schema.json +0 -0
  109. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/component.schema.json +0 -0
  110. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/feature.schema.json +0 -0
  111. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/train.schema.json +0 -0
  112. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/wagon.schema.json +0 -0
  113. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/schemas/wmbt.schema.json +0 -0
  114. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/__init__.py +0 -0
  115. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/conftest.py +0 -0
  116. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_draft_wagon_registry.py +0 -0
  117. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_plan_cross_refs.py +0 -0
  118. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_plan_uniqueness.py +0 -0
  119. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_plan_urn_resolution.py +0 -0
  120. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_plan_wagons.py +0 -0
  121. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_train_validation.py +0 -0
  122. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_wagon_urn_chain.py +0 -0
  123. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_wmbt_consistency.py +0 -0
  124. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/planner/validators/test_wmbt_vocabulary.py +0 -0
  125. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/__init__.py +0 -0
  126. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/artifact.convention.yaml +0 -0
  127. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/contract.convention.yaml +0 -0
  128. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/filename.convention.yaml +0 -0
  129. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/migration.convention.yaml +0 -0
  130. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/red.convention.yaml +0 -0
  131. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/routing.convention.yaml +0 -0
  132. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/conventions/telemetry.convention.yaml +0 -0
  133. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/a11y.tmpl.json +0 -0
  134. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/artifact.schema.json +0 -0
  135. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/contract.schema.json +0 -0
  136. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/contract.tmpl.json +0 -0
  137. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/db.tmpl.json +0 -0
  138. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/e2e.tmpl.json +0 -0
  139. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/edge_function.tmpl.json +0 -0
  140. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/event.tmpl.json +0 -0
  141. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/http.tmpl.json +0 -0
  142. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/job.tmpl.json +0 -0
  143. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/load.tmpl.json +0 -0
  144. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/metric.tmpl.json +0 -0
  145. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/pack.schema.json +0 -0
  146. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/realtime.tmpl.json +0 -0
  147. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/rls.tmpl.json +0 -0
  148. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/script.tmpl.json +0 -0
  149. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/sec.tmpl.json +0 -0
  150. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/storage.tmpl.json +0 -0
  151. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/telemetry.schema.json +0 -0
  152. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/telemetry_tracking_manifest.schema.json +0 -0
  153. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/test_filename.schema.json +0 -0
  154. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/test_intent.schema.json +0 -0
  155. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/unit.tmpl.json +0 -0
  156. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/visual.tmpl.json +0 -0
  157. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/schemas/ws.tmpl.json +0 -0
  158. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/utils/__init__.py +0 -0
  159. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/utils/filename.py +0 -0
  160. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/__init__.py +0 -0
  161. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/cleanup_duplicate_headers.py +0 -0
  162. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/cleanup_duplicate_headers_v2.py +0 -0
  163. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/conftest.py +0 -0
  164. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/coverage_gap_report.py +0 -0
  165. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/fix_dual_ac_references.py +0 -0
  166. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/remove_duplicate_lines.py +0 -0
  167. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_acceptance_urn_filename_mapping.py +0 -0
  168. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_acceptance_urn_separator.py +0 -0
  169. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_artifact_naming_category.py +0 -0
  170. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_contract_schema_compliance.py +0 -0
  171. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_contracts_structure.py +0 -0
  172. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_coverage_adequacy.py +0 -0
  173. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_dual_ac_reference.py +0 -0
  174. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_fixture_validity.py +0 -0
  175. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_isolation.py +0 -0
  176. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_migration_coverage.py +0 -0
  177. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_migration_criteria.py +0 -0
  178. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_migration_generation.py +0 -0
  179. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_python_test_naming.py +0 -0
  180. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_red_layer_validation.py +0 -0
  181. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_red_python_layer_structure.py +0 -0
  182. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_red_supabase_layer_structure.py +0 -0
  183. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_telemetry_structure.py +0 -0
  184. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_typescript_test_naming.py +0 -0
  185. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/tester/validators/test_typescript_test_structure.py +0 -0
  186. {atdd-0.2.7 → atdd-0.2.12}/src/atdd/version_check.py +0 -0
  187. {atdd-0.2.7 → atdd-0.2.12}/src/atdd.egg-info/SOURCES.txt +0 -0
  188. {atdd-0.2.7 → atdd-0.2.12}/src/atdd.egg-info/dependency_links.txt +0 -0
  189. {atdd-0.2.7 → atdd-0.2.12}/src/atdd.egg-info/entry_points.txt +0 -0
  190. {atdd-0.2.7 → atdd-0.2.12}/src/atdd.egg-info/requires.txt +0 -0
  191. {atdd-0.2.7 → atdd-0.2.12}/src/atdd.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atdd
3
- Version: 0.2.7
3
+ Version: 0.2.12
4
4
  Summary: ATDD Platform - Acceptance Test Driven Development toolkit
5
5
  License: MIT
6
6
  Requires-Python: >=3.10
@@ -24,6 +24,12 @@ Acceptance Test Driven Development toolkit for structured planning and conventio
24
24
  pip install atdd
25
25
  ```
26
26
 
27
+ ### Upgrade
28
+
29
+ ```bash
30
+ pip install --upgrade atdd
31
+ ```
32
+
27
33
  ### For Development
28
34
 
29
35
  ```bash
@@ -48,7 +54,9 @@ atdd sync # Sync rules to agent config files
48
54
  atdd --test all # Run validators
49
55
  ```
50
56
 
51
- > **⚠️ `atdd gate` is required.** Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
57
+ > **⚠️ `atdd gate` is required.**
58
+ > 🤖 Tell your agent: "Run `atdd gate` and follow ATDD rigorously."
59
+ > Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
52
60
 
53
61
  ## What It Does
54
62
 
@@ -10,6 +10,12 @@ Acceptance Test Driven Development toolkit for structured planning and conventio
10
10
  pip install atdd
11
11
  ```
12
12
 
13
+ ### Upgrade
14
+
15
+ ```bash
16
+ pip install --upgrade atdd
17
+ ```
18
+
13
19
  ### For Development
14
20
 
15
21
  ```bash
@@ -34,7 +40,9 @@ atdd sync # Sync rules to agent config files
34
40
  atdd --test all # Run validators
35
41
  ```
36
42
 
37
- > **⚠️ `atdd gate` is required.** Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
43
+ > **⚠️ `atdd gate` is required.**
44
+ > 🤖 Tell your agent: "Run `atdd gate` and follow ATDD rigorously."
45
+ > Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
38
46
 
39
47
  ## What It Does
40
48
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "atdd"
7
- version = "0.2.7"
7
+ version = "0.2.12"
8
8
  description = "ATDD Platform - Acceptance Test Driven Development toolkit"
9
9
  requires-python = ">=3.10"
10
10
  readme = "README.md"
@@ -35,6 +35,19 @@ class ATDDGate:
35
35
  """
36
36
  self.target_dir = target_dir or Path.cwd()
37
37
  self.syncer = AgentConfigSync(self.target_dir)
38
+ self.package_root = Path(__file__).parent.parent # src/atdd/coach
39
+ self.session_convention = self.package_root / "conventions" / "session.convention.yaml"
40
+
41
+ def _load_session_convention(self) -> Optional[str]:
42
+ """
43
+ Load the session convention content.
44
+
45
+ Returns:
46
+ File content or None if missing.
47
+ """
48
+ if not self.session_convention.exists():
49
+ return None
50
+ return self.session_convention.read_text()
38
51
 
39
52
  def _compute_block_hash(self, content: str) -> Optional[str]:
40
53
  """
@@ -106,10 +119,13 @@ class ATDDGate:
106
119
  print("Run 'atdd init' to set up ATDD in this repo.")
107
120
  return 1
108
121
 
122
+ session_convention = self._load_session_convention()
123
+
109
124
  if json:
110
125
  output = {
111
126
  "files": files,
112
127
  "constraints": self.KEY_CONSTRAINTS,
128
+ "session_convention": session_convention,
113
129
  }
114
130
  print(json_module.dumps(output, indent=2))
115
131
  return 0
@@ -132,6 +148,15 @@ class ATDDGate:
132
148
  for i, constraint in enumerate(self.KEY_CONSTRAINTS, 1):
133
149
  print(f" {i}. {constraint}")
134
150
 
151
+ print("\n" + "=" * 60)
152
+ print("Session Convention")
153
+ print("=" * 60)
154
+
155
+ if session_convention is None:
156
+ print(f"Warning: session convention not found at {self.session_convention}")
157
+ else:
158
+ print(session_convention.rstrip())
159
+
135
160
  print("\n" + "-" * 60)
136
161
  print("Before starting work, confirm you have loaded these rules.")
137
162
  print("-" * 60)
@@ -88,11 +88,11 @@ class TestRunner:
88
88
  # Show collected tests summary
89
89
  cmd.append("--tb=short")
90
90
 
91
- # Run pytest
91
+ # Run pytest from current directory (consumer repo)
92
92
  print(f"🧪 Running: {' '.join(cmd)}")
93
93
  print("=" * 60)
94
94
 
95
- result = subprocess.run(cmd, cwd=self.repo_root)
95
+ result = subprocess.run(cmd)
96
96
  return result.returncode
97
97
 
98
98
  def run_phase(self, phase: str, **kwargs) -> int:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atdd
3
- Version: 0.2.7
3
+ Version: 0.2.12
4
4
  Summary: ATDD Platform - Acceptance Test Driven Development toolkit
5
5
  License: MIT
6
6
  Requires-Python: >=3.10
@@ -24,6 +24,12 @@ Acceptance Test Driven Development toolkit for structured planning and conventio
24
24
  pip install atdd
25
25
  ```
26
26
 
27
+ ### Upgrade
28
+
29
+ ```bash
30
+ pip install --upgrade atdd
31
+ ```
32
+
27
33
  ### For Development
28
34
 
29
35
  ```bash
@@ -48,7 +54,9 @@ atdd sync # Sync rules to agent config files
48
54
  atdd --test all # Run validators
49
55
  ```
50
56
 
51
- > **⚠️ `atdd gate` is required.** Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
57
+ > **⚠️ `atdd gate` is required.**
58
+ > 🤖 Tell your agent: "Run `atdd gate` and follow ATDD rigorously."
59
+ > Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
52
60
 
53
61
  ## What It Does
54
62
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes