teddy-cli 0.1.17.dev1283__tar.gz → 0.1.17.dev1284__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 (160) hide show
  1. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/PKG-INFO +1 -1
  2. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/pyproject.toml +1 -1
  3. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/MRP.xml +4 -4
  4. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/prompts/architect.xml +2 -2
  5. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/prompts/assistant.xml +2 -2
  6. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/prompts/debugger.xml +2 -2
  7. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/prompts/developer.xml +4 -4
  8. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/prompts/pathfinder.xml +3 -3
  9. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/prompts/prototyper.xml +3 -3
  10. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/PROJECT.md +4 -2
  11. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/makefile.md +4 -4
  12. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/pre-commit.md +1 -1
  13. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/vertical-slice.md +6 -6
  14. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/.gitignore +0 -0
  15. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/LICENSE +0 -0
  16. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/__init__.py +0 -0
  17. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/__main__.py +0 -0
  18. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/__init__.py +0 -0
  19. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
  20. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
  21. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
  22. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
  23. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
  24. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
  25. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
  26. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
  27. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
  28. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
  29. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
  30. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
  31. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
  32. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
  33. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
  34. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
  35. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
  36. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
  37. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
  38. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
  39. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +0 -0
  40. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
  41. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
  42. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
  43. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
  44. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
  45. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
  46. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
  47. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
  48. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
  49. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
  50. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
  51. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/container.py +0 -0
  52. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/__init__.py +0 -0
  53. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/__init__.py +0 -0
  54. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/__init__.py +0 -0
  55. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
  56. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/change_set.py +0 -0
  57. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
  58. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
  59. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
  60. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
  61. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/plan.py +0 -0
  62. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
  63. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/project_context.py +0 -0
  64. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
  65. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/session.py +0 -0
  66. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
  67. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
  68. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/__init__.py +0 -0
  69. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
  70. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
  71. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
  72. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/init.py +0 -0
  73. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
  74. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
  75. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
  76. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
  77. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
  78. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
  79. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
  80. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
  81. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
  82. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
  83. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
  84. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
  85. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
  86. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
  87. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +0 -0
  88. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
  89. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
  90. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
  91. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
  92. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
  93. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
  94. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
  95. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
  96. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
  97. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/__init__.py +0 -0
  98. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
  99. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
  100. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
  101. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_executor.py +0 -0
  102. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_factory.py +0 -0
  103. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
  104. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
  105. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/context_service.py +0 -0
  106. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/edit_simulator.py +0 -0
  107. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
  108. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
  109. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/init_service.py +0 -0
  110. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
  111. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
  112. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
  113. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/parser_metadata.py +0 -0
  114. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/parser_reporting.py +0 -0
  115. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/plan_validator.py +0 -0
  116. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/planning_service.py +0 -0
  117. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/prompt_manager.py +0 -0
  118. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
  119. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
  120. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
  121. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_planner.py +0 -0
  122. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
  123. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_replanner.py +0 -0
  124. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_repository.py +0 -0
  125. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/session_service.py +0 -0
  126. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
  127. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/update_checker.py +0 -0
  128. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
  129. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
  130. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
  131. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
  132. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
  133. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
  134. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
  135. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
  136. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/__init__.py +0 -0
  137. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/diff.py +0 -0
  138. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
  139. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/io.py +0 -0
  140. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/markdown.py +0 -0
  141. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/paths.py +0 -0
  142. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/serialization.py +0 -0
  143. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
  144. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/string.py +0 -0
  145. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/core/utils/terminal.py +0 -0
  146. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/prompts.py +0 -0
  147. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/registries/__init__.py +0 -0
  148. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/registries/infrastructure.py +0 -0
  149. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/registries/reviewer.py +0 -0
  150. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/registries/validators.py +0 -0
  151. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/__init__.py +0 -0
  152. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/__init__.py +0 -0
  153. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/config.yaml +0 -0
  154. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/config/init.context +0 -0
  155. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
  156. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/case-file.md +0 -0
  157. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/ci.md +0 -0
  158. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/component-design.md +0 -0
  159. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/milestone.md +0 -0
  160. {teddy_cli-0.1.17.dev1283 → teddy_cli-0.1.17.dev1284}/src/teddy_executor/resources/templates/specification-document.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: teddy-cli
