This commit is contained in:
team3
2026-07-08 21:14:33 +02:00
parent 9a6ab0937b
commit f9d77a113b
30 changed files with 1064 additions and 654 deletions

View File

@@ -1,6 +1,6 @@
Topic "{topic}". A previous step produced a flat list of learning items that is TOO FINE-GRAINED for a table of contents — single environment variables, single CLI flags, single config fields, near-synonyms. Your job is **card sorting**: group the items into a small set of **theme blocks**, so that EVERY item lands in exactly one theme. Nothing is discarded — grouping never loses an item; it only organises them.
Think of the result as chapters: ~1525 themes for a whole topic, each a coherent learning block that a learner meets as one unit. A theme with only one fitting item is fine (a genuinely standalone concept), but prefer pulling related items together over leaving many singletons.
Think of the result as chapters: ~{theme_lo}{theme_hi} themes for a whole topic of this size ({n_items} items), each a coherent learning block that a learner meets as one unit. A theme with only one fitting item is fine (a genuinely standalone concept), but prefer pulling related items together over leaving many singletons.
CANDIDATES you may group (your starting point — a pre-clustered neighbourhood):
{candidates}

View File

@@ -0,0 +1,20 @@
Topic "{topic}". A quality audit found GAPS: source-material passages and named results that NO existing inventory block covers. Your job: propose new learning blocks ONLY for these gaps — nothing else. An empty list is a valid answer (when the gaps are filler or already covered under another name).
EXISTING BLOCKS (do NOT re-propose these or near-synonyms of them):
{blocks}
UNCOVERED MATERIAL (gap passages and named results, with source excerpts):
{gaps}
Rules:
- One block per genuinely missing, teachable concept — self-contained, exam-relevant.
- Ground every proposal in the material above; never invent canon knowledge the material does not treat.
- Title: concrete concept name (max 8 words, no catalog references like "(Satz 6.33)").
- Description: ONE sentence naming what the block teaches, grounded in the material.
- Skip organizational text, prefaces, exercise scaffolding, duplicates of existing blocks.
Write ONLY the JSON file to: {out_path}
Format (`blocks` may be empty):
{{"blocks": [{{"title": "…", "description": "…"}}]}}
{extra}

View File

@@ -1,13 +0,0 @@
Das Lernbaustein-Inventar zum Thema "{topic}" ist in Blöcke mit je eigenen Subbausteinen zerlegt. Manche Aussage taucht in ZWEI Blöcken auf — im Lernguide steht sie dann doppelt. Für jedes Paar unten: Treffen A und B DIESELBE Aussage?
PAARE (jeweils mit Block-Zugehörigkeit und Kernpunkten):
{pairs}
## Entscheidung pro Paar
- **DIESELBE Aussage** (auch anders formuliert, oder eine ist Teilmenge der anderen): Welcher Block ist die natürliche Heimat der Aussage? → antworte **"a"** (A behält sie, B verliert sie) oder **"b"** (B behält sie, A verliert sie). Heimat ist der Block, in dessen Kernthema die Aussage gehört — nicht der, der sie nur am Rand streift.
- **VERSCHIEDENE Aussagen** → antworte **"nein"**. Dazu zählt: gleiche Regel, aber auf VERSCHIEDENE Kontexte angewendet (die Anwendung im jeweiligen Block-Kontext ist eigener Lernstoff); Grundregel vs. Sonderfall; gegensätzliche Aussagen.
- Im Zweifel: **"nein"**.
Antworte NUR mit JSON, ohne weiteren Text (jede Paar-Nummer mit "a", "b" oder "nein"):
{{"pairs": {{"1": "a", "2": "nein"}}}}
{extra}

View File

@@ -0,0 +1,15 @@
You are an INDEPENDENT quality auditor for a learning-block inventory on the topic "{topic}". Below are NAMED results/concepts a scan found in the source material (named theorems, algorithms, definitions) that seem to map to NO inventory block. For each: is this a real, exam-relevant concept the inventory is missing → **ja**, or is it covered by an existing block under another name / a mangled-extraction artefact / mere organizational labeling → **nein**?
NAMED RESULTS WITHOUT A COVERING BLOCK:
{results}
Rules:
- Covered by an existing block under a synonym, symbol variant or broader umbrella → nein.
- Garbled extraction artefacts (split or shredded words) and pure numbering references → nein.
- A genuine named result the material teaches and no block captures → ja.
- When genuinely unsure → ja (a missed gap is worse than one extra research round).
Reply with ONLY the JSON — no other text, no code fences.
Format (one verdict per number):
{{"relevant": {{"1": "ja", "2": "nein"}}}}
{extra}