Check the block inventory for the topic "{topic}" for completeness against the subject area.

The inventory comes from a project/script — there may be blocks that technically belong to the topic but aren't covered there. Find exactly those gaps.

EXISTING BLOCKS:
{blocks}

Rules:
- Research the subject area (textbooks, standard references) and add ONLY blocks that canonically belong and are missing from the inventory.
- The inventory mirrors a CONCRETE source (script/project). Propose only gaps the MATERIAL itself covers — no textbook canon beyond the source. Proposals without material coverage are discarded downstream.
- A block solves EXACTLY ONE PROBLEM and is ATOMIC — same standards as the inventory.
- NO variants, rephrasings, or deep-dives of existing blocks — only genuine gaps.
- Invent nothing: only blocks you have backed by research.
- Title and description in GERMAN (technical terms stay original), description at most ~12 words.
- If there are no gaps, return an empty list — that is a valid result.

Write ONLY the JSON file to: {out_path}

Format:
{{"blocks": [{{"title": "…", "description": "…"}}]}}
No gaps: {{"blocks": []}}
{extra}
