stringtranslate.com

Charla de usuario: Bot de servicio de solicitud de comentarios

Estadísticas al acecho

@ Primefac : Novem Linguae sugirió que pusiera un enlace a la página WP:BFRA en este bot propuesto, lo cual creo que se logró con esta edición, y luego enviarle un ping y preguntarle si podría agregar una bandera de bot. - David Tornheim ( discusión ) 01:02, 14 de marzo de 2024 (UTC) [ respuesta ]

Este bot no ha recibido aprobación para nada (y ni siquiera existe todavía una BRFA). Primefac ( discusión ) 09:42, 14 de marzo de 2024 (UTC) [ respuesta ]
Parece que se vinculó el brfa incorrecto en la página del usuario. Este bot se hace cargo de la tarea Wikipedia:Bots/Solicitudes de aprobación/Yapperbot . Ese robot está inactivo, por lo que se utilizó la política de adquisición de cuentas inactivas de Toolforge. El código fuente es exactamente el mismo que el de yapperbot. Primefac, ¿crees que se necesita una nueva brfa o podemos simplemente marcar el bot? David, ¿terminaste obteniendo el control de la cuenta de Toolforge de Yapperbot o creaste tu propia cuenta de Toolforge? – Novem Linguae ( discusión ) 11:40, 14 de marzo de 2024 (UTC) [ respuesta ]
Permítanme publicar mi actualización (probablemente en las próximas 24 horas) que responde a muchas de estas preguntas y probablemente haga preguntas de seguimiento de todos ustedes. El acto de escribir la actualización (especialmente escribir lo que era confuso) me ayudó a responder las preguntas que estaba a punto de publicar. Lo he reescrito varias veces a medida que las cosas se van aclarando. Ahora es el momento de terminar y publicarlo. - David Tornheim ( discusión ) 11:59, 14 de marzo de 2024 (UTC) [ respuesta ]
Pensando más en esto, creo que te di un mal consejo David. Disculpas. La forma más adecuada de hacerlo es probablemente presentar un WP:BRFA . Si consulta los scripts de usuario de Enterprisey, hay uno bueno para presentar brfas. – Novem Linguae ( discusión ) 11:55, 14 de marzo de 2024 (UTC) [ respuesta ]
Gracias, estoy de acuerdo. Iba a decirles que me sentiría más cómodo siguiendo el protocolo BRFA, porque será casi imposible hacer que el software sea 100% idéntico. Legoktm me pidió específicamente que "creara una nueva cuenta de bot y presentara un BRFA para encargarme de las tareas de Yapperbot". Incluso si copio el código exactamente, los archivos de configuración tendrán que cambiarse para adoptar las nuevas ubicaciones de archivos, nombres de cuentas, etc., y existe la posibilidad de que no funcione correctamente la primera vez, incluso si no cambio nada. demás. Preferiría utilizar el protocolo de prueba y el proceso de revisión habituales. Explicaré más sobre esto en la actualización, que está muy cerca de finalizar. Gracias por los comentarios y la orientación. - David Tornheim ( discusión ) 13:43, 14 de marzo de 2024 (UTC) [ respuesta ]
La respuesta muy breve es sí, se necesitará un nuevo BRFA, aunque sólo sea para sellar y demostrar que ha sido aprobado. Primefac ( discusión ) 16:41, 14 de marzo de 2024 (UTC) [ respuesta ]

Actualizar

@ Legoktm : Novem Linguae , Pppery , DreamRimmer , Awesome Aasim , un gatito inteligente, Aaron Liu :

Esta es una continuación de las discusiones en User_talk:Naypta y User_talk:Yapperbot :

Quería darles un informe sobre mi progreso desde la última vez que publiqué. Hasta ahora, estos están hechos o en progreso:

(1) Usuario notificado al propietario de Yapperbot : Naypta

  • En Wikipedia en su página de discusión (enlace permanente) y en la página de discusión de Yapperbot (enlace permanente)
  • En Wikitech [1]

(2) Código de revisión de:

Yapperbot :
  • Yapperbot-frs. Punto de entrada: main.go. Otros archivos: src
  • Yapper-herramientas, código
  • Yapperbot-pruner – “Prunes listas en Wikipedia de usuarios antiguos, bloqueados indefinidamente y renombrados” aprobado a las 22:22, domingo 21 de junio de 2020
Módulos de soporte llamados por Yapperbot:
  • yaml.v2
  • go-mwcclient: para interacción API mediante Go.
  • OAuth
Legobot : código, aprobación de la Tarea 33, con enfoque en rfcbot.php, rfcbot.sql, goodarticles.php y ga.sql.

(3) Escribir bot(s) de prueba de muestra

