atdd 0.2.7__tar.gz → 0.2.9__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.9}/PKG-INFO +8 -2
  2. {atdd-0.2.7 → atdd-0.2.9}/README.md +7 -1
  3. {atdd-0.2.7 → atdd-0.2.9}/pyproject.toml +1 -1
  4. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/gate.py +25 -0
  5. {atdd-0.2.7 → atdd-0.2.9/src/atdd.egg-info}/PKG-INFO +8 -2
  6. {atdd-0.2.7 → atdd-0.2.9}/LICENSE +0 -0
  7. {atdd-0.2.7 → atdd-0.2.9}/setup.cfg +0 -0
  8. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/__init__.py +0 -0
  9. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/__main__.py +0 -0
  10. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/cli.py +0 -0
  11. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/__init__.py +0 -0
  12. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/__init__.py +0 -0
  13. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/add_persistence_metadata.py +0 -0
  14. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/analyze_migrations.py +0 -0
  15. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/consumers.py +0 -0
  16. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/infer_governance_status.py +0 -0
  17. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/initializer.py +0 -0
  18. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/interface.py +0 -0
  19. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/inventory.py +0 -0
  20. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/migration.py +0 -0
  21. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/registry.py +0 -0
  22. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/session.py +0 -0
  23. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/sync.py +0 -0
  24. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/test_interface.py +0 -0
  25. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/test_runner.py +0 -0
  26. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/tests/__init__.py +0 -0
  27. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/tests/test_telemetry_array_validation.py +0 -0
  28. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/commands/traceability.py +0 -0
  29. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/conventions/session.convention.yaml +0 -0
  30. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/overlays/__init__.py +0 -0
  31. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/overlays/claude.md +0 -0
  32. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/schemas/config.schema.json +0 -0
  33. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/schemas/manifest.schema.json +0 -0
  34. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/templates/ATDD.md +0 -0
  35. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/templates/SESSION-TEMPLATE.md +0 -0
  36. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/utils/__init__.py +0 -0
  37. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/utils/graph/__init__.py +0 -0
  38. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/utils/graph/urn.py +0 -0
  39. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/__init__.py +0 -0
  40. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/shared_fixtures.py +0 -0
  41. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/test_enrich_wagon_registry.py +0 -0
  42. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/test_registry.py +0 -0
  43. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/test_session_validation.py +0 -0
  44. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/test_traceability.py +0 -0
  45. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/test_update_feature_paths.py +0 -0
  46. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coach/validators/test_validate_contract_consumers.py +0 -0
  47. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/__init__.py +0 -0
  48. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/adapter.recipe.yaml +0 -0
  49. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/backend.convention.yaml +0 -0
  50. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/boundaries.convention.yaml +0 -0
  51. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/commons.convention.yaml +0 -0
  52. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/complexity.recipe.yaml +0 -0
  53. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/component-naming.convention.yaml +0 -0
  54. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/design.convention.yaml +0 -0
  55. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/design.recipe.yaml +0 -0
  56. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/dto.convention.yaml +0 -0
  57. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/frontend.convention.yaml +0 -0
  58. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/green.convention.yaml +0 -0
  59. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/presentation.convention.yaml +0 -0
  60. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/refactor.convention.yaml +0 -0
  61. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/technology.convention.yaml +0 -0
  62. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/tests/__init__.py +0 -0
  63. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/tests/test_adapter_recipe.py +0 -0
  64. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/tests/test_complexity_recipe.py +0 -0
  65. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/tests/test_component_taxonomy.py +0 -0
  66. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/tests/test_component_urn_naming.py +0 -0
  67. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/tests/test_thinness_recipe.py +0 -0
  68. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/thinness.recipe.yaml +0 -0
  69. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/train.convention.yaml +0 -0
  70. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/conventions/verification.protocol.yaml +0 -0
  71. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/schemas/design_system.schema.json +0 -0
  72. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/__init__.py +0 -0
  73. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_commons_structure.py +0 -0
  74. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_complexity.py +0 -0
  75. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_cross_language_consistency.py +0 -0
  76. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_design_system_compliance.py +0 -0
  77. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_dto_testing_patterns.py +0 -0
  78. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_green_cross_stack_layers.py +0 -0
  79. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_green_layer_dependencies.py +0 -0
  80. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_green_python_layer_structure.py +0 -0
  81. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_green_supabase_layer_structure.py +0 -0
  82. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_import_boundaries.py +0 -0
  83. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_init_file_urns.py +0 -0
  84. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_preact_layer_boundaries.py +0 -0
  85. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_presentation_convention.py +0 -0
  86. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_python_architecture.py +0 -0
  87. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_quality_metrics.py +0 -0
  88. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_station_master_pattern.py +0 -0
  89. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_train_infrastructure.py +0 -0
  90. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_train_urns.py +0 -0
  91. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_typescript_architecture.py +0 -0
  92. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_usecase_structure.py +0 -0
  93. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/coder/validators/test_wagon_boundaries.py +0 -0
  94. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/conftest.py +0 -0
  95. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/__init__.py +0 -0
  96. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/acceptance.convention.yaml +0 -0
  97. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/appendix.convention.yaml +0 -0
  98. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/artifact-naming.convention.yaml +0 -0
  99. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/component.convention.yaml +0 -0
  100. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/criteria.convention.yaml +0 -0
  101. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/feature.convention.yaml +0 -0
  102. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/interface.convention.yaml +0 -0
  103. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/steps.convention.yaml +0 -0
  104. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/train.convention.yaml +0 -0
  105. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/wagon.convention.yaml +0 -0
  106. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/conventions/wmbt.convention.yaml +0 -0
  107. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/acceptance.schema.json +0 -0
  108. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/appendix.schema.json +0 -0
  109. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/component.schema.json +0 -0
  110. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/feature.schema.json +0 -0
  111. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/train.schema.json +0 -0
  112. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/wagon.schema.json +0 -0
  113. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/schemas/wmbt.schema.json +0 -0
  114. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/__init__.py +0 -0
  115. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/conftest.py +0 -0
  116. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_draft_wagon_registry.py +0 -0
  117. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_plan_cross_refs.py +0 -0
  118. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_plan_uniqueness.py +0 -0
  119. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_plan_urn_resolution.py +0 -0
  120. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_plan_wagons.py +0 -0
  121. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_train_validation.py +0 -0
  122. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_wagon_urn_chain.py +0 -0
  123. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_wmbt_consistency.py +0 -0
  124. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/planner/validators/test_wmbt_vocabulary.py +0 -0
  125. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/__init__.py +0 -0
  126. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/artifact.convention.yaml +0 -0
  127. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/contract.convention.yaml +0 -0
  128. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/filename.convention.yaml +0 -0
  129. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/migration.convention.yaml +0 -0
  130. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/red.convention.yaml +0 -0
  131. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/routing.convention.yaml +0 -0
  132. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/conventions/telemetry.convention.yaml +0 -0
  133. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/a11y.tmpl.json +0 -0
  134. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/artifact.schema.json +0 -0
  135. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/contract.schema.json +0 -0
  136. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/contract.tmpl.json +0 -0
  137. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/db.tmpl.json +0 -0
  138. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/e2e.tmpl.json +0 -0
  139. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/edge_function.tmpl.json +0 -0
  140. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/event.tmpl.json +0 -0
  141. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/http.tmpl.json +0 -0
  142. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/job.tmpl.json +0 -0
  143. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/load.tmpl.json +0 -0
  144. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/metric.tmpl.json +0 -0
  145. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/pack.schema.json +0 -0
  146. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/realtime.tmpl.json +0 -0
  147. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/rls.tmpl.json +0 -0
  148. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/script.tmpl.json +0 -0
  149. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/sec.tmpl.json +0 -0
  150. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/storage.tmpl.json +0 -0
  151. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/telemetry.schema.json +0 -0
  152. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/telemetry_tracking_manifest.schema.json +0 -0
  153. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/test_filename.schema.json +0 -0
  154. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/test_intent.schema.json +0 -0
  155. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/unit.tmpl.json +0 -0
  156. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/visual.tmpl.json +0 -0
  157. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/schemas/ws.tmpl.json +0 -0
  158. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/utils/__init__.py +0 -0
  159. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/utils/filename.py +0 -0
  160. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/__init__.py +0 -0
  161. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/cleanup_duplicate_headers.py +0 -0
  162. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/cleanup_duplicate_headers_v2.py +0 -0
  163. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/conftest.py +0 -0
  164. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/coverage_gap_report.py +0 -0
  165. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/fix_dual_ac_references.py +0 -0
  166. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/remove_duplicate_lines.py +0 -0
  167. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_acceptance_urn_filename_mapping.py +0 -0
  168. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_acceptance_urn_separator.py +0 -0
  169. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_artifact_naming_category.py +0 -0
  170. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_contract_schema_compliance.py +0 -0
  171. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_contracts_structure.py +0 -0
  172. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_coverage_adequacy.py +0 -0
  173. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_dual_ac_reference.py +0 -0
  174. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_fixture_validity.py +0 -0
  175. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_isolation.py +0 -0
  176. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_migration_coverage.py +0 -0
  177. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_migration_criteria.py +0 -0
  178. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_migration_generation.py +0 -0
  179. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_python_test_naming.py +0 -0
  180. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_red_layer_validation.py +0 -0
  181. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_red_python_layer_structure.py +0 -0
  182. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_red_supabase_layer_structure.py +0 -0
  183. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_telemetry_structure.py +0 -0
  184. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_typescript_test_naming.py +0 -0
  185. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/tester/validators/test_typescript_test_structure.py +0 -0
  186. {atdd-0.2.7 → atdd-0.2.9}/src/atdd/version_check.py +0 -0
  187. {atdd-0.2.7 → atdd-0.2.9}/src/atdd.egg-info/SOURCES.txt +0 -0
  188. {atdd-0.2.7 → atdd-0.2.9}/src/atdd.egg-info/dependency_links.txt +0 -0
  189. {atdd-0.2.7 → atdd-0.2.9}/src/atdd.egg-info/entry_points.txt +0 -0
  190. {atdd-0.2.7 → atdd-0.2.9}/src/atdd.egg-info/requires.txt +0 -0
  191. {atdd-0.2.7 → atdd-0.2.9}/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.9
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,7 @@ 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.** Tell agents: "Run `atdd gate` and follow it rigorously." Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
52
58
 
53
59
  ## What It Does
54
60
 
@@ -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,7 @@ 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.** Tell agents: "Run `atdd gate` and follow it rigorously." Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
38
44
 
39
45
  ## What It Does
40
46
 
@@ -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.9"
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)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atdd
3
- Version: 0.2.7
3
+ Version: 0.2.9
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,7 @@ 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.** Tell agents: "Run `atdd gate` and follow it rigorously." Agents skip instruction files but can't ignore tool output. No gate = no ATDD guarantees.
52
58
 
53
59
  ## What It Does
54
60
 
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
File without changes