Skip to content

Add a testimonials section to /angeline - #31

Draft
chiibitsu wants to merge 4 commits into
mainfrom
claude/angeline-testimonials
Draft

chiibitsu wants to merge 4 commits into
mainfrom
claude/angeline-testimonials

Conversation

@chiibitsu

Copy link
Copy Markdown
Contributor

The four client quotes existed only in the CV PDF, so the page made the claims and the PDF carried the proof — reachable only by downloading it. This puts the same four on the page, directly above the CTA, so a visitor hits the evidence right before the ask.

What changed

  • New "What clients say" section on /angeline, placed between the credentials block and the CTA.
  • Two-column grid rather than reusing the existing three-up .fix grid: these quotes run longer than the "called in for" ones, and at three-up the attribution lines wrap to four. Collapses to one column at the same 860px breakpoint as the rest of the page.
  • Styles follow the existing .fix grammar — Cormorant italic for the quote, muted sans for the attribution — so the section reads as part of the page rather than bolted on.
  • Adds the NLP Certification chip, which went onto the CV but never onto the page. Same drift, one line to close. Not strictly part of the testimonials ask — easy to drop if unwanted.

Quotes and attributions are copied verbatim from the merged CV, so the anonymization decisions carry over unchanged.

Verification

Rendered in real Chromium at 1280 / 860 / 390 and measured element positions directly rather than trusting scrollWidth alone (per the 2026-08-14 vault precedent — a page with overflow-x: hidden will silently clip a real overflow instead of surfacing it):

width h-overflow card overlap cards inside wrap padding
1280 none (1280/1280) none yes (202–1078 within 170–1110)
860 none (860/860) none yes (32–828 within 0–860)
390 none (390/390) none yes (20–370 within 0–390)

Screenshots of the section at desktop and mobile were reviewed; both read cleanly with no orphaned attribution lines.


Generated by Claude Code

The four client quotes existed only in the CV PDF, so the page made the
claims and the PDF carried the proof — reachable only by downloading it.
This puts the same four on the page, directly above the CTA, so a
visitor hits the evidence right before the ask.

Two columns rather than reusing the three-up .fix grid: these quotes run
longer than the "called in for" ones, and at three-up the attribution
lines wrap to four. Styles follow the existing .fix grammar (Cormorant
italic quote, muted sans attribution) and collapse to one column at the
same 860px breakpoint as the rest of the page.

Also adds the NLP Certification chip, which went onto the CV but never
onto the page — same drift, one line to close.

Quotes and attributions are copied verbatim from the merged CV, so the
anonymization decisions carry over unchanged.

Verified in Chromium at 1280/860/390: no horizontal overflow, no card
overlap, all cards inside the wrap padding. Element positions measured
directly rather than trusting scrollWidth alone.
@vercel

vercel Bot commented Aug 25, 2026 •

Copy link
Copy Markdown
Contributor

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

Project Deployment Actions Updated (UTC)
lm-booking-site Ready Ready Preview Aug 25, 2026 10:20am
website Ready Ready Preview Aug 25, 2026 10:20am

Copy link
Copy Markdown
Contributor Author

Gate blocked — not merging.

The reviewer-unavailable substitution in CLAUDE.md covers the case where the bound cross-vendor reviewer is down, by running local Codex instead. Here the substitute is down too:

ERROR: stream disconnected before completion: You have no credits remaining.
Add credits to continue using the API at
https://platform.openai.com/settings/organization/billing/

Confirmed on two separate invocations, so this is credit exhaustion rather than a transient stream error. No cross-vendor review has landed on this PR either (get_reviews returns empty).

The vault's 2026-08-13 entry is explicit that an outage relaxes which reviewer, never how many passes — so with no reviewer of any kind reachable, there is no version of this that satisfies the gate. Zero clean passes stand against the required two. Re-running in hope of a different result would be gaming the gate rather than satisfying it, so this PR stays open and unmerged until either the OpenAI billing is topped up or a second vendor is bound.

Nothing here is urgent: the change is additive, main is unaffected, and the Vercel preview on this branch shows the section live if you want to look before it lands.

My own verification stands on its own record (it does not substitute for the gate — it is the rendering evidence Codex could not have produced anyway): rendered in real Chromium at 1280 / 860 / 390, measuring element positions directly rather than trusting scrollWidth. No horizontal overflow, no card overlap, all cards inside the wrap padding at every width. Details and the measurement table are in the PR description.


Generated by Claude Code

@chiibitsu
chiibitsu marked this pull request as ready for review August 25, 2026 09:50
@chiibitsu
chiibitsu marked this pull request as draft August 25, 2026 10:00
On a page that is otherwise entirely about AI, "NLP Certification"
reads as Natural Language Processing. The credential is
neuro-linguistic programming — a behavioral qualification that backs
the "Behavioral Strategist" half of the role line, and which the
ambiguous form actively undersells by looking like a thin AI cert.

Raised by the second Claude review pass. The same pass argued the chip
should also name an issuing body like its siblings; that does not hold
— "Licensed Chemist (RCh)" and "ITIL v3 Foundations" name none either,
so the chip row has no such convention to break.

Note: angeline.pdf still carries the short form, so the CV and the page
now differ on this one chip until the PDF is regenerated.
Marivic's quote published her husband's private reaction — that he
declined the offer, then wanted in. Her permission covers her own
words, not his, and combined with "Founder, antique silver and
collectibles" (a trade narrow enough to identify her in this market)
he became identifiable by association. Now reads "someone close to
me", which keeps the point the quote is making and drops the exposure.

Raised by the second Claude review pass and decided by Chii. I flagged
the trade descriptor's narrowness when we added it, but not how it
compounds with the relationship detail — that interaction is what the
review caught.

Applied to the CV as well as the page. The same sentence was already
live in the merged angeline.pdf, which the page links to, so changing
only the page would have left the exposure in place while appearing to
fix it. The CV regeneration also picks up the Neuro-Linguistic
Programming chip expansion, closing the drift that commit opened.

CV verified after regeneration: 2 pages, only the seven intended font
faces (no fallback, no Type3), no header/footer white gaps, footer at
792.9pt. The new wording introduces no character outside the existing
font subset, and the natural footer position is unchanged at 736.65pt,
so the measured 75px spacer still holds.
These are real attributed quotes, but they shipped as bare sibling <p>
elements, so a screen reader got no quote boundary and nothing tying a
quote to its attribution. Raised by two separate Claude review passes.

The #fix quotes stay plain <p> deliberately: those are composite lines
written to voice a problem, not anyone's actual words, so blockquote
would misrepresent them. The distinction is intentional, not drift.

Default figure and blockquote margins are zeroed so rendering is
unchanged — reverified in Chromium at 1280/860/390 and the geometry is
identical to the previous commit (same maxRight/minLeft at every width,
no overflow, no overlap).

Note on the verification itself: the first re-run reported "no overlap"
against zero elements, because the checker still selected `.says > div`
after the cards became <figure>. Fixed the selector and re-ran; the
numbers above are from the corrected check, not the vacuous one.

angeline.pdf is unchanged by this commit — the print pipeline does not
emit a tagged PDF, so the semantic markup would not carry through.

This branch was successfully deployed

2 active deployments
Preview – lm-booking-site — f042ef7e Deployed Aug 25, 2026 by vercel[bot]
Preview – website — f042ef7e Deployed Aug 25, 2026 by vercel[bot]
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