kodit 0.5.0__py3-none-any.whl → 0.5.2__py3-none-any.whl

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 (70) hide show
  1. kodit/_version.py +2 -2
  2. kodit/app.py +10 -12
  3. kodit/application/factories/server_factory.py +78 -11
  4. kodit/application/services/commit_indexing_application_service.py +188 -31
  5. kodit/application/services/enrichment_query_service.py +95 -0
  6. kodit/config.py +3 -3
  7. kodit/domain/enrichments/__init__.py +1 -0
  8. kodit/domain/enrichments/architecture/__init__.py +1 -0
  9. kodit/domain/enrichments/architecture/architecture.py +20 -0
  10. kodit/domain/enrichments/architecture/physical/__init__.py +1 -0
  11. kodit/domain/enrichments/architecture/physical/discovery_notes.py +14 -0
  12. kodit/domain/enrichments/architecture/physical/formatter.py +11 -0
  13. kodit/domain/enrichments/architecture/physical/physical.py +17 -0
  14. kodit/domain/enrichments/development/__init__.py +1 -0
  15. kodit/domain/enrichments/development/development.py +18 -0
  16. kodit/domain/enrichments/development/snippet/__init__.py +1 -0
  17. kodit/domain/enrichments/development/snippet/snippet.py +21 -0
  18. kodit/domain/enrichments/enricher.py +17 -0
  19. kodit/domain/enrichments/enrichment.py +39 -0
  20. kodit/domain/enrichments/request.py +12 -0
  21. kodit/domain/enrichments/response.py +11 -0
  22. kodit/domain/enrichments/usage/__init__.py +1 -0
  23. kodit/domain/enrichments/usage/api_docs.py +19 -0
  24. kodit/domain/enrichments/usage/usage.py +18 -0
  25. kodit/domain/protocols.py +7 -6
  26. kodit/domain/services/enrichment_service.py +9 -30
  27. kodit/domain/services/physical_architecture_service.py +182 -0
  28. kodit/domain/tracking/__init__.py +1 -0
  29. kodit/domain/tracking/resolution_service.py +81 -0
  30. kodit/domain/tracking/trackable.py +21 -0
  31. kodit/domain/value_objects.py +6 -23
  32. kodit/infrastructure/api/v1/dependencies.py +15 -0
  33. kodit/infrastructure/api/v1/routers/commits.py +81 -0
  34. kodit/infrastructure/api/v1/routers/repositories.py +99 -0
  35. kodit/infrastructure/api/v1/schemas/enrichment.py +29 -0
  36. kodit/infrastructure/cloning/git/git_python_adaptor.py +71 -4
  37. kodit/infrastructure/enricher/__init__.py +1 -0
  38. kodit/infrastructure/enricher/enricher_factory.py +53 -0
  39. kodit/infrastructure/{enrichment/litellm_enrichment_provider.py → enricher/litellm_enricher.py} +20 -33
  40. kodit/infrastructure/{enrichment/local_enrichment_provider.py → enricher/local_enricher.py} +19 -24
  41. kodit/infrastructure/enricher/null_enricher.py +36 -0
  42. kodit/infrastructure/mappers/enrichment_mapper.py +83 -0
  43. kodit/infrastructure/mappers/snippet_mapper.py +20 -22
  44. kodit/infrastructure/physical_architecture/__init__.py +1 -0
  45. kodit/infrastructure/physical_architecture/detectors/__init__.py +1 -0
  46. kodit/infrastructure/physical_architecture/detectors/docker_compose_detector.py +336 -0
  47. kodit/infrastructure/physical_architecture/formatters/__init__.py +1 -0
  48. kodit/infrastructure/physical_architecture/formatters/narrative_formatter.py +149 -0
  49. kodit/infrastructure/slicing/api_doc_extractor.py +836 -0
  50. kodit/infrastructure/slicing/ast_analyzer.py +1128 -0
  51. kodit/infrastructure/slicing/slicer.py +56 -391
  52. kodit/infrastructure/sqlalchemy/enrichment_v2_repository.py +118 -0
  53. kodit/infrastructure/sqlalchemy/entities.py +46 -38
  54. kodit/infrastructure/sqlalchemy/git_branch_repository.py +22 -11
  55. kodit/infrastructure/sqlalchemy/git_commit_repository.py +23 -14
  56. kodit/infrastructure/sqlalchemy/git_repository.py +27 -17
  57. kodit/infrastructure/sqlalchemy/git_tag_repository.py +22 -11
  58. kodit/infrastructure/sqlalchemy/snippet_v2_repository.py +101 -106
  59. kodit/migrations/versions/19f8c7faf8b9_add_generic_enrichment_type.py +260 -0
  60. kodit/utils/dump_config.py +361 -0
  61. kodit/utils/dump_openapi.py +5 -6
  62. {kodit-0.5.0.dist-info → kodit-0.5.2.dist-info}/METADATA +1 -1
  63. {kodit-0.5.0.dist-info → kodit-0.5.2.dist-info}/RECORD +67 -32
  64. kodit/infrastructure/enrichment/__init__.py +0 -1
  65. kodit/infrastructure/enrichment/enrichment_factory.py +0 -52
  66. kodit/infrastructure/enrichment/null_enrichment_provider.py +0 -19
  67. /kodit/infrastructure/{enrichment → enricher}/utils.py +0 -0
  68. {kodit-0.5.0.dist-info → kodit-0.5.2.dist-info}/WHEEL +0 -0
  69. {kodit-0.5.0.dist-info → kodit-0.5.2.dist-info}/entry_points.txt +0 -0
  70. {kodit-0.5.0.dist-info → kodit-0.5.2.dist-info}/licenses/LICENSE +0 -0
