Skip to content

Add Evolve customer story: Rest sleep coach on Langfuse - #3554

Merged
annabellscha merged 24 commits into
mainfrom
cursor/evolve-customer-story-98f9
Sep 7, 2026
Merged

Add Evolve customer story: Rest sleep coach on Langfuse#3554
annabellscha merged 24 commits into
mainfrom
cursor/evolve-customer-story-98f9

Conversation

@annabellscha

@annabellscha annabellscha commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Rewrites /users/evolve from the Rest sleep-coach interview draft (not vacation rentals).

Story

Evolve (YC W18, makers of Podcast App) built Rest, a voice-and-text AI sleep coach based on the principles of CBT-I, circadian biology, and neuroscience. Every conversation is traced in Langfuse: Vapi for voice, OpenAI for text chat, plus background extractors. The team manages 100+ dynamically composed prompts (English and Spanish locale variants) in Prompt Management, reviews traces in annotation queues, and runs LLM-as-a-judge evaluators for cross-session memory.

Quotes are from Ignacio Perez (CTO) and Martín Siniawski (CEO). The /users card uses Martin's "CMS of prompts" line.

Copy (Evolve review)

  • Meta: cutting the coach's memory misses in half (no 10% / 5% figures)
  • Summary card 01: "based on the principles of CBT-I, circadian biology, and neuroscience"
  • Error analysis: evaluators measure how consistently the coach carries context forward
  • Locale variants: English and Spanish, adjusted for users in Argentina, Colombia, and Mexico
  • Rest program draws on the principles of CBT-I, circadian biology, and neuroscience
  • Vapi integration works out of the box
  • Deep dive reframed around building cross-session memory and personalization
  • What's next: datasets as a standard part of shipping

Wiring

  • content/customers/evolve.mdx
  • Slug last in content/customers/meta.json
  • Adopters row: Evolve → getrest.appUser Story
Open in Web Open in Cursor 

Greptile Summary

This PR adds the Evolve/Rest customer story, supporting images and customer-index wiring, while extending shared framed-image and carousel behavior with mobile zoom, links, image fitting, and keyboard accessibility.

  • Adds the /users/evolve customer story and Evolve adopter entry.
  • Adds logos, portraits, screenshots, diagrams, and social imagery.
  • Extends Frame and carousel components with configurable zoom and linked-slide behavior.
  • The new Frame keyboard handling regresses activation of existing linked images.

Confidence Score: 4/5

The PR should not merge until framed linked images retain their keyboard navigation behavior; the remaining cleanup and ordering findings are lower-impact.

The shared Frame change makes images inside existing links separately focusable and intercepts Enter/Space to open zoom, preventing keyboard users from following those links. The effect also leaves stale interactive semantics when zoom is disabled, and the customer metadata order differs from the stated placement.

Files Needing Attention: components/Frame.tsx, content/customers/meta.json

Prompt To Fix All With AI
### Issue 1
components/Frame.tsx:139-140
**Linked images lose navigation**

Every framed image is now independently focusable, including images already wrapped in links. In existing content, pressing Enter or Space on such an image is intercepted and opens the zoom modal instead of following the link. This also creates a button role nested inside an anchor. Images contained by links should be excluded from this behavior, as they are in the carousel implementation.

### Issue 2
components/Frame.tsx:156-160
**Zoom semantics remain stale**

When `zoom` changes from true to false, cleanup removes the event listeners but leaves the injected role, tab stop, ARIA label, cursor, and transition on each image. The image therefore remains exposed as an interactive zoom control even though it no longer responds. Cleanup should restore the attributes and styles added by the effect.

### Issue 3
content/customers/meta.json:13-14
**Evolve is not last**

The requested metadata order places Evolve last, but this entry is inserted before `slite`. Because this array controls customer-story sorting, Evolve will appear before Slite instead of in the requested final position.

```suggestion
    "slite",
    "evolve"
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Reviews (1): Last reviewed commit: "Apply Evolve copy nits: CBT-I principles..." | Re-trigger Greptile

Greptile also left 3 inline comments on this PR.

Publish an Evolve user story at /users/evolve, following the Hugging Face
summary-box layout, and link it from the users index and adopters table.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
@vercel

vercel Bot commented Aug 18, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
langfuse-docs Ready Ready Preview Sep 7, 2026 8:06am UTC

Request Review

Replace the vacation-rental draft with Evolve Global's Rest story:
voice-and-text CBT-I coaching on Vapi and OpenAI, 100+ composed
prompts, error analysis, and LLM-as-a-judge evaluators for memory
and voice quality.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
@cursor cursor Bot changed the title Add Evolve customer story: tracing guest-support agents Add Evolve customer story: Rest sleep coach on Langfuse Aug 18, 2026
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Make the sleep log screenshot and carousel slides click through to Rest, and disable Frame zoom on the linked image so the click is not intercepted.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Rest is a wellness product based on CBT-I principles, not a treatment. Update titles, summary, body copy, Ignacio's title, and Martin's quotes to match the 25 August review.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Use Ignacio's prompt-repository excerpt on the Evolve prompt management section instead of the building-blocks quote.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Update meta, summary cards, Rest/Vapi wording, and the memory deep dive so the story talks about CBT-I plus circadian biology and neuroscience, end-to-end tracing, and cutting cross-session memory misses in half.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Replace the four-row ImpactChart with a compact three-bullet summary, and rewrite remaining em dashes in the memory section as colons and commas.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Keep the shorter one-sentence copy, but put it back in the original ImpactChart layout with 01-04 rows.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Summary card 01 now uses "based on the principles of CBT-I". Error analysis
describes measuring how consistently the coach carries context forward.
Locale variants list Mexico instead of Spain, including the composition diagram.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Comment thread components/Frame.tsx Outdated
Comment thread components/Frame.tsx
Comment thread content/customers/meta.json Outdated

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit c35997d. Configure here.

Comment thread components/Frame.tsx Outdated

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nothing blocking. The comments below are optional suggestions. There is no need to push a fix for them before merging.

Comment thread components/Frame.tsx
cursoragent and others added 2 commits September 4, 2026 10:24
Zoom chrome (role, tab stop, aria-label) is only applied when the image
can actually open the lightbox: not inside a link, and not on mobile
unless zoomOnMobile is set. Cleanup restores those attributes.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Social crawlers fetch og:image as an absolute URL. Static assets on a
preview still pointed at langfuse.com, which 404s until the story is live.

Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
Co-authored-by: annabellscha <annabellscha@users.noreply.github.com>
@annabellscha
annabellscha added this pull request to the merge queue Sep 7, 2026
Merged via the queue into main with commit d88e683 Sep 7, 2026
17 checks passed
@annabellscha
annabellscha deleted the cursor/evolve-customer-story-98f9 branch September 7, 2026 08:19
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