Jeremy Braband
jbraband.bsky.social
Jeremy Braband
@jbraband.bsky.social
Senior Laravel Developer in Minnesota, USA, working in the financial industry.

he/him
I do already have a listener on Illuminate\Console\Events\CommandStarting

for db:wiping my app's 2nd and 3rd databases on migrate:fresh. Disable foreign key constraint there too.

and then listen for CommandFinished to renable.

that should do it
November 12, 2025 at 9:23 PM
I think you're saying to disable foreign key constraint before the test suite runs migrate:fresh, then reenable afterward.

I guess that would be allow all the tables to be created quicker, and only take the foreign key hit once at the end right?
November 12, 2025 at 9:22 PM
But my own dev work is done on windows with Herd

trying docker installed right to Ubuntu in WSL right now
November 12, 2025 at 7:14 PM
Mysql, Postgres (for vector storage), and Redis are my last docker containers. Used to use Sail, but have switched to Herd. The databases are still on docker to save the Herd pro license cost

I do also run claude code in sandbox-ed docker container to provide it as few things as possible.
November 12, 2025 at 7:13 PM
I do use Docker Desktop out of convenience. By CLI, I assume you mean to install the apt repos and install docker directly?

I am on windows, so it'll be in WSL, but no big deal.
November 12, 2025 at 7:12 PM
i'll take a peek!
November 12, 2025 at 7:08 PM
The move to RAM-disk for the mysql container did the trick. 300 tests in 90s with 16 processes, down from 38 minutes

so clearly some disk I/O problems with my docker setup
November 12, 2025 at 4:09 PM
3) digging into why --parallel says 16 processes but only creates _1-_6 DBs

I had cut down the number of tests to 30, and I guess brianium/paratest does something to figure out the number of processes. I expanded up to 300 tests and I now see 16 test databases

🎉
November 12, 2025 at 3:52 PM
I want to off-load the mental overhead of being my own test suite...forcing myself to solve these things now.
November 12, 2025 at 2:11 PM
I'm trying really hard to right all of my previous wrongs and keep up with writing tests.

Being a one-man dev team, its easy to encounter this stuff and say, I'll figure it out later, then not write tests.
November 12, 2025 at 2:10 PM
Solved a different problem though, extra databases not being wiped between tests

Followed a variation of this solution: github.com/laravel/fram...

Still only one copy of those DBs shared across 16 processes though, so will debug that after the tests run reasonably fast.
Connection Variable not applied in migration down() method · Issue #51735 · laravel/framework
Laravel Version 10.10 PHP Version 8.1.28 Database Driver & Version psql (PostgreSQL) 14.12 (Homebrew) on MacOS Description When applying a connection to migration using the $connection property it ...
github.com
November 12, 2025 at 2:07 PM
I wrote this after I saw that --parallel will only dump the 16 databases if there are new migrations since the previous test run. I worry about using this when I get to GitHub Actions though.
November 12, 2025 at 2:07 PM
I do have a bash script I built up to pre-migrate _1, dump it, and import that SQL into _2-_16, but I paused that while chasing these deeper issues.
November 12, 2025 at 2:07 PM
Today’s plan: 1) optimize infra first, mysql docker container’s disk going fully in RAM with 8 CPU cores and 8GB of RAM

2) another schema dump squash, I’ve got ~60 migrations still running after the last squash.

3) digging into why --parallel says 16 processes but only creates _1-_6 DBs
November 12, 2025 at 2:06 PM
Single-threaded migrate:fresh takes ~2min (schema ~1min + migrations ~1min). total single threaded test run is 3min 20seconds. Parallel testing (including running the tests) blew up to 38min with 16 processes
November 12, 2025 at 2:06 PM
looking forward to following along. Been enjoying your recent spurt of lingering project completion.

You're not alone in this problem :)
November 6, 2025 at 10:02 PM
i am diving into AgentOS as well. Overwhelming to suddenly be thinking about and documenting all these things at the start, instead of along the way.

I really want it to fit into my workflow.
November 6, 2025 at 9:32 PM
same here, but mine are the same age as my teens
November 2, 2025 at 5:29 PM
I love your in-the-trenches posts like this.

That machine, all of the apps are installed and functional? I assume your talking about the codebases are available to it but not functional

Or is the LLM interacting with the apps directly in a sandbox?
October 27, 2025 at 1:03 AM
Are you training a new model with knowledge of all the applications and interlinks?

Or maybe just building a context document for it to ingest with every new chat
October 26, 2025 at 11:51 PM
Unfortunately I am said guy that knows where the bodies are buried (so to speak) within my company's firewall.

This is an interesting topic to me, since I spend a good chunk of time taking input, questions, bugs reports. To offload that to a knowledgeable agent would be awesome as a starting point
October 26, 2025 at 11:49 PM
The Javascript Bible image hit hard, in a good way.
October 24, 2025 at 6:52 PM
sounds like a lot of fun to me too!
October 24, 2025 at 6:46 PM