teddy-cli 0.1.17.dev1277__tar.gz → 0.1.17.dev1278__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.
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/PKG-INFO +1 -1
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/pyproject.toml +1 -1
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/MRP.xml +1 -1
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/prompts/debugger.xml +1 -1
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/makefile.md +19 -12
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/.gitignore +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/LICENSE +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/__main__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/container.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/change_set.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/plan.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/project_context.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/session.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/init.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_executor.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_factory.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/context_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/init_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/parser_metadata.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/parser_reporting.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/planning_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_planner.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_replanner.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/session_service.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/update_checker.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/diff.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/io.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/markdown.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/paths.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/serialization.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/string.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/terminal.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/prompts.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/infrastructure.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/validators.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/config.yaml +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/init.context +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/prompts/architect.xml +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/prompts/assistant.xml +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/prompts/developer.xml +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/prompts/pathfinder.xml +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/config/prompts/prototyper.xml +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/PROJECT.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/case-file.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/ci.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/component-design.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/milestone.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/pre-commit.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/specification-document.md +0 -0
- {teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/vertical-slice.md +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "teddy-cli"
|
|
3
|
-
version = "0.1.17.
|
|
3
|
+
version = "0.1.17.dev1278"
|
|
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" }
|
|
@@ -51,7 +51,7 @@ NOTES:
|
|
|
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
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> '<step-name>'` for full logs.
|
|
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.
|
|
55
55
|
</rule>
|
|
56
56
|
|
|
57
57
|
<rule n="7" name="Standardized Plan Types">
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
<phase n="1" name="Reproduction">
|
|
10
10
|
<goal>Gather context and build or verify an end-to-end Minimal Reproducible Example (MRE).</goal>
|
|
11
11
|
<step n="1" name="Case File Check">If a Case File was not provided in the initial context, READ `docs/templates/case-file.md` and CREATE one following that template.</step>
|
|
12
|
-
<step n="2" name="Context and History Gathering">Use EXECUTE `git grep`, EXECUTE `git log`, READ, and RESEARCH to understand the codebase, recent changes, and identify the last known green CI run or commit. For historical CI failures, do not try to read the entire log
|
|
12
|
+
<step n="2" name="Context and History Gathering">Use EXECUTE `git grep`, EXECUTE `git log`, READ, and RESEARCH to understand the codebase, recent changes, and identify the last known green CI run or commit. For historical CI failures, do not try to read the entire log: extract failed step logs by executing `make logs [ID]` (for all failed steps) or `make logs [ID] '[STEP_NAME]'` (for a specific step).</step>
|
|
13
13
|
<step n="3" name="Diagnostic MRE and Platform Check">
|
|
14
14
|
Trigger the symptom: if an existing command, test, or CI failure exists, execute it to observe the failure live. If the bug is reported verbally or without an existing test, write a targeted probe script in `spikes/debug/{scope-slug}/` to trigger the symptom.
|
|
15
15
|
|
|
@@ -46,11 +46,12 @@ The Remote Probing Protocol requires a reason string because it is passed as the
|
|
|
46
46
|
|
|
47
47
|
### Logs
|
|
48
48
|
```shell
|
|
49
|
-
make logs 12345
|
|
49
|
+
make logs 12345 # extract logs for ALL failed steps
|
|
50
|
+
make logs 12345 'Run tests' # extract logs for a specific step (substring match)
|
|
50
51
|
```
|
|
51
52
|
|
|
52
|
-
**
|
|
53
|
-
The first argument is the GitHub Actions run ID (as shown by `gh run list`)
|
|
53
|
+
**How does `make logs` work?**
|
|
54
|
+
The first argument is the GitHub Actions run ID (as shown by `gh run list`). If invoked without a second argument, it extracts and formats logs for **all failed steps** using `gh run view --log-failed`. An optional second argument filters down to a specific step using substring matching, stripping ANSI escapes and GitHub boilerplate so you see the failure without noise. See [CI Log Extraction](#ci-log-extraction).
|
|
54
55
|
|
|
55
56
|
## Probe Script
|
|
56
57
|
|
|
@@ -204,7 +205,8 @@ ci-watch:
|
|
|
204
205
|
if [ -n "$$NEWSTEPS" ]; then \
|
|
205
206
|
echo "$$WF: failing step(s): $$NEWSTEPS (run $$NEW)"; \
|
|
206
207
|
gh run view "$$NEW" --log-failed 2>/dev/null | awk -F'\t' '{ l=$$3; p=index(l,"Z "); if(p>0)l=substr(l,p+2); gsub(/\x1B\[[0-9;]*[a-zA-Z]/,"",l); gsub(/\^\[\[[0-9;]*[a-zA-Z]/,"",l); if(l ~ /^##\[group\]/ || l ~ /^##\[endgroup\]/) next; gsub(/^##\[error\]/,"Error: ",l); print l }' | tail -n $(DETAIL_LINES) | sed 's/^/ /'; \
|
|
207
|
-
echo "
|
|
208
|
+
echo " view all failed logs: make logs $$NEW"; \
|
|
209
|
+
echo " view specific step: make logs $$NEW '<step-name>'"; \
|
|
208
210
|
fi; \
|
|
209
211
|
if [ "$$NEWCONC" != "failure" ]; then \
|
|
210
212
|
if [ -n "$$NEWFAIL" ]; then \
|
|
@@ -267,7 +269,7 @@ probe:
|
|
|
267
269
|
|
|
268
270
|
## CI Log Extraction
|
|
269
271
|
|
|
270
|
-
The Debugger's Reproduction phase needs to read
|
|
272
|
+
The Debugger's Reproduction phase needs to read CI logs without drowning in the full run output. The `make logs` target wraps the `gh run view` pipeline, strips ANSI escapes, and removes GitHub's `##[group]`/`##[endgroup]` boilerplate.
|
|
271
273
|
|
|
272
274
|
### Example
|
|
273
275
|
|
|
@@ -276,21 +278,26 @@ logs: LOGS_RUN := $(word 2,$(MAKECMDGOALS))
|
|
|
276
278
|
logs: LOGS_STEP := $(wordlist 3,99,$(MAKECMDGOALS))
|
|
277
279
|
|
|
278
280
|
logs:
|
|
279
|
-
@[ -n "$(LOGS_RUN)" ] || { echo "Usage: make logs <run-id> '<step-name>'"; exit 1; }
|
|
280
|
-
@
|
|
281
|
+
@[ -n "$(LOGS_RUN)" ] || { echo "Usage: make logs <run-id> ['<step-name>']"; exit 1; }
|
|
282
|
+
@if [ -z "$(LOGS_STEP)" ]; then \
|
|
283
|
+
gh run view "$(LOGS_RUN)" --log-failed 2>/dev/null | awk -F'\t' '{ if(j!=$$1||s!=$$2){j=$$1;s=$$2;print "\n["j" > "s"]"} l=$$3; p=index(l,"Z "); if(p>0)l=substr(l,p+2); gsub(/\x1B\[[0-9;]*[a-zA-Z]/,"",l); gsub(/\^\[\[[0-9;]*[a-zA-Z]/,"",l); if(l ~ /^##\[group\]Run /){k=1;next} if(k && l ~ /^##\[endgroup\]/){k=0;next} if(k)next; if(l ~ /^##\[group\]/ || l ~ /^##\[endgroup\]/)next; gsub(/^##\[error\]/,"Error: ",l); print l }'; \
|
|
284
|
+
else \
|
|
285
|
+
gh run view "$(LOGS_RUN)" --log 2>/dev/null | awk -F'\t' -v step="$(LOGS_STEP)" 'index($$2, step) > 0 { if(j!=$$1||s!=$$2){j=$$1;s=$$2;print "\n["j" > "s"]"} l=$$3; p=index(l,"Z "); if(p>0)l=substr(l,p+2); gsub(/\x1B\[[0-9;]*[a-zA-Z]/,"",l); gsub(/\^\[\[[0-9;]*[a-zA-Z]/,"",l); if(l ~ /^##\[group\]Run /){k=1;next} if(k && l ~ /^##\[endgroup\]/){k=0;next} if(k)next; if(l ~ /^##\[group\]/ || l ~ /^##\[endgroup\]/)next; gsub(/^##\[error\]/, "Error: ", l); print l }'; \
|
|
286
|
+
fi
|
|
281
287
|
|
|
282
288
|
%:
|
|
283
289
|
@:
|
|
284
290
|
```
|
|
285
291
|
|
|
286
292
|
**Usage:**
|
|
287
|
-
- `make logs 12345
|
|
288
|
-
-
|
|
293
|
+
- `make logs 12345` — extract logs for ALL failed steps from run `12345`.
|
|
294
|
+
- `make logs 12345 'Run tests'` — extract logs for a specific step (substring match) from run `12345`.
|
|
289
295
|
|
|
290
296
|
**How it works:**
|
|
291
|
-
- `$(word 2,$(MAKECMDGOALS))` takes the run ID and `$(wordlist 3,99,$(MAKECMDGOALS))`
|
|
292
|
-
-
|
|
293
|
-
-
|
|
297
|
+
- `$(word 2,$(MAKECMDGOALS))` takes the run ID and `$(wordlist 3,99,$(MAKECMDGOALS))` captures any optional step name.
|
|
298
|
+
- When no step name is provided, `gh run view --log-failed` is used so only failed steps are fetched and printed with `[job > step]` headers.
|
|
299
|
+
- When a step name is supplied, `index($2, step) > 0` performs substring matching against column 2.
|
|
300
|
+
- Timestamps and ANSI escapes are stripped, and `##[error]` lines are prefixed with `Error: `.
|
|
294
301
|
|
|
295
302
|
## Implementation Notes
|
|
296
303
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/adapters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/domain/models/plan.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/ports/inbound/init.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/services/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/markdown.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/paths.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/serialization.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/string.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/core/utils/terminal.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/reviewer.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/registries/validators.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1277 → teddy_cli-0.1.17.dev1278}/src/teddy_executor/resources/templates/ci.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|