codedna 0.3.4__tar.gz → 0.4.0__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.
- {codedna-0.3.4 → codedna-0.4.0}/CHANGELOG.md +17 -0
- {codedna-0.3.4 → codedna-0.4.0}/PKG-INFO +1 -1
- {codedna-0.3.4 → codedna-0.4.0}/codedna/__init__.py +1 -1
- {codedna-0.3.4 → codedna-0.4.0}/codedna/cli.py +145 -0
- {codedna-0.3.4 → codedna-0.4.0}/pyproject.toml +1 -1
- {codedna-0.3.4 → codedna-0.4.0}/.env.example +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/CODEOWNERS +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/dependabot.yml +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/workflows/codedna.yml +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/workflows/codeql.yml +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.github/workflows/test.yml +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.gitignore +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/.python-version +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/CONTRIBUTING.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/LICENSE +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/README.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/SECURITY.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/ai.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/ai_box.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/ai_fingerprint.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/analyzer.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/api.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/auth.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/bus_factor.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/db.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/git_hook.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/integrations/__init__.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/integrations/github_bot.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/integrations/jira.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/integrations/lemonsqueezy.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/interview.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/onboarding.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/plan.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/protection.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/rate_limit.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/scorer.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/sprint_health.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/survey.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/codedna/tech_debt.py +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/.env.local.example +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/.gitignore +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/README.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/ai-compare/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/api/auth/login/route.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/api/auth/logout/route.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/api/auth/me/route.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/api/auth/register/route.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/api/billing/checkout/route.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/billing/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/bus-factor/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/commits/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/debt/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/favicon.ico +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/files/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/fonts/GeistMonoVF.woff +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/fonts/GeistVF.woff +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/globals.css +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/interview/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/layout.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/login/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/onboarding/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/pricing/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/protected/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/register/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/settings/integrations/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/app/sprints/page.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/AuthProvider.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/ClientProviders.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/CommitTable.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/CostInfoTooltip.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/ErrorBanner.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/FeatureGate.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/FileHeatmap.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/LanguageSwitcher.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/NavClient.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/OverviewTitles.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/QuickInsights.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/RiskBadge.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/SummaryCards.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/UnderstandingChart.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/components/UpgradeBanner.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/lib/api.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/lib/auth.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/lib/i18n/en.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/lib/i18n/index.tsx +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/lib/i18n/tr.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/lib/plan.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/next-env.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/next.config.mjs +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/package-lock.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/package.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/postcss.config.mjs +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/tailwind.config.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/dashboard/tsconfig.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/hooks/post-commit +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/uv.lock +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/.bin/tsc +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/.bin/tsserver +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/.package-lock.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/LICENSE +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/README.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/assert/strict.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/assert.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/async_hooks.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/buffer.buffer.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/buffer.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/child_process.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/cluster.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/compatibility/disposable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/compatibility/index.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/compatibility/indexable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/compatibility/iterators.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/console.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/constants.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/crypto.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/dgram.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/diagnostics_channel.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/dns/promises.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/dns.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/domain.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/events.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/fs/promises.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/fs.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/globals.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/globals.typedarray.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/http.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/http2.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/https.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/index.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/inspector.generated.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/module.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/net.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/os.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/package.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/path.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/perf_hooks.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/process.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/punycode.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/querystring.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/readline/promises.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/readline.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/repl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/sea.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/stream/consumers.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/stream/promises.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/stream/web.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/stream.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/string_decoder.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/test.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/timers/promises.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/timers.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/tls.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/trace_events.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/ts5.6/index.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/tty.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/url.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/util.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/v8.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/vm.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/wasi.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/web-globals/domexception.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/web-globals/events.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/web-globals/fetch.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/worker_threads.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/zlib.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/vscode/LICENSE +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/vscode/README.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/vscode/index.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/vscode/package.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/LICENSE.txt +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/README.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/SECURITY.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/ThirdPartyNoticeText.txt +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/bin/tsc +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/bin/tsserver +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/_tsc.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/_tsserver.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/_typingsInstaller.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.decorators.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.dom.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es5.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.es6.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.scripthost.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/tsc.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/tsserver.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/typesMap.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/typescript.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/typescript.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/typingsInstaller.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/watchGuard.js +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/typescript/package.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/LICENSE +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/README.md +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/agent.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/api.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/balanced-pool.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/cache.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/client.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/connector.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/content-type.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/cookies.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/diagnostics-channel.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/dispatcher.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/errors.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/eventsource.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/fetch.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/file.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/filereader.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/formdata.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/global-dispatcher.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/global-origin.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/handlers.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/header.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/index.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/interceptors.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/mock-agent.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/mock-client.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/mock-errors.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/mock-interceptor.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/mock-pool.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/package.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/patch.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/pool-stats.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/pool.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/proxy-agent.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/readable.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/retry-agent.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/retry-handler.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/util.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/webidl.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/undici-types/websocket.d.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/out/apiClient.js.map +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/out/decorations.js.map +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/out/extension.js.map +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/out/statusBar.js.map +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/package-lock.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/package.json +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/src/apiClient.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/src/decorations.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/src/extension.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/src/statusBar.ts +0 -0
- {codedna-0.3.4 → codedna-0.4.0}/vscode-extension/tsconfig.json +0 -0
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.4.0] - 2026-06-24 — "Setup Wizard"
|
|
4
|
+
|
|
5
|
+
### ✨ Added
|
|
6
|
+
- **`codedna setup` command** — interactive AI analysis configuration wizard
|
|
7
|
+
- Provider selection (Anthropic / OpenAI / MiniMax)
|
|
8
|
+
- API key entry (with secure file storage at `~/.codedna/ai_config.json`, chmod 600)
|
|
9
|
+
- Model selection with sensible defaults
|
|
10
|
+
- Enable/disable AI analysis toggle
|
|
11
|
+
- Live connectivity test after save ("test ping" prompt)
|
|
12
|
+
- Reconfigure existing setup (`codedna setup --reset`)
|
|
13
|
+
- Reuses existing `codedna.ai` module — no new dependencies
|
|
14
|
+
- **`--reset` flag** — clear existing AI config and start fresh
|
|
15
|
+
- **`--show` flag** — display current AI configuration (no edits)
|
|
16
|
+
|
|
17
|
+
### 🔄 Changed
|
|
18
|
+
- Minor version bump (0.3.4 → 0.4.0) because `setup` is a new user-facing command
|
|
19
|
+
|
|
3
20
|
## [0.3.4] - 2026-06-24 — "Doctor Redesign"
|
|
4
21
|
|
|
5
22
|
### 🎨 Redesigned
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codedna
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
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
|
|
@@ -2017,6 +2017,151 @@ def update(
|
|
|
2017
2017
|
console.print(f" [dim]Restart your shell to pick up the new binary.[/dim]")
|
|
2018
2018
|
|
|
2019
2019
|
|
|
2020
|
+
# ---------------------------------------------------------------------------
|
|
2021
|
+
# codedna setup (interactive AI analysis configuration wizard)
|
|
2022
|
+
# ---------------------------------------------------------------------------
|
|
2023
|
+
@app.command()
|
|
2024
|
+
def setup(
|
|
2025
|
+
reset: bool = typer.Option(False, "--reset", help="Clear existing AI config and reconfigure"),
|
|
2026
|
+
show: bool = typer.Option(False, "--show", help="Show current AI configuration"),
|
|
2027
|
+
) -> None:
|
|
2028
|
+
"""Configure AI analysis provider, API key, and model."""
|
|
2029
|
+
from codedna.ai import AIConfig, AI_CONFIG_PATH, PROVIDERS, DEFAULT_MODELS, ai_analyze
|
|
2030
|
+
|
|
2031
|
+
# ── --show: just display current config ────────────────────────────
|
|
2032
|
+
if show:
|
|
2033
|
+
cfg = AIConfig.load()
|
|
2034
|
+
if not cfg:
|
|
2035
|
+
console.print(Panel("[yellow]No AI configuration found.[/yellow]\n\nRun [bold]codedna setup[/bold] to create one.", border_style="yellow"))
|
|
2036
|
+
return
|
|
2037
|
+
table = Table(title="[bold]Current AI Configuration[/bold]", border_style="dim", show_lines=True, header_style="bold cyan")
|
|
2038
|
+
table.add_column("Field", style="bold white")
|
|
2039
|
+
table.add_column("Value")
|
|
2040
|
+
table.add_row("Provider", cfg.provider)
|
|
2041
|
+
table.add_row("Model", cfg.model)
|
|
2042
|
+
table.add_row("API key", f"{cfg.api_key[:8]}...{cfg.api_key[-4:]}" if len(cfg.api_key) > 12 else "(set)")
|
|
2043
|
+
table.add_row("Enabled", "yes" if cfg.enabled else "no")
|
|
2044
|
+
table.add_row("Config file", str(AI_CONFIG_PATH))
|
|
2045
|
+
console.print(table)
|
|
2046
|
+
return
|
|
2047
|
+
|
|
2048
|
+
# ── Welcome panel ──────────────────────────────────────────────────
|
|
2049
|
+
console.print()
|
|
2050
|
+
console.print(
|
|
2051
|
+
Panel.fit(
|
|
2052
|
+
"[bold cyan]🧬 CodeDNA — Setup Wizard[/bold cyan]\n"
|
|
2053
|
+
"[dim]Configure AI analysis for commit interpretation.[/dim]",
|
|
2054
|
+
border_style="cyan",
|
|
2055
|
+
padding=(1, 4),
|
|
2056
|
+
)
|
|
2057
|
+
)
|
|
2058
|
+
console.print()
|
|
2059
|
+
|
|
2060
|
+
# ── --reset: clear existing ───────────────────────────────────────
|
|
2061
|
+
existing = AIConfig.load()
|
|
2062
|
+
if existing and not reset:
|
|
2063
|
+
console.print(
|
|
2064
|
+
Panel(
|
|
2065
|
+
f"[yellow]Existing configuration found:[/yellow]\n"
|
|
2066
|
+
f" Provider : {existing.provider}\n"
|
|
2067
|
+
f" Model : {existing.model}\n"
|
|
2068
|
+
f" API key : {existing.api_key[:8]}...{existing.api_key[-4:]}\n\n"
|
|
2069
|
+
f"[dim]Run [bold]codedna setup --reset[/bold] to reconfigure.[/dim]\n"
|
|
2070
|
+
f"[dim]Run [bold]codedna setup --show[/bold] for details.[/dim]",
|
|
2071
|
+
border_style="yellow",
|
|
2072
|
+
)
|
|
2073
|
+
)
|
|
2074
|
+
return
|
|
2075
|
+
|
|
2076
|
+
if existing and reset:
|
|
2077
|
+
console.print(f" [yellow]![/yellow] Resetting existing configuration...")
|
|
2078
|
+
AIConfig.clear()
|
|
2079
|
+
console.print(f" [green]✓[/green] Old config cleared")
|
|
2080
|
+
console.print()
|
|
2081
|
+
|
|
2082
|
+
# ── Step 1: Provider ──────────────────────────────────────────────
|
|
2083
|
+
console.print("[bold]Step 1/4 — Choose AI provider[/bold]")
|
|
2084
|
+
for i, p in enumerate(PROVIDERS, 1):
|
|
2085
|
+
default_model = DEFAULT_MODELS.get(p, "?")
|
|
2086
|
+
console.print(f" [cyan]{i}[/cyan]) {p} [dim](default model: {default_model})[/dim]")
|
|
2087
|
+
console.print()
|
|
2088
|
+
|
|
2089
|
+
while True:
|
|
2090
|
+
choice = typer.prompt(" Select provider (1-3)", default="1")
|
|
2091
|
+
try:
|
|
2092
|
+
idx = int(choice) - 1
|
|
2093
|
+
if 0 <= idx < len(PROVIDERS):
|
|
2094
|
+
provider = PROVIDERS[idx]
|
|
2095
|
+
break
|
|
2096
|
+
except ValueError:
|
|
2097
|
+
pass
|
|
2098
|
+
console.print(f" [red]✗[/red] Invalid choice '{choice}'. Try 1, 2, or 3.")
|
|
2099
|
+
|
|
2100
|
+
console.print(f" [green]✓[/green] Provider: [bold]{provider}[/bold]")
|
|
2101
|
+
console.print()
|
|
2102
|
+
|
|
2103
|
+
# ── Step 2: API key ───────────────────────────────────────────────
|
|
2104
|
+
console.print("[bold]Step 2/4 — Enter API key[/bold]")
|
|
2105
|
+
env_var = {"anthropic": "ANTHROPIC_API_KEY", "openai": "OPENAI_API_KEY", "minimax": "MINIMAX_API_KEY"}.get(provider, "API_KEY")
|
|
2106
|
+
console.print(f" [dim]Tip: leave blank to use ${env_var} environment variable[/dim]")
|
|
2107
|
+
while True:
|
|
2108
|
+
api_key = typer.prompt(f" {provider} API key", hide_input=True, default="")
|
|
2109
|
+
if api_key:
|
|
2110
|
+
break
|
|
2111
|
+
import os
|
|
2112
|
+
env_val = os.environ.get(env_var, "").strip()
|
|
2113
|
+
if env_val:
|
|
2114
|
+
api_key = env_val
|
|
2115
|
+
console.print(f" [green]✓[/green] Using ${env_var} from environment")
|
|
2116
|
+
break
|
|
2117
|
+
console.print(f" [red]✗[/red] API key is required. Press Ctrl+C to abort.")
|
|
2118
|
+
console.print()
|
|
2119
|
+
|
|
2120
|
+
# ── Step 3: Model ──────────────────────────────────────────────────
|
|
2121
|
+
console.print("[bold]Step 3/4 — Choose model[/bold]")
|
|
2122
|
+
default_model = DEFAULT_MODELS.get(provider, "")
|
|
2123
|
+
model = typer.prompt(f" Model", default=default_model)
|
|
2124
|
+
console.print(f" [green]✓[/green] Model: [bold]{model}[/bold]")
|
|
2125
|
+
console.print()
|
|
2126
|
+
|
|
2127
|
+
# ── Step 4: Enable + save ─────────────────────────────────────────
|
|
2128
|
+
console.print("[bold]Step 4/4 — Enable & save[/bold]")
|
|
2129
|
+
enabled = typer.confirm(" Enable AI analysis?", default=True)
|
|
2130
|
+
|
|
2131
|
+
cfg = AIConfig(provider=provider, api_key=api_key, model=model, enabled=enabled)
|
|
2132
|
+
cfg.save()
|
|
2133
|
+
|
|
2134
|
+
console.print()
|
|
2135
|
+
console.print(
|
|
2136
|
+
Panel(
|
|
2137
|
+
f"[bold green]✓ Configuration saved![/bold green]\n\n"
|
|
2138
|
+
f" Provider : {provider}\n"
|
|
2139
|
+
f" Model : {model}\n"
|
|
2140
|
+
f" Enabled : {'yes' if enabled else 'no'}\n"
|
|
2141
|
+
f" Location : {AI_CONFIG_PATH} [dim](chmod 600)[/dim]",
|
|
2142
|
+
border_style="green",
|
|
2143
|
+
padding=(1, 2),
|
|
2144
|
+
)
|
|
2145
|
+
)
|
|
2146
|
+
|
|
2147
|
+
# ── Optional: test the connection ─────────────────────────────────
|
|
2148
|
+
if enabled and typer.confirm("\n Run a quick connectivity test?", default=True):
|
|
2149
|
+
console.print(f" [dim]Pinging {provider}...[/dim]")
|
|
2150
|
+
try:
|
|
2151
|
+
result = ai_analyze(command="ping", output="Reply with just the word 'pong' and nothing else.")
|
|
2152
|
+
console.print(f" [green]✓[/green] Connection OK — response: [dim]{(result or '').strip()[:80]}[/dim]")
|
|
2153
|
+
except Exception as e:
|
|
2154
|
+
console.print(f" [yellow]![/yellow] Connection test failed: {type(e).__name__}: {e}")
|
|
2155
|
+
console.print(f" [dim]Your config is saved, but the API key may be invalid.[/dim]")
|
|
2156
|
+
|
|
2157
|
+
console.print()
|
|
2158
|
+
console.print("[dim]Next steps:[/dim]")
|
|
2159
|
+
console.print(" • [cyan]codedna setup --show[/cyan] view current config")
|
|
2160
|
+
console.print(" • [cyan]codedna setup --reset[/cyan] reconfigure")
|
|
2161
|
+
console.print(" • [cyan]codedna scan[/cyan] start analyzing your repo")
|
|
2162
|
+
console.print()
|
|
2163
|
+
|
|
2164
|
+
|
|
2020
2165
|
# ---------------------------------------------------------------------------
|
|
2021
2166
|
# Helper functions
|
|
2022
2167
|
# ---------------------------------------------------------------------------
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/assert/strict.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/buffer.buffer.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/child_process.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/compatibility/index.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/diagnostics_channel.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/globals.typedarray.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/inspector.generated.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/readline/promises.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/stream/consumers.d.ts
RENAMED
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/stream/promises.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/string_decoder.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/timers/promises.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codedna-0.3.4 → codedna-0.4.0}/vscode-extension/node_modules/@types/node/ts5.6/buffer.buffer.d.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|