Skip to main content
A bundle is what export writes:
  • walk(run) → every statement in the tree, each with a path and a depth. The path format (2.if.0) is the shared address: a lint finding, a review comment and a runtime error written by three different tools all name the same node.
  • subStacks(raw) → the nested stacks a statement carries, keyed by where they are stored and labelled by what they mean — a try/catch and a conditional share the same three storage keys. Found by shape, so a nesting form added later is still walked.
  • statementCatalog() → the stored mvp:* name to its authoring path, minus the namespace (mvp:dbo_view → db.query, the sPath you write after s.) — which is the point: the stored name is often not the one you’d guess.
  • structuralHash(raw) → a diff key for a statement and everything under it, with engine-filled operands excluded — so adding a column to a table leaves db.edit / db.add_or_edit unchanged. A db.add writes every column, so its hash does change.
  • tableRefOf(column) / linkedTableOf(column) → the table a column points at.
  • normalize(value) → the normalizer xanosdk preflight compares with, for diffing a stored workspace against a compiled one.
Everything on the entry is pure — no filesystem, network, or Node built-ins — so it runs anywhere.
Generated from @xano/sdk 1.0.9.