teddy-cli 0.1.17.dev1233__tar.gz → 0.1.17.dev1235__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.dev1233 → teddy_cli-0.1.17.dev1235}/PKG-INFO +1 -1
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/pyproject.toml +1 -1
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/MRP.xml +1 -1
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/prompts/developer.xml +2 -2
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/prompts/prototyper.xml +1 -1
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/makefile.md +5 -5
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/.gitignore +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/LICENSE +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/__main__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/cli_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/cli_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/session_cli_handlers.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_app.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_editor.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_execution.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_logic.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_previews.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/inbound/textual_plan_reviewer_widgets.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/console_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/console_interactor_ask_loop.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/console_interactor_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/console_tooling.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/filesystem_helpers.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/litellm_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/local_file_system_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/local_repo_tree_generator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/openrouter_hydrator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/shell_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/shell_command_builder.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/suppressed_logging.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/system_environment_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/system_environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/system_time_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/terminal_quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/web_scraper_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/web_searcher_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/adapters/outbound/yaml_config_adapter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/container.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/action_ports.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/change_set.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/drift_report.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/exceptions.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/execution_report.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/orchestrator_ports.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/plan.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/planning_ports.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/project_context.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/report_assembly_data.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/session.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/shell_output.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/domain/models/web_search_results.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/get_context_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/init.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/plan_reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/planning_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/inbound/run_plan_use_case.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/config_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/environment_inspector.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/file_system_manager.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/llm_client.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/quit_key_listener.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/repo_tree_generator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/session_manager.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/shell_executor.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/system_environment.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/time_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/user_interactor.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/web_scraper.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/ports/outbound/web_searcher.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_changeset_builder.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_diff_manager.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_dispatcher.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_executor.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_factory.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_parser_complex.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/action_parser_strategies.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/context_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/edit_simulator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/execution_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/execution_report_assembler.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/init_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/markdown_plan_parser.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/markdown_report_formatter.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/parser_infrastructure.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/parser_metadata.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/parser_reporting.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/plan_validator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/planning_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/prompt_manager.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_lifecycle_manager.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_loop_guard.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_orchestrator.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_planner.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_pruning_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_replanner.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_repository.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/session_service.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/templates/execution_report.md.j2 +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/update_checker.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/edit.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/edit_matcher.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/edit_matcher_heuristics.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/execute.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/filesystem.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/helpers.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/services/validation_rules/message.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/diff.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/interrupt_guard.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/io.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/markdown.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/serialization.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/stdin_ownership.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/string.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/terminal.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/prompts.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/infrastructure.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/reviewer.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/validators.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/__init__.py +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/config.yaml +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/init.context +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/prompts/architect.xml +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/prompts/assistant.xml +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/prompts/debugger.xml +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/config/prompts/pathfinder.xml +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/ARCHITECTURE.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/PROJECT.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/case-file.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/ci.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/component-design.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/milestone.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/pre-commit.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/specification-document.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/resources/templates/task-brief.md +0 -0
- {teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1235"
|
|
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 @@ WIP & REMINDERS:
|
|
|
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
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
|
|
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. Triage any resulting `[DEBT]` per the 3-Tier Debt Triage policy — there is no `## Technical Debt` holding pen.
|
|
55
55
|
</rule>
|
|
56
56
|
|
|
57
57
|
<rule n="7" name="Standardized Plan Types">
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
Use `EXECUTE git grep`, `READ`, and `RESEARCH` to gather all necessary codebase context and prior agent artifacts required for a thorough plan audit. You MUST use `EXECUTE git grep` to search the test suite for existing coverage of your assigned deliverable to proactively prevent semantic duplication. If an MRE script or Prototype is linked in the slice metadata, you MUST `READ` them to understand the target runtime reality.
|
|
24
24
|
</step>
|
|
25
25
|
<step n="3" name="Plan Audit">
|
|
26
|
-
Audit the target components via `EXECUTE git grep`. You MUST ensure all deliverables maintain a
|
|
26
|
+
Audit the target components via `EXECUTE git grep`. You MUST ensure all deliverables maintain a Continuous Green State. If a deliverable attempts a breaking signature change to a Shared Seam (git grep > 1) without a corresponding migration plan, you MUST NOT execute it. Instead, immediately `EDIT` the slice to re-partition the work into a Non-Breaking Parallel Change (Expand -> Migrate -> Contract). You MUST also decompose any item touching >1 logical change into a prioritized list of smaller, atomic deliverables. If the slice contains Gherkin scenarios but lacks a `Wiring` deliverable as its final behavioral gate, you MUST immediately `EDIT` the slice to add it. You MUST also identify and `EDIT` the slice to clean up any formatting errors or inconsistencies discovered during your audit and ensure all Contract/Seam changes have matching Harness deliverables.
|
|
27
27
|
</step>
|
|
28
28
|
<step n="4" name="Plan Update (Contingency)">
|
|
29
29
|
If validation revealed necessary changes (decomposition, re-sorting, or abstraction), EDIT the slice and EXECUTE the VCP to version control the updated plan before starting to work on the first unresolved item.
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<goal>Verify workspace state, hand off versioned history, and conduct final user verification.</goal>
|
|
102
102
|
<step n="1" name="Teardown">Explicitly delete all temporary logs and workspace detritus in `spikes/` then run `git status` to verify.</step>
|
|
103
103
|
<step n="2" name="Consistency Check">If this is the last deliverable, execute `git grep` for deleted/renamed components and resolve stale hits in documentation/comments. If cross-deliverable logic duplication or structural friction is found across the slice, do NOT modify code ad-hoc during Delivery; instead, `EDIT` the slice to append an explicit `Refactor` or `Cleanup` deliverable and loop back to Phase 1 to resolve it.</step>
|
|
104
|
-
<step n="3" name="Version Control">Execute the commit following the VCP for the current deliverable in its own turn. Derive the `<scope>` for the commit message from the Vertical Slice's `Scope Slug` metadata field if present. The slice number (e.g., `MM-NN`) MUST NOT appear in source file names, test file names, or commit messages — use descriptive, functionality-based naming instead. If any quality gates or pre-commit checks fail, you MUST either: 1) Refactor the code/tests immediately to comply with the intention of the rule, or 2) Log the issue as technical debt in the active Vertical Slice and
|
|
104
|
+
<step n="3" name="Version Control">Execute the commit following the VCP for the current deliverable in its own turn. Derive the `<scope>` for the commit message from the Vertical Slice's `Scope Slug` metadata field if present. The slice number (e.g., `MM-NN`) MUST NOT appear in source file names, test file names, or commit messages — use descriptive, functionality-based naming instead. If any quality gates or pre-commit checks fail, you MUST either: 1) Refactor the code/tests immediately to comply with the intention of the rule, or 2) Log the issue as technical debt in the active Vertical Slice; the pre-commit stage is advisory and will not block the commit, but you MUST make a follow-up cleanup commit to resolve non-trivial quality issues before resuming feature work. Suppressing quality check rules via inline comments (e.g., `# noqa`, `# pylint: disable`) is strictly forbidden.</step>
|
|
105
105
|
<step n="4" name="Atomic Delivery">You are strictly forbidden from starting a new deliverable until the current one is version controlled. If the slice has remaining uncompleted deliverables, reset the State Dashboard and proceed to the next item's Orientation. If all deliverables are complete, proceed to the Verification step.</step>
|
|
106
106
|
<step n="5" name="Verification">Execute the slice's `## Verification` checklist across multiple real end-user scenarios via `EXECUTE` actions (running real entry points / CLI commands with various flags and inspecting real outputs/exit codes), or through spikes. For steps that genuinely require manual user interaction (e.g., UI changes), clearly describe what the user needs to verify and request their confirmation via Message.
|
|
107
107
|
- If all steps pass: `EDIT` the slice doc to set Status to `Completed` and all verification steps as done, mark the milestone deliverable as `[x]`, and execute the commit following the VCP. Then route the terminal handoff dynamically based on the active Milestone's state:
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
<step n="3" name="Update Specification Documents">`EDIT` the Specification Documents in `docs/project/specs/` to update them with all details and nuances discovered during prototyping. Ensure the specs accurately reflect the validated behavioral spec (scenarios, edge cases, verification) and implementation details.</step>
|
|
41
41
|
<step n="4" name="Refine Component Documentation">`EDIT` the draft `Component Design Docs` to reflect the validated reality of the prototype. Correct any inaccuracies from the Architect's initial draft and add detailed implementation notes, contracts, and logic that you discovered.</step>
|
|
42
42
|
<step n="5" name="Impact Audit & Consistency Check">
|
|
43
|
-
Use `EXECUTE git grep` on target components. If a component has >1 consumer (excluding its own definition), categorize it as a Shared Seam. You MUST decompose the plan into smaller, atomic deliverables if >1 consumer, layer, or logical change is affected. For Shared Seams, you MUST partition the plan into a
|
|
43
|
+
Use `EXECUTE git grep` on target components. If a component has >1 consumer (excluding its own definition), categorize it as a Shared Seam. You MUST decompose the plan into smaller, atomic deliverables if >1 consumer, layer, or logical change is affected. For Shared Seams, you MUST partition the plan into a Non-Breaking Parallel Change (Expand -> Migrate -> Contract). Ensure the plan follows the Dependency-Ordered Deliverables sequence. Resolve hits for deleted/renamed components in documentation and ensure all Contract/Seam changes have matching Harness deliverables.
|
|
44
44
|
</step>
|
|
45
45
|
<step n="6" name="Debt Triage">Triage any `[DEBT]` from your State Dashboard using the 3-Tier policy: (1) Micro / quick-wins (≤3 lines, file-local) — fix directly in-flight; (2) Slice-scoped refactoring — append an atomic `Refactor`/`Cleanup` deliverable to the Vertical Slice; (3) Structural / cross-cutting — report it to the user for scheduling as a Vertical Slice in a Milestone during handoff. There is no `## Technical Debt` holding pen.</step>
|
|
46
46
|
<step n="7" name="Link Reference Material">`EDIT` the `Vertical Slice`'s `Metadata` section to link the feature-specific prototype subfolder (e.g., `spikes/prototypes/{scope-slug}/`) in the `Prototype` field. Use a root-relative path, e.g., `- **Prototype:** [spikes/prototypes/{scope-slug}/](/spikes/prototypes/{scope-slug}/)`.</step>
|
|
@@ -92,7 +92,7 @@ test:
|
|
|
92
92
|
### Example
|
|
93
93
|
|
|
94
94
|
```makefile
|
|
95
|
-
commit: ARGS := $(
|
|
95
|
+
commit: ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
|
|
96
96
|
|
|
97
97
|
commit:
|
|
98
98
|
@[ -n "$(ARGS)" ] || { echo "Usage: make commit '<message>'"; exit 1; }
|
|
@@ -115,7 +115,7 @@ commit:
|
|
|
115
115
|
### Example
|
|
116
116
|
|
|
117
117
|
```makefile
|
|
118
|
-
probe: REASON := $(
|
|
118
|
+
probe: REASON := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
|
|
119
119
|
|
|
120
120
|
probe:
|
|
121
121
|
@[ -n "$(REASON)" ] || { echo "Usage: make probe '<reason>'"; exit 1; }
|
|
@@ -139,8 +139,8 @@ The Debugger's Reproduction phase needs to read the logs of a specific failed CI
|
|
|
139
139
|
### Example
|
|
140
140
|
|
|
141
141
|
```makefile
|
|
142
|
-
logs: LOGS_RUN := $(word
|
|
143
|
-
logs: LOGS_STEP := $(wordlist
|
|
142
|
+
logs: LOGS_RUN := $(word 2,$(MAKECMDGOALS))
|
|
143
|
+
logs: LOGS_STEP := $(wordlist 3,99,$(MAKECMDGOALS))
|
|
144
144
|
|
|
145
145
|
logs:
|
|
146
146
|
@[ -n "$(LOGS_RUN)" ] || { echo "Usage: make logs <run-id> '<step-name>'"; exit 1; }
|
|
@@ -155,7 +155,7 @@ logs:
|
|
|
155
155
|
- First discover the run ID and the failed step name with `gh run view 12345` (the execution tree), then pass both to `make logs`.
|
|
156
156
|
|
|
157
157
|
**How it works:**
|
|
158
|
-
- `$(
|
|
158
|
+
- `$(word 2,$(MAKECMDGOALS))` takes the run ID and `$(wordlist 3,99,$(MAKECMDGOALS))` takes the (space-containing) step name; the first goal (the `logs` target itself) is dropped.
|
|
159
159
|
- The `awk` program matches rows whose second tab-separated field equals the step name via `-v step=...`, trims the leading timestamp, strips ANSI escape sequences, and removes GitHub's group boilerplate, prefixing `##[error]` lines with `Error: `.
|
|
160
160
|
- It reuses the same cross-platform Make constructs as the other targets (see [Cross-Platform Design](#cross-platform-design)); the `%: @:` catch-all prevents the extra `make` goals from being treated as files.
|
|
161
161
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/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.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/markdown.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/serialization.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/string.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/core/utils/terminal.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/reviewer.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/src/teddy_executor/registries/validators.py
RENAMED
|
File without changes
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/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
|
{teddy_cli-0.1.17.dev1233 → teddy_cli-0.1.17.dev1235}/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
|