Commit Graph

1489 Commits

Author SHA1 Message Date
Achintha Isuru
6267b43bd0 Merge pull request #580 from Oloodi/575-establish-root-level-agent-skills-directory-claudeskills-for-ai-agent-extraction---for-mobile
Add skills to aid the mobile application development
2026-03-06 16:09:18 -05:00
Achintha Isuru
94323024d2 chore: update pull request template to include related issues section 2026-03-06 16:08:39 -05:00
Achintha Isuru
9068773ba7 refactor(skills): remove krow-mobile-data-connect skill
- Deleted .agents/skills/krow-mobile-data-connect/ directory
- Updated README.md to remove all references
- Now maintaining 4 core mobile skills instead of 5
2026-03-06 16:01:50 -05:00
Achintha Isuru
f359439a6b feat(skills): add 5 project-specific mobile development skills
Created comprehensive skills covering development rules, architecture, design system, release process, and Data Connect patterns. Total 3,935 lines extracted from mobile documentation.
2026-03-06 15:57:19 -05:00
Achintha Isuru
45cd90833e docs: update README with milestone links and streamline mobile app development instructions 2026-03-06 15:39:22 -05:00
Achintha Isuru
5a5b8894c4 docs: update README and project onboarding for M4 milestone
Updated README with logo and M4 status. Updated project onboarding doc to version 2.0 with M4 features, release automation, and architecture updates.
2026-03-06 15:36:57 -05:00
Achintha Isuru
37d8427df9 chore: remove overall release plan document and add mobile app release process documentation 2026-03-06 15:26:08 -05:00
Achintha Isuru
6feeea920b Add client clarifications document for M5 project discovery 2026-03-06 12:57:53 -05:00
Achintha Isuru
1edbc9d5d6 Merge branch '493-implement-rapid-order-creation-voice-text-in-client-mobile-app' into dev 2026-03-05 23:26:05 -05:00
Achintha Isuru
d9819f7a82 Export keystore env vars without app suffix
Change exported keystore environment variable names to remove the app-specific suffix so build.gradle.kts can read CM_KEYSTORE_PATH, CM_KEYSTORE_PASSWORD, CM_KEY_ALIAS, and CM_KEY_PASSWORD. Also ensure CI=true is exported and add informational echo output showing the keystore path and exported variables for easier debugging.
2026-03-05 23:25:43 -05:00
Achintha Isuru
8e2b7ea1d6 Merge pull request #579 from Oloodi/493-implement-rapid-order-creation-voice-text-in-client-mobile-app
Prepare & Handover M4 Mobile Applications for Client Testing
2026-03-05 17:09:33 -05:00
Achintha Isuru
1c3cd211ab Merge branch 'dev' into 493-implement-rapid-order-creation-voice-text-in-client-mobile-app 2026-03-05 17:06:46 -05:00
Achintha Isuru
034f4fa871 Update M4 demo guide title and section header for consistency 2026-03-05 17:05:59 -05:00
Achintha Isuru
456ead3960 feat(launchpad): embed M4 demonstration video and update links structure 2026-03-05 16:42:11 -05:00
Achintha Isuru
03f8793e31 Use teamHubs API and update pnpm workspace
Switch CreateOrderDialog to the new team hubs API: replace useListHubs with useListTeamHubs, iterate hubsData.teamHubs, and show h.hubName in the Select. Also adjust pnpm configuration: add packages: ['.'] to pnpm-workspace.yaml and remove the overrides block from pnpm-lock.yaml (overrides moved into the workspace file). These changes align the UI with the updated dataconnect-generated API shape and correct the pnpm workspace setup.
2026-03-05 16:22:30 -05:00
Achintha Isuru
46b5d852dd Remove M4 seed files
Delete docs/MILESTONES/M4/Seed/README.md and docs/MILESTONES/M4/Seed/seed.gql. The removed README provided instructions and inventory for the M4 validation DB seed and seed.gql contained the full @transaction GraphQL mutation used to populate that seed. Removes the M4 seed artifacts from the docs; restore from source control or consult the team if the seed is still required.
2026-03-05 16:09:23 -05:00
Achintha Isuru
b8345a0fbe Merge pull request #559 from Oloodi/Inconsistent-Shift-Booking-Status
BE: Create seed data for the validation database #555
2026-03-05 16:08:18 -05:00
Achintha Isuru
45c6deb8a3 fix(ci): remove heredoc to resolve YAML syntax error on line 169
Replaced heredoc with direct echo statements to avoid YAML parsing issues.
2026-03-05 15:43:24 -05:00
Achintha Isuru
7a185d6402 fix(ci): resolve YAML syntax error on line 168 in hotfix workflow
Replaced multiline YAML string with heredoc approach to avoid quoting issues.
2026-03-05 15:41:54 -05:00
Achintha Isuru
ac8891c43c fix(ci): fix YAML syntax error in hotfix-branch-creation workflow
Fixed line 168 syntax error caused by sed command with backslash continuation.

