RediSearch
- 36 skills
- 0 followers
- 19 hours ago last updated
- ▌ Lint · redisearchCheck code quality and formatting before committing changes. Use this to verify your changes meet our coding standards.
- ▌ Verify · redisearchRun full verification before committing or creating a PR. Use this when you want to create a PR.
- ▌ Open Pr · redisearchOpen a GitHub pull request for RediSearch. Use whenever you are asked to open a PR.
- ▌ Close Pr · redisearch bundleClose or clean up a GitHub pull request for RediSearch. Use when asked to close a PR, choose between ordinary closure and cleanup closure, delete a PR branch, sanitize mistaken PR metadata, or clean up a mistaken or unwanted PR whose diff should not remain visible.
- ▌ Code Review · redisearchReview C code changes for correctness, safety, and style. Use this when you want to review C code changes or PRs.
- ▌ Pr Backport · redisearchBackport a merged PR to a release branch. Use this when you need to cherry-pick a fix or feature into an older branch.
- ▌ Rust Review · redisearchReview Rust code changes for unsafe correctness, security and robustness, documentation quality, and C-to-Rust porting fidelity. Use this when you want to review Rust changes before merging.
- ▌ Jj Workspace · redisearchCreate or delete a jj (Jujutsu) workspace — a second checkout of this repo, sharing one repository. Use when you need to work on something side by side with the current checkout, for instance to leave a long build or test run undisturbed, and to clean the workspace up afterwards.
- ▌ Port C Module · redisearchGuide for porting a C module to Rust. Use this when starting to port a C module to Rust.
- ▌ Run Rust Tests · redisearchRun Rust tests after making changes to verify correctness. Use this when you want to verify your changes to Rust code.
- ▌ Add CI Platform · redisearchAdd a new OS platform to RediSearch CI. Use when adding a new distro version, OS, or container target to the build/test matrix.
- ▌ Docs Guidelines · redisearchGeneral documentation guidelines that apply across all languages. Use this when writing or reviewing comments, docstrings, or doc headers in any code.
- ▌ Jj Fix Conflicts · redisearchFix merge conflicts in a jj change and its ancestors, starting from the oldest conflict. Use this when a jj change or its ancestors have conflicts that need resolving.
- ▌ Review Rust Docs · redisearchReview the documentation of a Rust crate to ensure it meets our requirements and standards. Use this when you have done changes to Rust code.
- ▌ Run C Unit Tests · redisearchRun C/C++ unit tests to verify correctness. Use this after making changes to C code to verify nothing is broken.
- ▌ Run Python Tests · redisearchRun end-to-end Python tests after making changes to verify correctness. Use this when you want to verify your changes from an end-to-end perspective, after ensuring the build and Rust tests pass.
- ▌ Write Flow Tests · redisearchGuidelines for writing Python flow tests (end-to-end behavioral tests). Use this when writing new Python tests in tests/pytests/, and as the review criteria when reviewing changes to them.
- ▌ Write Rust Tests · redisearchWrite Rust tests to verify correctness of Rust code. Use this when you want to write Rust tests.
- ▌ Commit Guidelines · redisearchDirty repo, uncommitted changes, commit, amend, split, changeset, PR history. Inspect repository state and prepare atomic Git commits or jj changesets. Use whenever the worktree is already dirty or you are about to commit or rewrite history.
- ▌ Report Flaky Test · redisearchReport a flaky RediSearch test from a CI failure, Jira issue, test id, or local log. Use this to collect GitHub Actions logs/artifacts, find or create the right MOD Jira ticket, update existing flaky-test issues, and suggest immediate triage such as a trivial test-only fix or a temporary skip_until.
- ▌ Adversarial Review · redisearchCommission an independent review of a change from an isolated reviewer, before opening or updating a PR or on demand by the user. For the agent requesting the review — if you were spawned to review something, you are the reviewer and this is not your skill.
- ▌ Branch Out Release · redisearch bundleCreate a new RediSearch public release branch from master or prepare branch-out changes. Use when branching a version line such as 8.10 from master, setting initial version.h, copying GitHub branch protection, adapting release-branch CI gates, triggering validation, or documenting follow-up master-to-release sync policy.
- ▌ Jj Split Changeset · redisearchSplit a jj (Jujutsu) changeset into smaller, focused changesets. Use when asked to break up a large changeset, split commits, reorganize changes across revisions, or create stacked PRs from a single changeset. Covers safe duplication-based workflows, file-path and hunk-level splitting without interactive commands.
- ▌ Check Flow Coverage · redisearchCheck which C source lines are not covered by Python flow tests. Use this when you want to ensure your C code changes are exercised by end-to-end Python tests. For Rust coverage, use /check-rust-coverage instead.
- ▌ Check Rust Coverage · redisearchCheck which Rust lines are not covered by Rust tests. Use this when you developed new Rust code and want to ensure it is tested.
- ▌ Run Rust Benchmarks · redisearchRun Rust benchmarks and compare performance with the C implementation. Use this when you work on migrating C code to Rust and want to ensure performance is not regressed.
- ▌ Run Macro Benchmarks · redisearchRun a RediSearch end-to-end macro benchmark from tests/benchmarks/*.yml via redisbench-admin. Use this when you want to measure whole-module performance (throughput/latency) against a real redis-server, not micro Rust or C++ benchmarks.
- ▌ Rust Docs Guidelines · redisearchGuidelines for writing Rust documentation. Use this when you want to write Rust documentation.
- ▌ Improve Flow Coverage · redisearchImprove Python flow test coverage for C source files. Runs /check-flow-coverage to find gaps, then writes or extends tests following /write-flow-tests guidelines.
- ▌ Rust Tests Guidelines · redisearchGuidelines for writing Rust tests. Use this when you want to write Rust tests.
- ▌ Bisect Perf Regression · redisearchSystematically bisect an end-to-end performance regression between two refs (tags/branches/commits) down to the exact offending commit(s). Use this when CI/customer benchmarks show one version is measurably slower than another and you need to attribute the cost to specific PRs.
- ▌ Investigate Flaky Test · redisearchInvestigate a RediSearch flaky-test report from a Jira key, CI failure, test id, or local logs. Use this to collect evidence, identify a supported root cause, and propose a real fix; if the evidence is insufficient, say so and ask for the missing data instead of suggesting workaround-only fixes or skip_until.
- ▌ Read Unmodified C Module · redisearchRead the source of the C module we are working on, before we made any changes.
- ▌ Analyze Rust Ffi Crate Surface · redisearchDetermine which parts of the C codebase use Rust-defined C symbols. Use this when you want to understand which C code files may be impacted by changes to a Rust FFI crate.
- ▌ Minimize Rust Ffi Crate Surface · redisearchRemove Rust-defined C symbols that are either unused or only used in C/C++ unit tests. Use this when you are refactoring a Rust FFI crate and want to remove unused symbols.
- ▌ Rqe Iterator Suspend Resume · redisearchImplementation & review guide for suspend/resume (revalidation) on query-engine iterators in src/redisearch_rs/rqe_iterators/. Use this when adding the Box<Self> suspend/resume mechanism to an RQE iterator that currently only implements the legacy revalidate, when modifying an existing suspend/resume implementation, or when reviewing a PR that touches this machinery (boxed.rs, ref_mode markers, child-slot helpers, layout-invariant proofs).