Recording of the visual regression run on loudship.app · Loudship — app walkthrough.

In this video· click a step to jump to it

L
Passed ✓

Test recording

Loudship — app walkthrough

55,562 ms · 26,378 pixels changed

We built this regression test for loudship.app — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against loudship.app. Claim it into your own workspace and re-run it on every deploy — free.

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const shot = (n, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
  const SCROLL_THROUGH = "(async () => { const ease = t => 1 - Math.pow(1 - t, 3); const max = Math.max(0, document.body.scrollHeight - window.innerHeight); if (max < 40) return; const anim = (a, b, ms) => new Promise(res => { const t0 = performance.now(); const step = now => { const p = Math.min(1, (now - t0) / ms); window.scrollTo(0, a + (b - a) * ease(p)); p < 1 ? requestAnimationFrame(step) : res(); }; requestAnimationFrame(step); }); await anim(0, max, 1300); await new Promise(r => setTimeout(r, 300)); await anim(max, 0, 700); })()";

  await page.context().setExtraHTTPHeaders({ 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36' });
  for (const pattern of ['**/cdn-cgi/scripts/**/email-decode.min.js', '**/sentry-cdn.com/**', '**/browser.sentry-cdn.com/**', '**/cdn.segment.com/**', '**/connect.facebook.net/**', '**/www.googletagmanager.com/**']) {
    await page.route(pattern, function (r) { r.abort(); }).catch(function () {});
  }

  // ── 1. The radar: last night's reading, scored, with drafts
  stepLogger.log('Scenario 1: radar inbox');
  await page.goto(baseUrl + '/app/radar', { waitUntil: 'domcontentloaded' });
+91 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
52.28%
Text
—
DOM
✓
Network
—
Console
✓
A11y
A
Perf
516 over
URL
60 diverged
Variables
—
Full report
Log in →
26,378
Diff px
56s
Duration
A
Accessible
WCAG 2.2 · 98
C
Fast
Web Vitals · 70

Notes from the demo run

AI-generated

We signed into Loudship with an email code, pointed it at lastest.cloud and let it build the product memory itself, then drove the whole radar: both conversation detail panes, the expanded thread, the source and score filters, the Replied / Skipped / All tabs, and the memory editor with its facts, limits, never-claims, community notes and the What-the-AI-sees preview. The crawl-your-own-site onboarding is the strongest thing here, and it is doing real work rather than theatre.

Highlights
  • The site crawl produced an unusually accurate product memory
    From lastest.cloud alone it extracted 12 facts, 3 limitations and 5 never-claims, and it got specifics right that most crawlers miss: the three diff engines, the FSL-1.1-ALv2 licence converting to Apache 2.0, and the ERP replay story. It also correctly inferred limits we would have written ourselves. That is the demo.
  • Never-claims is a genuinely novel primitive
    Asking the user for claims that must never appear, even if asked, is a better safety framing than a generic tone slider, and it is the thing that makes never posts for you credible rather than a disclaimer.
  • The radar explains itself
    Every conversation carries a score, a source, a sentiment tag and a Why it matched line. The first digest read 350 threads across Reddit, Hacker News and Bluesky and kept 2, and showing the ratio is what makes the filtering trustworthy.
Friction points
  • The Continue with Google button does nothing
    On /login, clicking Continue with Google is a no-op: no popup, no redirect, no error. The button is a Google Identity Services iframe rendered underneath your own styled button, so the click lands on your button rather than the iframe. The email-code path right beneath it worked first try, so the fix is small, but as shipped the first option on your sign-in page is a dead end.
  • Two hundred seconds of onboarding with no way back in if you leave
    The site read, fact check and first radar run take about 3.5 minutes end to end. There is a Save and finish later, but the progress screens themselves have no estimate after step 1. A remaining-time hint on steps 3 and 4 would stop people bouncing right before the payoff.
Couldn't reach
  • Mark as replied / Skip·State-mutating actions on real conversations - deliberately not clicked
  • Copy & open thread·Opens the third-party thread off-site

Visual change

Step 326,378 px changed
Before
Before
After
After
Diff
Diff

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
57,226 test runs recorded · 1,151 products tested with Lastest

This test was built for loudship.app — claim it free

One click copies the test and baseline screenshots into your own Lastest workspace. Re-run on every deploy and catch regressions before your users do — free, no card required.