Asi que. Actualmente estoy trabajando en una extensión de Firefox y la he estado probando usando web-ext , que borra los datos al cerrar. La extensión tiene funcionalidad en los reinicios, y para asegurarme de que funcione, tendría que poder tener almacenamiento local persistente en los reinicios.
Hice un perfil de prueba y ejecuté el argumento --firefox-profile . La extensión se ejecuta normalmente con el argumento, pero el almacenamiento no se transfiere ya que web-ext hace una copia temporal del perfil especificado.
Aquí es donde entra el argumento --keep-profile-changes . Sin embargo, cuando lo ejecuté ( web-ext run --firefox-profile "[profile-directory]" --keep-profile-changes --browser-console ) el botón de extensión en la barra de herramientas desaparecía y reaparecía continuamente. Lo que sea que estaba estropeando la extensión también arrojaba muchos errores de " sendRemoveListener on closed conduit " en la consola del navegador.
Mientras buscaba una solución, encontré este informe de Bugzilla que menciona que browser.contextMenus.onClicked.addListener() (que uso en mi extensión) puede causar que se arroje ese error, pero parece que no puedo encontrar una solución.
Si se necesitan partes de mi código para descubrir cómo solucionar esto, hágamelo saber y puedo editar la pregunta para incluirlo.