Skip to content

feat(report): canonical report-issue module + finish codebase wiring#3

Merged
abdout merged 2 commits into
mainfrom
feat/report-canonical
May 22, 2026
Merged

feat(report): canonical report-issue module + finish codebase wiring#3
abdout merged 2 commits into
mainfrom
feat/report-canonical

Conversation

@abdout
Copy link
Copy Markdown
Contributor

@abdout abdout commented May 22, 2026

Summary

Establishes codebase as the canonical home for the shared report-issue feature (other repos sync from here via `/clone`), and completes codebase's own previously-incomplete install.

  • Hardening (canonical root-cause fix): captcha degrades gracefully when Turnstile is unconfigured — anonymous reports land at degraded trust instead of silent-rejecting. (Same fix already shipped to kun in fix(report): captcha degrades gracefully when Turnstile unconfigured kun#85.)
  • codebaseReportAdapter — storage-less (codebase has no Upstash); rate-limit/dedup/corroboration/ban no-op gracefully; GITHUB_REPO defaults to databayt/codebase.
  • Server action + server wrapper (resolves session, binds action) mounted in footer-01.
  • Deps added: @marsidev/react-turnstile, @anthropic-ai/sdk (the report dialog/triage need them — they were missing).

Notes

  • Staged only the report files + deps; codebase's working tree had 177 unrelated changes from a concurrent session — left untouched.
  • Registry-item formalization (expanding the _registry.ts entry for shadcn add) is a follow-up; /clone codebase:src/components/report-issue works against this canonical today.

Test plan

  • report module typechecks clean (deps resolved)
  • Vercel build green
  • submit an anonymous report on codebase prod → creates a databayt/codebase issue

Establishes codebase as the canonical home for the shared report-issue
feature (other repos sync from here via /clone). Also completes codebase's
own previously-incomplete install.

- Hardening (the root-cause fix, now canonical): captcha degrades
  gracefully when Turnstile is unconfigured — anonymous reports land at
  degraded trust instead of being silently rejected (turnstile.ts
  isTurnstileConfigured(), pipeline gates enforcement, hard-filters HF3
  rejects only on explicit false).
- codebaseReportAdapter: storage-less (codebase has no Upstash) — rate-limit
  / dedup / corroboration / ban all no-op gracefully; GITHUB_REPO defaults
  to databayt/codebase.
- Server action src/lib/actions/report-issue.ts wiring runReportPipeline.
- Server wrapper src/components/report-issue/server.tsx (resolves session +
  binds the action) mounted in footer-01.
- Add deps: @marsidev/react-turnstile, @anthropic-ai/sdk.

Refs the report-centralization plan (codebase phase).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 22, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
codebase Ready Ready Preview, Comment May 22, 2026 11:40am

…acked)

The previous commit only staged the 3 hardening files + new wrappers; the
rest of src/lib/report/* (index, score, triage, github, schema, types,
dedup, corroboration, labels, adapters, __tests__) and the dialog component
(report-issue.tsx, dictionary, index) were untracked, so the build couldn't
resolve @/lib/report or ./report-issue. Commit the complete canonical module.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@abdout abdout merged commit 585daeb into main May 22, 2026
5 of 12 checks passed
@abdout abdout deleted the feat/report-canonical branch May 22, 2026 11:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant