thothctl 0.30.0__tar.gz → 0.30.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (594) hide show
  1. {thothctl-0.30.0 → thothctl-0.30.2}/CHANGELOG.md +37 -0
  2. {thothctl-0.30.0 → thothctl-0.30.2}/PKG-INFO +1 -1
  3. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/mcp/mcp.md +33 -29
  4. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/software_architecture.md +1 -1
  5. {thothctl-0.30.0 → thothctl-0.30.2}/docs/mcp.md +36 -15
  6. {thothctl-0.30.0 → thothctl-0.30.2}/docs/whats_new.md +35 -0
  7. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/environment/install_tools.py +33 -4
  8. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/version.py +1 -1
  9. {thothctl-0.30.0 → thothctl-0.30.2}/.devcontainer/Dockerfile +0 -0
  10. {thothctl-0.30.0 → thothctl-0.30.2}/.devcontainer/README.md +0 -0
  11. {thothctl-0.30.0 → thothctl-0.30.2}/.devcontainer/devcontainer.json +0 -0
  12. {thothctl-0.30.0 → thothctl-0.30.2}/.github/workflows/docs.yml +0 -0
  13. {thothctl-0.30.0 → thothctl-0.30.2}/.github/workflows/python-publish.yml +0 -0
  14. {thothctl-0.30.0 → thothctl-0.30.2}/.gitignore +0 -0
  15. {thothctl-0.30.0 → thothctl-0.30.2}/.pre-commit-config.yaml +0 -0
  16. {thothctl-0.30.0 → thothctl-0.30.2}/.pydocstyle +0 -0
  17. {thothctl-0.30.0 → thothctl-0.30.2}/.readthedocs.yaml +0 -0
  18. {thothctl-0.30.0 → thothctl-0.30.2}/CONTRIBUTING.md +0 -0
  19. {thothctl-0.30.0 → thothctl-0.30.2}/Dockerfile +0 -0
  20. {thothctl-0.30.0 → thothctl-0.30.2}/LICENSE +0 -0
  21. {thothctl-0.30.0 → thothctl-0.30.2}/README.md +0 -0
  22. {thothctl-0.30.0 → thothctl-0.30.2}/__init__.py +0 -0
  23. {thothctl-0.30.0 → thothctl-0.30.2}/docs/catalog/catalog-info.yaml +0 -0
  24. {thothctl-0.30.0 → thothctl-0.30.2}/docs/dashboard/README.md +0 -0
  25. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/ai-review/README.md +0 -0
  26. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/ai-review/agent_specifications.md +0 -0
  27. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/ai-review/agentcore.md +0 -0
  28. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/blast-radius.md +0 -0
  29. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/check_environment.md +0 -0
  30. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/check_iac.md +0 -0
  31. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/check_overview.md +0 -0
  32. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/check_project_iac.md +0 -0
  33. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/check_space.md +0 -0
  34. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/cost-analysis-quick-reference.md +0 -0
  35. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/cost-analysis.md +0 -0
  36. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/customizing_rules.md +0 -0
  37. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/deps-advanced.md +0 -0
  38. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/deps.md +0 -0
  39. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/drift-detection.md +0 -0
  40. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/check/plan.md +0 -0
  41. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/dashboard/dashboard_overview.md +0 -0
  42. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/customizing_docs.md +0 -0
  43. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/document_iac.md +0 -0
  44. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/document_overview.md +0 -0
  45. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/iac.md +0 -0
  46. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/mermaid_examples.md +0 -0
  47. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/mermaid_quickref.md +0 -0
  48. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/document/use_cases.md +0 -0
  49. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/generate/generate_components.md +0 -0
  50. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/generate/generate_iac.md +0 -0
  51. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/generate/generate_stacks.md +0 -0
  52. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/init/init.md +0 -0
  53. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/init/init_space.md +0 -0
  54. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/inventory/CHANGELOG.md +0 -0
  55. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/inventory/frameworks/terraform.md +0 -0
  56. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/inventory/frameworks/terragrunt.md +0 -0
  57. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/inventory/iac.md +0 -0
  58. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/inventory/inventory_iac.md +0 -0
  59. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/inventory/inventory_overview.md +0 -0
  60. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/list/list_overview.md +0 -0
  61. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/list/list_projects.md +0 -0
  62. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/list/list_spaces.md +0 -0
  63. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/project/iac.md +0 -0
  64. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/project/project_cleanup.md +0 -0
  65. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/project/project_convert.md +0 -0
  66. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/project/project_overview.md +0 -0
  67. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/project/project_upgrade.md +0 -0
  68. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/project/use_cases.md +0 -0
  69. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/remove/remove_overview.md +0 -0
  70. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/remove/remove_project.md +0 -0
  71. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/remove/remove_space.md +0 -0
  72. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/scan/iac.md +0 -0
  73. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/scan/scan_iac.md +0 -0
  74. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/scan/scan_overview.md +0 -0
  75. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/scan/use_cases.md +0 -0
  76. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/space/space_overview.md +0 -0
  77. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/upgrade/upgrade_overview.md +0 -0
  78. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/workflow/workflow_devsecops.md +0 -0
  79. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/commands/workflow/workflow_overview.md +0 -0
  80. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/concepts.md +0 -0
  81. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/cross_platform_support.md +0 -0
  82. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/framework_architecture.md +0 -0
  83. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/infrastructure_composition.md +0 -0
  84. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/policy_as_code.md +0 -0
  85. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/roadmap_fdi.md +0 -0
  86. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/space_configuration.md +0 -0
  87. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/specs/phase1.10_plan_validation.md +0 -0
  88. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/specs/phase1.9_composition_generation.md +0 -0
  89. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/specs/phase1_intent_to_iac.md +0 -0
  90. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/specs/phase2.5.1_autonomy_model.md +0 -0
  91. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/README.md +0 -0
  92. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/ai_dlc.md +0 -0
  93. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/check_command.md +0 -0
  94. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/devsecops_quickstart.md +0 -0
  95. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/devsecops_sdlc.md +0 -0
  96. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/inventory_command.md +0 -0
  97. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/platform_engineering_templates.md +0 -0
  98. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/space_management.md +0 -0
  99. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/tasks/create_template.md +0 -0
  100. {thothctl-0.30.0 → thothctl-0.30.2}/docs/framework/use_cases/tasks/workflow_implementation_plan.md +0 -0
  101. {thothctl-0.30.0 → thothctl-0.30.2}/docs/how_it_works.md +0 -0
  102. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/commnad_init.png +0 -0
  103. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/framework/thothforge-framework.svg +0 -0
  104. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/framework/thothfr.png +0 -0
  105. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/icon-light.png +0 -0
  106. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/icon.png +0 -0
  107. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/init_project.gif +0 -0
  108. {thothctl-0.30.0 → thothctl-0.30.2}/docs/img/stable/scan_report_example.png +0 -0
  109. {thothctl-0.30.0 → thothctl-0.30.2}/docs/includes/abbreviations.md +0 -0
  110. {thothctl-0.30.0 → thothctl-0.30.2}/docs/index.md +0 -0
  111. {thothctl-0.30.0 → thothctl-0.30.2}/docs/installation/devcontainer_setup.md +0 -0
  112. {thothctl-0.30.0 → thothctl-0.30.2}/docs/installation/linux_installation.md +0 -0
  113. {thothctl-0.30.0 → thothctl-0.30.2}/docs/installation/windows_installation.md +0 -0
  114. {thothctl-0.30.0 → thothctl-0.30.2}/docs/javascripts/tablesort.js +0 -0
  115. {thothctl-0.30.0 → thothctl-0.30.2}/docs/navigation.md +0 -0
  116. {thothctl-0.30.0 → thothctl-0.30.2}/docs/quick_start.md +0 -0
  117. {thothctl-0.30.0 → thothctl-0.30.2}/docs/requirements.txt +0 -0
  118. {thothctl-0.30.0 → thothctl-0.30.2}/docs/stylesheets/extra-enhanced.css +0 -0
  119. {thothctl-0.30.0 → thothctl-0.30.2}/docs/stylesheets/extra.css +0 -0
  120. {thothctl-0.30.0 → thothctl-0.30.2}/docs/telemetry.md +0 -0
  121. {thothctl-0.30.0 → thothctl-0.30.2}/docs/template_engine/cli_commands_audit.md +0 -0
  122. {thothctl-0.30.0 → thothctl-0.30.2}/docs/template_engine/for_developers.md +0 -0
  123. {thothctl-0.30.0 → thothctl-0.30.2}/docs/template_engine/for_platform_engineers.md +0 -0
  124. {thothctl-0.30.0 → thothctl-0.30.2}/docs/template_engine/github_templates.md +0 -0
  125. {thothctl-0.30.0 → thothctl-0.30.2}/docs/template_engine/template_engine.md +0 -0
  126. {thothctl-0.30.0 → thothctl-0.30.2}/docs/toolkit_overview.md +0 -0
  127. {thothctl-0.30.0 → thothctl-0.30.2}/docs/troubleshooting/linux_troubleshooting.md +0 -0
  128. {thothctl-0.30.0 → thothctl-0.30.2}/docs/troubleshooting/macos_troubleshooting.md +0 -0
  129. {thothctl-0.30.0 → thothctl-0.30.2}/docs/troubleshooting/troubleshooting.md +0 -0
  130. {thothctl-0.30.0 → thothctl-0.30.2}/docs/troubleshooting/windows_troubleshooting.md +0 -0
  131. {thothctl-0.30.0 → thothctl-0.30.2}/mkdocs.yaml +0 -0
  132. {thothctl-0.30.0 → thothctl-0.30.2}/pyproject.toml +0 -0
  133. {thothctl-0.30.0 → thothctl-0.30.2}/scripts/check_output_consistency.py +0 -0
  134. {thothctl-0.30.0 → thothctl-0.30.2}/scripts/run_mcp_server.sh +0 -0
  135. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/__init__.py +0 -0
  136. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/application/__init__.py +0 -0
  137. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/autocomplete.py +0 -0
  138. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/cli.py +0 -0
  139. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/__init__.py +0 -0
  140. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/__init__.py +0 -0
  141. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/cli.py +0 -0
  142. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/__init__.py +0 -0
  143. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/analyze.py +0 -0
  144. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/apply_fix.py +0 -0
  145. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/configure.py +0 -0
  146. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/configure_decisions.py +0 -0
  147. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/decide.py +0 -0
  148. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/history.py +0 -0
  149. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/improve.py +0 -0
  150. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/orchestrate.py +0 -0
  151. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/override.py +0 -0
  152. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/report.py +0 -0
  153. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/ai_review/commands/serve.py +0 -0
  154. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/__init__.py +0 -0
  155. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/cli.py +0 -0
  156. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/__init__.py +0 -0
  157. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/config.py +0 -0
  158. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/environment.py +0 -0
  159. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/iac.py +0 -0
  160. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/project/__init__.py +0 -0
  161. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/project/iac.py +0 -0
  162. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/project.py +0 -0
  163. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/check/commands/space.py +0 -0
  164. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/dashboard/__init__.py +0 -0
  165. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/dashboard/cli.py +0 -0
  166. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/dashboard/commands/__init__.py +0 -0
  167. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/dashboard/commands/launch.py +0 -0
  168. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/document/__init__.py +0 -0
  169. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/document/cli.py +0 -0
  170. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/document/commands/__init__.py +0 -0
  171. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/document/commands/iac.py +0 -0
  172. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/generate/__init__.py +0 -0
  173. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/generate/cli.py +0 -0
  174. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/generate/commands/__init__.py +0 -0
  175. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/generate/commands/component.py +0 -0
  176. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/generate/commands/iac.py +0 -0
  177. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/generate/commands/stacks.py +0 -0
  178. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/__init__.py +0 -0
  179. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/cli.py +0 -0
  180. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/commands/__init__.py +0 -0
  181. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/commands/env.py +0 -0
  182. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/commands/project.py +0 -0
  183. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/commands/space.py +0 -0
  184. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/init/commands/template.py +0 -0
  185. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/inventory/__init__.py +0 -0
  186. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/inventory/cli.py +0 -0
  187. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/inventory/commands/__init__.py +0 -0
  188. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/inventory/commands/check.py +0 -0
  189. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/inventory/commands/iac.py +0 -0
  190. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/list/__init__.py +0 -0
  191. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/list/cli.py +0 -0
  192. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/list/commands/__init__.py +0 -0
  193. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/list/commands/projects.py +0 -0
  194. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/list/commands/spaces.py +0 -0
  195. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/list/commands/templates.py +0 -0
  196. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/__init__.py +0 -0
  197. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/cli.py +0 -0
  198. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/commands/__init__.py +0 -0
  199. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/commands/register.py +0 -0
  200. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/commands/server.py +0 -0
  201. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/commands/status.py +0 -0
  202. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/mcp/commands/stop.py +0 -0
  203. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/__init__.py +0 -0
  204. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/cli.py +0 -0
  205. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/commands/__init__.py +0 -0
  206. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/commands/bootstrap.py +0 -0
  207. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/commands/cleanup.py +0 -0
  208. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/commands/convert.py +0 -0
  209. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/project/commands/upgrade.py +0 -0
  210. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/quickstart/__init__.py +0 -0
  211. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/quickstart/cli.py +0 -0
  212. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/remove/__init__.py +0 -0
  213. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/remove/cli.py +0 -0
  214. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/remove/project.py +0 -0
  215. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/remove/space.py +0 -0
  216. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/scan/__init__.py +0 -0
  217. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/scan/cli.py +0 -0
  218. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/scan/commands/__init__.py +0 -0
  219. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/scan/commands/iac.py +0 -0
  220. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/__init__.py +0 -0
  221. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/cli.py +0 -0
  222. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/__init__.py +0 -0
  223. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/activate.py +0 -0
  224. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/deactivate.py +0 -0
  225. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/export_space.py +0 -0
  226. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/import_space.py +0 -0
  227. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/show.py +0 -0
  228. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/space/commands/update.py +0 -0
  229. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/upgrade/cli.py +0 -0
  230. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/workflow/__init__.py +0 -0
  231. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/workflow/cli.py +0 -0
  232. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/workflow/commands/__init__.py +0 -0
  233. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/workflow/commands/devsecops.py +0 -0
  234. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/commands/workflow/commands/run.py +0 -0
  235. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/.thothcf.setup.toml +0 -0
  236. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/.thothcf_home.toml +0 -0
  237. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/.thothcf_module.toml +0 -0
  238. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/.thothcf_project.toml +0 -0
  239. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/.thothcf_template_parameters.toml +0 -0
  240. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/__init__.py +0 -0
  241. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/common.py +0 -0
  242. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/common/terragrunt/.thothcf_project.toml +0 -0
  243. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/__init__.py +0 -0
  244. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/constants.py +0 -0
  245. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/default_values.py +0 -0
  246. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/defaults.py +0 -0
  247. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/models.py +0 -0
  248. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/settings.py +0 -0
  249. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/template_config.py +0 -0
  250. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/template_configs.py +0 -0
  251. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/templates.py +0 -0
  252. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/config/validation.py +0 -0
  253. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/__init__.py +0 -0
  254. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/cli_ui.py +0 -0
  255. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/commands.py +0 -0
  256. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/config.py +0 -0
  257. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/__init__.py +0 -0
  258. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/azure_devops/__init__.py +0 -0
  259. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/azure_devops/get_azure_devops.py +0 -0
  260. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/azure_devops/pull_request_comments.py +0 -0
  261. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/github/get_github.py +0 -0
  262. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/github/pull_request_comments.py +0 -0
  263. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/integrate_messages_services/__init__.py +0 -0
  264. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/integrate_messages_services/microsoft_teams.py +0 -0
  265. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/integrate_messages_services/sent_message_teams.py +0 -0
  266. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/pattern_names.py +0 -0
  267. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/pr_comments/__init__.py +0 -0
  268. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/integrations/pr_comments/pr_comment_publisher.py +0 -0
  269. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/logger.py +0 -0
  270. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/telemetry.py +0 -0
  271. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/core/version_tools.py +0 -0
  272. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/domain/__init__.py +0 -0
  273. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/domain/interfaces/__init__.py +0 -0
  274. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/domain/models/__init__.py +0 -0
  275. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/mcp/README.md +0 -0
  276. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/mcp/__init__.py +0 -0
  277. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/mcp/server.py +0 -0
  278. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/__init__.py +0 -0
  279. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/__init__.py +0 -0
  280. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/agentcore/agentcore.json +0 -0
  281. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/ai_agent.py +0 -0
  282. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/analyzers/__init__.py +0 -0
  283. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/analyzers/code_reviewer.py +0 -0
  284. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/analyzers/context_builder.py +0 -0
  285. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/analyzers/report_analyzer.py +0 -0
  286. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/analyzers/risk_assessor.py +0 -0
  287. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/bedrock_agent_api.py +0 -0
  288. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/config/__init__.py +0 -0
  289. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/config/ai_settings.py +0 -0
  290. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/config/autonomy.py +0 -0
  291. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/config/decision_rules.py +0 -0
  292. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/decision_engine.py +0 -0
  293. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/main.py +0 -0
  294. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/memory.py +0 -0
  295. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/orchestrator.py +0 -0
  296. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/pr_decision_publisher.py +0 -0
  297. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/__init__.py +0 -0
  298. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/azure_provider.py +0 -0
  299. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/bedrock_agent_provider.py +0 -0
  300. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/bedrock_provider.py +0 -0
  301. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/kiro_provider.py +0 -0
  302. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/ollama_provider.py +0 -0
  303. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/providers/openai_provider.py +0 -0
  304. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/safety/__init__.py +0 -0
  305. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/safety/safety_guard.py +0 -0
  306. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/strands_agent.py +0 -0
  307. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/tracing.py +0 -0
  308. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/utils/__init__.py +0 -0
  309. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/utils/cost_tracker.py +0 -0
  310. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/utils/fix_patterns.py +0 -0
  311. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/utils/fix_prompts.py +0 -0
  312. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/utils/formatters.py +0 -0
  313. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/ai_review/utils/prompts.py +0 -0
  314. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/__init__.py +0 -0
  315. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/environment/__init__.py +0 -0
  316. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/environment/check_environment.py +0 -0
  317. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/org_policy_loader.py +0 -0
  318. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/__init__.py +0 -0
  319. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/blast_radius_service.py +0 -0
  320. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cfn_blast_radius_service.py +0 -0
  321. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/check_origin_version.py +0 -0
  322. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/check_project_structure.py +0 -0
  323. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/__init__.py +0 -0
  324. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/cost_analyzer.py +0 -0
  325. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/models/__init__.py +0 -0
  326. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/models/cloudformation_mapper.py +0 -0
  327. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/models/cost_models.py +0 -0
  328. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/__init__.py +0 -0
  329. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/aws_pricing_client.py +0 -0
  330. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/base_pricing.py +0 -0
  331. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/__init__.py +0 -0
  332. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/apigateway_pricing.py +0 -0
  333. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/bedrock_pricing.py +0 -0
  334. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/cloudwatch_pricing.py +0 -0
  335. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/dynamodb_pricing.py +0 -0
  336. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/ebs_pricing.py +0 -0
  337. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/ec2_pricing.py +0 -0
  338. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/ecr_pricing.py +0 -0
  339. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/ecs_pricing.py +0 -0
  340. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/eip_pricing.py +0 -0
  341. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/eks_pricing.py +0 -0
  342. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/elb_pricing.py +0 -0
  343. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/free_resources_pricing.py +0 -0
  344. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/kms_pricing.py +0 -0
  345. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/lambda_pricing.py +0 -0
  346. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/msk_pricing.py +0 -0
  347. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/rds_pricing.py +0 -0
  348. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/s3_pricing.py +0 -0
  349. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/secrets_manager_pricing.py +0 -0
  350. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/pricing/providers/vpc_pricing.py +0 -0
  351. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/cost/unified_cost_report.py +0 -0
  352. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/__init__.py +0 -0
  353. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/cfn_drift_service.py +0 -0
  354. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/drift_ai.py +0 -0
  355. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/drift_history.py +0 -0
  356. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/drift_policy.py +0 -0
  357. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/drift_report.py +0 -0
  358. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/drift_service.py +0 -0
  359. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/drift/models.py +0 -0
  360. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/risk_assessment.py +0 -0
  361. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/project/validate_project_structure.py +0 -0
  362. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/rule_merger.py +0 -0
  363. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/rules_compiler.py +0 -0
  364. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/check/stack_optimizer/__init__.py +0 -0
  365. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/dashboard/__init__.py +0 -0
  366. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/dashboard/dashboard_service.py +0 -0
  367. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/dashboard/data_loader.py +0 -0
  368. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/__init__.py +0 -0
  369. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/architecture_renderer.py +0 -0
  370. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/create_documentation.py +0 -0
  371. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/files_content.py +0 -0
  372. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/files_scan.py +0 -0
  373. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/iac_documentation.py +0 -0
  374. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/iac_grunt_graph.py +0 -0
  375. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/iac_grunt_info.py +0 -0
  376. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/document/topology_generator.py +0 -0
  377. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/__init__.py +0 -0
  378. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_stacks/__init__.py +0 -0
  379. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_stacks/config_generator.py +0 -0
  380. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_stacks/remote_config_generation.py +0 -0
  381. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_stacks/stack_service.py +0 -0
  382. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_stacks/templates/terragrunt.hcl.j2 +0 -0
  383. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_stacks/terragrunt.hcl +0 -0
  384. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/__init__.py +0 -0
  385. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/config.yaml +0 -0
  386. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/create_code.py +0 -0
  387. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/create_component.py +0 -0
  388. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/create_component_service.py +0 -0
  389. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/create_stacks.py +0 -0
  390. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/create_template.py +0 -0
  391. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/files_content.py +0 -0
  392. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/github_template_loader.py +0 -0
  393. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/create_template/project_templates.py +0 -0
  394. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/__init__.py +0 -0
  395. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/code_generator.py +0 -0
  396. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/composition_models.py +0 -0
  397. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/context_builder.py +0 -0
  398. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/generation_history.py +0 -0
  399. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/intent_decomposer.py +0 -0
  400. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/intent_service.py +0 -0
  401. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/models.py +0 -0
  402. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/parameter_resolver.py +0 -0
  403. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/plan_runner.py +0 -0
  404. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/plan_validator.py +0 -0
  405. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/project_assembler.py +0 -0
  406. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/prompts.py +0 -0
  407. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/scaffold_loader.py +0 -0
  408. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/state_resolver.py +0 -0
  409. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/generate/intent/validator.py +0 -0
  410. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/__init__.py +0 -0
  411. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/environment/__init__.py +0 -0
  412. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/environment/prerequisite_checker.py +0 -0
  413. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/environment/tool_packs.py +0 -0
  414. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/project/__init__.py +0 -0
  415. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/project/project.py +0 -0
  416. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/space/__init__.py +0 -0
  417. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/space/example_space.toml +0 -0
  418. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/space/export_import.py +0 -0
  419. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/space/inheritance.py +0 -0
  420. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/space/space.py +0 -0
  421. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/init/space/terraform_module_cache.py +0 -0
  422. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/__init__.py +0 -0
  423. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/cdk_parsers.py +0 -0
  424. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/cdk_sbom_service.py +0 -0
  425. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/changelog_parser.py +0 -0
  426. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/defectdojo_publisher.py +0 -0
  427. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/dtrack_publisher.py +0 -0
  428. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/inventory_service.py +0 -0
  429. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/models.py +0 -0
  430. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/module_compatibility_service.py +0 -0
  431. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/report_service.py +0 -0
  432. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/schema_compatibility_service.py +0 -0
  433. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/secobserve_publisher.py +0 -0
  434. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/terragrunt_parser.py +0 -0
  435. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/update_versions.py +0 -0
  436. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/inventory/version_service.py +0 -0
  437. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/mcp/README.md +0 -0
  438. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/mcp/__init__.py +0 -0
  439. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/mcp/simple_http_server.py +0 -0
  440. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/mcp/stdio_server.py +0 -0
  441. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/__init__.py +0 -0
  442. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/bootstrap/__init__.py +0 -0
  443. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/bootstrap/bootstrap_service.py +0 -0
  444. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/cleanup/__init__.py +0 -0
  445. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/cleanup/clean_project.py +0 -0
  446. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/cleanup/clean_space.py +0 -0
  447. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/__init__.py +0 -0
  448. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/conversion_service.py +0 -0
  449. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/get_project_data.py +0 -0
  450. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/post_init.py +0 -0
  451. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/project_converter.py +0 -0
  452. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/project_defaults.py +0 -0
  453. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/convert/set_project_parameters.py +0 -0
  454. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/create_terramate/__init__.py +0 -0
  455. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/create_terramate/create_terramate_stacks.py +0 -0
  456. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/create_terramate/detect_changes_stacks.py +0 -0
  457. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/create_terramate/manage_terramate_stacks.py +0 -0
  458. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/upgrade/__init__.py +0 -0
  459. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/project/upgrade/upgrade_service.py +0 -0
  460. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/__init__.py +0 -0
  461. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/compliance_review.py +0 -0
  462. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/import_reports.py +0 -0
  463. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/models.py +0 -0
  464. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/report_parser.py +0 -0
  465. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/sarif_output.py +0 -0
  466. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scan_history.py +0 -0
  467. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scan_service.py +0 -0
  468. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/__init__.py +0 -0
  469. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/checkov.py +0 -0
  470. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/kics.py +0 -0
  471. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/opa.py +0 -0
  472. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/scan_reports.py +0 -0
  473. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/scanners.py +0 -0
  474. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/terraform_compliance.py +0 -0
  475. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/tfsec.py +0 -0
  476. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/scan/scanners/trivy.py +0 -0
  477. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/__init__.py +0 -0
  478. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/custom_workflow_engine.py +0 -0
  479. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/models.py +0 -0
  480. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/__init__.py +0 -0
  481. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/base.py +0 -0
  482. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/build.py +0 -0
  483. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/deploy.py +0 -0
  484. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/develop.py +0 -0
  485. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/monitor.py +0 -0
  486. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/plan.py +0 -0
  487. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/secure.py +0 -0
  488. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/phases/test.py +0 -0
  489. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/services/workflow/workflow_service.py +0 -0
  490. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/templates/ai_reports/pr_comment.md +0 -0
  491. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/templates/reports/inventory_report.html +0 -0
  492. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/templates/reports/inventory_report.js +0 -0
  493. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/templates/unified_report_styles.css +0 -0
  494. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/__init__.py +0 -0
  495. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/banner.py +0 -0
  496. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/__init__.py +0 -0
  497. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/create_compliance_html_reports.py +0 -0
  498. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/create_html_reports.py +0 -0
  499. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/delete_directory.py +0 -0
  500. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/fix_report_styling.py +0 -0
  501. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/render_scan_report.py +0 -0
  502. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/report_html_utils.py +0 -0
  503. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/dashboard.html +0 -0
  504. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/index_report.html +0 -0
  505. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/individual_report.html +0 -0
  506. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/simple_report.html +0 -0
  507. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/unified_report_styles.css +0 -0
  508. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/unified_scan_report.html +0 -0
  509. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/unified_simple_report.html +0 -0
  510. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/common/templates/xunit_report.html +0 -0
  511. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/crypto.py +0 -0
  512. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/git_changes.py +0 -0
  513. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/manage_backend_resources/__init__.py +0 -0
  514. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/manage_backend_resources/manage_backend_resources.py +0 -0
  515. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/modules_ops/__init__.py +0 -0
  516. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/modules_ops/terraform_module_details.py +0 -0
  517. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/modules_ops/terraform_modules_fetcher.py +0 -0
  518. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/platform_utils.py +0 -0
  519. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/process_hcl/__init__.py +0 -0
  520. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/process_hcl/analyze_terraform_plan.py +0 -0
  521. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/process_hcl/graph_manager.py +0 -0
  522. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/process_hcl/graph_terragrunt_dependencies.py +0 -0
  523. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/process_hcl/process_terraform_file.py +0 -0
  524. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/process_hcl/risk_analyzing_terraform_plan.py +0 -0
  525. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/sync_workspaces/__init__.py +0 -0
  526. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/sync_workspaces/sync_terraform_workspaces.py +0 -0
  527. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/sync_workspaces/sync_terragrunt_workspaces.py +0 -0
  528. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/template_loader.py +0 -0
  529. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/utils/thoth_colors.py +0 -0
  530. {thothctl-0.30.0 → thothctl-0.30.2}/src/thothctl/wellcome_banner.py +0 -0
  531. {thothctl-0.30.0 → thothctl-0.30.2}/tests/conftest.py +0 -0
  532. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_agentcore_entrypoint.py +0 -0
  533. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_apply_fix.py +0 -0
  534. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_autonomy.py +0 -0
  535. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_decision_engine.py +0 -0
  536. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_fix_patterns.py +0 -0
  537. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_memory.py +0 -0
  538. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_orchestrator.py +0 -0
  539. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_pr_decision.py +0 -0
  540. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ai_safety_guard.py +0 -0
  541. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_aws_pricing_client.py +0 -0
  542. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_azure_devops_pr_comments.py +0 -0
  543. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_bedrock_pricing.py +0 -0
  544. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cdk_inventory.py +0 -0
  545. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cdk_language_selection.py +0 -0
  546. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cfn_blast_radius.py +0 -0
  547. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cfn_drift_detection.py +0 -0
  548. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_context_steering.py +0 -0
  549. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cost_analyzer.py +0 -0
  550. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cost_models.py +0 -0
  551. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cost_policy_enforcement.py +0 -0
  552. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_cost_pr_comments.py +0 -0
  553. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_dashboard_loading_fix.py +0 -0
  554. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_dashboard_service.py +0 -0
  555. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_defectdojo_publisher.py +0 -0
  556. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_drift.py +0 -0
  557. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_drift_detection.py +0 -0
  558. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_dtrack_publisher.py +0 -0
  559. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_ec2_pricing.py +0 -0
  560. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_generate_iac_codegen.py +0 -0
  561. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_generate_iac_context.py +0 -0
  562. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_generate_iac_prompts.py +0 -0
  563. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_generate_iac_service.py +0 -0
  564. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_generate_iac_validator.py +0 -0
  565. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_github_pr_comments.py +0 -0
  566. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_iac_cost_integration.py +0 -0
  567. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_init_ai_tools.py +0 -0
  568. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_init_template_params.py +0 -0
  569. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_intent_quick_wins.py +0 -0
  570. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_intent_rules_integration.py +0 -0
  571. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_inventory_pr_comments.py +0 -0
  572. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_kics_scanner.py +0 -0
  573. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_kiro_provider.py +0 -0
  574. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_mermaid_edge_labels.py +0 -0
  575. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_new_cost_providers.py +0 -0
  576. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_opa_data_files.py +0 -0
  577. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_parallel_scan.py +0 -0
  578. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_plan_validation.py +0 -0
  579. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_platform_utils.py +0 -0
  580. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_pr_comment_publisher.py +0 -0
  581. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_provider_source_url_fix.py +0 -0
  582. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_provider_versions.py +0 -0
  583. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_rules_compiler.py +0 -0
  584. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_scan_cfn_support.py +0 -0
  585. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_scan_command.py +0 -0
  586. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_scan_pr_comments.py +0 -0
  587. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_space_command.py +0 -0
  588. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_space_management.py +0 -0
  589. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_stack_optimizer.py +0 -0
  590. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_template_url_fix.py +0 -0
  591. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_terragrunt_parser.py +0 -0
  592. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_topology_generator.py +0 -0
  593. {thothctl-0.30.0 → thothctl-0.30.2}/tests/test_workflow_integration.py +0 -0
  594. {thothctl-0.30.0 → thothctl-0.30.2}/tox.ini +0 -0
