daily-report

Render the daily and weekly desk reports from the ledger on schedule, and deliver only the fields the evaluation reads.

SKILL.md

GitHub

Daily Report

L1 - Summary

JOURNAL renders the desk's report card on schedule: daily at 00:05Z, weekly on Monday at 00:15Z. The report reads fills, P&L, halts, and review grades from the ledger through journal.render_report and delivers exactly the fields the evaluation reads. No commentary, no forecasts, no invented fills.

schedule fires -> ledger read -> render -> deliver to the allowlisted sinks -> receipt attached

L2 - Method

  1. S1 - Run on schedule: daily 00:05Z and weekly Monday 00:15Z from the cron seat. A missed run is reported as missed, never backfilled with invented rows.
  2. S2 - Render from the ledger: call journal.render_report with the period and as-of day. Every number traces to a ledger row; grades come from desk-post-trade-review rows, not memory.
  3. S3 - Deliver the fixed fields: period, fills with realised P&L, open positions with marks, halts and kills with reasons, review grades, and open action items. Fields outside this set do not ship.
  4. S4 - Deliver to sinks only: stdout, file, and the configured allowlist. No new destinations per report; adding a sink is a reviewed config change.
  5. S5 - Receipt the delivery: attach the render receipt per verification-receipts so the evaluation reads a proven report, not a claimed one.

Failure modes

Symptom Cause Action
Missed schedule Cron or gateway outage Report the miss with its cause; render the next period on time
Number without a row Manual edit or rendering bug Fail the report; every field traces to the ledger
Extra commentary added Helpful narrative instinct Strip it; the report carries fields, not forecasts
New sink used Ad-hoc delivery Refuse; sinks change only by reviewed config

References

  • Tool: journal.render_report (period report rendering)
  • Gate G-2: reports are receipted claims
  • Companion skills: portfolio-ledger (ledger reads), desk-post-trade-review (grade rows)