codedna 0.3.0__tar.gz → 0.3.1__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 (360) hide show
  1. {codedna-0.3.0 → codedna-0.3.1}/CHANGELOG.md +18 -0
  2. {codedna-0.3.0 → codedna-0.3.1}/PKG-INFO +1 -1
  3. {codedna-0.3.0 → codedna-0.3.1}/codedna/__init__.py +1 -1
  4. {codedna-0.3.0 → codedna-0.3.1}/codedna/cli.py +185 -0
  5. {codedna-0.3.0 → codedna-0.3.1}/pyproject.toml +1 -1
  6. {codedna-0.3.0 → codedna-0.3.1}/.env.example +0 -0
  7. {codedna-0.3.0 → codedna-0.3.1}/.github/CODEOWNERS +0 -0
  8. {codedna-0.3.0 → codedna-0.3.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  9. {codedna-0.3.0 → codedna-0.3.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  10. {codedna-0.3.0 → codedna-0.3.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  11. {codedna-0.3.0 → codedna-0.3.1}/.github/dependabot.yml +0 -0
  12. {codedna-0.3.0 → codedna-0.3.1}/.github/workflows/codedna.yml +0 -0
  13. {codedna-0.3.0 → codedna-0.3.1}/.github/workflows/codeql.yml +0 -0
  14. {codedna-0.3.0 → codedna-0.3.1}/.github/workflows/test.yml +0 -0
  15. {codedna-0.3.0 → codedna-0.3.1}/.gitignore +0 -0
  16. {codedna-0.3.0 → codedna-0.3.1}/.python-version +0 -0
  17. {codedna-0.3.0 → codedna-0.3.1}/CONTRIBUTING.md +0 -0
  18. {codedna-0.3.0 → codedna-0.3.1}/LICENSE +0 -0
  19. {codedna-0.3.0 → codedna-0.3.1}/README.md +0 -0
  20. {codedna-0.3.0 → codedna-0.3.1}/SECURITY.md +0 -0
  21. {codedna-0.3.0 → codedna-0.3.1}/codedna/ai.py +0 -0
  22. {codedna-0.3.0 → codedna-0.3.1}/codedna/ai_box.py +0 -0
  23. {codedna-0.3.0 → codedna-0.3.1}/codedna/ai_fingerprint.py +0 -0
  24. {codedna-0.3.0 → codedna-0.3.1}/codedna/analyzer.py +0 -0
  25. {codedna-0.3.0 → codedna-0.3.1}/codedna/api.py +0 -0
  26. {codedna-0.3.0 → codedna-0.3.1}/codedna/auth.py +0 -0
  27. {codedna-0.3.0 → codedna-0.3.1}/codedna/bus_factor.py +0 -0
  28. {codedna-0.3.0 → codedna-0.3.1}/codedna/db.py +0 -0
  29. {codedna-0.3.0 → codedna-0.3.1}/codedna/git_hook.py +0 -0
  30. {codedna-0.3.0 → codedna-0.3.1}/codedna/integrations/__init__.py +0 -0
  31. {codedna-0.3.0 → codedna-0.3.1}/codedna/integrations/github_bot.py +0 -0
  32. {codedna-0.3.0 → codedna-0.3.1}/codedna/integrations/jira.py +0 -0
  33. {codedna-0.3.0 → codedna-0.3.1}/codedna/integrations/lemonsqueezy.py +0 -0
  34. {codedna-0.3.0 → codedna-0.3.1}/codedna/interview.py +0 -0
  35. {codedna-0.3.0 → codedna-0.3.1}/codedna/onboarding.py +0 -0
  36. {codedna-0.3.0 → codedna-0.3.1}/codedna/plan.py +0 -0
  37. {codedna-0.3.0 → codedna-0.3.1}/codedna/protection.py +0 -0
  38. {codedna-0.3.0 → codedna-0.3.1}/codedna/rate_limit.py +0 -0
  39. {codedna-0.3.0 → codedna-0.3.1}/codedna/scorer.py +0 -0
  40. {codedna-0.3.0 → codedna-0.3.1}/codedna/sprint_health.py +0 -0
  41. {codedna-0.3.0 → codedna-0.3.1}/codedna/survey.py +0 -0
  42. {codedna-0.3.0 → codedna-0.3.1}/codedna/tech_debt.py +0 -0
  43. {codedna-0.3.0 → codedna-0.3.1}/dashboard/.env.local.example +0 -0
  44. {codedna-0.3.0 → codedna-0.3.1}/dashboard/.gitignore +0 -0
  45. {codedna-0.3.0 → codedna-0.3.1}/dashboard/README.md +0 -0
  46. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/ai-compare/page.tsx +0 -0
  47. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/api/auth/login/route.ts +0 -0
  48. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/api/auth/logout/route.ts +0 -0
  49. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/api/auth/me/route.ts +0 -0
  50. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/api/auth/register/route.ts +0 -0
  51. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/api/billing/checkout/route.ts +0 -0
  52. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/billing/page.tsx +0 -0
  53. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/bus-factor/page.tsx +0 -0
  54. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/commits/page.tsx +0 -0
  55. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/debt/page.tsx +0 -0
  56. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/favicon.ico +0 -0
  57. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/files/page.tsx +0 -0
  58. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/fonts/GeistMonoVF.woff +0 -0
  59. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/fonts/GeistVF.woff +0 -0
  60. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/globals.css +0 -0
  61. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/interview/page.tsx +0 -0
  62. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/layout.tsx +0 -0
  63. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/login/page.tsx +0 -0
  64. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/onboarding/page.tsx +0 -0
  65. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/page.tsx +0 -0
  66. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/pricing/page.tsx +0 -0
  67. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/protected/page.tsx +0 -0
  68. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/register/page.tsx +0 -0
  69. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/settings/integrations/page.tsx +0 -0
  70. {codedna-0.3.0 → codedna-0.3.1}/dashboard/app/sprints/page.tsx +0 -0
  71. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/AuthProvider.tsx +0 -0
  72. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/ClientProviders.tsx +0 -0
  73. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/CommitTable.tsx +0 -0
  74. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/CostInfoTooltip.tsx +0 -0
  75. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/ErrorBanner.tsx +0 -0
  76. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/FeatureGate.tsx +0 -0
  77. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/FileHeatmap.tsx +0 -0
  78. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/LanguageSwitcher.tsx +0 -0
  79. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/NavClient.tsx +0 -0
  80. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/OverviewTitles.tsx +0 -0
  81. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/QuickInsights.tsx +0 -0
  82. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/RiskBadge.tsx +0 -0
  83. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/SummaryCards.tsx +0 -0
  84. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/UnderstandingChart.tsx +0 -0
  85. {codedna-0.3.0 → codedna-0.3.1}/dashboard/components/UpgradeBanner.tsx +0 -0
  86. {codedna-0.3.0 → codedna-0.3.1}/dashboard/lib/api.ts +0 -0
  87. {codedna-0.3.0 → codedna-0.3.1}/dashboard/lib/auth.ts +0 -0
  88. {codedna-0.3.0 → codedna-0.3.1}/dashboard/lib/i18n/en.ts +0 -0
  89. {codedna-0.3.0 → codedna-0.3.1}/dashboard/lib/i18n/index.tsx +0 -0
  90. {codedna-0.3.0 → codedna-0.3.1}/dashboard/lib/i18n/tr.ts +0 -0
  91. {codedna-0.3.0 → codedna-0.3.1}/dashboard/lib/plan.ts +0 -0
  92. {codedna-0.3.0 → codedna-0.3.1}/dashboard/next-env.d.ts +0 -0
  93. {codedna-0.3.0 → codedna-0.3.1}/dashboard/next.config.mjs +0 -0
  94. {codedna-0.3.0 → codedna-0.3.1}/dashboard/package-lock.json +0 -0
  95. {codedna-0.3.0 → codedna-0.3.1}/dashboard/package.json +0 -0
  96. {codedna-0.3.0 → codedna-0.3.1}/dashboard/postcss.config.mjs +0 -0
  97. {codedna-0.3.0 → codedna-0.3.1}/dashboard/tailwind.config.ts +0 -0
  98. {codedna-0.3.0 → codedna-0.3.1}/dashboard/tsconfig.json +0 -0
  99. {codedna-0.3.0 → codedna-0.3.1}/hooks/post-commit +0 -0
  100. {codedna-0.3.0 → codedna-0.3.1}/uv.lock +0 -0
  101. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/.bin/tsc +0 -0
  102. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/.bin/tsserver +0 -0
  103. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/.package-lock.json +0 -0
  104. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/LICENSE +0 -0
  105. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/README.md +0 -0
  106. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/assert/strict.d.ts +0 -0
  107. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/assert.d.ts +0 -0
  108. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/async_hooks.d.ts +0 -0
  109. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/buffer.buffer.d.ts +0 -0
  110. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/buffer.d.ts +0 -0
  111. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/child_process.d.ts +0 -0
  112. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/cluster.d.ts +0 -0
  113. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/compatibility/disposable.d.ts +0 -0
  114. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/compatibility/index.d.ts +0 -0
  115. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/compatibility/indexable.d.ts +0 -0
  116. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/compatibility/iterators.d.ts +0 -0
  117. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/console.d.ts +0 -0
  118. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/constants.d.ts +0 -0
  119. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/crypto.d.ts +0 -0
  120. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/dgram.d.ts +0 -0
  121. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/diagnostics_channel.d.ts +0 -0
  122. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/dns/promises.d.ts +0 -0
  123. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/dns.d.ts +0 -0
  124. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/domain.d.ts +0 -0
  125. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/events.d.ts +0 -0
  126. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/fs/promises.d.ts +0 -0
  127. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/fs.d.ts +0 -0
  128. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/globals.d.ts +0 -0
  129. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/globals.typedarray.d.ts +0 -0
  130. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/http.d.ts +0 -0
  131. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/http2.d.ts +0 -0
  132. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/https.d.ts +0 -0
  133. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/index.d.ts +0 -0
  134. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/inspector.generated.d.ts +0 -0
  135. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/module.d.ts +0 -0
  136. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/net.d.ts +0 -0
  137. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/os.d.ts +0 -0
  138. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/package.json +0 -0
  139. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/path.d.ts +0 -0
  140. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/perf_hooks.d.ts +0 -0
  141. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/process.d.ts +0 -0
  142. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/punycode.d.ts +0 -0
  143. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/querystring.d.ts +0 -0
  144. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/readline/promises.d.ts +0 -0
  145. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/readline.d.ts +0 -0
  146. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/repl.d.ts +0 -0
  147. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/sea.d.ts +0 -0
  148. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/stream/consumers.d.ts +0 -0
  149. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/stream/promises.d.ts +0 -0
  150. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/stream/web.d.ts +0 -0
  151. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/stream.d.ts +0 -0
  152. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/string_decoder.d.ts +0 -0
  153. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/test.d.ts +0 -0
  154. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/timers/promises.d.ts +0 -0
  155. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/timers.d.ts +0 -0
  156. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/tls.d.ts +0 -0
  157. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/trace_events.d.ts +0 -0
  158. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -0
  159. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -0
  160. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/ts5.6/index.d.ts +0 -0
  161. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/tty.d.ts +0 -0
  162. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/url.d.ts +0 -0
  163. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/util.d.ts +0 -0
  164. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/v8.d.ts +0 -0
  165. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/vm.d.ts +0 -0
  166. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/wasi.d.ts +0 -0
  167. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -0
  168. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/web-globals/domexception.d.ts +0 -0
  169. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/web-globals/events.d.ts +0 -0
  170. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/web-globals/fetch.d.ts +0 -0
  171. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/worker_threads.d.ts +0 -0
  172. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/node/zlib.d.ts +0 -0
  173. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/vscode/LICENSE +0 -0
  174. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/vscode/README.md +0 -0
  175. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/vscode/index.d.ts +0 -0
  176. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/@types/vscode/package.json +0 -0
  177. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/LICENSE.txt +0 -0
  178. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/README.md +0 -0
  179. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/SECURITY.md +0 -0
  180. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/ThirdPartyNoticeText.txt +0 -0
  181. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/bin/tsc +0 -0
  182. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/bin/tsserver +0 -0
  183. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/_tsc.js +0 -0
  184. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/_tsserver.js +0 -0
  185. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/_typingsInstaller.js +0 -0
  186. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -0
  187. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -0
  188. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -0
  189. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -0
  190. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -0
  191. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -0
  192. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -0
  193. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.d.ts +0 -0
  194. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.decorators.d.ts +0 -0
  195. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -0
  196. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -0
  197. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.dom.d.ts +0 -0
  198. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -0
  199. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -0
  200. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -0
  201. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.d.ts +0 -0
  202. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -0
  203. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -0
  204. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -0
  205. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -0
  206. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -0
  207. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -0
  208. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
  209. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -0
  210. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2016.d.ts +0 -0
  211. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -0
  212. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -0
  213. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -0
  214. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.d.ts +0 -0
  215. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -0
  216. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -0
  217. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -0
  218. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -0
  219. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
  220. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -0
  221. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
  222. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
  223. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
  224. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.d.ts +0 -0
  225. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -0
  226. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -0
  227. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -0
  228. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -0
  229. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -0
  230. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.d.ts +0 -0
  231. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -0
  232. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -0
  233. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -0
  234. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -0
  235. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -0
  236. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -0
  237. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.d.ts +0 -0
  238. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -0
  239. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -0
  240. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -0
  241. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -0
  242. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -0
  243. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
  244. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -0
  245. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
  246. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2021.d.ts +0 -0
  247. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -0
  248. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -0
  249. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -0
  250. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -0
  251. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -0
  252. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -0
  253. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.d.ts +0 -0
  254. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -0
  255. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -0
  256. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -0
  257. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -0
  258. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -0
  259. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -0
  260. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -0
  261. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -0
  262. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2023.d.ts +0 -0
  263. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -0
  264. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -0
  265. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -0
  266. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -0
  267. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.d.ts +0 -0
  268. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -0
  269. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -0
  270. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -0
  271. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -0
  272. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -0
  273. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -0
  274. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es5.d.ts +0 -0
  275. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.es6.d.ts +0 -0
  276. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -0
  277. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -0
  278. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.d.ts +0 -0
  279. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -0
  280. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -0
  281. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -0
  282. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -0
  283. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -0
  284. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -0
  285. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -0
  286. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -0
  287. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -0
  288. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.scripthost.d.ts +0 -0
  289. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -0
  290. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.webworker.d.ts +0 -0
  291. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -0
  292. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -0
  293. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -0
  294. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
  295. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -0
  296. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -0
  297. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/tsc.js +0 -0
  298. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/tsserver.js +0 -0
  299. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -0
  300. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.js +0 -0
  301. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/typesMap.json +0 -0
  302. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/typescript.d.ts +0 -0
  303. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/typescript.js +0 -0
  304. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/typingsInstaller.js +0 -0
  305. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/watchGuard.js +0 -0
  306. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
  307. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
  308. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/typescript/package.json +0 -0
  309. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/LICENSE +0 -0
  310. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/README.md +0 -0
  311. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/agent.d.ts +0 -0
  312. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/api.d.ts +0 -0
  313. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/balanced-pool.d.ts +0 -0
  314. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/cache.d.ts +0 -0
  315. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/client.d.ts +0 -0
  316. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/connector.d.ts +0 -0
  317. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/content-type.d.ts +0 -0
  318. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/cookies.d.ts +0 -0
  319. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/diagnostics-channel.d.ts +0 -0
  320. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/dispatcher.d.ts +0 -0
  321. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -0
  322. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/errors.d.ts +0 -0
  323. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/eventsource.d.ts +0 -0
  324. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/fetch.d.ts +0 -0
  325. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/file.d.ts +0 -0
  326. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/filereader.d.ts +0 -0
  327. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/formdata.d.ts +0 -0
  328. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/global-dispatcher.d.ts +0 -0
  329. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/global-origin.d.ts +0 -0
  330. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/handlers.d.ts +0 -0
  331. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/header.d.ts +0 -0
  332. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/index.d.ts +0 -0
  333. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/interceptors.d.ts +0 -0
  334. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/mock-agent.d.ts +0 -0
  335. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/mock-client.d.ts +0 -0
  336. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/mock-errors.d.ts +0 -0
  337. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/mock-interceptor.d.ts +0 -0
  338. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/mock-pool.d.ts +0 -0
  339. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/package.json +0 -0
  340. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/patch.d.ts +0 -0
  341. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/pool-stats.d.ts +0 -0
  342. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/pool.d.ts +0 -0
  343. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/proxy-agent.d.ts +0 -0
  344. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/readable.d.ts +0 -0
  345. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/retry-agent.d.ts +0 -0
  346. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/retry-handler.d.ts +0 -0
  347. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/util.d.ts +0 -0
  348. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/webidl.d.ts +0 -0
  349. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/node_modules/undici-types/websocket.d.ts +0 -0
  350. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/out/apiClient.js.map +0 -0
  351. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/out/decorations.js.map +0 -0
  352. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/out/extension.js.map +0 -0
  353. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/out/statusBar.js.map +0 -0
  354. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/package-lock.json +0 -0
  355. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/package.json +0 -0
  356. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/src/apiClient.ts +0 -0
  357. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/src/decorations.ts +0 -0
  358. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/src/extension.ts +0 -0
  359. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/src/statusBar.ts +0 -0
  360. {codedna-0.3.0 → codedna-0.3.1}/vscode-extension/tsconfig.json +0 -0
@@ -1,5 +1,23 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.1] - 2026-06-24 — "Doctor Added"
4
+
5
+ ### ✨ Added
6
+ - **`codedna doctor` command** — System health check
7
+ - Python version (>= 3.10 required)
8
+ - CodeDNA installation
9
+ - Git integration
10
+ - 4 tree-sitter parsers (core, python, javascript, typescript)
11
+ - Local database (size, location)
12
+ - Git hook status
13
+ - 8 core dependencies (typer, rich, gitpython, fastapi, uvicorn, pydantic, pyjwt, bcrypt)
14
+ - License & plan
15
+ - Network reachability (PyPI)
16
+ - **`--fix` flag** — auto-creates database + installs hook when missing
17
+ - Color-coded output (✓ green, ! yellow, ✗ red)
18
+ - Exit 1 on critical issues
19
+ - Fully English output
20
+
3
21
  ## [0.3.0] - 2026-06-24 — "English First"
4
22
 
5
23
  ### 🌐 Internationalization
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codedna
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: AI Code Transparency Tool - detect AI-written code and measure developer understanding
5
5
  Project-URL: Homepage, https://codedna.dev
6
6
  Project-URL: Repository, https://github.com/natureco-official/codedna
@@ -1,4 +1,4 @@
1
1
  """CodeDNA — AI Code Transparency Tool."""
2
2
 
3
- __version__ = "0.3.0"
3
+ __version__ = "0.3.1"
4
4
  __app_name__ = "codedna"
@@ -1700,6 +1700,191 @@ def uninstall(
1700
1700
  raise typer.Exit(1)
1701
1701
 
1702
1702
 
1703
+ # ---------------------------------------------------------------------------
1704
+ # codedna doctor (system health check)
1705
+ # ---------------------------------------------------------------------------
1706
+ @app.command()
1707
+ def doctor(
1708
+ fix: bool = typer.Option(False, "--fix", help="Attempt to auto-fix detected issues"),
1709
+ repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo directory"),
1710
+ ) -> None:
1711
+ """Run a system health check (Python, Git, tree-sitter, DB, hook, API, network)."""
1712
+
1713
+ def _ok(msg: str) -> None:
1714
+ console.print(f" [green]✓[/green] {msg}")
1715
+
1716
+ def _warn(msg: str) -> None:
1717
+ console.print(f" [yellow]![/yellow] {msg}")
1718
+
1719
+ def _fail(msg: str) -> None:
1720
+ console.print(f" [red]✗[/red] {msg}")
1721
+
1722
+ console.print(Panel.fit("🧬 CodeDNA — System Health Check", style="bold cyan"))
1723
+ console.print()
1724
+
1725
+ issues: list[str] = []
1726
+ warnings: list[str] = []
1727
+
1728
+ # 1. Python version
1729
+ console.print("[bold]1. Python Environment[/bold]")
1730
+ py_ver = sys.version_info
1731
+ if py_ver >= (3, 10):
1732
+ _ok(f"Python {py_ver.major}.{py_ver.minor}.{py_ver.micro} (>= 3.10 required)")
1733
+ else:
1734
+ _fail(f"Python {py_ver.major}.{py_ver.minor}.{py_ver.micro} — 3.10+ required")
1735
+ issues.append("python_version")
1736
+
1737
+ # 2. CodeDNA installation
1738
+ try:
1739
+ import codedna
1740
+ _ok(f"CodeDNA {codedna.__version__} installed at {Path(codedna.__file__).parent}")
1741
+ except Exception as e:
1742
+ _fail(f"CodeDNA import failed: {e}")
1743
+ issues.append("codedna_import")
1744
+
1745
+ # 3. Git
1746
+ console.print()
1747
+ console.print("[bold]2. Git Integration[/bold]")
1748
+ try:
1749
+ import subprocess
1750
+ result = subprocess.run(["git", "--version"], capture_output=True, text=True, timeout=5)
1751
+ if result.returncode == 0:
1752
+ _ok(f"Git: {result.stdout.strip()}")
1753
+ else:
1754
+ _fail("Git not available")
1755
+ issues.append("git")
1756
+ except FileNotFoundError:
1757
+ _fail("Git not found on PATH")
1758
+ issues.append("git")
1759
+ except Exception as e:
1760
+ _warn(f"Git check failed: {e}")
1761
+ warnings.append("git_check")
1762
+
1763
+ # 4. Tree-sitter parsers
1764
+ console.print()
1765
+ console.print("[bold]3. Tree-sitter Parsers[/bold]")
1766
+ parsers = [
1767
+ ("tree_sitter", "tree-sitter"),
1768
+ ("tree_sitter_python", "tree-sitter-python"),
1769
+ ("tree_sitter_javascript", "tree-sitter-javascript"),
1770
+ ("tree_sitter_typescript", "tree-sitter-typescript"),
1771
+ ]
1772
+ for mod_name, pkg_name in parsers:
1773
+ try:
1774
+ __import__(mod_name)
1775
+ _ok(f"{pkg_name}")
1776
+ except ImportError:
1777
+ _fail(f"{pkg_name} — not installed")
1778
+ issues.append(f"missing:{pkg_name}")
1779
+
1780
+ # 5. Database (only if in a git repo)
1781
+ console.print()
1782
+ console.print("[bold]4. Local Database[/bold]")
1783
+ try:
1784
+ root = repo or find_git_root()
1785
+ db_path = get_db_path(root)
1786
+ if db_path.exists():
1787
+ size_kb = db_path.stat().st_size / 1024
1788
+ _ok(f"Database at {db_path} ({size_kb:.1f} KB)")
1789
+ else:
1790
+ _warn(f"No database at {db_path} (run `codedna init` to create)")
1791
+ warnings.append("no_db")
1792
+ if fix:
1793
+ try:
1794
+ init_db(db_path)
1795
+ _ok("Database initialized")
1796
+ except Exception as e:
1797
+ _fail(f"Could not create database: {e}")
1798
+ issues.append("db_init_failed")
1799
+ except Exception:
1800
+ _warn("Not in a git repo — database check skipped")
1801
+
1802
+ # 6. Git hook
1803
+ console.print()
1804
+ console.print("[bold]5. Git Hook[/bold]")
1805
+ try:
1806
+ root = repo or find_git_root()
1807
+ if is_hook_installed(root):
1808
+ _ok("Post-commit hook installed")
1809
+ else:
1810
+ _warn("Post-commit hook not installed (run `codedna init`)")
1811
+ warnings.append("no_hook")
1812
+ if fix:
1813
+ try:
1814
+ install_hook(root)
1815
+ _ok("Hook installed")
1816
+ except Exception as e:
1817
+ _fail(f"Could not install hook: {e}")
1818
+ issues.append("hook_install_failed")
1819
+ except Exception:
1820
+ _warn("Not in a git repo — hook check skipped")
1821
+
1822
+ # 7. Dependencies
1823
+ console.print()
1824
+ console.print("[bold]6. Core Dependencies[/bold]")
1825
+ deps = [
1826
+ ("typer", "CLI framework"),
1827
+ ("rich", "Terminal UI"),
1828
+ ("gitpython", "Git integration"),
1829
+ ("fastapi", "REST API"),
1830
+ ("uvicorn", "ASGI server"),
1831
+ ("pydantic", "Data validation"),
1832
+ ("pyjwt", "JWT auth"),
1833
+ ("bcrypt", "Password hashing"),
1834
+ ]
1835
+ for mod_name, desc in deps:
1836
+ try:
1837
+ m = __import__(mod_name)
1838
+ ver = getattr(m, "__version__", "?")
1839
+ _ok(f"{mod_name} {ver} ({desc})")
1840
+ except ImportError:
1841
+ _fail(f"{mod_name} — not installed ({desc})")
1842
+ issues.append(f"missing:{mod_name}")
1843
+
1844
+ # 8. License / plan
1845
+ console.print()
1846
+ console.print("[bold]7. License & Plan[/bold]")
1847
+ license_path = Path.home() / ".codedna" / "license.json"
1848
+ if license_path.exists():
1849
+ try:
1850
+ import json
1851
+ with open(license_path) as f:
1852
+ lic = json.load(f)
1853
+ plan = lic.get("plan", "free")
1854
+ _ok(f"Active plan: {plan.upper()}")
1855
+ except Exception as e:
1856
+ _warn(f"License file unreadable: {e}")
1857
+ warnings.append("license_unreadable")
1858
+ else:
1859
+ _warn(f"No license at {license_path} (running on FREE plan)")
1860
+
1861
+ # 9. Network
1862
+ console.print()
1863
+ console.print("[bold]8. Network[/bold]")
1864
+ try:
1865
+ import urllib.request
1866
+ urllib.request.urlopen("https://pypi.org/pypi/codedna/json", timeout=5)
1867
+ _ok("PyPI reachable")
1868
+ except Exception as e:
1869
+ _warn(f"PyPI unreachable: {type(e).__name__}")
1870
+ warnings.append("no_network")
1871
+
1872
+ # Summary
1873
+ console.print()
1874
+ console.print("[bold]Summary[/bold]")
1875
+ if not issues:
1876
+ if not warnings:
1877
+ console.print(" [bold green]✓ All checks passed — system healthy.[/bold green]")
1878
+ else:
1879
+ console.print(f" [bold yellow]![/bold yellow] {len(warnings)} warning(s), 0 critical issue(s)")
1880
+ console.print(" [dim]Run [bold]codedna doctor --fix[/bold] to attempt auto-fixes.[/dim]")
1881
+ else:
1882
+ console.print(f" [bold red]✗[/bold red] {len(issues)} critical issue(s), {len(warnings)} warning(s)")
1883
+ for issue in issues:
1884
+ console.print(f" [red]•[/red] {issue}")
1885
+ raise typer.Exit(1)
1886
+
1887
+
1703
1888
  # ---------------------------------------------------------------------------
1704
1889
  # Helper functions
1705
1890
  # ---------------------------------------------------------------------------
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "codedna"
3
- version = "0.3.0"
3
+ version = "0.3.1"
4
4
  description = "AI Code Transparency Tool - detect AI-written code and measure developer understanding"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes