teddy-cli 0.1.17.dev1226__tar.gz → 0.1.17.dev1228__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.dev1226 → teddy_cli-0.1.17.dev1228}/PKG-INFO +1 -1
  2. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/pyproject.toml +1 -1
  3. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/MRP.xml +4 -4
  4. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/makefile.md +5 -5
  5. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/.gitignore +0 -0
  6. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/LICENSE +0 -0
  7. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/__init__.py +0 -0
  8. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/__main__.py +0 -0
  9. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/__init__.py +0 -0
  10. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
  11. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
  12. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
  13. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
  14. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
  15. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
  16. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
  17. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
  18. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
  19. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
  20. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
  21. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
  22. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
  23. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
  24. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
  25. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
  26. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
  27. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
  28. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
  29. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
  30. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +0 -0
  31. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
  32. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
  33. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
  34. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
  35. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
  36. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
  37. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
  38. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
  39. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
  40. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
  41. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
  42. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/container.py +0 -0
  43. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/__init__.py +0 -0
  44. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/__init__.py +0 -0
  45. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/__init__.py +0 -0
  46. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
  47. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/change_set.py +0 -0
  48. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
  49. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
  50. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
  51. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
  52. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/plan.py +0 -0
  53. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
  54. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/project_context.py +0 -0
  55. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
  56. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/session.py +0 -0
  57. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
  58. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
  59. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/__init__.py +0 -0
  60. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
  61. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
  62. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
  63. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/init.py +0 -0
  64. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
  65. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
  66. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
  67. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
  68. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
  69. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
  70. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
  71. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
  72. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
  73. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
  74. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
  75. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
  76. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
  77. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
  78. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +0 -0
  79. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
  80. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
  81. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
  82. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
  83. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
  84. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
  85. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
  86. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
  87. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
  88. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/__init__.py +0 -0
  89. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
  90. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
  91. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
  92. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_executor.py +0 -0
  93. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_factory.py +0 -0
  94. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
  95. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
  96. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/context_service.py +0 -0
  97. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/edit_simulator.py +0 -0
  98. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
  99. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
  100. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/init_service.py +0 -0
  101. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
  102. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
  103. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
  104. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/parser_metadata.py +0 -0
  105. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/parser_reporting.py +0 -0
  106. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/plan_validator.py +0 -0
  107. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/planning_service.py +0 -0
  108. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/prompt_manager.py +0 -0
  109. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
  110. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
  111. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
  112. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_planner.py +0 -0
  113. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
  114. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_replanner.py +0 -0
  115. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_repository.py +0 -0
  116. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/session_service.py +0 -0
  117. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
  118. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/update_checker.py +0 -0
  119. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
  120. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
  121. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
  122. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
  123. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
  124. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
  125. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
  126. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
  127. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/__init__.py +0 -0
  128. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/diff.py +0 -0
  129. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
  130. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/io.py +0 -0
  131. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/markdown.py +0 -0
  132. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/serialization.py +0 -0
  133. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
  134. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/string.py +0 -0
  135. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/core/utils/terminal.py +0 -0
  136. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/prompts.py +0 -0
  137. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/registries/__init__.py +0 -0
  138. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/registries/infrastructure.py +0 -0
  139. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/registries/reviewer.py +0 -0
  140. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/registries/validators.py +0 -0
  141. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/__init__.py +0 -0
  142. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/__init__.py +0 -0
  143. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/config.yaml +0 -0
  144. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/init.context +0 -0
  145. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/prompts/architect.xml +0 -0
  146. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/prompts/assistant.xml +0 -0
  147. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/prompts/debugger.xml +0 -0
  148. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/prompts/developer.xml +0 -0
  149. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/prompts/pathfinder.xml +0 -0
  150. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/config/prompts/prototyper.xml +0 -0
  151. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
  152. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/PROJECT.md +0 -0
  153. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/case-file.md +0 -0
  154. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/ci.md +0 -0
  155. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/component-design.md +0 -0
  156. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/milestone.md +0 -0
  157. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/pre-commit.md +0 -0
  158. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/specification-document.md +0 -0
  159. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/src/teddy_executor/resources/templates/task-brief.md +0 -0
  160. {teddy_cli-0.1.17.dev1226 → teddy_cli-0.1.17.dev1228}/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.dev1226
3
+ Version: 0.1.17.dev1228
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.dev1226"
3
+ version = "0.1.17.dev1228"
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" }
@@ -42,7 +42,7 @@ WIP & REMINDERS:
42
42
 
43
43
  <rule n="4" name="Path & Link Formatting">All paths MUST be root-relative. Use plain text in Rationale. Use Markdown links `[path](/path)` elsewhere.</rule>
44
44
 
45
- <rule n="5" name="Information Gathering Workflow">If you are missing information critical to your immediate goal, gather that information efficiently; do not get lost in non-essential exploration. Discover first via `EXECUTE` (`git grep`) or `RESEARCH` for external info. To remain pragmatic, you may chain multiple discovery actions. If using `RESEARCH`, you MUST follow up by `READ`-ing the target source URLs; do NOT rely on search snippets or metadata. If static reading leaves ambiguity about behavior, `CREATE` and `EXECUTE` a minimal diagnostic spike in `spikes/` to empirically validate assumptions.
45
+ <rule n="5" name="Information Gathering Workflow">If you are missing information critical to your immediate goal, gather that information efficiently; do not get lost in non-essential exploration. Discover first via `EXECUTE` (`git grep`) or `RESEARCH` for external info. To remain pragmatic, you may chain multiple discovery actions. If using `RESEARCH`, you MUST follow up by `READ`-ing the target source URLs; do NOT rely on search snippets or metadata. If `READ`-ing a remote URL fails or returns empty/unusable JavaScript shells, fall back to `EXECUTE curl -sL '<url>'`; if the page requires client-side JavaScript rendering, `CREATE` a minimal diagnostic probe script to inspect the raw data or underlying API. If static reading leaves ambiguity about behavior, `CREATE` and `EXECUTE` a minimal diagnostic spike in `spikes/` to empirically validate assumptions.
46
46
  For complex CLI tools, verify required flags via `EXECUTE [tool] --help` before running complex commands.
47
47
  </rule>
48
48
 
@@ -50,8 +50,8 @@ WIP & REMINDERS:
50
50
  The entire commit cycle (test, stage, commit, push) MUST occur in a dedicated Version Control turn.
51
51
  1. Pre-conditions: Clean up temporary files (spikes/, .tmp/). If unsure of changes, `EXECUTE git add . && git diff HEAD`.
52
52
  2. Commit Message: Use Conventional Commits '<type>(<scope>): <description>' wrapped in single quotes. Use imperative mood. Append ! for breaking changes.
53
- 3. Execution: You MUST test, stage, commit locally, pull safely with rebase, and push by running `make commit '<type>(<scope>): <description>'`. To bypass pre-commit checks (e.g., for known false positives), use `make commit '<type>(<scope>): <description>' no-verify`.
54
- 4. Post-conditions: All tests MUST pass (post-commit hook enforces this; never bypass). Pre-commit may be bypassed with --no-verify if needed to bypass non-trivial quality gate failures (like file length). If pre-commit is bypassed, you MUST make a follow-up cleanup commit that resolves the bypassed issues before resuming feature work, and log the debt in PROJECT.md if it cannot be resolved immediately.
53
+ 3. Execution: You MUST test, stage, commit locally, pull safely with rebase, and push by running `make commit '<type>(<scope>): <description>'`. There is no `no-verify` flag: the `make commit` target runs the pre-commit hooks once via `pre-commit run` (re-staging any auto-formatted files) and then commits with `git commit --no-verify`, which suppresses Git's own redundant second invocation of the pre-commit hook. The post-commit test gate is unaffected by this flag and always runs.
54
+ 4. Post-conditions: All tests MUST pass — the post-commit hook runs the full suite and reverts the commit on failure; this gate is unskippable and MUST NEVER be bypassed. The pre-commit stage is advisory (its failures do not block the local commit), but if it reported non-trivial quality-gate issues (e.g. file length), you MUST make a follow-up cleanup commit that resolves them before resuming feature work, and log the debt in PROJECT.md if it cannot be resolved immediately.
55
55
  </rule>
56
56
 
57
57
  <rule n="7" name="Standardized Plan Types">
@@ -87,7 +87,7 @@ WIP & REMINDERS:
87
87
  </rule>
88
88
 
89
89
  <rule n="13" name="Communication Hygiene">
90
- <description>Applies to all user-facing Messages and turn titles: (1) Do not repeat the same title across consecutive turns — each turn's title MUST reflect its distinct responsibility, and if you detect a vicious loop with no new progress you MUST transition to BLOCKED 🔴 rather than repeating yourself. (2) Do not restate content already delivered in a prior Message, and do not send a new Message until the work previously agreed in the last Message is complete — the only exception is entering BLOCKED 🔴. (3) Record important findings and constraints as `[!]` entries in the State Dashboard so they persist across turns. (4) End every Message with a concise TL;DR line summarizing the key point or the decision requested.</description>
90
+ <description>Applies to all user-facing Messages and turn titles: (1) Do not repeat the same title across consecutive turns — each turn's title MUST reflect its distinct responsibility, and if you detect a vicious loop with no new progress you MUST transition to BLOCKED 🔴 rather than repeating yourself. (2) Do not restate content already delivered in a prior Message, and do not send a new Message until the work previously agreed in the last Message is complete — the only exception is entering BLOCKED 🔴. (3) Record important findings and constraints as `[!]` entries in the State Dashboard so they persist across turns. (4) End every Message with a concise TL;DR line summarizing the key point or the decision requested. (5) Whenever the user sends a message, immediately log every user decision, constraint, or directive into the State Dashboard's `WIP & REMINDERS` as `[TODO]` (for tasks) or `[!]` (for constraints). You are strictly forbidden from sending another `## Message` until all such `[TODO]` items are marked `[✓]` (or unless you transition to BLOCKED 🔴). Never re-ask a question the user has already answered, and never restate decisions or explanations already delivered in prior messages.</description>
91
91
  </rule>
92
92
  </general_rules>
93
93
 
@@ -10,7 +10,6 @@ and the Debugger's Remote Probing Protocol (RPP). Below are concrete examples ad
10
10
  ### Commit
11
11
  ```shell
12
12
  make commit 'feat(templates): add PROJECT.md template'
13
- make commit 'fix(tests): resolve flaky assertion' no-verify
14
13
  ```
15
14
 
16
15
  **What is `.PHONY`?**
@@ -88,17 +87,19 @@ test:
88
87
 
89
88
  ## VCP Commit Workflow
90
89
 
90
+ `make commit` runs the pre-commit hooks once (via `pre-commit run`) and re-stages any auto-formatted files, then commits with `--no-verify` to suppress Git's own redundant second invocation of the pre-commit hook. This skips ONLY the pre-commit stage — the post-commit test gate (`.githooks/post-commit.py`) is a separate hook and remains fully active and unskippable.
91
+
91
92
  ### Example
92
93
 
93
94
  ```makefile
94
- commit: ARGS := $(filter-out no-verify,$(filter-out commit,$(MAKECMDGOALS)))
95
+ commit: ARGS := $(filter-out commit,$(MAKECMDGOALS))
95
96
 
96
97
  commit:
97
- @[ -n "$(ARGS)" ] || { echo "Usage: make commit '<message>' [no-verify]"; exit 1; }
98
+ @[ -n "$(ARGS)" ] || { echo "Usage: make commit '<message>'"; exit 1; }
98
99
  git add .
99
100
  -pre-commit run
100
101
  git add .
101
- git commit -m "$(ARGS)" $(if $(filter no-verify,$(MAKECMDGOALS)),--no-verify,)
102
+ git commit -m "$(ARGS)" --no-verify
102
103
  -git pull --rebase
103
104
  -git push
104
105
 
@@ -108,7 +109,6 @@ commit:
108
109
 
109
110
  **Usage:**
110
111
  - `make commit 'feat(templates): add PROJECT.md template'`
111
- - `make commit 'fix(tests): resolve flaky assertion' no-verify`
112
112
 
113
113
  ## Remote Probing Protocol (RPP)
114
114