kodit 0.3.0__tar.gz → 0.3.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.

Potentially problematic release.


This version of kodit might be problematic. Click here for more details.

Files changed (215) hide show
  1. kodit-0.3.2/.claude/commands/debug.md +121 -0
  2. kodit-0.3.2/.claude/commands/new-requirement.md +534 -0
  3. kodit-0.3.2/.claude/commands/refactor.md +33 -0
  4. kodit-0.3.2/.claude/settings.json +3 -0
  5. kodit-0.3.2/CLAUDE.md +99 -0
  6. {kodit-0.3.0 → kodit-0.3.2}/PKG-INFO +14 -4
  7. {kodit-0.3.0 → kodit-0.3.2}/README.md +13 -3
  8. {kodit-0.3.0 → kodit-0.3.2}/docs/_index.md +12 -2
  9. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/_version.py +2 -2
  10. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/application/services/code_indexing_application_service.py +19 -17
  11. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/cli.py +35 -33
  12. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/config.py +62 -4
  13. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/entities.py +9 -1
  14. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/repositories.py +5 -5
  15. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/indexing_service.py +4 -3
  16. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/snippet_service.py +33 -16
  17. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/value_objects.py +87 -9
  18. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/indexing/index_repository.py +33 -38
  19. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/sqlalchemy/snippet_repository.py +86 -78
  20. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/log.py +4 -1
  21. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/mcp.py +1 -6
  22. kodit-0.3.2/src/kodit/migrations/versions/4552eb3f23ce_add_summary.py +34 -0
  23. {kodit-0.3.0 → kodit-0.3.2}/tests/conftest.py +22 -7
  24. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/application/test_code_indexing_application_service.py +0 -3
  25. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/cli_test.py +283 -0
  26. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/config_test.py +40 -3
  27. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/snippet_domain_service_test.py +59 -11
  28. kodit-0.3.2/tests/kodit/domain/test_multi_search_result.py +224 -0
  29. kodit-0.3.2/tests/kodit/infrastructure/bm25/__init__.py +1 -0
  30. kodit-0.3.2/tests/kodit/infrastructure/bm25/local_bm25_repository_test.py +202 -0
  31. kodit-0.3.0/tests/kodit/infrastructure/test_vectorchord_bm25_repository.py → kodit-0.3.2/tests/kodit/infrastructure/bm25/vectorchord_bm25_repository_test.py +5 -0
  32. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/test_embedding_integration.py +35 -10
  33. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/test_local_vector_search_repository.py +12 -3
  34. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/test_vectorchord_vector_search_repository.py +5 -0
  35. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/indexing/indexing_repository_test.py +4 -4
  36. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/sqlalchemy/test_snippet_repository.py +52 -33
  37. kodit-0.3.2/tests/kodit/log_test.py +57 -0
  38. kodit-0.3.2/tests/kodit/mcp_test.py +103 -0
  39. {kodit-0.3.0 → kodit-0.3.2}/tests/performance/similarity.py +1 -0
  40. kodit-0.3.0/tests/kodit/log_test.py +0 -20
  41. kodit-0.3.0/tests/kodit/mcp_test.py +0 -48
  42. {kodit-0.3.0 → kodit-0.3.2}/.cursor/rules/kodit.mdc +0 -0
  43. {kodit-0.3.0 → kodit-0.3.2}/.cursor/rules/style.mdc +0 -0
  44. {kodit-0.3.0 → kodit-0.3.2}/.dockerignore +0 -0
  45. {kodit-0.3.0 → kodit-0.3.2}/.github/CODE_OF_CONDUCT.md +0 -0
  46. {kodit-0.3.0 → kodit-0.3.2}/.github/CONTRIBUTING.md +0 -0
  47. {kodit-0.3.0 → kodit-0.3.2}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  48. {kodit-0.3.0 → kodit-0.3.2}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  49. {kodit-0.3.0 → kodit-0.3.2}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  50. {kodit-0.3.0 → kodit-0.3.2}/.github/dependabot.yml +0 -0
  51. {kodit-0.3.0 → kodit-0.3.2}/.github/workflows/docker.yaml +0 -0
  52. {kodit-0.3.0 → kodit-0.3.2}/.github/workflows/docs.yaml +0 -0
  53. {kodit-0.3.0 → kodit-0.3.2}/.github/workflows/pull_request.yaml +0 -0
  54. {kodit-0.3.0 → kodit-0.3.2}/.github/workflows/pypi-test.yaml +0 -0
  55. {kodit-0.3.0 → kodit-0.3.2}/.github/workflows/pypi.yaml +0 -0
  56. {kodit-0.3.0 → kodit-0.3.2}/.github/workflows/test.yaml +0 -0
  57. {kodit-0.3.0 → kodit-0.3.2}/.gitignore +0 -0
  58. {kodit-0.3.0 → kodit-0.3.2}/.python-version +0 -0
  59. {kodit-0.3.0 → kodit-0.3.2}/.vscode/launch.json +0 -0
  60. {kodit-0.3.0 → kodit-0.3.2}/.vscode/settings.json +0 -0
  61. {kodit-0.3.0 → kodit-0.3.2}/Dockerfile +0 -0
  62. {kodit-0.3.0 → kodit-0.3.2}/LICENSE +0 -0
  63. {kodit-0.3.0 → kodit-0.3.2}/alembic.ini +0 -0
  64. {kodit-0.3.0 → kodit-0.3.2}/docs/demos/_index.md +0 -0
  65. {kodit-0.3.0 → kodit-0.3.2}/docs/demos/go-simple-microservice/index.md +0 -0
  66. {kodit-0.3.0 → kodit-0.3.2}/docs/demos/knock-knock-auth/index.md +0 -0
  67. {kodit-0.3.0 → kodit-0.3.2}/docs/developer/index.md +0 -0
  68. {kodit-0.3.0 → kodit-0.3.2}/docs/getting-started/_index.md +0 -0
  69. {kodit-0.3.0 → kodit-0.3.2}/docs/getting-started/installation/index.md +0 -0
  70. {kodit-0.3.0 → kodit-0.3.2}/docs/getting-started/integration/index.md +0 -0
  71. {kodit-0.3.0 → kodit-0.3.2}/docs/getting-started/quick-start/index.md +0 -0
  72. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/_index.md +0 -0
  73. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/configuration/index.md +0 -0
  74. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/deployment/docker-compose.yaml +0 -0
  75. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/deployment/index.md +0 -0
  76. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/deployment/kubernetes.yaml +0 -0
  77. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/indexing/index.md +0 -0
  78. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/mcp/index.md +0 -0
  79. {kodit-0.3.0 → kodit-0.3.2}/docs/reference/telemetry/index.md +0 -0
  80. {kodit-0.3.0 → kodit-0.3.2}/pyproject.toml +0 -0
  81. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/.gitignore +0 -0
  82. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/__init__.py +0 -0
  83. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/app.py +0 -0
  84. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/application/__init__.py +0 -0
  85. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/application/factories/__init__.py +0 -0
  86. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/application/factories/code_indexing_factory.py +0 -0
  87. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/application/services/__init__.py +0 -0
  88. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/database.py +0 -0
  89. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/__init__.py +0 -0
  90. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/enums.py +0 -0
  91. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/errors.py +0 -0
  92. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/interfaces.py +0 -0
  93. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/__init__.py +0 -0
  94. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/bm25_service.py +0 -0
  95. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/embedding_service.py +0 -0
  96. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/enrichment_service.py +0 -0
  97. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/ignore_service.py +0 -0
  98. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/snippet_extraction_service.py +0 -0
  99. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/domain/services/source_service.py +0 -0
  100. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/__init__.py +0 -0
  101. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/bm25/__init__.py +0 -0
  102. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/bm25/bm25_factory.py +0 -0
  103. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/bm25/local_bm25_repository.py +0 -0
  104. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/bm25/vectorchord_bm25_repository.py +0 -0
  105. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/__init__.py +0 -0
  106. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/folder/__init__.py +0 -0
  107. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/folder/factory.py +0 -0
  108. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/folder/working_copy.py +0 -0
  109. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/git/__init__.py +0 -0
  110. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/git/factory.py +0 -0
  111. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/git/working_copy.py +0 -0
  112. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/cloning/metadata.py +0 -0
  113. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/__init__.py +0 -0
  114. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/embedding_factory.py +0 -0
  115. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/embedding_providers/__init__.py +0 -0
  116. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/embedding_providers/batching.py +0 -0
  117. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/embedding_providers/hash_embedding_provider.py +0 -0
  118. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/embedding_providers/local_embedding_provider.py +0 -0
  119. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/embedding_providers/openai_embedding_provider.py +0 -0
  120. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/local_vector_search_repository.py +0 -0
  121. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/embedding/vectorchord_vector_search_repository.py +0 -0
  122. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/enrichment/__init__.py +0 -0
  123. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/enrichment/enrichment_factory.py +0 -0
  124. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/enrichment/local_enrichment_provider.py +0 -0
  125. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/enrichment/null_enrichment_provider.py +0 -0
  126. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/enrichment/openai_enrichment_provider.py +0 -0
  127. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/git/__init__.py +0 -0
  128. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/git/git_utils.py +0 -0
  129. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/ignore/__init__.py +0 -0
  130. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/ignore/ignore_pattern_provider.py +0 -0
  131. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/indexing/__init__.py +0 -0
  132. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/indexing/auto_indexing_service.py +0 -0
  133. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/indexing/fusion_service.py +0 -0
  134. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/indexing/indexing_factory.py +0 -0
  135. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/indexing/snippet_domain_service_factory.py +0 -0
  136. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/__init__.py +0 -0
  137. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/language_detection_service.py +0 -0
  138. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/languages/csharp.scm +0 -0
  139. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/languages/go.scm +0 -0
  140. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/languages/java.scm +0 -0
  141. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/languages/javascript.scm +0 -0
  142. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/languages/python.scm +0 -0
  143. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/languages/typescript.scm +0 -0
  144. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/snippet_extraction_factory.py +0 -0
  145. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/snippet_query_provider.py +0 -0
  146. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/snippet_extraction/tree_sitter_snippet_extractor.py +0 -0
  147. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/sqlalchemy/__init__.py +0 -0
  148. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/sqlalchemy/embedding_repository.py +0 -0
  149. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/sqlalchemy/file_repository.py +0 -0
  150. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/sqlalchemy/repository.py +0 -0
  151. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/ui/__init__.py +0 -0
  152. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/ui/progress.py +0 -0
  153. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/infrastructure/ui/spinner.py +0 -0
  154. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/middleware.py +0 -0
  155. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/README +0 -0
  156. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/__init__.py +0 -0
  157. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/env.py +0 -0
  158. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/script.py.mako +0 -0
  159. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/versions/7c3bbc2ab32b_add_embeddings_table.py +0 -0
  160. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/versions/85155663351e_initial.py +0 -0
  161. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/versions/9e53ea8bb3b0_add_authors.py +0 -0
  162. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/versions/__init__.py +0 -0
  163. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/migrations/versions/c3f5137d30f5_index_all_the_things.py +0 -0
  164. {kodit-0.3.0 → kodit-0.3.2}/src/kodit/reporting.py +0 -0
  165. {kodit-0.3.0 → kodit-0.3.2}/tests/__init__.py +0 -0
  166. {kodit-0.3.0 → kodit-0.3.2}/tests/docker-smoke.sh +0 -0
  167. {kodit-0.3.0 → kodit-0.3.2}/tests/experiments/__init__.py +0 -0
  168. {kodit-0.3.0 → kodit-0.3.2}/tests/experiments/cline_prompt_tests/__init__.py +0 -0
  169. {kodit-0.3.0 → kodit-0.3.2}/tests/experiments/cline_prompt_tests/cline_prompt.txt +0 -0
  170. {kodit-0.3.0 → kodit-0.3.2}/tests/experiments/cline_prompt_tests/cline_prompt_test.py +0 -0
  171. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/__init__.py +0 -0
  172. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/application/__init__.py +0 -0
  173. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/__init__.py +0 -0
  174. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/bm25_domain_service_test.py +0 -0
  175. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/enrichment_domain_service_test.py +0 -0
  176. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/snippet_extraction_domain_service_test.py +0 -0
  177. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/test_embedding_service.py +0 -0
  178. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/domain/test_language_mapping.py +0 -0
  179. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/e2e.py +0 -0
  180. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/__init__.py +0 -0
  181. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/cloning/git_cloning/__init__.py +0 -0
  182. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/cloning/git_cloning/factory_test.py +0 -0
  183. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/cloning/git_cloning/working_copy_test.py +0 -0
  184. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/__init__.py +0 -0
  185. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/embedding_factory_test.py +0 -0
  186. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/embedding_provider/__init__.py +0 -0
  187. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/embedding_provider/test_hash_embedding_provider.py +0 -0
  188. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/embedding_provider/test_local_embedding_provider.py +0 -0
  189. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/embedding_provider/test_openai_embedding_provider.py +0 -0
  190. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/embedding/test_batching.py +0 -0
  191. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/enrichment/__init__.py +0 -0
  192. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/enrichment/enrichment_provider/__init__.py +0 -0
  193. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/enrichment/enrichment_provider/test_local_enrichment_provider.py +0 -0
  194. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/enrichment/enrichment_provider/test_null_enrichment_provider.py +0 -0
  195. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/enrichment/enrichment_provider/test_openai_enrichment_provider.py +0 -0
  196. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/enrichment/test_enrichment_factory.py +0 -0
  197. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/git/__init__.py +0 -0
  198. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/git/test_git_utils.py +0 -0
  199. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/indexing/__init__.py +0 -0
  200. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/indexing/test_auto_indexing_service.py +0 -0
  201. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/__init__.py +0 -0
  202. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/csharp.cs +0 -0
  203. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/golang.go +0 -0
  204. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/javascript.js +0 -0
  205. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/knock_knock_server.py +0 -0
  206. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/python.py +0 -0
  207. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/snippets/typescript.tsx +0 -0
  208. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/source/__init__.py +0 -0
  209. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/source/source_service_test.py +0 -0
  210. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/sqlalchemy/__init__.py +0 -0
  211. {kodit-0.3.0 → kodit-0.3.2}/tests/kodit/infrastructure/sqlalchemy/test_embedding_repository.py +0 -0
  212. {kodit-0.3.0 → kodit-0.3.2}/tests/performance/__init__.py +0 -0
  213. {kodit-0.3.0 → kodit-0.3.2}/tests/smoke.sh +0 -0
  214. {kodit-0.3.0 → kodit-0.3.2}/tests/vectorchord-smoke.sh +0 -0
  215. {kodit-0.3.0 → kodit-0.3.2}/uv.lock +0 -0
@@ -0,0 +1,121 @@
1
+ # Debug Error Command
2
+
3
+ Systematically debug and resolve errors in any codebase using a structured approach.
4
+
5
+ ## Instructions
6
+
7
+ Follow this comprehensive debugging methodology to resolve: **$ARGUMENTS**
8
+
9
+ 1. **Error Information Gathering**
10
+ - Collect the complete error message, stack trace, and error code
11
+ - Note when the error occurs (timing, conditions, frequency)
12
+ - Identify the environment where the error happens (dev, staging, prod)
13
+ - Gather relevant logs from before and after the error
14
+
15
+ 2. **Reproduce the Error**
16
+ - Create a minimal test case that reproduces the error consistently
17
+ - Document the exact steps needed to trigger the error
18
+ - Test in different environments if possible
19
+ - Note any patterns or conditions that affect error occurrence
20
+
21
+ 3. **Stack Trace Analysis**
22
+ - Read the stack trace from bottom to top to understand the call chain
23
+ - Identify the exact line where the error originates
24
+ - Trace the execution path leading to the error
25
+ - Look for any obvious issues in the failing code
26
+
27
+ 4. **Code Context Investigation**
28
+ - Examine the code around the error location
29
+ - Check recent changes that might have introduced the bug
30
+ - Review variable values and state at the time of error
31
+ - Analyze function parameters and return values
32
+
33
+ 5. **Hypothesis Formation**
34
+ - Based on evidence, form hypotheses about the root cause
35
+ - Consider common causes:
36
+ - Null pointer/undefined reference
37
+ - Type mismatches
38
+ - Race conditions
39
+ - Resource exhaustion
40
+ - Logic errors
41
+ - External dependency failures
42
+
43
+ 6. **Debugging Tools Setup**
44
+ - Set up appropriate debugging tools for the technology stack
45
+ - Use debugger, profiler, or logging as needed
46
+ - Configure breakpoints at strategic locations
47
+ - Set up monitoring and alerting if not already present
48
+
49
+ 7. **Systematic Investigation**
50
+ - Test each hypothesis methodically
51
+ - Use binary search approach to isolate the problem
52
+ - Add strategic logging or print statements
53
+ - Check data flow and transformations step by step
54
+
55
+ 8. **Data Validation**
56
+ - Verify input data format and validity
57
+ - Check for edge cases and boundary conditions
58
+ - Validate assumptions about data state
59
+ - Test with different data sets to isolate patterns
60
+
61
+ 9. **Dependency Analysis**
62
+ - Check external dependencies and their versions
63
+ - Verify network connectivity and API availability
64
+ - Review configuration files and environment variables
65
+ - Test database connections and query execution
66
+
67
+ 10. **Memory and Resource Analysis**
68
+ - Check for memory leaks or excessive memory usage
69
+ - Monitor CPU and I/O resource consumption
70
+ - Analyze garbage collection patterns if applicable
71
+ - Check for resource deadlocks or contention
72
+
73
+ 11. **Concurrency Issues Investigation**
74
+ - Look for race conditions in multi-threaded code
75
+ - Check synchronization mechanisms and locks
76
+ - Analyze async operations and promise handling
77
+ - Test under different load conditions
78
+
79
+ 12. **Root Cause Identification**
80
+ - Once the cause is identified, understand why it happened
81
+ - Determine if it's a logic error, design flaw, or external issue
82
+ - Assess the scope and impact of the problem
83
+ - Consider if similar issues exist elsewhere
84
+
85
+ 13. **Solution Implementation**
86
+ - Design a fix that addresses the root cause
87
+ - Consider multiple solution approaches and trade-offs
88
+ - Implement the fix with appropriate error handling
89
+ - Add validation and defensive programming where needed
90
+
91
+ 14. **Testing the Fix**
92
+ - Test the fix against the original error case
93
+ - Test edge cases and related scenarios
94
+ - Run regression tests to ensure no new issues
95
+ - Test under various load and stress conditions
96
+
97
+ 15. **Prevention Measures**
98
+ - Add appropriate unit and integration tests
99
+ - Improve error handling and logging
100
+ - Add input validation and defensive checks
101
+ - Update documentation and code comments
102
+
103
+ 16. **Monitoring and Alerting**
104
+ - Set up monitoring for similar issues
105
+ - Add metrics and health checks
106
+ - Configure alerts for error thresholds
107
+ - Implement better observability
108
+
109
+ 17. **Documentation**
110
+ - Document the error, investigation process, and solution
111
+ - Update troubleshooting guides
112
+ - Share learnings with the team
113
+ - Update code comments with context
114
+
115
+ 18. **Post-Resolution Review**
116
+ - Analyze why the error wasn't caught earlier
117
+ - Review development and testing processes
118
+ - Consider improvements to prevent similar issues
119
+ - Update coding standards or guidelines if needed
120
+
121
+ Remember to maintain detailed notes throughout the debugging process and consider the wider implications of both the error and the fix.
@@ -0,0 +1,534 @@
1
+ # Build Product Requirements Prompt
2
+
3
+ ## Instructions
4
+
5
+ Create a comprehensive Product Requirement Prompt (PRP) with user-centered requirements gathering for: **$ARGUMENTS**
6
+
7
+ ## Intelligent Workflow Selection
8
+
9
+ **Analyze `$ARGUMENTS` complexity and choose approach:**
10
+
11
+ - **Simple/Clear Request** (e.g., "add a login button"): Skip to Phase 3 (Research & PRP Generation)
12
+ - **Moderate Request** (e.g., "user authentication system"): Start with Phase 2 (Targeted Questions)
13
+ - **Complex/Vague Request** (e.g., "improve user experience"): Start with Phase 1 (Discovery)
14
+
15
+ ## Full Workflow
16
+
17
+ ### Phase 1: Discovery Questions (Complex/Vague Requests Only)
18
+
19
+ Ask 5 strategic discovery questions to understand the problem space:
20
+
21
+ ```markdown
22
+ I need to understand the broader context first. Let me ask 5 key questions:
23
+
24
+ ## Discovery Questions
25
+
26
+ **Q1: Will users interact with this feature through a visual interface?**
27
+ Default: Yes (most features have UI components)
28
+
29
+ **Q2: Does this involve user data or require authentication?**
30
+ Default: Yes (better to plan for security)
31
+
32
+ **Q3: Do users currently have a workaround for this problem?**
33
+ Default: No (assuming this solves a new need)
34
+
35
+ **Q4: Will this need to integrate with external services or APIs?**
36
+ Default: No (simpler implementation)
37
+
38
+ **Q5: Is this a completely new feature or an enhancement to existing functionality?**
39
+ Default: Enhancement (most requests build on existing features)
40
+
41
+ *You can answer any/all questions or just say "continue" to use the defaults.*
42
+ ```
43
+
44
+ ### Phase 2: Technical Context Questions (Moderate+ Requests)
45
+
46
+ Ask 5 targeted technical questions informed by codebase analysis:
47
+
48
+ ```markdown
49
+ Now let me ask about technical implementation details:
50
+
51
+ ## Technical Questions
52
+
53
+ **Q6: [Specific question about existing similar features/components]**
54
+ Default: [Codebase-informed default]
55
+
56
+ **Q7: [Question about data layer/database requirements]**
57
+ Default: [Pattern-based default]
58
+
59
+ **Q8: [Question about API/service layer approach]**
60
+ Default: [Architecture-consistent default]
61
+
62
+ **Q9: [Question about testing/validation approach]**
63
+ Default: [Project-standard default]
64
+
65
+ **Q10: [Question about deployment/configuration needs]**
66
+ Default: [Environment-appropriate default]
67
+
68
+ *Answer what you know, or say "continue" for smart defaults based on your codebase.*
69
+ ```
70
+
71
+ ### Phase 3: Research & Context Gathering
72
+
73
+ **Automatically perform comprehensive research:**
74
+
75
+ 1. **Web Research** (when beneficial):
76
+ - Research best practices and current standards
77
+ - Look up relevant library/framework documentation using mcp__kodit__search (if available)
78
+ - Find example implementations and patterns using mcp__kodit__search (if available)
79
+ - Gather security and performance considerations
80
+
81
+ 2. **Codebase Analysis** (when tools available):
82
+ - Analyze overall architecture and patterns
83
+ - Identify similar existing features using mcp__kodit__search (if available)
84
+ - Understand technology stack and conventions
85
+ - Find integration points and dependencies
86
+
87
+ 3. **Technical Context**:
88
+ - Identify affected files and components
89
+ - Understand data flow and business logic
90
+ - Map out user interactions and workflows
91
+ - Document technical constraints and opportunities
92
+
93
+ ### Phase 4: Generate Comprehensive PRP
94
+
95
+ Create a complete Product Requirement Prompt that combines user requirements with
96
+ implementation guidance. Use the following template to create a new markdown file in
97
+ docs/requirements/YYYY-MM-DD-HHMM-[slug].md, where `[slug]` is a slug extracted from the
98
+ requirement and `YYYY-MM-DD-HHMM` is parsed from the system's `date` command.
99
+
100
+ ---
101
+
102
+ ## PRP Output Template
103
+
104
+ ```markdown
105
+ # Product Requirement Prompt: [Feature Name]
106
+
107
+ **Generated:** [timestamp]
108
+ **Original Request:** $ARGUMENTS
109
+ **Complexity Level:** [Simple/Moderate/Complex]
110
+ **Questions Asked:** [X/10]
111
+
112
+ ## Executive Summary
113
+
114
+ ### Goal
115
+ [Concise statement of what this PRP aims to achieve based on discovery]
116
+
117
+ ### Why
118
+ - **Business Value:** [Based on user needs discovered]
119
+ - **User Benefits:** [Who benefits and how]
120
+ - **Technical Benefits:** [System improvements]
121
+ - **Strategic Alignment:** [How it fits with existing functionality]
122
+
123
+ ### What
124
+ **Core Functionality:**
125
+ [Detailed explanation based on all gathered context including:]
126
+ - Primary features and capabilities
127
+ - User interaction patterns
128
+ - System behaviors and rules
129
+ - Integration requirements
130
+ - Scope and boundaries
131
+
132
+ ## Requirements Analysis
133
+
134
+ ### User Requirements Summary
135
+ [Synthesis of discovery answers and user needs]
136
+
137
+ ### Technical Requirements Summary
138
+ [Synthesis of technical context and codebase analysis]
139
+
140
+ ### Key Decisions Made
141
+ - [Decision 1]: [Reasoning based on questions/research]
142
+ - [Decision 2]: [Reasoning based on questions/research]
143
+ - [Decision 3]: [Reasoning based on questions/research]
144
+
145
+ ## Architecture & Implementation
146
+
147
+ ### Technical Overview
148
+ - **Architecture Pattern:** [Based on codebase analysis]
149
+ - **Technology Stack:** [Current stack + any additions needed]
150
+ - **Integration Points:** [Internal and external connections]
151
+ - **Data Flow:** [How information moves through the system]
152
+
153
+ ### Directory Structure
154
+
155
+ **Current Relevant Structure:**
156
+ ```
157
+
158
+ [Tree representation of current relevant files/directories]
159
+
160
+ ```
161
+
162
+ **Proposed Changes:**
163
+ ```
164
+
165
+ [Tree showing new/modified files with descriptions]
166
+ ├── [existing_dir]/
167
+ │ ├── [existing_file.ext]
168
+ │ ├── [new_file.ext] - [purpose and contents description]
169
+ │ └── [modified_file.ext] - [changes needed]
170
+
171
+ ```
172
+
173
+ ### Files to Reference
174
+ - **[file_path]** (existing) - [How to use as reference/pattern]
175
+ - **[documentation_url]** (external) - [Relevant sections for implementation]
176
+ - **[similar_feature_path]** (existing) - [Pattern to follow/extend]
177
+ - **[library_docs_url]** (external) - [Specific methods/approaches to use]
178
+
179
+ ### Implementation Specifications
180
+
181
+ #### [Component Category 1: e.g., Data Layer]
182
+ **File: `[file_path]`**
183
+ Purpose: [Specific role in the implementation]
184
+
185
+ ```[language]
186
+ [Sample code structure or key implementation patterns]
187
+ // Key considerations:
188
+ // - [Specific requirement from discovery]
189
+ // - [Pattern to follow from codebase]
190
+ // - [Best practice from research]
191
+ ```
192
+
193
+ #### [Component Category 2: e.g., Business Logic]
194
+
195
+ **File: `[file_path]`**
196
+ Purpose: [Specific role in the implementation]
197
+
198
+ ```[language]
199
+ [Sample code structure or key implementation patterns]
200
+ // Key considerations:
201
+ // - [User requirement addressed]
202
+ // - [Integration with existing systems]
203
+ // - [Error handling patterns]
204
+ ```
205
+
206
+ #### [Component Category 3: e.g., User Interface]
207
+
208
+ **File: `[file_path]`**
209
+ Purpose: [Specific role in the implementation]
210
+
211
+ ```[language]
212
+ [Sample code structure or key implementation patterns]
213
+ // Key considerations:
214
+ // - [User experience requirements]
215
+ // - [Accessibility standards]
216
+ // - [Responsive design needs]
217
+ ```
218
+
219
+ ## API/Endpoints Design
220
+
221
+ ### [Endpoint 1]
222
+
223
+ - **Method:** [GET/POST/PUT/DELETE]
224
+ - **Path:** [/api/path]
225
+ - **Purpose:** [What this endpoint accomplishes]
226
+ - **Parameters:**
227
+ - `param1` (type) - [description]
228
+ - `param2` (type) - [description]
229
+ - **Success Response:**
230
+
231
+ ```json
232
+ [Example response structure]
233
+ ```
234
+
235
+ - **Error Handling:** [Specific error cases and responses]
236
+
237
+ ### [Endpoint 2]
238
+
239
+ [Similar structure for additional endpoints]
240
+
241
+ ## Implementation Guidelines
242
+
243
+ ### [Technical Domain 1: e.g., Authentication & Security]
244
+
245
+ **Requirements from Discovery:**
246
+
247
+ - [Specific security requirement from questions]
248
+ - [User data protection needs]
249
+
250
+ **Implementation Approach:**
251
+
252
+ - [Specific security patterns to follow]
253
+ - [Authentication/authorization strategy]
254
+ - [Data validation and sanitization]
255
+ - [Error handling for security scenarios]
256
+
257
+ **Code References:**
258
+
259
+ - Follow patterns in `[existing_auth_file]`
260
+ - Use security helpers from `[security_utils_file]`
261
+
262
+ ### [Technical Domain 2: e.g., Data Management]
263
+
264
+ **Requirements from Discovery:**
265
+
266
+ - [Data persistence needs]
267
+ - [Performance requirements]
268
+
269
+ **Implementation Approach:**
270
+
271
+ - [Database/storage strategy]
272
+ - [Data validation rules]
273
+ - [Performance optimization techniques]
274
+ - [Backup and recovery considerations]
275
+
276
+ **Code References:**
277
+
278
+ - Extend patterns from `[existing_data_layer]`
279
+ - Use ORM/database helpers from `[db_utils_file]`
280
+
281
+ ### [Technical Domain 3: e.g., User Experience]
282
+
283
+ **Requirements from Discovery:**
284
+
285
+ - [UI/UX requirements from questions]
286
+ - [Accessibility needs]
287
+
288
+ **Implementation Approach:**
289
+
290
+ - [User interface design principles]
291
+ - [Interaction patterns to follow]
292
+ - [Responsive design requirements]
293
+ - [Error messaging and feedback]
294
+
295
+ **Code References:**
296
+
297
+ - Follow component patterns in `[ui_components_dir]`
298
+ - Use styling conventions from `[styles_dir]`
299
+
300
+ ## Validation & Testing Strategy
301
+
302
+ ### Functional Validation
303
+
304
+ **Based on User Requirements:**
305
+
306
+ - [ ] [Specific user workflow works as expected]
307
+ - [ ] [User interaction produces correct results]
308
+ - [ ] [Error scenarios are handled gracefully]
309
+
310
+ **Test Commands:**
311
+
312
+ ```bash
313
+ [Specific test commands for functional validation]
314
+ ```
315
+
316
+ ### Technical Validation
317
+
318
+ **Based on Technical Requirements:**
319
+
320
+ - [ ] [Performance benchmark met: response < Xms]
321
+ - [ ] [Security standard implemented: authentication required]
322
+ - [ ] [Integration working: external API connection established]
323
+
324
+ **Test Commands:**
325
+
326
+ ```bash
327
+ [Specific test commands for technical validation]
328
+ ```
329
+
330
+ ### User Acceptance Criteria
331
+
332
+ **Derived from Discovery Questions:**
333
+
334
+ - [ ] [Acceptance criterion based on Q1 answer]
335
+ - [ ] [Acceptance criterion based on Q2 answer]
336
+ - [ ] [Acceptance criterion based on Q3 answer]
337
+ - [ ] [Overall user satisfaction metric]
338
+
339
+ ## Implementation Roadmap
340
+
341
+ ### Checkpoint 1: Foundation Setup
342
+
343
+ **Tasks:**
344
+
345
+ - [ ] Set up basic project structure
346
+ - [ ] Implement core data models
347
+ - [ ] Create basic authentication framework
348
+
349
+ **Validation:**
350
+
351
+ ```bash
352
+ [Test command to verify foundation]
353
+ ```
354
+
355
+ **Expected:** [Specific expected outcome]
356
+
357
+ ### Checkpoint 2: Core Feature Implementation
358
+
359
+ **Tasks:**
360
+
361
+ - [ ] Implement primary business logic
362
+ - [ ] Create user interface components
363
+ - [ ] Set up API endpoints
364
+
365
+ **Validation:**
366
+
367
+ ```bash
368
+ [Test command to verify core features]
369
+ ```
370
+
371
+ **Expected:** [Specific expected outcome]
372
+
373
+ ### Checkpoint 3: Integration & Polish
374
+
375
+ **Tasks:**
376
+
377
+ - [ ] Integrate with existing systems
378
+ - [ ] Implement error handling and edge cases
379
+ - [ ] Performance optimization and testing
380
+
381
+ **Validation:**
382
+
383
+ ```bash
384
+ [Test command to verify complete implementation]
385
+ ```
386
+
387
+ **Expected:** [Specific expected outcome]
388
+
389
+ ## Research References
390
+
391
+ ### Best Practices Sources
392
+
393
+ - [URL/Resource 1]: [Key insights relevant to implementation]
394
+ - [URL/Resource 2]: [Specific techniques or patterns found]
395
+ - [URL/Resource 3]: [Standards or conventions to follow]
396
+
397
+ ### Technical Documentation
398
+
399
+ - [Library/Framework Docs]: [Specific sections relevant to implementation]
400
+ - [API Documentation]: [Integration details and examples]
401
+ - [Security Guidelines]: [Relevant security considerations]
402
+
403
+ ### Example Implementations
404
+
405
+ - [GitHub/StackOverflow URL]: [Pattern or approach to reference]
406
+ - [Code Example URL]: [Specific implementation technique]
407
+ - [Tutorial/Guide URL]: [Step-by-step process to follow]
408
+
409
+ ## Risk Assessment & Mitigation
410
+
411
+ ### Technical Risks
412
+
413
+ - **Risk:** [Potential technical challenge]
414
+ **Likelihood:** [High/Medium/Low]
415
+ **Impact:** [High/Medium/Low]
416
+ **Mitigation:** [Specific strategy to address]
417
+
418
+ ### Business Risks
419
+
420
+ - **Risk:** [Potential business/user impact]
421
+ **Likelihood:** [High/Medium/Low]
422
+ **Impact:** [High/Medium/Low]
423
+ **Mitigation:** [Specific strategy to address]
424
+
425
+ ### Dependencies & Assumptions
426
+
427
+ **External Dependencies:**
428
+
429
+ - [Dependency 1]: [Version and reliability considerations]
430
+ - [Dependency 2]: [Integration complexity and fallback options]
431
+
432
+ **Key Assumptions:**
433
+
434
+ - [ASSUMED]: [Assumption based on unanswered questions]
435
+ - [ASSUMED]: [Technical assumption based on codebase patterns]
436
+ - [ASSUMED]: [Business assumption based on discovery defaults]
437
+
438
+ ## Success Metrics & Monitoring
439
+
440
+ ### Key Performance Indicators
441
+
442
+ - **[Metric 1]:** [Target value] - [How to measure]
443
+ - **[Metric 2]:** [Target value] - [How to measure]
444
+ - **[Metric 3]:** [Target value] - [How to measure]
445
+
446
+ ### Monitoring Strategy
447
+
448
+ - [What to track automatically]
449
+ - [User feedback collection methods]
450
+ - [Performance monitoring approach]
451
+ - [Error tracking and alerting]
452
+
453
+ ### Success Definition
454
+
455
+ **MVP Success:**
456
+
457
+ - [ ] [Minimum viable implementation criteria]
458
+ - [ ] [Basic user satisfaction threshold]
459
+ - [ ] [Technical performance baseline]
460
+
461
+ **Full Success:**
462
+
463
+ - [ ] [Complete feature functionality]
464
+ - [ ] [Optimal user experience metrics]
465
+ - [ ] [Technical excellence standards]
466
+
467
+ ---
468
+
469
+ ## Quick Implementation Guide
470
+
471
+ ### Getting Started (Copy/Paste Ready)
472
+
473
+ ```bash
474
+ # 1. Set up development environment
475
+ [Specific setup commands based on tech stack]
476
+
477
+ # 2. Create basic structure
478
+ [Commands to create necessary directories/files]
479
+
480
+ # 3. Implement core logic
481
+ [Key implementation steps in order]
482
+
483
+ # 4. Test implementation
484
+ [Test commands to verify each step]
485
+ ```
486
+
487
+ ### Code Patterns to Follow
488
+
489
+ **Pattern 1: [Name]**
490
+
491
+ ```[language]
492
+ // Location: [existing_file_reference]
493
+ [Code example showing pattern to follow]
494
+ ```
495
+
496
+ **Pattern 2: [Name]**
497
+
498
+ ```[language]
499
+ // Location: [existing_file_reference]
500
+ [Code example showing pattern to follow]
501
+ ```
502
+
503
+ ### Common Pitfalls & Solutions
504
+
505
+ - **Pitfall:** [Common mistake in this type of implementation]
506
+ **Solution:** [Specific approach to avoid the mistake]
507
+ **Example:** [Code or configuration example]
508
+
509
+ ```
510
+
511
+ ## Execution Strategy
512
+
513
+ ### Request Analysis
514
+ 1. **Parse `$ARGUMENTS`** for complexity indicators:
515
+ - **Simple:** Contains specific technical terms, clear scope
516
+ - **Moderate:** General feature description with some context
517
+ - **Complex:** Vague goals, broad scope, unclear requirements
518
+
519
+ 2. **Determine Question Strategy:**
520
+ - **Simple:** Skip to research and generation
521
+ - **Moderate:** Ask 5 technical questions only
522
+ - **Complex:** Ask all 10 questions (5 discovery + 5 technical)
523
+
524
+ ### Research Integration
525
+ - **Always perform web research** for best practices and standards
526
+ - **Use codebase tools when available** for context and patterns
527
+ - **Synthesize findings** into actionable implementation guidance
528
+ - **Provide concrete examples** and reference materials
529
+
530
+ ### Output Quality Assurance
531
+ - **Ensure actionability:** Every section should be implementable
532
+ - **Maintain specificity:** Use actual file paths, concrete examples
533
+ - **Balance comprehensiveness with clarity:** Cover all aspects without overwhelming
534
+ - **Validate completeness:** Check that PRP provides sufficient context for implementation
@@ -0,0 +1,33 @@
1
+ # Refactor Code Command
2
+
3
+ Safely improve code structure while preserving functionality.
4
+
5
+ ## Core Principles
6
+
7
+ - **Test First**: Ensure tests exist and pass before starting
8
+ - **Small Steps**: Make incremental changes, test after each
9
+ - **Preserve Behavior**: External functionality must remain identical
10
+
11
+ ## Refactoring Process
12
+
13
+ 1. **Analyze** - Understand current code and identify improvement areas
14
+ 2. **Test Coverage** - Verify/add tests before changing anything
15
+ 3. **Plan** - Choose refactoring technique (extract method, rename, simplify conditionals)
16
+ 4. **Execute** - Make one small change at a time, running tests after each
17
+ 5. **Verify** - Ensure all tests pass and performance hasn't degraded
18
+
19
+ ## Key Improvements
20
+
21
+ - **Clarity**: Better names, simpler logic, shorter methods
22
+ - **Structure**: Remove duplication, improve separation of concerns, improve cohesion
23
+ - **Maintainability**: Apply patterns where beneficial, standardize error handling
24
+ - **Documentation**: Update comments and docs to match changes
25
+
26
+ ## Safety Checklist
27
+
28
+ - [ ] All tests passing before and after
29
+ - [ ] No functionality changes
30
+ - [ ] Code reviewed for quality
31
+ - [ ] Changes documented
32
+
33
+ Remember: Working code > perfect code. Commit frequently, refactor incrementally.
@@ -0,0 +1,3 @@
1
+ {
2
+ "includeCoAuthoredBy": false
3
+ }