diff --git a/.gitea/ISSUE_TEMPLATE/adr.md b/.mokogitea/ISSUE_TEMPLATE/adr.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/adr.md rename to .mokogitea/ISSUE_TEMPLATE/adr.md diff --git a/.gitea/ISSUE_TEMPLATE/bug_report.md b/.mokogitea/ISSUE_TEMPLATE/bug_report.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/bug_report.md rename to .mokogitea/ISSUE_TEMPLATE/bug_report.md diff --git a/.gitea/ISSUE_TEMPLATE/config.yml b/.mokogitea/ISSUE_TEMPLATE/config.yml similarity index 100% rename from .gitea/ISSUE_TEMPLATE/config.yml rename to .mokogitea/ISSUE_TEMPLATE/config.yml diff --git a/.gitea/ISSUE_TEMPLATE/documentation.md b/.mokogitea/ISSUE_TEMPLATE/documentation.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/documentation.md rename to .mokogitea/ISSUE_TEMPLATE/documentation.md diff --git a/.gitea/ISSUE_TEMPLATE/feature_request.md b/.mokogitea/ISSUE_TEMPLATE/feature_request.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/feature_request.md rename to .mokogitea/ISSUE_TEMPLATE/feature_request.md diff --git a/.gitea/ISSUE_TEMPLATE/mcp_api_integration.md b/.mokogitea/ISSUE_TEMPLATE/mcp_api_integration.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/mcp_api_integration.md rename to .mokogitea/ISSUE_TEMPLATE/mcp_api_integration.md diff --git a/.gitea/ISSUE_TEMPLATE/mcp_connection_issue.md b/.mokogitea/ISSUE_TEMPLATE/mcp_connection_issue.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/mcp_connection_issue.md rename to .mokogitea/ISSUE_TEMPLATE/mcp_connection_issue.md diff --git a/.gitea/ISSUE_TEMPLATE/mcp_tool_request.md b/.mokogitea/ISSUE_TEMPLATE/mcp_tool_request.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/mcp_tool_request.md rename to .mokogitea/ISSUE_TEMPLATE/mcp_tool_request.md diff --git a/.gitea/ISSUE_TEMPLATE/question.md b/.mokogitea/ISSUE_TEMPLATE/question.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/question.md rename to .mokogitea/ISSUE_TEMPLATE/question.md diff --git a/.gitea/ISSUE_TEMPLATE/rfc.md b/.mokogitea/ISSUE_TEMPLATE/rfc.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/rfc.md rename to .mokogitea/ISSUE_TEMPLATE/rfc.md diff --git a/.gitea/ISSUE_TEMPLATE/security.md b/.mokogitea/ISSUE_TEMPLATE/security.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/security.md rename to .mokogitea/ISSUE_TEMPLATE/security.md diff --git a/.gitea/ISSUE_TEMPLATE/version.md b/.mokogitea/ISSUE_TEMPLATE/version.md similarity index 100% rename from .gitea/ISSUE_TEMPLATE/version.md rename to .mokogitea/ISSUE_TEMPLATE/version.md diff --git a/.gitea/manifest.xml b/.mokogitea/manifest.xml similarity index 100% rename from .gitea/manifest.xml rename to .mokogitea/manifest.xml diff --git a/.gitea/workflows/auto-assign.yml b/.mokogitea/workflows/auto-assign.yml similarity index 100% rename from .gitea/workflows/auto-assign.yml rename to .mokogitea/workflows/auto-assign.yml diff --git a/.gitea/workflows/auto-dev-issue.yml b/.mokogitea/workflows/auto-dev-issue.yml similarity index 100% rename from .gitea/workflows/auto-dev-issue.yml rename to .mokogitea/workflows/auto-dev-issue.yml diff --git a/.gitea/workflows/auto-release.yml b/.mokogitea/workflows/auto-release.yml similarity index 96% rename from .gitea/workflows/auto-release.yml rename to .mokogitea/workflows/auto-release.yml index dbaf151..f7739f8 100644 --- a/.gitea/workflows/auto-release.yml +++ b/.mokogitea/workflows/auto-release.yml @@ -4,8 +4,8 @@ # # FILE INFORMATION # DEFGROUP: Gitea.Workflow -# INGROUP: MokoStandards.Release -# REPO: https://git.mokoconsulting.tech/mokoconsulting-tech/MokoStandards-API +# INGROUP: moko-platform.Release +# REPO: https://git.mokoconsulting.tech/mokoconsulting-tech/moko-platform # PATH: /templates/workflows/universal/auto-release.yml.template # VERSION: 05.00.00 # BRIEF: Universal build & release � detects platform from manifest.xml @@ -58,7 +58,7 @@ jobs: token: ${{ secrets.GA_TOKEN }} fetch-depth: 0 - - name: Setup MokoStandards tools + - name: Setup moko-platform tools env: MOKO_CLONE_TOKEN: ${{ secrets.GA_TOKEN }} MOKO_CLONE_HOST: git.mokoconsulting.tech/MokoConsulting @@ -69,9 +69,9 @@ jobs: sudo apt-get update -qq && sudo apt-get install -y -qq php-cli php-mbstring php-xml php-zip php-curl composer >/dev/null 2>&1 fi git clone --depth 1 --branch main --quiet \ - "https://x-access-token:${MOKO_CLONE_TOKEN}@${MOKO_CLONE_HOST}/MokoStandards-API.git" \ - /tmp/mokostandards-api - cd /tmp/mokostandards-api + "https://x-access-token:${MOKO_CLONE_TOKEN}@${MOKO_CLONE_HOST}/moko-platform.git" \ + /tmp/moko-platform-api + cd /tmp/moko-platform-api composer install --no-dev --no-interaction --quiet @@ -80,15 +80,15 @@ jobs: id: platform run: | # Parse .manifest.xml via manifest_read.php — outputs all fields to GITHUB_OUTPUT - php /tmp/mokostandards-api/cli/manifest_read.php --path . --github-output 2>/dev/null || true - PLATFORM=$(php /tmp/mokostandards-api/cli/manifest_read.php --path . --field platform 2>/dev/null) + php /tmp/moko-platform-api/cli/manifest_read.php --path . --github-output 2>/dev/null || true + PLATFORM=$(php /tmp/moko-platform-api/cli/manifest_read.php --path . --field platform 2>/dev/null) [ -z "$PLATFORM" ] && PLATFORM="generic" echo "platform=$PLATFORM" >> "$GITHUB_OUTPUT" echo "Platform detected: ${PLATFORM}" # entry-point from manifest, find as fallback - MOD_FILE=$(php /tmp/mokostandards-api/cli/manifest_read.php --path . --field entry-point 2>/dev/null) - [ -z "$MOD_FILE" ] && MOD_FILE=$(find . -maxdepth 4 -name "mod*.class.php" ! -path "./.git/*" -exec grep -l 'extends DolibarrModules' {} \; 2>/dev/null | head -1) - MANIFEST=$(find . -maxdepth 3 -name "*.xml" ! -path "./.git/*" -exec grep -l '/dev/null | head -1) + MOD_FILE=$(php /tmp/moko-platform-api/cli/manifest_read.php --path . --field entry-point 2>/dev/null) + [ -z "$MOD_FILE" ] && MOD_FILE=$(find . -maxdepth 4 -name "mod*.class.php" ! -path "./.git/*" -exec grep -l 'extends DolibarrModules' {} \; 2>/dev/null | head -1 || true) + MANIFEST=$(find . -maxdepth 3 -name "*.xml" ! -path "./.git/*" -exec grep -l '/dev/null | head -1 || true) echo "manifest=${MANIFEST}" >> "$GITHUB_OUTPUT" echo "mod_file=${MOD_FILE}" >> "$GITHUB_OUTPUT" @@ -96,7 +96,7 @@ jobs: - name: "Step 1: Read version from README.md" id: version run: | - VERSION=$(php /tmp/mokostandards-api/cli/version_read.php --path . 2>/dev/null) + VERSION=$(php /tmp/moko-platform-api/cli/version_read.php --path . 2>/dev/null) if [ -z "$VERSION" ]; then echo "No VERSION in README.md — skipping release" echo "skip=true" >> "$GITHUB_OUTPUT" @@ -129,7 +129,7 @@ jobs: if: steps.version.outputs.skip != 'true' id: bump run: | - CURRENT=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' README.md 2>/dev/null | head -1) + CURRENT=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' README.md 2>/dev/null | head -1 || true) [ -z "$CURRENT" ] && { echo "skip=true" >> "$GITHUB_OUTPUT"; exit 0; } MAJOR=$((10#$(echo "$CURRENT" | cut -d. -f1))) @@ -157,7 +157,7 @@ jobs: case "$PLATFORM" in joomla) if [ -n "$MANIFEST" ]; then - MANIFEST_VER=$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' "$MANIFEST" | head -1) + MANIFEST_VER=$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' "$MANIFEST" | head -1 || true) [ -n "$MANIFEST_VER" ] && sed -i "s|${MANIFEST_VER}|${VERSION}|" "$MANIFEST" sed -i "s|[^<]*|${TODAY}|" "$MANIFEST" fi @@ -229,7 +229,7 @@ jobs: echo "" >> $GITHUB_STEP_SUMMARY # -- Version drift check (must pass before release) -------- - README_VER=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' README.md 2>/dev/null | head -1) + README_VER=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' README.md 2>/dev/null | head -1 || true) if [ "$README_VER" != "$VERSION" ]; then echo "- Version drift: README says \`${README_VER}\` but releasing \`${VERSION}\`" >> $GITHUB_STEP_SUMMARY ERRORS=$((ERRORS+1)) @@ -238,7 +238,7 @@ jobs: fi # Check CHANGELOG version matches - CL_VER=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' CHANGELOG.md 2>/dev/null | head -1) + CL_VER=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' CHANGELOG.md 2>/dev/null | head -1 || true) if [ -n "$CL_VER" ] && [ "$CL_VER" != "$VERSION" ]; then echo "- CHANGELOG drift: \`${CL_VER}\` != \`${VERSION}\`" >> $GITHUB_STEP_SUMMARY ERRORS=$((ERRORS+1)) @@ -246,7 +246,7 @@ jobs: # Check composer.json version if present if [ -f "composer.json" ]; then - COMP_VER=$(sed -n 's/.*"version"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' composer.json 2>/dev/null | head -1) + COMP_VER=$(sed -n 's/.*"version"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' composer.json 2>/dev/null | head -1 || true) if [ -n "$COMP_VER" ] && [ "$COMP_VER" != "$VERSION" ]; then echo "- composer.json drift: \`${COMP_VER}\` != \`${VERSION}\`" >> $GITHUB_STEP_SUMMARY ERRORS=$((ERRORS+1)) @@ -271,7 +271,7 @@ jobs: case "$PLATFORM" in joomla) if [ -n "$MANIFEST" ]; then - XML_VER=$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' "$MANIFEST" 2>/dev/null | head -1) + XML_VER=$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' "$MANIFEST" 2>/dev/null | head -1 || true) if [ -n "$XML_VER" ] && [ "$XML_VER" != "$VERSION" ]; then echo "- Manifest drift: \`${XML_VER}\` != \`${VERSION}\`" >> $GITHUB_STEP_SUMMARY ERRORS=$((ERRORS+1)) @@ -285,7 +285,7 @@ jobs: fi ;; dolibarr) if [ -n "$MOD_FILE" ]; then - MOD_VER=$(sed -n "s/.*\\\$this->version = '\([^']*\)'.*/\1/p" "$MOD_FILE" 2>/dev/null | head -1) + MOD_VER=$(sed -n "s/.*\\\$this->version = '\([^']*\)'.*/\1/p" "$MOD_FILE" 2>/dev/null | head -1 || true) if [ -n "$MOD_VER" ] && [ "$MOD_VER" != "$VERSION" ]; then echo "- Module drift: \`${MOD_VER}\` != \`${VERSION}\`" >> $GITHUB_STEP_SUMMARY ERRORS=$((ERRORS+1)) @@ -337,7 +337,7 @@ jobs: steps.check.outputs.already_released != 'true' run: | VERSION="${{ steps.bump.outputs.version || steps.version.outputs.version }}" - php /tmp/mokostandards-api/cli/version_set_platform.php \ + php /tmp/moko-platform-api/cli/version_set_platform.php \ --path . --version "$VERSION" --branch main # -- STEP 4: Update version badges ---------------------------------------- @@ -364,20 +364,20 @@ jobs: REPO="${{ github.repository }}" # -- Parse extension metadata from XML manifest ---------------- - MANIFEST=$(find . -maxdepth 2 -name "*.xml" -exec grep -l '/dev/null | head -1) + MANIFEST=$(find . -maxdepth 2 -name "*.xml" -exec grep -l '/dev/null | head -1 || true) if [ -z "$MANIFEST" ]; then echo "Warning: No Joomla XML manifest found — skipping updates.xml" >> $GITHUB_STEP_SUMMARY exit 0 fi # Extract fields using sed (portable — no grep -P) - EXT_NAME=$(sed -n 's/.*\([^<]*\)<\/name>.*/\1/p' "$MANIFEST" | head -1) - EXT_TYPE=$(sed -n 's/.*]*type="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) - EXT_ELEMENT=$(sed -n 's/.*\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" | head -1) - EXT_CLIENT=$(sed -n 's/.*]*client="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) - EXT_FOLDER=$(sed -n 's/.*]*group="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) - TARGET_PLATFORM=$(sed -n 's/.*\(\).*/\1/p' "$MANIFEST" | head -1) - PHP_MINIMUM=$(sed -n 's/.*\([^<]*\)<\/php_minimum>.*/\1/p' "$MANIFEST" | head -1) + EXT_NAME=$(sed -n 's/.*\([^<]*\)<\/name>.*/\1/p' "$MANIFEST" | head -1 || true) + EXT_TYPE=$(sed -n 's/.*]*type="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) + EXT_ELEMENT=$(sed -n 's/.*\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" | head -1 || true) + EXT_CLIENT=$(sed -n 's/.*]*client="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) + EXT_FOLDER=$(sed -n 's/.*]*group="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) + TARGET_PLATFORM=$(sed -n 's/.*\(\).*/\1/p' "$MANIFEST" | head -1 || true) + PHP_MINIMUM=$(sed -n 's/.*\([^<]*\)<\/php_minimum>.*/\1/p' "$MANIFEST" | head -1 || true) # If EXT_NAME is a language key (e.g. PLG_SYSTEM_MOKOJGDPC), resolve from .ini if echo "$EXT_NAME" | grep -qE '^[A-Z_]+$'; then @@ -396,10 +396,10 @@ jobs: # 3. XML filename (components, packages) # 4. Repo name fallback (templates, anything else) if [ -z "$EXT_ELEMENT" ]; then - EXT_ELEMENT=$(sed -n 's/.*plugin="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) + EXT_ELEMENT=$(sed -n 's/.*plugin="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) fi if [ -z "$EXT_ELEMENT" ]; then - EXT_ELEMENT=$(sed -n 's/.*module="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) + EXT_ELEMENT=$(sed -n 's/.*module="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) fi if [ -z "$EXT_ELEMENT" ]; then FNAME=$(basename "$MANIFEST" .xml | tr '[:upper:]' '[:lower:]') @@ -561,7 +561,7 @@ jobs: fi [ -z "$EXT_NAME" ] && EXT_NAME="${GITEA_REPO}" - NOTES=$(php /tmp/mokostandards-api/cli/release_notes.php --path . --version "$VERSION" 2>/dev/null) + NOTES=$(php /tmp/moko-platform-api/cli/release_notes.php --path . --version "$VERSION" 2>/dev/null) [ -z "$NOTES" ] && NOTES="Release ${VERSION}" # Build release name: "Pretty Name VERSION (type_element-VERSION)" @@ -627,14 +627,14 @@ jobs: # Reuse element from Step 5, with same fallback chain EXT_ELEMENT="${{ steps.updates.outputs.ext_element }}" if [ -z "$EXT_ELEMENT" ]; then - EXT_ELEMENT=$(sed -n 's/.*\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" 2>/dev/null | head -1) - [ -z "$EXT_ELEMENT" ] && EXT_ELEMENT=$(sed -n 's/.*plugin="\([^"]*\)".*/\1/p' "$MANIFEST" 2>/dev/null | head -1) + EXT_ELEMENT=$(sed -n 's/.*\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" 2>/dev/null | head -1 || true) + [ -z "$EXT_ELEMENT" ] && EXT_ELEMENT=$(sed -n 's/.*plugin="\([^"]*\)".*/\1/p' "$MANIFEST" 2>/dev/null | head -1 || true) [ -z "$EXT_ELEMENT" ] && EXT_ELEMENT=$(basename "$MANIFEST" .xml | tr '[:upper:]' '[:lower:]') [ -z "$EXT_ELEMENT" ] && EXT_ELEMENT=$(echo "${GITEA_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') fi # ZIP name: type_folder_element-VERSION (e.g. plg_system_mokojgdpc-01.01.00.zip) - EXT_TYPE=$(sed -n 's/.*]*type="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) - EXT_FOLDER=$(sed -n 's/.*]*group="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1) + EXT_TYPE=$(sed -n 's/.*]*type="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) + EXT_FOLDER=$(sed -n 's/.*]*group="\([^"]*\)".*/\1/p' "$MANIFEST" | head -1 || true) TYPE_PREFIX="" case "${EXT_TYPE}" in plugin) TYPE_PREFIX="plg_${EXT_FOLDER}_" ;; @@ -868,7 +868,7 @@ jobs: BRANCH="${{ steps.version.outputs.branch }}" GH_REPO="${{ vars.GH_MIRROR_REPO || github.repository }}" - NOTES=$(php /tmp/mokostandards-api/cli/release_notes.php --path . --version "$VERSION" 2>/dev/null || true) + NOTES=$(php /tmp/moko-platform-api/cli/release_notes.php --path . --version "$VERSION" 2>/dev/null || true) [ -z "$NOTES" ] && NOTES="Release ${VERSION}" echo "$NOTES" > /tmp/release_notes.md diff --git a/.gitea/workflows/cascade-dev.yml b/.mokogitea/workflows/cascade-dev.yml similarity index 100% rename from .gitea/workflows/cascade-dev.yml rename to .mokogitea/workflows/cascade-dev.yml diff --git a/.gitea/workflows/changelog-validation.yml b/.mokogitea/workflows/changelog-validation.yml similarity index 100% rename from .gitea/workflows/changelog-validation.yml rename to .mokogitea/workflows/changelog-validation.yml diff --git a/.gitea/workflows/cleanup.yml b/.mokogitea/workflows/cleanup.yml similarity index 100% rename from .gitea/workflows/cleanup.yml rename to .mokogitea/workflows/cleanup.yml diff --git a/.gitea/workflows/codeql-analysis.yml b/.mokogitea/workflows/codeql-analysis.yml similarity index 100% rename from .gitea/workflows/codeql-analysis.yml rename to .mokogitea/workflows/codeql-analysis.yml diff --git a/.gitea/workflows/copilot-agent.yml b/.mokogitea/workflows/copilot-agent.yml similarity index 100% rename from .gitea/workflows/copilot-agent.yml rename to .mokogitea/workflows/copilot-agent.yml diff --git a/.gitea/workflows/deploy-manual.yml b/.mokogitea/workflows/deploy-manual.yml similarity index 100% rename from .gitea/workflows/deploy-manual.yml rename to .mokogitea/workflows/deploy-manual.yml diff --git a/.gitea/workflows/enterprise-firewall-setup.yml b/.mokogitea/workflows/enterprise-firewall-setup.yml similarity index 100% rename from .gitea/workflows/enterprise-firewall-setup.yml rename to .mokogitea/workflows/enterprise-firewall-setup.yml diff --git a/.gitea/workflows/gitleaks.yml b/.mokogitea/workflows/gitleaks.yml similarity index 100% rename from .gitea/workflows/gitleaks.yml rename to .mokogitea/workflows/gitleaks.yml diff --git a/.gitea/workflows/mcp-auto-release.yml b/.mokogitea/workflows/mcp-auto-release.yml similarity index 98% rename from .gitea/workflows/mcp-auto-release.yml rename to .mokogitea/workflows/mcp-auto-release.yml index b2b0b6e..4aab368 100644 --- a/.gitea/workflows/mcp-auto-release.yml +++ b/.mokogitea/workflows/mcp-auto-release.yml @@ -87,13 +87,13 @@ jobs: done # ── Version ────────────────────────────────────────────────────── - - name: Setup MokoStandards tools + - name: Setup moko-platform tools env: GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }} COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || github.token }}"}}' run: | git clone --depth 1 --branch version/04 --quiet \ - "https://x-access-token:${GH_TOKEN}@github.com/mokoconsulting-tech/MokoStandards.git" \ + "https://x-access-token:${GH_TOKEN}@github.com/MokoConsulting/moko-platform.git" \ /tmp/mokostandards cd /tmp/mokostandards composer install --no-dev --no-interaction --quiet diff --git a/.gitea/workflows/mcp-build-test.yml b/.mokogitea/workflows/mcp-build-test.yml similarity index 100% rename from .gitea/workflows/mcp-build-test.yml rename to .mokogitea/workflows/mcp-build-test.yml diff --git a/.gitea/workflows/mcp-sdk-check.yml b/.mokogitea/workflows/mcp-sdk-check.yml similarity index 100% rename from .gitea/workflows/mcp-sdk-check.yml rename to .mokogitea/workflows/mcp-sdk-check.yml diff --git a/.gitea/workflows/mcp-tool-inventory.yml b/.mokogitea/workflows/mcp-tool-inventory.yml similarity index 100% rename from .gitea/workflows/mcp-tool-inventory.yml rename to .mokogitea/workflows/mcp-tool-inventory.yml diff --git a/.gitea/workflows/notify.yml b/.mokogitea/workflows/notify.yml similarity index 100% rename from .gitea/workflows/notify.yml rename to .mokogitea/workflows/notify.yml diff --git a/.gitea/workflows/pr-check.yml b/.mokogitea/workflows/pr-check.yml similarity index 100% rename from .gitea/workflows/pr-check.yml rename to .mokogitea/workflows/pr-check.yml diff --git a/.gitea/workflows/pre-release.yml b/.mokogitea/workflows/pre-release.yml similarity index 96% rename from .gitea/workflows/pre-release.yml rename to .mokogitea/workflows/pre-release.yml index c51bea8..96395cc 100644 --- a/.gitea/workflows/pre-release.yml +++ b/.mokogitea/workflows/pre-release.yml @@ -4,8 +4,8 @@ # # FILE INFORMATION # DEFGROUP: Gitea.Workflow -# INGROUP: MokoStandards.Release -# REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards +# INGROUP: moko-platform.Release +# REPO: https://git.mokoconsulting.tech/MokoConsulting/moko-platform # PATH: /templates/workflows/universal/pre-release.yml.template # VERSION: 05.00.00 # BRIEF: Manual pre-release — builds dev/alpha/beta/rc packages from any branch @@ -56,14 +56,14 @@ jobs: id: platform run: | # Parse .manifest.xml via manifest_read.php — outputs all fields to GITHUB_OUTPUT - php /tmp/mokostandards-api/cli/manifest_read.php --path . --github-output 2>/dev/null || true - PLATFORM=$(php /tmp/mokostandards-api/cli/manifest_read.php --path . --field platform 2>/dev/null) + php /tmp/moko-platform-api/cli/manifest_read.php --path . --github-output 2>/dev/null || true + PLATFORM=$(php /tmp/moko-platform-api/cli/manifest_read.php --path . --field platform 2>/dev/null) [ -z "$PLATFORM" ] && PLATFORM="generic" echo "platform=$PLATFORM" >> "$GITHUB_OUTPUT" # entry-point from manifest, find as fallback - MOD_FILE=$(php /tmp/mokostandards-api/cli/manifest_read.php --path . --field entry-point 2>/dev/null) - [ -z "$MOD_FILE" ] && MOD_FILE=$(find . -maxdepth 4 -name "mod*.class.php" ! -path "./.git/*" -exec grep -l 'extends DolibarrModules' {} \; 2>/dev/null | head -1) - MANIFEST=$(find . -maxdepth 3 -name "*.xml" ! -path "./.git/*" -exec grep -l '/dev/null | head -1) + MOD_FILE=$(php /tmp/moko-platform-api/cli/manifest_read.php --path . --field entry-point 2>/dev/null) + [ -z "$MOD_FILE" ] && MOD_FILE=$(find . -maxdepth 4 -name "mod*.class.php" ! -path "./.git/*" -exec grep -l 'extends DolibarrModules' {} \; 2>/dev/null | head -1 || true) + MANIFEST=$(find . -maxdepth 3 -name "*.xml" ! -path "./.git/*" -exec grep -l '/dev/null | head -1 || true) echo "manifest=${MANIFEST}" >> "$GITHUB_OUTPUT" echo "mod_file=${MOD_FILE}" >> "$GITHUB_OUTPUT" @@ -80,7 +80,7 @@ jobs: esac # Read and bump patch version (with rollover) - CURRENT=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' README.md 2>/dev/null | head -1) + CURRENT=$(sed -n 's/.*VERSION:[[:space:]]*\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p' README.md 2>/dev/null | head -1 || true) [ -z "$CURRENT" ] && CURRENT="00.00.00" MAJOR=$(echo "$CURRENT" | cut -d. -f1) @@ -116,7 +116,7 @@ jobs: case "$PLATFORM" in joomla) if [ -n "$MANIFEST" ]; then - MANIFEST_VER=$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' "$MANIFEST" | head -1) + MANIFEST_VER=$(sed -n 's/.*\([^<]*\)<\/version>.*/\1/p' "$MANIFEST" | head -1 || true) sed -i "s|${MANIFEST_VER}|${VERSION}|" "$MANIFEST" sed -i "s|[^<]*|${TODAY}|" "$MANIFEST" fi @@ -145,7 +145,7 @@ jobs: MANIFEST="${{ steps.platform.outputs.manifest }}" EXT_ELEMENT="" if [ -n "$MANIFEST" ]; then - EXT_ELEMENT=$(sed -n 's/.*\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" 2>/dev/null | head -1) + EXT_ELEMENT=$(sed -n 's/.*\([^<]*\)<\/element>.*/\1/p' "$MANIFEST" 2>/dev/null | head -1 || true) if [ -z "$EXT_ELEMENT" ]; then EXT_ELEMENT=$(basename "$MANIFEST" .xml | tr '[:upper:]' '[:lower:]') case "$EXT_ELEMENT" in diff --git a/.gitea/workflows/repo-health.yml b/.mokogitea/workflows/repo-health.yml similarity index 100% rename from .gitea/workflows/repo-health.yml rename to .mokogitea/workflows/repo-health.yml diff --git a/.gitea/workflows/repository-cleanup.yml b/.mokogitea/workflows/repository-cleanup.yml similarity index 100% rename from .gitea/workflows/repository-cleanup.yml rename to .mokogitea/workflows/repository-cleanup.yml diff --git a/.gitea/workflows/security-audit.yml b/.mokogitea/workflows/security-audit.yml similarity index 100% rename from .gitea/workflows/security-audit.yml rename to .mokogitea/workflows/security-audit.yml diff --git a/.gitea/workflows/standards-compliance.yml b/.mokogitea/workflows/standards-compliance.yml similarity index 100% rename from .gitea/workflows/standards-compliance.yml rename to .mokogitea/workflows/standards-compliance.yml diff --git a/.gitea/workflows/sync-version-on-merge.yml b/.mokogitea/workflows/sync-version-on-merge.yml similarity index 100% rename from .gitea/workflows/sync-version-on-merge.yml rename to .mokogitea/workflows/sync-version-on-merge.yml diff --git a/CLAUDE.md b/CLAUDE.md index 30bb683..0534d08 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -42,6 +42,8 @@ This is an MCP (Model Context Protocol) server. Key files: ## Rules +- **Workflow directory**: `.mokogitea/` (not `.gitea/` or `.github/`) + - **Never commit** `.claude/`, `.mcp.json`, `TODO.md`, or `*.min.css`/`*.min.js` - **Attribution**: use `Authored-by: Moko Consulting` in commits - **Branch strategy**: develop on `dev`, merge to `main` for release