Skip to main content

NotesBuilding software that holds up

The default is not where it runs

Code leans on defaults it never states, and tests on the developer's machine share them.

What I was looking for

Why Cernos passed its tests and then failed on first real use.

What I found

A library's default socket path, a filesystem that ignores case, an API limit as documented: the code is correct against them, and they are not what production does. These failures show up late, on first real use or on another operating system.

Cernos's sandbox assumed Docker's default socket; Docker Desktop on macOS listens elsewhere, so the first real run failed with Docker up. A planted bug escaped a test only because the Mac's disk ignores case. And an API documented as "up to 2,000" refused requests at 2,000.

The move

I list the defaults a piece of code assumes and check each one on the machine it will really run on.