You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Centralized workflow feature-ideation.yml references the reusable but is not pinned to @v1 (org standard). Replace with the canonical stub from standards/workflows/feature-ideation.yml which delegates to petry-projects/.github/.github/workflows/feature-ideation-reusable.yml@v1.
Replace .github/workflows/feature-ideation.yml with the canonical stub from petry-projects/.githubstandards/workflows/feature-ideation.yml (verbatim), preserving only the repo-specific project_context — the sole documented per-repo customization.
Analysis
The current stub is an outdated revision: it pins the reusable to SHA c2beceb…, lacks the redispatch discussion→dispatch bridge job (#963), and is missing the enhance_backlog / target_discussion workflow_dispatch inputs. The canonical stub pins to e20a8fac… # v1 and adds all of the above. The uses: line is a SHA pin with a # v1 marker (not a NOSONAR branch-ref like the other caller stubs), so no NOSONAR marker is added.
Implementation Checklist
Overwrite .github/workflows/feature-ideation.yml with the canonical template verbatim
Re-insert Broodly's existing project_context paragraph in place of the template's TODO placeholder
Verify the only diff from canonical is the project_context value
Tests to Write
Behavior-preserving CI config change — no unit tests apply (TDD exception per Phase 2). Validation is via YAML parse + diff-against-canonical.
Test Command
python3 -c "import yaml,sys; yaml.safe_load(open('.github/workflows/feature-ideation.yml'))" and bash .dev-lead/scripts/dev-lead-lint.sh
Overwrote .github/workflows/feature-ideation.yml with the canonical template from petry-projects/.githubstandards/workflows/feature-ideation.yml (verbatim)
Re-inserted Broodly's existing project_context paragraph in place of the template's TODO placeholder
Verified the only diff from the pristine canonical is the project_context value
Added the redispatch discussion→dispatch bridge job (#963) so discussion: created events run under a supported workflow_dispatch context
Added enhance_backlog and target_discussionworkflow_dispatch inputs; wired enhance_backlog and target_discussion through to the reusable
ideate job now guards if: github.event_name != 'discussion' (the bridge handles the discussion path)
Note: the uses: line is a SHA pin with a # v1 marker (not a mutable branch-ref), so the NOSONAR(S7637) marker used on the branch-ref caller stubs does not apply here — the canonical stub does not carry one.
Verification
YAML OK (python3 yaml.safe_load)
diff against pristine canonical → only the project_context block differs (expected per-repo edit)
dev-lead lint:
[lint] shellcheck on 2 file(s)...
[lint] validating CODEOWNERS...
OK: CODEOWNERS
[lint] all checks passed
No unit tests apply — this is a behavior-preserving CI-config migration (Phase 2 TDD exception). No source/tests reference this workflow.
Files Changed
.github/workflows/feature-ideation.yml: replaced outdated caller stub with the canonical @v1 stub, preserving Broodly's project_context
Notes
The canonical redispatch job requires the GH_PAT_WORKFLOWS secret to be available (it guards for its presence and fails loudly if missing). This is an org-level provisioning concern, unchanged by this migration. No follow-up issues.
Detail: Centralized workflow feature-ideation.yml references the reusable but is not pinned to @v1 (org standard). Replace with the canonical stub from standards/workflows/feature-ideation.yml which delegates to petry-projects/.github/.github/workflows/feature-ideation-reusable.yml@v1.
Replace .github/workflows/feature-ideation.yml with the canonical stub from petry-projects/.githubstandards/workflows/feature-ideation.yml (verbatim), preserving only the per-repo project_context customization for Broodly.
Implementation Checklist
Fetch canonical standards/workflows/feature-ideation.yml and write verbatim to .github/workflows/feature-ideation.yml
Re-apply the single allowed per-repo edit: replace the TODO project_context block with the existing Broodly project description
Confirm the uses: line delegates to feature-ideation-reusable.yml on the canonical channel ref
Tests to Write
Pure CI-workflow/config change with no observable code behavior — TDD phase exempt per instructions. Verification is via lint + YAML validity.
Fetched canonical standards/workflows/feature-ideation.yml from petry-projects/.github and wrote it verbatim to .github/workflows/feature-ideation.yml
Re-applied the single allowed per-repo edit: replaced the TODO project_context block with the existing Broodly project description
Confirmed the uses: line delegates to the org reusable feature-ideation-reusable.yml
Verification
YAML OK
[lint] shellcheck on 2 file(s)...
[lint] validating CODEOWNERS...
OK: CODEOWNERS
[lint] all checks passed
Diff of the repo file vs. the canonical stub is only the project_context block (the sole per-repo customization the template permits) — every other line matches verbatim, including the uses: delegation line.
Files Changed
.github/workflows/feature-ideation.yml: replaced the drifted stub with the canonical org template (adds the redispatch discussion→dispatch bridge and prep input-resolution jobs, enhance_backlog/target_discussion dispatch inputs, and the canonical reusable uses: ref), preserving Broodly's project_context.
Notes
The audit finding text referenced pinning to @v1, but the current canonical template (source of truth per the Remediation section) delegates to feature-ideation-reusable.yml@feature-ideation/stable (a first-party channel ref annotated # NOSONAR). Copied the template verbatim as instructed rather than hand-pinning to a stale ref.
Pure CI-workflow/config change with no observable code behavior — TDD phase exempt per the instructions; verified via YAML parse + dev-lead lint.
Activity
don-petry commentedon Jul 3, 2026
Dev-Lead Implementation Plan
Issue: #368 — Compliance: non-stub-feature-ideation.yml
Scope
Replace
.github/workflows/feature-ideation.ymlwith the canonical stub frompetry-projects/.githubstandards/workflows/feature-ideation.yml(verbatim), preserving only the repo-specificproject_context— the sole documented per-repo customization.Analysis
The current stub is an outdated revision: it pins the reusable to SHA
c2beceb…, lacks theredispatchdiscussion→dispatch bridge job (#963), and is missing theenhance_backlog/target_discussionworkflow_dispatch inputs. The canonical stub pins toe20a8fac… # v1and adds all of the above. Theuses:line is a SHA pin with a# v1marker (not a NOSONAR branch-ref like the other caller stubs), so no NOSONAR marker is added.Implementation Checklist
.github/workflows/feature-ideation.ymlwith the canonical template verbatimproject_contextparagraph in place of the template'sTODOplaceholderproject_contextvalueTests to Write
Test Command
python3 -c "import yaml,sys; yaml.safe_load(open('.github/workflows/feature-ideation.yml'))"andbash .dev-lead/scripts/dev-lead-lint.shdon-petry commentedon Jul 3, 2026
Dev-Lead: Implementation Complete
Plan Execution
.github/workflows/feature-ideation.ymlwith the canonical template frompetry-projects/.githubstandards/workflows/feature-ideation.yml(verbatim)project_contextparagraph in place of the template'sTODOplaceholderproject_contextvalueWhat changed vs. the old stub
c2beceb… # v1→e20a8fac… # v1(canonical@v1SHA)redispatchdiscussion→dispatch bridge job (#963) sodiscussion: createdevents run under a supportedworkflow_dispatchcontextenhance_backlogandtarget_discussionworkflow_dispatchinputs; wiredenhance_backlogandtarget_discussionthrough to the reusableideatejob now guardsif: github.event_name != 'discussion'(the bridge handles the discussion path)Note: the
uses:line is a SHA pin with a# v1marker (not a mutable branch-ref), so the NOSONAR(S7637) marker used on the branch-ref caller stubs does not apply here — the canonical stub does not carry one.Verification
No unit tests apply — this is a behavior-preserving CI-config migration (Phase 2 TDD exception). No source/tests reference this workflow.
Files Changed
.github/workflows/feature-ideation.yml: replaced outdated caller stub with the canonical@v1stub, preserving Broodly'sproject_contextNotes
The canonical
redispatchjob requires theGH_PAT_WORKFLOWSsecret to be available (it guards for its presence and fails loudly if missing). This is an org-level provisioning concern, unchanged by this migration. No follow-up issues.don-petry commentedon Jul 10, 2026
Weekly Compliance Audit (2026-07-10)
This finding is still open.
Detail: Centralized workflow
feature-ideation.ymlreferences the reusable but is not pinned to@v1(org standard). Replace with the canonical stub fromstandards/workflows/feature-ideation.ymlwhich delegates topetry-projects/.github/.github/workflows/feature-ideation-reusable.yml@v1.Standard: standards/ci-standards.md#centralization-tiers
don-petry commentedon Jul 15, 2026
Dev-Lead Implementation Plan
Issue: #368 — Compliance: non-stub-feature-ideation.yml
Scope
Replace
.github/workflows/feature-ideation.ymlwith the canonical stub frompetry-projects/.githubstandards/workflows/feature-ideation.yml(verbatim), preserving only the per-repoproject_contextcustomization for Broodly.Implementation Checklist
standards/workflows/feature-ideation.ymland write verbatim to.github/workflows/feature-ideation.ymlproject_contextblock with the existing Broodly project descriptionuses:line delegates tofeature-ideation-reusable.ymlon the canonical channel refTests to Write
Test Command
bash .dev-lead/scripts/dev-lead-lint.sh(plus YAML parse validation)don-petry commentedon Jul 15, 2026
Dev-Lead: Implementation Complete
Plan Execution
standards/workflows/feature-ideation.ymlfrompetry-projects/.githuband wrote it verbatim to.github/workflows/feature-ideation.ymlproject_contextblock with the existing Broodly project descriptionuses:line delegates to the org reusablefeature-ideation-reusable.ymlVerification
Diff of the repo file vs. the canonical stub is only the
project_contextblock (the sole per-repo customization the template permits) — every other line matches verbatim, including theuses:delegation line.Files Changed
.github/workflows/feature-ideation.yml: replaced the drifted stub with the canonical org template (adds theredispatchdiscussion→dispatch bridge andprepinput-resolution jobs,enhance_backlog/target_discussiondispatch inputs, and the canonical reusableuses:ref), preserving Broodly'sproject_context.Notes
@v1, but the current canonical template (source of truth per the Remediation section) delegates tofeature-ideation-reusable.yml@feature-ideation/stable(a first-party channel ref annotated# NOSONAR). Copied the template verbatim as instructed rather than hand-pinning to a stale ref.feat: implement issue #368 — Compliance: non-stub-feature-ideation.yml (
feat: implement issue #368 — Compliance: non-stub-feature-ideation.yml (
feat: implement issue #368 — Compliance: non-stub-feature-ideation.yml (
feat: implement issue #407 — Compliance: ruleset-drift-pr-quality-req…
feat: implement issue #368 — Compliance: non-stub-feature-ideation.yml (
feat: implement issue #409 — Compliance: ruleset-drift-pr-quality-req…