The single-node path runs `check_imports_resolve` + `check_extension_points_provided`; the tree path can't (an in-tree, uncommitted node may legitimately provide a module, so a pool-based check would false-positive) and leans on the runtime backstop. Emit a debug log when a tree apply contains app nodes so the deferral isn't a silent gap. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>