Nodes/UCLA Daily/UCLA Daily: Pulse Report
ComfyUI Node

UCLA Daily: Pulse Report

The terminal node that turns a day of UCLA feeds into a report

By jbrick2070·Created 5 months ago·Updated 5 months ago· 0
UCLA Daily: Pulse Report
  • ucla_data
  • daily_report_text
  • report_json
report_stylebrief
include_errorstrue

UCLADailyPulse is the pack's terminal node - the place the whole UCLA Daily pipeline resolves into something a human can read. It takes the accumulated UCLA_DATA from every fetcher and compiles it into a formatted text report (and a JSON string), grouped by source, honoring the time window you set back in UCLADailyDataInit. If the card nodes are the "TV screen" output, this is the "email the residents" output.

It's part of UCLA Daily by Jeffrey A. Brick, and it's a genuinely useful terminal for a ComfyUI graph: a node whose job is to end the pipeline with a clean deliverable, not render pixels. ComfyUI marks it OUTPUT_NODE, which means it shows its text in the UI when the queue run finishes.

How it works

It walks the events accumulated by all the fetchers, groups them by source, and formats them according to report_style. The three styles are worth picking deliberately:

  • brief (default) - compact summary, good for a lobby card or a quick glance.
  • detailed - full descriptions, for when people actually want to read.
  • broadcast - radio-script style, opening with "Good day. This is the [report name]" and reading like something a voice would narrate. That mode is a small delight and the reason the Narrator node exists.

It also respects horizon_days from DataInit - events outside the window are filtered out at compile time - and, if include_errors is on (default), appends a section listing any fetch errors at the end. That error section is the pack's self-diagnosis tool: a broken scraper or a moved feed shows up right there in your report instead of silently vanishing.

The inputs

  • ucla_data - required; the pipeline dict from UCLADailyDataInit + fetchers. This is where everything chains into.
  • report_style - enum: brief / detailed / broadcast.
  • include_errors - boolean, default true.

Outputs

Two strings: daily_report_text (the human-readable report) and report_json (the same data as JSON - handy if you're piping it into another tool or a text-display workflow).

Install

ComfyUI Manager → search UCLA Daily, or:

cd ComfyUI/custom_nodes
git clone https://github.com/jbrick2070/ComfyUI-UCLADaily.git
pip install qrcode pillow requests

Restart ComfyUI. This node needs nothing extra - pure stdlib formatting.

Common issues

The two things people run into: forgetting that the report is only as good as its fetchers (if you didn't chain any fetchers, Pulse reports an empty day - and the errors section will tell you why), and being surprised that broadcast mode reads like a script rather than a newsletter. Neither is a bug. If you want the report on screen, wire daily_report_text into a card or text node; if you want it spoken, feed it to the Narrator and a TTS node.

CategoryUCLA Daily

Inputs (3)

NameTypeDefaultDescription
ucla_dataUCLA_DATA
report_styleoptCOMBObriefbrief=compact summary, detailed=full descriptions, broadcast=radio-script style.
include_errorsoptBOOLEANtrueInclude a section listing any fetch errors at the end of the report.

Outputs (2)

NameTypeDescription
daily_report_textSTRING
report_jsonSTRING