Uncategorized

  • A restart limit that fired for the first time

    A systemd burst limit configured in 2023 as a precaution, which took three years to be needed. Without the limit the worker would have restarted every five seconds…

  • A post-incident note written by somebody who slept through it

    An incident resolved automatically overnight, written up from the timeline rather than from memory. Writing it up from logs rather than from experience produced a better note than…

  • An autoloaded option audit that found nothing

    A monthly check that has failed twice in two years, reporting clean for the fourteenth consecutive month. A check that has stopped failing is either a solved problem…

  • A plugin that took over what the theme used to do

    A theme reduced to templates and styles, and functionality that moved into a plugin — which is where it belonged. The rule that fell out is that anything…

  • The API version that was finally decommissioned

    Version 1, deprecated in March 2025 with a sunset date of December, switched off in January. Nine months of overlap and the date still moved by a fortnight,…

  • An alert into a channel nobody reads at 04:00

    An alert that fired correctly at four in the morning, into a channel that is read at eight. An alert that is correct, correctly routed and unread for…

  • A restore from the second copy, timed

    A drill against the offsite copy rather than the primary, which took considerably longer for a reason nobody had costed. A recovery objective quoted from the fast path…

  • PHP 8.1 reaches end of life, and the one host still on it

    December, the end of security support for 8.1, and a host running it that nothing in the deployment inventory knew about. The end-of-life date is not the story…

  • A second backup provider with write-only credentials

    Every backup in one provider, and a plan that assumed the disaster would be local rather than at the provider. Ranking the failure modes is what makes this…

  • A plugin whose configuration is a filter

    Configuration as code, for a plugin that will never be distributed, and the test that covers it. Testing a filter is testing the contract rather than the implementation,…