The problem

SGAF was developed on a single Mac. AI agents now do much of the building, often several at once, and they need a stable machine that holds the whole stack. Testing has to be realistic without ever touching production or a real school's data.

What I built

A GMKtec M6 Ultra mini PC with a Ryzen 5 processor, running Omarchy, an opinionated Arch Linux setup. It holds the source, runs the builds and hosts a local copy of the database platform in containers. One script starts and stops the stack on demand.

The data is synthetic. Setup reuses the demonstration organisations and schools the product already has, and it refuses to run against anything that is not local. When my local settings broke the database migration checks, I kept the checks and moved the local settings out of the shared configuration instead. A control that bends to suit one machine stops being a control.

Moving the work across from the Mac follows the same discipline: preserve it, verify the copy, test a restore, then transfer, and leave both machines untouched until the new one is accepted.

The first machine I tried was an old Intel NUC. The installer failed its verification on the first write, so I rewrote it and checked it byte for byte against the published image. Then I sized the machine honestly: a dual-core Celeron with under 4 GB of memory is a small always-on box, not a build server. The building happens on the M6 Ultra.

What you can see

This website. It is built, checked and previewed on the server before anything is pushed.

The result

One machine with the source, the builds and a safe database, running for days at a time. AI agents work in separate branches, and nothing reaches production without a reviewed merge.