cards/docs/marketplace/seed/README.md
Till JS 9a07454b75 seed: 3 Cardecky-Decks v1.0.0 + Audit-Trail im Repo
Drei Cardecky-Decks live im lokalen Marketplace, mit komplettem
Audit-Trail unter docs/marketplace/seed/:

| Deck                          | Karten | Lizenz    |
|-------------------------------|--------|-----------|
| geografie-welt-top30          |    30  | CC0-1.0   |
| english-a2-grundwortschatz    |   500  | CC-BY-4.0 |
| periodensystem-elemente       |   118  | CC0-1.0   |

648 Karten gesamt = 1296 FSRS-Reviews. Alle drei via /cards-deck-
Skill 5-Stage-Pipeline (Plan, Recherche, Design, Validate, Publish).
Bulk-Mode mit Python-Heredoc-Generator, Server-Side atomic-Insert
in <1s pro Deck.

Pro Deck im Audit-Trail:
- plan.md (Subtopic-Boundaries, Streitfälle vorab)
- research/sources.md (3-8 nummerierte Quellen)
- research/notes.md (Recherche-Notes, Streitfall-Auflösungen)
- design/build_cards.py (deterministischer Generator mit Sanity-
  Checks gegen Front-Duplikate)
- design/cards.jsonl (atomic Output, 1 Karte/Zeile)
- design/outline.md (Subtopic-Counts + F-Range)
- validate/report.md (5 Standard-Checks alle ✓)
- publish/deck.json + cards.log (Server-Response + Round-Trip)

CONTENT_PLAN §8 Phase-1-Seed-Liste: 3/20 done.

README.md erklärt die seed/-Konvention für künftige Cardecky-Decks
sowie das Update-Protokoll bei PR-Merges aus dem Marketplace.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 18:49:05 +02:00

3.7 KiB

Cardecky Seed-Decks — Audit-Trail

Reproduzierbare Deck-Erzeugung. Pro Deck eine Sub-Direktive mit allen Stages des /cards-deck-Skill-Runs:

seed/<slug>/
├─ plan.md                  Stage 1: Thema, Subtopics, Card-Count, Type-Mix
├─ research/
│  ├─ sources.md           Stage 2: Quellen-Liste mit URLs + Zugriffsdatum
│  └─ notes.md             Stage 2: Recherche, Streitfall-Auflösungen
├─ design/
│  ├─ outline.md           Stage 3: Subtopic-Counts + F-Range
│  ├─ build_cards.py       Stage 3: deterministischer Generator
│  └─ cards.jsonl          Stage 3: 1 Karte/Zeile, mit source_refs
├─ validate/
│  └─ report.md            Stage 4: 5 Standard-Checks (atomicity,
│                           source-coverage, dedupe, type-fit,
│                           mission-check)
└─ publish/
   ├─ deck.json            Stage 5: Server-Response auf POST publish
   └─ cards.log            Stage 5: Audit-Log mit Round-Trip-Zeit

Wofür dieser Trail dient

  1. Reproduzierbarkeit — bei jedem Skill-Re-Run mit derselben build_cards.py muss die identische cards.jsonl entstehen (deterministisch via random.seed). Jede Abweichung deutet auf einen Bug oder eine bewusste Schema-Änderung.
  2. Editorial-Transparenz — User können in research/sources.md sehen, welche Quellen Cardecky-Decks zugrunde liegen. Sie können notes.md lesen, um die Streitfall-Entscheidungen zu verstehen.
  3. Versions-Bumps via PR-Merge — wenn der Marketplace einen PR auf den Deck merged, entsteht eine neue Version 1.1.0 ohne dass dieser Trail mit-aktualisiert wird. Das ist OK: der Trail dokumentiert die initiale Veröffentlichung v1.0.0; spätere Versionen leben in der DB + im PR-Verlauf.
  4. Compliance / DSGVO — falls jemand fragt, woher Cardecky die deutsche Übersetzung von „neighbor" hat: research/sources.md sagt PONS [4], research/notes.md zeigt die US-Spelling- Disziplin.

Konventionen

  • Slug = Verzeichnis-Name = Marketplace-Slug. Genau dasselbe in cards-drafts/ und seed/. Slug-Validation in cards/apps/api/src/lib/marketplace/slug.ts.
  • Quellen werden nicht mit-versioniert. URLs in sources.md bleiben wie sie zum Skill-Run-Zeitpunkt waren. Wenn eine URL später dead ist, wird sie hier nicht ersetzt — der historische Wahrheits-Stand bleibt erhalten.
  • build_cards.py ist die Wahrheits-Quelle, cards.jsonl der Output. Bei Bug-Reports auf einer einzelnen Karte: in build_cards.py korrigieren, neu generieren, neuen Publish.
  • Keine Geheimnisse hier. Cardecky-PW liegt in memory/ secret_cardecky_user.md (chmod 600), nicht hier. Die publish/deck.json-Response enthält die Server-IDs, aber keine Auth-Token.

Liste

Slug Karten Lizenz Stand
geografie-welt-top30 30 CC0-1.0 v1.0.0 (2026-05-09)
english-a2-grundwortschatz 500 CC-BY-4.0 v1.0.0 (2026-05-09)
periodensystem-elemente 118 CC0-1.0 v1.0.0 (2026-05-09)

CONTENT_PLAN-Stand: 3 / 20 Phase-1-Seed-Decks done.

Wenn ein neuer Cardecky-Deck dazu kommt

  1. Skill-Run via /cards-deck, Workspace unter ~/Documents/cards-drafts/<slug>/.
  2. Nach Stage 5 published: cp -R ~/Documents/cards-drafts/<slug> docs/marketplace/seed/.
  3. Liste oben aktualisieren.
  4. Commit als seed: cardecky/<slug> v1.0.0 — <count> Karten.

Wenn eine Karte falsch ist

  1. PR auf /d/<slug> direkt im Marketplace einreichen (User- facing Mechanik), Cardecky merged.
  2. build_cards.py hier nachziehen, sodass eine Re-Generation denselben Stand liefern würde.
  3. Commit als seed/<slug>: card F-NNN korrigiert (Spiegelung von PR #X).