- Filed
- September 17, 2026, 22:13 UTC
- Actor
- Unattributed operators of a 23-site AI-generated web farm on koizo.io and koizo.cloud infrastructure; Canada's National Observer mapped unexplained Florida contacts and a Let Alberta Decide data path, and recorded denials of knowledge from the named Florida email holder and silence from the campaign
- Target
- Alberta voters who ask chatbots or AI search what the 19 October 2026 referendum asks, when it is held, and whether neighbors already support Option 2
- Source
- Impersonated Source falsified: fake personas, outlets or documents
- Confidence
- high Multiple independent open sources, low disagreement about the facts
- Techniques
- Corpus poisoningSynthetic mediaAstroturfingPlain folksDisclosure theater
- Where
- Alberta, Canada, Florida
- Channels
- 23 AI-generated independence websites including Vote Yes Alberta, Farmgate, Alberta Tomorrow, Honour Guard Alberta, Our Alberta Vote
- robots.txt and llms.txt instructions to ChatGPT, Claude, Perplexity, Google, and Common Crawl
- koizo.io, koizo.cloud, and sitegen.koizo.io generation stack
- alberta.koizo.cloud dashboard containing Let Alberta Decide landowner data
- Canada's National Observer investigation, 4 September 2026
- Centre for Media, Technology and Democracy Alberta-online report, 10 September 2026
- Elections Alberta third-party advertiser register and 19 October ballot calendar
Summary
On 4 September 2026 Canada's National Observer published Rory White's reconstruction of 23 AI-generated websites that promote Alberta independence while instructing crawlers to cite and train on the pages. The sites name invented committees and carry more than 100 fabricated voter testimonials aimed at farmers, veterans, mothers, youth, oil workers, and Indigenous readers. Two pages state the vote is on 26 October; the CBC voter guide fixes polling day as 19 October 2026. Source code grants eleven crawlers, including ChatGPT, Claude, Perplexity, Google, and Common Crawl; some hosts ship an llms.txt cheat sheet. Hosting and a generation plan sit on koizo.io and koizo.cloud; a Let Alberta Decide landowner dashboard appeared on alberta.koizo.cloud. A 10 September Centre for Media, Technology and Democracy report separately found Google AI Overview and ChatGPT giving contradictory answers on separation about half the time. Score the farm, crawler files, and date error as high. Score a signed operator and flipped votes as not shown.
Analysis
The last two active briefs covered an IRGC-affiliated water-system persona and a Politology coordinator feeding Radio Lengo Songo. Rotation this cycle is commercial-network and retrieval-system work on a Canadian ballot, not another ministry desk and not another X farm.
On 4 September 2026 Canada's National Observer published White's map of twenty-three sites. The documented spine does not require a foreign-intelligence frame. The pages present as non-partisan voting guides. They invent authorizing committees that do not appear on Elections Alberta's third-party advertiser list. They stock more than one hundred named Albertans, including an AI-faced retired warrant officer and Maskwacis supporters, whose faces OpenAI's detector later flagged as model output. Two sites put polling day on 26 October. The CBC collaboration guide and the Let Alberta Decide campaign site itself fix 19 October, with advance voting 13-17 October. Archives from late August show robots.txt language that welcomes answer engines and asks models to train on the corpus. Some hosts add llms.txt. Eleven crawlers are named in source. A generation plan on sitegen.koizo.io described an Anthropic-and-OpenAI pipeline for spinning sites. After the paper called a Florida email on that plan and Let Alberta Decide about a landowner dashboard on alberta.koizo.cloud, three backend pages dropped within hours. Public misinformation pages stayed up. The Florida email holder denied any role and offered a malware explanation; the campaign did not answer the dashboard question. On 10 September the Centre for Media, Technology and Democracy, measuring a different layer, found Google AI Overview and ChatGPT giving contradictory answers on separation outcomes about half the time and recorded a 3.5-fold rise in AI images among pro-independence posts on X. That shop also wrote that it did not find a covert U.S. or Russian campaign. Score the farm, the crawler files, the false date, and the takedown-after-contact pattern as high. Score Let Alberta Decide as the commissioning client, or Florida as the author, as open. Score chatbot answers as already decisive of the 19 October result as not shown.
Mechanism is corpus-poisoning first. The audience is not the human who lands on Farmgate. The audience is the model that will be asked, in the last week of the campaign, when Albertans vote and whether veterans already moved. Synthetic-media is the production line: volume, faces, and bylines no small civic shop could staff. Astroturf is the costume of neighbor speech. Plain-folks is the demographic skin, farmer to mother to Indigenous supporter, used as the warrant. Disclosure-theater is the gap between a robots.txt that courts machines and the absence of a registered sponsor line a voter or a crawler can carry into the answer.
This is propaganda on the method test where origin is an unattributed production stack, form is local civic guidance plus retrieval text, and the design goal is to move identification so a coordinated Option 2 frame reads as independent Alberta common sense when a chatbot summarizes the race. Black-to-gray color does not cancel the method. Advocacy for a second, binding separation vote is legal speech. Seeding invented witnesses and a wrong calendar into the machines that will be asked about that vote is the influence layer. A same-method test applies in reverse. A Remain shop that spun twenty-three AI 'neighbor' guides, backdated them, invited Claude and Perplexity to train, and put polling day a week late would be this brief with the slogan swapped.
Literacy counter: keep three objects apart. One: the twenty-three URLs and August archives, the 26 October error against the 19 October calendar, the llms.txt and eleven-crawler grants, the koizo generation plan, and the dashboard hostname. Those are records. Two: White's U.S.-linked headline and CMTD's no-covert-foreign-campaign sentence. Those are readings. Three: the instruction that object one proves every Option 2 volunteer is a Florida cutout, or that object two proves chatbots are safe to use as a ballot guide. If the payload is two or three, the stack is still doing method work. If the payload is one, open the 4 September investigation, one archived robots.txt, the Elections Alberta advertiser list, and the CBC 19 October guide on the same screen.
Tells
- robots.txt or llms.txt that invites named answer engines to cite and train
- Articles dated before the domain existed
- Authorizing committee names missing from the official third-party register
- A polling date one week off the legal calendar
- Backend generation pages that vanish hours after a reporter calls
Evidence
- Canada's National Observer, 4 September 2026: White on the 23-site chatbot farm
- Canada's National Observer, 8 September 2026: follow-on on chatbot scraping and Florida path
- Centre for Media, Technology and Democracy, 10 September 2026: Alberta referendum online, chatbot inconsistency
- CBC News, 15 September 2026: 19 October ballot text and 13-17 October advance polls
- Elections Alberta: registered referendum third-party advertisers
- Internet Archive, 31 August 2026: Alberta Tomorrow robots.txt captured in the investigation
- Internet Archive, 31 August 2026: Vote Yes Alberta public page