(4) Revisar la API Wiki, por ejemplo

  • API: página_principal
  • api.php
  • API: formatos de datos
  • API: código de cliente
  • API en prueba Wikipedia
  • Este vídeo que explica las API fue útil

(5) Aprender nuevos idiomas

  • Ir desde [2]
  • Php de las escuelas W3

(6) Aprender sobre nuevos formatos de almacenamiento de datos

(7) Cuentas/inicios de sesión creados:

  • Forja de herramientas
  • Wikitech (creo que esto es equivalente a Toolforge)
  • fabricante
  • GitHub
  • SSH
  • Bot en Toolforge: bot de servicio de solicitud de comentarios bot de servicio de solicitud de comentarios
  • Bot en Wikipedia: bot del servicio de solicitud de comentarios
  • ¿Necesito crear una cuenta de MediaWiki?

Desafíos:

(1) Documentación escasa : creo que todos estamos acostumbrados a eso.
(2) La API Wiki y los innumerables módulos de soporte de software que llaman a la API Wiki fueron los más difíciles de entender para mí. Mucho más difícil que leer el código Go escrito en Yapperbot. A pesar de los mínimos comentarios, el código no es tan difícil de seguir.
Sería bueno si las especificaciones de E/S para los módulos de soporte (y la mayoría del software utilizado en MediaWiki o al que se hace referencia) se escribieran de manera más clara y precisa. He llegado a la conclusión de que las actualizaciones del sistema, los cambios importantes de software, los protocolos, los requisitos del sistema y de seguridad y mantener todo el software de WikiMedia compatible con versiones anteriores tienen mucho que ver con por qué la documentación es tan confusa y conduce en tantas direcciones.
(3) Toolforge : Inicialmente no pude encontrar un tutorial sencillo sobre cómo escribir un bot que haga algo tan simple como leer una página de Wikipedia. Las páginas Help:Creating_a_bot (especialmente Help:Creating_a_bot#APIs_for_bots ) y el uso de Wiki API han sido las más desafiantes. Creo que ahora manejo los conceptos principales y pronto comenzaré a probar la API Wiki directamente y los módulos que la llaman.
Recientemente encontré Usuario:GreenC/BotWikiAwk y [3], que creo que son exactamente lo que estaba buscando. Estoy a punto de profundizar en ellos.
También miré Construir y alojar su primera herramienta. Creo que probé My_first_Buildpack_Python_tool hace un par de semanas, encontré algún problema de configuración y nunca volví a hacerlo, concentrándome en todo lo demás que tenía que aprender. ¿Existe otro de esos tutoriales con el que sea más fácil trabajar? Probablemente probaré My_first_PHP_tool a continuación.
(4) Control de versiones : aunque entiendo que los mantenedores de bots pueden cargar código a un servidor y usar SSH a través de Toolforge para ejecutarlo, por ejemplo, phab:T320195, todavía estoy un poco confuso sobre la relación entre el código publicado y el código en el servidor que parece estar protegido. [Algunas preocupaciones se disiparon como se explica aquí agregado a las 19:39, 15 de marzo de 2024 (UTC) ] Con suerte, BotWikiAwk y [4] lo dejarán lo suficientemente claro. [ responder ]
No estoy seguro de cómo se realiza el control de versiones con respecto a los bots. Parece que GitHub tiene algún tipo de control automático de versiones, pero aún no he leído sobre ello. (Acabo de buscar [5] y [6].) Para GitHub, parece que lo que ves es siempre la versión actual . Tengo la impresión de que, en lugar de llamar a ese código en GitHub, la primera vez que se ejecuta el código Go, descarga todos los módulos apropiados de GitHub (o dondequiera que estén almacenados) al servidor local y luego usa claves en archivos yaml para realice un seguimiento de exactamente qué copia ha descargado.[7]
Estoy acostumbrado a servicios como SCCS y RCS de Unix que realizan un seguimiento de cada cambio y lanzamiento de versiones importantes. Cuando trabajé como diseñador de VLSI a principios de la década de 1990, teníamos directorios protegidos contra escritura para cada versión publicada del código/diseño, por lo que podíamos estar seguros de que el módulo era estable.
Me resulta extraño que el código de Yapperbot, los scripts que llaman al código y los datos que el código almacena en el servidor ( aparte de la contraseña del bot ) parezcan estar protegidos de la vista.
Entiendo que el código está publicado en GitHub, pero ¿cómo sabemos que es *idéntico* a la copia que realmente se está ejecutando? ¿Y qué sucede cuando el programador debe modificar y/o volver a publicar el código para corregir el error? ¿Cómo puede WP:BRFA revisar el código y asegurarse de que no se modifique, si está protegido de la vista? ¿BRFA se centra casi exclusivamente en el comportamiento de las ediciones y no en el código en sí?

Preguntas:

(1) ¿Necesito instalar MediaWiki? ¿Esto ya se logró al instalar Toolforge?
(2) Legobot: ¿Existe una definición de nivel superior para las tablas y/o consultas que se utilizan para almacenar los datos RfC y GA? ¿Dónde se almacenan exactamente esos datos? ¿Debo asumir que está en una base de datos MySQL?
Creo que la respuesta se puede encontrar aquí: wikitech:Help:Toolforge/Database.-- David Tornheim ( discusión ) 06:50, 19 de marzo de 2024 (UTC)[ responder ]
(3) Paso único/Depurador. Sería bueno recorrer el código en un solo paso (actuando en el wiki de prueba) y observar los datos a medida que se utilizan. es posible? Mi investigación de depuradores para Go sugirió GDB y profundizar.
Para mi código personal, si no tenía un depurador, frecuentemente pongo declaraciones del formulario: if (Debug_value > constante) {Imprimir variables internas}. Se asigna valor_depuración 0=Sin depuración; 1=Depurar mostrando la menor cantidad de variables; >1 = valores más grandes dan mayor detalle. Veo que console.log() es una función útil para hacer algo así. Sin embargo, no recuerdo haber visto impresiones de variables internas para depurar en *cualquier* código que haya visto. ¿Qué suelen hacer los programadores para depurar sus bots?

Plan/Preparación:

El software relacionado con la API era más complejo de lo que había previsto. Después de varios días lidiando con ello, creo que entiendo la esencia general de cómo se supone que debe usarse. Quiero probarlo con un código simple en la wiki de prueba.
Aunque no me importa decirles a los editores que me consulten si tienen preguntas sobre Yapperbot, sí quiero comprender todas las funciones del servicio de comentarios de Yapperbot (y cómo se comunica con la API) más completamente antes de que me pidan que solucione un problema. error, cambiar parámetros, etc. Mi nivel de comodidad aumenta cada día al respecto. He estado mirando el código de Yapperbot (sus módulos de soporte y todo lo anterior) al menos un par de horas al día desde que notifiqué a Naypta.
Estaré feliz de recibir cualquier consejo sobre qué aspectos de lo anterior debo estudiar más para estar preparado.

Otras funciones de Yapperbot:

Yapperbot realiza un par de tareas más que parecen no tener ninguna relación con el Feedback Service , en particular Uncurrenter, Yapperbot-wikidatatable y algunas funciones de Pruner (aparte de podar las listas FRS ). A largo plazo, preferiría que otra persona se hiciera cargo de las funciones no relacionadas con WP:FRS . Estoy dispuesto a ocuparme de esas funciones adicionales por el momento y posiblemente reconsiderar ayudar a mantenerlas también.

Adopción:

Todavía no solicité adoptar Yapperbot en Toolforge, a pesar de que el período de espera de 14 días pasó recientemente. Pensé que debería compartir mi progreso con todos ustedes primero, en caso de que alguien tenga inquietudes o tenga buenas razones para esperar antes de presentar la solicitud. De lo contrario, estaré encantado de presentar la solicitud.

Nuevamente, estoy muy feliz de recibir consejos y orientación para mantener mi aprendizaje continuo enfocado en lo que más se necesita para realizar este trabajo de asegurar que el bot del Servicio de solicitud de comentarios esté funcionando correctamente, de modo que los editores reciban las notificaciones que han solicitado. - David Tornheim ( discusión ) 05:39, 15 de marzo de 2024 (UTC) [ respuesta ]

Respuestas a la actualización

Aarón Liu

  1. Como tienes una cuenta en Wikipedia, ya tienes una cuenta en mediawiki.org
  2. El enlace [6] debería explicar mejor Git. No es exactamente automático, tienes que "git add" tus cambios y luego "git commit" para crear una nueva versión actual. "git push" luego cargaría su versión actual al servidor. Y su impresión con la descarga local es correcta.
  3. A menos que desee/necesite realizar la prueba en su propia wiki en lugar de solo testwiki, no debería necesitar instalar MediaWiki.
  4. Si desea mantener Pruner para FRS, creo que también debería mantenerlo para todas las listas. Parece que sería tan simple como un cambio de configuración.
  5. Yo diría que probablemente deberías adoptar. Como dijo NL, podría haber cambios solo presentes en Toolforge.
De todos modos, ¡gracias! Aaron Liu ( discusión ) 11:38, 15 de marzo de 2024 (UTC) [ respuesta ]

Novem Linguae

Gracias por hacer esto David. Algunas ideas/consejos:
  • Si no ha descubierto/experimentado con Special:ApiSandbox , definitivamente querrá echarle un vistazo a esto. Aunque tenga en cuenta que en realidad no es una zona de pruebas, realiza ediciones en vivo, así que tenga cuidado con las acciones de API que no son de visualización cuando no esté en testwiki. La documentación en mediawikiwiki para la API de acción también es bastante buena: mw:Action API.
  • Git es un dolor de cabeza y tiene una gran curva de aprendizaje, pero ahora es, con diferencia, el estándar de la industria. Vale la pena aprenderlo por esto. Todo usa git. Mercurial, SVN, etc. (sistemas de control de versiones alternativos) están casi extintos, hasta donde yo sé. Personalmente me gustan los sitios web de ejercicios interactivos para aprender. Aquí hay uno bueno para git: https://learngitbranching.js.org/.
  • GitHub es un buen sitio web/repositorio para bots. Gitlab.wikimedia.org es la versión de código abierto de GitHub para Wikimedia, pero por diversas razones aún no se ha producido un cambio masivo. GitHub es un poco más estándar de la industria y la gente está familiarizada con él.
  • Tengo un tutorial del bot PHP Toolforge si quieres echarle un vistazo: Usuario: Novem Linguae/Essays/Toolforge bot tutorial .
  • Personalmente, solo uso SFTP para arrastrar y soltar archivos desde mi máquina local a Toolforge cuando actualizo mi código o publico una versión. Hay formas más adecuadas y complejas de publicar actualizaciones, pero esta es muy sencilla y tiene sus ventajas. Combino esta técnica con el control de versiones de git porque el control de versiones es una buena herramienta de eficiencia para que puedas diferenciar todo lo que has hecho, puedes hacer que una confirmación cierre simultáneamente un ticket (un problema de GitHub) poniendo algo como "Solución #27" en el mensaje de confirmación y para que su código se publique para que otros lo vean. Puedes usar un archivo .gitignore para mantener los "secretos" fuera de git, como los archivos de contraseñas.
Novem Linguae ( discusión ) 13:13, 15 de marzo de 2024 (UTC) [ respuesta ]
Estoy bastante seguro de que estaban hablando de la API de PHP, ya que el bot está parcialmente escrito en ella. Aaron Liu ( discusión ) 13:23, 15 de marzo de 2024 (UTC) [ respuesta ]
@ Novem Linguae y Aaron Liu : Gracias a ambos por sus comentarios. Voy a empezar a mantener un registro de lo que estoy haciendo en User:David_Tornheim/YapperBotRelated . Si alguno de ustedes (o ambos) tuviera la amabilidad de incluirlo en su lista de vigilancia, podrían observar mi progreso allí y cualquier problema adicional. En este momento, realmente no quiero que sea una página de discusión: es más bien una recopilación de enlaces relevantes, elementos para hacer y cosas como las que describí anteriormente. No me importa si agregas información. a él, o incluso poner "elementos pendientes", o cambiar la prioridad u orden. Si desea hablar sobre algo allí, lo preferiría en su propia página de discusión, aquí, en mi página de discusión o en la página de discusión de yapperbot.-- David Tornheim ( discusión ) 17:06, 15 de marzo de 2024 (UTC) [ respuesta ]
Al mirar nuevamente wikitech:Ayuda:Toolforge/Quickstart, veo que menciona GitLab. Pensé erróneamente que GitHub lo ejecutaba y controlaba completamente, pero parece que es parte de MediaWiki, lo que disipa una de mis principales preocupaciones sobre quién controla las versiones de software, dónde se almacena, etc. -- David Tornheim ( charla ) 19:17, 15 de marzo de 2024 (UTC) [ respuesta ]
GitLab es un software, al igual que MediaWiki, que WMF ha instalado. Aaron Liu ( discusión ) 20:23, 15 de marzo de 2024 (UTC) [ respuesta ]

Contraseñas de bot / Contraseñas de bot especiales

@ Novem Linguae y Aaron Liu : Progresando más. Desde el último informe, he trabajado con algunos usuarios: GreenC/BotWikiAwk y he completado la configuración de las herramientas de BotWikiAwk. Ahora estoy trabajando en User:Novem_Linguae/Essays/Toolforge_bot_tutorial . Probé algunos scripts php, uno de los cuales realiza con éxito "include('botclasses.php');" sin error.

Ahora estoy en Usuario:Novem_Linguae/Essays/Toolforge_bot_tutorial#Bot_passwords .

He mirado mw:Manual:Bot_passwords. Para empezar, me gustaría crear una tarea que haga el mínimo absoluto y tenga los privilegios mínimos absolutos , por ejemplo, un bot que simplemente lea páginas. Me gusta probar gradualmente comandos y rutinas con complejidad creciente hasta que finalmente pueda hacer funcionar todo el código de Yapperbot. Cuanto antes pueda empezar a probar los comandos más simples del código de Yapperbot, más cerca estaré de poder mantenerlo.

¿Pueden ustedes (o cualquier otra persona) que esté mirando, darme una sugerencia sobre nombres de bots especiales y los privilegios apropiados para no hacer mucho daño?

Inicié sesión en la página Especial:BotPasswords es un poco abrumador... Afirma que tengo una "contraseña de bot existente: David@Tornheim". No recuerdo haber creado esa contraseña. Hice clic en el enlace y luego va a: mw:Special:BotPasswords/David@Tornheim. Esa página dice que el nombre de usuario es: "David Tornheim@David@Tornheim". Ofrece la opción de restablecer la contraseña y la larga lista de casillas de verificación. Luego da un rango de IP de:

0.0.0.0/0
::/0

y páginas permitidas para edición. Me gustaría intentar editar una página como "Usuario:David Tornheim/test" y/o leer o escribir un archivo como "Usuario:David Tornheim/config.json". ¿Alguien puede ayudarme a descubrir la mejor manera de configurar el nombre de la tarea de contraseña especial del primer bot y los mejores privilegios, para reducir la probabilidad de una interrupción involuntaria? - David Tornheim ( discusión ) 07:48, 19 de marzo de 2024 (UTC) [ respuesta ]

Me alegra que encuentres útil mi tutorial sobre el bot de Toolforge. Ayer actualicé la sección de trabajos cron del tutorial y agregué algunos detalles a la sección de contraseñas de bot hace un momento, por lo que el tutorial debería estar bastante actualizado con las mejores prácticas actuales.
Para Special:BotPasswords, si desea jugar con él, inicie sesión en su cuenta de bot (no en su cuenta principal), luego visite Special:BotPasswords , luego en la parte inferior, donde dice "crear una nueva contraseña de bot", escriba Task1 y haga clic en "Crear". Eso lo llevará a una pantalla que le indica que el nombre de usuario de su bot es "[Nombre de cuenta]@Task1" (o similar), luego le permitirá otorgar permisos a ese nombre de usuario en particular mediante casillas de verificación. Parece que hay un cuadro "Páginas permitidas para editar" en la parte inferior si desea restringirlo solo a su página de prueba. Luego haga clic en "Crear" nuevamente y le dará una contraseña generada para ese nombre de usuario. Creo que este nombre de usuario y contraseña solo funcionan para la API, no para iniciar sesión a través del formulario de inicio de sesión normal del sitio web.
No me volvería demasiado loco con el tema de seguridad. Si marca una o dos casillas de permiso adicionales para su bot, probablemente estará bien. Puede guardar su capacidad intelectual para otras partes del tutorial :) – Novem Linguae ( discusión ) 03:00, 29 de marzo de 2024 (UTC) [ respuesta ]
Gracias. Probaré lo que me sugeriste. - David Tornheim ( discusión ) 21:11, 30 de marzo de 2024 (UTC) [ respuesta ]

