headroomlabs-ai/headroom · error · Error

headroom-openclaw default.register must match registerHeadro

Error message

headroom-openclaw default.register must match registerHeadroomPlugin

What it means

Error "headroom-openclaw default.register must match registerHeadroomPlugin" thrown in headroomlabs-ai/headroom.

Source

Thrown at scripts/verify_npm_release_assets.mjs:92

  }

  return spawnSync("npm", args, {
    cwd,
    encoding: "utf8",
  });
}

function assertOpenClawExtensionContract(cwd) {
  const smoke = `
    const mod = await import("headroom-openclaw");
    if (typeof mod.default?.register !== "function") {
      throw new Error("headroom-openclaw default export must expose register(api)");
    }
    if (typeof mod.registerHeadroomPlugin !== "function") {
      throw new Error("headroom-openclaw must export registerHeadroomPlugin(api)");
    }
    if (mod.default.register !== mod.registerHeadroomPlugin) {
      throw new Error("headroom-openclaw default.register must match registerHeadroomPlugin");
    }
  `;
  const result = spawnSync(process.execPath, ["--input-type=module", "-e", smoke], {
    cwd,
    encoding: "utf8",
  });
  if (result.status !== 0) {
    throw new Error(
      `headroom-openclaw import smoke failed: ${
        result.error?.message || result.stderr || result.stdout || "unknown error"
      }`,
    );
  }
}

for (const expected of packages) {
  const tarballPath = path.join(assetsDir, expected.tarball);
  tarballPaths.set(expected.name, tarballPath);

View on GitHub (pinned to 322425c43b)

Solutions

  1. Make the default export's register property reference the same function as the named registerHeadroomPlugin export
  2. Check for duplicate/mismatched definitions introduced during bundling

When it happens

Trigger: Raised by the npm release verifier when default.register and the named registerHeadroomPlugin export are different functions, indicating a packaging inconsistency.

Common situations: See trigger scenarios.


AI-assisted analysis of headroomlabs-ai/headroom@322425c43b (2026-08-15). Data as JSON: /api/errors/9e10e8b32704127f. Report an issue: GitHub.