TEFactory Control RoomISOLATED PREVIEWS
← All jobs

JOB E0D91E1E · REVISION 0

Show Candidate Email in Profile.

phantomtiger04@gmail.com

failed

REQUEST

Hi. In the candidate detail drawer, display the candidate’s email address beneath their title and company. Make it a clickable mailto: link and add an automated test for it. Do not change the database schema or migrate any data.

1. Requested behavior

In the candidate detail drawer, show the candidate’s email directly beneath the title/company line. Render it as a clickable link with `href="mailto:<candidate email>"`.

2. Frontend changes

- Update `components/recruiting-app.tsx` in the drawer’s `.personHeader`.
- Add an accessible email anchor beneath the existing title/company paragraph.
- Preserve the existing drawer, editing, recruiting, and login workflows.
- Add or adjust minimal styling in `app/styles.css` if needed for readable link presentation.

3. Backend and Convex changes

None required. Candidate email already exists and is validated, stored, returned, and typed throughout:

- `convex/schema.ts`
- `convex/candidates.ts`
- `convex/dashboard.ts`
- `app/api/candidates/*`
- `lib/types.ts`
- `lib/data.ts`

4. Migration requirement

No versioned migration is needed because this is a presentation-only change and does not alter stored data or schema.

Therefore:

- No transient widened schema or `.factory/schema.transition.ts`.
- No backup/stash or migration snapshot.
- No forward transform, rollback transform, reapply, or relationship remapping.
- No migration row-count/invariant validation is needed for this request.
- Existing `convex/migrations.config.ts` remains unchanged.

5. Tests and browser verification

- Extend `e2e/factory-preview.spec.ts` after opening a known candidate drawer.
- Assert the email is visible and the link’s `href` equals the expected `mailto:` URL.
- Run the repository’s configured typecheck, unit tests, build, and isolated Playwright smoke test as specified in `.factory/config.json`.
- Browser verification should confirm the email appears beneath title/company without disrupting stage changes, notes, editing, deletion, or login.

6. Risks or questions

No blocking risks identified. The request is safe to implement in an isolated preview because it requires no data or backend mutation. The automated browser test should verify the link target rather than attempt to launch an external mail client.
Run stopped safely

Vercel API 400: {"error":{"code":"BAD_REQUEST","message":"Branch \"factory/518cc43a49-show-candidate-email-in-profile\" not found in the connected Git repository.","key":"gitBranch","envVarKey":"NEXT_PUBLIC_CONVEX_URL","gitBranch":"factory/518cc43a49-show-candidate-email-in-profile"},"failed":[{"error":{"code":"BAD_REQUEST","message":"Branch \"factory/518cc43a49-show-candidate-email-in-profile\" not found in the connected Git repository.","key":"gitBranch","envVarKey":"NEXT_PUBLIC_CONVEX_URL","gitBranch":"factory/518cc43a49-show-candidate-email-in-profile"}}]}

TIMELINE

received

Request received

planning

Read-only planning run queued

awaiting approval

Plan sent; waiting for email approval

provisioning

Approved by email; provisioning queued

implementing

Isolated backend cloned; Codex implementation started

migrating

Running idempotent migration and validation

testing

Running typecheck, tests, and production build

deploying

Committing branch and creating Vercel preview

failed

Implementation failed