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