Intentando ejecutar el código Yapperbot

@ Novem Linguae y Aaron Liu : Estoy intentando ejecutar el código de Yapperbot (todavía no como un bot) primero en mi máquina local (Windows) y luego en el shell de Toolforge. Dediqué aproximadamente una hora a este problema, que publiqué en WP:VPT . No sé si alguno de ustedes está familiarizado con Go. ¿Conoces a algún wikipedista que lo sea? - David Tornheim ( discusión ) 07:10, 23 de marzo de 2024 (UTC) [ respuesta ]

Es una lástima cuando veo bots que no usan un lenguaje con el que los desarrolladores de Wikimedia estén familiarizados (PHP, Node) o que no usan un lenguaje que sea popular y con el que mucha gente esté familiarizada (Python). Hace que la mantenibilidad sea más difícil.
Si la gente de VPT no pudiera ayudarlo, probaría las siguientes plataformas de sala de chat: WP:DISCORD y WP:IRC . Para Discord, creo que el canal que deseas es #técnico (crea tu propio hilo) o #discusión-técnica-general. Para IRC, tal vez #wikimedia-tech. – Novem Linguae ( discusión ) 03:20, 29 de marzo de 2024 (UTC) [ respuesta ]
@ Novem Linguae : Gracias por la respuesta. Esperaba que usted u otro programador eventualmente respondiera. Para un TL;DR, pongo los puntos clave en negrita .
Mi enfoque últimamente ha sido simplemente intentar ejecutar el código Go en mi máquina local, de modo que simplemente recorra los bucles en el código y no pueda editar ninguna página Wiki y no pueda causar ningún daño. Una vez que haya llegado tan lejos como pueda con eso, planeo probarlo en la wiki de prueba usando el nuevo bot que se ejecuta en Toolforge.
Al responder a otro usuario en User_talk:Naypta#Yapperbot_RfC_-_no_requests (enlace permanente), revisé algunas de mis antiguas conversaciones de 2020 con Naypta sobre mi preocupación por la notificación insuficiente. En algún momento de esas discusiones, Naypta indicó que debemos confiar en que el código en Toolforge sea idéntico al de GitHub. Eso me hizo detenerme.
No vi ningún sentido en seguir jugando con el código de Github si existía la más mínima posibilidad de que no coincidiera exactamente con el código real que se está ejecutando en Wikipedia en este momento. Aunque he podido iniciar sesión exitosamente en Toolforge, ejecutar comandos SSH, compilar y ejecutar programas Go simples y crear el nuevo bot FRS (y su carpeta) en Toolforge, convertirme en el bot/herramienta cuando voy a la carpeta yapperbot. , la mayor parte del código está protegido de la vista.
Entonces, mi siguiente paso es solicitar la adopción para poder ver el código real y hacer una copia para trabajar con él. Estaba a punto de notificarte de mi plan de solicitar adopción anoche. Me quedé sin fuerzas, pero planeo hacerlo esta noche e informarles cuando esté archivado.
Todavía me vendría bien alguna orientación general con respecto a las prioridades de qué paquetes estoy aprendiendo y dónde concentrar mi energía. (Por ejemplo, todavía no intenté aprender los protocolos de GitHub para actualizaciones, porque es bastante fácil ver todo el código publicado más reciente. Mi objetivo principal es asegurarme de comprender completamente cada sutil del código, de modo que si se rompe o necesita ser modificado, puedo arreglarlo o ajustarlo rápidamente. Es por eso que mi enfoque en este momento es ejecutar una COPIA del código donde puedo imprimir variables internas, etc., para asegurarme de que esté haciendo lo que creo. haciendo.
La cantidad de herramientas y paquetes de software que he tenido que aprender es sustancial. Es muy diferente a hace 30 años, cuando escribías todo el paquete en C y teníamos una cantidad mínima de paquetes de soporte en los que confiar: teníamos que crear nuestras propias estructuras de datos, E/S, clasificación, estructuras de árboles y poda de árboles con punteros, etc. de una manera que parece bastante obsoleta ahora con la programación orientada a objetos . Es impresionante lo simple que es ahora el código. Me siento más cómodo con todo esto que cuando publiqué la última actualización el 15/03/24. - David Tornheim ( discusión ) 06:14, 29 de marzo de 2024 (UTC) [ respuesta ]
Hola David. Estoy de acuerdo en que sería mejor esperar hasta que se complete el proceso de adopción de Toolforge, para que pueda obtener acceso a los mejores y más recientes archivos de YapperBot. No tiene sentido correr el riesgo de utilizar archivos GitHub desactualizados o incompletos (faltan archivos de configuración clave). Le recomiendo que finalice el proceso de adopción, descargue los archivos de Toolforge y luego inicie un nuevo repositorio de GitHub con esos archivos de ToolForge como primera confirmación (ya que supongo que de todos modos no tiene acceso de colaborador al antiguo repositorio de GitHub). Asegúrese de colocar las rutas de los archivos de contraseñas en su archivo .gitignore para que permanezcan fuera de git.
Creo que aprender git y GitHub al final es una buena idea. Como cualquier gran problema de programación o cualquier gran problema en general, se beneficia al dividirlo en problemas más pequeños. Git es ahora el estándar de la industria para el control de versiones, pero tiene una curva de aprendizaje desagradable.
Sí, Internet ha hecho que las bibliotecas de software existan, lo que puede ahorrar tiempo, pero puede conllevar otros costos (la complejidad de aprender a usar el software de descarga/actualización de la biblioteca, tener que mantener actualizadas estas dependencias externas, tener para asegurarse de que las actualizaciones no rompan su código, etc.) Pros y contras, supongo. – Novem Linguae ( discusión ) 21:28, 29 de marzo de 2024 (UTC) [ respuesta ]
@ Novem Linguae : Mientras espero que se lleve a cabo la adopción y el permiso para ver el código actual en ejecución, mi enfoque principal continúa siendo ejecutar el código, para poder observar las variables internas y asegurarme de que entiendo completamente cómo funciona. obras. Ahora que encontré una solución para resolver el problema que tenía relacionado con los módulos, necesitaré poder modificar una copia. Necesito un registro de cada cambio que hago en la copia. Mientras trabajo en ello, también agregaré comentarios. En lugar de usar mi RCS/SCCS favorito del pasado, tiene más sentido comenzar con GitHub.
Por lo tanto, he hecho una copia para jugar:
  • github.com/DavidTornheim/yapperbot-frs
  • github.com/DavidTornheim/ybtools
Si desea ser agregado como colaborador, estaré encantado de hacerlo.-- David Tornheim ( discusión ) 18:35, 5 de abril de 2024 (UTC) [ respuesta ]
Claro, no dudes en agregarme como colaborador. https://github.com/NovemLinguae. – Novem Linguae ( discusión ) 20:21, 5 de abril de 2024 (UTC) [ respuesta ]
Invitación  realizada : David Tornheim ( discusión ) 21:08, 5 de abril de 2024 (UTC) [ respuesta ]

Solicitud de adopción de Yapperbot presentada

@ Novem Linguae : Solicitud de adopción de Yapperbot presentada aquí. - David Tornheim ( discusión ) 12:16, 30 de marzo de 2024 (UTC) [ respuesta ]

Icono de pulgar hacia arribaNovem Linguae ( discusión ) 19:57, 31 de marzo de 2024 (UTC) [ respuesta ]

Comentando el código Yapperbot

@ Novem Linguae : Pregunta sobre Github. Si hay un lugar mejor para preguntarle, hágamelo saber. Me gustaría conocer las reglas de formato para un archivo de tipo *.MD. Quiero que el archivo Léame en DavidTornheim/ybtools tenga este aspecto:

# Herramientas Yapperbot
# 2024-04-07 Léame original del atributo DAT; describir los archivos de configuración esperados
# 2020-05-19 Última confirmación de CPF
Descripción original de CPF (https://github.com/mashedkeyboard)
Un conjunto de importaciones utilizadas por otros robots de Wikipedia que he creado. Probablemente no sean de mucha utilidad para nadie más, ¡pero puedes acceder a ellos de acuerdo con la licencia si lo deseas!
Archivos de configuración esperados en el directorio de inicio:
const localConfigFilename cadena = "config.yml"
const globalConfigFilename cadena = "config-global.yml"
const botPasswordFilename cadena = "botcontraseña"
de: config.go

Sin embargo, en cambio, elimina todos los avances de línea y lo convierte en un desastre:

MD significa rebajas. Es la misma sintaxis que se usa en Reddit, Discord y un par de lugares más. Es de esperar que "Markdown" sea una pista lo suficientemente buena como para buscar en Google una guía de sintaxis. Intente agregar saltos de línea cuando corresponda, o rodear la parte superior e inferior del bloque de código con comillas invertidas triples (```) – Novem Linguae ( discusión ) 16:14, 7 de abril de 2024 (UTC) [ respuesta ]
@ David Eppstein Para abordar su pregunta específicamente: agregue dos espacios al final de la línea anterior para un salto de línea y haga saltos de línea dobles para un salto de párrafo. Aaron Liu ( discusión ) 16:41, 7 de abril de 2024 (UTC) [ respuesta ]
Gracias por ambos comentarios. - David Tornheim ( discusión ) 18:15, 7 de abril de 2024 (UTC) [ respuesta ]
Oh Dios, me acabo de dar cuenta de que hice ping a la persona equivocada, lo siento David Eppstein Aaron Liu ( charla ) 18:16, 7 de abril de 2024 (UTC) [ respuesta ]

Descripción original de CPF (https://github.com/mashedkeyboard): un conjunto de importaciones utilizadas por otros robots de Wikipedia que he creado. Probablemente no sean de mucha utilidad para nadie más, ¡pero puedes acceder a ellos de acuerdo con la licencia si lo deseas!

Archivos de configuración esperados en el directorio de inicio: const localConfigFilename string = "config.yml" const globalConfigFilename string = "config-global.yml" const botPasswordFilename string = "botpassword" de: config.go


Me imagino que hay un conjunto de reglas que son como Wikitext en alguna parte. ¿Sabes dónde puedo encontrar esas reglas? - David Tornheim ( discusión ) 11:44, 7 de abril de 2024 (UTC) [ respuesta ]

Correo electrónico de Toolforge

@ Novem Linguae , Sohom Datta y Aaron Liu :

El código de Yapperbot utiliza el módulo Ybtools. Ybtools incluye el archivo error.go. Si hay un error, se envía un correo electrónico a "[email protected]". ¿Es una cuenta de correo electrónico que se creó automáticamente para cada bot o la creó Naypta? ¿Alguien más revisaría ese correo electrónico excepto Naypta? ¿Existe una sección que explique las cuentas de correo electrónico que terminan en @tools.wmflabs.org y su uso con respecto a los bots? - David Tornheim ( discusión ) 21:23, 8 de mayo de 2024 (UTC) [ respuesta ]

Eche un vistazo a wikitech:Ayuda:Toolforge/Email. Creo que los correos electrónicos se reenvían automáticamente a Naypta y se crean automáticamente para cada cuenta de bot. No estoy seguro de si alguien tiene acceso a esos correos electrónicos, pero preguntaré en IRC. sohom @ enwiki 21:47, 8 de mayo de 2024 (UTC) [ respuesta ]
Gracias. - David Tornheim ( discusión ) 22:25, 8 de mayo de 2024 (UTC) [ respuesta ]

PD: Para su información, con la ayuda de Sohom Datta (Sohom Data está familiarizado con Go y los bots), comencé a ejecutar una copia local del código de Yapperbot en la máquina de mi hogar, para poder ver las variables internas y asegurarme de que comprender cómo funciona el código. No dejaré que la copia afecte el espacio principal, solo el espacio de prueba. Progreso lento pero constante.-- David Tornheim ( charla ) 21:36, 8 de mayo de 2024 (UTC) [ respuesta ]

Problema con el inicio de sesión de Shell

@ Novem Linguae , Sohom Datta y Aaron Liu : Estoy intentando iniciar sesión en ssh, que he utilizado con éxito en el pasado. Ahora recibo este error:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@ ADVERTENCIA: ¡POSIBLE SPOOFING DE DNS DETECTADO! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@La clave de host ECDSA para login.toolforge.org ha cambiado.y la clave de la dirección IP correspondiente 185.15.56.62es desconocido. Esto podría significar queSe está produciendo una SPOOFING de DNS o la dirección IP del hosty su clave de host han cambiado al mismo tiempo.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@ ADVERTENCIA: ¡LA IDENTIFICACIÓN DEL HOST REMOTO HA CAMBIADO! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@¡ES POSIBLE QUE ALGUIEN ESTÉ HACIENDO ALGO MALO!¡Alguien podría estar espiándote en este momento (ataque de intermediario)!También es posible que se haya cambiado una clave de host.La huella digital de la clave ECDSA enviada por el host remoto es<<omitido>>Por favor, póngase en contacto con el administrador del sistema.Agregue la clave de host correcta en C:\\Users\\MYLOCALNAME/.ssh/known_hosts para deshacerse de este mensaje.Clave ECDSA infractora en C:\\Users\\MYLOCALNAME/.ssh/known_hosts:1La clave de host ECDSA para login.toolforge.org ha cambiado y usted ha solicitado una verificación estricta.Error en la verificación de la clave del host.

No creo que haya cambiado nada significativo por mi parte que pudiera desencadenar esto. ¿Qué tengo que hacer? ¿Debería publicar esta pregunta en Discord o en otro lugar para preguntar al respecto? Cuando dice Agregar la clave de host correcta en C:\\Users\\MYLOCALNAME/.ssh/known_hosts para deshacerse de este mensaje. , No entiendo lo que eso significa. Si funcionó antes, eso significa que la clave aún debería ser correcta, ¿verdad? - David Tornheim ( discusión ) 10:32, 15 de mayo de 2024 (UTC) [ respuesta ]

Sé muy poco sobre SSH, pero agregue la clave de host correcta en C:\\Users\\MYLOCALNAME/.ssh/known_hosts para deshacerme de este mensaje. Parece el camino a seguir aquí. Podría intentar algo como esto. – Novem Linguae ( discusión ) 10:35, 15 de mayo de 2024 (UTC) [ respuesta ]
Gracias por la respuesta rápida. Lo intentaré e informaré aquí si funciona o no. - David Tornheim ( discusión ) 10:37, 15 de mayo de 2024 (UTC) [ respuesta ]
@ Novem Linguae @ David Tornheim Creo que la huella digital ssh de los servidores cambió hace poco tiempo (en marzo). Las huellas digitales SSH para la instancia actual de login.toolforge.org se encuentran en wikitech:Ayuda:SSH Fingerprints/login.toolforge.org. Si la huella digital coincide, puede eliminar las líneas C:\\Users\\MYLOCALNAME/.ssh/known_hostsque comienzan con login.toolforge.orgy ssh debería agregar las entradas correctas la próxima vez que se conecte a los servidores. (Es posible que reciba un mensaje del efecto:
:::No se puede establecer la autenticidad del host 'login.toolforge.org (185.15.56.62)'.:::La huella digital de la clave ED25519 es SHA256:BD7PYn+h064QofXmhn69Ehos6skHvaki6MO+EOubL3Q.:::Esta clave no se conoce con ningún otro nombre.:::¿Estás seguro de que deseas continuar conectándote (sí/no/[huella digital])?:::
la próxima vez que inicie sesión y una vez que la apruebe, la nueva huella digital se agregará a su archivo know_hosts) Sohom ( discusión ) 16:00, 15 de mayo de 2024 (UTC) [ respuesta ]