Replaced:

  sed -i "1 a\\\

  \\

  $HOTFIX_ENTRY" "$CHANGELOG_PATH"

With simpler approach:

  - Extract title line

  - Extract body

  - Reconstruct file with hotfix entry inserted

This avoids YAML parsing issues with backslash escaping.
2026-03-05 15:38:14 -05:00
Achintha Isuru
b8b39411fa Merge branch 'demo/prep-demo-m3' into dev 2026-03-05 15:35:31 -05:00
Achintha Isuru
4b09f050b0 fix: Update milestone version format in changelogs for consistency 2026-03-05 15:33:35 -05:00
Achintha Isuru
f75b56b6ec Revert "Update Makefile"
This reverts commit 1c21d5ee43.
2026-03-05 15:31:50 -05:00
Achintha Isuru
1c21d5ee43 Update Makefile 2026-03-05 15:30:57 -05:00
Achintha Isuru
83c05ad99e Improve release scripts and make workflows manual
Redirect script informational/warning output to stderr and improve robustness of release tooling. Changes include:

- Redirect many echo messages to stderr so scripts can emit machine-readable output on stdout.
- Extract-release-notes: better parsing of CHANGELOG entries (tries v-prefixed and non-prefixed headings, cleaner note formatting) and improved fallbacks when changelog is missing.
- Extract-version: accept versions with +build or -suffix, add diagnostic output when pubspec is missing, and tighten validation.
- Setup/verify APK signing: more consistent stderr logging and clearer warnings; ensure keystore decoding/logging is visible.
- Minor script usage message fixes (generate-tag-name, attach-apk-to-release).
- CI/workflows: change backend-foundation, mobile-ci, and web-quality triggers to workflow_dispatch (manual runs); update product-release (make scripts step label emoji, remove node cache lines, bump Flutter to 3.38.x).

