Creator research pilot
Research that cannot invent a contact.
A first runnable version of the workflow: a list of channel URLs goes in, and every line that comes out carries the page it was read on, the words it was read in and the date. A check in code downloads the source again and refuses anything whose words are not there.
The review sheet the workflow produced
Controlled test cases, executed by the workflow. The domains are reserved for documentation and resolve for nobody, so no creator appears here and no address is real. Open a line to see what was read, where, and what is missing before anyone writes to anybody.
Bramblewood Bakesh***@bramblewoodbakes.testverified⌄
partnership and press enquiries, write to h***@bramblewoodbakes.test and we will answer within a week. YouTube
https://bramblewoodbakes.test/contact/read 2026-09-17
Harbourlight Potterya contact form, no address publishedneeds review⌄
get in touch
https://harbourlightpottery.test/get-in-touch/read 2026-09-17
Northwind Climbingrejected by a reviewer: we write to creators, not to their agenciesneeds review⌄
work. Brand and partnership enquiries: b***@apexartists.test Channel: youtube.com/@northwindclimbing
https://apexartists.test/roster/northwind/read 2026-09-17
Quill and Compassthe channel publishes no site the workflow could readnot found⌄
Saltmarsh Sessionsthird party page about the creator, not a property of theirsneeds review⌄
m***@saltmarshfans.test refused: the address sits on a site whose relation to this channel is not established
One line carries a decision a reviewer recorded, with the reason they gave. The whole list was then read again, every calculated column rewritten, and the decision is still there because the evidence behind it had not changed. Had it changed, the line would be back in the queue with the previous answer still visible. A sixth line is in the same sheet and is shown below: it is the one where something untrue was proposed on purpose.
What happens when a finding is not true
A contact was proposed for Fernhollow Forge from outside the workflow, with a real page cited and a sentence that is not on it. Case injected on purpose; rejection executed by the workflow, on the path that leads to the sheet and to the draft.
p***@fernhollowforge.test
Press and partnership enquiries go to p***@fernhollowforge.test
on https://fernhollowforge.test
rejected: quote not found on the page. The line reads not found, the sheet carries no address and the draft is blocked.
Same input, one function neutralised: the invented address reaches the sheet and a draft is produced. That is what makes the check the cause, and not a step standing next to one.
Run it yourself on controlled sources, without a key, without a network call and without reaching anyone:
python -m pilot.run replay --input fixtures/controlled_cases.json --out out/The same command with run takes your own list of channel URLs and reads the public web. What is left to decide together: which creators you want, your own templates, and where the sheet should live.