thothctl 0.14.2__tar.gz → 0.14.3__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.
- {thothctl-0.14.2 → thothctl-0.14.3}/PKG-INFO +1 -1
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/CHANGELOG.md +9 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/inventory_iac.md +46 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/inventory_service.py +15 -6
- thothctl-0.14.3/src/thothctl/version.py +2 -0
- thothctl-0.14.2/src/thothctl/version.py +0 -2
- {thothctl-0.14.2 → thothctl-0.14.3}/.devcontainer/Dockerfile +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/.devcontainer/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/.devcontainer/devcontainer.json +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/.github/workflows/python-publish.yml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/.gitignore +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/.pre-commit-config.yaml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/.readthedocs.yaml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/AWS_PRICING_API_FINAL_REPORT.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/AWS_PRICING_API_IMPLEMENTATION_PLAN.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/AWS_PRICING_REFACTOR_REPORT.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/Dockerfile +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/LICENSE +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/TECHNICAL_DEBT_METRICS.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/catalog/catalog-info.yaml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/dashboard/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/ai-review/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/ai-review/agentcore.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/blast-radius.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/check_environment.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/check_iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/check_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/check_project_iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/check_space.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/cost-analysis-quick-reference.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/cost-analysis.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/deps-advanced.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/deps.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/drift-detection.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/plan.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/document/document_iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/document/document_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/document/iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/document/use_cases.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/generate/generate_components.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/generate/generate_stacks.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/init/init.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/init/init_space.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/frameworks/terraform.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/frameworks/terragrunt.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/inventory_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/list/list_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/list/list_projects.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/list/list_spaces.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/mcp/mcp.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/project/iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/project/project_cleanup.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/project/project_convert.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/project/project_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/project/project_upgrade.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/project/use_cases.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/remove/remove_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/remove/remove_project.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/remove/remove_space.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/scan/iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/scan/scan_iac.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/scan/scan_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/scan/use_cases.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/upgrade/upgrade_overview.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/concepts.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/cross_platform_support.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/framework_architecture.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/infrasctructure_composition.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/software_architecture.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/space_configuration.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/ai_dlc.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/check_command.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/devsecops_quickstart.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/devsecops_sdlc.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/inventory_command.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/platform_engineering_templates.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/space_management.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/tasks/create_template.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/iac_devsecops_use_case.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/automate_tasks_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/commnad_init.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/create_component.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/create_inventory.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/doc_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/document_project_code.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/framework/thothforge-framework.svg +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/framework/thothfr.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/iacpeerbot_summary.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/init_project.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/inventory_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/notification_img.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/report_dependencies.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/report_dependencies_summary.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/restore_inventory_version.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/reuse_project_pattern.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/scan_code.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/scan_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/sync_wk_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/transform_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/update_inventory_version.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/validate_command.png +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/validate_environment.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/img/validate_project.gif +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/includes/abbreviations.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/index.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/installation/windows_installation.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/javascripts/tablesort.js +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/mcp.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/navigation.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/quick_start.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/requirements.txt +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/stylesheets/extra-enhanced.css +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/stylesheets/extra.css +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/telemetry.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/template_engine/github_templates.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/template_engine/template_engine.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/troubleshooting/linux_troubleshooting.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/troubleshooting/macos_troubleshooting.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/troubleshooting/troubleshooting.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/docs/troubleshooting/windows_troubleshooting.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/mkdocs.yaml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/pyproject.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/scripts/run_mcp_server.sh +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/application/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/autocomplete.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/analyze.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/apply_fix.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/configure.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/configure_decisions.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/decide.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/history.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/improve.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/orchestrate.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/override.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/report.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/serve.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/environment.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/iac.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/project/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/project/iac.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/project.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/dashboard/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/dashboard/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/dashboard/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/dashboard/commands/launch.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/document/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/document/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/document/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/document/commands/iac.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/generate/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/generate/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/generate/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/generate/commands/component.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/generate/commands/stacks.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/init/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/init/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/init/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/init/commands/env.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/init/commands/project.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/init/commands/space.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/inventory/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/inventory/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/inventory/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/inventory/commands/check.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/inventory/commands/iac.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/list/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/list/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/list/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/list/commands/projects.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/list/commands/spaces.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/commands/register.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/commands/server.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/commands/status.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/mcp/commands/stop.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/commands/bootstrap.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/commands/cleanup.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/commands/convert.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/project/commands/upgrade.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/remove/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/remove/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/remove/project.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/remove/space.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/scan/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/scan/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/scan/commands/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/scan/commands/iac.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/upgrade/cli.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/.thothcf.setup.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/.thothcf_home.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/.thothcf_module.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/.thothcf_project.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/.thothcf_template_parameters.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/common.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/common/terragrunt/.thothcf_project.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/constants.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/default_values.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/defaults.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/models.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/settings.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/template_config.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/template_configs.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/templates.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/config/validation.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/cli_ui.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/commands.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/config.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/azure_devops/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/azure_devops/get_azure_devops.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/azure_devops/pull_request_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/github/get_github.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/github/pull_request_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/integrate_messages_services/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/integrate_messages_services/microsoft_teams.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/integrate_messages_services/sent_message_teams.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/pattern_names.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/pr_comments/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/integrations/pr_comments/pr_comment_publisher.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/logger.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/telemetry.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/core/version_tools.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/domain/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/domain/interfaces/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/domain/models/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/mcp/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/mcp/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/mcp/server.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/agentcore/agentcore.json +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/ai_agent.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/analyzers/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/analyzers/code_reviewer.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/analyzers/context_builder.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/analyzers/report_analyzer.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/analyzers/risk_assessor.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/bedrock_agent_api.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/config/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/config/ai_settings.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/config/decision_rules.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/decision_engine.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/main.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/memory.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/orchestrator.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/pr_decision_publisher.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/providers/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/providers/azure_provider.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/providers/bedrock_agent_provider.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/providers/bedrock_provider.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/providers/ollama_provider.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/providers/openai_provider.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/safety/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/safety/safety_guard.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/utils/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/utils/cost_tracker.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/utils/fix_patterns.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/utils/fix_prompts.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/utils/formatters.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/ai_review/utils/prompts.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/environment/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/environment/check_environment.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/blast_radius_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/check_origin_version.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/check_project_structure.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/cost_analyzer.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/models/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/models/cloudformation_mapper.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/models/cost_models.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/aws_pricing_client.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/base_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/apigateway_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/bedrock_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/cloudwatch_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/dynamodb_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/ebs_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/ec2_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/ecs_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/eip_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/eks_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/elb_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/free_resources_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/kms_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/lambda_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/msk_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/rds_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/s3_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/secrets_manager_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/pricing/providers/vpc_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/cost/unified_cost_report.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/drift_ai.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/drift_history.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/drift_policy.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/drift_report.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/drift_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/drift/models.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/risk_assessment.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/check/project/validate_project_structure.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/dashboard/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/dashboard/dashboard_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/dashboard/data_loader.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/create_documentation.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/files_content.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/files_scan.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/iac_documentation.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/iac_grunt_graph.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/document/iac_grunt_info.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_stacks/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_stacks/config_generator.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_stacks/remote_config_generation.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_stacks/stack_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_stacks/templates/terragrunt.hcl.j2 +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/config.yaml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/create_code.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/create_component.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/create_component_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/create_stacks.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/create_template.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/files_content.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/github_template_loader.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/generate/create_template/project_templates.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/environment/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/environment/install_tools.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/project/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/project/project.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/space/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/space/example_space.toml +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/space/local_registry.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/space/space.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/space/space_config.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/init/space/space_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/changelog_parser.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/models.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/module_compatibility_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/report_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/schema_compatibility_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/terragrunt_parser.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/update_versions.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/inventory/version_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/mcp/README.md +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/mcp/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/mcp/amazon_q_server.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/mcp/example.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/mcp/service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/mcp/simple_http_server.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/bootstrap/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/bootstrap/bootstrap_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/cleanup/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/cleanup/clean_project.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/cleanup/clean_space.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/conversion_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/get_project_data.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/post_init.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/project_converter.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/project_defaults.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/convert/set_project_parameters.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/create_terramate/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/create_terramate/create_terramate_stacks.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/create_terramate/detect_changes_stacks.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/create_terramate/manage_terramate_stacks.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/upgrade/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/project/upgrade/upgrade_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/compliance_review.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/import_reports.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scan_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/checkov.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/kics.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/opa.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/scan_reports.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/scanners.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/terraform_compliance.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/tfsec.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/services/scan/scanners/trivy.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/templates/reports/inventory_report.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/templates/reports/inventory_report.js +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/templates/unified_report_styles.css +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/banner.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/create_compliance_html_reports.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/create_html_reports.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/delete_directory.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/fix_report_styling.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/report_html_utils.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/dashboard.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/index_report.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/individual_report.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/simple_report.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/unified_report_styles.css +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/unified_simple_report.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/common/templates/xunit_report.html +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/crypto.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/manage_backend_resources/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/manage_backend_resources/manage_backend_resources.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/modules_ops/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/modules_ops/terraform_module_details.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/modules_ops/terraform_modules_fetcher.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/platform_utils.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/process_hcl/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/process_hcl/analyze_terraform_plan.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/process_hcl/graph_manager.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/process_hcl/graph_terragrunt_dependencies.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/process_hcl/process_terraform_file.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/process_hcl/risk_analyzing_terraform_plan.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/sync_workspaces/__init__.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/sync_workspaces/sync_terraform_workspaces.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/sync_workspaces/sync_terragrunt_workspaces.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/template_loader.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/utils/thoth_colors.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/wellcome_banner.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/conftest.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_agentcore_entrypoint.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_aws_pricing_client.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_azure_devops_pr_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_bedrock_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_cdk_language_selection.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_context_steering.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_cost_analyzer.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_cost_models.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_cost_pr_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_dashboard_loading_fix.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_dashboard_service.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_drift.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_drift_detection.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_ec2_pricing.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_github_pr_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_iac_cost_integration.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_inventory_pr_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_kics_scanner.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_mermaid_edge_labels.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_new_cost_providers.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_parallel_scan.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_platform_utils.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_pr_comment_publisher.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_provider_source_url_fix.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_provider_versions.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_scan_pr_comments.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_space_command.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_space_config.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_template_url_fix.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tests/test_terragrunt_parser.py +0 -0
- {thothctl-0.14.2 → thothctl-0.14.3}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: thothctl
|
|
3
|
-
Version: 0.14.
|
|
3
|
+
Version: 0.14.3
|
|
4
4
|
Summary: A CLI for Developer Control Plane. Accelerate your cloud IaC deployments.
|
|
5
5
|
Project-URL: Homepage, https://github.com/thothforge/thothctl
|
|
6
6
|
Author-email: Alejandro Velez <velez94@pm.me>
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# ThothCTL Inventory Command Changelog
|
|
2
2
|
|
|
3
|
+
## Version 0.14.3 - May 2026
|
|
4
|
+
|
|
5
|
+
### 🔧 Fix: Weighted Technical Debt Scoring
|
|
6
|
+
|
|
7
|
+
- **Weighted formula**: Modules now carry 70% weight and providers 30% in debt score calculation
|
|
8
|
+
- **Fairer scoring**: A single outdated provider no longer inflates the score disproportionately
|
|
9
|
+
- **Consistent thresholds**: CDK risk levels aligned with the main formula (70/50/30)
|
|
10
|
+
- **Rationale**: Providers may be intentionally pinned (e.g., a module tested against a specific provider version), so they should not dominate the debt score
|
|
11
|
+
|
|
3
12
|
## Version 0.4.0 - July 2025
|
|
4
13
|
|
|
5
14
|
### 🎯 Major Improvements
|
|
@@ -197,6 +197,52 @@ The reports now include comprehensive provider data:
|
|
|
197
197
|
- **Module Context**: Which module uses the provider
|
|
198
198
|
- **Status**: Current, Outdated, or Unknown
|
|
199
199
|
|
|
200
|
+
## Technical Debt Scoring 📊
|
|
201
|
+
|
|
202
|
+
When `--check-versions` is enabled, ThothCTL calculates a **technical debt score** that reflects how outdated your infrastructure is.
|
|
203
|
+
|
|
204
|
+
### Weighted Formula
|
|
205
|
+
|
|
206
|
+
The debt score uses a weighted approach that separates module health from provider health:
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
module_debt = outdated_modules / total_modules (weight: 70%)
|
|
210
|
+
provider_debt = outdated_providers / total_providers (weight: 30%)
|
|
211
|
+
|
|
212
|
+
debt_score = (module_debt × 0.7 + provider_debt × 0.3) × 100 + breaking_changes_penalty
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
**Why weighted?** Modules define your architecture and are the primary source of risk. Providers are dependencies that may be intentionally pinned (e.g., a latest module tested against a specific provider version). A single outdated provider should not inflate the score disproportionately.
|
|
216
|
+
|
|
217
|
+
### Breaking Changes Penalty
|
|
218
|
+
|
|
219
|
+
Each module or provider with detected breaking changes adds **+5 points** to the debt score (capped at 100%).
|
|
220
|
+
|
|
221
|
+
### Risk Levels
|
|
222
|
+
|
|
223
|
+
| Debt Score | Risk Level | Meaning |
|
|
224
|
+
|-----------|------------|---------|
|
|
225
|
+
| ≥ 70% | **Critical** | Immediate action required |
|
|
226
|
+
| ≥ 50% | **High** | Plan upgrades soon |
|
|
227
|
+
| ≥ 30% | **Medium** | Schedule maintenance |
|
|
228
|
+
| < 30% | **Low** | Infrastructure is well-maintained |
|
|
229
|
+
|
|
230
|
+
### Examples
|
|
231
|
+
|
|
232
|
+
| Scenario | Score | Risk |
|
|
233
|
+
|----------|-------|------|
|
|
234
|
+
| 2 modules current, 1/2 providers outdated | 15% | Low |
|
|
235
|
+
| 2/4 modules outdated, providers current | 35% | Medium |
|
|
236
|
+
| All modules and providers outdated | 100% | Critical |
|
|
237
|
+
| Everything current | 0% | Low |
|
|
238
|
+
|
|
239
|
+
### Recommendations
|
|
240
|
+
|
|
241
|
+
The system auto-generates actionable recommendations based on the metrics:
|
|
242
|
+
- Update outdated modules/providers
|
|
243
|
+
- Review components with breaking changes before upgrading
|
|
244
|
+
- Confirmation when infrastructure is well-maintained (score < 20%)
|
|
245
|
+
|
|
200
246
|
## Framework Type Options
|
|
201
247
|
|
|
202
248
|
### Auto-detect Framework (Default)
|
|
@@ -1011,7 +1011,7 @@ class InventoryService:
|
|
|
1011
1011
|
outdated += 1
|
|
1012
1012
|
if total > 0:
|
|
1013
1013
|
debt_score = (outdated / total) * 100
|
|
1014
|
-
risk = "critical" if debt_score
|
|
1014
|
+
risk = "critical" if debt_score >= 70 else "high" if debt_score >= 50 else "medium" if debt_score >= 30 else "low"
|
|
1015
1015
|
inventory_dict["technical_debt"] = {
|
|
1016
1016
|
"debt_score": debt_score,
|
|
1017
1017
|
"risk_level": risk,
|
|
@@ -1455,12 +1455,21 @@ class InventoryService:
|
|
|
1455
1455
|
metrics["providers_with_breaking_changes"] = schema_compat.get("providers_with_breaking_changes", 0)
|
|
1456
1456
|
|
|
1457
1457
|
# Calculate debt score (0-100, higher is worse)
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1458
|
+
# Weighted approach: modules carry 70% weight, providers 30%
|
|
1459
|
+
# This prevents a single outdated provider from inflating the score
|
|
1460
|
+
total_modules = metrics["total_components"]
|
|
1461
|
+
total_providers = metrics["current_providers"] + metrics["outdated_providers"]
|
|
1462
|
+
|
|
1463
|
+
module_debt = (metrics["outdated_modules"] / total_modules) if total_modules > 0 else 0
|
|
1464
|
+
provider_debt = (metrics["outdated_providers"] / total_providers) if total_providers > 0 else 0
|
|
1465
|
+
|
|
1466
|
+
MODULE_WEIGHT = 0.7
|
|
1467
|
+
PROVIDER_WEIGHT = 0.3
|
|
1468
|
+
|
|
1469
|
+
if total_modules > 0 or total_providers > 0:
|
|
1470
|
+
metrics["debt_score"] = (module_debt * MODULE_WEIGHT + provider_debt * PROVIDER_WEIGHT) * 100
|
|
1462
1471
|
|
|
1463
|
-
# Add
|
|
1472
|
+
# Add penalty for breaking changes (+5 points each)
|
|
1464
1473
|
breaking_weight = (metrics["modules_with_breaking_changes"] +
|
|
1465
1474
|
metrics["providers_with_breaking_changes"]) * 5
|
|
1466
1475
|
metrics["debt_score"] = min(100, metrics["debt_score"] + breaking_weight)
|
|
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
|
{thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/check/cost-analysis-quick-reference.md
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
|
{thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/frameworks/terraform.md
RENAMED
|
File without changes
|
{thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/commands/inventory/frameworks/terragrunt.md
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
|
{thothctl-0.14.2 → thothctl-0.14.3}/docs/framework/use_cases/platform_engineering_templates.md
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
|
|
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
|
{thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/ai_review/commands/configure_decisions.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
|
{thothctl-0.14.2 → thothctl-0.14.3}/src/thothctl/commands/check/commands/project/__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
|