Interfaces
Interfaces describe the UE objects and operations carried through sal_query and sal_patch. They are separate from the Client’s eight public MCP calls.
Loomle 0.7 has nine active interface modules:
| Domain | Owns | Canonical exact Target | Access |
|---|---|---|---|
| Asset | Asset Registry discovery and exact package save | Asset Object Path plus verified native Class | Query + Patch |
| Blueprint | Class Settings, declarations, Graph lifecycle, SCS Components, compile, and save | Asset Path plus Blueprint Guid | Query + Patch |
| Class | Reflection and effective Class Defaults | native Class Path | Query + Patch |
| Graph | Nodes, Pins, Edges, flow, Palette-backed creation, and layout | Asset Path + Blueprint Guid + Graph Guid | Query + Patch |
| StateTree | Authored hierarchy, Nodes, Transitions, Parameters, Bindings, compile, and save | exact StateTree Asset Path and Class Path | Query + Patch |
| Widget | Authored Widget tree, Slot state, and structural edits | Asset Path + WidgetBlueprint Guid | Query + Patch |
| Level | Persistent source-map Actors and serialized Components, authored field and transform edits, lifecycle, and terminal save | map Asset Path plus verified native World Class | Query + Patch |
| PCG | Asset-backed PCG Graph Nodes, Pins, Settings evidence, Edges, persisted layout, authored edits, and terminal save | PCG Graph Asset Path plus verified native Class | Query + Patch |
| PCG Component | Persistent PCG configuration and Graph Parameters on one authored Level Component, plus certified scalar edits under the async edit guard | map + ActorGuid + Component source and slot + native Class | Query + Patch |
These nine names are the closed values of structural Target.domain. They are not semantic tags, object kinds, or StableRef prefixes. All nine are valid Query Targets and canonical Result Targets. level, pcg, and pcg_component are admitted to PatchTarget; pcg_component edits are gated by its fail-closed async edit guard.
Use the Installed Contract
The website explains concepts, ownership, and workflows. The Client’s embedded interface card is the precise contract that matches the installed build:
sal_schema({})
sal_schema({ module: "graph" })
Use exact dynamic-schema discovery for fields, constraints, and UE operations that depend on one resolved object or Palette capability.
Common Query Shape
<alias> = target { domain: <domain>, ... }
query <bound-target>
[one primary operation]
[where <condition>]
[with <detail>]
[order by <field> asc|desc]
[page limit <count>]
[page after "<cursor>"]
Every Query is self-contained. Collections provide orientation and discovery; exact reads provide complete current state and, where supported, dynamic schema.
The shared factual-reference operation is:
references to <exact-subject>[.<native-member-path>] [in project]
Scope and project-wide support depend on the selected Domain. The first public result block is canonical Result Text: it declares its context and Target table, then carries ordered Object Text under objects or ends with no_objects.
Common Patch Shape
Patch applies only to the six Domains admitted to PatchTarget.
<alias> = target { domain: <domain>, ... }
patch <bound-target> [dry run]
<ordered binding or operation>
<ordered binding or operation>
Core operations and module-specific extensions include:
add
remove
set
reset
move
invoke
save
connect
bind
wrap
compile
Every object created directly through an add operation starts from a Palette capability in the real target context.
Ownership and Handoffs
One authored Patch belongs to one Domain. A Target is flat and never contains or composes another Target. Cross-Domain work uses independent related Targets, explicit handoffs, and following requests.
Graph and Widget authored changes finalize through their owning Blueprint. StateTree compiles and saves through its asset target. Level and PCG finalize through their terminal save; PCG Component edits finalize through the owning Level and never save directly. Each interface page states its own handoff and finalization boundary.
See Diagnostics for result health and compiler information.