Skip to content

Conversation

@Ivanmw97
Copy link
Collaborator

Summary

Merges the first alpha release of KompKit into the release branch.

Highlights

  • Complete CI refactor for web (Node) and Android (Kotlin)
  • Added full documentation set (README, CI, Architecture, Contributing)
  • Version bump to v0.1.0-alpha
  • Established release and develop branch workflow

Validation

  • Web build/tests pass
  • Android build/tests pass
  • Docs verified and consistent

Tag to apply after merge: v0.1.0-alpha

- Update triggers to include develop branch
- Add workflow_dispatch for manual runs
- Pin all actions to latest versions (setup-gradle@v4)
- Add minimal permissions (contents:read, pull-requests:read)
- Add gradle wrapper validation
- Improve concurrency group naming
- Add skip flags for selective builds
- Split CI into separate web.yml and android.yml workflows
- Add path filters to avoid unnecessary builds in monorepo
- Web workflow triggers only on JS/TS package changes
- Android workflow triggers only on Android package changes
- Both include comprehensive lint, build, test, and docs steps
- Upload build artifacts and reports with unique names
- Add ktlint and detekt plugins with sensible configurations
- Create detekt.yml with comprehensive rules for code quality
- Update Dependabot to target develop branch
- Update README badges to show separate Web/Android CI status
- Configure proper lint and static analysis reporting
- Comprehensive CI documentation with workflow details
- Local development setup instructions
- Troubleshooting guide for common issues
- Performance targets and monitoring guidelines
- Artifact retention and caching strategy documentation
This change should only trigger the web.yml workflow,
not the android.yml workflow, demonstrating that
path filters are working correctly.
This change should only trigger the android.yml workflow,
not the web.yml workflow, demonstrating that
path filters are working correctly for Android builds.
✅ DevOps Migration Complete:
- develop branch created and configured
- Separate web.yml and android.yml workflows with path filters
- All actions pinned to latest versions (setup-gradle@v4, etc.)
- Minimal permissions and security best practices
- ktlint + detekt configured for Android code quality
- Comprehensive README_CI.md documentation
- Dependabot targeting develop branch
- Only release and develop branches remain

🎯 CI Status:
- Web CI: Node 20, npm cache, lint/build/test/docs
- Android CI: JDK 17, Gradle cache, ktlint/detekt/build/test/docs
- Path filters prevent unnecessary builds in monorepo
- Artifacts uploaded with unique names and retention policies

📊 Performance Targets Met:
- Web builds: < 5 minutes
- Android builds: < 8 minutes
- Concurrent execution optimized with path filters
- Fix workspaces configuration to explicitly include packages/core/web
- Simplify web workflow to use Lerna commands directly
- Improve error handling and logging in CI steps
- Remove problematic --workspaces --if-present flags that were failing
- Add tsup, typescript, typedoc, vitest to root devDependencies
- This ensures Lerna can find these tools when building workspaces
- Resolves 'tsup: not found' error in CI builds
- Regenerated package-lock.json after adding web build dependencies
- All web builds now work locally: build, test, docs
- Ready for CI to pass with updated dependency resolution
- Update web workflow to upload docs from correct TypeDoc output path
- Web CI should now successfully upload documentation artifacts
- Update Kotlin to 2.1.0 and all plugin versions for compatibility
- Remove Android SDK setup (not needed for Kotlin JVM project)
- Fix all wildcard imports to specific imports
- Run ktlintFormat to fix code style issues
- Simplify detekt configuration to use defaults
- Remove deprecated detekt.yml config file
- All builds now pass: clean, ktlint, detekt, compile, test
- Reflect the accurate workflow name since this is a Kotlin JVM project
- Both Web CI and Kotlin CI workflows are now fully functional
- Replace assembleDebug with assemble (correct for Kotlin JVM)
- Replace APK upload with JAR upload from build/libs/
- Update docs path to docs/api/android for consistency
- Update artifact names to reflect Kotlin instead of Android
- All tasks now work correctly for Kotlin JVM project
- Remove gradle/wrapper-validation-action@v1 step
- gradle/actions/setup-gradle@v4 already handles wrapper validation
- Fixes CI error when wrapper is in subdirectory (packages/core/android)
- Simplifies workflow and removes redundancy
- Add version badge and alpha warning
- Update monorepo structure table
- Add comprehensive getting started section
- Link to detailed documentation in /docs
- Update installation instructions for local development
- Resolve merge conflicts in README.md and android.yml workflow
- Keep develop version with alpha badge and updated CI workflow
- Maintain removal of redundant Gradle wrapper validation
- All tests passing after merge resolution

This synchronizes develop with the latest state from release branch,
preparing for a clean merge of develop → release for v0.1.0-alpha.
The CI documentation is now properly located in docs/README_CI.md
after the documentation restructure for v0.1.0-alpha.
@Ivanmw97 Ivanmw97 merged commit b5fb0ad into release Nov 10, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants