Skip to content

refactor(ci): Consolidate CI and TDD workflows into single pipeline#690

Merged
TGTGamer merged 6 commits intocursor/effect-vitest-tests-bootstrap-6d00from
cursor/ci-test-workflow-consolidation-4bbd
Mar 16, 2026
Merged

refactor(ci): Consolidate CI and TDD workflows into single pipeline#690
TGTGamer merged 6 commits intocursor/effect-vitest-tests-bootstrap-6d00from
cursor/ci-test-workflow-consolidation-4bbd

Conversation

@TGTGamer
Copy link
Copy Markdown
Contributor

@TGTGamer TGTGamer commented Mar 16, 2026

Summary

Consolidates CI workflows, adds reusable composite actions, and merges related workflows for a cleaner TDD flow and easier maintenance.

Changes

New composite actions

Action Purpose
security-preamble Harden Runner + optional Workflow Telemetry. Used by security and management workflows.
checkout-repo Lightweight checkout with submodules (no pnpm/node). For scans and chores.
git-ssh-setup SSH key creation + git config for signed commits. For workflows that push.

Workflow updates

  • codeql, security-dependency-review, security-scorecard, security-snyk, security-secrets, security-infrastructure_scan, management-github_management, chore-readme-fun: Use new composite actions instead of duplicated steps.
  • publish: Uses ci-setup (added optional registry-url for npm publish).
  • ci-setup: Added optional registry-url input for publish workflows.

Merged workflows

  • tests-repo-branch-sync + tests-repo-merge-synctests-repo-sync.yml
    • ensure-branch: On push (non-main), ensure matching branch exists in Eventiva/tests.
    • merge-on-pr-close: On PR closed (merged to main), merge tests branch into default.

Benefits

  • ~350 lines removed across workflows.
  • Shared setup via composite actions; changes in one place apply everywhere.
  • Fewer workflow files; related logic grouped together.
  • Simpler to understand and maintain.
Open in Web Open in Cursor 

- Add composite actions: ci-setup (checkout, pnpm, node, install) and checkout-tests-branch
- Merge ci.yml and tests-repo-pr-tdd.yml into one workflow
- Main checks (lint, build, typecheck) run on push and PR
- TDD flow (create-tests, run-tdd-tests, review) runs only on PR
- Remove redundant tests-repo-pr-tdd.yml
- Update tdd-and-test-creation.md to reference consolidated workflow

Co-authored-by: Jonathan S <jonathan@resnovas.com>
@trunk-io
Copy link
Copy Markdown

trunk-io bot commented Mar 16, 2026

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 16, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ee442498-d29c-4bdb-9618-5f59e7ac35a2

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch cursor/ci-test-workflow-consolidation-4bbd
✨ Simplify code
  • Create PR with simplified code
  • Commit simplified code in branch cursor/ci-test-workflow-consolidation-4bbd
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

cursoragent and others added 2 commits March 16, 2026 13:58
Replace manual git -C tests checkout with:
- git config submodule.tests.branch
- git submodule update --remote tests

Falls back to default branch when PR branch doesn't exist yet.

Co-authored-by: Jonathan S <jonathan@resnovas.com>
Composite actions:
- security-preamble: Harden Runner + optional Workflow Telemetry
- checkout-repo: lightweight checkout with submodules (no pnpm)
- git-ssh-setup: SSH key + git config for signed commits

Workflow updates:
- codeql, security-*, management, chore: use new composites
- publish: use ci-setup (added optional registry-url)
- ci-setup: add optional registry-url for publish workflows

Merged workflows:
- tests-repo-branch-sync + tests-repo-merge-sync → tests-repo-sync.yml
  (ensure-branch on push, merge-on-pr-close on PR closed)

Co-authored-by: Jonathan S <jonathan@resnovas.com>
@TGTGamer TGTGamer marked this pull request as ready for review March 16, 2026 14:11
cursoragent and others added 3 commits March 16, 2026 14:17
Local composite actions (.github/actions/*) require the repo to be
checked out first. Add actions/checkout as the first step in all
workflows that use local actions.

- Add skip-checkout option to ci-setup to avoid redundant checkout
- Remove unused checkout-repo composite (replaced by actions/checkout)

Co-authored-by: Jonathan S <jonathan@resnovas.com>
- Cache Nx .nx/cache via actions/cache (key: pnpm-lock + nx.json)
- Set NX_REJECT_UNKNOWN_LOCAL_CACHE=0 so Nx accepts cache from different
  runners (required when not using Nx Cloud)
- pnpm store already cached via setup-node cache: 'pnpm'

Speeds up lint/build/typecheck and publish by reusing Nx computation cache.

Co-authored-by: Jonathan S <jonathan@resnovas.com>
Local composite actions don't support pre/post execution, causing:
- 'pre execution is not supported' warning
- harden-runner post-step ENOENT on post_event.json
- Workflow Telemetry 403 errors (external service)

Replace security-preamble composite with direct harden-runner step in
each workflow. Remove Workflow Telemetry (was failing with 403).

Co-authored-by: Jonathan S <jonathan@resnovas.com>
@TGTGamer TGTGamer merged commit ab6bb76 into cursor/effect-vitest-tests-bootstrap-6d00 Mar 16, 2026
5 checks passed
@TGTGamer TGTGamer deleted the cursor/ci-test-workflow-consolidation-4bbd branch March 16, 2026 14:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants