In this video· click a step to jump to it
Test recording
Sightspool — app walkthrough
154,388 ms · 315,590 pixels changed
We built this regression test for www.sightspool.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against www.sightspool.com. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const shot = (i, slug) => screenshotPath.replace('.png', '-' + i + '-' + 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, 1400); await new Promise(r => setTimeout(r, 350)); await anim(max, 0, 800); })()";
const UA = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";
await page.context().setExtraHTTPHeaders({ 'User-Agent': UA });
for (const pattern of ['**/sentry-cdn.com/**', '**/browser.sentry-cdn.com/**', '**/cdn.segment.com/**', '**/connect.facebook.net/**', '**/*.posthog.com/**', '**/googletagmanager.com/**', '**/google-analytics.com/**', '**/*.clarity.ms/**', '**/doubleclick.net/**']) {
await page.route(pattern, function (r) { r.abort(); }).catch(function () {});
}
const dismiss = async function () {
for (const rx of [/^accept$/i, /accept all/i, /got it/i, /allow all/i, /^ok$/i, /skip for now/i, /maybe later/i, /^later$/i, /not now/i, /^close$/i, /^dismiss$/i]) {
await page.getByRole('button', { name: rx }).first().click({ timeout: 1200 }).catch(function () {});
}Checks run
Notes from the demo run
AI-generatedSightspool's first run is the most ambitious we have tested this week: register, give it a product name and a public URL, and it reads the site live, proposes a four-step user journey, and drafts a research question worth asking. Pointed at lastest.cloud it produced EXPLORE -> INSPECT -> INTERPRET -> UNDERSTAND and the question 'How do users understand what Lastest does after seeing its public demos?', then opened a four-step go-live plan (Question, What to ask, People and thank-you, Confirm) with editable interview prompts.
- The first read produces real output, not a templateFrom nothing but a URL it inferred a four-step intended journey with per-step process notes, and a research question specific enough to actually ask a user.
- It labels its own uncertaintyThe journey panel states 'This is an interpreted intended sequence; public routes and page claims do not establish actual user order or comprehension.' Unusually honest for an AI feature, and it buys trust.
- Go-live is a plan, not a formQuestion, What to ask, People and thank-you, Confirm - with the interview prompts pre-written and individually editable ('What brought you here today?' with follow-ups).
- Four of six nav items are greyed out on first paintResearch, User hours, Insights and Journey Canvas render as disabled buttons with 'Go live to unlock the other menu items' before the user has done anything. Disabled-by-default reads as broken rather than sequenced - hiding them until unlocked, or letting them preview read-only, would land better.
- /workspace 404s while /overview is the real routeThe Workspace nav item resolves to /overview, but the guessable /workspace returns a bare 404 page.
- /go-live Review & launch submit·Would publish a live research study - we walked the plan and stopped before launch
7 visual changes
Share this run
Proof your app is not AI slop
This test was built for www.sightspool.com — 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.




















