Epic is reportedly betting its next big shooter on code Claude writes and people review. Review is where that plan gets hard. AI-written code is not more dangerous than a junior developer's output, but it arrives at a volume that breaks human review capacity, so review, not coding, becomes the constraint. When a model writes most of a codebase, your security process stops being a mistake catcher and becomes quality control on an assembly line. Here is the pipeline I would build on day one, and the mistakes I would avoid in the checks themselves.

The facts, attributed correctly: a Bloomberg report cited by Ars Technica says Epic is pivoting an upcoming Marvel and Star Wars shooter to "AI first" development, with "no more hand-written code" and art "generated with full AI workflows," per internal employee messages [1]. Epic has not confirmed the details. CEO Tim Sweeney wrote on X about "a huge pivot underway here at Epic, moving developers around to retool for maximum AI acceleration" shortly after the story ran [2]. Everything below assumes the report is accurate, which is the assumption your security planning has to survive anyway.
What breaks first: review capacity
Most coverage of this story asks whether AI can write good code. That is the wrong question. The model's output quality matters less than the fact that a team reviewing an order of magnitude more code than normal will approve things it would have caught at normal speed. The failure mode is not bad code. It is tired review.
So the first automation is triage, not a clever scanner. Rank every model-written diff by how much surface it touches: new network handlers, parser changes, anything touching player input, anything touching persistence. Review those first, in person. Boilerplate and test scaffolding go to a fast lane with looser checks. If your team cannot split the queue like that, the model's volume will flatten all of it into one unreviewed blur.

The checks I would build, and the ones that do not work
CI runs the scans: Semgrep for the shallow patterns, and clang-tidy or CodeQL for the C++ memory and concurrency bugs, since Unreal is C++ and Semgrep's coverage there is thinner than its web-language coverage. n8n routes what the scans find: a Webhook node receives the CI result, an IF node on the exit code, and a Slack or Telegram message goes out with the findings attached. I have not run this pipeline at scale, so treat it as a design, not a case study.
Three tempting checks do not work as proposed:
Deterministic diffing against a "clean baseline" is noise. The same prompt to the same model produces different output each run, so your diff is a wall of random variation. If you want drift detection, hash the compiled artifacts or run behavioral tests, not the source text.
Scanning commit messages for prompt injection looks in the wrong place. Commit messages are written by the agent, not read as instructions, though agents do read git log in later tasks, so it is not a zero surface. The main injection surface is what the model reads while working: issue bodies, documentation, dependency READMEs, web content fetched during a task. Point the injection checks at those inputs, and treat every ticket body and vendored doc as untrusted text.
"Retrain the model" is not a control you have. Epic reportedly uses Claude, and nobody outside Anthropic retrains Claude. The controls that exist are pinning the model version so behavior does not shift under you, prompt discipline, and tightening what lands in the context window. The same logic applies to poisoning: you do not control the training data. The poisoned thing in your threat model is context, meaning the repos, docs, tickets and vendored dependencies the model reads.
One more pattern to avoid in the checks themselves: do not "fix" raw buffer handling by swapping C string calls for slightly different C string calls. In Unreal code the correct target is the engine's own types, FString and FCString, or checked TArray access, not strncpy, which has its own non-terminating edge case that has bitten security teams for decades.
What to copy, and what to skip
A teardown of Claude on Unreal describes compilation and test gates as the backbone: compiler warnings as errors feeding back into the model's loop, and iterative rebuilds until the code passes [3]. That is the honest framing for automatic rewrites: they are not safe by design, they break working code regularly, and the build plus test suite is the only thing standing between a confident rewrite and a silent regression. If your tests do not gate the model's output, the model is not in your pipeline, it is in production.
MicroVM isolation for model-suggested commands is worth copying: run what the agent suggests in a throwaway VM or container with no network and no credentials, and record what it did. This is the single cheapest containment decision in the whole stack.
What I would skip: treating every model suggestion as needing a sign-off ritual. In the fast lane from the triage section, if the build, the static pass and the test suite are green, an approve-on-exception flow beats a mandatory human click. The network-handler and input-handling diffs still get a person, every time. The human attention you save on the fast lane is the scarce resource this whole pivot consumes.

The day-one list
- Pin the model version in config, not in a prompt. When the provider retires that version, you want the build to fail loudly, not the behavior to drift.
- Wire the scanners into CI: Semgrep for shallow patterns, clang-tidy or CodeQL for C++ memory bugs, findings attached to the pull request. Let n8n route the findings to where people actually look.
- Inventory the injection surface: list every place the model reads text you do not control, and mark those as untrusted input in your pipeline docs.
- Give any agent with shell or network access a throwaway execution environment with no credentials inside it.
- Split the review queue by blast radius, so the humans you have read the network handler changes and not the test fixtures.
None of this is futuristic. It is a few weeks of pipeline work and a policy doc. The interesting part of the Epic story is what happens to security practice: it turns into factory quality control, and most teams have not started building the factory.