← w3yh.xyz

journal day

Sonntag, 17. Mai 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

Sonntag, 17. Mai 2026

codexw3yh

Portfolio-Recap KW 20 / 2026 published

added

  • Portfolio-Recap KW 20 / 2026 aus Claudes Draft-Takes veröffentlicht.
  • Depot-Block für HIMS, NVO, SE, ABCL, ASTS, BABA und JD finalisiert; Watchlist-Block ist leer, "Auch erwähnt" bleibt mit GRAB, MP, ONDS und ZETA.
  • X-Exports für Overview plus alle sieben Depot-Ticker unter `content/portfolio/exports/kw-20-2026-*.txt` erzeugt.

verified

  • Paraphrase-Guard grün: Jaccard HIMS 0.061, NVO 0.082, SE 0.078, ABCL 0.045, ASTS 0.084, BABA 0.067, JD 0.018.
  • `npm run lint -- --max-warnings=999` grün mit 6 bestehenden Warnings.
  • `npx tsc --noEmit` grün.
  • `npm run build` grün; `/portfolio/kw-20-2026` wird statisch prerendered.
codexopenclaw

FINX Tweet-Batch M6/M7 live geschaltet

why

    what

    • Botched Scheduling bereinigt: 9 PostFast-Posts gelöscht, 18 Batch-Items aus `raw_text` zurück auf `ready` gesetzt.
    • `postfast-dispatch.mjs`: `source_tag=finx_batch` wird als vorvalidierter qwen+Guard-Draft behandelt und nicht mehr von Kimi umgeschrieben.
    • `postfast-dispatch.mjs`: Slot-Auswahl respektiert `slot_preference`, damit Batch-Items nicht in falsche Slots rutschen.
    • `postfast-dispatch.mjs` + `finx-tweet-batch.mjs`: Dispatcher meldet `[SCHEDULE] scheduled=N attempted=N`; Batch zählt 0-Schedules nicht mehr als ok.
    • `finx-tweet-batch.mjs`: idempotenter No-op, wenn Zielzeitraum bereits mit Batch-IDs gefüllt ist. Dadurch doppelt der neue Sonntags-Cron heute nicht nach.
    • M7 umgesetzt: neue Crons `twitter:finx-tweet-batch-sun` und `twitter:finx-tweet-batch-wed`; alte Template-Refills `twitter:finx-pipeline-refill` und `twitter:finx-pipeline-refill-late` disabled.

    verification

    • M6-Repair/Reschedule: `/tmp/finx-tweet-batch-m6-reschedule-codex-20260517.output` → `ok=18 fail=0`.
    • Queue-Verifikation: 18/18 Batch-IDs für 2026-05-18..20 `scheduled`, slotgenaue `scheduled_for`, alle mit `postfastId`.
    • `finx-content-guard --file tweet-queue.json`: `Total blocked: 0 / 33`.
    • `finx-tweet-batch --days 3 --start-date 2026-05-18 --dry-run`: No-op wegen `existing=18/18`.
    • `jobs.json` JSON-valid; neue Crons enabled, alte Refills disabled.
    codexopenclaw

    FINX Tweet-Batch M5 übernommen

    why

      what

      • `finx-tweet-batch.mjs`: Gen-/Review-Prompts um $ALV als Allianz/Versicherung/Asset-Management und gegen generische Engagement-Fragen geschärft.
      • `finx-tweet-batch.mjs`: programmatisches Quality-Gate ergänzt für Länge, Dash, Hashtags, Cashtags, bare Ticker, generische CTA-Phrasen und falsche $ALV-Auto-/Industrial-Claims.
      • `postfast-dispatch.mjs`: Slot-Anker und Horizon-Slot-Aufbau auf UTC-Slotzeiten umgestellt, damit `x-auto-post-guard.sh` und vorausgeschedulte Batch-Posts dieselben Slotfenster sehen.
      • Claude-Plan `ich-habe-in-den-enchanted-parnas.md`: M5 als erledigt markiert; M6 bleibt explizit pending, weil es Queue schreibt und PostFast scheduled.

      verification

      • `node --check scripts/finx-tweet-batch.mjs`
      • `node --check scripts/postfast-dispatch.mjs`
      • `node scripts/finx-content-guard.mjs --test`: `PASS 21 / 21`
      • Dry-Run #3: `/tmp/finx-tweet-batch-dryrun-codex-20260517.output` → 18/18 Drafts, 0 Guard-Blocks, 0 Quality-Blocks, keine Maschinenprobleme bei Länge/Hashtags/Cashtags.
      codexopenclaw

      FINX Review-Fixes umgesetzt

      why

        what

        • `finx-x-radar-grok.mjs`: Tickerrotation auf 6h-Epoch-Slots umgestellt, damit die 24 Portfolio-Ticker über mehrere Läufe wirklich rotieren.
        • `finx-briefing-builder.mjs`: Grok-Radar-Frische nutzt jetzt `generated_at` statt nur Datei-`mtime`.
        • `finx-content-guard.mjs`: Range-False-Positive bei `1-1.5%` behoben; reale Allokationsprozente bleiben bewusst erlaubt.
        • `postfast-dispatch.mjs`: X-Default auf `6` Posts pro 24h gesetzt und FINX-Guard nur für FINX-Queue-Items aktiviert.
        • `.openclaw/cron/jobs.json`: alte Agent-Autopost-Jobs morning/us-open/evening deaktiviert; direkter OS-Crontab bleibt der aktive 6-Slot-Pfad.

        verification

        • `node --check` für `finx-x-radar-grok.mjs`, `finx-briefing-builder.mjs`, `finx-content-guard.mjs`, `postfast-dispatch.mjs`.
        • `node scripts/finx-content-guard.mjs --test`: `PASS 21 / 21`.
        • Live-Beispiele geprüft: `1-1.5%` und Allokationsprozente erlaubt, P&L/Kaufkurs/Performance weiter geblockt.
        • `node scripts/finx-briefing-builder.mjs --source x-radar-grok --dry-run` liest frisches Grok-Radar.
        • `python3 -m json.tool .openclaw/cron/jobs.json` grün; Zieljobs geprüft.

        Incidents

        FINX / Tweet-Batch M6 Scheduling
        ~35 mincodex

        Problem: Realer M6-Lauf meldete `scheduled_ok=18`, obwohl nur 9/18 Batch-Items wirklich scheduled waren und mehrere Drafts durch nachgelagertes Kimi-Rewrite in `review` landeten

        Ursache: `postfast-dispatch.mjs` behandelte vorvalidierte `finx_batch`-Drafts wie normale Queue-Items, ließ Kimi erneut Text erzeugen und respektierte `slot_preference` nicht hart; `finx-tweet-batch.mjs` wertete Dispatcher-Exit-0 ohne Scheduled-Zählung als Erfolg

        Fix: 9 falsche PostFast-Posts gelöscht, 18 Batch-Items aus `raw_text` resetet, Dispatcher für `finx_batch` auf direkten qwen+Guard-Text umgestellt, Slot-Präferenz gefiltert, `[SCHEDULE]`-Summary ergänzt, Batch-Erfolgsmessung gehärtet; Reschedule 18/18 slotgenau

        FINX / Tweet-Batch Autonomie
        ~35 mincodex

        Problem: Claude blieb im Usage-Limit nach M4/M5; M5-Dry-Run war technisch grün, aber enthielt generische CTA-Phrase und falsche $ALV-Sektorbehauptung; PostFast-Slot-Occupancy war noch Berlin-basiert statt UTC-basiert

        Ursache: Prompt/Review-Gate deckte Ton-/Faktenausreißer nicht hart ab; Dispatcher-Slotresolver stammte aus altem Berlin-Horizon-Pfad, während FINX-Playbook und OS-Crontab UTC-Slots nutzen

        Fix: `finx-tweet-batch.mjs` Prompt + Quality-Gate gehärtet; `postfast-dispatch.mjs` Slot-Anker/Horizon auf UTC-Slots umgestellt; Dry-Run #3 18/18 ohne Guard-/Quality-Blocks, M6 bewusst pending bis Dominik-GO

        FINX / Hermes-Grok / PostFast
        ~30 mincodex

        Problem: Code-Review fand Ticker-Rotationsbug, doppelten Autopost-Pfad, 6/24h-Limit-Mismatch und FINX-Guard-False-Positive

        Ursache: 6h-Cron traf bei `hour * count % 24` immer dieselben Ticker; alte Agent-Crons liefen neben OS-Crontab; Preflight hatte 8 Rolling-24h als Default; Guard lief global und matchte `1-1.5%`

        Fix: Grok-Rotation auf 6h-Epoch-Slots umgestellt, alte Agent-Autopost-Jobs deaktiviert, PostFast-X-Limit auf 6/24h gesetzt, FINX-Guard auf FINX-Items beschränkt, Range-Regex gehärtet, Grok-Frische nach `generated_at` geprüft

        kuratiert

        Redaktionelle Notes zu diesem Tag

        journaljournal / openclaw / hermes / ops

        CEO-Bus und strukturierte Agenten-Handover

        TL;DR

        Der operative Chat-Spam durch Agenten wurde drastisch reduziert. Anstelle eines losen Meldungsstroms nutzt das System jetzt eine strukturierte Outbox, in der Agenten klare Entscheidungsvorlagen ablegen.

        Basis in den Logs

        • Hermes / CEO-Bus P0/P1 Meilenstein vom 15. Mai 2026.
        • Spezifikation des Decision Lifecycles und Source of Truth.

        Was gemacht wurde

        • Telegram-Hygiene umgesetzt: 9 laute Jobs auf NO_REPLY gesetzt.
        • CEO-Bus-Output-Contract implementiert: Agenten kommunizieren über routbare Dateien.
        • Decision Lifecycle (proposed -> decided -> assigned -> done) eingeführt.
        • Cross-Agent-Routing nach Zuständigkeit eingerichtet.

        Verifiziert

        • Aktive Telegram-Alerts sind auf echte Eskalationen und das Daily Briefing reduziert.
        • Read-only Validator meldet `OK` für alle Source-of-Truth-Checks.

        Warum

        Ein Agenten-System mit Dutzenden Jobs erzeugt Lärm. Die Lösung ist kein besseres Dashboard, sondern asynchrone Hygiene: Agenten sollen nicht rufen, sondern Entscheidungen vorbereiten, die man blockweise abarbeiten kann.

        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.