Agreed, as I stated, this was a first cut is now improved as a result of your feedback. We took another look and you were right.
Added to the review method
-
Candidate classification before file inspection:
- Plugin
- Theme
- Theme component
- Hybrid extension
- Integration repository
- Release artifact
-
Separate shared repository/release inventory:
- README, license, changelog
- Package files and lockfiles
- CI workflows
- Installation/Docker scripts
- External-service integrations
- Generated release assets
- Tagged/archive release
- Relevant untracked and ignored files
-
Expanded plugin inventory:
- Every file loaded, registered, or exposed by
plugin.rb config/routes.rbdb/post_migrate/- Views, engines, validators, and middleware
- Admin and public frontend code
- Connectors, components, routes, services, templates, and frontend tests
- Common, desktop, mobile, admin, and embedded styles
- Fixtures, support files, and browser/system tests
- Ruby, JavaScript, system, and external-service dependencies
.discourse-compatibilityd-compat/*branches and workflows- Declared Discourse version bounds
- Every file loaded, registered, or exposed by
-
New theme/theme-component inventory:
- Root
about.json componentclassification- License, author, version, and compatibility metadata
- Declared assets, color schemes, screenshots, and themeable settings
- Root
settings.yml - Root
locales/ common/,desktop/, andmobile/- SCSS and supported HTML injection files
- Root
javascripts/ api-initializers/- All
.js,.gjs, and.hbsfiles - Root
stylesheets/and imported stylesheets - Root
assets/and all references to them - Preview/screenshots
- Tests and lint/build configuration
- Compatibility metadata and branches
- Packaged/exported theme bytes
- Root
-
New structural checks:
- Declared extension type must match
about.jsonand installation behavior. component: truemeans theme component.component: falseor omitted means full theme.- Hybrid repositories receive every applicable inventory.
- Misplaced or unexpected files are investigated rather than silently ignored.
- Missing optional directories are not automatically defects.
- Working tree, release archive, installed extension, generated assets, and public candidate are separate evidence surfaces.
- Declared extension type must match
-
New full-theme checklist:
- Metadata identity
- Complete-theme rendering
- Core-page coverage
- Settings, locales, and assets
- Supported JavaScript/API initializers
- Responsive behavior, accessibility, and RTL
- Foundation, Horizon, and embed behavior
- Theme-component interactions
- Installation, update, rollback, and compatibility checks
My hope is community input would improve the Skill and the Skill would help others evaluate their own work or, frankly, the work of others prior to installing if there is a doubt as to quality.
So far we are 2 for 2. Your input drove improvements to the Skill and @satonotdead found it helpful. Thanks for kind words and support @satonotdead