Pilates
    Preparing search index...

    Interface LayoutTrace

    A record of what one layout call did — the observability surface phase 9 builds on. path names the engine route; the counts quantify how incremental the call was. Surfaced to consumers via setLayoutProfiler (see algorithm/index.ts).

    interface LayoutTrace {
        dirtyNodes: number;
        fieldsChanged: number;
        fieldsRecomputed: number;
        movedSubtrees: number;
        path:
            | "imperative"
            | "build"
            | "graft"
            | "detach"
            | "reorder"
            | "incremental";
    }
    Index

    Properties

    dirtyNodes: number

    Nodes the dirty-flag walk classified as dirty (0 on a build).

    fieldsChanged: number

    Of those, Fields whose value actually changed.

    fieldsRecomputed: number

    Grammar Fields the runtime re-ran (0 on a pure build — a build computes every Field once during init, not via recompute).

    movedSubtrees: number

    Maximal moved-subtree roots written back. 0 on build — that path finishes the whole tree. Structural fast-paths report the scoped roots their finishMoved writes back.

    path: "imperative" | "build" | "graft" | "detach" | "reorder" | "incremental"

    Engine path the call took. SpinelessLayout sets build / graft / detach / reorder / incremental; the public calculateLayout reports imperative for a call the Spineless engine did not serve (a root's first / cold layout).