3
- Version: 0.1.17.dev1283
3
+ Version: 0.1.17.dev1284
4
4
  Summary: A local-first, file-based AI coding workflow that applies the UNIX philosophy to AI collaboration.
5
5
  Author: Raphael Atteritano
6
6
  License: AGPL-3.0-only
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "teddy-cli"
3
- version = "0.1.17.dev1283"
3
+ version = "0.1.17.dev1284"
4
4
  description = "A local-first, file-based AI coding workflow that applies the UNIX philosophy to AI collaboration."
5
5
  authors = [{ name = "Raphael Atteritano" }]
6
6
  license = { text = "AGPL-3.0-only" }
@@ -44,14 +44,14 @@ NOTES:
44
44
 
45
45
  <rule n="5" name="Information Gathering Workflow">If you are missing information critical to your immediate goal, gather it efficiently without getting sidetracked; you may chain multiple discovery actions in one turn. Discover locally via `EXECUTE` (`git grep`) and externally via `RESEARCH`. Never rely on search snippets; always `READ` target URLs. For opaque sources (JavaScript-rendered pages, PDFs, binary formats) where `READ` fails or yields unusable content, `CREATE` and `EXECUTE` a minimal extraction script to inspect the raw data or API. If static reading leaves behavioral ambiguity, validate assumptions via a minimal spike in `spikes/`. Check flags with `[tool] --help` before running complex CLI commands.</rule>
46
46
 
47
- <rule n="6" name="Git Workflow">
47
+ <rule n="6" name="Version Control">
48
48
  The entire commit cycle (test, stage, commit) MUST occur in a dedicated Version Control turn. Pushing is deferred to the Conclusion phase.
49
- 1. Pre-conditions: Clean up temporary files. If unsure of changes, inspect via `EXECUTE git add . && git diff HEAD`.
49
+ 1. Pre-conditions: Clean up temporary files. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories. If unsure of changes, inspect via `EXECUTE git add . && git diff HEAD`.
50
50
  2. Commit Message: Use Conventional Commits `'<type>(<scope>): <description>'` in single quotes (imperative mood; append `!` for breaking changes) on a single line.
51
51
  3. Execution: Run `make commit '<type>(<scope>): <description>'`. This stages all local changes (`git add .`) and runs Git's local hooks before committing.
52
52
  4. Post-conditions: All tests MUST pass: the post-commit hook reverts automatically on failure and cannot be bypassed.
53
- 5. Push at Conclusion: In the Conclusion phase, run `make push` to rebase and push.
54
- 6. If needed: to verify remote CI run `make ci-watch` to monitor workflow runs and to inspect results: use `make logs <run-id>` (or `make logs <run-id> '<step-name>'`) for full logs.
53
+ 5. Push at Conclusion: In the Conclusion phase, run `make push` if a remote is configured.
54
+ 6. CI Monitoring: If remote CI is configured and a push occurred, run `make ci-watch` to monitor workflow runs and to inspect results: use `make logs <run-id>` (or `make logs <run-id> '<step-name>'`) for full logs.
55
55
  </rule>
56
56
 
57
57
  <rule n="7" name="Standardized Plan Types">
@@ -34,8 +34,8 @@
34
34
 
35
35
  <phase n="4" name="Conclusion">
36
36
  <goal>Clean up the workspace, commit changes, push, and hand off to the next agent.</goal>
37
- <step n="1" name="Cleanup">Delete temporary files, scratchpads, and diagnostic notes.</step>
38
- <step n="2" name="Commit and Push">Execute `make commit`, then run `make push`.</step>
37
+ <step n="1" name="Cleanup">Delete temporary files, scratchpads, and diagnostic notes. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories.</step>
38
+ <step n="2" name="Commit and Push">Execute `make commit`. If a remote is configured, run `make push`.</step>
39
39
  <step n="3" name="Handoff">Message the user with instructions to start the next session, including the new Vertical Slice as a reference file. Route to the Prototyper if the slice contains unresolved Key Unknowns; otherwise route directly to the Developer.</step>
