πŸ§ͺ Superstar Sale Β· Faceless Videos β€” Pair Test Plan

Live pair-programming QA for the Faceless Videos business: the format-cloning playbook surface, the AI production pipeline (script β†’ voiceover β†’ assembly), the YouTube channel & first publish, the lean-back watch-hour rail toward YPP monetization, and the 2026 policy probes (AI disclosure, inauthentic-content gate, no-advice rule). Two testers β€” the agent (SSS Dev) and Mike β€” execute the same steps with different accounts, devices, and data, compare results in the #faceless thread, and file GitHub issues for every mismatch.

Protocol Environments & data A Β· Playbook & decisions B Β· Pipeline C Β· Channel & first publish D Β· Watch-hour rail E Β· Policy probes Results & issue log

How this session works

  1. Agent executes a step (pipeline runs / curl / repo checks), posts screenshots to the #faceless thread, and states pass/fail.
  2. Mike repeats the same step with his own accounts, phone, and data, posting his screenshots to the thread.
  3. Compare. Same result β†’ tick the log row. Different result β†’ both re-run once, then file an issue.
  4. File a GitHub issue for every wanted change (conventions below) and link it in the log row.
  5. Move to the next step. Flows are ordered so data feeds forward: A proves the decisions and the playbook behind them, B proves the content machine that turns a topic into a finished video, C puts the channel + first upload live, D builds the lean-back watch-hour rail toward monetization, E probes the policy walls around all of it.

Issue conventions

Evidence conventions

Environments & test data

ThingValue
Playbook (read-only surface)format-cloning-youtube-playbook_2026-09-30 β€” verified HTTP 200 2026-09-30. Repo source: docs/research/ in microspaces/superstarsale.
Video stagingUnlisted uploads are the staging. Every pipeline artifact ships to YouTube as unlisted first; public visibility is only switched after B5/C2 pass. Nothing unpolished ever hits the public channel.
YouTube (no staging for public)A brand channel starts with zero videos and zero subscribers, so the first public upload is the test. One niche per channel β€” the POV wealth/history ladder is the only format this channel carries.
Money railsAdSense + YPP (Mike-only: payee, tax, 2FA). No affiliate links anywhere on this channel β€” monetization is AdSense RPM plus nothing in round 1.
Pipeline tooling (verified on this machine)ffmpeg 9.0.1 (C:/Users/mikeb/bin/ffmpeg) for assembly; TTS via the agent; yt_dlp (yta-venv) for competitor research pulls; script/template generation agent-side. Pipeline code lands in the superstarsale repo (or its own repo once it exists β€” the plan page updates when it does).
Pick (from the playbook)Format: POV narrative ladder β€” "Your Life at Every Rank/Level of X" (verified active cluster). Niche: money/wealth history and storytelling, $10–15 RPM band, story-not-advice. Second channel (phase 2): sleep/lean-back long-form for watch-hour volume at $3–8 RPM.
Policy backdrop (verified 2026-09-30)AI disclosure toggle mandatory for realistic synthetic voice; July 16, 2026 inauthentic-content policy excludes template-identical uploads and AI personas giving finance/health/legal advice; YPP = 1,000 subs + 4,000 watch-hours/12mo, doubling to 8,000h for new applicants from Feb 1, 2027.

Test data markers

The Google account, the channel, and AdSense are real business assets, not throwaways. Nothing in this plan requires deleting them at session end β€” cleanup targets test uploads, test descriptions, and any stray test comment.
Never apply to YPP below the thresholds: a declined review locks reapplication for ~30 days. With the Feb 1, 2027 bar doubling, a wasted 30-day lockout is the single most expensive mistake this plan guards against (D4).

Flow A Β· Playbook & decisions β€” the factory floor plan (no account)

Persona: the operators re-reading the plan before building. Read-only on the live playbook + repo. Produces: confirmed decisions everything downstream depends on.

