Public Access
Page:
VALIDATION
Clone
1
VALIDATION
Jonathan Miller edited this page 2026-06-09 16:54:59 +00:00
Table of Contents
Validation
20+ validators in the validate/ directory.
Running
php bin/moko validate:module --path . # All validators
php validate/check_changelog.php --path /repo # Single validator
make validate # Via Makefile
Validators
| Validator | Checks |
|---|---|
check_changelog.php |
CHANGELOG.md format (Keep a Changelog) |
check_client_theme.php |
Client theme structure |
check_composer_deps.php |
composer.json/lock, license audit |
check_enterprise_readiness.php |
Enterprise readiness assessment |
check_file_integrity.php |
File checksums |
check_joomla_manifest.php |
Joomla XML manifest validity |
check_language_structure.php |
.ini language files, matching keys |
check_license_headers.php |
SPDX license headers in source |
check_no_secrets.php |
No hardcoded tokens/passwords |
check_paths.php |
Directory structure matches conventions |
check_php_syntax.php |
PHP lint on all .php files |
check_repo_health.php |
README, LICENSE, CHANGELOG, manifest |
check_structure.php |
Layout matches platform template |
check_tabs.php |
No tabs (spaces only) |
check_version_consistency.php |
Version matches across files |
check_wiki_health.php |
Wiki has required pages |
check_xml_wellformed.php |
XML files parse correctly |
scan_drift.php |
Configuration drift from org standards |
Exit Codes
| Code | Meaning |
|---|---|
| 0 | All checks passed |
| 1 | One or more failed |
| 2 | Usage error |
Writing New Validators
- Create
validate/check_{name}.php - Extend
CliBase - Accept
--pathargument - Return 0 (pass) or 1 (fail)
- Register in
validate:module
Pages
- ARCHITECTURE
- BULK-OPERATIONS
- CLI-AUTOMATION
- DEPLOY-SCRIPTS
- DRY-RUN-PATTERN
- Documentation-Standards
- File-Header-Standards
- Home
- JOOMLA-SYNC
- MINIFICATION
- MONITORING-SCRIPTS
- NEW-SCRIPTS
- QUICKSTART-ORG-PROJECTS
- RELEASE-MANAGEMENT
- RUNNERS
- VALIDATION
- Version-Standard
- WORKFLOW-STANDARDS
-
api
- api-automation-index
- api-definitions-default-index
- api-definitions-sync-index
- api-deploy-index
- api-fix-index
- api-index
- api-maintenance-index.-
- api-maintenance-index
- api-plugin-index.-
- api-plugin-index
- api-tests-index.-
- api-tests-sample-index.-
- api-tests-sample-index
- api-validate-index.-
- maintenance-index
- automation
- features
- guides
- operations
- reference
- standards
- templates
-
workflows
- workflows-README.-
- workflows-README
- workflows-auto-release.-
- workflows-auto-release
- workflows-branch-protection.-
- workflows-branch-protection
- workflows-build-release.-
- workflows-build-release
- workflows-cascade-dev.-
- workflows-cascade-dev
- workflows-changelog-management.-
- workflows-changelog-management
- workflows-demo-deployment.-
- workflows-demo-deployment
- workflows-dev-branch-tracking.-
- workflows-dev-branch-tracking
- workflows-dev-deployment.-
- workflows-dev-deployment
- workflows-index.-
- workflows-index
- workflows-release-system.-
- workflows-release-system
- workflows-renovate.-
- workflows-renovate
- workflows-reusable-workflows.-
- workflows-reusable-workflows
- workflows-rs-deployment.-
- workflows-rs-deployment
- workflows-secret-scanning.-
- workflows-secret-scanning
- workflows-shared-workflows.-
- workflows-shared-workflows
- workflows-standards-compliance.-
- workflows-standards-compliance
- workflows-static-analysis.-
- workflows-static-analysis
- workflows-sub-issue-management.-
- workflows-sub-issue-management
- workflows-update-server.-
- workflows-update-server
- workflows-workflow-architecture.-
- workflows-workflow-architecture