tabularis-pr-review
Use when reviewing a Tabularis pull request locally — checking code quality against the repo's own rules, verifying the PR's claims, running its tests on the correct branch, and preparing real test data plus a manual test plan for the human. Use when the user says 'review PR #N', 'lass uns PR reviewen', 'check this PR', or wants to test a PR with real data before merging.
pinned to #d6b894dupdated yesterday
Ask your AI client: “install skills/tabularis-pr-review”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/tabularis-pr-reviewmetahub onboarded this repo on the author's behalf.
If you own github.com/TabularisDB/tabularis on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
4,057
Last commit
yesterday
Latest release
published
- #ai-agent
- #ai-assistant
- #cross-platform
- #database-client
- #database-gui
- #database-tool
- #er-diagram
- #mariadb
- #mcp
- #mcp-server
- #mysql
- #postgresql
- #rust
- #sql
- #sql-editor
- #sql-notebook
- #sqlite
- #tauri
- #typescript
- #visual-query-builder
Evaluation report
WarningsAutomated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.d6b894d· yesterday
Documentation
8 passed1 warningHomepage or repository declaredwarn
No homepage or repository declared.
Add a "homepage" or "repository" field to SKILL.md.
Description quality
67 words · 374 chars — "Use when reviewing a Tabularis pull request locally — checking code quality agai…"
README is present and substantial
25,605 chars · 15 sections · 12 code blocks
Tags / topics declared
20 total — ai-agent, ai-assistant, cross-platform, database-client, database-gui, database-tool (+14)
README has usage / example sections
found: Installation
Homepage / docs URL declared
https://tabularis.dev
Description is substantive
Description is 67 words.
Documentation present and substantive
Documentation present (SKILL.md, 842 words).
Documentation shows usage
Documentation includes 3 code examples.
Release history
1- releasecurrentd6b894dwarnyesterday
Contents
Tabularis Local PR Review
Overview
A read-everything-then-verify review for Tabularis PRs. Goes beyond a diff skim: judges the diff against the repo's own .rules/, confirms the PR's stated claims are true, runs the PR's tests on the PR branch, and stages real data so the human can manually exercise the change. The deliverable is a review plus a copy-paste test plan, not just opinions.
Core principle: Don't trust the PR description — verify every claim against the code, then prove the behavior with real data.
Workflow
Work top to bottom. Each step feeds the next.
1. Pull the PR
gh pr view <N> --json title,body,author,baseRefName,headRefName,state,additions,deletions,changedFiles,labels
gh pr diff <N> --name-only # scope
gh pr diff <N> # full diff
2. Load the rules you'll judge against
Read .rules/*.md for every changed file's domain before forming opinions. The common offenders:
react.md#2 —setStatecalled synchronously inuseEffect(async-after-awaitis fine). Very common in modal/form PRs.react.md#1 — exhaustiveuseEffect/useMemo/useCallbackdeps.typescript.md— noany.rust.md— pure helpers extracted + unit-tested;mod.rsstays orchestration-only; public APIs re-exported on refactor.general.md— English-only comments; new user-facing strings need i18n keys insrc/i18n/locales/*.
3. Verify the PR's claims — don't take them on faith
For each factual assertion in the description, prove it:
- "Uses
common.search/common.noResultsi18n keys" →grep '"search"\|"noResults"' src/i18n/locales/en.json. - "Removing
searchable={false}enables search" → read the component default (grep searchable src/components/ui/Select.tsx). - "Reads
default_portfrom the manifest" → check the type (src/types/plugins.ts) — is it nullable? What's the fallback? - New Tauri command → confirm it's registered in
src-tauri/src/lib.rsinvoke_handler.
4. Impact analysis (per CLAUDE.md)
For each non-trivial symbol the PR touches, run gitnexus_impact({target, direction: "upstream"}) and note blast radius / risk. Flag HIGH/CRITICAL.
5. Check out the PR branch — this is mandatory before running tests
Your local checkout is almost never the PR branch, so its tests silently don't exist (cargo test <name> → "0 filtered out", vitest count looks normal but is missing the new cases). Always:
git branch --show-current # confirm you are NOT on the PR branch
gh pr checkout <N> # handles forks; working tree must be clean
Tell the user which branch they were on so they can return (git checkout <their-branch>).
6. Run the PR's tests on that branch
pnpm vitest run <changed test files> # e.g. tests/utils/k8s.test.ts
cd src-tauri && cargo test --lib <module>::<test_mod> # full path; partial names filter to 0
Report real pass counts, not "looks fine."
7. Prepare REAL test data + a manual test plan
This is the highest-value step and the reason to review locally. Decide what real inputs the feature consumes, stage them, and verify the change's core command/logic against them directly before handing off. Pattern:
- Identify the external input (a K8s cluster, a DB, a file, an API).
- Stand it up reproducibly — write a manifest/seed to
/tmp/pr<N>-*.{yaml,sql}covering every code path: the happy path, the path that must NOT trigger, and the rejected/edge path. - Run the change's actual command against it to prove the backend logic (e.g. run the exact
kubectl ... -o jsonpath=...the PR added and confirm output). - Hand the user a table: input → expected behavior, one row per test case, plus a cleanup command.
Example (K8s dialog PR): minikube + manifest with a single-port service (auto-prefill should fire), a multi-port service (must not fire), and a pod (skipped).
8. Verdict
Concise: what's solid, numbered non-blocker notes (rule + practical impact), blockers separately, and an approve / approve-with-nits / request-changes call.
Gotchas
| Symptom | Cause |
|---|---|
cargo test → "0 passed, N filtered out" | Wrong branch (PR code absent) or partial test name — use the full module::test_mod path. |
| Tests "pass" but new cases missing | Reviewing on your own branch, not the PR branch. Do step 5. |
Number(v) on a cleared input → 0 | Empty form field coerces to 0; watch for it silently disabling defaults/guards. |
| Hardcoded fallback survives a "remove hardcoding" PR | Grep the magic value in the diff's neighborhood — a ?? 3306 often lingers. |
Common Mistakes
- Reviewing the diff without reading
.rules/→ missing the project's own conventions. - Trusting the PR description's claims instead of grepping for proof.
- Running tests on the wrong branch and reporting false green.
- Handing the user "test it manually" with no data staged — defeats the point of a local review.
Reviews
No reviews yet. Be the first.
Related
Verification Before Completion
Evidence before assertions, always
Writing Plans
Turn specs into phased implementation plans
Test-Driven Development
Red → green → refactor discipline for any feature or bugfix
mh install skills/tabularis-pr-review