Jeffrey M. Barber

Tombstone

goatbot

Apr 2026 · age 44

What it was

A build, deploy and certificate console for the Adama platform, meant to be run and trusted by exactly one operator. It is a single Java jar serving server-rendered HTML over Netty. A poller checks the source every thirty seconds, pulls, and runs a thirteen-stage Maven pipeline whose colored output streams live to a dashboard, because Maven is run under a fake terminal so it keeps its colors. Before shipping, the pipeline refuses to publish any version that already exists in S3. The entire deployment state is one tiny object named current holding a version string, and rollback lists are derived from it. A certificate agent renews Let's Encrypt certificates by dropping challenge tokens into a bucket the platform already serves. Users sign in with Argon2id hashes. It was written in sixteen days, most of it in one Saturday, with an agent brief in the project from the first code commit.

Wins, for the age

What it taught

Genealogy

Ancestors: Adama: the platform it was built to build, deploy and certify. Career S3: the object store as the source of truth. Farm Cron: a one-person Java server for real operations. Jswam: managing sites and domains on AWS from Java. Wake: sites shipped to S3 without thinking about it. Descendants: Hearth: one jar, Netty, its own certificates, run by one operator.

Epitaph

Here lies goatbot, which colored its logs by lying to Maven about a terminal and refused to ship a version twice. Its most careful work went to a remote its own checkout never pulled.