ci: hooks basic checks - #3
Merged
Merged
Conversation
Merged
Merged
liukatkat
marked this pull request as ready for review
November 24, 2025 22:03
liukatkat
force-pushed
the
katrina/check-version-hook
branch
from
November 24, 2025 22:04
7c90b34 to
398ff60
Compare
liukatkat
force-pushed
the
katrina/ci
branch
from
November 24, 2025 22:04
1046628 to
41ba978
Compare
liukatkat
force-pushed
the
katrina/check-version-hook
branch
from
November 24, 2025 22:10
398ff60 to
669f41c
Compare
liukatkat
force-pushed
the
katrina/ci
branch
from
November 24, 2025 22:10
41ba978 to
48e50c2
Compare
liukatkat
force-pushed
the
katrina/check-version-hook
branch
from
November 24, 2025 22:15
669f41c to
d7c853a
Compare
liukatkat
force-pushed
the
katrina/ci
branch
2 times, most recently
from
November 24, 2025 23:01
51b7647 to
5d16633
Compare
liukatkat
force-pushed
the
katrina/check-version-hook
branch
from
November 24, 2025 23:01
d7c853a to
cb2d2a9
Compare
liukatkat
force-pushed
the
katrina/ci
branch
2 times, most recently
from
November 24, 2025 23:37
b29d29a to
6be7284
Compare
liukatkat
commented
Nov 25, 2025
liukatkat
force-pushed
the
katrina/check-version-hook
branch
from
December 8, 2025 21:40
67dd587 to
d02c643
Compare
update workflow tests and mcp add session start hook
nmote
approved these changes
Dec 10, 2025
| - name: Check if plugin files changed and version bumped | ||
| run: | | ||
| # Get the base branch (usually main) | ||
| git fetch origin ${{ github.event.pull_request.base.ref }} |
Member
There was a problem hiding this comment.
Do we need this even though we aren't doing a shallow checkout?
Collaborator
Author
There was a problem hiding this comment.
I think so, because I thought we need this to get the currently version on main. I am not extremely familiar with how this is typically done though, so I am not very sure.
(I might merge this first since it is a CI thing that I can probably fix later. I want to make sure we have both the Claude Plugin ready and the Cursor hooks ready by the end of this week for people to try out. But I am more than happy to update the checks!)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

What:
This PR adds basic CI to verify that the repository’s hooks work with any Semgrep version greater than or equal to the one specified in
semgrep-version.The PR also adds CI to ensure that the plugin version is updated each time we make a change to the files within the
plugin/directory..github/workflows/test.ymlis the main CI workflow filetests/contains all the scripts for testing the commands we run in the hooksWhy:
We want to ensure that the plugin remains compatible with
semgrep, since some of its hooks rely on specificsemgrepfeatures. I considered bundling Semgrep directly or adopting an approach similar to the oldmcprepo/ thesemgrep-rpc, but neither model fits this plugin well. The main reasons are:semgrepas a dependency like we have done in themcp/semgrep-rpcrepo.Given this, I chose to use CI for enforcing compatibility by verifying that everything in main works against the specific Semgrep version defined in the repo.
Test plan:
CI passing!