@@ -1,10 +1,10 @@
1
1
  kodit/.gitignore,sha256=ztkjgRwL9Uud1OEi36hGQeDGk3OLK1NfDEO8YqGYy8o,11
2
2
  kodit/__init__.py,sha256=aEKHYninUq1yh6jaNfvJBYg-6fenpN132nJt1UU6Jxs,59
3
- kodit/_version.py,sha256=fvHpBU3KZKRinkriKdtAt3crenOyysELF-M9y3ozg3U,704
4
- kodit/app.py,sha256=0pNZ7z3ZV4i081Ak1OH1G_AlUCYvBxIa18YM7tHjbYE,5780
3
+ kodit/_version.py,sha256=LGYtjQ6cyPZC_N0AovMIeSYYDK21050nm3HYgDanQBM,704
4
+ kodit/app.py,sha256=niIfZiuuDp7mLzrBwQhx_FU7RvKfUALNV5y0o43miss,5802
5
5
  kodit/cli.py,sha256=QSTXIUDxZo3anIONY-grZi9_VSehWoS8QoVJZyOmWPQ,3086
6
6
  kodit/cli_utils.py,sha256=umkvt4kWNapk6db6RGz6bmn7oxgDpsW2Vo09MZ37OGg,2430
7
- kodit/config.py,sha256=dseNZmhYyeK2CF1QVUACQvsYqAI1cTe_NndeX5xSmmQ,7692
7
+ kodit/config.py,sha256=s3xm0ve_Sw5LllAA-PKzka3OF-ucQ4F0O8XqZcJ7-Yc,7667
8
8
  kodit/database.py,sha256=Pjxx0k431_lCqAJwE3FpLfs74qz1l5JFUQX1TD-wgSs,3264
9
9
  kodit/log.py,sha256=ZpM0eMo_DVGQqrHxg0VV6dMrN2AAmu_3C0I3G7p2nMw,8828
10
10
  kodit/mcp.py,sha256=PwMogCaYwEJ289y_8-LkLQrL00q2vesYRVxix6-4nuE,7166
@@ -13,18 +13,37 @@ kodit/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
13
  kodit/application/__init__.py,sha256=mH50wTpgP9dhbKztFsL8Dda9Hi18TSnMVxXtpp4aGOA,35
14
14
  kodit/application/factories/__init__.py,sha256=bU5CvEnaBePZ7JbkCOp1MGTNP752bnU2uEqmfy5FdRk,37
15
15
  kodit/application/factories/reporting_factory.py,sha256=3IpRiAw_olM69db-jbDAtjyGtd6Nh5o8jUJX3-rXCA8,1421
16
- kodit/application/factories/server_factory.py,sha256=GiUnZS2c4h5EvAFhc4fav_Y9J5Ye6I6N6VBbIX3ejdw,13299
16
+ kodit/application/factories/server_factory.py,sha256=m6tWMH9rSENqEEePpoWtHT51iQZ1IjZ2ZtvLugsbFmo,16456
17
17
  kodit/application/services/__init__.py,sha256=p5UQNw-H5sxQvs5Etfte93B3cJ1kKW6DNxK34uFvU1E,38
18
18
  kodit/application/services/code_search_application_service.py,sha256=sqMgyAw7e2d2FWroaonaL8G1Hwigb-Yku71dut3wOpQ,4963
19
- kodit/application/services/commit_indexing_application_service.py,sha256=lRNlrLyc9le6BQ5nxcF1W7nl4VP1bNuKHN9vccw4yQE,23346
19
+ kodit/application/services/commit_indexing_application_service.py,sha256=S5Gep4aXB9_1CWxs9xcIMnGmsrfrwJqvfDAHIPhoS1k,29860
20
+ kodit/application/services/enrichment_query_service.py,sha256=4wtBPwLbmgFCDgYam1D6x6EgSDGEJeQgAt_opzQz5rs,3102
20
21
  kodit/application/services/indexing_worker_service.py,sha256=8J8CaUdPd5nF6MyvJbJQpXeGkP2oClmFjZel1xBXELU,4065
21
22
  kodit/application/services/queue_service.py,sha256=nXplzN-nehPEeEvygzjJwWg4oQmu3SPodsZzY1Z3MtE,2509
22
23
  kodit/application/services/reporting.py,sha256=cwe-S-UpSOE6xSAEhoD1hi4hSWk1bW3YRLJ7463fIvM,3518
23
24
  kodit/application/services/sync_scheduler.py,sha256=Oy4Hw64SBkNmgXEIAJqXNkMM1nVGnwrP70-htrngCOU,2779
24
25
  kodit/domain/__init__.py,sha256=TCpg4Xx-oF4mKV91lo4iXqMEfBT1OoRSYnbG-zVWolA,66
25
26
  kodit/domain/errors.py,sha256=yIsgCjM_yOFIg8l7l-t7jM8pgeAX4cfPq0owf7iz3DA,106
26
- kodit/domain/protocols.py,sha256=Y6ZzmCsnZ94_9F-nUOMJRszNWDG6KymtG2jSRXEtTG0,9724
27
- kodit/domain/value_objects.py,sha256=GmeJ-9uUSBEanLYD5USYvvmge8jl6b2yc9ey_oOYAw8,18007
27
+ kodit/domain/protocols.py,sha256=7PyGVkSEdTYW0CuROmxZALHppMtkd6H0S7lyJs-mbAs,9794
28
+ kodit/domain/value_objects.py,sha256=PyoH1JUPdz95GGfASjWFnL1Kjhpn4hI2H_eCgpJku7I,17940
29
+ kodit/domain/enrichments/__init__.py,sha256=UpQMnMEHqaK3u3K-eJZOC28kfBPHALLAjFMdyYBXSPE,33
30
+ kodit/domain/enrichments/enricher.py,sha256=jnZ5X9RmZA8Acy-RBS2TbEoBg9QSm8AgleqwS9h5WlY,512
31
+ kodit/domain/enrichments/enrichment.py,sha256=C4TbzyZXWjZTIYDZFbM9VESU-1Se3tCfYflkTvnuXdc,993
32
+ kodit/domain/enrichments/request.py,sha256=6zBQhliDcdw8vS4sYPG2mqZSDSbQ5VzY1YQ-4bMkuQE,244
33
+ kodit/domain/enrichments/response.py,sha256=NzoMAKgs7c2yo9vvgWjQDo1yO0koKHbbY_SrsqsalAk,205
34
+ kodit/domain/enrichments/architecture/__init__.py,sha256=hBSliXMuixUZKtF-_zvcgQjnqrdyc4_SjYG2PTRFYpg,39
35
+ kodit/domain/enrichments/architecture/architecture.py,sha256=P229vroi9Hk3mvPDMVyInjJZiHNuh0AkWq0lCm0htvY,494
36
+ kodit/domain/enrichments/architecture/physical/__init__.py,sha256=4jc89cGxALWo8d3Xzfb5t-YjcCyDb1dDVGwTqVYBFmc,48
37
+ kodit/domain/enrichments/architecture/physical/discovery_notes.py,sha256=Wdv41rkUcMgRqXWB5Q9roaGMGFznH4V_I7mELUvDShw,636
38
+ kodit/domain/enrichments/architecture/physical/formatter.py,sha256=V_JvHsGDPPJ-TqGS-G61P3OS3xe0QpS2NLBEk5jX6Yc,351
39
+ kodit/domain/enrichments/architecture/physical/physical.py,sha256=BT7qR-Y0LZNBxx5AZpyAVZFmrXQdY1Q6HwgvCf8Y1AA,511
40
+ kodit/domain/enrichments/development/__init__.py,sha256=ls7zlKUpSpyLZRl-WTuaow9C68c0COkjcoEEEenpMxk,38
41
+ kodit/domain/enrichments/development/development.py,sha256=cFmtOnFUEHLxINn7FR4L4F8NAP_LgoPH8ulInFszZ2k,470
42
+ kodit/domain/enrichments/development/snippet/__init__.py,sha256=M5XVnlDgfqSE5UiAqkQwE1Mbr5Rg8zQpcspHKC3k_xU,34
43
+ kodit/domain/enrichments/development/snippet/snippet.py,sha256=nRsCcWpr6d2nves7u13gQWLWuen7w-W4znfjJ2N9SAs,603
44
+ kodit/domain/enrichments/usage/__init__.py,sha256=7W36rvCF6DH-VqW2RiqU6GMlkYYHZy9Wm0DL_3_fbRc,40
45
+ kodit/domain/enrichments/usage/api_docs.py,sha256=AvkywyWAd4_UOk4ayBxBOTjxAIJPyzYrAM4kOeiI0FE,457
46
+ kodit/domain/enrichments/usage/usage.py,sha256=A2GZCK_Xc5XS3R2aCoFnsmN0irViX0f_rK8QGmWm1tw,440
28
47
  kodit/domain/entities/__init__.py,sha256=Wh05xl-8y0j3e7m4KkFcwT7d2R_dlGwphJeOUodDkWw,8633
29
48
  kodit/domain/entities/git.py,sha256=b86MtNJgpJbZ_0z3E5oQX5bXNAeeAGnsC4SyH2DPGq0,5970
30
49
  kodit/domain/factories/__init__.py,sha256=0JnpqMDhhbuCG4UoEbdc_SM7RfTyOCpotTUB7GN6glU,32
@@ -32,10 +51,14 @@ kodit/domain/factories/git_repo_factory.py,sha256=4yaa-waMbzapNtldHG1oxBVMuI6JB-
32
51
  kodit/domain/services/__init__.py,sha256=Q1GhCK_PqKHYwYE4tkwDz5BIyXkJngLBBOHhzvX8nzo,42
33
52
  kodit/domain/services/bm25_service.py,sha256=-E5k0td2Ucs25qygWkJlY0fl7ZckOUe5xZnKYff3hF8,3631
34
53
  kodit/domain/services/embedding_service.py,sha256=al-vBd7H9KuCqZTWtC7q8CEDVXaIQhDhvMFV9IxWasU,4663
35
- kodit/domain/services/enrichment_service.py,sha256=XsXg3nV-KN4rqtC7Zro_ZiZ6RSq-1eA1MG6IDzFGyBA,1316
54
+ kodit/domain/services/enrichment_service.py,sha256=ziFaYqTYE5R2LTgirYDCniQxVuB1d3ZeONEalyaS_o0,858
36
55
  kodit/domain/services/git_repository_service.py,sha256=b-zAAFVxU22KKp2ACyKUgOpFKK7uar4PV5mqoN0Vgzk,15534
37
56
  kodit/domain/services/git_service.py,sha256=nVQCfXQ8kW-MAAoAd8bgSQmCdgPMVftUh5qd4du_bes,11352
57
+ kodit/domain/services/physical_architecture_service.py,sha256=0YgoAvbUxT_VwgIh_prftSYnil_XIqNPSoP0g37eIt4,7209
38
58
  kodit/domain/services/task_status_query_service.py,sha256=rI93pTMHeycigQryCWkimXSDzRqx_nJOr07UzPAacPE,736
59
+ kodit/domain/tracking/__init__.py,sha256=5FvxhDxB2Fpr8Dw8BLtjfPE1YUWn2rr3u7njQlqcosk,30
60
+ kodit/domain/tracking/resolution_service.py,sha256=w9OMgNv0ZS1DiduY-XFTA_pWK9vXgoEvEGLBl1vqRHE,2765
61
+ kodit/domain/tracking/trackable.py,sha256=-9UT-c5iDkg5LxLl-BEyysvrKgHoYfofuGUacjPhVk4,479
39
62
  kodit/infrastructure/__init__.py,sha256=HzEYIjoXnkz_i_MHO2e0sIVYweUcRnl2RpyBiTbMObU,28
40
63
  kodit/infrastructure/api/__init__.py,sha256=U0TSMPpHrlj1zbAtleuZjU3nXGwudyMe-veNBgvODwM,34
41
64
  kodit/infrastructure/api/client/__init__.py,sha256=8MjEc6cHCqiI-LtIyng3uKD7a2wUaR-QUdIAePYyIRg,292
@@ -46,15 +69,16 @@ kodit/infrastructure/api/client/search_client.py,sha256=f4mM5ZJpAuR7w-i9yASbh4SY
46
69
  kodit/infrastructure/api/middleware/__init__.py,sha256=6m7eE5k5buboJbuzyX5E9-Tf99yNwFaeJF0f_6HwLyM,30
47
70
  kodit/infrastructure/api/middleware/auth.py,sha256=QSnMcMLWvfumqN1iG4ePj2vEZb2Dlsgr-WHptkEkkhE,1064
48
71
  kodit/infrastructure/api/v1/__init__.py,sha256=xWtkR3UP7daksCXW_Eyvcqsh091OREqfBPnlFs027_o,22
49
- kodit/infrastructure/api/v1/dependencies.py,sha256=S0U1oY0CH8rQpF685d1eT2TE6KgbCWsav1E4HIss5KQ,4457
72
+ kodit/infrastructure/api/v1/dependencies.py,sha256=VZhSBgPF1lTc7UnayXl5RsHkA6EvHkGl8NLHPUedjU0,4875
50
73
  kodit/infrastructure/api/v1/routers/__init__.py,sha256=pz_7kFwHcxztbTiFI-57Q2tCAllI7u0fgTP4rpQeUoQ,22
51
- kodit/infrastructure/api/v1/routers/commits.py,sha256=ytlzRzUV6nv-g-Q9J1mKOab1DxX7EfFJbOMKxuxyFDE,8856
74
+ kodit/infrastructure/api/v1/routers/commits.py,sha256=osjmm2Po-MOshD7zBv01C12UcYukkaKATtjEa3hSAJU,11624
52
75
  kodit/infrastructure/api/v1/routers/queue.py,sha256=srZmOCZqvcCBlDcPYt1ZWhwVhvVWARWJ3Qp4Tn5eK4Y,2148
53
- kodit/infrastructure/api/v1/routers/repositories.py,sha256=pxdCCMQWAsezkwyj-rNG-eQbtlW8wMaXZwfzHmae3sI,9328
76
+ kodit/infrastructure/api/v1/routers/repositories.py,sha256=fDc73mt9tc1oqa35LGXr8WpG3zIS6QNuQu9qu15l0I0,12758
54
77
  kodit/infrastructure/api/v1/routers/search.py,sha256=eMlofqcy9xWCsE9ugfBZHtcPo1hb-A06_Xfv4XR3FfY,3187
55
78
  kodit/infrastructure/api/v1/schemas/__init__.py,sha256=capaxPe7y28pWj6Pu5hfTOxLnVL9pwW-hJu7ZdN2klw,41
56
79
  kodit/infrastructure/api/v1/schemas/commit.py,sha256=UVGkwZNjwUMiitUbFws1_mlZN7IALq99P99HJCg5h2c,1794
57
80
  kodit/infrastructure/api/v1/schemas/context.py,sha256=E6gra1uByM8FYmIXlJeaM59j5VhG4M5E9MzgsGWWJHs,317
81
+ kodit/infrastructure/api/v1/schemas/enrichment.py,sha256=pV9VnVqnr9Sud1CYdZOS97GyyL3y5aBjTxG5tlM7X2s,616
58
82
  kodit/infrastructure/api/v1/schemas/queue.py,sha256=oa4wumWOvGzi53Q3cjwIrQJRoentp5nsQSsaj-l-B4U,652
59
83
  kodit/infrastructure/api/v1/schemas/repository.py,sha256=BRVXlajqQDxoi9RGPeO434RQvyxFYTXp68V7L3wwYXE,3192
60
84
  kodit/infrastructure/api/v1/schemas/search.py,sha256=IrqPvIH4IA1QBfmWkD33JqhOmhOJVaZRvOfrNjzowCg,5768
@@ -65,7 +89,7 @@ kodit/infrastructure/bm25/__init__.py,sha256=DmGbrEO34FOJy4e685BbyxLA7gPW1eqs2gA
65
89
  kodit/infrastructure/bm25/local_bm25_repository.py,sha256=YE3pUkPS5n1JNu6oSM_HRBOXM8U04HiY8dMMZCf9CMQ,5197
66
90
  kodit/infrastructure/bm25/vectorchord_bm25_repository.py,sha256=LjbUPj4nPMb9pdEudThUbZTmQjhxvpN314EzKGpXfi0,8621
67
91
  kodit/infrastructure/cloning/git/__init__.py,sha256=20ePcp0qE6BuLsjsv4KYB1DzKhMIMsPXwEqIEZtjTJs,34
68
- kodit/infrastructure/cloning/git/git_python_adaptor.py,sha256=8gAx_45uuBrC_3yw6Bc78J2xwuTLidw-5sftaQIkEKE,17199
92
+ kodit/infrastructure/cloning/git/git_python_adaptor.py,sha256=X0cyoBz3AWeY4lEmAyAqD4i3bXhSBh0ggKng1ERoswI,19944
69
93
  kodit/infrastructure/cloning/git/working_copy.py,sha256=sPKQN-A1gDVV_QJISNNP4PqxRWxyj5owv5tvWfXMl44,3909
70
94
  kodit/infrastructure/embedding/__init__.py,sha256=F-8nLlWAerYJ0MOIA4tbXHLan8bW5rRR84vzxx6tRKI,39
71
95
  kodit/infrastructure/embedding/embedding_factory.py,sha256=6nP8HKKlNWmDE8ATT5tNQHgPqeTDUMpRuWwn2rsfrOQ,3446
@@ -76,12 +100,12 @@ kodit/infrastructure/embedding/embedding_providers/batching.py,sha256=a8CL9PX2VL
76
100
  kodit/infrastructure/embedding/embedding_providers/hash_embedding_provider.py,sha256=V6OdCuWyQQOvo3OJGRi-gBKDApIcrELydFg7T696P5s,2257
77
101
  kodit/infrastructure/embedding/embedding_providers/litellm_embedding_provider.py,sha256=9Q5he_MI8xXENODwCvYCbhVawTjTv1bArGQrmxoWLas,5297
78
102
  kodit/infrastructure/embedding/embedding_providers/local_embedding_provider.py,sha256=9aLV1Zg4KMhYWlGRwgAUtswW4aIabNqbsipWhAn64RI,4133
79
- kodit/infrastructure/enrichment/__init__.py,sha256=8acZKNzql8Fs0lceFu9U3KoUrOptRBtVIxr_Iw6lz3Y,40
80
- kodit/infrastructure/enrichment/enrichment_factory.py,sha256=NFGY6u9SJ_GOgiB_RtotbQmte0kGFQUymwzZCbbsx34,1530
81
- kodit/infrastructure/enrichment/litellm_enrichment_provider.py,sha256=SN1l93-dxMvwNSKRkuPgd9dGoebuwur_dVKhHA27xkI,5667
82
- kodit/infrastructure/enrichment/local_enrichment_provider.py,sha256=6WVVt5Nlq8mDGSRCOTjjVPMDCUyMgW-cxCzZv3WfP7k,4589
83
- kodit/infrastructure/enrichment/null_enrichment_provider.py,sha256=DhZkJBnkvXg_XSAs-oKiFnKqYFPnmTl3ikdxrqeEfbc,713
84
- kodit/infrastructure/enrichment/utils.py,sha256=FE9UCuxxzSdoHrmAC8Si2b5D6Nf6kVqgM1yjUVyCvW0,930
103
+ kodit/infrastructure/enricher/__init__.py,sha256=5KCwKHnQ3i_-1s5Q8kquUY_Y0BktJMGVrsDJLtTlDNc,55
104
+ kodit/infrastructure/enricher/enricher_factory.py,sha256=R2UlmCrMW55nvPHHf5Aj0soEBr7T_XU1dgDWwqs49Cg,1593
105
+ kodit/infrastructure/enricher/litellm_enricher.py,sha256=q3V6frb29yzmodzqQ6TDovbSmittiwHtoPNYy5x4dLQ,4866
106
+ kodit/infrastructure/enricher/local_enricher.py,sha256=AUzmpjlPK7LGaX5DO8thmvfdwNPLLHCB4W5wyudqk3k,4317
107
+ kodit/infrastructure/enricher/null_enricher.py,sha256=Vu3agCTXROzYl2MzM8gVgH2rMw_FHIkgH-S1vijKw_0,1048
108
+ kodit/infrastructure/enricher/utils.py,sha256=FE9UCuxxzSdoHrmAC8Si2b5D6Nf6kVqgM1yjUVyCvW0,930
85
109
  kodit/infrastructure/git/__init__.py,sha256=0iMosFzudj4_xNIMe2SRbV6l5bWqkjnUsZoFsoZFuM8,33
86
110
  kodit/infrastructure/git/git_utils.py,sha256=5lH94AcF7Hac4h6kBzo_B9pzC1S6AK2-Dy13gz--Zf0,781
87
111
  kodit/infrastructure/ignore/__init__.py,sha256=VzFv8XOzHmsu0MEGnWVSF6KsgqLBmvHlRqAkT1Xb1MY,36
@@ -89,24 +113,33 @@ kodit/infrastructure/ignore/ignore_pattern_provider.py,sha256=zdxun3GodLfXxyssBK
89
113
  kodit/infrastructure/indexing/__init__.py,sha256=7UPRa2jwCAsa0Orsp6PqXSF8iIXJVzXHMFmrKkI9yH8,38
90
114
  kodit/infrastructure/indexing/fusion_service.py,sha256=VJiSmE1XujtaZhi1lpkGwjUKdqI-XVRNDSRHOeJWMlo,1790
91
115
  kodit/infrastructure/mappers/__init__.py,sha256=QPHOjNreXmBPPovZ6elnYFS0vD-IsmrGl4TT01FCKro,77
116
+ kodit/infrastructure/mappers/enrichment_mapper.py,sha256=kc8TFmjKvhKrKo0UJ8t-wamg8Db1jNNAhYqbfU1SzdY,3143
92
117
  kodit/infrastructure/mappers/git_mapper.py,sha256=AhFqPxGT7ZeFcUui7P1XnqDuVhooSSDoGuzwIDY5CGc,8214
93
- kodit/infrastructure/mappers/snippet_mapper.py,sha256=aI-ppCzcLGWmDkRZSuLH29T_h_ZAlqHd2fToLjfhzSg,4256
118
+ kodit/infrastructure/mappers/snippet_mapper.py,sha256=za9FUB3s_K4xszHWJAz8nqABMUvaj_haqDPqppclz4g,4035
94
119
  kodit/infrastructure/mappers/task_mapper.py,sha256=R4-hVJD0-wHP51MbX9yiWSBBdeCJ7UiZZWTJwYp2gK8,1511
95
120
  kodit/infrastructure/mappers/task_status_mapper.py,sha256=5lo_jS2EKYg4czOOAFmrWfQl3OojIokwpzhaR3b1wE0,3433
121
+ kodit/infrastructure/physical_architecture/__init__.py,sha256=DLfszH6h_bRgksDS_TtzJ13Dfa5TuFas9eI99DdZbF4,54
122
+ kodit/infrastructure/physical_architecture/detectors/__init__.py,sha256=z8JzHOy8MyOwK2i2o5Eh-H2k-tnVAhsA6JLUkWE8rTY,63
123
+ kodit/infrastructure/physical_architecture/detectors/docker_compose_detector.py,sha256=NQWN24eV_wl3tDMsCnL2FbcBsGz2y-4pEfASBejeAKg,13245
124
+ kodit/infrastructure/physical_architecture/formatters/__init__.py,sha256=2OCvhVKGUTHusxlsqRbLk8cNtzZ9HrGqnKYcozuLOE0,81
125
+ kodit/infrastructure/physical_architecture/formatters/narrative_formatter.py,sha256=43bERS_iGhL94pkUV2Bn5vjeaHPxjHatuDh7dHreh_M,5713
96
126
  kodit/infrastructure/reporting/__init__.py,sha256=4Qu38YbDOaeDqLdT_CbK8tOZHTKGrHRXncVKlGRzOeQ,32
97
127
  kodit/infrastructure/reporting/db_progress.py,sha256=VVaCKjC_UFwdRptXbBroG9qhXCxI4bZmElf1PMsBzWA,819
98
128
  kodit/infrastructure/reporting/log_progress.py,sha256=yhzkjYulEn_sfpKwHKi--HdQHLb4h4uEolhFYqvdHS8,1261
99
129
  kodit/infrastructure/reporting/telemetry_progress.py,sha256=uT9mNyF2bQ83a0bQvUAXXsidvTievc16DUYKUN0X4tY,581
100
130
  kodit/infrastructure/slicing/__init__.py,sha256=x7cjvHA9Ay2weUYE_dpdAaPaStp20M-4U2b5MLgT5KM,37
101
- kodit/infrastructure/slicing/slicer.py,sha256=WoYzFIXTvfBfgy4H2Rfn4gku5AjoHtzFjnUK6O4IB3Y,35842
131
+ kodit/infrastructure/slicing/api_doc_extractor.py,sha256=XZF3GdQQRdDr0f6rq_3gJZ54ZsSceAdIgqwSQjebojc,29480
132
+ kodit/infrastructure/slicing/ast_analyzer.py,sha256=Kd42XixjTmWWroQEmzwUSoRMiMIdNaLPXikQxrSHJ8M,43556
133
+ kodit/infrastructure/slicing/slicer.py,sha256=EDYkoLf6RsTVloudZUq6LS5X10JJAHWcKWx3pllYTFU,21975
102
134
  kodit/infrastructure/sqlalchemy/__init__.py,sha256=UXPMSF_hgWaqr86cawRVqM8XdVNumQyyK5B8B97GnlA,33
103
135
  kodit/infrastructure/sqlalchemy/embedding_repository.py,sha256=2JCDc-nSau6B3GA-e1rGian5zfJZpgJZ0TbN5hc1nRE,8866
104
- kodit/infrastructure/sqlalchemy/entities.py,sha256=7Prl-FvdW9BqOaM_sxJ-bbDdgjnJsUCK3P7uiM3WYzo,17829
105
- kodit/infrastructure/sqlalchemy/git_branch_repository.py,sha256=UweUWquXUNrcOXfwx_VRoVfJHhNbBYNmyZV8CdflNbU,10915
106
- kodit/infrastructure/sqlalchemy/git_commit_repository.py,sha256=Wpj3Orv04iCFwcc-b1e6GNNH1Nv2MD1qzp2aEB5aq5s,13775
107
- kodit/infrastructure/sqlalchemy/git_repository.py,sha256=QrauLT4ZUBAojnMMD9paMqskEalnmuIVCSubySgLxNM,10070
108
- kodit/infrastructure/sqlalchemy/git_tag_repository.py,sha256=bi9uJpEFLwjpCJ-IGxKUuDfF-9HHG-z2bMOpV81iWRM,10343
109
- kodit/infrastructure/sqlalchemy/snippet_v2_repository.py,sha256=B4TVjx1pRdPVJAX90XoVjC5i7jDEXPebrac2J3_Zqlw,19634
136
+ kodit/infrastructure/sqlalchemy/enrichment_v2_repository.py,sha256=SBi2YU3yqv0YpCZKc8sTURQfySBAhygTqB0oXcqcT7M,4336
137
+ kodit/infrastructure/sqlalchemy/entities.py,sha256=TfRkQoCBa77dr6vrj0fYlXkNuXkjxe4zcC21i2BBq0Q,18155
138
+ kodit/infrastructure/sqlalchemy/git_branch_repository.py,sha256=UWug5qb6HPljcm_2cBdW_4FlsJhDxtx3wyt4VUGAjXs,11515
139
+ kodit/infrastructure/sqlalchemy/git_commit_repository.py,sha256=FgHwwUBVKW2BQtM5qfhOU7gZNhK_jMMSGy4FJ_cP8CE,14362
140
+ kodit/infrastructure/sqlalchemy/git_repository.py,sha256=LnqhN80xtpSyH69n16hYvot9XRRYoFQUpIV_zlc7-CQ,10590
141
+ kodit/infrastructure/sqlalchemy/git_tag_repository.py,sha256=rOGQTZy1cFuGnkGSdmGcN3TagEVpksIDN1IauODdcIA,10943
142
+ kodit/infrastructure/sqlalchemy/snippet_v2_repository.py,sha256=COsj9mLTk25vwovY09m-hj5fw9hoy363N38DdME35HM,19203
110
143
  kodit/infrastructure/sqlalchemy/task_repository.py,sha256=ZrPKxw0IbIcfcP_AOtyEJ8TDhVjODTI5xQg5ZhGkF8M,4072
111
144
  kodit/infrastructure/sqlalchemy/task_status_repository.py,sha256=WouXNu8iZSzaKPqKXrUOEO_lskHbPtt4_kEgmjaiZcU,4014
112
145
  kodit/infrastructure/sqlalchemy/unit_of_work.py,sha256=MAF8sBr-T5crSWx1wvjf00xboPNz9YMyzRfaKSLCbzQ,1970
@@ -115,6 +148,7 @@ kodit/migrations/__init__.py,sha256=lP5MuwlyWRMO6UcDWnQcQ3G-GYHcFb6rl9gYPHJ1sjo,
115
148
  kodit/migrations/env.py,sha256=7lJWv-fp2bV9Mb4dfgVh1h0IYGq3YQJaZuNdiBT7WmY,2394
116
149
  kodit/migrations/script.py.mako,sha256=zWziKtiwYKEWuwPV_HBNHwa9LCT45_bi01-uSNFaOOE,703
117
150
  kodit/migrations/versions/04b80f802e0c_foreign_key_review.py,sha256=zZjiRLx16JBVOOuY912S_rest83kgnEN3AXM3TCPdOs,4129
151
+ kodit/migrations/versions/19f8c7faf8b9_add_generic_enrichment_type.py,sha256=5uFUwzscBslU7jGeu4WJ_To_mqrg77V8ML4c2FiL9pQ,9458
118
152
  kodit/migrations/versions/4073b33f9436_add_file_processing_flag.py,sha256=c8dMcKQ-BBBr_2-92eJZFS3Fwe3__B2eNqvQeMZHs0w,917
119
153
  kodit/migrations/versions/4552eb3f23ce_add_summary.py,sha256=WjyBQzFK8IXuvta15YBE23yaTMM1rZCXvPxW98MStng,870
120
154
  kodit/migrations/versions/7c3bbc2ab32b_add_embeddings_table.py,sha256=JL6lxaYtGbXolrkNEujg5SWj3_aQBWReYP3I4vcibdo,1755
@@ -127,11 +161,12 @@ kodit/migrations/versions/b9cd1c3fd762_add_task_status.py,sha256=7cgdMKu4OBidL0E
127
161
  kodit/migrations/versions/c3f5137d30f5_index_all_the_things.py,sha256=r7ukmJ_axXLAWewYx-F1fEmZ4JbtFd37i7cSb0tq3y0,1722
128
162
  kodit/migrations/versions/f9e5ef5e688f_add_git_commits_number.py,sha256=tI2GoZthhdXm8yyZqnpmfuFoUqbXDKh-tpbPHfJrXco,1078
129
163
  kodit/utils/__init__.py,sha256=DPEB1i8evnLF4Ns3huuAYg-0pKBFKUFuiDzOKG9r-sw,33
130
- kodit/utils/dump_openapi.py,sha256=0zjNvR03K97al5_Yjpn8yPjCjmAY_xrBJLhAp4_TLGs,1348
164
+ kodit/utils/dump_config.py,sha256=dd5uPgqh6ATk02Zt59t2JFKR9X17YWjHudV0nE8VktE,11869
165
+ kodit/utils/dump_openapi.py,sha256=EasYOnnpeabwb_sTKQUBrrOLHjPcOFQ7Zx0YKpx9fmM,1239
131
166
  kodit/utils/generate_api_paths.py,sha256=TMtx9v55podDfUmiWaHgJHLtEWLV2sLL-5ejGFMPzAo,3569
132
167
  kodit/utils/path_utils.py,sha256=UB_81rx7Y1G1jalVv2PX8miwaprBbcqEdtoQ3hPT3kU,2451
133
- kodit-0.5.0.dist-info/METADATA,sha256=IlJ3uKktEFtQl_-eDiqj8KYCiYGEb_EeBMN2a6HfG9Q,7703
134
- kodit-0.5.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
135
- kodit-0.5.0.dist-info/entry_points.txt,sha256=hoTn-1aKyTItjnY91fnO-rV5uaWQLQ-Vi7V5et2IbHY,40
136
- kodit-0.5.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
137
- kodit-0.5.0.dist-info/RECORD,,
168
+ kodit-0.5.2.dist-info/METADATA,sha256=gcQYxwPZ5mx36u7ejs76xkZSBKUEnyGzDc5qJAcrrlQ,7703
169
+ kodit-0.5.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
170
+ kodit-0.5.2.dist-info/entry_points.txt,sha256=hoTn-1aKyTItjnY91fnO-rV5uaWQLQ-Vi7V5et2IbHY,40
171
+ kodit-0.5.2.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
172
+ kodit-0.5.2.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- """Infrastructure enrichment module."""
@@ -1,52 +0,0 @@
1
- """Enrichment factory for creating enrichment domain services."""
2
-
3
- from kodit.config import AppContext, Endpoint
4
- from kodit.domain.services.enrichment_service import (
5
- EnrichmentDomainService,
6
- EnrichmentProvider,
7
- )
8
- from kodit.infrastructure.enrichment.litellm_enrichment_provider import (
9
- LiteLLMEnrichmentProvider,
10
- )
11
- from kodit.infrastructure.enrichment.local_enrichment_provider import (
12
- LocalEnrichmentProvider,
13
- )
14
- from kodit.log import log_event
15
-
16
-
17
- def _get_endpoint_configuration(app_context: AppContext) -> Endpoint | None:
18
- """Get the endpoint configuration for the enrichment service.
19
-
20
- Args:
21
- app_context: The application context.
22
-
23
- Returns:
24
- The endpoint configuration or None.
25
-
26
- """
27
- return app_context.enrichment_endpoint or None
28
-
29
-
30
- def enrichment_domain_service_factory(
31
- app_context: AppContext,
32
- ) -> EnrichmentDomainService:
33
- """Create an enrichment domain service.
34
-
35
- Args:
36
- app_context: The application context.
37
-
38
- Returns:
39
- An enrichment domain service instance.
40
-
41
- """
42
- endpoint = _get_endpoint_configuration(app_context)
43
-
44
- enrichment_provider: EnrichmentProvider | None = None
45
- if endpoint:
46
- log_event("kodit.enrichment", {"provider": "litellm"})
47
- enrichment_provider = LiteLLMEnrichmentProvider(endpoint=endpoint)
48
- else:
49
- log_event("kodit.enrichment", {"provider": "local"})
50
- enrichment_provider = LocalEnrichmentProvider()
51
-
52
- return EnrichmentDomainService(enrichment_provider=enrichment_provider)
@@ -1,19 +0,0 @@
1
- """Null enrichment provider for testing."""
2
-
3
- import re
4
- from collections.abc import AsyncGenerator
5
-
6
- from kodit.domain.services.enrichment_service import EnrichmentProvider
7
- from kodit.domain.value_objects import EnrichmentRequest, EnrichmentResponse
8
-
9
-
10
- class NullEnrichmentProvider(EnrichmentProvider):
11
- """Null enrichment provider that returns empty responses."""
12
-
13
- async def enrich(
14
- self, requests: list[EnrichmentRequest]
15
- ) -> AsyncGenerator[EnrichmentResponse, None]:
16
- """Only keep alphabetic characters."""
17
- for request in requests:
18
- response = re.sub(r"[^a-zA-Z]", " ", request.text)
19
- yield EnrichmentResponse(snippet_id=request.snippet_id, text=response)
File without changes
File without changes