Test and publish
The email tests pass, and we've verified the request limit. Now we'll check the complete form on a deployed preview before making it available on the public site.
From the website folder, confirm the feature branch and saved version:
git branch --show-current
git status
git log -1 --onelineStay on workshop-interest with a clean working tree. Keep the protection note from 4.6 beside the commit identifier.
Outcome
Release the reviewed interest form through GitHub and confirm that a production inquiry reaches the owner.
Hands-on exercise 4.7
Check the preview
Run vercel from the linked project folder. Open the returned deployment URL once it's ready and confirm the project and Preview environment. Use an authorized account to review the protected preview.
Preview needs the email settings configured in 4.3. A local .env.local file doesn't supply them to Vercel. Leave Production email disabled while we review this version.
Check each case with test details:
| Case | Expected behavior |
|---|---|
| Missing required input | Useful field feedback, with no send |
| Valid inquiry | Acceptance message and one controlled owner email |
| Submission pending | Button disabled while the request is in progress |
| Narrow screen and keyboard | Readable fields, visible focus, reachable submit button |
| Unknown workshop URL | Missing-page UI and catalog link |
Keep the Firewall rule enabled. If it blocks a test, wait for the window to expire before sending again.
The automated tests from 4.5 cover the helper's error results. In 5.3, we'll deliberately break sending on a preview to inspect whether the browser keeps the visitor's draft. Leave that browser failure check marked as pending until then.
Record the release review
Save the commit identifier and preview URL with what you observed. Include the controlled inquiry's inbox result and the protection check from 4.6. If a check failed, fix it locally, save the correction, and review a new preview before continuing.
You should be able to identify the exact version you tested and explain whether the inquiry arrived. The agent's description of its code can't answer those questions for us.
Propose the change on GitHub
A pull request proposes merging this branch into the production branch. It gives us a place to inspect the combined changes and record the preview review before releasing them.
Push the feature branch and open the pull request:
git push -u origin workshop-interest
gh pr create --base main --head workshop-interest --title "Add workshop inquiries" --body "Add workshop pages and the validated owner-email form. Preview and delivery reviewed before release."Use your production branch in place of main if it differs. In GitHub, review Files changed and confirm credentials aren't included. Add the preview observations and protection result to the description. Follow the repository's required checks or reviews.
Enable and release production email
After the preview and protection checks pass, add the three email settings to Production in the existing Vercel project. Use the same controlled sender and owner inbox as before. Check the project, environment, and recipient before saving.
Environment changes apply to a new deployment. With those settings ready, merge the reviewed pull request through GitHub and wait for its production deployment to succeed. Confirm its source matches the merged pull request; a squash merge can have a different commit identifier from the feature branch.
Try It
Open production in a signed-out browser and follow the gardening card. Submit one controlled inquiry, then check the owner inbox. Record the delivered message and confirm the intended owner is still the recipient.
Review the Firewall's matched traffic for the intended POST path. Use the production deployment to identify the released code. After verification, update the local production branch:
git switch main
git pull --ff-onlyUse your actual production branch name. It should now contain the released pages and form.
The tests pass, but preview sending fails
Check Preview's configuration and Resend's sender/recipient restrictions. Unit tests use a fake sender, so they don't verify account permissions or environment values. Keep the pull request unmerged until the preview works.
Production still says email isn't connected
Check that the three settings belong to Production in this project and that the deployment was created after they were saved. Confirm the merged source includes the email adapter. Fix the configuration or source before creating and checking a fresh production deployment.
Commit
The feature and tests are already saved on workshop-interest. This lesson publishes them. If preview review requires a correction, save that correction as its own commit and review a new preview before merging.
Done-When
- The preview passes the form checks and a controlled inquiry reaches the owner.
- The pull request records the preview observations and verified submission protection.
- Production settings are configured before the release deployment.
- The merged change deploys successfully and a production inquiry arrives in the owner inbox.
Solution
A complete release connects the reviewed commit to a preview, a merged pull request, and the production deployment. Keep those identifiers with the observed inbox delivery and Firewall result.
Follow the sequence above: review the preview, record the checks in the pull request, configure Production, and merge. Verify the public form before moving on to bookbinding.
Was this helpful?