Operator board · measured 9 Sep 2026

Why the onboarding feels like a wash

Four Stripchat steps, walked headlessly at your real 1320×900 and measured. Every number below came off the live board, not from reading the code.

oracle-trillionzrecords-model · stripchat:trillionzrecords249 · board e8112a0

What the screen actually does with its space

StepScreen used at 900pxWordsVNC
1 · Existing account90%123—
2 · Age / face verification51%76—
3 · VPS browser ready121%132yes
4 · Oracle sees a session59%92—

Steps 2 and 4 leave roughly half the screen empty. Step 3 — the only one that needs the desktop — is the one that overflows, so the VNC gets pushed under the fold. Three buttons render 926px wide to hold ~30 characters of label.

Age / face verification step showing roughly 200px of content in a 900px viewport
Step 2 as it renders. A checkbox, two sentences, 49% of the viewport empty — and no way to actually send her the verification link the copy tells you to send.

Findings, ordered by what they cost you

the real bug

Oracle knows exactly why each platform is logged out. The page never tells you.

Every account carries a machine-readable reason. The step page renders only the bare state word and then gives you a generic instruction. The diagnosis already exists in the payload — it is thrown away at the last moment.

stripchat   trillionzrecords249  cookie=expired  reason: transparency_logged_out
camsoda     trillionzrecords     cookie=unknown  reason: rendered_session_age_gate
chaturbate  trillionzrecords     cookie=unknown  reason: api_credentials_missing
— live /board/api/board, 9 Sep

This is why "we're already logged in" and the board disagree. You are reading the platform; Oracle is reading its own evidence, and it says transparency_logged_out. Three different causes needing three different fixes, all flattened to the same dead-end screen.

wrong flow

You are walking a Chaturbate flow wearing a Stripchat label.

The step catalogue was written from the 31 Aug client call, where Chaturbate was the main platform and the others were "funnel-only". That decision is still literally in the code as everyPlatform: false on the profile step.

So Stripchat silently drops Profile, bio, background, apps and gives you four steps designed around a different site. Two of those four embed the identical VNC panel with no step-specific context — which is exactly why it feels like the same screen every time.

missing step zero

The Gmail cookie prerequisite isn't in the model at all.

You described it correctly: the partition has to exist with the Google session before any platform account makes sense. It is nowhere in the checklist. Worse, the partition is keyed per account, not per model:

persist:oracle-platform:{modelId}:{platform}:{accountHandle}

There is no shared per-model partition layer. So "set the Gmail up on the model's partition once" doesn't map onto what's built — today it would need seeding into each account partition separately. That gap is worth a decision before any UI work.

dead end

Steps tell you to do things they don't let you do.

already built

Most of the fix is wiring, not new architecture.

The engine already exposes platformSession.openLogin, platformSession.verify, managedChromium.launch and streamKey.deliver as real managed commands, and the onboarding→browser chain was proven working today at 12:12Z. The per-account reasons are in the payload. This is a presentation and sequencing problem far more than a capability problem.

Proposed Stripchat sequence

Ordered by real dependency, with the prerequisite promoted to step 0. Blue rows are new.

#StepOwner
0Partition + Google sessionSeed the browser partition and confirm the Gmail session before any platform work. Needs your ruling on shared-vs-per-account.you · VNC
1Account identityConfirm or edit handle, email, and what's in the vault. No password on this board.you · form
2Age / face verificationGenerate the mobile tutorial URL, send it, show whether she opened it. Not a bare checkbox.she does it
3Logged-in sessionOpen her browser, log in on the embedded desktop. Shows Oracle's actual reason when it can't see a session.you · VNC
4Profile, bio, tagsCurrently skipped on Stripchat because of the Chaturbate-first assumption. Same desktop, deep-linked to the settings page.you · VNC
5Stream keyWhere does it come from — harvest, or operator paste? This is the open question below.you · form
6Ready to go liveSession valid + key present + her laptop enrolled. Ticks itself; never a manual tick.Oracle proves it

UI direction

Platform pills, not stacked cards. The three platform cards and the account dropdown become one pill row — Chaturbate 0/5 · CamSoda 0/4 · Stripchat 2/4. Click a pill, its steps appear beneath. The dropdown disappears; when an account is the only one, it's a label, not a select.

Steps open in place. No separate step route. The row expands with its own view, so context is never lost and there's no back-and-forth.

Every step gets a visual, or it isn't a step. VNC where you act on the screen; the identity form where you confirm data; the QR/link preview for what she receives. The 49%-empty text screens go away.

Cut the copy hard. ~130 words per step down to a one-line instruction plus the evidence. The three platform-wide disclaimers move to one line at the top of the checklist.

What I need from you before building

Does the Gmail/Google session get seeded once per model and shared, or does each platform account partition get its own? The code has no shared layer today, so this decides whether step 0 is one action or three.blocks step 0
Stream key on Stripchat — does Oracle harvest it, or does the operator read it off the studio page and paste it in? CamSoda is already manual vault entry.blocks step 5
Face verification — a mobile page served from the VPS is buildable now. Is that the right shape, and does it need video or will a clean illustrated walkthrough do?blocks step 2