@@ -5,6 +5,43 @@ All notable changes to ThothCTL are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.30.0] - 2026-09-22
9
+
10
+ ### Fixed
11
+
12
+ - **Intent-to-IaC plan validation** — per-stack plan validation is now skipped for
13
+ terragrunt projects when no `stack_path` is given (previously it wrote stray `.tf`
14
+ files into the project root and ran `terragrunt plan` against `root.hcl`).
15
+ Single-mode validation now routes `full-project` mode to `validate_full_project`.
16
+ - **HCL-aware block stripping** — `terraform {}` / `provider {}` removal now uses a
17
+ string/comment-aware brace scanner that correctly handles arbitrarily nested
18
+ blocks (e.g. `backend`, `assume_role`, `default_tags`) and braces inside strings
19
+ or comments, replacing the previous single-level regex.
20
+ - Added a missing module logger in `generate iac` CLI (undefined `logger` in the
21
+ history-save error handler).
22
+
23
+ ### Added
24
+
25
+ - **`--plan-filter` wiring** — the flag (plus `THOTH_PLAN_FILTER` env and
26
+ `[generation.plan].stack_filter`) is now honored end-to-end; `validate_full_project`
27
+ routes to `validate_filtered` when set.
28
+ - **Real dependency-graph diagrams** — composition-mode architecture diagrams now
29
+ render actual `depends_on` edges and layer subgraphs (new `_build_stack_diagram`)
30
+ instead of inferred/hardcoded edges.
31
+ - **Raw-response debugging** — the raw AI response is persisted to generation history
32
+ on parse failure (new `raw_response` column + idempotent migration) and surfaced in
33
+ the CLI.
34
+ - Single-mode `--mode project` now resolves `#{...}#` placeholders (previously only
35
+ the composition path did).
36
+
37
+ ### Changed
38
+
39
+ - Unified self-correction into a shared loop (with stagnation detection) used by both
40
+ single and composition paths; deduplicated stack file processing.
41
+ - `generation_tokens` is now estimated consistently across single and composition modes.
42
+ - Removed dead scaffold helpers; added a public `ScaffoldLoader.scaffold_dir` property;
43
+ warn when scaffold examples are unavailable (missing `gh` CLI).
44
+
8
45
  ## [0.29.0] - 2026-09-15
