Skip to main content

Interface: NodeContext

Defined in: packages/core/src/core/hooks.ts:73

Identifies one step's execution inside a composite.

Properties

address?

optional address?: ExecutionAddress

Defined in: packages/core/src/core/hooks.ts:75

Structured address, including dynamic scope coordinates when available.


nodeId

nodeId: string

Defined in: packages/core/src/core/hooks.ts:85

Id of the step within its own parent — source-1, step-2.

Allocated per composite, so it is unique and reproducible within one parent but not across nesting: a graph used as a step inside another graph numbers its nodes from scratch, so an inner step-2 and an outer step-2 are different nodes with identical ids. Use path to tell them apart.


nodeLabel

nodeLabel: string

Defined in: packages/core/src/core/hooks.ts:90

Human-facing name — an explicit .label() where the primitive has one, otherwise the child's Processable.getName(), otherwise the raw id.


path

path: string[]

Defined in: packages/core/src/core/hooks.ts:103

Ancestry: the node ids of the enclosing composites, outermost first, not including nodeId itself.

Empty at the top level, which is why this is additive — existing consumers that ignore it keep working. [...path, nodeId] is the address that is actually unique, and the thing to key live state on. Joining on bare nodeId lights up the wrong node as soon as anything is nested.


sourceRowId

sourceRowId: string

Defined in: packages/core/src/core/hooks.ts:93

Invocation/run identity shared by its child boundaries. Managed execution uses ExecutionContext.runId; this is not an external source-row key.