## Node.internal_plan


The Substrait plan (JSON) of the node's stage, as Lean checked and


`Node.internal_plan: str`


wrote it: what every engine runs. It uses sverify's own extension URNs, so only sverify reads it ([sverify.engines.to_sql](engines.to_sql.md#sverify.engines.to_sql), [run](Report.run.md#sverify.Report.run), [delta_plans](engines.delta_plans.md#sverify.engines.delta_plans)); [Report.to_substrait()](Report.to_substrait.md#sverify.Report.to_substrait) is the portable plan. `sverify.engines.delta_plans(plan)` are the plans that maintain it from changes.

The stage reads the sources and stored nodes upstream under their names, so a stored node's plan is that of the node it stores.
