Rename mobile app directories (client_app -> client, staff_app -> staff) and normalize changelog version tags from `0.0.1-M3` to `v0.0.1-m3` in the affected CHANGELOG.md files to standardize folder naming and version formatting.
Updated extract-release-notes.sh to follow new format:
**Environment:** {ENV}
**Tag:** {TAG}
## What is new in this release
{changelog content}
Improvements:
- Moved environment and tag info to the top
- Added 'What is new in this release' heading
- Improved awk pattern to properly extract changelog sections
- Support both [vX.Y.Z] and [X.Y.Z] version formats in CHANGELOG
- Removes unnecessary app name and separator lines
Testing:
✅ worker-mobile-app: Extracts content from apps/mobile/apps/staff/CHANGELOG.md
✅ client-mobile-app: Extracts content from apps/mobile/apps/client/CHANGELOG.md
✅ Handles [v0.0.1-m3] format correctly
Updated workflows to use workflow_dispatch instead of pull_request/push:
- backend-foundation.yml: Removed pull_request and push triggers
- mobile-ci.yml: Removed pull_request and push triggers with path filters
- web-quality.yml: Removed pull_request and push triggers
Workflows now only run manually via Actions tab. This gives more control over when CI runs and reduces unnecessary workflow executions.
- Replace bash [[ ]] regex test with grep -Eq for better portability
- Add debug output showing pwd and directory listing on file not found
- Use explicit regex groups for + and - separately for better compatibility
- Keep full version format (0.0.1-m3 or 1.2.3+456) instead of stripping suffix
- Tags now include full version: krow-withus-worker-mobile/dev-v0.0.1-m3
- Remove invalid Node.js cache path that was causing resolution errors
Fixed workflow failure by ensuring only data goes to stdout, not informational messages. Also added support for version format X.Y.Z-suffix in addition to X.Y.Z+build.
Add four new helper scripts for mobile APK workflows: setup-apk-signing.sh (decode keystores and export signing env vars), verify-apk-signature.sh (check and display APK certificate info), attach-apk-to-release.sh (rename and upload APK to a GitHub Release), and setup-mobile-github-secrets.sh (helper to generate/show required GitHub Secrets). Update product-release.yml to expose version/tag outputs and add a build-mobile-artifacts job that sets up Java/Flutter, installs deps, configures signing from repository secrets, builds APKs for worker/client apps, verifies signatures, uploads artifacts, and optionally attaches the APK to the GitHub Release. Secrets and envvar naming conventions are handled to support dev/staging/prod keystores; documentation references (docs/RELEASE/APK_SIGNING_SETUP.md) are noted in scripts.
Standardize prerelease version tags for mobile apps. Updated client and staff pubspecs to use 0.0.1-m3 instead of their previous Iliana*-M3 suffixed versions:
- apps/mobile/apps/client/pubspec.yaml: 0.0.1-IlianaClientM3 -> 0.0.1-m3
- apps/mobile/apps/staff/pubspec.yaml: 0.0.1-IlianaStaffM3 -> 0.0.1-m3
This keeps version naming consistent across the mobile projects.
Add CI/CD and release automation assets: new GitHub Actions workflows (backend-foundation, hotfix-branch-creation, mobile-ci, product-release, web-quality), shell scripts for version/tag/release-note extraction and release-summary generation (.github/scripts/*), and a Pull Request template. Implements hotfix branch creation from tags, automatic tag name generation, version extraction from pubspec.yaml, CHANGELOG-based release notes extraction, selective mobile CI (detects changed files, builds and lints only affected Dart files), backend service test dry-runs, and automated GitHub release creation with summaries.
Increment build versions for mobile apps: krowwithus_client 0.0.1-M3+5 → 0.0.1-M3+6 and krowwithus_staff 0.0.1-M3+3 → 0.0.1-M3+4 in their pubspec.yaml files. No other changes.
This commit adds two new markdown files:
- `demos/m3-notes.md`: This file contains notes and feedback
from the M3 demo.
- `demos/m3.md`: This file contains the feature demo plan for
Milestone 3 of the KROW Workforce Platform. It includes
information on the demo overview, environment setup, demo flows,
and customer handover checklist.