Atlas Assess Output π§ͺ
The end-of-line QA that writes its own report card
- camera_view
- solve
- source_image
- depth
- report
- assessment_json
- json_path
- verdict
- image_provenance
- assessed_image
- evidence_path
Where AtlasAssessImage judges the input, Atlas Assess Output π§ͺ judges the result. Wire your final viewport render and final solve into this node and it produces a structured QA report of the whole scene - camera sanity, projection health, layer coverage - plus a VLM opinion of the rendered result, written to stable files you (or a script, or an AI agent) can read back. It never gates or changes your workflow; it just tells you the truth about what you made.
The mechanism
The node takes camera_view - the final camera-view image from AtlasBlockoutViewport.shaded - and the solve. Key subtlety: the node detects whether the viewport pass was actually baked. In a browser session you click Render Proxy Passes before queueing and the node gets the real WebGL render. In a purely headless queue that pass comes back all-zero, so the node reconstructs a canonical camera view from the solve's actual projected plates, mattes, and relief topology. If even that reconstruction isn't possible, it falls back to source_image and marks the projection-specific checks inconclusive rather than pretending they passed. That provenance distinction is exactly the kind of honesty that keeps this node from lying to you.
Then the deterministic part: the node computes scene-health JSON - camera summary, per-layer geometry and matte coverage - and only then optionally runs the VLM (enabled, default off) over the assessed image for the qualitative verdict.
What you get out
report- human-readable summary.assessment_json+json_path- the full structured assessment, written to a stable path (defaultatlas_debug/output_assessment.jsonrelative to ComfyUI's working directory). Keep the path constant and external tooling can always find the latest.verdict- the VLM's qualitative pass/fail style judgment.assessed_image+evidence_path- the exact PNG the VLM saw, plus where it's saved, so you can check what the model was actually looking at. It also writes a coverage matte alongside.image_provenance- whether the assessment ran on the baked viewport render, the reconstructed view, or the source fallback. Read this first.
The JSON is written even when the VLM is disabled or unreachable - that's deliberate. The deterministic solve health is always available; the VLM is the garnish.
The settings that matter
enabled turns the VLM on (off by default - start there, wire the deterministic JSON first). file_path sets the stable output location. The provider block is the same as the rest of the pack (ollama/lmstudio/llamacpp/openai). offload_model defaults to true here, sensible for a terminal node. And solve_summary lets you append an upstream debug/export summary into the scene-health JSON.
One tip: for agentic runs, the pack's atlas_run_workflow(..., assess_output=True) enables every terminal assessor automatically - this node is built to be consumed by something, not just read by a human. Install is the usual clone-and-go, no heavy extras, though the VLM half expects a local or cloud endpoint.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| camera_view | IMAGE | Final camera-view image. AtlasBlockoutViewport.shaded is valid only after Render Proxy Passes; the node detects its headless all-zero state. | |
| solve | ATLAS_SOLVE | β | |
| source_imageopt | IMAGE | Honest fallback for an unbaked/blank viewport pass. Projection checks remain inconclusive when this image is used. | |
| depthopt | ATLAS_DEPTH_MAP | β | |
| solve_summaryopt | STRING | Optional upstream debug/export summary appended to the internally derived scene-health JSON. | |
| enabledopt | BOOLEAN | false | Run the VLM. OFF still writes deterministic solve health. atlas_run_workflow(..., assess_output=True) enables every terminal assessor for agentic runs. |
| provideropt | COMBO | lmstudio | 4 options: ollama, lmstudio, llamacpp, openai |
| modelopt | STRING | β | |
| base_urlopt | STRING | β | |
| extra_instructionsopt | STRING | β | |
| file_pathopt | STRING | atlas_debug/output_assessment.json | Stable path, relative to ComfyUI's working directory. |
| api_keyopt | STRING | Saved in the workflow; prefer OPENAI_API_KEY. | |
| offload_modelopt | BOOLEAN | true | β |
| fallback_to_sourceopt | BOOLEAN | true | β |
Outputs (7)
| Name | Type | Description |
|---|---|---|
| report | STRING | β |
| assessment_json | STRING | β |
| json_path | STRING | β |
| verdict | STRING | β |
| image_provenance | STRING | β |
| assessed_image | IMAGE | β |
| evidence_path | STRING | β |