9
46
 
10
47
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: thothctl
3
- Version: 0.30.0
3
+ Version: 0.30.2
4
4
  Summary: A CLI for Developer Control Plane. Accelerate your cloud IaC deployments.
5
5
  Project-URL: SourceCode, https://github.com/thothforge/thothctl
6
6
  Project-URL: HomePage, https://github.com/thothforge/thothctl
@@ -82,7 +82,7 @@ thothctl mcp register
82
82
  This command will internally use the correct MCP registration syntax:
83
83
 
84
84
  ```bash
85
- q mcp add --name thothctl --command "thothctl mcp server"
85
+ kiro-cli mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "--stdio"
86
86
  ```
87
87
 
88
88
  Register the MCP server running on a custom port:
@@ -209,7 +209,7 @@ This tool generates governed Infrastructure as Code from natural language. It su
209
209
 
210
210
  **Example via AI Assistant**:
211
211
  ```
212
- q chat "Generate a VPC with 3 private subnets and NAT gateway for production in us-east-1 using terraform-terragrunt composition full mode"
212
+ kiro-cli chat "Generate a VPC with 3 private subnets and NAT gateway for production in us-east-1 using terraform-terragrunt composition full mode"
213
213
  ```
214
214
 
215
215
  ## Integration with AI Assistants
