From dde9054c718c8b810a84994f9d8c66a5976b6e96 Mon Sep 17 00:00:00 2001 From: Piotr Stachyra Date: Fri, 30 Jan 2026 10:21:23 +0100 Subject: [PATCH 1/5] extend bug report template --- .github/ISSUE_TEMPLATE/bug_report.yml | 53 ++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index ec43c1237..2eb068875 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -6,7 +6,15 @@ body: id: description attributes: label: What happened? - placeholder: Describe the bug and what you expected instead + placeholder: Describe the bug + validations: + required: false + + - type: textarea + id: expected + attributes: + label: Expected behavior + placeholder: What did you expect to happen instead? validations: required: false @@ -30,9 +38,50 @@ body: required: false - type: input + id: version + attributes: + label: Bitkit Version + placeholder: e.g., 2.0.0 + validations: + required: false + + - type: input + id: device + attributes: + label: Device / OS + placeholder: e.g., Pixel 7, Android 14 + validations: + required: false + + - type: checkboxes id: environment attributes: label: Environment - placeholder: e.g., v2.0.0, Pixel 7, Android 14, mainnet + options: + - label: Mainnet + - label: Regtest + - label: Local + + - type: dropdown + id: reproducibility + attributes: + label: Reproducibility + options: + - Always + - Often (>50%) + - Sometimes (<50%) + - Rarely (once or twice) + validations: + required: false + + - type: textarea + id: context + attributes: + label: Additional context + placeholder: | + Any other context about the problem, e.g.: + - New wallet / Restored from backup / Migrated from RN + - Lightning or on-chain related + - Specific channel state validations: required: false From 3ff98fb3dcf31fd8447e591abe65ddad9f84013b Mon Sep 17 00:00:00 2001 From: Piotr Stachyra Date: Fri, 30 Jan 2026 10:28:07 +0100 Subject: [PATCH 2/5] add feature request template --- .github/ISSUE_TEMPLATE/feature_request.yml | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 000000000..dff972cd7 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,35 @@ +name: Feature Request +description: Suggest a new feature or improvement +type: feature +body: + - type: textarea + id: problem + attributes: + label: Problem or use case + placeholder: What problem does this solve? Why do you need this? + validations: + required: false + + - type: textarea + id: solution + attributes: + label: Proposed solution + placeholder: Describe what you'd like to happen + validations: + required: false + + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + placeholder: Any workarounds or alternative solutions you've thought of? + validations: + required: false + + - type: textarea + id: context + attributes: + label: Additional context + placeholder: Screenshots, mockups, links, or any other context + validations: + required: false From 8be805d33936e255016b758265ad8319f1162ea5 Mon Sep 17 00:00:00 2001 From: Piotr Stachyra Date: Fri, 30 Jan 2026 10:37:59 +0100 Subject: [PATCH 3/5] chore: add e2e-skip workflow for non-code changes --- .github/workflows/e2e-skip.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/e2e-skip.yml diff --git a/.github/workflows/e2e-skip.yml b/.github/workflows/e2e-skip.yml new file mode 100644 index 000000000..91f5bb992 --- /dev/null +++ b/.github/workflows/e2e-skip.yml @@ -0,0 +1,18 @@ +name: E2E Skip + +on: + pull_request: + paths-ignore: + - 'app/**' + - 'gradle/**' + - '*.gradle.kts' + - 'gradle.properties' + - '.github/workflows/e2e.yml' + +jobs: + e2e-status: + if: github.event.pull_request.draft == false + name: e2e-status + runs-on: ubuntu-latest + steps: + - run: echo "E2E skipped - no code changes" From 075ea5a65b341f17fcdacd728057c33caa5823d6 Mon Sep 17 00:00:00 2001 From: Piotr Stachyra Date: Fri, 30 Jan 2026 11:17:58 +0100 Subject: [PATCH 4/5] chore: use paths-filter for e2e skip logic --- .github/workflows/e2e-skip.yml | 18 -------------- .github/workflows/e2e.yml | 44 ++++++++++++++++++++++++---------- 2 files changed, 32 insertions(+), 30 deletions(-) delete mode 100644 .github/workflows/e2e-skip.yml diff --git a/.github/workflows/e2e-skip.yml b/.github/workflows/e2e-skip.yml deleted file mode 100644 index 91f5bb992..000000000 --- a/.github/workflows/e2e-skip.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: E2E Skip - -on: - pull_request: - paths-ignore: - - 'app/**' - - 'gradle/**' - - '*.gradle.kts' - - 'gradle.properties' - - '.github/workflows/e2e.yml' - -jobs: - e2e-status: - if: github.event.pull_request.draft == false - name: e2e-status - runs-on: ubuntu-latest - steps: - - run: echo "E2E skipped - no code changes" diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 120a90e2f..52859397d 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -8,12 +8,6 @@ on: required: false default: "default-feature-branch" pull_request: - paths: - - 'app/**' - - 'gradle/**' - - '*.gradle.kts' - - 'gradle.properties' - - '.github/workflows/e2e.yml' env: TERM: xterm-256color @@ -24,9 +18,29 @@ concurrency: cancel-in-progress: true jobs: - build: + detect-changes: if: github.event.pull_request.draft == false runs-on: ubuntu-latest + outputs: + code: ${{ github.event_name == 'workflow_dispatch' || steps.filter.outputs.code == 'true' }} + steps: + - uses: actions/checkout@v4 + - uses: dorny/paths-filter@v3 + if: github.event_name == 'pull_request' + id: filter + with: + filters: | + code: + - 'app/**' + - 'gradle/**' + - '*.gradle.kts' + - 'gradle.properties' + - '.github/workflows/e2e.yml' + + build: + needs: detect-changes + if: github.event.pull_request.draft == false && needs.detect-changes.outputs.code == 'true' + runs-on: ubuntu-latest steps: - name: Checkout @@ -67,16 +81,17 @@ jobs: path: app/build/outputs/apk/dev/debug/bitkit_e2e.apk e2e-branch: - if: github.event.pull_request.draft == false + needs: detect-changes + if: github.event.pull_request.draft == false && needs.detect-changes.outputs.code == 'true' uses: synonymdev/bitkit-e2e-tests/.github/workflows/determine-e2e-branch.yml@main with: app_branch: ${{ github.head_ref || github.ref_name }} e2e_branch_input: ${{ github.event.inputs.e2e_branch || 'default-feature-branch' }} e2e-tests: - if: github.event.pull_request.draft == false + if: github.event.pull_request.draft == false && needs.detect-changes.outputs.code == 'true' runs-on: ubuntu-latest - needs: [build, e2e-branch] + needs: [detect-changes, build, e2e-branch] strategy: fail-fast: false @@ -238,12 +253,17 @@ jobs: if: always() && github.event.pull_request.draft == false name: e2e-status runs-on: ubuntu-latest - needs: [e2e-tests] + needs: [detect-changes, e2e-tests] steps: + - name: E2E skipped - no code changes + if: needs.detect-changes.outputs.code != 'true' + run: echo "✅ E2E skipped - no code changes" + - name: Verify all E2E shards succeeded + if: needs.detect-changes.outputs.code == 'true' run: | if [ "${{ needs.e2e-tests.result }}" != "success" ]; then echo "❌ Some E2E shards failed." exit 1 fi - echo "✅ All E2E shards passed!" \ No newline at end of file + echo "✅ All E2E shards passed!" From 0af9bbd4f7287e208a2bcb2ccf39c3090d32e1d0 Mon Sep 17 00:00:00 2001 From: Piotr Stachyra Date: Fri, 30 Jan 2026 13:45:06 +0100 Subject: [PATCH 5/5] chore: move environment to additional context hints --- .github/ISSUE_TEMPLATE/bug_report.yml | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 2eb068875..435bd3aa8 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -53,15 +53,6 @@ body: validations: required: false - - type: checkboxes - id: environment - attributes: - label: Environment - options: - - label: Mainnet - - label: Regtest - - label: Local - - type: dropdown id: reproducibility attributes: @@ -83,5 +74,6 @@ body: - New wallet / Restored from backup / Migrated from RN - Lightning or on-chain related - Specific channel state + - Environment (Mainnet / Regtest / Local) validations: required: false