teddy-cli 0.1.17.dev1336__tar.gz → 0.1.17.dev1338__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 (162) hide show
  1. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/PKG-INFO +1 -1
  2. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/pyproject.toml +1 -1
  3. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/MRP.md +1 -1
  4. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/makefile.md +6 -2
  5. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/.gitignore +0 -0
  6. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/LICENSE +0 -0
  7. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/README.md +0 -0
  8. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/__init__.py +0 -0
  9. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/__main__.py +0 -0
  10. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/__init__.py +0 -0
  11. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
  12. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
  13. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
  14. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
  15. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
  16. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
  17. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
  18. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
  19. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
  20. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
  21. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
  22. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
  23. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
  24. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
  25. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
  26. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
  27. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
  28. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
  29. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
  30. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
  31. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +0 -0
  32. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
  33. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
  34. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
  35. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
  36. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
  37. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
  38. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
  39. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
  40. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
  41. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
  42. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
  43. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/container.py +0 -0
  44. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/__init__.py +0 -0
  45. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/__init__.py +0 -0
  46. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/__init__.py +0 -0
  47. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
  48. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/change_set.py +0 -0
  49. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
  50. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
  51. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
  52. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
  53. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/plan.py +0 -0
  54. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
  55. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/project_context.py +0 -0
  56. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
  57. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/session.py +0 -0
  58. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
  59. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
  60. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/__init__.py +0 -0
  61. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
  62. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
  63. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
  64. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/init.py +0 -0
  65. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
  66. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
  67. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
  68. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
  69. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
  70. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
  71. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
  72. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
  73. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
  74. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
  75. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
  76. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
  77. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
  78. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
  79. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +0 -0
  80. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
  81. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
  82. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
  83. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
  84. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
  85. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
  86. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
  87. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
  88. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
  89. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/__init__.py +0 -0
  90. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
  91. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
  92. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
  93. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_executor.py +0 -0
  94. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_factory.py +0 -0
  95. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
  96. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
  97. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/context_service.py +0 -0
  98. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/edit_simulator.py +0 -0
  99. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
  100. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
  101. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/init_service.py +0 -0
  102. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
  103. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
  104. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
  105. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/parser_metadata.py +0 -0
  106. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/parser_reporting.py +0 -0
  107. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/plan_validator.py +0 -0
  108. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/planning_service.py +0 -0
  109. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/prompt_manager.py +0 -0
  110. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
  111. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
  112. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
  113. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_planner.py +0 -0
  114. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
  115. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_replanner.py +0 -0
  116. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_repository.py +0 -0
  117. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/session_service.py +0 -0
  118. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
  119. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/update_checker.py +0 -0
  120. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
  121. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
  122. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
  123. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
  124. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
  125. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
  126. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
  127. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
  128. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/__init__.py +0 -0
  129. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/diff.py +0 -0
  130. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
  131. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/io.py +0 -0
  132. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/markdown.py +0 -0
  133. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/paths.py +0 -0
  134. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/serialization.py +0 -0
  135. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/session_notices.py +0 -0
  136. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
  137. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/string.py +0 -0
  138. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/core/utils/terminal.py +0 -0
  139. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/prompts.py +0 -0
  140. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/registries/__init__.py +0 -0
  141. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/registries/infrastructure.py +0 -0
  142. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/registries/reviewer.py +0 -0
  143. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/registries/validators.py +0 -0
  144. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/__init__.py +0 -0
  145. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/__init__.py +0 -0
  146. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/config.yaml +0 -0
  147. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/init.context +0 -0
  148. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/prompts/architect.md +0 -0
  149. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/prompts/assistant.md +0 -0
  150. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/prompts/debugger.md +0 -0
  151. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/prompts/developer.md +0 -0
  152. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/prompts/pathfinder.md +0 -0
  153. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/config/prompts/prototyper.md +0 -0
  154. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
  155. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/PROJECT.md +0 -0
  156. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/case-file.md +0 -0
  157. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/ci.md +0 -0
  158. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/component-design.md +0 -0
  159. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/milestone.md +0 -0
  160. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/pre-commit.md +0 -0
  161. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/specification-document.md +0 -0
  162. {teddy_cli-0.1.17.dev1336 → teddy_cli-0.1.17.dev1338}/src/teddy_executor/resources/templates/vertical-slice.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: teddy-cli
