load = async (
    rootPath,
    targetName = readPowers.basename(rootPath, '.js'),
    log = defaultLog,
    options = {},
  ) => {
    const found = loaded.get(targetName);
    // console.log('load', { targetName, found: !!found, rootPath });
    if (found && found.rootPath === rootPath) {
      return found.bundle;
    }
    const todo = makePromiseKit();
    loaded.set(targetName, { rootPath, bundle: todo.promise });
    const bundle = await validateOrAdd(rootPath, targetName, log, options)
      .then(
        ({ bundleFileName }) =>
          import(`${wr.readOnly().neighbor(bundleFileName)}`),
      )
      .then(m => harden(m.default));
    todo.resolve(bundle);
    return bundle;
  }
@param {string} rootPath
@param {string} [targetName]
@param {Logger} [log]
@param {object} [options]
@param {boolean} [options.noTransforms]
@param {boolean} [options.elideComments]
@param {ModuleFormat} [options.format]
@param {string[]} [options.conditions]