code: def _handle_result(self, result):
          
          is_ephemeral = result.node.is_ephemeral_model
          if not is_ephemeral:
              self.node_results.append(result)
  
          node = CompileResultNode(**result.node)
          node_id = node.unique_id
          self.manifest.nodes[node_id] = node
  
          if result.error is not None:
              if is_ephemeral:
                  cause = result
              else:
                  cause = None
              self._mark_dependent_errors(node_id, result, cause)
docs: Mark the result as completed, insert the `CompiledResultNode` into
          the manifest, and mark any descendants (potentially with a 'cause' if
          the result was an ephemeral model) as skipped.