← w3yh.xyz

journal day

Dienstag, 17. März 2026

Tagesansicht des öffentlichen Journals: konkrete Changelog-Outputs, Incidents und kuratierte Notes, ohne dass der Index alles auf einmal rendert.

Aktivität an diesem Tag: hoch

Dienstag, 17. März 2026

claudeopenclaw

Skills Audit & Weiterentwicklung

changed

  • **SOUL.md:** `SKILLS.md` zur Post-Compaction-Reload-Liste hinzugefügt (war vergessen)
  • **skills/gws/SKILL.md:** Fehlende YAML-Frontmatter ergänzt (war komplett ohne `name`/`description`)
  • **skills/twitter-manager/SKILL.md:** Description um deutsche Trigger-Phrasen + Do-NOT-use ergänzt
  • **skills/twitter-optimizer/SKILL.md:** Description um Trigger-Phrasen ergänzt
  • **skills/market-pulse/SKILL.md:** Description um Trigger-Phrasen + Do-NOT-use ergänzt
  • **skills/reflect/SKILL.md:** Description um deutsche Trigger-Phrasen ergänzt
  • **skills/gym-tracker/SKILL.md:** Description um Trigger-Phrasen + Do-NOT-use ergänzt
  • **skills/postfast/SKILL.md:** Description um Trigger-Phrasen ergänzt; `## Gotchas` Sektion hinzugefügt
  • **skills/gym-tracker/SKILL.md:** `## Gotchas` Sektion hinzugefügt
  • **skills/gws/SKILL.md:** `## Gotchas` Sektion hinzugefügt
  • **skills/x-research/SKILL.md:** Als DEPRECATED markiert (X API Credits leer seit 2026-03-15), `## Gotchas` hinzugefügt
  • **SKILLS.md:** Komplett neu — Symptom→Skill-Mapping-Tabelle, Status-Übersicht (13 Skills), Testing-Checkliste

added

  • **skills/clawledge/SKILL.md:** Neuer Skill — clawledge.com Dev-Workflow, Daten-Pipeline, Deployment
  • **skills/vps-ops/SKILL.md:** Neuer Skill — VPS-Wartung, Cron, journalctl, openclaw CLI, Pfade
  • **skills/deploy/SKILL.md:** Neuer Skill — Git + Vercel Deployment-Workflow, Rollback
  • **skills/skill-creator/SKILL.md:** Neuer Meta-Skill — Skills bauen, updaten, Quality-Checklist
  • **skills/oncall/SKILL.md:** Neuer Skill — Incident Runbook für Agent/Service/DB-Ausfälle
codexopenclaw

OpenClaw TODO (Pinterest PIN_WRITE)

added

  • **tasks/todo.md:** Drei neue spielideengenerator-Todos für Pinterest: Board-/Domain-Fix in `pinterest.py`, `PIN_WRITE:`-Directive im `content_agent` Prompt, und Hook in `division_runner.py`, der Pins direkt in `content/pinterest-pins.json` schreibt.
codexopenclaw

Gmail Hook Markierung vereinheitlicht

fix

  • **tli-gmail-hook-v2.mjs:** `markProcessed()` nutzt jetzt GWS `messages.modify` (kein eigener OAuth-Refresh mehr). Damit nur noch ein Token-Store und Markierung/Labeln wieder stabil.

changed

  • **Auffaelligkeiten-Log:** ChatId-Hinweis entfernt (8424800642 bestaetigt korrekt).

added

  • **Legacy-Notiz:** `tweet-queue.LEGACY.md` markiert die alte Queue-Datei und verweist auf den aktiven Pfad.
codexopenclaw

Cron Node-Pfad Vereinheitlichung

fix

  • **cron/jobs.json:** `twitter:public-news-refill` verwendet jetzt den absoluten Node-Pfad (`~/.openclaw/tools/node/bin/node`) fuer `public-news-to-queue.mjs` und `evergreen-to-queue.mjs`, um Cron-PATH-Probleme zu vermeiden.
codexopenclaw

Gmail Hook GWS-Pfad + Auffaelligkeiten-Log

fix

  • **tli-gmail-hook-v2.mjs:** `gws` wird jetzt ueber absoluten Pfad (`~/.local/bin/gws`) aufgerufen, um "gws: not found" im Hook zu vermeiden.

added

  • **Auffaelligkeiten-Log:** `auffaelligkeiten_todos.md` fuer schnelle Checks/To-dos.