3
- Version: 0.1.17.dev1336
3
+ Version: 0.1.17.dev1338
4
4
  Summary: The local-first, test-driven agentic engineering harness. Because you should own the means of development.
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.dev1336"
3
+ version = "0.1.17.dev1338"
4
4
  description = "The local-first, test-driven agentic engineering harness. Because you should own the means of development."
5
5
  readme = "README.md"
6
6
  keywords = [
@@ -126,7 +126,7 @@ Prefer config-level bypasses (pyproject `per-file-ignores`, pre-commit `exclude`
126
126
 
127
127
  ### Code and Naming Hygiene
128
128
 
129
- Write semantic, self-documenting code where naming and structure make what the code does immediately obvious. Reserve comments exclusively for why (business rationale, non-obvious invariants, constraints, or algorithmic trade-offs); never repeat what code already states. Write comments as full, natural sentences without artificial line-breaking or column wrapping. When editing existing code, update or improve confusing comments rather than leaving stale text. Never cite internal documentation filenames, section headers, rule numbers, or workflow steps in code comments, action descriptions, or turn titles. Name files, functions, and tests after the domain concept, scenario, or behavior under test.
129
+ Write semantic, self-documenting code where naming and structure make what the code does immediately obvious. Reserve comments exclusively for why (business rationale, non-obvious invariants, constraints, or algorithmic trade-offs); never repeat what code already states. Write comments as full, natural sentences without artificial line-breaking or column wrapping. When editing existing code, update or improve confusing comments rather than leaving stale text. Never cite internal documentation filenames, section headers, rule numbers, or workflow steps in code comments, action descriptions, or turn titles. Name files, functions, and tests after the domain concept, scenario, or behavior under test. Never embed incident, ticket, or bug numbers in file, function, class, or test names.
130
130
 
131
131
  ## Response Format
132
132
 
@@ -174,6 +174,7 @@ Key behaviors:
174
174
  1. **Automatic SHA and BASE resolution.** `SHA` defaults to current `HEAD` (or `COMMIT=<sha>`), and `BASE` resolves per workflow to the most recent ancestor of `SHA` that carries a run for that workflow (bounded by `BASE_DEPTH`, default 50). An explicit `BASE=<sha>` pins the baseline verbatim and skips resolution; if the pinned commit carries no run for the workflow, the target fails safe as an unknown base.
175
175
  2. **Registration lag is tolerated by a bounded retry.** CI can fail to register a run for the pushed SHA immediately. The target polls `gh run list --commit <sha>` up to `RETRY_POLLS × RETRY_SLEEP` (default 10 × 2s ≈ 20s) before attributing. It fails safe if the run never registers.
176
176
  3. **No CI is non-blocking.** If the repository has no workflow files under `.github/workflows/` (`*.yml`/`*.yaml`), the target logs `No CI configured - skipping attribution` and exits 0.
177
+ 4. **Workflow names with spaces stay whole.** The target reads workflow names one line at a time. A name such as `Publish to PyPI` is attributed as one workflow.
177
178
 
178
179
  ### Example
179
180
 
@@ -202,7 +203,10 @@ ci-watch:
202
203
  echo "CI: no run registered for $$SHA after $$(( $(RETRY_POLLS) * $(RETRY_SLEEP) ))s - fail-safe block"; \
203
204
  exit 1; \
204
205
  fi; \
205
- for WF in $$WFS; do \
206
+ WFLIST=$${TMPDIR:-/tmp}/ci-watch-workflows.$$$$; \
207
+ trap 'rm -f "$$WFLIST"' EXIT; \
208
+ printf '%s\n' "$$WFS" > "$$WFLIST"; \
209
+ while IFS= read -r WF; do \
206
210
  NEW=$$(gh run list --commit "$$SHA" --workflow "$$WF" --json databaseId --jq '.[0].databaseId'); \
207
211
  gh run watch "$$NEW" --exit-status >/dev/null 2>&1 || true; \
208
212
  NEWCONC=$$(gh run view "$$NEW" --json conclusion --jq '.conclusion'); \
@@ -257,7 +261,7 @@ ci-watch:
257
261
  echo "$$WF: BLOCKING failure ($$NEWFAIL) — YOUR regression"; \
258
262
  STATUS=1; \
259
263
  fi; \
260
- done; \
264
+ done < "$$WFLIST"; \
261
265
  exit $$STATUS
262
266
  ```
263
267