40
40
  </phase>
41
41
  </workflow>
@@ -22,8 +22,8 @@
22
22
 
23
23
  <phase n="3" name="Conclusion">
24
24
  <goal>Clean up the workspace, commit changes, push, and conclude the assignment.</goal>
25
- <step n="1" name="Cleanup">Delete all local diagnostic scripts, temporary logs, and scratchpads.</step>
26
- <step n="2" name="Commit and Push">Run `make commit`, then run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
25
+ <step n="1" name="Cleanup">Delete all local diagnostic scripts, temporary logs, and scratchpads. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories.</step>
26
+ <step n="2" name="Commit and Push">Run `make commit`. If a remote is configured, run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
27
27
  <step n="3" name="Completion Notice">Message the user to confirm the assignment is complete.</step>
28
28
  </phase>
29
29
  </workflow>
@@ -66,8 +66,8 @@
66
66
 
67
67
  <phase n="4" name="Conclusion">
68
68
  <goal>Clean up the workspace, commit changes, push, and hand off to the Developer.</goal>
69
- <step n="1" name="Cleanup">Delete incidental temporary logs and throwaway probes. You must preserve the final MRE script and replica proof in `spikes/debug/{scope-slug}/` and link them from the Case File.</step>
70
- <step n="2" name="Commit and Push">Run `make commit` to commit the Case File, preserved MRE, and replica proof. Then run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
69
+ <step n="1" name="Cleanup">Delete incidental temporary logs and throwaway probes. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories. You must preserve the final MRE script and replica proof in `spikes/debug/{scope-slug}/` and link them from the Case File.</step>
70
+ <step n="2" name="Commit and Push">Run `make commit` to commit the Case File, preserved MRE, and replica proof. If a remote is configured, run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
71
71
  <step n="3" name="Handoff">Message the user with instructions to start a new session with the Developer to implement the fix, including the Case File as a reference file.</step>
72
72
  </phase>
73
73
  </workflow>
@@ -38,8 +38,8 @@
38
38
  </step>
39
39
  <step n="2" name="Green">
40
40
  Write the absolute minimal code to pass the test.
41
- If the current deliverable is Wiring, you MUST use hardcoded or trivial return values (the End-to-End Skeleton Wiring Tracer Bullet) to connect components end-to-end and force the Acceptance test Green. Do not implement complex business rules yet.
42
- If the current deliverable is Logic, use Unit Tests to drive out real business rules, replacing skeleton data with actual implementations.
41
+ If the current deliverable is Wiring, you MUST use hardcoded or trivial return values (the End-to-End Skeleton Wiring Tracer Bullet) to connect components across boundaries and force the Acceptance test Green. Do not implement complex business rules yet.
42
+ If the current deliverable is Logic, use Unit Tests to drive out real business rules, systematically swapping out skeleton responses and temporary fakes with real production logic while keeping acceptance tests green.
43
43
  Enforce Contract Enforcement (DbC): contracts require active runtime checks via native assertions (`assert condition, "Message"`). Do not use custom exceptions or raises for contract assertions so they can be optimized via `python -O`. State explicitly which contract condition failed.
44
44
  </step>
45
45
  <step n="3" name="Refactor">
@@ -90,7 +90,7 @@
90
90
 
91
91
  <phase n="5" name="Delivery">
92
92
  <goal>Clean workspace and commit the individual deliverable.</goal>
93
- <step n="1" name="Cleanup">Delete all temporary logs and scratchpad files.</step>
93
+ <step n="1" name="Cleanup">Delete all temporary logs and scratchpad files. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories.</step>
94
94
  <step n="2" name="Version Control">Run `make commit` using the Vertical Slice Scope Slug for `<scope>` if present.</step>