@@ -217,7 +217,7 @@ q chat "Generate a VPC with 3 private subnets and NAT gateway for production in
217
217
  After starting the MCP server and registering it with your AI assistant, you can interact with ThothCTL using natural language:
218
218
 
219
219
  ```bash
220
- q chat "List all ThothCTL projects"
220
+ kiro-cli chat "List all ThothCTL projects"
221
221
  ```
222
222
 
223
223
  Example interactions:
@@ -264,57 +264,61 @@ This typically means one of the following:
264
264
  3. **Wrong command in registration**: Verify your registration command.
265
265
  ```bash
266
266
  # List your registered MCP servers
267
- q mcp list
267
+ kiro-cli mcp list
268
268
 
269
269
  # Remove incorrect registration if needed
270
- q mcp remove thothctl
270
+ kiro-cli mcp remove --name thothctl
271
271
 
272
272
  # Register correctly
273
- q mcp add --name thothctl --command "thothctl mcp server"
273
+ kiro-cli mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "--stdio"
274
274
  ```
275
275
 
276
276
  4. **MCP configuration file is missing or corrupted**: Your AI assistant stores MCP server configurations in JSON files.
277
277
 
278
- **Configuration file locations**:
279
- - Global Configuration: `~/.aws/amazonq/mcp.json` - Applies to all workspaces
280
- - Workspace Configuration: `.amazonq/mcp.json` - Specific to the current workspace
278
+ **Configuration file locations (Kiro CLI)**:
279
+ - Global Configuration: `~/.kiro/settings/mcp.json` - Applies to all workspaces
280
+ - Workspace Configuration: `.kiro/settings/mcp.json` - Specific to the current workspace (takes precedence over global)
281
+
282
+ For **Claude Desktop**, MCP servers are configured in:
283
+ - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
284
+ - Windows: `%APPDATA%\Claude\claude_desktop_config.json`
281
285
 
