Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/arstack-studio-qt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ on:
- 'include/ariec61850/scl/**'
- '.github/workflows/arstack-studio-qt.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'apps/arstack_studio/**'
- 'include/ariec61850/sampled_values/**'
Expand All @@ -26,6 +27,7 @@ concurrency:

jobs:
windows-launcher-parse:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
runs-on: windows-latest
steps:
- name: Checkout
Expand Down Expand Up @@ -54,6 +56,7 @@ jobs:
Write-Host 'Windows PowerShell parse: PASS · launcher + S8B packaged ownership probe'

windows-ownership-integration:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: S8B Windows ownership integration
runs-on: windows-2022
steps:
Expand Down Expand Up @@ -124,6 +127,7 @@ jobs:
retention-days: 7

qt-build-smoke:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
runs-on: ubuntu-latest
container: ubuntu:26.04
steps:
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/arstack-studio-rc2-policy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ name: ARStack Studio RC2 Acceptance Policy

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'apps/arstack_studio/src/Rc2Acceptance.cpp'
- 'apps/arstack_studio/rc2/**'
Expand All @@ -26,6 +27,7 @@ concurrency:

jobs:
windows-policy:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: RC2 Windows evidence gate
runs-on: windows-2022
steps:
Expand Down Expand Up @@ -80,6 +82,7 @@ jobs:
retention-days: 14

linux-policy:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: RC2 Linux policy regression
runs-on: ubuntu-latest
container: ubuntu:26.04
Expand Down
8 changes: 0 additions & 8 deletions .github/workflows/arstack-studio-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,6 @@ name: ARStack Studio Release

on:
workflow_dispatch:
pull_request:
paths:
- 'apps/arstack_studio/**'
- 'embedded/esp32p4_smv_injector/**'
- 'include/ariec61850/**'
- 'src/**'
- '.github/workflows/arstack-studio-release.yml'
- '.github/workflows/esp32p4-smv-injector.yml'
push:
tags:
- 'v*'
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/arstack-studio-windows-lifecycle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ on:
- 'apps/arstack_studio/**'
- '.github/workflows/arstack-studio-windows-lifecycle.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'apps/arstack_studio/**'
- '.github/workflows/arstack-studio-windows-lifecycle.yml'
Expand All @@ -20,6 +21,7 @@ concurrency:

jobs:
close-exit-reopen:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Close -> process exit -> immediate reopen
runs-on: windows-2022
timeout-minutes: 12
Expand Down
14 changes: 14 additions & 0 deletions .github/workflows/brcb-hard-profile-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,20 @@ on:
push:
branches:
- main
paths:
- 'embedded/brcb_hard_profile/**'
- 'embedded/brcb_*.cpp'
- 'embedded/mms_brcb_*.cpp'
- 'include/ariec61850/mms/**'
- 'src/mms/**'
- 'include/ariec61850/control/**'
- 'src/control/**'
- 'include/ariec61850/asn1/**'
- 'src/asn1/**'
- 'tests/fixtures/scl/**'
- '.github/workflows/brcb-hard-profile-ci.yml'
Comment on lines +15 to +18

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Include OSI and ACSE dependencies in the BRCB push scope

The new main path filter omits src/osi/**, include/ariec61850/osi/**, src/acse/**, and their headers even though embedded/brcb_hard_profile/CMakeLists.txt directly compiles those sources into the lifecycle, connection, and negotiated-limits smoke targets. A merged OSI/ACSE change therefore no longer runs this specialized -fno-exceptions BRCB gate, so failures unique to the hard profile can reach main despite the workflow previously running on every main push. Add every directly compiled dependency domain to this scope.

AGENTS.md reference: AGENTS.md:L256-L261

Useful? React with 👍 / 👎.

pull_request:
types: [opened, synchronize, reopened, ready_for_review]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Handle converted-to-draft events to cancel active jobs

When a Ready PR is switched back to Draft while one of these expensive runs is active, GitHub emits the converted_to_draft pull-request activity, but the new types list excludes it. No replacement workflow run is created, so the PR-scoped cancel-in-progress concurrency policy cannot cancel the already-running matrix and the jobs continue consuming runners despite the PR now being Draft. Include converted_to_draft; its jobs will be skipped by the draft guard while the workflow-level concurrency cancels the older run.

AGENTS.md reference: AGENTS.md:L15-L16

Useful? React with 👍 / 👎.

paths:
- 'embedded/brcb_hard_profile/**'
- 'embedded/brcb_*.cpp'
Expand All @@ -27,6 +40,7 @@ concurrency:

jobs:
brcb-hard-profile:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: BRCB Hard / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down
12 changes: 12 additions & 0 deletions .github/workflows/control-hard-profile-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,14 @@ on:
push:
branches:
- main
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
- 'embedded/control_guarded_hard_profile_smoke.cpp'
- 'embedded/control_hard_profile/**'
- '.github/workflows/control-hard-profile-ci.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
Expand All @@ -15,8 +22,13 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
control-hard-profile:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Control Hard / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/control-interop-harness-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
branches:
- "agent/phase-4d-c5-control-interoperability"
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'tools/control_interop_probe/**'
- 'include/ariec61850/control/**'
Expand All @@ -29,6 +30,7 @@ concurrency:

jobs:
control-interop:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Control Interop Harness / ${{ matrix.compiler }}
runs-on: ${{ matrix.os }}
strategy:
Expand Down
17 changes: 17 additions & 0 deletions .github/workflows/control-mms-profile-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,19 @@ on:
push:
branches:
- main
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
- 'tests/test_control_mms_structure.cpp'
- 'tests/control_mms_profile/**'
- 'include/ariec61850/mms/data_value.hpp'
- 'include/ariec61850/mms/services.hpp'
- 'src/mms/data_value.cpp'
- 'src/mms/data_codec.cpp'
- 'src/mms/utc_time.cpp'
- '.github/workflows/control-mms-profile-ci.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
Expand All @@ -20,8 +32,13 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
control-mms-profile:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Control MMS / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down
14 changes: 14 additions & 0 deletions .github/workflows/control-session-profile-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,16 @@ on:
push:
branches:
- main
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
- 'include/ariec61850/mms/association_runtime.hpp'
- 'src/mms/association_runtime_control_wait.cpp'
- 'tests/test_control_session.cpp'
- 'tests/control_session_profile/**'
- '.github/workflows/control-session-profile-ci.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
Expand All @@ -17,8 +26,13 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
control-session-profile:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Control Session / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down
15 changes: 15 additions & 0 deletions .github/workflows/control-termination-profile-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,17 @@ on:
push:
branches:
- main
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
- 'tests/test_command_termination.cpp'
- 'tests/control_termination_profile/**'
- 'include/ariec61850/mms/data_value.hpp'
- 'include/ariec61850/mms/reporting.hpp'
- 'src/mms/data_value.cpp'
- '.github/workflows/control-termination-profile-ci.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'include/ariec61850/control/**'
- 'src/control/**'
Expand All @@ -18,8 +28,13 @@ on:
permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

jobs:
control-termination-profile:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Control Termination / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down
14 changes: 14 additions & 0 deletions .github/workflows/cpp-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,19 @@ name: C++ CI
on:
push:
branches: [main]
paths:
- 'CMakeLists.txt'
- 'cmake/**'
- 'include/**'
- 'src/**'
- 'tests/**'
- 'tools/**'
- 'scripts/**'
- 'fuzz/**'
- 'embedded/**'
- '.github/workflows/cpp-ci.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'CMakeLists.txt'
- 'cmake/**'
Expand All @@ -26,6 +38,7 @@ concurrency:

jobs:
linux:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Linux / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down Expand Up @@ -68,6 +81,7 @@ jobs:
python3 scripts/run-phase4c-timeout-recovery.py --help > /dev/null

windows:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Windows / MSVC
runs-on: windows-latest
steps:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/dynamic-rcb-trial-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches: ["agent/phase-4d-d2-dynamic-rcb-live-trial"]
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'tools/dynamic_rcb_trial/**'
- 'include/ariec61850/mms/**'
Expand All @@ -28,6 +29,7 @@ concurrency:

jobs:
build:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
strategy:
matrix:
include:
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/embedded-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,29 @@ on:
push:
branches:
- main
paths:
- 'embedded/**'
- 'include/ariec61850/mms/**'
- 'src/mms/**'
- 'include/ariec61850/control/**'
- 'src/control/**'
- 'include/ariec61850/asn1/**'
- 'src/asn1/**'
- 'include/ariec61850/acse/**'
- 'src/acse/**'
- 'include/ariec61850/osi/**'
- 'src/osi/**'
- 'include/ariec61850/goose/**'
- 'src/goose/**'
- 'include/ariec61850/sampled_values/**'
- 'src/sampled_values/**'
- 'include/ariec61850/ethernet/**'
- 'src/ethernet/**'
- 'include/ariec61850/time_sync/**'
- 'src/time_sync/**'
- '.github/workflows/embedded-ci.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'embedded/**'
- 'include/ariec61850/mms/**'
Expand Down Expand Up @@ -36,6 +58,7 @@ concurrency:

jobs:
embedded-host-sim:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
name: Embedded host-sim / ${{ matrix.compiler }}
runs-on: ubuntu-latest
strategy:
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/esp32p4-ptp-lab.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
name: ESP32-P4 PTP Lab Profile

on:
workflow_dispatch:
push:
branches: [main]
paths:
- 'embedded/esp32p4_smv_injector/**'
- 'include/ariec61850/time_sync/**'
Expand All @@ -10,6 +12,7 @@ on:
- 'src/ethernet/**'
- '.github/workflows/esp32p4-ptp-lab.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'embedded/esp32p4_smv_injector/**'
- 'include/ariec61850/time_sync/**'
Expand All @@ -27,6 +30,7 @@ concurrency:

jobs:
build-esp32p4-ptp:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
strategy:
fail-fast: false
matrix:
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/esp32p4-smv-injector.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@ name: ESP32-P4 SMV Injector

on:
workflow_call:
workflow_dispatch:
push:
branches: [main]
paths:
- 'embedded/esp32p4_smv_injector/**'
- 'include/ariec61850/asn1/**'
Expand All @@ -17,6 +19,7 @@ on:
- 'src/sampled_values/**'
- '.github/workflows/esp32p4-smv-injector.yml'
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- 'embedded/esp32p4_smv_injector/**'
- 'include/ariec61850/asn1/**'
Expand Down Expand Up @@ -44,6 +47,7 @@ env:

jobs:
build-esp32p4:
if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }}
runs-on: ubuntu-latest
timeout-minutes: 25
container:
Expand Down
Loading
Loading