formulateNumberedHandle = async (formulaNumber, agentId) => {
    /** @type {HandleFormula} */
    const formula = {
      type: 'handle',
      agent: agentId,
    };
    await persistencePowers.writeFormula(formulaNumber, formula);
    const id = formatId({
      number: formulaNumber,
      node: localNodeId,
    });
    formulaForId.set(id, formula);
    return id;
  }
Unlike other formulate functions, formulateNumberedHandle *only* writes a
formula to the formula graph and does not attempt to incarnate it.
This is to break an incarnation cycle between agents and their handles.
The agent must be incarnated first, contains its own handle object, and
produces a agentIdForHandle entry as a side-effect.
Explicitly incarnating the handle formula later simply looks up the handle
reference on the already-incarnated agent.

@param {string} formulaNumber - The formula number of the handle to formulate.
@param {string} agentId - The formula identifier of the handle's agent.
@returns {Promise<string>}