282
286
  ```bash
283
- # Check if the configuration files exist
284
- ls -la ~/.aws/amazonq/mcp.json # Global config (Linux/macOS)
285
- ls -la .amazonq/mcp.json # Workspace config (Linux/macOS)
287
+ # Check if the configuration files exist (Kiro CLI)
288
+ ls -la ~/.kiro/settings/mcp.json # Global config (Linux/macOS)
289
+ ls -la .kiro/settings/mcp.json # Workspace config (Linux/macOS)
286
290
 
287
291
  # View the current configuration
288
- cat ~/.aws/amazonq/mcp.json # Global config (Linux/macOS)
289
- cat .amazonq/mcp.json # Workspace config (Linux/macOS)
292
+ cat ~/.kiro/settings/mcp.json # Global config (Linux/macOS)
293
+ cat .kiro/settings/mcp.json # Workspace config (Linux/macOS)
290
294
 
291
- # If missing or corrupted, recreate it
292
- q mcp remove thothctl
293
- q mcp add --name thothctl --command "thothctl mcp server"
295
+ # If missing or corrupted, recreate it (stdio is the default)
296
+ thothctl mcp register
297
+ # ...or register manually with the Kiro CLI (note the required --stdio flag)
298
+ kiro-cli mcp remove --name thothctl
299
+ kiro-cli mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "--stdio"
294
300
  ```
295
301
 
296
- The MCP configuration file (`mcp.json`) should have the following structure:
302
+ The MCP configuration file (`mcp.json`) should have the following structure.
303
+ The `--stdio` flag is required — Kiro CLI and Claude talk to the server over
304
+ stdin/stdout, so stdio mode must be enabled explicitly. Without it,
305
+ `thothctl mcp server` starts in HTTP mode and the assistant cannot connect:
297
306
  ```json
298
307
  {
299
308
  "mcpServers": {
300
309
  "thothctl": {
301
310
  "command": "thothctl",
302
- "args": ["mcp", "server"],
303
- "env": {},
304
- "timeout": 60000
311
+ "args": ["mcp", "server", "--stdio"]
305
312
  }
306
313
  }
307
314
  }
308
315
  ```
309
316
 
310
- You can manually create or edit this file if needed, but it's recommended to use the `q mcp add` command to ensure proper formatting.
317
+ You can manually create or edit this file if needed, but it's recommended to use `thothctl mcp register` (or `kiro-cli mcp add`) to ensure proper formatting.
311
318
 
312
- 5. **Detailed debugging**: Run with increased logging as suggested in the error message.
319
+ 5. **Detailed debugging**: Run with increased logging.
313
320
  ```bash
314
- Q_LOG_LEVEL=trace q chat "List ThothCTL projects"
315
-
316
- # Then check the logs
317
- cat $TMPDIR/qchat/latest.log
321
+ kiro-cli chat --verbose "List ThothCTL projects"
318
322
  ```
