Skip to content

[codex] Add custom open-to-work contact email - #75

Merged
nikshepsvn merged 1 commit into
sculptdotfun:mainfrom
B-EtterDigital:feature/open-to-work-custom-email-2026-06-18
Aug 5, 2026
Merged

[codex] Add custom open-to-work contact email#75
nikshepsvn merged 1 commit into
sculptdotfun:mainfrom
B-EtterDigital:feature/open-to-work-custom-email-2026-06-18

Conversation

@B-EtterDigital

@B-EtterDigital B-EtterDigital commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add an optional custom contact email to open-to-work profiles.
  • Validate/normalize the email in a shared helper and API route.
  • Store the email in a nullable profiles.open_to_work_email column and clear it when opting out.
  • Show email contact actions on /hire when an opted-in engineer has saved an email, falling back to GitHub contact otherwise.
  • Harden mailto: links against query/header injection and encode mailto components.
  • Add an accessible label to the owner contact email input.

Migration

  • Adds supabase/migrations/005_open_to_work_email.sql with nullable open_to_work_email, an email-format check constraint, and a DB invariant that email is only stored when open_to_work is true.
  • supabase db push was attempted locally but blocked because this checkout is not linked to a Supabase project ref: Cannot find project ref. Have you run supabase link?

Validation

Scope

Feature-only PR. It intentionally does not include PR #72 bug fixes, PR #73 expandable model list changes, or PR #74 rank presentation changes.

@vercel

vercel Bot commented Jun 18, 2026

Copy link
Copy Markdown

@B-EtterDigital is attempting to deploy a commit to the sculpt Team on Vercel.

A member of the Team first needs to authorize it.

@B-EtterDigital
B-EtterDigital force-pushed the feature/open-to-work-custom-email-2026-06-18 branch from 8c2b248 to 8b10f73 Compare June 18, 2026 14:34
@B-EtterDigital
B-EtterDigital force-pushed the feature/open-to-work-custom-email-2026-06-18 branch from 8b10f73 to 936cdf1 Compare June 18, 2026 14:47
@B-EtterDigital
B-EtterDigital marked this pull request as ready for review June 18, 2026 14:53
@nikshepsvn

Copy link
Copy Markdown
Contributor

Sorry this sat for seven weeks. Still wanted — and the conflict is much smaller than the "this branch has conflicts" banner suggests. I test-merged it against current main: the only conflicting file is package.json, and only the test script line, because several PRs in this batch each append to it.

One real blocker to fix while you're rebasing, though:

Migration number collision. This adds supabase/migrations/005_open_to_work_email.sql, but main already has 005_machine_contributions.sql. Please renumber to 009_main is currently up to 008_site_stats_monthly_tiers.sql.

Also note main already has 003_open_to_work.sql adding the open_to_work boolean, so your migration should be purely additive on top of that rather than redefining it.

Heads up that #100 just landed a fair amount of change in src/lib/data/supabase/client.ts and src/lib/data/types.ts, both of which this PR touches — worth rebasing after that merges rather than before, to avoid doing it twice.

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.

2 participants