Web Project Studios

Worked examples

What a silent failure actually looks like.

Two worked examples, one for each check. A filing process that stopped running, and a nightly job that ran every night and produced nothing. Same shape both times: what the monitoring showed, what the check asked instead, and what somebody has to decide once it turns up.

These are illustrative examples, not client work. The systems, figures and dates are invented to show the shape of the failure. There is no published case study yet and I am not going to imply otherwise.

Step 1 · What the failure looked like

Illustrative example

The job history, last twelve months

VAT quarterJob statusFinished atAlerts raised
Q1Completed07 Apr, 02:14None
Q2Completed07 Jul, 02:11None

Every run in the last year finished cleanly and raised nothing. The two quarters missing from this table are missing because nothing happened, and a record of what happened has no way of showing you that. Nobody counts the rows.

Step 2 · What the check caught

Did anything execute at all?

The same year, with the quarters that never ran put back in

VAT quarterExecution recordSubmission receiptVerdict
Q107 Apr, 02:14Receipt storedRan and filed
Q207 Jul, 02:11Receipt storedRan and filed
Q3No run recordedNoneNever ran
Q4No run recordedNoneNever ran

The trigger was disabled during a platform migration over the summer and never switched back on. From that point the job did not run, so it did not fail, so it raised nothing and appeared nowhere. There was no error available to catch, because nothing was executing to produce one.

That is the whole failure, and it is why the expected-run check compares the schedule a process claims to keep against the executions that actually exist. It is the only question in the stack that treats 'nothing happened' as an answer rather than as silence.

The exposure

Two returns that were never filed, and a dashboard that stayed green throughout. The fix is an afternoon. The uncomfortable part is that nobody can say when the trigger stopped firing, because the only record of a run is the run itself, and there were not any.

Step 3 · Human check

Finding it is the easy half. These are yours.

  • Confirm which of these processes are statutory filings and which are internal reporting.
  • Agree what counts as evidence of filing. An execution record is not a receipt.
  • Decide who is told, and in what order, before anything is submitted late.
  • Decide what should have alerted on the absence of a run, and who owns it.

Safeguard

Nothing is changed during a check. Read access to scheduler history and to the submission side, no write access, no production changes. If a finding needs fixing, that is a separate decision you make with the findings in front of you.

What you get

A written list of every unattended process, whether it ran, and whether anything landed. Where something did not, you get the period, the evidence and the exposure. Where everything is fine, that is what it says.

Step 1 · What the failure looked like

Illustrative example

Eleven months of a well-behaved job

RunDurationExit statusAlerts raised
12 Nov, 01:004.1sSuccessNone
13 Nov, 01:003.9sSuccessNone
14 Nov, 01:004.0sSuccessNone
The 320 nights before that3.8s to 4.3sSuccessNone

A job that finishes in four seconds every night and never errors reads as a healthy job. Four seconds is also roughly how long it takes to do nothing at all, and there is nothing in this view that tells the two apart.

Step 2 · What the check caught

Did it produce anything plausible?

The same nights, counting what came out of them

RunRecords past retentionRecords erasedVerdict
Early Feb, before the change874874Ran and erased
12 Nov1,1840Completed, did nothing
13 Nov1,1900Completed, did nothing
14 Nov1,2030Completed, did nothing

A schema change in February renamed the column the job used to work out what was old enough to remove. The query still ran and still succeeded. It simply matched nothing from that night onwards, so the delete step was handed an empty set and exited cleanly. There is no error anywhere in this, because nothing went wrong in the sense the tooling understands. The job did precisely what it was told.

The expected-output check never asks whether the job succeeded. It asks what came out, and whether that is a plausible amount. Zero deletions on a night with eleven hundred records past their retention date is not plausible, and that implausibility is the only signal that was ever going to catch this.

The exposure

Eleven months of personal data held past the period the retention policy commits to, and a written policy saying it was erased. That is the kind of gap found by a subject access request or an auditor rather than by an engineer, and there is a paper trail claiming the opposite.

Step 3 · Human check

Finding it is the easy half. These are yours.

  • Confirm the retention schedule the job is meant to enforce, in writing, before anything is deleted.
  • Agree what a plausible nightly volume looks like, so that zero can be treated as a failure.
  • Decide whether the backlog is cleared in one pass or in stages, and who signs that off.
  • Work out what was said to whom while the job was reporting success.

Safeguard

The check reads. It deletes nothing and it changes nothing about the job. What to do with eleven months of records that should not exist is a legal and commercial decision, not an engineering one, and it stays with you.

What you get

The date the output stopped being plausible, the evidence behind it, and a check you can keep running afterwards so that the next time the answer is zero, something says so.

Start with the audit

Which of yours would this find?

Pick the process you'd least like to have quietly stopped, and tell me how you'd currently find out. If there isn't an answer to that, it is the one to check first.

Five days, fixed fee. You get a written findings document.