codedna 0.2.26__tar.gz → 0.2.28__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.26 → codedna-0.2.28}/PKG-INFO +1 -1
- {codedna-0.2.26 → codedna-0.2.28}/codedna/__init__.py +1 -1
- {codedna-0.2.26 → codedna-0.2.28}/codedna/cli.py +71 -45
- {codedna-0.2.26 → codedna-0.2.28}/pyproject.toml +1 -1
- {codedna-0.2.26 → codedna-0.2.28}/.env.example +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.env.ls +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/CODEOWNERS +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/dependabot.yml +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/workflows/codedna.yml +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/workflows/codeql.yml +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.github/workflows/test.yml +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.gitignore +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/.python-version +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/CHANGELOG.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/CONTRIBUTING.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/LICENSE +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/README.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/SECURITY.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/ai.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/ai_box.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/ai_fingerprint.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/analyzer.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/api.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/auth.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/bus_factor.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/db.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/git_hook.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/integrations/__init__.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/integrations/github_bot.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/integrations/jira.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/integrations/lemonsqueezy.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/interview.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/onboarding.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/plan.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/protection.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/rate_limit.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/scorer.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/sprint_health.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/survey.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/codedna/tech_debt.py +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/.env.local.example +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/.gitignore +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/README.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/ai-compare/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/api/auth/login/route.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/api/auth/logout/route.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/api/auth/me/route.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/api/auth/register/route.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/api/billing/checkout/route.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/billing/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/bus-factor/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/commits/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/debt/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/favicon.ico +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/files/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/fonts/GeistMonoVF.woff +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/fonts/GeistVF.woff +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/globals.css +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/interview/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/layout.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/login/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/onboarding/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/pricing/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/protected/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/register/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/settings/integrations/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/app/sprints/page.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/AnlamaGrafigi.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/AuthProvider.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/ClientProviders.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/CommitTable.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/CostInfoTooltip.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/FeatureGate.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/FileHeatmap.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/HataBanner.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/LanguageSwitcher.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/NavClient.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/OverviewTitles.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/QuickInsights.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/RiskBadge.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/SummaryCards.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/components/UpgradeBanner.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/lib/api.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/lib/auth.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/lib/i18n/en.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/lib/i18n/index.tsx +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/lib/i18n/tr.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/lib/plan.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/next-env.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/next.config.mjs +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/package-lock.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/package.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/postcss.config.mjs +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/tailwind.config.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/dashboard/tsconfig.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/hooks/post-commit +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/uv.lock +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/.bin/tsc +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/.bin/tsserver +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/.package-lock.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/LICENSE +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/README.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/assert/strict.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/assert.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/async_hooks.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/buffer.buffer.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/buffer.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/child_process.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/cluster.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/compatibility/disposable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/compatibility/index.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/compatibility/indexable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/compatibility/iterators.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/console.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/constants.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/crypto.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/dgram.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/diagnostics_channel.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/dns/promises.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/dns.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/domain.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/events.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/fs/promises.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/fs.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/globals.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/globals.typedarray.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/http.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/http2.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/https.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/index.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/inspector.generated.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/module.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/net.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/os.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/package.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/path.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/perf_hooks.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/process.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/punycode.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/querystring.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/readline/promises.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/readline.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/repl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/sea.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/stream/consumers.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/stream/promises.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/stream/web.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/stream.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/string_decoder.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/test.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/timers/promises.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/timers.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/tls.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/trace_events.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/ts5.6/index.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/tty.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/url.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/util.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/v8.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/vm.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/wasi.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/web-globals/domexception.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/web-globals/events.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/web-globals/fetch.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/worker_threads.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/node/zlib.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/vscode/LICENSE +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/vscode/README.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/vscode/index.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/@types/vscode/package.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/LICENSE.txt +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/README.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/SECURITY.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/ThirdPartyNoticeText.txt +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/bin/tsc +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/bin/tsserver +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/_tsc.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/_tsserver.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/_typingsInstaller.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.decorators.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.dom.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2016.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2021.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2023.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es5.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.es6.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.scripthost.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.webworker.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/tsc.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/tsserver.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/tsserverlibrary.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/typesMap.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/typescript.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/typescript.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/typingsInstaller.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/watchGuard.js +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/typescript/package.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/LICENSE +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/README.md +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/agent.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/api.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/balanced-pool.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/cache.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/client.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/connector.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/content-type.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/cookies.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/diagnostics-channel.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/dispatcher.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/errors.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/eventsource.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/fetch.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/file.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/filereader.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/formdata.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/global-dispatcher.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/global-origin.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/handlers.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/header.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/index.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/interceptors.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/mock-agent.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/mock-client.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/mock-errors.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/mock-interceptor.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/mock-pool.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/package.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/patch.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/pool-stats.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/pool.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/proxy-agent.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/readable.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/retry-agent.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/retry-handler.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/util.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/webidl.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/node_modules/undici-types/websocket.d.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/out/apiClient.js.map +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/out/decorations.js.map +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/out/extension.js.map +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/out/statusBar.js.map +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/package-lock.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/package.json +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/src/apiClient.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/src/decorations.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/src/extension.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/src/statusBar.ts +0 -0
- {codedna-0.2.26 → codedna-0.2.28}/vscode-extension/tsconfig.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codedna
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.28
|
|
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
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
import sys
|
|
5
6
|
from datetime import datetime
|
|
6
7
|
from pathlib import Path
|
|
7
8
|
from typing import Optional
|
|
@@ -30,13 +31,38 @@ from codedna.survey import run_survey
|
|
|
30
31
|
|
|
31
32
|
app = typer.Typer(
|
|
32
33
|
name="codedna",
|
|
33
|
-
help="🧬 CodeDNA — AI
|
|
34
|
+
help="🧬 CodeDNA — AI code transparency tool",
|
|
34
35
|
add_completion=False,
|
|
35
36
|
no_args_is_help=True,
|
|
36
37
|
)
|
|
37
38
|
console = Console()
|
|
38
39
|
|
|
39
40
|
|
|
41
|
+
def _version_callback(value: bool) -> None:
|
|
42
|
+
"""--version bayrağı için callback."""
|
|
43
|
+
if value:
|
|
44
|
+
try:
|
|
45
|
+
from importlib.metadata import version as _v
|
|
46
|
+
ver = _v("codedna")
|
|
47
|
+
except Exception:
|
|
48
|
+
ver = "0.2.28"
|
|
49
|
+
console.print(f"codedna {ver}")
|
|
50
|
+
raise typer.Exit()
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
@app.callback()
|
|
54
|
+
def _main_callback(
|
|
55
|
+
version: bool = typer.Option(
|
|
56
|
+
False, "--version", "-V",
|
|
57
|
+
callback=_version_callback,
|
|
58
|
+
is_eager=True,
|
|
59
|
+
help="Show version and exit.",
|
|
60
|
+
),
|
|
61
|
+
) -> None:
|
|
62
|
+
"""CodeDNA — root callback."""
|
|
63
|
+
pass
|
|
64
|
+
|
|
65
|
+
|
|
40
66
|
def _get_db(repo_path: Optional[Path] = None) -> Path:
|
|
41
67
|
"""Repo'ya özel veritabanı yolunu döndür."""
|
|
42
68
|
kok = repo_path or find_git_root() or Path.cwd()
|
|
@@ -51,7 +77,7 @@ def init(
|
|
|
51
77
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
52
78
|
with_ci: bool = typer.Option(False, "--with-ci", help="GitHub Actions CI şablonunu da oluştur"),
|
|
53
79
|
) -> None:
|
|
54
|
-
"""
|
|
80
|
+
"""Git hook'u kur, veritabanını oluştur ve isteğe bağlı CI şablonu yaz."""
|
|
55
81
|
console.print()
|
|
56
82
|
console.print(
|
|
57
83
|
Panel.fit(
|
|
@@ -109,10 +135,10 @@ def init(
|
|
|
109
135
|
@app.command()
|
|
110
136
|
def scan(
|
|
111
137
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
112
|
-
max_files: int = typer.Option(200, "--max", "-m", help="
|
|
113
|
-
min_risk: float = typer.Option(0.0, "--min-risk", help="Minimum AI
|
|
138
|
+
max_files: int = typer.Option(200, "--max", "-m", help="Maximum number of files to scan"),
|
|
139
|
+
min_risk: float = typer.Option(0.0, "--min-risk", help="Minimum AI probability filter (0.0-1.0)"),
|
|
114
140
|
) -> None:
|
|
115
|
-
"""
|
|
141
|
+
"""Mevcut repo'yu tara ve AI risk raporu göster."""
|
|
116
142
|
console.print()
|
|
117
143
|
console.print("[bold cyan]🧬 CodeDNA[/bold cyan] — Repo taranıyor...\n")
|
|
118
144
|
|
|
@@ -200,7 +226,7 @@ def status(
|
|
|
200
226
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
201
227
|
hook: bool = typer.Option(False, "--hook", hidden=True, help="Hook modunda çalış (anket sor)"),
|
|
202
228
|
) -> None:
|
|
203
|
-
"""
|
|
229
|
+
"""Son commit'in skorunu göster (ve hook modunda anket sor)."""
|
|
204
230
|
console.print()
|
|
205
231
|
kok = repo or find_git_root() or Path.cwd()
|
|
206
232
|
db_yolu = _get_db(kok)
|
|
@@ -304,9 +330,9 @@ def status(
|
|
|
304
330
|
@app.command()
|
|
305
331
|
def history(
|
|
306
332
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
307
|
-
limit: int = typer.Option(20, "--limit", "-n", help="
|
|
333
|
+
limit: int = typer.Option(20, "--limit", "-n", help="Number of commits to show"),
|
|
308
334
|
) -> None:
|
|
309
|
-
"""
|
|
335
|
+
"""Geçmiş commit skorlarını tablo olarak göster."""
|
|
310
336
|
console.print()
|
|
311
337
|
kok = repo or find_git_root() or Path.cwd()
|
|
312
338
|
db_yolu = _get_db(kok)
|
|
@@ -373,7 +399,7 @@ def serve(
|
|
|
373
399
|
reload: bool = typer.Option(False, "--reload", help="Geliştirme modunda otomatik yeniden başlat"),
|
|
374
400
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
375
401
|
) -> None:
|
|
376
|
-
"""
|
|
402
|
+
"""FastAPI REST sunucusunu başlat."""
|
|
377
403
|
import os
|
|
378
404
|
import uvicorn
|
|
379
405
|
|
|
@@ -418,7 +444,7 @@ def report(
|
|
|
418
444
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
419
445
|
open_browser: bool = typer.Option(False, "--open", help="Raporu tarayıcıda aç"),
|
|
420
446
|
) -> None:
|
|
421
|
-
"""
|
|
447
|
+
"""HTML rapor oluştur."""
|
|
422
448
|
import webbrowser
|
|
423
449
|
from datetime import datetime
|
|
424
450
|
from codedna.api import _rapor_html_olustur
|
|
@@ -481,7 +507,7 @@ def report(
|
|
|
481
507
|
def ai_compare(
|
|
482
508
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
483
509
|
) -> None:
|
|
484
|
-
"""
|
|
510
|
+
"""Repo genelinde AI araç bazlı karşılaştırma tablosu göster."""
|
|
485
511
|
from codedna.ai_fingerprint import compare_tools_in_repo
|
|
486
512
|
from codedna.plan import is_feature_available
|
|
487
513
|
|
|
@@ -548,10 +574,10 @@ def ai_compare(
|
|
|
548
574
|
@app.command()
|
|
549
575
|
def onboarding(
|
|
550
576
|
author: Optional[str] = typer.Option(None, "--author", "-a", help="Tek yazar analizi"),
|
|
551
|
-
team: bool = typer.Option(False, "--team", "-t", help="
|
|
577
|
+
team: bool = typer.Option(False, "--team", "-t", help="Team-wide summary"),
|
|
552
578
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
553
579
|
) -> None:
|
|
554
|
-
"""
|
|
580
|
+
"""Geliştirici onboarding hızını ölç ve ramp-up eğrisini göster."""
|
|
555
581
|
from codedna.onboarding import (
|
|
556
582
|
get_author_curve, team_onboarding_summary, get_all_authors,
|
|
557
583
|
)
|
|
@@ -686,7 +712,7 @@ def pr_comment(
|
|
|
686
712
|
pr: Optional[int] = typer.Option(None, "--pr", help="PR numarası (boşsa event payload'dan algılanır)"),
|
|
687
713
|
rate: float = typer.Option(75.0, "--rate", help="Teknik borç saatlik ücreti"),
|
|
688
714
|
) -> None:
|
|
689
|
-
"""
|
|
715
|
+
"""GitHub PR'ına CodeDNA analiz yorumu bırak (mevcut yorumu günceller, spam yapmaz)."""
|
|
690
716
|
import os
|
|
691
717
|
from codedna.integrations.github_bot import (
|
|
692
718
|
format_pr_comment, post_or_update_comment, github_actions_pr_bilgisi,
|
|
@@ -755,7 +781,7 @@ def pr_comment(
|
|
|
755
781
|
# ---------------------------------------------------------------------------
|
|
756
782
|
# codedna protect
|
|
757
783
|
# ---------------------------------------------------------------------------
|
|
758
|
-
protect_app = typer.Typer(help="
|
|
784
|
+
protect_app = typer.Typer(help="Korumalı modül yönetimi.")
|
|
759
785
|
app.add_typer(protect_app, name="protect")
|
|
760
786
|
|
|
761
787
|
|
|
@@ -763,10 +789,10 @@ app.add_typer(protect_app, name="protect")
|
|
|
763
789
|
def protect_add(
|
|
764
790
|
file_path: str = typer.Argument(..., help="Korunacak dosya yolu"),
|
|
765
791
|
threshold: float = typer.Option(3.5, "--threshold", "-t", help="Minimum anlama skoru eşiği"),
|
|
766
|
-
label: str = typer.Option("", "--label", "-l", help="
|
|
792
|
+
label: str = typer.Option("", "--label", "-l", help="Human-readable label"),
|
|
767
793
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
768
794
|
) -> None:
|
|
769
|
-
"""
|
|
795
|
+
"""Mark a file as protected module."""
|
|
770
796
|
from codedna.protection import protect_module
|
|
771
797
|
from codedna.plan import is_feature_available
|
|
772
798
|
|
|
@@ -795,7 +821,7 @@ def protect_remove(
|
|
|
795
821
|
file_path: str = typer.Argument(..., help="Koruma kaldırılacak dosya yolu"),
|
|
796
822
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
797
823
|
) -> None:
|
|
798
|
-
"""
|
|
824
|
+
"""Remove protection from a file."""
|
|
799
825
|
from codedna.protection import unprotect_module
|
|
800
826
|
from codedna.plan import is_feature_available
|
|
801
827
|
|
|
@@ -817,7 +843,7 @@ def protect_remove(
|
|
|
817
843
|
def protect_list(
|
|
818
844
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
819
845
|
) -> None:
|
|
820
|
-
"""
|
|
846
|
+
"""Show all protected modules and their statuses."""
|
|
821
847
|
from codedna.protection import check_protected_modules
|
|
822
848
|
from codedna.plan import is_feature_available
|
|
823
849
|
|
|
@@ -870,7 +896,7 @@ def protect_list(
|
|
|
870
896
|
def protect_check(
|
|
871
897
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
872
898
|
) -> None:
|
|
873
|
-
"""
|
|
899
|
+
"""Show only modules that violated the threshold."""
|
|
874
900
|
from codedna.protection import get_violations
|
|
875
901
|
from codedna.plan import is_feature_available
|
|
876
902
|
|
|
@@ -905,7 +931,7 @@ def protect_check(
|
|
|
905
931
|
# ---------------------------------------------------------------------------
|
|
906
932
|
# codedna interview
|
|
907
933
|
# ---------------------------------------------------------------------------
|
|
908
|
-
interview_app = typer.Typer(help="
|
|
934
|
+
interview_app = typer.Typer(help="Aday mülakat aracı.")
|
|
909
935
|
app.add_typer(interview_app, name="interview")
|
|
910
936
|
|
|
911
937
|
|
|
@@ -915,7 +941,7 @@ def interview_start(
|
|
|
915
941
|
difficulty: str = typer.Option("medium", "--difficulty", "-d", help="Zorluk: easy|medium|hard"),
|
|
916
942
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
917
943
|
) -> None:
|
|
918
|
-
"""
|
|
944
|
+
"""Yeni mülakat oturumu başlat ve anonimleştirilmiş kod göster."""
|
|
919
945
|
from codedna.interview import select_candidate_file, generate_questions, start_session
|
|
920
946
|
from codedna.plan import is_feature_available
|
|
921
947
|
|
|
@@ -978,7 +1004,7 @@ def interview_list(
|
|
|
978
1004
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
979
1005
|
limit: int = typer.Option(10, "--limit", "-n", help="Gösterilecek oturum sayısı"),
|
|
980
1006
|
) -> None:
|
|
981
|
-
"""
|
|
1007
|
+
"""Geçmiş mülakat oturumlarını göster."""
|
|
982
1008
|
from codedna.interview import get_sessions
|
|
983
1009
|
from codedna.plan import is_feature_available
|
|
984
1010
|
|
|
@@ -1027,7 +1053,7 @@ def interview_score(
|
|
|
1027
1053
|
notes: str = typer.Option("", "--notes", "-n", help="Değerlendirici notları"),
|
|
1028
1054
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
1029
1055
|
) -> None:
|
|
1030
|
-
"""
|
|
1056
|
+
"""Mülakat oturumuna insan değerlendirmesi puanı ekle."""
|
|
1031
1057
|
from codedna.interview import submit_score
|
|
1032
1058
|
from codedna.plan import is_feature_available
|
|
1033
1059
|
|
|
@@ -1060,7 +1086,7 @@ def bus_factor(
|
|
|
1060
1086
|
critical: bool = typer.Option(False, "--critical", "-c", help="Sadece kritik (bus_factor=1) dosyaları göster"),
|
|
1061
1087
|
max_files: int = typer.Option(500, "--max", "-m", help="İşlenecek maksimum dosya sayısı"),
|
|
1062
1088
|
) -> None:
|
|
1063
|
-
"""
|
|
1089
|
+
"""Repo genelinde bus factor analizi yap ve kritik sahiplik risklerini göster."""
|
|
1064
1090
|
from codedna.bus_factor import calculate_bus_factor, get_at_risk_files, _BUYUK_REPO_ESIGI
|
|
1065
1091
|
from codedna.plan import is_feature_available
|
|
1066
1092
|
|
|
@@ -1151,7 +1177,7 @@ def debt(
|
|
|
1151
1177
|
rate: float = typer.Option(75.0, "--rate", help="Saatlik maliyet ($/saat)"),
|
|
1152
1178
|
file: Optional[Path] = typer.Option(None, "--file", "-f", help="Tek dosya analizi"),
|
|
1153
1179
|
) -> None:
|
|
1154
|
-
"""
|
|
1180
|
+
"""Repo genelinde teknik borç maliyeti hesapla."""
|
|
1155
1181
|
from codedna.tech_debt import calculate_repo_debt, calculate_file_debt
|
|
1156
1182
|
from codedna.plan import get_current_plan, Plan
|
|
1157
1183
|
|
|
@@ -1268,7 +1294,7 @@ def debt(
|
|
|
1268
1294
|
# ---------------------------------------------------------------------------
|
|
1269
1295
|
# codedna sprint
|
|
1270
1296
|
# ---------------------------------------------------------------------------
|
|
1271
|
-
sprint_app = typer.Typer(help="Sprint
|
|
1297
|
+
sprint_app = typer.Typer(help="Sprint yönetimi ve sağlık skoru.")
|
|
1272
1298
|
app.add_typer(sprint_app, name="sprint")
|
|
1273
1299
|
|
|
1274
1300
|
|
|
@@ -1279,7 +1305,7 @@ def sprint_olustur(
|
|
|
1279
1305
|
end: str = typer.Option(..., "--end", "-e", help="Bitiş tarihi (YYYY-MM-DD)"),
|
|
1280
1306
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
1281
1307
|
) -> None:
|
|
1282
|
-
"""
|
|
1308
|
+
"""Yeni sprint oluştur ve sağlık skoru hesapla."""
|
|
1283
1309
|
from datetime import datetime as dt
|
|
1284
1310
|
from codedna.sprint_health import calculate_sprint_health, save_sprint_result
|
|
1285
1311
|
from codedna.plan import is_feature_available
|
|
@@ -1401,7 +1427,7 @@ def sprint_gecmisi(
|
|
|
1401
1427
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
1402
1428
|
limit: int = typer.Option(10, "--limit", "-n", help="Gösterilecek sprint sayısı"),
|
|
1403
1429
|
) -> None:
|
|
1404
|
-
"""
|
|
1430
|
+
"""Geçmiş sprint'leri tablo olarak göster."""
|
|
1405
1431
|
from codedna.db import get_sprint_history as db_sprint_gecmisi
|
|
1406
1432
|
from codedna.plan import is_feature_available
|
|
1407
1433
|
from datetime import datetime as dt
|
|
@@ -1460,21 +1486,21 @@ def sprint_gecmisi(
|
|
|
1460
1486
|
# ---------------------------------------------------------------------------
|
|
1461
1487
|
@app.command()
|
|
1462
1488
|
def plan(
|
|
1463
|
-
|
|
1489
|
+
command: Optional[str] = typer.Argument(
|
|
1464
1490
|
None,
|
|
1465
|
-
help="'activate'
|
|
1491
|
+
help="'activate' or direct license key",
|
|
1466
1492
|
),
|
|
1467
|
-
|
|
1493
|
+
key: Optional[str] = typer.Argument(
|
|
1468
1494
|
None,
|
|
1469
|
-
help="
|
|
1495
|
+
help="License key (used with activate)",
|
|
1470
1496
|
),
|
|
1471
1497
|
) -> None:
|
|
1472
|
-
"""
|
|
1498
|
+
"""Mevcut planı göster veya lisans anahtarı ile plan aktif et.
|
|
1473
1499
|
|
|
1474
|
-
|
|
1475
|
-
codedna plan #
|
|
1476
|
-
codedna plan activate <KEY> #
|
|
1477
|
-
codedna plan <KEY> #
|
|
1500
|
+
Kullanım:
|
|
1501
|
+
codedna plan # mevcut planı göster
|
|
1502
|
+
codedna plan activate <KEY> # lisans aktif et
|
|
1503
|
+
codedna plan <KEY> # kısa yol
|
|
1478
1504
|
"""
|
|
1479
1505
|
from codedna.plan import (
|
|
1480
1506
|
Plan as PlanEnum,
|
|
@@ -1485,10 +1511,10 @@ def plan(
|
|
|
1485
1511
|
|
|
1486
1512
|
# "activate <KEY>" veya doğrudan "<KEY>" syntax'ı destekle
|
|
1487
1513
|
lisans_anahtari: Optional[str] = None
|
|
1488
|
-
if
|
|
1489
|
-
lisans_anahtari =
|
|
1490
|
-
elif
|
|
1491
|
-
lisans_anahtari =
|
|
1514
|
+
if command == "activate" and key:
|
|
1515
|
+
lisans_anahtari = key
|
|
1516
|
+
elif command and command != "activate":
|
|
1517
|
+
lisans_anahtari = command
|
|
1492
1518
|
|
|
1493
1519
|
if lisans_anahtari:
|
|
1494
1520
|
# Lisans aktifleştirme
|
|
@@ -1535,7 +1561,7 @@ def plan(
|
|
|
1535
1561
|
console.print()
|
|
1536
1562
|
console.print(
|
|
1537
1563
|
Panel(
|
|
1538
|
-
"[bold]Current Plan:[/bold] [{plan_renk}]{mevcut.value.upper()}[/{plan_renk}]\n\n"
|
|
1564
|
+
f"[bold]Mevcut Plan / Current Plan:[/bold] [{plan_renk}]{mevcut.value.upper()}[/{plan_renk}]\n\n"
|
|
1539
1565
|
+ (
|
|
1540
1566
|
"[dim]Lisans aktif etmek için:[/dim] [cyan]codedna plan activate <LICENSE_KEY>[/cyan]"
|
|
1541
1567
|
if mevcut == PlanEnum.FREE
|
|
@@ -1559,7 +1585,7 @@ def dashboard(
|
|
|
1559
1585
|
ui_port: int = typer.Option(3000, "--ui-port", help="Next.js dashboard port numarası"),
|
|
1560
1586
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
1561
1587
|
) -> None:
|
|
1562
|
-
"""
|
|
1588
|
+
"""FastAPI + Next.js dashboard'u başlat ve tarayıcıda aç."""
|
|
1563
1589
|
import os
|
|
1564
1590
|
import subprocess
|
|
1565
1591
|
import time
|
|
@@ -1668,7 +1694,7 @@ def dashboard(
|
|
|
1668
1694
|
def uninstall(
|
|
1669
1695
|
repo: Optional[Path] = typer.Option(None, "--repo", "-r", help="Git repo dizini"),
|
|
1670
1696
|
) -> None:
|
|
1671
|
-
"""
|
|
1697
|
+
"""CodeDNA hook'unu kaldır."""
|
|
1672
1698
|
kok = repo or find_git_root()
|
|
1673
1699
|
if uninstall_hook(kok):
|
|
1674
1700
|
console.print("[green]✓[/green] CodeDNA kaldırıldı.")
|
|
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
|
|
File without changes
|