95
95
  <step n="3" name="Deliverable Gate">You are strictly forbidden from starting a new deliverable until the current one is committed. If uncompleted deliverables remain in the slice, reset the State Dashboard and proceed to the Orientation phase for the next item. If all deliverables are complete, proceed to the Verification phase.</step>
96
96
  </phase>
@@ -111,7 +111,7 @@
111
111
 
112
112
  <phase n="7" name="Conclusion">
113
113
  <goal>Finalize remote synchronization and dynamically route the next session handoff.</goal>
114
- <step n="1" name="Remote Sync">Run `make push` to push commits, then run `make ci-watch` to monitor and inspect remote CI results. If blocking test failures occur, fix them immediately, commit, and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
114
+ <step n="1" name="Remote Sync">If a remote is configured, run `make push`. If remote CI is configured, run `make ci-watch` to monitor and inspect remote CI results. If blocking test failures occur, fix them immediately, commit, and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
115
115
  <step n="2" name="Handoff">Message the user to route the next session based on milestone state: the Architect if the next slice is un-designed, the Prototyper if it has unresolved Key Unknowns, the Developer if ready to implement, or the Pathfinder if all milestone slices are complete.</step>
116
116
  </phase>
117
117
  </workflow>
@@ -16,7 +16,7 @@
16
16
  <goal>Explore codebase reality and de-risk technical feasibility.</goal>
17
17
  <step n="1" name="Context Exploration">Use EXECUTE `git grep`, READ, and RESEARCH across existing code, specs in `docs/project/specs/`, and existing milestones to map dependencies and blast radius.</step>
18
18
  <step n="2" name="Feasibility Check">If system feasibility or external behavior is uncertain, CREATE minimal probes in `spikes/` and EXECUTE them to validate assumptions before specifying requirements.</step>
19
- <step n="3" name="Greenfield Baseline">If the project lacks testing infrastructure, CI, or git hooks, record Milestone 0 (Project Bootstrapping) in the Roadmap following `docs/templates/PROJECT.md`.</step>
19
+ <step n="3" name="Greenfield Baseline">If the project lacks an established packaging and environment baseline, RESEARCH current idiomatic standards for the target language and runtime before defining packaging, boilerplate, and tooling deliverables. Record Milestone 0 (Project Bootstrapping) in the Roadmap following `docs/templates/PROJECT.md`.</step>
20
20
  </phase>
21
21
 
22
22
  <phase n="3" name="Documentation">
@@ -36,8 +36,8 @@
36
36
 
37
37
  <phase n="5" name="Conclusion">
38
38
  <goal>Clean up workspace, commit changes, push, and execute handoff.</goal>
39
- <step n="1" name="Cleanup">Delete throwaway probes, temporary logs, and scratchpads.</step>
40
- <step n="2" name="Commit and Push">Run `make commit`, then run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
39
+ <step n="1" name="Cleanup">Delete throwaway probes, temporary logs, and scratchpads. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories.</step>
40
+ <step n="2" name="Commit and Push">Run `make commit`. If a remote is configured, run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
41
41
  <step n="3" name="Handoff">If all deliverables were non-behavioral and completed directly, emit a terminal summary to the user. Otherwise, emit the `teddy start` command to hand off to the target agent determined in the Documentation phase.</step>
42
42
  </phase>
43
43
  </workflow>
@@ -8,7 +8,7 @@
8
8
  <workflow>
9
9
  <phase n="1" name="Triage">
10
10
  <goal>Assess the problem space, catalog unknowns, and verify interface integration feasibility.</goal>
11
- <step n="1" name="Exploration and Triage">READ the assigned Vertical Slice and linked Component Design Docs. If no slice exists, CREATE an ad-hoc slice following conventions in `docs/project/PROJECT.md`. Identify code boundaries and populate the Key Unknowns section using the 3-tier taxonomy: Domain for business or policy decisions requiring user clarification, Technical for architecture, performance, or dependency risks resolved via assertion probes, and Functional for behavior or user experience choices resolved via interactive runners with adjustable knobs. Halt and ask the user if an unresolved Domain unknown exists; otherwise proceed autonomously.</step>
11
+ <step n="1" name="Exploration and Triage">READ the assigned Vertical Slice and linked Component Design Docs. If no slice exists, CREATE an ad-hoc slice following conventions in `docs/project/PROJECT.md`. Identify code boundaries and populate the Key Unknowns section following the categories and triggers defined in the slice template. Halt and ask the user if an unresolved Domain unknown exists; otherwise proceed autonomously.</step>
12
12
  <step n="2" name="Integration Feasibility">Inspect constructor signatures and system interfaces required for integration using READ and EXECUTE `git grep`. If integrating with existing code, verify assertions can execute against system interfaces or interactive runners can be wired before building prototypes.</step>
13
13
  </phase>
14
14
 
@@ -32,8 +32,8 @@
32
32
 
33
33
  <phase n="5" name="Conclusion">
34
34
  <goal>Clean workspace, commit changes, push, and hand off to the Developer.</goal>
35
- <step n="1" name="Cleanup">Delete scratch files and unapproved probes, preserving only the approved prototype directory under `spikes/prototypes/{scope-slug}/`.</step>
36
- <step n="2" name="Commit and Push">Run `make commit`, then run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
35
+ <step n="1" name="Cleanup">Delete scratch files and unapproved probes, preserving only the approved prototype directory under `spikes/prototypes/{scope-slug}/`. If recurring script, test, or tool detritus appears, do not just delete it manually: update `.gitignore` or configure the script to write outside tracked directories.</step>
36
+ <step n="2" name="Commit and Push">Run `make commit`. If a remote is configured, run `make push`. If blocking test failures occur, fix them immediately and push again. For non-blocking quality gate issues, address them if contained or record them in the roadmap in `docs/project/PROJECT.md`.</step>
37
37
  <step n="3" name="Handoff">Message the user with a concise summary of the validated slice and component docs, providing the Developer handoff command with the finalized Vertical Slice and prototype folder as reference files.</step>
38
38
  </phase>
39
39
  </workflow>
@@ -24,7 +24,7 @@ Defines the high-level artifact lifecycle and conventions for project management
24
24
  - **Milestone 0 (bootstrapping) & Ad-hoc work (not tied to a milestone):** `00-NN-name.md` — `00` is used as the Milestone prefix for Milestone 0 bootstrapping slices and for ad-hoc slices. Ad-hoc slices are NOT tracked in Milestone documents or the Roadmap.
25
25
  - **Archiving Policy:** When and how completed artifacts are archived or deleted.
26
26
  - **Spec Organization:** Specification documents live in a single flat directory `docs/project/specs/` and are reserved strictly for **permanent system invariants** — formats, contracts, protocols (e.g. the MRP), core data models, and non-negotiable architectural rules. Feature goals, requirements, and acceptance criteria belong in Milestone documents (`docs/project/milestones/`), not in specs.
27
- - **Build & Run Commands:** Document the standard commands in the project `Makefile` (see [docs/templates/makefile.md](docs/templates/makefile.md)). At minimum: `make test` (full suite), `make commit '<msg>'` (VCP), `make push`, `make ci-watch` (CI monitoring), and `make probe '<reason>'` (Remote Probing Protocol).
27
+ - **Build & Run Commands:** Document the standard commands in the project `Makefile` (see [docs/templates/makefile.md](docs/templates/makefile.md)). At minimum: `make test` (full suite), `make commit '<msg>'`, `make push`, `make ci-watch` (CI monitoring), and `make probe '<reason>'` (Remote Probing Protocol).
28
28
  - **Release Process:** Document how releases are cut. At minimum: (1) **Triage** the scope (patch/minor/major) from conventional commits since the last tag; (2) write **release notes** to `docs/project/releases/v<version>.md`; (3) bump the `version` field in the project manifest; (4) present the notes and version bump at an **approval gate**; (5) **commit** (`chore(release): bump version to <version>`) and **tag** (`git tag -a v<version>`); and (6) **publish** (e.g. create a GitHub Release). Adapt the concrete commands to the project's packaging and distribution channel.
