Skip to content

Public review page no longer shows seeder placeholder text; auditor flags placeholder text - #589

Merged
NewWorldVenture merged 1 commit into
mainfrom
claude/bubaly-repo-connect-etzqg7
Sep 27, 2026
Merged

NewWorldVenture merged 1 commit into
mainfrom
claude/bubaly-repo-connect-etzqg7

Conversation

@NewWorldVenture

Copy link
Copy Markdown
Owner

Part of the live page audit of www.bubaly.com, following #588.

Fixed

  • /reviews/new showed seeder placeholder text to every visitor. The page displayed "Important task Remove free plan and default pricing to yearly billing #1" and "Sample reputation settings content generated for testing purposes. Row 1." It reads the reputation_settings singleton row, and production still has the seeder's text there. A settings row has no slug, so isSyntheticSeedSlug cannot catch it.
    • isSeederText() matches the two exact shapes the seeder writes.
    • realTextOr() falls back to DEFAULT_REPUTATION field by field.
    • The row itself still needs an admin edit in production; the page no longer depends on that.

Auditor

scripts/audit-live-pages.mjs now also flags text a visitor should never read:

  • seeder placeholders and lorem ipsum;
  • a value rendered as undefined, NaN or [object Object];
  • an unfilled {{template}};
  • a raw translation key.

It flags /reviews/new. Across the first 33 public pages (home, pricing, features, legal, auth) it raised no false positives.

Checks

  • tsc clean; eslint clean on the changed files.
  • New test file: 4/4. The page test checks that all four text fields go through the fallback.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TRY21ZKsFrfB3qtoP972A4


Generated by Claude Code

On bubaly.com, /reviews/new greeted every visitor with "Important task
#1" over "Sample reputation settings content generated for testing
purposes. Row 1.". The page reads the reputation_settings singleton, and
that row still holds the database seeder's text. The row has no slug, so
isSyntheticSeedSlug cannot recognise it. isSeederText() matches the two
shapes the seeder writes, and realTextOr() falls back to
DEFAULT_REPUTATION field by field.

The row itself still needs an admin edit in production; the page no
longer depends on that.

scripts/audit-live-pages.mjs now also flags text a visitor should never
read:
- seeder placeholders and lorem ipsum;
- a value rendered as undefined, NaN or [object Object];
- an unfilled {{template}};
- a raw translation key.

It flags /reviews/new, and gave no false positives across the first 33
public pages (home, pricing, features, legal, auth).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TRY21ZKsFrfB3qtoP972A4
@vercel

vercel Bot commented Sep 27, 2026

Copy link
Copy Markdown

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

1 Skipped Deployment
Project Deployment Actions Updated
bubaly Ignored Ignored Sep 27, 2026 12:30pm UTC

Request Review

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