Summary
Found live while human-testing #955/#958's fixes on production: two showcase entries show the literal, unresolved template placeholder text `{slug}`` as both their title and company name, instead of a real idea or company name.
Evidence
TITLE: '{slug}`'
PROMPT: 'Build a polished, production-quality single-page marketing LANDING PAGE for "{slug}`" -- a real company for this idea: {slug}`. Include: a hero with...'
SLUG: 'slug-x6wOHR'
TITLE: '{slug}`'
PROMPT: 'Build a real, working, functional application for "{slug}`" that actually implements this idea: {slug}`. This is the founder's REAL, WORKING TOOL...'
SLUG: 'slug-7W6siL'
Both the company-app (landing-page-only) AND company-product (real app) generation templates received the literal string {slug} + a trailing backtick as the name/idea value, rather than a real substituted value. This is not a server-side template-literal bug -- grepped the whole app/api/build tree and every real ${slug} usage correctly interpolates. This looks like either:
- A test/seed script that sent literal placeholder text as real input (possibly markdown documentation text pasted/run verbatim, given the trailing backtick), or
- A real caller somewhere that failed to substitute a template before sending it to the generation pipeline.
Impact
Two garbage entries are live on the public /showcase page right now, titled `{slug}`` -- visually broken, confusing to a real visitor, and inconsistent with #955's whole point (showing real founders' real businesses).
Suggested fix
- Identify and remove/hide these two specific entries (slugs
slug-x6wOHR, slug-7W6siL) from the public showcase -- likely via the existing is_showcase gate (generation-persist.ts) or a manual ZeroDB row update, whichever this codebase's established pattern is for excluding a bad entry.
- Trace where the literal
{slug} text actually originated (check recent test/seed scripts, or add validation that rejects a name/slug parameter containing unsubstituted {/} template syntax before it ever reaches the generation pipeline) so this can't happen again for a future entry.
Not fixing this myself in the same pass as #958 since the root cause (where the bad data came from) is still unknown and needs investigation before a confident fix, not just a guess.
Summary
Found live while human-testing #955/#958's fixes on production: two showcase entries show the literal, unresolved template placeholder text `{slug}`` as both their title and company name, instead of a real idea or company name.
Evidence
Both the company-app (landing-page-only) AND company-product (real app) generation templates received the literal string
{slug}+ a trailing backtick as thename/ideavalue, rather than a real substituted value. This is not a server-side template-literal bug -- grepped the wholeapp/api/buildtree and every real${slug}usage correctly interpolates. This looks like either:Impact
Two garbage entries are live on the public
/showcasepage right now, titled `{slug}`` -- visually broken, confusing to a real visitor, and inconsistent with #955's whole point (showing real founders' real businesses).Suggested fix
slug-x6wOHR,slug-7W6siL) from the public showcase -- likely via the existingis_showcasegate (generation-persist.ts) or a manual ZeroDB row update, whichever this codebase's established pattern is for excluding a bad entry.{slug}text actually originated (check recent test/seed scripts, or add validation that rejects aname/slugparameter containing unsubstituted{/}template syntax before it ever reaches the generation pipeline) so this can't happen again for a future entry.Not fixing this myself in the same pass as #958 since the root cause (where the bad data came from) is still unknown and needs investigation before a confident fix, not just a guess.