29
29
 
30
30
  ## Templates
@@ -40,7 +40,7 @@ Before creating or modifying any documentation artifact, agents MUST read the co
40
40
  | `case-file.md` | Debugger case files |
41
41
  | `PROJECT.md` | This project dashboard |
42
42
  | `ARCHITECTURE.md` | System architecture document |
43
- | `makefile.md` | Makefile (VCP commit + Remote Probing Protocol commands) |
43
+ | `makefile.md` | Makefile (commit + Remote Probing Protocol commands) |
44
44
  | `ci.md` | CI workflow template (debug workflow for the Remote Probing Protocol) |
45
45
  | `pre-commit.md` | Pre-commit framework setup (pre-commit + post-commit test gate) |
46
46
 
@@ -67,6 +67,8 @@ A living list of upcoming Milestones and their high-level features.
67
67
  - **Core Goal:** Establish foundational infrastructure for testing, quality gates, and automated delivery.
68
68
  - **Specs:** N/A — Milestone 0 is self-defining.
69
69
  - **Requirements:**
70
+ - **Language & Runtime Standards:** Set up packaging, dependency management, and project boilerplate using current idiomatic standards for the target language and runtime.
71
+ - **Project Readme:** Create a minimal `README.md` focused strictly on the end-user entry point: product overview, prerequisites, and installation/usage instructions.
70
72
  - **Testing & Tooling Entry Points:** Configure the test runner (`pytest`) exposed via `make test`, along with standard `Makefile` targets (`make commit`, `make push`, `make ci-watch`, `make probe`). Configure project `.gitignore` keeping `spikes/` tracked.
71
73
  - **Local Quality Gates:** Install Pre-commit with fast local hooks (formatters, secret detection, merge conflict checks) and the unskippable post-commit test gate (`.githooks/post-commit.py`) that runs `make test` and reverts on failure.
72
74
  - **CI/CD & Remote Diagnostics:** Set up parallel GitHub Actions jobs: 1) Blocking OS matrix test suite. 2) Non-blocking quality checks. Configure `.github/workflows/debug.yml` for the Remote Probing Protocol.
@@ -2,7 +2,7 @@
2
2
 
3
3
  > **⚠️ This is an example template.** Adapt the runner, test commands, and tool-specific details (e.g., `uv run pytest`, pre-commit hook list) to match your project's actual setup. The concrete examples shown may not work verbatim in all environments.
4
4
 
5
- This template defines the standard commands for the VCP (Version Control Protocol) commit workflow
5
+ This template defines the standard commands for the commit workflow
6
6
  and the Debugger's Remote Probing Protocol (RPP). Below are concrete examples adapted for the TeDDy project.
7
7
 
8
8
  ## Usage
@@ -99,7 +99,7 @@ test:
99
99
 
100
100
  **Usage:** `make test`
101
101
 
102
- ## VCP Commit Workflow
102
+ ## Commit Workflow
103
103
 