A1BothOpen https://microspaces.github.io/superstarsale/research/format-cloning-youtube-playbook_2026-09-30.html fresh (hard reload), desktop.
Expected: HTTP 200, title reads "Faceless YouTube Format-Cloning Playbook β€” 2026-09-30" (a "Daily YouTube Strategy Research" title means a stale Pages deploy β€” stop and reconcile), verified-claims table renders with βœ…/⚠️ marks, policy section present, watch-hour math section present.
A2BothConfirm the pick is recorded and the 30-topic list exists with substance-distinct entries: same skeleton ("Your Life at Every Rank/Level of X"), 30 different searchable subjects, no two topics a viewer could confuse.
Expected: format + niche match the playbook's Recommended pick; the topic list exists in the repo and every entry is a distinct real subject (this list is the inauthentic-content defense β€” B5 gates on it). A list of near-duplicates (e.g. "wealth levels", "wealth levels part 2") is a fail.
A3AgentRe-run the watch-hour/revenue math from the playbook sources: 2.0h @ 50% retention β†’ views per 4,000h; 10-min @ 50% β†’ the same; revenue at $3/$10/$15 RPM per 100K views. MikeSpot-check one number against the playbook table β€” if agent math and published math disagree, that's the issue.
Expected: 4,000 views (2h) vs 48,000 views (10-min) β€” a 12x advantage; $250/$1,000/$1,500 per 100K views at $2.50/$10/$15 RPM. All numbers reproducible from the playbook's formula, no "60x" anywhere.
A4BothDeadline tracker: compute days remaining to Feb 1, 2027, and the required watch-hour run-rate to clear 4,000h before then (uploads/week Γ— expected hours per upload batch).
Expected: both testers get the same dates and a run-rate that is achievable at the planned cadence; the number is written into the thread and becomes D2's tracking baseline. If the run-rate needs more than the planned cadence, the cadence decision changes now, not in December.

Flow B Β· Pipeline β€” one topic in, one finished video out (the content machine)

Persona: QA on the factory. Feed data: one topic from A2's list. Produces: script, voiceover, assembled MP4, thumbnail β€” the exact artifacts Flow C uploads. Repo/pipeline level; nothing touches YouTube yet.

B1AgentGenerate the script for the B-topic from the format template (same skeleton as the verified cluster: hook β†’ the ladder, rung by rung β†’ payoff). MikeRead one full script cold. Judge it as a viewer: would you keep watching at rung 3?
Expected: script follows the locked skeleton, covers its one subject in depth, reads as storytelling (how wealth works at each rung) β€” zero advice language ("you should invest…") anywhere. Any advice phrasing is a B5 gate failure, fixed before TTS.
B2AgentRender TTS voiceover for the B1 script; measure runtime and listen-check the first 60s for glitches. MikeListen to a 60s sample on phone speakers β€” the lean-back audience is on TVs and phones, not studio monitors.
Expected: audio renders end-to-end, runtime scales with script length (~150 wpm narration), no clipping/truncated tail, sounds natural enough that a cold listener doesn't bail in the first minute.
B3AgentAssemble the full MP4 with ffmpeg: voiceover + visuals + chapters, loudness-normalized, ends cleanly. MikePlay the file locally; skip around (25%, 50%, 75%) β€” every point must have picture + sound.
Expected: plays in a plain browser/phone player, runtime matches B2 audio + padding, chapters present, no silent or black stretches at skip points, file size sane for runtime.
B4AgentGenerate the thumbnail for the B-topic per the format's visual convention (real searchable subject, no fabricated faces/logos). MikeView it at phone-thumbnail size (~10mm wide) β€” can you read it? Would you click it next to the verified cluster's thumbnails?
Expected: legible at thumbnail size, subject matches the title's searchable entity, style consistent with what a viewer of the format cluster expects. Illegible-at-a-glance = regenerate before C3.
B5AgentPolicy gate (blocks C3): grep the B-artifacts for advice language ("you should", "invest in", "buy this"), confirm the disclosure flag is planned ON, and diff the topic against the rest of A2's list for substance-distinctness.
Expected: zero advice hits in script/description; AI disclosure marked for the upload; topic unique on the list. A failure here is fixed in the pipeline, not waived β€” this gate exists because the July 2026 inauthentic-content policy demonetizes at channel level, and finance-advice personas are an explicit excluded category.

