codedna 0.2.29__tar.gz → 0.3.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.2.29 → codedna-0.3.0}/.gitignore +1 -0
- codedna-0.3.0/CHANGELOG.md +80 -0
- {codedna-0.2.29 → codedna-0.3.0}/PKG-INFO +38 -38
- {codedna-0.2.29 → codedna-0.3.0}/README.md +37 -37
- {codedna-0.2.29 → codedna-0.3.0}/codedna/__init__.py +1 -1
- {codedna-0.2.29 → codedna-0.3.0}/codedna/ai_fingerprint.py +15 -15
- {codedna-0.2.29 → codedna-0.3.0}/codedna/analyzer.py +5 -5
- {codedna-0.2.29 → codedna-0.3.0}/codedna/api.py +62 -62
- {codedna-0.2.29 → codedna-0.3.0}/codedna/bus_factor.py +30 -30
- codedna-0.3.0/codedna/cli.py +1736 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/interview.py +11 -11
- {codedna-0.2.29 → codedna-0.3.0}/codedna/onboarding.py +22 -22
- {codedna-0.2.29 → codedna-0.3.0}/codedna/protection.py +19 -19
- {codedna-0.2.29 → codedna-0.3.0}/codedna/scorer.py +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/codedna/tech_debt.py +37 -37
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/ai-compare/page.tsx +5 -5
- codedna-0.3.0/dashboard/app/api/auth/login/route.ts +52 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/api/auth/logout/route.ts +6 -6
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/api/auth/me/route.ts +7 -7
- codedna-0.3.0/dashboard/app/api/auth/register/route.ts +48 -0
- codedna-0.3.0/dashboard/app/api/billing/checkout/route.ts +49 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/bus-factor/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/commits/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/debt/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/files/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/globals.css +1 -1
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/interview/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/layout.tsx +4 -4
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/onboarding/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/page.tsx +4 -4
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/pricing/page.tsx +74 -74
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/protected/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/settings/integrations/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/sprints/page.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/CostInfoTooltip.tsx +11 -11
- codedna-0.2.29/dashboard/components/HataBanner.tsx → codedna-0.3.0/dashboard/components/ErrorBanner.tsx +0 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/LanguageSwitcher.tsx +11 -11
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/OverviewTitles.tsx +1 -1
- codedna-0.2.29/dashboard/components/AnlamaGrafigi.tsx → codedna-0.3.0/dashboard/components/UnderstandingChart.tsx +0 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/UpgradeBanner.tsx +2 -2
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/lib/i18n/en.ts +8 -8
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/lib/i18n/index.tsx +15 -15
- {codedna-0.2.29 → codedna-0.3.0}/pyproject.toml +1 -1
- codedna-0.3.0/vscode-extension/node_modules/.bin/tsc +1 -0
- codedna-0.3.0/vscode-extension/node_modules/.bin/tsserver +1 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/bin/tsc +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/bin/tsserver +0 -0
- codedna-0.2.29/.env.ls +0 -6
- codedna-0.2.29/CHANGELOG.md +0 -49
- codedna-0.2.29/codedna/cli.py +0 -1738
- codedna-0.2.29/dashboard/app/api/auth/login/route.ts +0 -52
- codedna-0.2.29/dashboard/app/api/auth/register/route.ts +0 -48
- codedna-0.2.29/dashboard/app/api/billing/checkout/route.ts +0 -49
- codedna-0.2.29/vscode-extension/node_modules/.bin/tsc +0 -1
- codedna-0.2.29/vscode-extension/node_modules/.bin/tsserver +0 -1
- {codedna-0.2.29 → codedna-0.3.0}/.env.example +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/CODEOWNERS +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/dependabot.yml +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/workflows/codedna.yml +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/workflows/codeql.yml +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.github/workflows/test.yml +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/.python-version +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/CONTRIBUTING.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/LICENSE +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/SECURITY.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/ai.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/ai_box.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/auth.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/db.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/git_hook.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/integrations/__init__.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/integrations/github_bot.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/integrations/jira.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/integrations/lemonsqueezy.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/plan.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/rate_limit.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/sprint_health.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/codedna/survey.py +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/.env.local.example +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/.gitignore +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/README.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/billing/page.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/favicon.ico +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/fonts/GeistMonoVF.woff +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/fonts/GeistVF.woff +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/login/page.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/app/register/page.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/AuthProvider.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/ClientProviders.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/CommitTable.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/FeatureGate.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/FileHeatmap.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/NavClient.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/QuickInsights.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/RiskBadge.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/components/SummaryCards.tsx +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/lib/api.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/lib/auth.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/lib/i18n/tr.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/lib/plan.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/next-env.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/next.config.mjs +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/package-lock.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/package.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/postcss.config.mjs +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/tailwind.config.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/dashboard/tsconfig.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/hooks/post-commit +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/uv.lock +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/.package-lock.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/LICENSE +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/README.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/assert/strict.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/assert.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/async_hooks.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/buffer.buffer.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/buffer.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/child_process.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/cluster.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/compatibility/disposable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/compatibility/index.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/compatibility/indexable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/compatibility/iterators.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/console.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/constants.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/crypto.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/dgram.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/diagnostics_channel.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/dns/promises.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/dns.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/domain.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/events.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/fs/promises.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/fs.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/globals.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/globals.typedarray.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/http.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/http2.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/https.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/index.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/inspector.generated.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/module.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/net.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/os.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/package.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/path.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/perf_hooks.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/process.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/punycode.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/querystring.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/readline/promises.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/readline.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/repl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/sea.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/stream/consumers.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/stream/promises.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/stream/web.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/stream.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/string_decoder.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/test.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/timers/promises.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/timers.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/tls.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/trace_events.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/ts5.6/index.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/tty.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/url.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/util.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/v8.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/vm.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/wasi.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/web-globals/domexception.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/web-globals/events.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/web-globals/fetch.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/worker_threads.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/node/zlib.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/vscode/LICENSE +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/vscode/README.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/vscode/index.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/@types/vscode/package.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/LICENSE.txt +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/README.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/SECURITY.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/ThirdPartyNoticeText.txt +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/_tsc.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/_tsserver.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/_typingsInstaller.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.decorators.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.dom.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es5.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.es6.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.scripthost.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/tsc.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/tsserver.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/typesMap.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/typescript.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/typescript.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/typingsInstaller.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/watchGuard.js +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/typescript/package.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/LICENSE +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/README.md +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/agent.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/api.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/balanced-pool.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/cache.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/client.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/connector.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/content-type.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/cookies.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/diagnostics-channel.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/dispatcher.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/errors.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/eventsource.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/fetch.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/file.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/filereader.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/formdata.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/global-dispatcher.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/global-origin.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/handlers.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/header.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/index.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/interceptors.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/mock-agent.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/mock-client.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/mock-errors.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/mock-interceptor.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/mock-pool.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/package.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/patch.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/pool-stats.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/pool.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/proxy-agent.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/readable.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/retry-agent.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/retry-handler.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/util.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/webidl.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/node_modules/undici-types/websocket.d.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/out/apiClient.js.map +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/out/decorations.js.map +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/out/extension.js.map +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/out/statusBar.js.map +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/package-lock.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/package.json +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/src/apiClient.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/src/decorations.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/src/extension.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/src/statusBar.ts +0 -0
- {codedna-0.2.29 → codedna-0.3.0}/vscode-extension/tsconfig.json +0 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [0.3.0] - 2026-06-24 — "English First"
|
|
4
|
+
|
|
5
|
+
### 🌐 Internationalization
|
|
6
|
+
- **Full Turkish → English translation** across the entire project
|
|
7
|
+
- All user-facing CLI strings, error messages, prompts
|
|
8
|
+
- All dashboard pages, components, labels
|
|
9
|
+
- All documentation files (CHANGELOG, CONTRIBUTING, SECURITY, README)
|
|
10
|
+
- Lemon Squeezy integration copy, checkout, webhook responses
|
|
11
|
+
- Tree-sitter risk labels and analyzer output
|
|
12
|
+
|
|
13
|
+
### 📚 Documentation
|
|
14
|
+
- **English-first README, CHANGELOG, CONTRIBUTING, LICENSE, SECURITY**
|
|
15
|
+
- **GitHub templates** (`.github/`):
|
|
16
|
+
- `CODEOWNERS` — @gencay as default reviewer
|
|
17
|
+
- `PULL_REQUEST_TEMPLATE.md` — standard PR checklist
|
|
18
|
+
- `ISSUE_TEMPLATE/` — bug report + feature request forms
|
|
19
|
+
- `dependabot.yml` — weekly dependency updates
|
|
20
|
+
- `workflows/test.yml` — Python 3.10/3.11/3.12 matrix
|
|
21
|
+
- `workflows/codeql.yml` — security scanning
|
|
22
|
+
|
|
23
|
+
### 🎨 Dashboard
|
|
24
|
+
- Component renames (Turkish → English):
|
|
25
|
+
- `AnlamaGrafigi.tsx` → `UnderstandingChart.tsx`
|
|
26
|
+
- `HataBanner.tsx` → `ErrorBanner.tsx`
|
|
27
|
+
- `RiskBadge.tsx`, `LanguageSwitcher.tsx` updated
|
|
28
|
+
|
|
29
|
+
### 🔧 Versioning Note
|
|
30
|
+
- **0.2.29 → 0.3.0** (minor bump — language milestone, breaking for Turkish users)
|
|
31
|
+
- Breaks the patch-cascade pattern (0.2.2 → 0.2.29 undocumented versions)
|
|
32
|
+
- Turkish users on 0.2.x should pin or migrate English UI
|
|
33
|
+
|
|
34
|
+
## [0.2.1] - 2026-06-24
|
|
35
|
+
|
|
36
|
+
### Added
|
|
37
|
+
- Lemon Squeezy payment integration (Pro ₺400/mo, Team ₺800/mo, Enterprise ₺1,650/mo)
|
|
38
|
+
- Webhook handler with HMAC-SHA256 signature verification
|
|
39
|
+
- Customer ID tracking (lemonsqueezy_customer_id, subscription_id)
|
|
40
|
+
- Dashboard billing page with subscription details + cancel
|
|
41
|
+
- Ngrok public URL support for production webhooks
|
|
42
|
+
- Dashboard pricing page rewrite with TRY currency
|
|
43
|
+
- `codedna plan demo [plan]` command for quick license activation
|
|
44
|
+
- `codedna natureco` integration (Pro+ feature)
|
|
45
|
+
- Cookie-based authentication for Next.js dashboard
|
|
46
|
+
|
|
47
|
+
### Fixed
|
|
48
|
+
- Status command duplicate output (else if hook → else if results)
|
|
49
|
+
- JWT_SECRET missing → 500 error (development fallback)
|
|
50
|
+
- License API integration (file read on user registration)
|
|
51
|
+
- Frontend pricing button text "Try Free" → "Upgrade Now"
|
|
52
|
+
|
|
53
|
+
### Security
|
|
54
|
+
- HMAC-SHA256 webhook signature verification
|
|
55
|
+
- bcrypt password hashing
|
|
56
|
+
- JWT tokens (httpOnly cookies on frontend)
|
|
57
|
+
- Pydantic input validation
|
|
58
|
+
- SQL injection protection (parameterized queries)
|
|
59
|
+
|
|
60
|
+
## [0.2.0] - 2026-06-22
|
|
61
|
+
|
|
62
|
+
- Initial public release
|
|
63
|
+
- 25 commands: init, scan, status, history, report, debt, plan, etc.
|
|
64
|
+
- Lemon Squeezy checkout integration
|
|
65
|
+
- FastAPI REST API
|
|
66
|
+
- Next.js dashboard (13 pages)
|
|
67
|
+
- SQLite database
|
|
68
|
+
- JWT authentication
|
|
69
|
+
- Tree-sitter parsers (Python, JS, TS, JSX, TSX)
|
|
70
|
+
- Git hook integration
|
|
71
|
+
- AI risk scoring (4-metric fingerprint)
|
|
72
|
+
- Technical debt estimation
|
|
73
|
+
- Bus factor analysis
|
|
74
|
+
- Sprint health
|
|
75
|
+
- Developer onboarding tracking
|
|
76
|
+
- License key activation
|
|
77
|
+
|
|
78
|
+
## [0.1.0] - 2026-06-20
|
|
79
|
+
|
|
80
|
+
- Initial development release
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codedna
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.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
|
|
@@ -92,7 +92,7 @@ CodeDNA uses 4 heuristics to detect AI-generated code:
|
|
|
92
92
|
| `comment_ratio > 0.3` | AI over-comments its code | +0.20 |
|
|
93
93
|
| `avg_function_length > 50` | AI produces large monolithic blocks | +0.15 |
|
|
94
94
|
| `single_commit_ratio > 0.7` | Bulk-paste commits are AI-red flag | +0.30 |
|
|
95
|
-
| High complexity + single commit | AI
|
|
95
|
+
| High complexity + single commit | AI signature → +0.25 |
|
|
96
96
|
|
|
97
97
|
**Total > 0.50 → AI suspected.** Combined with Tree-sitter AST analysis, this gives 80%+ accuracy.
|
|
98
98
|
|
|
@@ -155,13 +155,13 @@ CodeDNA uses 4 heuristics to detect AI-generated code:
|
|
|
155
155
|
### Installation
|
|
156
156
|
|
|
157
157
|
```bash
|
|
158
|
-
# PyPI
|
|
158
|
+
# From PyPI
|
|
159
159
|
pip install codedna
|
|
160
160
|
|
|
161
|
-
#
|
|
161
|
+
# Or with uv (faster)
|
|
162
162
|
uv pip install codedna
|
|
163
163
|
|
|
164
|
-
#
|
|
164
|
+
# Or from dev environment
|
|
165
165
|
git clone https://github.com/natureco-official/codedna.git
|
|
166
166
|
cd codedna
|
|
167
167
|
pip install -e .
|
|
@@ -170,19 +170,19 @@ pip install -e .
|
|
|
170
170
|
### First Use (60 seconds)
|
|
171
171
|
|
|
172
172
|
```bash
|
|
173
|
-
# 1. Git repo
|
|
173
|
+
# 1. Go to your Git repo
|
|
174
174
|
cd your-awesome-project
|
|
175
175
|
|
|
176
|
-
# 2. CodeDNA
|
|
176
|
+
# 2. Initialize CodeDNA (creates git hook + DB)
|
|
177
177
|
codedna init
|
|
178
178
|
|
|
179
|
-
# 3.
|
|
179
|
+
# 3. Scan the repo
|
|
180
180
|
codedna scan
|
|
181
181
|
|
|
182
|
-
# 4.
|
|
182
|
+
# 4. See the last commit score
|
|
183
183
|
codedna status
|
|
184
184
|
|
|
185
|
-
# 5.
|
|
185
|
+
# 5. See past commits
|
|
186
186
|
codedna history
|
|
187
187
|
```
|
|
188
188
|
|
|
@@ -204,50 +204,50 @@ codedna dashboard
|
|
|
204
204
|
|
|
205
205
|
### 📊 Analysis & Reporting
|
|
206
206
|
```bash
|
|
207
|
-
codedna init #
|
|
208
|
-
codedna scan #
|
|
209
|
-
codedna status #
|
|
210
|
-
codedna history #
|
|
211
|
-
codedna report # HTML
|
|
212
|
-
codedna ai-compare # AI
|
|
207
|
+
codedna init # Create git hook + DB
|
|
208
|
+
codedna scan # Scan the repo
|
|
209
|
+
codedna status # Last commit score
|
|
210
|
+
codedna history # Past commits
|
|
211
|
+
codedna report # Generate HTML report
|
|
212
|
+
codedna ai-compare # AI tool comparison (Enterprise)
|
|
213
213
|
```
|
|
214
214
|
|
|
215
215
|
### 🛡️ Protection & Policies
|
|
216
216
|
```bash
|
|
217
|
-
codedna protect-add <path> #
|
|
218
|
-
codedna protect-remove <path> #
|
|
219
|
-
codedna protect-list #
|
|
220
|
-
codedna protect-check <file> #
|
|
217
|
+
codedna protect-add <path> # Add protected module
|
|
218
|
+
codedna protect-remove <path> # Remove protection
|
|
219
|
+
codedna protect-list # List protected modules
|
|
220
|
+
codedna protect-check <file> # Is file protected?
|
|
221
221
|
```
|
|
222
222
|
|
|
223
223
|
### 👥 Team & Process
|
|
224
224
|
```bash
|
|
225
|
-
codedna onboarding #
|
|
226
|
-
codedna interview-start #
|
|
227
|
-
codedna interview-list #
|
|
228
|
-
codedna interview-score #
|
|
229
|
-
codedna bus-factor #
|
|
230
|
-
codedna debt #
|
|
231
|
-
codedna sprint-olustur #
|
|
232
|
-
codedna sprint-sagligi # Sprint
|
|
233
|
-
codedna sprint-gecmisi # Sprint
|
|
225
|
+
codedna onboarding # Developer ramp-up (Team+)
|
|
226
|
+
codedna interview-start # Start interview (Enterprise)
|
|
227
|
+
codedna interview-list # List interviews
|
|
228
|
+
codedna interview-score # Score interview
|
|
229
|
+
codedna bus-factor # Ownership analysis (Team+)
|
|
230
|
+
codedna debt # Technical debt (Team+)
|
|
231
|
+
codedna sprint-olustur # Create sprint
|
|
232
|
+
codedna sprint-sagligi # Sprint health
|
|
233
|
+
codedna sprint-gecmisi # Sprint history
|
|
234
234
|
```
|
|
235
235
|
|
|
236
236
|
### 🌐 Infrastructure
|
|
237
237
|
```bash
|
|
238
238
|
codedna serve # FastAPI REST (port 8000)
|
|
239
239
|
codedna dashboard # Web dashboard (port 3000)
|
|
240
|
-
codedna pr-comment # GitHub PR
|
|
241
|
-
codedna plan # Plan/
|
|
242
|
-
codedna plan demo pro # 7
|
|
243
|
-
codedna natureco # NatureCo CLI
|
|
244
|
-
codedna uninstall #
|
|
240
|
+
codedna pr-comment # GitHub PR comment
|
|
241
|
+
codedna plan # Plan/license management
|
|
242
|
+
codedna plan demo pro # 7-day demo Pro license
|
|
243
|
+
codedna natureco # NatureCo CLI integration (Pro+)
|
|
244
|
+
codedna uninstall # Remove hook
|
|
245
245
|
```
|
|
246
246
|
|
|
247
247
|
### 🔧 Utility
|
|
248
248
|
```bash
|
|
249
|
-
codedna doctor #
|
|
250
|
-
codedna reset #
|
|
249
|
+
codedna doctor # System health check
|
|
250
|
+
codedna reset # Reset (DANGEROUS)
|
|
251
251
|
```
|
|
252
252
|
|
|
253
253
|
---
|
|
@@ -443,10 +443,10 @@ codedna/
|
|
|
443
443
|
## 🧪 Testing
|
|
444
444
|
|
|
445
445
|
```bash
|
|
446
|
-
#
|
|
446
|
+
# Run all tests
|
|
447
447
|
pytest
|
|
448
448
|
|
|
449
|
-
#
|
|
449
|
+
# With coverage
|
|
450
450
|
pytest --cov=codedna
|
|
451
451
|
|
|
452
452
|
# Specific test
|
|
@@ -40,7 +40,7 @@ CodeDNA uses 4 heuristics to detect AI-generated code:
|
|
|
40
40
|
| `comment_ratio > 0.3` | AI over-comments its code | +0.20 |
|
|
41
41
|
| `avg_function_length > 50` | AI produces large monolithic blocks | +0.15 |
|
|
42
42
|
| `single_commit_ratio > 0.7` | Bulk-paste commits are AI-red flag | +0.30 |
|
|
43
|
-
| High complexity + single commit | AI
|
|
43
|
+
| High complexity + single commit | AI signature → +0.25 |
|
|
44
44
|
|
|
45
45
|
**Total > 0.50 → AI suspected.** Combined with Tree-sitter AST analysis, this gives 80%+ accuracy.
|
|
46
46
|
|
|
@@ -103,13 +103,13 @@ CodeDNA uses 4 heuristics to detect AI-generated code:
|
|
|
103
103
|
### Installation
|
|
104
104
|
|
|
105
105
|
```bash
|
|
106
|
-
# PyPI
|
|
106
|
+
# From PyPI
|
|
107
107
|
pip install codedna
|
|
108
108
|
|
|
109
|
-
#
|
|
109
|
+
# Or with uv (faster)
|
|
110
110
|
uv pip install codedna
|
|
111
111
|
|
|
112
|
-
#
|
|
112
|
+
# Or from dev environment
|
|
113
113
|
git clone https://github.com/natureco-official/codedna.git
|
|
114
114
|
cd codedna
|
|
115
115
|
pip install -e .
|
|
@@ -118,19 +118,19 @@ pip install -e .
|
|
|
118
118
|
### First Use (60 seconds)
|
|
119
119
|
|
|
120
120
|
```bash
|
|
121
|
-
# 1. Git repo
|
|
121
|
+
# 1. Go to your Git repo
|
|
122
122
|
cd your-awesome-project
|
|
123
123
|
|
|
124
|
-
# 2. CodeDNA
|
|
124
|
+
# 2. Initialize CodeDNA (creates git hook + DB)
|
|
125
125
|
codedna init
|
|
126
126
|
|
|
127
|
-
# 3.
|
|
127
|
+
# 3. Scan the repo
|
|
128
128
|
codedna scan
|
|
129
129
|
|
|
130
|
-
# 4.
|
|
130
|
+
# 4. See the last commit score
|
|
131
131
|
codedna status
|
|
132
132
|
|
|
133
|
-
# 5.
|
|
133
|
+
# 5. See past commits
|
|
134
134
|
codedna history
|
|
135
135
|
```
|
|
136
136
|
|
|
@@ -152,50 +152,50 @@ codedna dashboard
|
|
|
152
152
|
|
|
153
153
|
### 📊 Analysis & Reporting
|
|
154
154
|
```bash
|
|
155
|
-
codedna init #
|
|
156
|
-
codedna scan #
|
|
157
|
-
codedna status #
|
|
158
|
-
codedna history #
|
|
159
|
-
codedna report # HTML
|
|
160
|
-
codedna ai-compare # AI
|
|
155
|
+
codedna init # Create git hook + DB
|
|
156
|
+
codedna scan # Scan the repo
|
|
157
|
+
codedna status # Last commit score
|
|
158
|
+
codedna history # Past commits
|
|
159
|
+
codedna report # Generate HTML report
|
|
160
|
+
codedna ai-compare # AI tool comparison (Enterprise)
|
|
161
161
|
```
|
|
162
162
|
|
|
163
163
|
### 🛡️ Protection & Policies
|
|
164
164
|
```bash
|
|
165
|
-
codedna protect-add <path> #
|
|
166
|
-
codedna protect-remove <path> #
|
|
167
|
-
codedna protect-list #
|
|
168
|
-
codedna protect-check <file> #
|
|
165
|
+
codedna protect-add <path> # Add protected module
|
|
166
|
+
codedna protect-remove <path> # Remove protection
|
|
167
|
+
codedna protect-list # List protected modules
|
|
168
|
+
codedna protect-check <file> # Is file protected?
|
|
169
169
|
```
|
|
170
170
|
|
|
171
171
|
### 👥 Team & Process
|
|
172
172
|
```bash
|
|
173
|
-
codedna onboarding #
|
|
174
|
-
codedna interview-start #
|
|
175
|
-
codedna interview-list #
|
|
176
|
-
codedna interview-score #
|
|
177
|
-
codedna bus-factor #
|
|
178
|
-
codedna debt #
|
|
179
|
-
codedna sprint-olustur #
|
|
180
|
-
codedna sprint-sagligi # Sprint
|
|
181
|
-
codedna sprint-gecmisi # Sprint
|
|
173
|
+
codedna onboarding # Developer ramp-up (Team+)
|
|
174
|
+
codedna interview-start # Start interview (Enterprise)
|
|
175
|
+
codedna interview-list # List interviews
|
|
176
|
+
codedna interview-score # Score interview
|
|
177
|
+
codedna bus-factor # Ownership analysis (Team+)
|
|
178
|
+
codedna debt # Technical debt (Team+)
|
|
179
|
+
codedna sprint-olustur # Create sprint
|
|
180
|
+
codedna sprint-sagligi # Sprint health
|
|
181
|
+
codedna sprint-gecmisi # Sprint history
|
|
182
182
|
```
|
|
183
183
|
|
|
184
184
|
### 🌐 Infrastructure
|
|
185
185
|
```bash
|
|
186
186
|
codedna serve # FastAPI REST (port 8000)
|
|
187
187
|
codedna dashboard # Web dashboard (port 3000)
|
|
188
|
-
codedna pr-comment # GitHub PR
|
|
189
|
-
codedna plan # Plan/
|
|
190
|
-
codedna plan demo pro # 7
|
|
191
|
-
codedna natureco # NatureCo CLI
|
|
192
|
-
codedna uninstall #
|
|
188
|
+
codedna pr-comment # GitHub PR comment
|
|
189
|
+
codedna plan # Plan/license management
|
|
190
|
+
codedna plan demo pro # 7-day demo Pro license
|
|
191
|
+
codedna natureco # NatureCo CLI integration (Pro+)
|
|
192
|
+
codedna uninstall # Remove hook
|
|
193
193
|
```
|
|
194
194
|
|
|
195
195
|
### 🔧 Utility
|
|
196
196
|
```bash
|
|
197
|
-
codedna doctor #
|
|
198
|
-
codedna reset #
|
|
197
|
+
codedna doctor # System health check
|
|
198
|
+
codedna reset # Reset (DANGEROUS)
|
|
199
199
|
```
|
|
200
200
|
|
|
201
201
|
---
|
|
@@ -391,10 +391,10 @@ codedna/
|
|
|
391
391
|
## 🧪 Testing
|
|
392
392
|
|
|
393
393
|
```bash
|
|
394
|
-
#
|
|
394
|
+
# Run all tests
|
|
395
395
|
pytest
|
|
396
396
|
|
|
397
|
-
#
|
|
397
|
+
# With coverage
|
|
398
398
|
pytest --cov=codedna
|
|
399
399
|
|
|
400
400
|
# Specific test
|
|
@@ -57,10 +57,10 @@ _MIN_CONFIDENCE = 0.15
|
|
|
57
57
|
class AIToolGuess:
|
|
58
58
|
"""AI tool guess for a single file."""
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
tool: str # "copilot" | "cursor" | "claude" | "unknown"
|
|
61
|
+
confidence: float # 0.0–1.0
|
|
62
|
+
score_detail: dict[str, float] # tool → raw score
|
|
63
|
+
warning: str = (
|
|
64
64
|
"This detection is pattern-based estimation — not definitive."
|
|
65
65
|
)
|
|
66
66
|
|
|
@@ -95,9 +95,9 @@ def guess_ai_tool(file_path: str, code: str) -> AIToolGuess:
|
|
|
95
95
|
total = sum(scores.values())
|
|
96
96
|
if total < 0.01:
|
|
97
97
|
return AIToolGuess(
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
tool="unknown",
|
|
99
|
+
confidence=0.0,
|
|
100
|
+
score_detail={k: round(v, 3) for k, v in scores.items()},
|
|
101
101
|
)
|
|
102
102
|
|
|
103
103
|
best_tool = max(scores, key=lambda k: scores[k])
|
|
@@ -108,9 +108,9 @@ def guess_ai_tool(file_path: str, code: str) -> AIToolGuess:
|
|
|
108
108
|
best_tool = "unknown"
|
|
109
109
|
|
|
110
110
|
return AIToolGuess(
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
tool=best_tool,
|
|
112
|
+
confidence=round(confidence, 3),
|
|
113
|
+
score_detail={k: round(v, 3) for k, v in scores.items()},
|
|
114
114
|
)
|
|
115
115
|
|
|
116
116
|
|
|
@@ -122,7 +122,7 @@ def analyze_repo_tools(
|
|
|
122
122
|
Run a tool-based file analysis across the repo and save results to DB.
|
|
123
123
|
|
|
124
124
|
Returns:
|
|
125
|
-
{tool: {"
|
|
125
|
+
{tool: {"file_count": N, "avg_ai_probability": X}} dict
|
|
126
126
|
"""
|
|
127
127
|
from codedna.scorer import scan_repository
|
|
128
128
|
|
|
@@ -161,13 +161,13 @@ def analyze_repo_tools(
|
|
|
161
161
|
ORDER BY id DESC LIMIT 1
|
|
162
162
|
)
|
|
163
163
|
""",
|
|
164
|
-
(guess.
|
|
164
|
+
(guess.tool, result.file_path, result.file_path),
|
|
165
165
|
)
|
|
166
166
|
except Exception:
|
|
167
167
|
pass
|
|
168
168
|
|
|
169
|
-
if guess.
|
|
170
|
-
tool_stats[guess.
|
|
169
|
+
if guess.tool in tool_stats:
|
|
170
|
+
tool_stats[guess.tool]["ai_prob"].append(result.ai_probability)
|
|
171
171
|
else:
|
|
172
172
|
tool_stats["unknown"]["ai_prob"].append(result.ai_probability)
|
|
173
173
|
|
|
@@ -202,7 +202,7 @@ def analyze_repo_tools(
|
|
|
202
202
|
if data["understanding"] else None
|
|
203
203
|
)
|
|
204
204
|
output[tool] = {
|
|
205
|
-
"
|
|
205
|
+
"file_count": len(data["ai_prob"]), # kept for API compat
|
|
206
206
|
"avg_ai_probability": round(avg_ai, 3),
|
|
207
207
|
"avg_understanding": round(avg_und, 2) if avg_und is not None else None,
|
|
208
208
|
}
|
|
@@ -44,8 +44,8 @@ class FileAnalysisResult:
|
|
|
44
44
|
single_commit_ratio: float = 0.0
|
|
45
45
|
total_lines: int = 0
|
|
46
46
|
function_count: int = 0
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
unsupported: bool = False # kept for internal use
|
|
48
|
+
error: Optional[str] = None # kept for internal use
|
|
49
49
|
|
|
50
50
|
@property
|
|
51
51
|
def complexity_label(self) -> str:
|
|
@@ -167,14 +167,14 @@ def analyze_file(
|
|
|
167
167
|
try:
|
|
168
168
|
source = file_path.read_text(encoding="utf-8", errors="replace")
|
|
169
169
|
except Exception as e:
|
|
170
|
-
result.
|
|
170
|
+
result.error = f"Cannot read file: {e}"
|
|
171
171
|
return result
|
|
172
172
|
|
|
173
173
|
ext = file_path.suffix.lower()
|
|
174
174
|
parser = _build_parser(ext)
|
|
175
175
|
|
|
176
176
|
if parser is None:
|
|
177
|
-
result.
|
|
177
|
+
result.unsupported = True
|
|
178
178
|
return result
|
|
179
179
|
|
|
180
180
|
# Line counts
|
|
@@ -186,7 +186,7 @@ def analyze_file(
|
|
|
186
186
|
try:
|
|
187
187
|
tree = parser.parse(bytes(source, "utf8"))
|
|
188
188
|
except Exception as e:
|
|
189
|
-
result.
|
|
189
|
+
result.error = f"AST parse error: {e}"
|
|
190
190
|
return result
|
|
191
191
|
|
|
192
192
|
# Function analysis
|