104
104
  `make commit` is **local-only**: it stages all local changes, runs the pre-commit hooks once (an advisory auto-fix pass that re-stages any auto-formatted files), and commits. It does **not** pull or push — the push is deferred to the session Conclusion via `make push` (see [Push (Deferred to Conclusion)](#push-deferred-to-conclusion)).
105
105
 
@@ -137,7 +137,7 @@ commit:
137
137
 
138
138
  ## Push (Deferred to Conclusion)
139
139
 
140
- `make push` is fast and non-blocking: it runs `git pull --rebase` and pushes local commits to remote.
140
+ `make push` is fast and non-blocking: it runs `git pull --rebase` and pushes local commits to remote. Only include and configure this target if a remote is configured or planned for the project.
141
141
 
142
142
  ### Example
143
143
 
@@ -151,7 +151,7 @@ push:
151
151
 
152
152
  ## CI Watch & Attribution
153
153
 
154
- `make ci-watch` discovers **every** CI run for the target commit (`HEAD` by default, or `COMMIT=<sha>`), waits for and reports each workflow with its jobs. It answers ONE question: **did this commit turn a BLOCKING gate red?**
154
+ `make ci-watch` discovers **every** CI run for the target commit (`HEAD` by default, or `COMMIT=<sha>`), waits for and reports each workflow with its jobs. It answers ONE question: **did this commit turn a BLOCKING gate red?** Only include and configure this target if a remote CI pipeline is configured or planned for the project.
155
155
 
156
156
  The pushed RUN's own conclusion is authoritative: it already folds in `continue-on-error`, so a **non-blocking** job (e.g. the CI `Quality Checks` job) can NEVER block the session — it is reported as a triage item instead. Only when the run-level conclusion is `failure` does attribution run, comparing the pushed run's failing-JOB set against the base run's:
157
157
 
@@ -156,5 +156,5 @@ The **post-commit test gate is never bypassable**. Treat a pre-commit bypass as
156
156
 
157
157
  ## Reference
158
158
  - [ARCHITECTURE.md Template](./ARCHITECTURE.md) — pre-commit + post-commit conventions.
159
- - [Makefile Template](./makefile.md) — `make test` and the VCP commit workflow.
159
+ - [Makefile Template](./makefile.md) — `make test` and the commit workflow.
160
160
  - [Pre-commit documentation](https://pre-commit.com/)
@@ -25,11 +25,11 @@ Then [expected outcome]
25
25
 
26
26
  **Taxonomy:**
27
27
  - `[Domain]` = Ambiguities in business rules, policy decisions, domain definitions, or scope boundaries. Resolve by asking the user directly.
28
- - `[Technical]` = External dependencies, third-party libraries, APIs, runtime performance, concurrency, or data-storage feasibility. Resolve via automated assertion probes in `spikes/`.
29
- - `[Functional]` = User-facing ergonomics, CLI flags, terminal rendering, interactive flows, or layout aesthetic. Resolve via interactive scenario runners in `spikes/`.
28
+ - `[Technical]` = External dependencies, third-party libraries, APIs, internal state machines, complex algorithms, concurrency, performance, or data storage. Resolve via works-like prototypes.
29
+ - `[Functional]` = User-facing ergonomics, CLI flags, terminal rendering, interactive flows, or layout aesthetics. Resolve via looks-like prototypes.
30
30
 
31
- **Mandatory De-risking Triggers:**
32
- 1. Log any new or modified integration with an external system, library, API, storage layer, or performance constraint as `[Technical]`.
31
+ **Mandatory De-risking Triggers (must include, but are not limited to):**
32
+ 1. Log any new or modified integration with an external system, library, API, or storage layer as `[Technical]`.
33
33
  2. Log any new or modified user interaction, CLI flags, terminal formatting, or interactive UX flow as `[Functional]`.
34
34
  3. Log any business rule, policy, or scope ambiguity as `[Domain]`.
35
35
 
@@ -49,10 +49,10 @@ Surface of affected components classified by the Parallel Change model:
49
49
 
50
50
  **Types:**
51
51
  - **Env:** Declarative tooling, build files, CI workflows, hooks, or config templates.
52
- - **Wiring:** Outermost boundary tracer bullet returning skeleton/fake data.
52
+ - **Wiring:** Outermost boundary tracer bullet returning skeleton/fake data to connect layers end-to-end.
53
53
  - **Contract:** Signatures, ports, interfaces, DTOs, domain models.
54
54
  - **Harness:** Modifying or extending shared test infrastructure (Drivers, Observers, Fakes, Setup fixtures).
55
- - **Logic:** Core domain logic and business rules driven by unit tests.
55
+ - **Logic:** Core domain logic and business rules driven by unit tests, systematically replacing skeleton returns and temporary fakes with real implementations.
56
56
  - **Migration:** Adapting existing consumers to new contracts.
57
57
  - **Refactor:** Improving code design without altering behavior (DRY, SRP, extracting helpers).
58
58
  - **Cleanup:** Removing deprecated methods, dead code, and temporary shims.