openmixer — generated API reference
    Preparing search index...

    Function settleStripPorts

    • Block until the registry mirror agrees with a width reconfigure that has ALREADY happened in the daemon: every present port name resolves and every retired one no longer does.

      Why the retired half is the load-bearing one. The native reconfigure adds the new leg(s) BEFORE removing the old port (the pw_map id-reuse fix), and the daemon delivers its registry events in order, so the moment the OLD name disappears from the mirror, every earlier event — including both new ports' arrival AND the previous flip's removals — has been applied. Waiting on presence alone is NOT enough: after a stereo→mono→stereo cycle the mirror can still hold the PREVIOUS input_<n>_L/input_<n>_R objects, whose names resolve to long-dead port ids.

      Returns true when the mirror settled, false on timeout (the caller logs and proceeds — the strip's ports are real either way, so the head must still be repointed onto them).

      Parameters

      • mirror: StripPortMirror
      • present: readonly string[]
      • retired: readonly string[]
      • timeoutMs: number = STRIP_PORT_SETTLE_MS
      • pollMs: number = STRIP_PORT_SETTLE_POLL_MS

      Returns Promise<boolean>