From e9b8806368fddb7a8ec8210512b56d81399ed701 Mon Sep 17 00:00:00 2001 From: Seun Akanni Date: Sun, 25 Oct 2026 22:13:25 +0000 Subject: [PATCH] docs(templates): note a job may also come from a required workflow, and why fixtures stay in scope Where the same job is supplied from two places the definitions have to stay identical, or the two check runs of that name can disagree. Also records why unit-test fixtures are not excluded from dataset compliance: they report Confidence as a warning rather than an error, so the finding stays visible without gating, and excluding them would hide a fixture the engine cannot read. No behaviour change. --- templates/BHE/ci-beta.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/templates/BHE/ci-beta.yml b/templates/BHE/ci-beta.yml index 26bc04d..8e29c3d 100644 --- a/templates/BHE/ci-beta.yml +++ b/templates/BHE/ci-beta.yml @@ -2,6 +2,12 @@ # omitted (private repos do not enforce OSS copyright); all other jobs mirror # the BHoM variant. Copy to .github/workflows/ci-beta.yml in each BHE beta # repo. Runs on pull_request, non-blocking until a ruleset requires its checks. +# +# Some of these jobs may also be supplied to a repository by an organisation-level +# required workflow. Where that happens the same job runs from two places until the +# repository-local copy is reduced, so the two definitions must stay identical: a +# difference between them surfaces as two check runs of the same name disagreeing, +# which is unreadable on a pull request. # Workflow name CI keeps check contexts bare: required contexts are the job names. name: CI @@ -64,6 +70,11 @@ jobs: # substring-based, not dataset-aware: '*' crosses '/' without :(glob), so # the substring can come from a filename, a data directory, or a project # directory named *_Datasets. + # + # No .ci/Datasets exclusion. Unit-test fixtures are in scope and the runner + # reports their Confidence findings as warnings, so they are visible without + # gating. Excluding them instead would also hide a fixture the engine cannot + # read, which is the case that most needs to be seen. patterns: ':(icase)*datasets*.json :(exclude,icase)*Versioning_Test/Datasets/*' app_id: ${{ secrets.BHOM_APP_ID }} private_key: ${{ secrets.BHOM_APP_PRIVATE_KEY }}