refactor: MokoGitea -> MokoGit migration + workflow-sync repairs (#350 #351 #352 #354 #11 #4) #356

Merged
jmiller merged 15 commits from fix/mokogit-migration into dev 2026-07-16 22:08:39 +00:00

15 Commits

Author SHA1 Message Date
jmiller dae6aa4df4 Merge remote-tracking branch 'origin/dev' into fix/mokogit-migration
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Failing after 8s
Generic: Project CI / Lint & Validate (pull_request) Failing after 23s
Generic: Project CI / Tests (pull_request) Failing after 17s
Universal: PR Check / Require Docs Update (pull_request) Has been skipped
Universal: PR Check / Wiki Update Reminder (pull_request) Has been skipped
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Universal: PR Check / Validate PR (pull_request) Failing after 6s
Universal: PR Check / Secret Scan (pull_request) Successful in 7s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Successful in 1s
Platform: mokocli CI / Gate 1: Code Quality (pull_request) Failing after 48s
Platform: mokocli CI / Gate 2: Unit Tests (8.1) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 2: Unit Tests (8.2) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 2: Unit Tests (8.3) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 3: Self-Health Check (pull_request) Has been cancelled
Platform: mokocli CI / Gate 4: Governance (pull_request) Has been cancelled
Platform: mokocli CI / Gate 5: Template Integrity (pull_request) Has been cancelled
Platform: mokocli CI / CI Summary (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
# Conflicts:
#	.mokogit/CLAUDE.md
#	.mokogit/branch-protection.yml
#	.mokogit/bulk-repo-sync.yml
#	.mokogit/renovate.yml
#	.mokogit/sync-wikis.yml
#	.mokogit/workflows/auto-bump.yml
#	.mokogit/workflows/auto-release.yml
#	.mokogit/workflows/branch-cleanup.yml
#	.mokogit/workflows/cascade-dev.yml
#	.mokogit/workflows/ci-generic.yml
#	.mokogit/workflows/cleanup.yml
#	.mokogit/workflows/custom/ci-platform.yml
#	.mokogit/workflows/custom/sync-feature-versions.yml
#	.mokogit/workflows/deploy-manual.yml
#	.mokogit/workflows/gitleaks.yml
#	.mokogit/workflows/issue-branch.yml
#	.mokogit/workflows/notify.yml
#	.mokogit/workflows/pr-check.yml
#	.mokogit/workflows/pre-release.yml
#	.mokogit/workflows/rc-revert.yml
#	.mokogit/workflows/repo-health.yml
#	.mokogit/workflows/security-audit.yml
#	.mokogit/workflows/workflow-sync-trigger.yml
2026-07-16 17:07:57 -05:00
jmiller 1dcf77c693 fix(rename): collapse duplicate MOKOGIT_TOKEN env reads (rename artifact)
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 15s
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Secret Scan (pull_request) Successful in 8s
Universal: PR Check / Validate PR (pull_request) Failing after 6s
Platform: mokocli CI / Gate 1: Code Quality (pull_request) Failing after 52s
Platform: mokocli CI / Gate 2: Unit Tests (8.1) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 2: Unit Tests (8.2) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 2: Unit Tests (8.3) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 3: Self-Health Check (pull_request) Has been cancelled
Platform: mokocli CI / Gate 4: Governance (pull_request) Has been cancelled
Platform: mokocli CI / Gate 5: Template Integrity (pull_request) Has been cancelled
Platform: mokocli CI / CI Summary (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
The gitea->mokogit sed merged two distinct token env vars (GITEA_TOKEN + MOKOGITEA_TOKEN)
into duplicate getenv('MOKOGIT_TOKEN') reads in version_reset_dev, release_cascade, and
release_create. Collapse to a single read. Found in PR #356 code review.
2026-07-16 17:00:43 -05:00
jmiller 7728b6b4ac refactor(rename): Gitea/MokoGitea -> MokoGit across the codebase [#4]
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 12s
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
Universal: PR Check / Secret Scan (pull_request) Successful in 10s
Platform: mokocli CI / Gate 1: Code Quality (pull_request) Failing after 1m3s
Platform: mokocli CI / Gate 2: Unit Tests (8.1) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 2: Unit Tests (8.2) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 2: Unit Tests (8.3) (pull_request) Has been cancelled
Platform: mokocli CI / Gate 3: Self-Health Check (pull_request) Has been cancelled
Platform: mokocli CI / Gate 4: Governance (pull_request) Has been cancelled
Platform: mokocli CI / Gate 5: Template Integrity (pull_request) Has been cancelled
Platform: mokocli CI / CI Summary (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
MokoGitea instance rebrand to MokoGit. Content sweep over 265 files (ordered to avoid
moko-prefix doubling) plus path renames:
- .mokogitea/ -> .mokogit/ (repo + all mcp/servers/*)
- templates/mokogitea/ -> templates/mokogit/
- lib/Enterprise/MokoGiteaAdapter.php -> MokoGitAdapter.php (class MokoGitAdapter)
- mcp/servers/mokogitea_{skill,api} -> mokogit_{skill,api}; skills/mokogitea -> skills/mokogit
- automation/migrate_to_gitea.php -> migrate_to_mokogit.php
- env/secret names GITEA_* -> MOKOGIT_*

Note: ~/.claude/.mcp.json server flipped to @mokoconsulting/mcp-mokogit (publish pending).
2026-07-16 16:49:12 -05:00
jmiller 523beb1bcc refactor(manifest): repoint manifest_element to PlatformDetector, drop dead ManifestReader [#11]
manifest_element detects platform from files instead of the retired manifest. Remove the
unused ManifestReader class. manifest_licensing self-skips when the manifest is absent
(correct retirement behavior); manifest_read already uses the API + file auto-detection.
2026-07-16 16:40:22 -05:00
jmiller f85baa5359 refactor(manifest): repoint remaining pipeline readers off manifest.xml [#11]
- version_auto_bump: drop manifest watch-path read (always-bump fallback)
- push_files + repo_cleanup: read platform/standards_version from the metadata API
- deploy_joomla: drop manifest <deploy><source-dir>, use the source-dir resolution chain
2026-07-16 16:37:26 -05:00
jmiller 4e097d9661 refactor(release): repoint release/reset tools off manifest to PlatformDetector [#11]
release_package, release_create, release_validate, version_reset_dev now detect platform
from repo files via PlatformDetector instead of reading the retired .mokogitea/manifest.xml.
version_reset_dev returns stamp vocab to preserve caller behavior.
2026-07-16 16:33:52 -05:00
jmiller 4ff42ed81e refactor(platform): add PlatformDetector, repoint version_set_platform off manifest [#11]
New file-based PlatformDetector::detect() (canonical names) + toStampPlatform() mapping
(joomla->waas-component, dolibarr->crm-module) replaces the retired manifest <platform>
read. Unit-verified: joomla/dolibarr/go fixtures map correctly so version stamping still
fires on the right branch.
2026-07-16 16:30:57 -05:00
jmiller d83424c867 refactor(version): drop manifest.xml from version_bump/version_check [#11]
Remove the .mokogitea/manifest.xml read/write branches; README.md + platform files are
the version sources/targets. Manifest is retired (never created), so these guarded reads
were dead paths.
2026-07-16 16:23:34 -05:00
jmiller 55c71f604a refactor(version): drop .mokogitea/manifest.xml as version source, README.md canonical [#11]
Remove the manifest read + backfill from version_read; README.md is now the canonical
version source (Joomla XML / package.json / pyproject.toml remain fallbacks). version_prefix
defaults to empty (comes from the metadata API when needed, not a committed manifest).
2026-07-16 16:14:16 -05:00
jmiller d0e668c635 refactor(manifest): remove retired manifest creation/push tools [#11]
.mokogitea/manifest.xml is retired; repo metadata now comes from the MokoGit metadata API.
Remove the tools whose sole job was creating/pushing it:
- automation/{enrich_manifest_xml,enrich_mokostandards_xml,push_manifest_xml,push_mokostandards_xml}.php
- create_repo.php manifest-creation step (Step 3)
- bin/moko bulk:{push-manifest,push-mokostandards,enrich-manifest,enrich-mokostandards} entries
2026-07-16 16:05:58 -05:00
jmiller 5b96a9cec9 fix(version): emit Joomla schema markers on auto-bump [#351 #354]
After stamping the manifest <version>, write a comment-only no-op marker named exactly
<version>.sql at the admin-relative <schemas><schemapath> when one is declared and absent.
Keeps #__schemas in lockstep with the manifest so com_installer stops reporting the
component a schema version behind. Idempotent; reads the stamped version back from each
manifest so the marker never exceeds it.
2026-07-16 14:42:09 -05:00
jmiller d9a05814a4 fix(scaffolding): repoint stale .mokogitea/workflows refs to .mokogit/workflows [#352]
Half-migrated scaffolding wrote/looked-up the OLD .mokogitea/workflows path while
workflow_sync wrote the migrated .mokogit/workflows; a later dir rename collided into
the existing .mokogit and produced .mokogit/.mokogit nesting. Repoints repo_wizard,
release, bulk_workflow_push, and UnifiedValidation to the canonical path.
2026-07-16 14:42:06 -05:00
jmiller 0fa43b1d03 fix(sync): repair workflow sync, add health-check, fix template map [#350]
- WORKFLOW_DIR .mokogitea/workflows -> .mokogit/workflows (root cause of silent sync failure)
- add --phase health (drift detection + ntfy/issue/exit-code alerts) and --repo-filter
- PLATFORM_TEMPLATES: mcp -> Template-NPM (renamed), drop dead Template-Dolibarr, add dot -> Template-Dot
- name-based dot-repo detection; PLATFORM_EXCLUDES[dot] curates out build/versioning/release/deploy
- harden missing-template path: skip+warn instead of destructive Generic fallback
- register workflow:sync in bin/moko
- fix pre-existing undefined $label in Phase 2 exclude branch
2026-07-16 14:41:46 -05:00
jmiller 9f92529a6f chore: move custom workflows to workflows/custom 2026-07-09 20:33:02 -05:00
jmiller 0fe5a064a7 chore: remove deprecated updates.xml tooling and streamline CI
- Delete cli/updates_xml_build.php, cli/updates_xml_sync.php and
  lib/plugins/Joomla/UpdateXmlGenerator.php (MokoGitea now generates
  updates dynamically)
- Add cli/workflow_sync.php and custom self-update-runner workflow
- Trim overgrown .gitignore and drop .mokogitea/branch-protection.yml
- Simplify release/validate CLI scripts and MCP server workflows
- Refresh Joomla templates and PHPStan baseline
2026-07-09 18:16:09 -05:00