Skip to content

Conversation

@WRRicht3r
Copy link
Contributor

@WRRicht3r WRRicht3r commented Aug 29, 2025

Summary

Install NDK 28.0.12674087 (default), keep 25.2 for utils. Export NDK env to r28, print revision, and verify native libs via readelf

Related Issue

Closes # (or) Relates to #

Type of Change

- [ ] feat (new feature)
- [ ] fix (bug fix)
- [ ] refactor (no functional change)
- [x] chore/build (tooling, CI, deps)
- [ ] docs (README/AGENTS, comments)

Screenshots / Videos

If UI changes, include before/after.

Test Plan

Commands run locally:
./gradlew detektAll
./gradlew runTest
./gradlew :app:lint
Additional checks and scenarios covered:

  • CI installs NDK r28 (default) and r25.2 (compat), prints NDK revision, and runs
    readelf on native libs
  • Gradle/AGP versions printed for traceability

Risks & Rollout

Potential impact, migrations, or config/secrets required.

  • NDK default changed to r28 in CI; fearless-utils still declares r25.2 (kept
    installed)
  • Follow-up PR to bump utils’ ndkVersion to r28+ recommended

Checklist

  • Linked an issue and added a clear description
  • Added/updated tests for changed code (where applicable)
  • Updated docs (README/AGENTS/roadmap) when behavior or commands changed
  • Ran detektAll, runTest, and :app:lint locally (or via CI)
  • No secrets or local.properties committed
    EOF

[x] Ran detektAll, runTest, and :app:lint locally (or via CI)

[x] No secrets or local.properties committed

@WRRicht3r
Copy link
Contributor Author

WRRicht3r commented Sep 1, 2025

Summary

  • Adds printPolkadotSdkAlignment step to GitHub Actions (early in build).
  • Switches Jenkins testCmd to postMergeCheck for full validation.
  • Adds scripts/post_merge_check.sh for local/CI parity and quicker triage.

Why

  • Surface Polkadot SDK alignment and any shared_features pin up front.
  • Standardize post‑merge checks: static analysis, unit tests + coverage, assemble,
    lint.
  • Provide a single local entrypoint mirroring CI.

What To Look For

  • GitHub Actions logs: a step named “Polkadot SDK alignment” with:
    • “Polkadot SDK alignment (effective):”
    • TYPES_URL, DEFAULT_V13_TYPES_URL, CHAINS_URL (debug/release),
      SHARED_FEATURES_VERSION_OVERRIDE
  • Jenkins logs: postMergeCheck runs in order:
    • printPolkadotSdkAlignment → runTest → :app:assembleDebug → :app:lint
  • Coverage: XML/HTML under coverage/coverage-.*
  • Lint: app/build/reports/lint-results-*.html

How To Validate Locally

  • Full cycle (mirrors Jenkins task): ./gradlew postMergeCheck --no-daemon
    --console=plain
  • Script with extra guards (utils toggle checks):
    • Full: bash scripts/post_merge_check.sh
    • Quick: bash scripts/post_merge_check.sh --unit-only
    • Offline: add --offline if caches are warm
  • Expected utils toggle messages (script asserts):
    • When unset: “USE_REMOTE_UTILS not set; using published artifacts for
      fearless-utils”
    • When true: “Including remote fearless-utils from GitHub via sourceControl”

Notes

  • No runtime code changes; CI/config only.
  • If first run or network‑constrained, set mirrors in local.properties:
    • TYPES_URL_OVERRIDE, DEFAULT_V13_TYPES_URL_OVERRIDE, CHAINS_URL_OVERRIDE
  • Optional SDK alignment pin via SHARED_FEATURES_VERSION_OVERRIDE=1.x.y

SDILogin
SDILogin previously approved these changes Sep 1, 2025
@WRRicht3r
Copy link
Contributor Author

Summary

  • GitHub Actions: added “Polkadot SDK alignment” step after Gradle version.
  • Jenkins: switched testCmd to postMergeCheck for full validation.
  • New script: scripts/post_merge_check.sh for local/CI parity.
  • Fix: corrected import order in SuccessViewModel.kt to satisfy Kotlin compiler.

Why

  • Surface effective Polkadot SDK alignment and any shared_features pin early.
  • Standardize post‑merge checks: detekt, unit tests + coverage, assemble, lint.
  • Provide a single local entrypoint mirroring CI behavior.

Validation

  • Detekt: clean (0 findings). Report: build/reports/detekt/detekt.html|md.
  • Unit tests: all sampled modules green (no failures). Reports under */build/reports/
    tests/testDebugUnitTest/.
  • Assemble: :app:assembleDebug successful.
  • Lint: :app:lint successful.

How Reviewers Can Verify

  • Actions logs: find the “Polkadot SDK alignment” step showing:
    • “Polkadot SDK alignment (effective):”
    • TYPES_URL, DEFAULT_V13_TYPES_URL, CHAINS_URL (debug/release),
      SHARED_FEATURES_VERSION_OVERRIDE
  • Jenkins: confirm pipeline runs postMergeCheck (alignment → detekt → tests/JaCoCo →
    assemble → lint).
  • Local quick run:
    • Full: ./gradlew postMergeCheck --no-daemon --console=plain
    • Script: bash scripts/post_merge_check.sh (use --unit-only or --offline as
      needed)

Notes

  • No runtime logic changes; CI/config updates and a minor import‑order fix only.
  • If first run or network‑constrained, set mirrors in local.properties:
    • TYPES_URL_OVERRIDE, DEFAULT_V13_TYPES_URL_OVERRIDE, CHAINS_URL_OVERRIDE
  • Optional: pin SHARED_FEATURES_VERSION_OVERRIDE=1.x.y to align with a specific SDK
    release.

@WRRicht3r WRRicht3r requested a review from SDILogin September 1, 2025 09:39
SDILogin
SDILogin previously approved these changes Sep 1, 2025
…ug/debug/assemble) remove unintended lifecycle deps (ksp lifecycle compiler, viewmodel-ktx)
SDILogin
SDILogin previously approved these changes Sep 2, 2025
@WRRicht3r WRRicht3r merged commit 7d32fd9 into develop Sep 2, 2025
1 check 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.

3 participants