teddy-cli 0.1.17.dev1408__tar.gz → 0.1.17.dev1409__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.dev1408 → teddy_cli-0.1.17.dev1409}/PKG-INFO +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/pyproject.toml +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/__main__.py +3 -5
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +7 -9
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/config_schema.py +4 -4
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/context_service.py +1 -1
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/infrastructure.py +4 -4
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/config.yaml +11 -8
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/.gitignore +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/LICENSE +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/README.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/container.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/change_set.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/plan.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/project_context.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/session.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/init.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_executor.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_factory.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/init_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/parser_metadata.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/parser_reporting.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/planning_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_planner.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_replanner.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/session_service.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/update_checker.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/diff.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/editor_names.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/interruptible_call.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/io.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/markdown.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/paths.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/serialization.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/session_notices.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/string.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/terminal.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/prompts.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/validators.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/MRP.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/init.context +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/prompts/architect.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/prompts/assistant.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/prompts/debugger.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/prompts/developer.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/prompts/pathfinder.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/config/prompts/prototyper.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/PROJECT.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/case-file.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/ci.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/component-design.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/makefile.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/milestone.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/pre-commit.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/specification-document.md +0 -0
- {teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/resources/templates/vertical-slice.md +0 -0
|
@@ -193,11 +193,9 @@ def _ensure_project_initialized(container, root_dir: str | None = None) -> None:
|
|
|
193
193
|
IRepoTreeGenerator,
|
|
194
194
|
factory=lambda: LocalRepoTreeGenerator(
|
|
195
195
|
root_dir=root,
|
|
196
|
-
max_depth=c.resolve(IConfigService).get_setting(
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
max_tree_width=c.resolve(IConfigService).get_setting(
|
|
200
|
-
"context.max_tree_width", 20
|
|
196
|
+
max_depth=c.resolve(IConfigService).get_setting("context.max_depth", 3),
|
|
197
|
+
max_children=c.resolve(IConfigService).get_setting(
|
|
198
|
+
"context.max_children", 20
|
|
201
199
|
),
|
|
202
200
|
),
|
|
203
201
|
scope=Scope.transient,
|
|
@@ -18,21 +18,19 @@ class LocalRepoTreeGenerator(IRepoTreeGenerator):
|
|
|
18
18
|
def __init__(
|
|
19
19
|
self,
|
|
20
20
|
root_dir: str = ".",
|
|
21
|
-
max_depth: int = DEFAULT_APP_CONFIG.context.
|
|
22
|
-
|
|
21
|
+
max_depth: int = DEFAULT_APP_CONFIG.context.max_depth,
|
|
22
|
+
max_children: int = DEFAULT_APP_CONFIG.context.max_children,
|
|
23
23
|
):
|
|
24
24
|
from teddy_executor.adapters.outbound.filesystem_helpers import (
|
|
25
25
|
load_ignore_spec,
|
|
26
26
|
)
|
|
27
27
|
|
|
28
28
|
assert max_depth >= 0, f"max_depth must be non-negative, got {max_depth}"
|
|
29
|
-
assert
|
|
30
|
-
f"max_tree_width must be positive, got {max_tree_width}"
|
|
31
|
-
)
|
|
29
|
+
assert max_children >= 1, f"max_children must be positive, got {max_children}"
|
|
32
30
|
self.root_dir = Path(root_dir).resolve()
|
|
33
31
|
self.ignore_spec = load_ignore_spec(self.root_dir)
|
|
34
32
|
self._max_depth = max_depth
|
|
35
|
-
self.
|
|
33
|
+
self._max_children = max_children
|
|
36
34
|
|
|
37
35
|
@property
|
|
38
36
|
def max_depth(self) -> int:
|
|
@@ -40,9 +38,9 @@ class LocalRepoTreeGenerator(IRepoTreeGenerator):
|
|
|
40
38
|
return self._max_depth
|
|
41
39
|
|
|
42
40
|
@property
|
|
43
|
-
def
|
|
41
|
+
def max_children(self) -> int:
|
|
44
42
|
"""The configured maximum visible entries per non-root directory."""
|
|
45
|
-
return self.
|
|
43
|
+
return self._max_children
|
|
46
44
|
|
|
47
45
|
def generate_tree(self) -> str:
|
|
48
46
|
"""
|
|
@@ -97,7 +95,7 @@ class LocalRepoTreeGenerator(IRepoTreeGenerator):
|
|
|
97
95
|
if entries is None:
|
|
98
96
|
return [UNREADABLE_MARKER]
|
|
99
97
|
|
|
100
|
-
if not is_root and len(entries) > self.
|
|
98
|
+
if not is_root and len(entries) > self._max_children:
|
|
101
99
|
return [self._compact_notice(entries)]
|
|
102
100
|
|
|
103
101
|
names: list[str] = []
|
|
@@ -44,8 +44,8 @@ class ReadConfig:
|
|
|
44
44
|
|
|
45
45
|
@dataclass(frozen=True)
|
|
46
46
|
class ContextConfig:
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
max_depth: int = 3
|
|
48
|
+
max_children: int = 20
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
@dataclass(frozen=True)
|
|
@@ -211,8 +211,8 @@ _SCHEMA_FIELDS: tuple[_FieldSpec, ...] = (
|
|
|
211
211
|
_FieldSpec("workspace.pre-commit", "workspace", "pre_commit", bool),
|
|
212
212
|
_FieldSpec("workspace.pull", "workspace", "pull", bool),
|
|
213
213
|
_FieldSpec("read.max_lines", "read", "max_lines", int, minimum=1),
|
|
214
|
-
_FieldSpec("context.
|
|
215
|
-
_FieldSpec("context.
|
|
214
|
+
_FieldSpec("context.max_depth", "context", "max_depth", int, minimum=0),
|
|
215
|
+
_FieldSpec("context.max_children", "context", "max_children", int, minimum=1),
|
|
216
216
|
_FieldSpec("research.max_results", "research", "max_results", int, minimum=1),
|
|
217
217
|
_FieldSpec("checks.prompts", "checks", "prompts", bool),
|
|
218
218
|
_FieldSpec("checks.templates", "checks", "templates", bool),
|
|
@@ -393,7 +393,7 @@ class ContextService(IGetContextUseCase):
|
|
|
393
393
|
"""State both tree limits once, so the compact notices stay meaningful."""
|
|
394
394
|
return (
|
|
395
395
|
f"*Tree capped at depth {self._repo_tree_generator.max_depth} "
|
|
396
|
-
f"and width {self._repo_tree_generator.
|
|
396
|
+
f"and width {self._repo_tree_generator.max_children}: "
|
|
397
397
|
"truncated directories show counts only.*"
|
|
398
398
|
)
|
|
399
399
|
|
|
@@ -147,11 +147,11 @@ def register_infrastructure(container: punq.Container) -> None:
|
|
|
147
147
|
IRepoTreeGenerator,
|
|
148
148
|
factory=lambda: LocalRepoTreeGenerator(
|
|
149
149
|
max_depth=container.resolve(IConfigService).get_setting(
|
|
150
|
-
"context.
|
|
150
|
+
"context.max_depth", DEFAULT_APP_CONFIG.context.max_depth
|
|
151
151
|
),
|
|
152
|
-
|
|
153
|
-
"context.
|
|
154
|
-
DEFAULT_APP_CONFIG.context.
|
|
152
|
+
max_children=container.resolve(IConfigService).get_setting(
|
|
153
|
+
"context.max_children",
|
|
154
|
+
DEFAULT_APP_CONFIG.context.max_children,
|
|
155
155
|
),
|
|
156
156
|
),
|
|
157
157
|
scope=punq.Scope.transient,
|
|
@@ -10,16 +10,16 @@ edit:
|
|
|
10
10
|
similarity_threshold: 0.95 # EDIT match threshold (1.0 = exact match; ignores relative indentation).
|
|
11
11
|
|
|
12
12
|
workspace:
|
|
13
|
-
init: true
|
|
14
|
-
pre-commit: true
|
|
15
|
-
pull: true
|
|
13
|
+
init: true # Initialize a missing Git repository (start and resume).
|
|
14
|
+
pre-commit: true # Install pre-commit and post-commit git hooks (start and resume).
|
|
15
|
+
pull: true # Fast-forward pull before starting a new session (start only).
|
|
16
16
|
|
|
17
17
|
read:
|
|
18
18
|
max_lines: 1000 # Caps READ action output lines.
|
|
19
19
|
|
|
20
20
|
context:
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
max_depth: 3 # Max project tree depth.
|
|
22
|
+
max_children: 20 # Max entries listed per directory.
|
|
23
23
|
|
|
24
24
|
research:
|
|
25
25
|
max_results: 5 # Number of search results to fetch and scrape.
|
|
@@ -40,15 +40,18 @@ guardrails: # Non-interactive limits (--yolo / --pipelin
|
|
|
40
40
|
auto_pruning:
|
|
41
41
|
enabled: true
|
|
42
42
|
turn_context_threshold: 50000 # Token budget for turn-scoped files only (excludes session.context & system prompts).
|
|
43
|
-
prune_failure_history: true
|
|
43
|
+
prune_failure_history: true # Prunes non-green turns once recovery succeeds.
|
|
44
44
|
prune_validation_failures: true # Prunes malformed turns that failed validation.
|
|
45
45
|
preserve_message_turns: true # Preserves user-communicating turns from pruning.
|
|
46
46
|
max_turns_retention: 10 # Max historical turns retained in turn context.
|
|
47
47
|
|
|
48
48
|
# LiteLLM reference: https://docs.litellm.ai/docs/completion/input (all keys under llm pass directly to litellm).
|
|
49
|
+
# OpenRouter syntax: "openrouter/<slug>" (:nitro=fastest, :floor=cheapest).
|
|
50
|
+
# ${TEDDY_LLM_API_KEY} resolves from .teddy/.env or shell environment.
|
|
51
|
+
|
|
49
52
|
llm:
|
|
50
|
-
model: "openrouter/~deepseek/deepseek-flash-latest:nitro"
|
|
51
|
-
api_key: "${TEDDY_LLM_API_KEY}"
|
|
53
|
+
model: "openrouter/~deepseek/deepseek-flash-latest:nitro"
|
|
54
|
+
api_key: "${TEDDY_LLM_API_KEY}"
|
|
52
55
|
max_retries: 3
|
|
53
56
|
timeout: 300
|
|
54
57
|
extra_headers:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/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.dev1408 → teddy_cli-0.1.17.dev1409}/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.dev1408 → teddy_cli-0.1.17.dev1409}/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.dev1408 → teddy_cli-0.1.17.dev1409}/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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/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
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/editor_names.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/markdown.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/paths.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/serialization.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/string.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/core/utils/terminal.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/__init__.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/reviewer.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/src/teddy_executor/registries/validators.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1408 → teddy_cli-0.1.17.dev1409}/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.dev1408 → teddy_cli-0.1.17.dev1409}/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
|
|
File without changes
|