319
323
 
320
324
  #### Port Already in Use
@@ -334,8 +338,8 @@ thothctl mcp server -p 8081
334
338
  And update your registration accordingly:
335
339
 
336
340
  ```bash
337
- q mcp remove thothctl
338
- q mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "-p" --args "8081"
341
+ kiro-cli mcp remove --name thothctl
342
+ kiro-cli mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "-p" --args "8081"
339
343
  ```
340
344
 
341
345
  ## Architecture
@@ -578,7 +578,7 @@ Model Context Protocol server for AI integration.
578
578
  "mcpServers": {
579
579
  "thothctl": {
580
580
  "command": "thothctl",
581
- "args": ["mcp", "server"]
581
+ "args": ["mcp", "server", "--stdio"]
582
582
  }
583
583
  }
584
584
  }
@@ -36,16 +36,25 @@ This will start the MCP server on port 8080 (default).
36
36
 
37
37
  ### Registering with Kiro CLI
38
38
 
39
- To use ThothCTL with Kiro CLI or Claude, you need to register the MCP server:
39
+ To use ThothCTL with Kiro CLI or Claude, you need to register the MCP server.
40
+ The easiest way is the built-in command, which writes a stdio-mode config to
41
+ `~/.kiro/settings/mcp.json` (or `.kiro/settings/mcp.json` with `--scope workspace`):
40
42
 
41
43
  ```bash
42
- kiro mcp add thothctl --command "thothctl mcp server"
44
+ thothctl mcp register
45
+ ```
46
+
47
+ Alternatively, register it directly with the Kiro CLI. Note the `--stdio` flag —
48
+ it is required so the server speaks MCP over stdin/stdout instead of HTTP:
49
+
50
+ ```bash
51
+ kiro-cli mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "--stdio"
43
52
  ```
44
53
 
45
54
  Once registered, you can interact with ThothCTL through Kiro CLI using natural language:
46
55
 
47
56
  ```bash
48
- kiro chat "List all ThothCTL projects using the MCP integration"
57
+ kiro-cli chat "List all ThothCTL projects using the MCP integration"
49
58
  ```
50
59
 
51
60
  ### Checking Server Status
@@ -88,29 +97,41 @@ This typically means one of the following:
88
97
  ```
89
98
 
90
99
  3. **MCP configuration file is missing or corrupted**: Your AI assistant stores MCP server configurations in JSON files.
91
-
92
- **Configuration file locations**:
93
- - Global Configuration: `~/.aws/amazonq/mcp.json` - Applies to all workspaces
94
- - Workspace Configuration: `.amazonq/mcp.json` - Specific to the current workspace
95
-
96
- The MCP configuration file should have this structure:
100
+
101
+ **Configuration file locations (Kiro CLI)**:
102
+ - Global Configuration: `~/.kiro/settings/mcp.json` - Applies to all workspaces
103
+ - Workspace Configuration: `.kiro/settings/mcp.json` - Specific to the current workspace (takes precedence over global)
104
+
105
+ For **Claude Desktop**, MCP servers are configured in:
106
+ - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
107
+ - Windows: `%APPDATA%\Claude\claude_desktop_config.json`
108
+
109
+ The MCP configuration file should have this structure. Note the `--stdio`
110
+ flag — Kiro CLI and Claude communicate with the server over stdin/stdout,
111
+ so stdio mode must be enabled explicitly (without it, `thothctl mcp server`
112
+ starts in HTTP mode and the assistant cannot connect):
97
113
  ```json
