Optional ReadonlyisTrue when the mount uses lazy resolution (deferred subflow resolution until execution).
ReadonlyrootMount node id in the parent's chart.
ReadonlysubflowSubflow identifier the parent assigned at mount.
ReadonlysubflowHuman-readable subflow name.
ReadonlysubflowLocal mount id of this subflow within its parent — always equal to
subflowId (e.g. 'auth'). A mount never replays its subflow's
own events, so a recorder never sees a composed path such as
'auth/verify'. NEVER prefixed with __root__/.
Optional ReadonlysubflowThe mounted subflow's complete spec — the SAME OBJECT
(=== reference equality) reachable via subflow.buildTimeStructure
for the FlowChart the consumer passed to addSubFlowChartBranch /
addSubFlowChart / addSubFlowChartNext.
UNDEFINED for lazy mounts at build time (isLazy: true) — the
subflow's structure hasn't been resolved yet. Consumers waiting on
lazy subflows handle the runtime onSubflowEntry event instead.
Immutable post-build; consumers MUST NOT mutate.
SerializedPipelineStructure is exported from footprintjs/advanced;
walkSubflowSpec from footprintjs/trace walks it.
Event payload for
StructureRecorder.onSubflowMounted. Fires once per subflow mount (addSubFlowChart/addSubFlowChartNextand their lazy variants).MOUNT-ONLY semantics — the subflow's OWN structure events (every
onStageAdded/onEdgeAddedinside the subflow) fired during the subflow's own.build(), before the mount. Parent recorders do NOT receive a replay. Instead, this event delivers the subflow's full structure viasubflowSpec, and consumers can walk it viawalkSubflowSpecfromfootprintjs/trace.This matches
FlowRecorder.onSubflowEntrysemantics at runtime (parents see the boundary, not a replay of internals) and preserves the "one purpose per recorder" convention.