These changes improve CI reliability, make scripts friendlier for automated consumers, and fix release note/version parsing edge cases.
2026-03-05 15:30:27 -05:00
Achintha Isuru
14bb00aae4 Rename mobile app dirs; update changelog versions
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.
2026-03-05 15:10:28 -05:00
Achintha Isuru
107ce1d48a feat(ci): update release notes format to new template
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
2026-03-05 15:09:32 -05:00
Achintha Isuru
8378ebddea ci: change all workflows to manual trigger only (workflow_dispatch)
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.
2026-03-05 14:54:18 -05:00
Achintha Isuru
62b6dd22aa fix: update Flutter version to 3.38.x in product release workflow 2026-03-05 14:31:23 -05:00
Achintha Isuru
920ba40c50 fix(ci): improve version extraction script for GitHub Actions compatibility
- 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
2026-03-05 14:25:34 -05:00
Achintha Isuru
639aeeb708 fix(ci): keep version suffix/build in tags and fix Node.js cache
- 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
2026-03-05 14:21:27 -05:00
Achintha Isuru
be43030058 fix(ci): redirect script messages to stderr and support version format X.Y.Z-suffix
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.
2026-03-05 14:10:05 -05:00
Achintha Isuru
bdacedbced Add mobile APK signing, build and release scripts
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.
2026-03-05 14:03:21 -05:00
Achintha Isuru
11bbd8c87a feat: Refactor APK signing and verification process into separate scripts 2026-03-05 14:02:26 -05:00
Achintha Isuru
8b9a58adb1 feat: Add mobile CI/CD secrets setup for APK signing
- Updated Makefile to include new command for setting up mobile CI secrets.
- Enhanced tools.mk with setup-mobile-ci-secrets target.
- Created setup-mobile-github-secrets.sh script for configuring GitHub Secrets for APK signing.
- Added APK signing implementation summary documentation.
- Created detailed APK signing setup guide.
- Added GitHub secrets checklist for easy reference.
2026-03-05 13:55:38 -05:00
Achintha Isuru
4cc2dafa18 Normalize mobile app pubspec versions to 0.0.1-m3
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.
2026-03-05 12:40:59 -05:00
Achintha Isuru
dbbf54287f Add GitHub workflows, release scripts, PR template
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.
2026-03-05 12:40:13 -05:00
Achintha Isuru
8aa29b3149 fix: rename workflow to clarify purpose as Hotfix Branch Creation 2026-03-05 12:35:59 -05:00
Achintha Isuru
7f7c44f691 Merge branch 'dev' into 577-mobile-define-and-automate-release-and-tagging-strategy-for-client-staff-apps 2026-03-05 12:31:42 -05:00
Achintha Isuru
f8bdbcc2fb Update product-release.yml 2026-03-05 12:31:36 -05:00
Achintha Isuru
0394fe18eb Merge pull request #578 from Oloodi/577-mobile-define-and-automate-release-and-tagging-strategy-for-client-staff-apps
Defined and automate release and tagging strategy for client staff apps
2026-03-05 12:27:45 -05:00
Achintha Isuru
c3c305c827 feat: add pull request template for improved contribution guidelines 2026-03-05 12:25:25 -05:00
Achintha Isuru
7e52b19dd5 docs: remove outdated root-level release documentation
🗑️ Removed Files:
- RELEASE_IMPLEMENTATION.md
- RELEASE_INDEX.md
- RELEASE_PACKAGE_SUMMARY.md
- RELEASE_QUICK_REFERENCE.md
- RELEASE_STRATEGY.md
- RELEASE_VISUAL_GUIDE.md
- RELEASE_WORKFLOW.md
- VERSION_FILES_REFERENCE.md

📍 Reason for Removal:
- These were draft/planning documents with incorrect tag format
- Used 'staff-mobile/*' instead of correct 'krow-withus-worker-mobile/*'
- Not aligned with actual GitHub Actions workflows
- Caused confusion about which documentation to follow

 Current Documentation (Correct & Up-to-Date):
- docs/RELEASE/MOBILE_RELEASE_PLAN.md
- docs/RELEASE/HOTFIX_PROCESS.md
- docs/RELEASE/OVERALL_RELEASE_PLAN.md

The docs/RELEASE/ files use correct tag naming and align with the
implemented GitHub Actions workflows (.github/workflows/product-release.yml
and hotfix-branch-creation.yml).
2026-03-05 12:16:54 -05:00
Achintha Isuru
39f0d9d53c refactor(ci): update product options to be more specific
🔄 Changed product option values:
- worker → worker-mobile-app
- client → client-mobile-app

📝 Updated Files:
- .github/workflows/hotfix-branch-creation.yml
- .github/workflows/product-release.yml
- .github/scripts/extract-version.sh
- .github/scripts/extract-release-notes.sh
- .github/scripts/create-release-summary.sh
- .github/scripts/generate-tag-name.sh

🎯 Key Changes:
- Product dropdown options now more specific
- All conditional checks updated to use new values
- Tag/branch names remain clean (strips -mobile-app suffix)
- Tag format unchanged: krow-withus-worker-mobile/prod-v0.1.0
- Branch format unchanged: hotfix/krow-withus-worker-mobile-v0.1.0

Benefits:
 Clearer product selection (distinguishes mobile from future web/backend)
 Backward compatible tag format
 Maintains clean naming conventions
2026-03-05 12:11:45 -05:00
Achintha Isuru
4ec1b2ca26 refactor(ci): enhance hotfix workflow and rename workflow files
🔄 Hotfix Workflow Enhancements:
- Accept tags from any environment (dev/stage/prod), not just production
- Changed input parameter: 'production_tag' → 'tag'
- Updated validation to show all available tags (not just prod)
- Made terminology more generic throughout
- Show 20 most recent tags instead of 10 for better visibility