98
114
  {
99
115
  "mcpServers": {
100
116
  "thothctl": {
101
117
  "command": "thothctl",
102
- "args": ["mcp", "server"],
103
- "env": {},
104
- "timeout": 60000
118
+ "args": ["mcp", "server", "--stdio"]
105
119
  }
106
120
  }
107
121
  }
108
122
  ```
109
123
 
110
- To recreate the configuration:
124
+ To recreate the configuration, the simplest way is the built-in registration
125
+ command (stdio is the default and writes to `~/.kiro/settings/mcp.json`):
126
+ ```bash
127
+ thothctl mcp register # global scope, stdio mode
128
+ thothctl mcp register --scope workspace # writes .kiro/settings/mcp.json
129
+ ```
130
+
131
+ Or register it manually via the Kiro CLI:
111
132
  ```bash
112
- q mcp remove thothctl
113
- q mcp add --name thothctl --command "thothctl" --args "mcp" --args "server"
133
+ kiro-cli mcp remove --name thothctl
134
+ kiro-cli mcp add --name thothctl --command "thothctl" --args "mcp" --args "server" --args "--stdio"
114
135
  ```
115
136
 
116
137
  For more detailed troubleshooting, see the [MCP Command Documentation](./framework/commands/mcp/mcp.md#troubleshooting).
@@ -1,5 +1,40 @@
1
1
  # What's New
2
2
 
3
+ ## v0.30.0 — Intent-to-IaC Hardening (September 2026)
4
+
5
+ ### Highlights
6
+
7
+ !!! success "Accurate dependency-graph diagrams for multi-stack generation"
8
+ Composition-mode diagrams now render the real stack dependency graph
9
+ (from each stack's `depends_on`) grouped by layer — no more inferred edges.
10
+
11
+ !!! success "Targeted plan validation with --plan-filter"
12
+ ```bash
13
+ thothctl generate iac -i "add an RDS stack" \
14
+ --composition incremental \
15
+ --plan-validation full-project \
16
+ --plan-filter "stacks/platform/data/*"
17
+ ```
18
+
19
+ - **Safer plan validation** — per-stack plan validation no longer runs against the
20
+ terragrunt project root (`root.hcl`); single-stack + `full-project` mode is routed
21
+ correctly
22
+ - **`--plan-filter` wired end-to-end** — also settable via `THOTH_PLAN_FILTER` or
23
+ `[generation.plan].stack_filter`
24
+ - **HCL-aware block stripping** — `terraform {}` / `provider {}` blocks are removed
25
+ with a string/comment-aware scanner that handles nested blocks (`backend`,
26
+ `assume_role`, `default_tags`) reliably
27
+ - **Single-mode placeholder resolution** — `--mode project` now resolves `#{...}#`
28
+ placeholders for single-stack generation too
29
+ - **Raw-response debugging** — when the AI returns unparseable output, the raw
30
+ response is saved to generation history for troubleshooting
31
+ - **Unified self-correction** — single and composition paths now share the same
32
+ validate → fix → re-validate loop with stagnation detection
33
+ - Consistent `generation_tokens` metrics across modes; clearer warning when scaffold
34
+ examples are unavailable (missing `gh` CLI)
35
+
36
+ ---
37
+
3
38
  ## v0.28.0 — Security Platform Integrations (August 2026)
4
39
 
5
40
  ### Highlights
@@ -2,6 +2,7 @@
2
2
 
3
3
  import logging
4
4
  import os
5
+ import subprocess
5
6
  import sys
6
7
 
7
8
  import inquirer
@@ -220,14 +221,42 @@ def install_pre_commit(version):
220
221
 
221
222
 
222
223
  def install_tflint():
223
- """Install tflint tool."""
224
+ """Install tflint tool.
225
+
226
+ The upstream ``install_linux.sh`` script was removed from the repository,
227
+ so the previous ``curl | bash`` approach piped a GitHub "404: Not Found"
228
+ page into bash (producing ``bash: line 1: 404:: command not found``).
229
+
230
+ Instead, download the latest release archive directly and install the
231
+ binary, matching the method documented in the tflint README. ``curl -fL``
232
+ fails on HTTP errors so a 404 surfaces as a real error instead of being
233
+ executed, and ``set -euo pipefail`` aborts the pipeline on any failure.
234
+ """
224
235
  print(f"{Fore.MAGENTA}Installing tflint {Fore.RESET}")
225
- _exit = os.system(
226
- "sudo curl -s https://raw.githubusercontent.com/terraform-linters/tflint/master/install_linux.sh | sudo bash"
236
+
237
+ # Map Python machine arch to tflint release asset suffix.
238
+ machine = os.uname().machine.lower()
239
+ arch = "arm64" if machine in ("aarch64", "arm64") else "amd64"
240
+ asset = f"tflint_linux_{arch}.zip"
241
+ url = (
242
+ "https://github.com/terraform-linters/tflint/releases/latest/download/"
243
+ f"{asset}"
244
+ )
245
+
246
+ # Passed as a single argv element to bash -c, so there is no outer shell
247
+ # re-parsing and no nested-quote fragility. Cleanup is explicit (no trap).
248
+ script = (
249
+ "set -eu; "
250
+ 'tmp="$(mktemp -d)"; '
251
+ f'curl -fsSL -o "$tmp/{asset}" "{url}" '
252
+ f'&& unzip -o "$tmp/{asset}" -d "$tmp" >/dev/null '
253
+ '&& sudo install -c -m 0755 "$tmp/tflint" /usr/local/bin/tflint; '
254
+ 'rc=$?; rm -rf "$tmp"; exit $rc'
227
255
  )
256
+ result = subprocess.run(["bash", "-c", script])
228
257
 
229
258
  check_result(
230
- result=_exit,
259
+ result=result.returncode,
231
260
  tool="tflint",
232
261
  )
233
262
 
@@ -1,3 +1,3 @@
1
1
  """Version module."""
2
2
 
3
- __version__ = "0.30.0"
3
+ __version__ = "0.30.2"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes