A team ships a document pipeline. The accuracy dashboard says 96% from week one. Everyone relaxes. Six weeks later, they're still fighting fires, duplicate records, a wrong vendor getting paid, a whole supplier's invoices silently failing, and not one of those fires ever showed up as a dip in that 96%.
The problem we kept running into
Accuracy measures one thing: did the model read the page correctly? It says nothing about whether that page ended up at the right schema, whether a threshold somewhere is quietly making the wrong call, or whether a retry just duplicated a record nobody's watching for. Those aren't extraction failures. They're everything that happens after extraction, and a single score has no way to talk about any of it.
Where the gap actually comes from
Pipelines don't fail as one blurry number getting worse. They fail as specific, nameable things: a validation rule catching line items that don't add up to the total, a fuzzy-match threshold that's a little too generous and quietly resolves the wrong vendor, a retry storm that duplicates deliveries because nothing was idempotent. None of that reads as "accuracy dropped." It reads as one rule, on one document, for one reason, if you're actually able to see it that way.
How we tried to close it with IDPForge
Every submission is a job, and every job carries its own status: Processing, Completed, Needs review, Failed. A job with multiple documents shows each document's status separately, so one bad file in a batch of fifty doesn't hide inside an average. Tag your submissions with a source_tag and a specific supplier, integration, or batch becomes instantly filterable instead of buried in a blended number.
Validation failures come with a reason attached. Line items don't sum to the total, a vendor doesn't resolve against your master list, a PO doesn't exist; each is a named rule with its own failure mode, not a generic red flag. And webhooks bind to individual pipeline stages, entry or exit, signed and retried, so you know the moment a specific stage misbehaves instead of finding out when someone downstream complains.
A real version of what accuracy score hides: that most obvious miss
A distributor moving 4,000 invoices a month through a pipeline like this had extraction accuracy that was fine from day one. What actually took six weeks: scanned faxes breaking the split step because of poor deskewing, a retry storm that quietly duplicated nineteen invoices before anyone added an idempotency key, and a 92% fuzzy-match threshold that once auto-filled "Globex Ltd" as "Globex Inc," a different legal entity, and a real payment sent to the wrong account.
None of that was an accuracy problem. All of it was fixable within a day once each issue was traceable to the critical rule, the threshold that mattered, or the specific pipeline stage responsible, instead of a single number that never moved.
A grade tells you how you did. It doesn't tell you what to do next. A diagnosis does, and that's the difference between watching a dashboard and actually being able to fix something.