Zum Hauptinhalt springen
w3yh.xyzLogin ↗

journal day

Freitag, 22. 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: Spitze

Freitag, 22. Mai 2026

codexopenclaw

Browse-vs-Cron Entscheidungsmatrix

why

    what

    • Entscheidungsnotiz angelegt: `openclaw/workspace/tasks/browse-vs-crons-decision-2026-05-22.md`.
    • Ergebnis: Browse gewinnt bei UI-/Login-/Challenge-Evidence, X-Analytics-QA, Patreon-File-Link-Diagnose, UI-QA und gezielten News-A/B-Spikes.
    • Bestehende API/DB/RSS/GWS/X-Posting-Pfade bleiben script-first; X-Scraper und News-Scraper werden nicht pauschal migriert.
    • `tasks/todo.md` um die Matrix, Benzinga-first-Reihenfolge und Patreon-Priorität ergänzt.

    verification

    • `cron-audit-report.mjs --dry-run --focus all`: 40 enabled Jobs, 0 Action-Findings, 7 Watch-Findings.
    • OS-Crontab, systemd-User-Timer, X-Analytics-QA und Scraper-/Patreon-Skriptpfade geprüft.
    codexopenclaw

    Cron/Browse Lanes + X-Analytics Browse-QA

    why

      what

      • Lane-Plan geschrieben: `openclaw/workspace/tasks/cron-browse-candidates-2026-05-22.md`.
      • Neues read-only Diagnose-Script: `thelonginvestor/scripts/x-analytics-browse-qa.mjs`.
      • `x-analytics-browse-qa.mjs` nutzt Browse.sh lokal/headless und speichert `doctor`, URL, Titel, Snapshot, Markdown, Screenshot sowie `report.{json,md}` unter `openclaw/x-analytics-csv/qa/`.
      • `x-analytics-cron.sh` gehärtet: `set -e` killt den Wrapper nicht mehr vor `Exit:`-Log; bei Download-Fehlern oder fehlenden/leeren Summary-/Posts-CSV wird Browse-QA automatisch gestartet. Normaler CSV-Download/Import bleibt unverändert.

      verification

      • `node --check `thelonginvestor/scripts/x-analytics-browse-qa.mjs`.
      • `bash -n `thelonginvestor/scripts/x-analytics-cron.sh`.
      • Heutige CSVs geprüft: `summary` 7 Zeilen, `posts` 91 Zeilen.
      • Browse-QA live read-only: Verdict `login_required`, Screenshot/Reports unter `openclaw/x-analytics-csv/qa/2026-05-22_10-00-00/`. Das ist erwartbar, weil Browse.sh ohne das produktive Playwright-X-Profil auf die X-Login-Weiterleitung kommt.
      • Keine X-API-Reads, kein produktiver Cron-Neubau, keine Config-Aenderung.
      codexopenclaw

      Hermes Cron-Auditor Evidence-Pack

      why

        what

        • Neuen deterministischen Reporter gebaut: `openclaw/workspace/scripts/cron-audit-report.mjs`.
        • Der Reporter liest nur: `openclaw/cron/jobs.json`, `openclaw/cron/runs/*.jsonl`, `crontab -l`, `systemctl --user list-timers`.
        • Klassifizierung je Job: `ok`, `ok_with_lock_noise`, `ok_with_transport_or_timeout_noise`, `latest_error`, `stale_or_outside_window` plus Signalzaehler fuer Lock, Timeout, Agent-Transport, Auth/Cookie, Empty-Data und X-API-Credit/Rate-Limit.
        • Output: `memory/cron-audit-report-latest.json`, `memory/cron-audit-report-latest.md`, datierter MD-Report und optional nicht-routbares Hermes-Review.

        verification

        • `node --check scripts/cron-audit-report.mjs`.
        • Dry-run Fokus-Set: 14 Jobs (`x-scraper:*`, `tli:pw-*`, `ceo:outbox-reader`, Public-/FinX-Refill, Clawledge), 0 Action-Findings, 6 Watch-Findings.
        • Schreibender Lauf mit `--outbox`: `.hermes/ceo-outbox/review-2026-05-22-cron-auditor.md` erzeugt.
        • Gesamtprobe `--focus all`: 40 enabled Jobs, 0 Action-Findings, 7 Watch-Findings.
        • Keine Produktiv-Crons, keine X-API-Reads und keine Gateway-/Config-Aenderungen.
        codexopenclaw

        X-Freshness-Gate Browser-Fallback Review/Finish

        why

          what

          • `x-slot-refresh.mjs` reviewed: Hybrid-Ablauf `x_search -> browser`, `--gate-source x_search|browser|hybrid`, 15/10-Minuten-Timeouts, `gate_source` und `x_search_error` im Audit-Log sind vorhanden.
          • Browser-Fallback-Prompt gehärtet: ausdrücklich native Hermes-Browser-Tools (`browser_*` / `agent-browser`) und kein `x_search`.
          • Hermes-Fehlerdiagnose verbessert: Gate-Fehler enthalten jetzt kompakte `stderr`/`stdout`-Ausschnitte statt nur der generischen `execFileSync`-Meldung.
          • Operativen Rand geprüft: Der heutige Plan `x-schedule-2026-05-22.json` enthält noch 3 Slots, weil er vor der 6-Slot-Crontab gebaut wurde; der morgige `finx_6x` Dry-Run erzeugt alle 6 Slots.

          verification

          • `node --check scripts/x-slot-refresh.mjs`, `build-x-day-plan.mjs`, `x-api-dispatch.mjs`.
          • Lokale Dry-Runs: `x-slot-refresh.mjs --slot evening --dry-run --skip-gate` und `--slot us-open-en --dry-run --skip-gate`.
          • Echter Browser-Fallback-Dry-Run: `--slot us_open_en --dry-run --gate --gate-source browser` -> `gate_status: ok`, `gate_source: browser`, `duration_ms: 184009`; Audit-Eintrag geschrieben, Plan blieb unverändert.
          • `build-x-day-plan.mjs --tomorrow --slots finx_6x --dry-run` -> morning, midday, us_open_en, us_pulse, evening, late.
          codexopenclaw

          Hermes Browse.sh Runtime für tyrone-shadow

          why

            what

            • Reproduzierbares Runtime-Image angelegt: `.hermes/profiles/tyrone-shadow/runtime/Dockerfile`.
            • Image `openclaw/tyrone-shadow-browse:2026-05-22` gebaut auf Basis von `nikolaik/python-nodejs:python3.11-nodejs20`.
            • Debian `chromium`, `fonts-liberation` und `browse@0.7.3` im Image installiert.
            • Wrapper `/usr/local/bin/google-chrome` bzw. `browse-chromium` startet Chromium mit `--no-sandbox --disable-dev-shm-usage`.
            • `tyrone-shadow` Profil von `nikolaik/python-nodejs:python3.11-nodejs20` auf das neue Image umgestellt und Gateway neu gestartet.

            verification

            • Docker-Smoke direkt im Image: `browse doctor --json`, `browse open https://example.com --local`, `browse get title`, `browse snapshot --compact`, `browse stop`.
            • Hermes-Terminal-Backend mit `HERMES_HOME=`.hermes/profiles/tyrone-shadow` verifiziert: `browse doctor`, `open`, `snapshot`, `browse skills list --json`, `stop` alle Exit 0.
            • `systemctl --user is-active hermes-gateway-tyrone-shadow.service` → `active`.
            claudeopenclaw

            X-Posting-Pipeline: 6 Slots + Grok-Freshness-Gate

            why

              what

              • OS-Crontab auf 6 Slots erweitert: morning, midday, us_open_en, us_pulse, evening, late. `build-x-day-plan` läuft mit `--slots finx_6x`. Alle Refresh-Crons auf 30 Min vor dem Post vereinheitlicht.
              • Grok-Freshness-Gate in `x-slot-refresh.mjs`: nach dem lokalen Queue-Refresh prüft Grok via Hermes/`x_search` (`hermes -z … --profile tyrone-shadow`) die Faktenlage. Verdict `ok` → posten; `stale` → Grok-Rewrite, validiert über `enforceSingleCashtag` + `getTweetValidationErrors` + `finx-content-guard`, als neues `finx-fresh-*` Queue-Item; `block` → Slot verworfen (`queue_id` null → x-slot-post SKIP). Grok-Fehler/Timeout → fail-open.
              • Grok `x_search` statt Playwright (läuft nicht im Hermes-Container), Muster wie `finx-x-radar-grok.mjs`. Audit-Log `memory/x-freshness-gate.jsonl`; Flags `--skip-gate` und `--gate`.

              results

              • 6 Slots ab dem nächsten `build-x-day-plan` (heute ) voll aktiv; heute laufen die 3 bestehenden weiter.
              • Refresh 30 Min vor Post statt der vom Nutzer vorgeschlagenen 15 — Grok-`x_search` braucht laut Radar-Läufen p95 12,1 Min, 15 wäre zu knapp.

              verification

              • `crontab -l`: 6 Refresh+Post-Paare, `CRON_TZ=UTC` bestätigt, build mit `--slots finx_6x`.
              • `node --check x-slot-refresh.mjs` grün; `--help`, `--dry-run` (lokaler Pfad) und `--dry-run` auf posted Slot (skip) ok.
              • Live-Gate-Test `--slot us_open_en --dry-run --gate`: echter Grok-Call, `verdict: ok`, Dauer 2,7 Min, Audit-Eintrag geschrieben, echter Plan unverändert (Dry-Run-Isolation bestätigt).
              • `stale`/`block`-Pfade sind syntaktisch geprüft und nutzen verifizierte Bausteine, aber nicht live ausgelöst (kein überholter Tweet zur Hand) — werden beim ersten echten Auftreten in `x-freshness-gate.jsonl` sichtbar.

              Incidents

              Hermes / Browse.sh Runtime
              ~45 mincodex

              Problem: `tyrone-shadow` sah den Browse.sh-Skill, konnte `browse` im Docker-Terminal aber nicht ausfuehren

              Ursache: Das Profil nutzte das generische `nikolaik/python-nodejs` Image ohne `browse` und ohne Chrome/Chromium; Host-Binary-Mounts scheiterten zusaetzlich an fehlenden Chromium-Systembibliotheken im Container

              Fix: Reproduzierbares Image `openclaw/tyrone-shadow-browse:2026-05-22` mit Debian Chromium, `browse@0.7.3` und `google-chrome` Wrapper gebaut; `tyrone-shadow` auf das Image umgestellt, Gateway neu gestartet und `browse doctor/open/snapshot/skills list` ueber Hermess Terminal-Backend verifiziert

              X API / Freshness Gate
              ~25 mincodex

              Problem: Browser-Fallback-Handoff war fast fertig, aber der Prompt grenzte die Toolquelle nicht hart ab und Hermes-Fehler waren im Audit zu dünn

              Ursache: Hybrid-Code entstand parallel zur Browse-Runtime-Korrektur; der Browser-Prompt hätte theoretisch wieder `x_search` nutzen können

              Fix: Browser-Prompt auf native Hermes-Browser-Tools ohne `x_search` gehärtet, Gate-Fehler um kompakte `stderr`/`stdout`-Ausschnitte erweitert, Browser-Dry-Run und `finx_6x` Builder-Dry-Run verifiziert

              Hermes / Cron-Auditor
              ~35 mincodex

              Problem: Buddy-Cron-Reviews waren bisher manuell und konnten Lock-/Timeout-Laerm nicht wiederholbar von echten Ausfaellen trennen

              Ursache: Rohdaten liegen verteilt in `jobs.json`, Run-JSONLs, OS-Crontab und systemd-Timern; Hermes bekam keinen kompakten, deterministischen Evidence-Pack

              Fix: `cron-audit-report.mjs` gebaut: read-only Reporter mit Klassifizierung, Signalzaehlern, Memory-Reports und nicht-routbarem Hermes-Review; Fokus-Set 14 Jobs und Gesamtprobe 40 enabled Jobs ohne Action-Findings verifiziert

              X Analytics / Browse-QA
              ~35 mincodex

              Problem: X-Analytics-Cron hatte keinen automatischen Evidence-Pfad fuer Login-Wall/UI-Bruch/leere CSVs und `set -e` konnte den Wrapper vor dem finalen Exit-Log abbrechen

              Ursache: Playwright-Download war funktional, aber Fehlerdiagnose hing an verstreuten `/tmp` Screenshots und Cron-Log-Tails; Browse.sh war erst seit heute produktionsfaehig

              Fix: Lane-Plan erstellt, `x-analytics-browse-qa.mjs` gebaut, `x-analytics-cron.sh` auf explizite Exit-Erfassung plus CSV-Vollstaendigkeitscheck und Browse-QA bei Fehlern gehaertet; Syntax, heutige CSV-Zeilen und read-only Browse-QA verifiziert

              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.