Data Quality: Dimensions and Error Classes — the Theory Behind the SQL Checks

A lot gets written about data quality, and very little gets measured. The German-language practitioner’s standard reference alone lists sixty possible quality criteria — from timeliness to reliability —, and even the lean models still arrive at six to fifteen dimensions. Yet the core of the matter is surprisingly tangible: a data error caught during … Read more

Testing Stored Procedures in Postgres — Why PL/pgSQL Only Fails at Call Time, and What a Test Has to Build First

A click on “Duplicate” in the project list, a red notice “The project could not be duplicated”, nothing else. The server log has the reason: a procedure reads a column that has not existed for five months. During those five months, the deploy ran green on four environments, production included. The convention check had nothing … Read more

Writing Manual Test Cases Before the Code — How the Origin of a Catalog Flipped in Seven Weeks and Which Eight Bugs It Found

In mid-September 2026, this blog published a number about the catalog of manual test cases in the DI² project: 27 of 32 test cases existed only because something had been broken before. Whether that share would fall as the practice matured was left open. A third data point was supposed to show it, a few … Read more

The Context Window Is Full Before the First Prompt — When Project Rules in Claude Code Become a Fixed Cost of Every Session

A subagent in Claude Code is supposed to answer a one-line question about the tool’s documentation. It aborts before taking its first step: Prompt is too long, 347,814 tokens against a limit of 200,000. The question itself had loaded nothing. What had loaded were the project instructions that every session in this repository receives at start. … Read more

Reading Complex XML in SQL Server — Shredding a Thousand Attributes Generically Instead of Looping for Hours

A catalog of around 3000 product configurations arrives as XML. Depending on the equipment, a configuration carries different and additional attributes, around a thousand across all variants. In an earlier project, the evaluation of such a catalog ran in application code: a loop over the object types, inside it a loop over the attributes, plus … Read more

Unit Test Passes, Integration Fails — Three Questions You Can Ask Without Reading the Code

In the DI² application a validation rule could not be saved. The dialog offered the user a column that had not yet been selected in the project. A click on that column should have selected it. In one particular case it did not, and the server rejected the rule. A coding agent wrote a fix. … Read more

How to Write Manual Test Cases — Structure, Template and Four Rules from a Project with a Coding Agent

In mid-September 2026 the catalog of manual test cases in the DI² project had 32 active entries. 27 of them existed only because something had been broken before. For just two test cases, what has to be visible on screen was settled before the code existed. A catalog that came almost entirely from bugs secures … Read more

The First Run Tests the Test Case — What a Test Case Is Worth When Nobody Has Ever Executed It

A manual test case in the DI² project had everything the convention asks for: a header with goal and precondition, a step table with step and expectation, an entry in the catalog overview, references to the files it covers. The catalog’s automatic structural check had accepted it. On the first execution it turned out that … Read more

The Green Test That Proves Nothing — Why a Passing Test Suite Confirmed the Bug It Was Supposed to Catch

A bug on the DI² project’s website counted as fixed for four weeks. When the reader switches the language, the page is supposed to stay at the spot where the reader was. Three fix commits had promised that one after another, each with its own diagnosis, and after each one the automated test suite was … Read more