📝 File Renames:
- .github/workflows/mobile-hotfix.yml → hotfix-branch-creation.yml
- .github/workflows/mobile-release.yml → product-release.yml

Benefits:
 Hotfix workflow now works with dev/stage/prod tags
 More flexible for various hotfix scenarios
 Clearer, more descriptive workflow file names
 Consistent with product-agnostic terminology
2026-03-05 12:07:32 -05:00
Achintha Isuru
3e31002d1e refactor(ci): replace mobile-specific terms with generic product terminology
🔄 Updated workflows and scripts to use product-agnostic naming:

Workflow Changes:
- 📱 Mobile Release → 📦 Product Release
- 🚨 Mobile Hotfix → 🚨 Product Hotfix
- Mobile App → Product (in descriptions)
- "mobile app" → "product" (in messages and tags)
- "pubspec.yaml" → "version file" (in user-facing text)

Display Names:
- Worker Mobile → Worker Product
- Client Mobile → Client Product
- Staff Mobile App → Staff Product (Worker)
- Client Mobile App → Client Product

Benefits:
 Makes workflows extensible for other product types
 Consistent terminology across all automation
 Easier to add web, backend, or other products later
 Keeps implementation details (paths, scripts) unchanged
 Maintains backward compatibility with existing tags

Note: File paths remain unchanged (apps/mobile/...) as they are implementation-specific
2026-03-05 11:58:28 -05:00
Achintha Isuru
0e296bf83b refactor(ci): enhance mobile release workflow with emojis and extracted scripts
 Enhanced mobile-release.yml workflow:
- 📱 Added emojis to all steps for better visual feedback
- 🔧 Version now automatically extracted from pubspec.yaml
  - No manual version input required
  - Reads from apps/mobile/apps/staff/pubspec.yaml for worker
  - Reads from apps/mobile/apps/client/pubspec.yaml for client
- 📝 Removed manual version input field from workflow

🔨 Created reusable shell scripts in .github/scripts/:
1. extract-version.sh - Extract version from pubspec.yaml
2. generate-tag-name.sh - Generate tag names consistently
3. extract-release-notes.sh - Extract CHANGELOG sections
4. create-release-summary.sh - Generate GitHub Step Summary with emojis

Benefits:
 Simpler workflow - just select app and environment
 Single source of truth for versions (pubspec.yaml)
 Reusable scripts can be used in other workflows
 Better error messages and validation
 Enhanced visual feedback with emojis
 Cleaner workflow file (moved logic to scripts)
2026-03-05 11:49:11 -05:00
Achintha Isuru
054852fcde feat(ci): add GitHub Actions workflows for mobile releases and hotfixes
- Add mobile-release.yml workflow:
  - Manual trigger with app (worker/client) and environment (dev/stage/prod) selection
  - Version validation (semantic versioning)
  - Tag creation with format: krow-withus-<app>-mobile/<env>-vX.Y.Z
  - GitHub Release creation with CHANGELOG extraction
  - Release naming: 'Krow With Us - Worker Mobile - DEV - v0.1.0'
  - Pre-release support

- Add mobile-hotfix.yml workflow:
  - Emergency production fix automation
  - Creates hotfix branch from production tag
  - Auto-increments PATCH version
  - Updates pubspec.yaml and CHANGELOG.md
  - Creates PR with hotfix instructions
  - Follows documented hotfix process

Both workflows support staff (worker) and client mobile apps independently.

Implements mobile release strategy from docs/release/
2026-03-05 11:41:45 -05:00
Achintha Isuru
89dd9fe723 docs(mobile): remove placeholder entries for RAPID and recurring orders in CHANGELOGs 2026-03-05 11:38:36 -05:00
Achintha Isuru
f771bca72a docs(mobile): enhance CHANGELOGs with comprehensive M4 features from git history
- Add Documents & Certificates management features
- Include Camera/gallery support for uploads
- Add Benefits overview section
- Expand Attire management with verification states
- Include RAPID order audio recording and transcription
- Add Hub manager assignment and Cost center features
- Include session management improvements
- Add navigation enhancements and bug fixes
- Document Core API services integration
- Include all user-facing features from milestone issues
2026-03-05 11:34:00 -05:00