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>
84 lines
3.7 KiB
Markdown
84 lines
3.7 KiB
Markdown
# 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)`.
|