De acuerdo, como ya mencioné, esta fue una primera versión y ahora ha sido mejorada como resultado de sus comentarios. Vimos el tema de nuevo y tenían razón.
Agregado al método de revisión
-
Clasificación de candidatos antes de la inspección de archivos:
- Plugin
- Tema
- Componente de tema
- Extensión híbrida
- Repositorio de integración
- Artefacto de lanzamiento
-
Inventario separado de repositorio/lanzamiento compartido:
- README, licencia, registro de cambios
- Archivos de paquete y lockfiles
- Flujos de trabajo de CI
- Scripts de instalación/Docker
- Integraciones de servicios externos
- Activos de lanzamiento generados
- Lanzamiento etiquetado/archivado
- Archivos no rastreados e ignorados relevantes
-
Inventario de plugin ampliado:
- Cada archivo cargado, registrado o expuesto por
plugin.rb config/routes.rbdb/post_migrate/- Vistas, motores, validadores y middleware
- Código de frontend de administración y público
- Conectores, componentes, rutas, servicios, plantillas y pruebas de frontend
- Estilos comunes, de escritorio, móviles, de administración y embebidos
- Fijaciones (fixtures), archivos de soporte y pruebas de navegador/sistema
- Dependencias de Ruby, JavaScript, sistema y servicios externos
.discourse-compatibility- Ramas y flujos de trabajo de
d-compat/* - Límites de versión de Discourse declarados
- Cada archivo cargado, registrado o expuesto por
-
Nuevo inventario de tema/componente de tema:
about.jsonraíz- Clasificación de
component - Metadatos de licencia, autor, versión y compatibilidad
- Activos, esquemas de color, capturas de pantalla y ajustes tematizables declarados
settings.ymlraízlocales/raízcommon/,desktop/ymobile/- Archivos de inyección de SCSS y HTML compatibles
javascripts/raízapi-initializers/- Todos los archivos
.js,.gjsy.hbs stylesheets/raíz y hojas de estilo importadasassets/raíz y todas las referencias a ellos- Vista previa/capturas de pantalla
- Pruebas y configuración de lint/build
- Metadatos de compatibilidad y ramas
- Bytes de tema empaquetado/exportado
-
Nuevas comprobaciones estructurales:
- El tipo de extensión declarado debe coincidir con
about.jsony el comportamiento de instalación. component: truesignifica componente de tema.component: falseu omitido significa tema completo.- Los repositorios híbridos reciben todos los inventarios aplicables.
- Los archivos mal ubicados o inesperados se investigan en lugar de ignorarse en silencio.
- Las directorios opcionales ausentes no son defectos automáticamente.
- El árbol de trabajo, el archivo de lanzamiento, la extensión instalada, los activos generados y el candidato público son superficies de evidencia separadas.
- El tipo de extensión declarado debe coincidir con
-
Nueva lista de verificación de tema completo:
- Identidad de metadatos
- Renderizado de tema completo
- Cobertura de páginas centrales
- Ajustes, localizaciones y activos
- JavaScript/inicializadores de API compatibles
- Comportamiento responsivo, accesibilidad y RTL
- Comportamiento de Foundation, Horizon y embebido
- Interacciones de componentes de tema
- Comprobaciones de instalación, actualización, reversión y compatibilidad
Espero que la entrada de la comunidad mejore la Skill y que la Skill ayude a otros a evaluar su propio trabajo o, francamente, el trabajo de otros antes de instalarlo si hay dudas sobre la calidad.
Hasta ahora llevamos 2 de 2. Sus comentarios impulsaron mejoras en la Skill y @satonotdead la encontró útil. Gracias por las amables palabras y el apoyo @satonotdead