Flow C Β· Channel & first publish (Mike-led; agent verifies from outside)

Persona: the business going live. Feed data: Flow B artifacts. Produces: a real channel, a staged test upload, and the first public video β€” the assets Flows D and E probe. These are Mike-only actions; the agent cannot create accounts or pass Google 2FA.

C1MikeCreate the YouTube brand channel under the business name (per the playbook identity β€” handle + name consistent with the format), set channel art and description, turn on 2-step verification for the Google account. AgentRecord the handle in the thread; verify the channel resolves logged-out (incognito) β€” public, art and description present.
Expected: channel live and public; name/handle consistent with the pick; brand-channel type (not a personal rename) so ownership can be shared later without handing over Mike's Google login. A private or unfinished-looking channel is a fail β€” the first public upload lands on it.
C2MikeStaged end-to-end upload: upload the B3 MP4 titled pairtest--, set Altered content β†’ Yes (the AI disclosure toggle), visibility unlisted, paste the description + chapters. AgentMike shares the unlisted link: fetch it, confirm title marker, description intact, chapters present, disclosure label visible on the watch page, and the video is not publicly searchable (search the exact title logged-out β€” zero hits).
Expected: unlisted = link-accessible but unsearchable; disclosure toggle survives the upload; description/chapters intact end-to-end. This proves the full pipeline (B artifacts β†’ live YouTube video) before anything public exists.
C3MikeFirst public upload: topic #1 from A2's list, B-gated artifacts, title per the locked skeleton, disclosure ON, public. AgentLogged-out: confirm public, title matches the skeleton exactly, thumbnail is B4's (not an auto-frame), disclosure label visible on the watch page, description clean (B5's zero-advice check holds on the published text).
Expected: the channel's public face is exactly the factory output β€” no manual re-edits that bypass the pipeline. Disclosure label visible without expanding anything. Any human "quick fix" made at upload time is a process miss β€” file it.
C4Both48h analytics baseline: Mike reads Studio (views, watch time, average view duration, impressions CTR); agent records the same numbers from Mike's screenshot into the thread + the log.
Expected: numbers exist in Studio (even if tiny) and match Mike's screenshot; average view duration is the number that matters β€” it feeds D2's run-rate math. A first upload with 0 impressions after 48h is itself a finding (title/thumbnail/metadata issue), not a reason to panic-delete.

Flow D Β· Watch-hour rail & cadence (the road to monetization)

Persona: the channel as a compounding asset. Feed data: C's live channel. Produces: the lean-back upload pattern, a watch-hour tracker vs the YPP bar, and a deadline-safe application plan.

