codedna 0.8.3__tar.gz → 0.8.4__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.8.3 → codedna-0.8.4}/PKG-INFO +1 -1
- {codedna-0.8.3 → codedna-0.8.4}/codedna/__init__.py +1 -1
- {codedna-0.8.3 → codedna-0.8.4}/codedna/cli.py +32 -1
- {codedna-0.8.3 → codedna-0.8.4}/pyproject.toml +1 -1
- {codedna-0.8.3 → codedna-0.8.4}/.gitignore +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/LICENSE +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/README.md +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/ai.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/ai_box.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/ai_fingerprint.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/analyzer.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/api.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/auth.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/bus_factor.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/db.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/demo.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/git_hook.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/integrations/__init__.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/integrations/github_bot.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/integrations/jira.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/integrations/lemonsqueezy.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/interview.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/onboarding.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/plan.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/protection.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/rate_limit.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/scorer.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/sprint_health.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/survey.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/codedna/tech_debt.py +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/.env.local.example +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/.gitignore +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/README.md +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/ai-compare/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/api/auth/login/route.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/api/auth/logout/route.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/api/auth/me/route.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/api/auth/register/route.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/api/billing/checkout/route.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/billing/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/bus-factor/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/commits/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/debt/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/favicon.ico +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/files/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/fonts/GeistMonoVF.woff +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/fonts/GeistVF.woff +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/globals.css +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/interview/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/layout.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/login/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/onboarding/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/pricing/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/protected/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/register/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/settings/integrations/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/app/sprints/page.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/AuthProvider.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/ClientProviders.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/CommitTable.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/CostInfoTooltip.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/ErrorBanner.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/FeatureGate.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/FileHeatmap.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/LanguageSwitcher.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/NavClient.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/OverviewTitles.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/QuickInsights.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/RiskBadge.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/SummaryCards.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/UnderstandingChart.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/components/UpgradeBanner.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/lib/api.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/lib/auth.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/lib/i18n/en.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/lib/i18n/index.tsx +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/lib/i18n/tr.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/lib/plan.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/next-env.d.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/next.config.mjs +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/package-lock.json +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/package.json +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/postcss.config.mjs +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/tailwind.config.ts +0 -0
- {codedna-0.8.3 → codedna-0.8.4}/dashboard/tsconfig.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codedna
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.4
|
|
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
|
|
@@ -217,6 +217,19 @@ def scan(
|
|
|
217
217
|
f"Risk: [bold {risk_color}]{risk_label}[/bold {risk_color}]\n"
|
|
218
218
|
)
|
|
219
219
|
|
|
220
|
+
# AI analysis box
|
|
221
|
+
try:
|
|
222
|
+
from codedna.ai_box import print_ai_box
|
|
223
|
+
summary = (
|
|
224
|
+
f"CodeDNA scan: {len(results)} files\n"
|
|
225
|
+
f"Avg AI probability: {avg_ai:.0f}%\n"
|
|
226
|
+
f"Risk level: {risk_label}\n"
|
|
227
|
+
f"Files: {', '.join(str(root / s.file_path) for s in results[:10])}"
|
|
228
|
+
)
|
|
229
|
+
print_ai_box("codedna scan", summary)
|
|
230
|
+
except Exception:
|
|
231
|
+
pass
|
|
232
|
+
|
|
220
233
|
|
|
221
234
|
# ---------------------------------------------------------------------------
|
|
222
235
|
# codedna status
|
|
@@ -283,8 +296,8 @@ def status(
|
|
|
283
296
|
)
|
|
284
297
|
|
|
285
298
|
# Show summary
|
|
299
|
+
avg_ai = sum(s.ai_probability for s in results) / len(results) if results else 0.0
|
|
286
300
|
if results:
|
|
287
|
-
avg_ai = sum(s.ai_probability for s in results) / len(results)
|
|
288
301
|
risk_label, risk_color = _risk_label(avg_ai * 100)
|
|
289
302
|
|
|
290
303
|
understanding_display = (
|
|
@@ -324,6 +337,24 @@ def status(
|
|
|
324
337
|
"[dim]No supported code files found in this commit.[/dim]"
|
|
325
338
|
)
|
|
326
339
|
|
|
340
|
+
# AI analysis box
|
|
341
|
+
try:
|
|
342
|
+
from codedna.ai_box import print_ai_box
|
|
343
|
+
if results:
|
|
344
|
+
status_summary = (
|
|
345
|
+
f"Commit: {commit_hash[:8]}\n"
|
|
346
|
+
f"Author: {author}\n"
|
|
347
|
+
f"Message: {message}\n"
|
|
348
|
+
f"Files changed: {len(results)}\n"
|
|
349
|
+
f"Avg AI probability: {avg_ai*100:.0f}%\n"
|
|
350
|
+
f"Files: {', '.join(s.file_path for s in results[:5])}"
|
|
351
|
+
)
|
|
352
|
+
else:
|
|
353
|
+
status_summary = f"Commit: {commit_hash[:8]}\nNo supported code files."
|
|
354
|
+
print_ai_box("codedna status", status_summary)
|
|
355
|
+
except Exception:
|
|
356
|
+
pass
|
|
357
|
+
|
|
327
358
|
|
|
328
359
|
# ---------------------------------------------------------------------------
|
|
329
360
|
# codedna history
|
|
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
|