Nodes/Atlas Camera/Atlas Debug Report πŸ”
ComfyUI Node

Atlas Debug Report πŸ”

The one JSON file that tells you what your scene is made of

By mikejamesvfxΒ·Created 3 months agoΒ·Updated a day agoΒ· 1
Atlas Debug Report πŸ”
  • solve
  • depth
  • report
  • json_path
β—„file_pathatlas_debug/master_debug.jsonβ–Ί
β—„status_1β€”β–Ί
β—„status_2β€”β–Ί
β—„status_3β€”β–Ί
β—„status_4β€”β–Ί
β—„vlm_reportβ€”β–Ί

Layered scenes hide their failures well. A layer can ship a zero-vertex mesh - no geometry at all - and nothing in the viewport necessarily screams about it; you just see a hole you don't understand. Atlas Debug Report πŸ” is the pack's answer to exactly that class of mystery: wire in your final solve and it introspects the whole stack, runs red-flag analysis, shows you a human-readable report on the node, and writes the full structured JSON to a stable path you (or a script, or an AI assistant) can read.

The mechanism

The node is deliberately zero-heavy: nothing is computed that the solve doesn't already carry. Every execution walks the layered master scene - the camera summary, every ProjectionSource's geometry type, vertex count, band range, and matte coverage (the one non-trivial step is decoding the embedded matte PNGs) - and then runs the red-flag analysis:

  • zero-vertex layers (the silent killer this node was built after catching in a real session)
  • band gaps and overlaps between adjacent depth layers
  • near-empty mattes
  • scope rows that fell back to "no match" instead of finding their mask

The output is twofold: a human-readable report string shown on the node, and the full structured JSON written to file_path - default atlas_debug/master_debug.json relative to ComfyUI's working directory. The advice in the tooltip is worth taking: keep the path constant so external tooling can always find the latest diagnostic.

The inputs

Only solve is required. The rest are enrichments:

  • depth - the shared depth map, included in the diagnostic.
  • status_1 … status_4 - the scope-status strings from the workflow's gate nodes, folded into the report so the health picture is complete.
  • vlm_report - the text report from an assessor node (🧭 AtlasAssessImage / πŸ§ͺ AtlasAssessOutput), appended so the machine-readable JSON carries the VLM's opinion alongside the deterministic facts.
  • file_path - where the JSON lands.

Why you'd reach for it

This is a troubleshooting node first and a logging node second. When the viewport shows something wrong and you can't tell which layer did it, wire this in, queue, and read the JSON - it will name the zero-vertex layer, show the band overlap in metres, and flag the empty matte. It's also the "attach a debug summary to an agentic run" node: because it writes a stable, complete JSON, an AI assistant can read one file and reconstruct facts that would otherwise take a live payload autopsy to dig up.

It's an output node (renders even with nothing downstream), costs nothing meaningful to run, and needs no extras - pure Python over data the solve already holds. Install is the pack's usual clone-and-go. Outputs: report and json_path.

CategoryAtlas/08 Β· Look & Render

Inputs (8)

NameTypeDefaultDescription
solveATLAS_SOLVEβ€”
depthoptATLAS_DEPTH_MAPβ€”
file_pathoptSTRINGatlas_debug/master_debug.jsonStable JSON path (relative to ComfyUI's working directory) β€” keep it constant so external tooling can always find the latest diagnostic.
status_1optSTRINGβ€”
status_2optSTRINGβ€”
status_3optSTRINGβ€”
status_4optSTRINGβ€”
vlm_reportoptSTRINGβ€”

Outputs (2)

NameTypeDescription
reportSTRINGβ€”
json_pathSTRINGβ€”