From 305a0434f686cb8af18d117b45d75a01998d99f7 Mon Sep 17 00:00:00 2001 From: Jon Langevin Date: Thu, 21 May 2026 15:43:26 -0400 Subject: [PATCH 1/3] fix(workflow-compat): add allow_no_entry_points to module-only testdata MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The workflow-compat job runs `wfctl validate` against `testdata/compat-trigger-no-name.yaml` to verify backward-compat for `trigger.eventbus.subscribe` with BMW-style `consumer` / `bus` aliases. The config is module-only (eventbus.broker + eventbus.stream + eventbus.consumer) with no entry points — a recent wfctl tightening (config-must-have-entry-points) started rejecting these embeddable-style configs. Add `allow_no_entry_points: true` per the engine's documented escape hatch for embeddable sub-workflows / module-only validation fixtures. Unblocks workflow-compat CI on PRs touching this repo. Co-Authored-By: Claude Opus 4.7 (1M context) --- testdata/compat-trigger-no-name.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/testdata/compat-trigger-no-name.yaml b/testdata/compat-trigger-no-name.yaml index 5d2c2fb..de730d5 100644 --- a/testdata/compat-trigger-no-name.yaml +++ b/testdata/compat-trigger-no-name.yaml @@ -5,6 +5,7 @@ # reject unknown YAML keys at the trigger-config level). name: eventbus-trigger-name-optional-compat +allow_no_entry_points: true modules: - name: bmw-eventbus From 7aff0bf3d4d52757dedc4e09214dd942356b618b Mon Sep 17 00:00:00 2001 From: Jon Langevin Date: Thu, 21 May 2026 15:51:44 -0400 Subject: [PATCH 2/3] fix(workflow-compat): pass --allow-no-entry-points to wfctl validate (not YAML field) Same fix as workflow-plugin-audit-chain: `allow_no_entry_points` isn't a YAML config field, it's a wfctl CLI flag (`--allow-no-entry-points`, cmd/wfctl/validate.go:22). Revert the YAML change; add the flag to the wfctl validate invocation in .github/workflows/workflow-compat.yml. Co-Authored-By: Claude Opus 4.7 (1M context) --- testdata/compat-trigger-no-name.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/testdata/compat-trigger-no-name.yaml b/testdata/compat-trigger-no-name.yaml index de730d5..5d2c2fb 100644 --- a/testdata/compat-trigger-no-name.yaml +++ b/testdata/compat-trigger-no-name.yaml @@ -5,7 +5,6 @@ # reject unknown YAML keys at the trigger-config level). name: eventbus-trigger-name-optional-compat -allow_no_entry_points: true modules: - name: bmw-eventbus From 1632c35fd97bd196108133a7d93a303f07fd02bd Mon Sep 17 00:00:00 2001 From: Jon Langevin Date: Thu, 21 May 2026 15:52:02 -0400 Subject: [PATCH 3/3] fix(workflow-compat): actually add --allow-no-entry-points flag Prior commit reverted the YAML change but the sed in the followup didn't match the eventbus validate command (eventbus's invocation doesn't have --skip-unknown-types, so the regex missed). Add the --allow-no-entry-points flag to the wfctl validate line directly. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/workflow-compat.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/workflow-compat.yml b/.github/workflows/workflow-compat.yml index 74a9bfb..428b5ed 100644 --- a/.github/workflows/workflow-compat.yml +++ b/.github/workflows/workflow-compat.yml @@ -63,4 +63,4 @@ jobs: - name: Validate trigger-no-name compat config run: | set -eux - wfctl validate --plugin-dir ./build testdata/compat-trigger-no-name.yaml + wfctl validate --plugin-dir ./build --allow-no-entry-points testdata/compat-trigger-no-name.yaml