Incidents

NewsData.io
~25 minClaude

Problem: API Key war nie in openclaw.json eingetragen, news-feeder.mjs hatte keine newsdata.io Integration, jq-Pfad in newsdata-fullscan.sh fehlerhaft (Cron findet jq nicht)

Ursache: Initiale Integration nie abgeschlossen

Fix: NEWSDATA_API_KEY eingetragen, fetchNewsData() in news-feeder.mjs als Fallback (nur wenn NewsAPI 0 Artikel), newsdata-fullscan.sh auf absoluten jq-Pfad ($HOME/.local/bin/jq) umgestellt, newsdata-fullscan.mjs als vollständiger Ersatz erstellt (schreibt in news_feed + Telegram-Alerts)

PostFast Auto-Post
~20 minClaude

Problem: twitter:auto-post-morning (09:15) + evening (18:30) seit Wochen stumm — Queue voll aber kein Posting

Ursache: Jobs waren disabled + nutzten post-tweet.mjs (X API, seit 2026-03-15 tot). Night-Job schrieb Ragebait nur in ragebait-repository.json, nicht in tweet-queue.json → postfast-dispatch.mjs konnte es nicht picken

Fix: Beide Jobs auf postfast-dispatch.mjs umgestellt + enabled. Night-Job-Regel ergänzt: Ragebait auch in tweet-queue.json mit kind=ragebait schreiben

X API Zombie-Jobs
~5 minClaude

Problem: Reply Scan (09:30) + clawledge:mention-scan + thursday:bookmark-scan liefen noch aktiv trotz X API deprecated

Ursache: Beim ursprünglichen Deaktivierungs-Run nur offensichtliche Jobs gestoppt, 3 weitere übersehen

Fix: Alle drei deaktiviert. reddit-sentiment-4c3d Ghost-Entry (verwaister Cron-Eintrag) ebenfalls entfernt

Cron-Kollisionen
~10 minClaude

Problem: 6 Jobs liefen zur selben Zeit (07:00, 07:30, 20:00, 08:00 Mo x3, 21:00 So)

Ursache: Keine Mindestabstände bei Job-Erstellung beachtet

Fix: 6 Schedules versetzt (min. 10 min Abstand). Zusätzlich: 2 Duplicate-Jobs (postfast-dispatch-morning/-evening) deaktiviert — identische Funktionalität wie auto-post-Jobs, aber mit nacktem `node`

tweet-queue.json Format
~5 minClaude

Problem: postfast-dispatch.mjs fand "Keine ready Tweets" obwohl 10 Items vorhanden

Ursache: Queue war flaches Array `[...]`, Script erwartet `{account, queue: [...]}`

Fix: Struktur auf Object-Format umgestellt

Kimi übersetzt DE→EN
~5 minClaude

Problem: Tweet-Posts kamen auf Englisch an (TN-001 nach EN übersetzt)

Ursache: `item.language` fehlte in Queue-Items → Default "Englisch" im Kimi-Prompt

Fix: Alle Queue-Items mit `"language": "de"` annotiert. Versehentlich gesendeter EN-Post sofort via PostFast DELETE API gelöscht

gws auth
~0 minDominik

Problem: Gmail-Markierung broken seit ~2026-03-16

Ursache: Refresh Token in credentials.json revoked (Dominik hat re-authorized)

Fix: `gws auth login` ausgeführt → token_valid: true

TLI Gmail Hook
~10 mincodex

Problem: gws CLI fehlte im PATH bei tli-gmail-hook-v2.mjs

Ursache: Aufruf nutzte nacktes `gws` ohne absoluten Pfad

Fix: gws-Pfad auf `~/.local/bin/gws` fixiert

Carpark Solver/Levels
~20 mincodex

Problem: Solver CLI konnte Leveldaten nicht laden, fruehe Levels zu vertikal

Ursache: solver.js erwartete levels.json, fruehe Layouts zu vertikal

Fix: Solver laedt levels.js; Level 1 angepasst, Level 11-14 getauscht

Cron Path
~5 mincodex

Problem: twitter:public-news-refill verwendete nacktes `node` in Job-Message

Ursache: Cron-PATH ohne Node in Agent-Runner-Umgebung

Fix: Auf absoluten Node-Pfad (`~/.openclaw/tools/node/bin/node`) umgestellt

TLI Gmail Markierung
~10 mincodex

Problem: `markProcessed()` scheiterte trotz erfolgreichem `gws auth login`

Ursache: Hook nutzte `credentials.json` (eigener Refresh-Token), gws CLI verwendet separaten Tokenstore

Fix: Markierung auf GWS `messages.modify` umgestellt (kein eigener OAuth-Refresh)

Carpark Levels
~15 mincodex

Problem: levels.js wurde durch Regex-Replace korrupt (\"undefined\"-Eintraege)

Ursache: Unsicherer Text-Replace beim Par-Update

Fix: Datei aus git-Head rekonstruiert, Level-Updates neu angewendet, Par-Update sauber eingespielt

Carpark Progress
~20 mincodex

Problem: Level-Reihenfolge nach MinMoves neu sortiert; Saves zeigen sonst falsche Level

Ursache: Level-IDs neu durchnummeriert ohne Migration

Fix: Level-ID-Migration (`levelMigration.js`) fuer Progress + BestMoves hinzugefuegt, Level-Grid dynamisch gemacht

NewsData Duplikat
~5 minClaude

Problem: newsdata-fullscan lief doppelt → doppelte Telegram-Nachricht (14:00 + 14:01 Berlin)

Ursache: Systemcrontab `0 12 * * * newsdata-fullscan.sh` (UTC = 14:00 CEST) + OpenClaw-Job `0 14 * * *` Europe/Berlin = gleiche Uhrzeit, beide aktiv

Fix: newsdata-fullscan.sh-Eintrag aus Systemcrontab entfernt; nur noch OpenClaw-Job bleibt

Cron-Entzerrung
~15 minClaude

Problem: 6 Jobs zu eng gestaffelt (07:00+07:10 tägl., 08:15+08:30 Mo, 20:10 tägl., 21:15 So); 2 Leichen-Jobs (postfast-dispatch-morning/-evening) in jobs.json

Ursache: Keine Mindestabstände bei Erstellung; Leichen-Jobs nach PostFast-Umstieg nie entfernt

Fix: 6 Schedules auf 10-25 min Abstand versetzt; 2 obsolete Jobs entfernt (jobs.json: 55 → 53 Einträge)

Ragebait fehlt in tweet-queue
~10 minClaude

Problem: Morning Auto-Post (09:15) nutzte immer Fallback `public_news` statt `ragebait`

Ursache: 82 ready Ragebait-Items in ragebait-repository.json, aber keiner in tweet-queue.json; Night-Job generiert nur neue Items wenn total < 7, sah aber 92+ total → keine Migration

Fix: 5 Ragebait-Items aus references/ragebait-repository.json nach tweet-queue.json kopiert (kind=ragebait); Night-Job-Regel bereits korrekt gesetzt (Dual-Write bei Neugenerierung)

Pinterest Automation
~30 minClaude

Problem: Kein System für Pinterest-Bilder und -Posts

Ursache: Scripts nie erstellt

Fix: `pinterest-reminder.mjs` (Telegram-Alert + Upload), `pinterest-dispatch.mjs` (PostFast), Supabase Storage Bucket `pinterest-images`, 2 Cron-Jobs

Pinterest Pins Backfill
~20 minClaude

Problem: 38 Blog-Posts ohne Pin-Einträge

Ursache: Pinterest-Pipeline nachträglich implementiert; Blog-posts.ts hat keine Pinterest-Felder

Fix: 38 Pin-Einträge mit image_prompt + board + description + hashtags generiert; `content/pinterest-pins.json`: 11 → 49 Pins

spielgenerator_agent
~5 minClaude

Problem: Tyrone wusste nichts vom Pinterest-Upload-Prozess

Ursache: Pinterest-Sektion fehlte im Prompt

Fix: Prompt ergänzt: Upload-Befehl, pins-inbox/, Naming Convention, Batch-Loop

Carpark Deploy
~10 minClaude

Problem: Carpark v1.1.1 Änderungen nicht in spielideengenerator.com live

Ursache: `carpark-brain-attack/` und `spielideengenerator/public/carpark/` liefen auseinander

Fix: Dateien sync'd, spielideengenerator committed + pushed → Vercel-Deploy

Persönliches Build-Journal. Aufgaben werden über ein Agentensystem (OpenClaw, verschiedene LLMs) per Cron- und Telegram-Trigger ausgeführt; die Heatmap zeigt eine relative Compute-Aktivität in fünf Stufen.