Skip to content

Feat/careers - #1

Merged
sayandedotcom merged 2 commits into
mainfrom
feat/careers
Aug 31, 2026
Merged

Feat/careers#1
sayandedotcom merged 2 commits into
mainfrom
feat/careers

Conversation

@sayandedotcom

Copy link
Copy Markdown
Owner

No description provided.

sayandedotcom and others added 2 commits September 1, 2026 04:39
Three open roles live as data in lib/careers/roles.ts rather than the
database: a job post is content that ships with a deploy and wants review
in a pull request, and there are three of them. The database side is only
the inbound applications, which is the part that actually grows.

/careers lists the roles; /careers/[slug] renders the full JD and the
application form (name, email, message to the recruiter, an explicit
permission checkbox). Role pages are prerendered and carry JobPosting
JSON-LD so they can surface in Google's job results.

The zod schema in lib/careers/application.ts is shared by the form and
the route, so the browser and the server cannot disagree about what a
valid application looks like. The route is still the authority and
re-validates everything.

job_applications has no users reference: an applicant is almost never a
signed-in user, and nothing here should cascade from an account deletion.
role_title is a snapshot of the title as advertised, so a later retitle
cannot rewrite what someone believes they applied for. The route dedupes
per email per role over 24 hours and reports success on a repeat rather
than an error, since the applicant already told us.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Naki3DJALSYSKgZLkEjuYU
.env.local and .env.production.local were both reachable by the old rule
only if you remembered to add them. The tracked .env.example and
.env.docker stay tracked; a broadened ignore does not untrack a file git
already knows about.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Naki3DJALSYSKgZLkEjuYU
@sayandedotcom
sayandedotcom merged commit 6586dda into main Aug 31, 2026
1 of 5 checks passed
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