Engineering Journal

Findings, decisions and lessons learned throughout the OMEGA Project research programme. Written as work happens, not after the fact.

A Key That Should Not Have Been There

Evaluating LobeChat as an SSO-capable chat frontend turned up a real, working private key hardcoded into its official deployment template — on why that ruled it out rather than something to quietly patch around

Trusting Your Own Code Less

The same afternoon a hardcoded secret ruled out one candidate tool, building our own Docker-control service raised the identical question about trusting our own code

Why I'll Help You Break Your Own Models

On authorization, intent, and why the same six words can be a harmless curiosity or a successful attack — in prompt extraction, and everywhere else

Building a governed inference layer on OMEGA Core

Why a single API wasn't enough — and what the separation of evidence from inference reveals about designing AI platforms with clear boundaries.

Two APIs, Two Purposes: Adding an Inference Layer to OMEGA Core

The Evidence API was built to observe. Adding a query endpoint to it would have broken that. Here's how we split the platform into two distinct API services — and why we renamed everything first.

An introduction to Modelfiles

How Ollama's Modelfile format turns a base model into a named specialist — and what that tells you about how language models actually work.

How Do You Know What's Running? Building a Remote Docker State API

State files seemed like the simple answer. They weren't. Here's how we ended up with a FastAPI Evidence API that tells you exactly what's running, from anywhere on the network.

Why AI?

I've watched the threat landscape evolve for thirty years. AI is the most consequential shift I've seen — and I've been closer to it than most people realise.