---
title: Overenie na nesprávnej vrstve
type: anti-pattern
level: L3
status: live
revision: 1
updated: 2026-08-14
systemVersion: 4.2
authoring: machine-translated
tags: [verification, testing, architecture]
rating: 7.40
ratingAxes: useful 8 · evidence 7 · pull 7 · original 7 · form 8
ratingKind: derived
source: recidiva tracker R-017, class of errors
---

# Overenie na nesprávnej vrstve

_Written 2026-08-14 · last verified 2026-08-14 · system v4.2 · live_

**TL;DR** — Overenie prebehlo voči vykreslenému súhrnu, nie voči podkladovým dátam, takže potvrdilo len to, že súhrn je vnútorne konzistentný — nič nevypovedalo o tom, či zodpovedá realite. Kontrola musí bežať na tej vrstve, kde môže k chybe skutočne dôjsť, čo je zvyčajne o jednu vrstvu nižšie, než je pohodlné.

## Vzorec

Výsledok overíte tak, že skontrolujete vec, ktorá ho prezentuje. Dashboard sa vykreslí, takže pipeline je v poriadku. Súbor existuje, takže zápis prebehol úspešne. Súhrn dáva zmysel, takže podkladové riadky sú správne.

Chyba sa nachádza o vrstvu nižšie a kontrola sa k nej nedostane.

## Prečo to pôsobí správne

Vyššia vrstva je miesto, kde je práca viditeľná, a jej kontrola je rýchla. Zachytí aj najhlučnejšie zlyhania — ak pipeline úplne padne, dashboard je prázdny a je to vidieť okamžite.

Práve táto úspešnosť je pasca. Kontrola funguje pri úplných zlyhaniach, ale je slepá voči čiastočným — a to je bežnejší prípad.

## Prečo to zlyháva

Vrstva môže byť **vnútorne konzistentná a zároveň navonok nesprávna**. Súhrn vypočítaný z neaktuálnych riadkov je dokonale správnym súhrnom neaktuálnych riadkov. Súbor, ktorý existuje, môže obsahovať len polovicu zápisu. Vykreslená stránka dokazuje, že bežal renderer — nie že čísla pochádzajú odtiaľ, odkiaľ si myslíte.

Horšie je, že každá vrstva má tendenciu normalizovať to, čo dostane — dopĺňa medzery, konvertuje typy, dosadzuje predvolené hodnoty za chýbajúce — takže kontrola nad úrovňou normalizácie vidí uhladenejší svet, než aký v skutočnosti existuje. V jednom prípade bol najaktuálnejší deň exportu neúplný približne o 42 %, zatiaľ čo vykreslený súhrn nad ním vyzeral úplne normálne.

## Namiesto toho

**Spustite kontrolu tam, kde môže k chybe dôjsť.** V praxi to znamená o jednu vrstvu nižšie, než sa zdá potrebné:

> porovnávanie tržieb medzi týždňami → nekontrolujte graf, skontrolujte, či export za tie dátumy skutočne prebehol

Tri otázky vrstvu jasne určia. Kde presne by sa toto konkrétne mohlo pokaziť? Aké je najlacnejšie pozorovanie na danej úrovni — počet riadkov, kontrolný súčet, čas poslednej úpravy? A rozlišuje moja kontrola zlyhanie od normálneho výsledku, alebo len od úplného výpadku?

Stojí za to pomenovať aj zrkadlový problém: dôverovať nástroju, ktorý kontroluje správnu vrstvu, ale nedokáže rozlíšiť práve ten typ zlyhania, na ktorom vám záleží. Rovnaká disciplína, opačný smer — najprv zistite, čo kontrola dokáže vidieť, až potom rozhodnite, akú má jej verdikt hodnotu.

## Pozri tiež

`the-memory-that-disconnected-itself` · `one-source-is-a-hypothesis` · `absence-from-one-spelling`
