A registry of cache keys, maintained by review, one year after the incident that produced it.
return [
'order:{id}' => [
'written_by' => OrderRepository::class,
'regenerated_by' => 'a database read',
'if_missing' => 'a slower request',
],
'report:monthly:{ym}' => [
'written_by' => MonthlyReport::class,
'regenerated_by' => 'a 40-second query',
'if_missing' => 'a 40-second request',
],
];
The registry has drifted twice in a year and both times the weekly flush test caught it, which is the arrangement working — the registry is documentation and the test is the mechanism. A key added without a registry entry is not detectable by anything, which is the remaining gap and would need a runtime check nobody has written.