D1BothLong-form/lean-back upload: a 2h+ video through the same pipeline (B1–B5 on a sleep-compatible variant of the format β€” calm narration, loopable), staged unlisted (C2 pattern) then public.
Expected: pipeline handles 2h+ without runtime/audio drift; disclosure ON; the video plays past the 1h mark without artifacts. This is the unit that makes the watch-hour math work (4,000 views β‰ˆ 4,000h at 50% retention β€” 12x better than 10-min content).
D2BothWatch-hour tracker: cumulative public watch-hours vs the 4,000h bar and the A4 run-rate, updated per upload from Studio exports. AgentCompute from Mike's Studio screenshots; post the tracker to the thread weekly.
Expected: one shared tracker, both testers read the same numbers, trajectory vs the Feb 1, 2027 deadline visible at a glance. Tracker math recomputable from the screenshots (no black box).
D3AgentCadence + format-lock audit over everything published so far: every title fits the one skeleton; topics stay substance-distinct (A2's list, checked off); uploads ship at the planned cadence.
Expected: format is locked (a viewer browsing the channel sees one coherent show), substance is distinct per video (the inauthentic-content defense holds in practice), cadence matches the A4 plan or the plan is formally revised. Skeleton-drift ("let me just try a different style this week") is a fail β€” clone the format forever, vary the substance.
D4MikeYPP application, executed deadline-safe: check Studio's monetization progress; apply only when both bars (1,000 subs + 4,000h) are green β€” and before Feb 1, 2027 so the 4,000h bar applies. Agent tracks the calendar and posts the countdown.
Expected-failure pinned: if the bar is missed and 8,000h applies, record the new math and the revised run-rate as the D2 baseline β€” the plan absorbs the doubling. What must never happen: applying below threshold (30-day reapplication lockout, the red callout in Environments).

Flow E Β· Policy & compliance probes (agent-led)

Persona: the platform reviewer / an adversarial audit. Mike observes and re-runs the in-app ones. These steps are expected to pass silently β€” any hit is a content or pipeline fix before more videos publish.

E1AgentAI-disclosure sweep: every public upload's watch page shows the altered/synthetic content disclosure; the toggle was set at upload, not retrofitted. MikeRe-check from the phone app β€” labels can render differently in-app than logged-out web.
Expected: 100% of public uploads disclose. Undisclosed realistic synthetic voice is a YPP-removal risk (labels get applied for you; repeat offenders lose the program). One miss = pull the video, re-upload disclosed, file the process miss.
E2AgentAdvice-language sweep on every published script, description, and pinned comment: no "you should buy/invest/choose", no portfolio or product recommendations, no AI-persona-giving-financial-advice framing.
Expected: zero advice anywhere β€” the channel tells stories about wealth, it never advises. Finance-advice personas are an explicit excluded category under the July 2026 policy; this is the channel-level kill-switch.
E3AgentSubstance-distinct sweep: pair up the published library β€” no two videos cover the same subject or a reskinned subject. The skeleton repeats; the substance never does.
Expected: every pair distinguishable by subject matter, not just title wording. This is the inauthentic-content defense in practice β€” "same script structure re-rendered with different nouns" is the exact excluded pattern, and the topic list (A2) is the proof it can't happen by accident.
E4AgentBorrowed-authority audit: every real name/place/entity used in titles, scripts, and thumbnails is real, searchable, and treated factually β€” zero fabricated entities, zero false claims about real people. MikeSpot-check one title's entity: search it yourself β€” does the real thing exist and match how the video uses it?
Expected: every borrowed hook resolves to a real searchable subject (the playbook's "never fabricate" rule); nothing implies a real person endorsed or appeared in the video. A fabricated entity is a same-day takedown.
E5BothIsolation + session cleanliness: the channel carries zero affiliate/store links (this business monetizes via AdSense only β€” cross-contamination with the IG rail is a fail in both directions); no pairtest- upload is public; unlisted tests stayed unlisted; no test comments left anywhere.
Expected: one business per channel, one monetization rail per business, zero test-marker leaks to public surfaces. Any pairtest- strays are listed for cleanup in the checklist below.

Results & issue log

Fill in during the session. "Match" = agent and Mike saw the same behavior. Every ⚠/βœ– row needs an issue link.

StepAgentMikeMatchIssueNotes
A1playbook live, correct title
A2pick + substance-distinct topic list
A312x math reproducible
A4Feb-2027 deadline + run-rate baseline
B1script: skeleton + story-not-advice
B2TTS renders clean, phone-listenable
B3MP4 assembles, survives skip-around
B4thumbnail legible at phone size
B5policy gate β€” blocks C3
C1Mike-only; brand channel, public
C2unlisted staging, disclosure survives
C3first public upload = factory output
C448h baseline, AVD feeds D2
D12h+ lean-back through pipeline
D2watch-hour tracker vs 4,000h
D3format locked, substance distinct
D4apply only-when-green, before Feb 2027
E1disclosure on 100% of public uploads
E2zero advice language
E3no two videos same substance
E4every borrowed entity real
E5isolation + no test leaks

Suggested rounds

Session cleanup