Skip to content

feat(identity): Add SQL-backed people API#738

Merged
dcramer merged 2 commits into
mainfrom
people-identity-api
Jul 2, 2026
Merged

feat(identity): Add SQL-backed people API#738
dcramer merged 2 commits into
mainfrom
people-identity-api

Conversation

@dcramer

@dcramer dcramer commented Jul 2, 2026

Copy link
Copy Markdown
Member

People list and profile now read from a durable SQL identity model instead of JuniorReporting or turn-session summaries. Conversation writes upsert verified provider identities into junior_users by normalized email, so trusted Slack requester observations share one user identity case-insensitively.

The dashboard mounts per-endpoint people API wrappers over @sentry/junior/api/people/list and /profile, while plugin reporting remains the extension point for plugin APIs. The public people subpaths expose only the read APIs; source-local query helpers keep integration tests on real Drizzle fixtures.

Review order: start with the identity schema/migration and upsertIdentity, then the people API endpoints and dashboard route wrappers, then the reporting/test deletions.

Add a shared user identity table linked from verified provider identities, and have conversation writes upsert trusted requester identities by normalized email.

Move people list/profile reads out of JuniorReporting into per-endpoint Drizzle API modules consumed by the dashboard, with route and SQL integration tests covering case-insensitive lookup and verified-email filtering.

Co-Authored-By: GPT-5 Codex <codex@openai.com>
@vercel

vercel Bot commented Jul 2, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
junior-docs Ready Ready Preview, Comment Jul 2, 2026 8:24pm

Request Review

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 840ab82. Configure here.

Comment thread packages/junior-dashboard/src/app.ts
Comment thread packages/junior/src/chat/identities/sql.ts
Fill a missing shared user display name from later verified identity observations without replacing an existing value.

Cover the case through the SQL-backed people profile integration test so names stay visible after the first email-only observation.

Co-Authored-By: GPT-5 Codex <codex@openai.com>
@dcramer dcramer marked this pull request as ready for review July 2, 2026 20:38
@github-actions github-actions Bot added the risk: high PR risk score: high label Jul 2, 2026
@dcramer dcramer merged commit 43e61aa into main Jul 2, 2026
20 checks passed
@dcramer dcramer deleted the people-identity-api branch July 2, 2026 20:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk: high PR risk score: high

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant