mirror of
https://github.com/garrytan/gstack.git
synced 2026-05-02 03:35:09 +02:00
docs: add Greptile integration section to README
Personal endorsement, two-layer review narrative, full UX walkthrough transcript, skills table updates. Add Greptile training feedback loop to TODO.md future ideas.
This commit is contained in:
@@ -19,8 +19,8 @@ Eight opinionated workflow skills for [Claude Code](https://docs.anthropic.com/e
|
||||
|-------|------|--------------|
|
||||
| `/plan-ceo-review` | Founder / CEO | Rethink the problem. Find the 10-star product hiding inside the request. |
|
||||
| `/plan-eng-review` | Eng manager / tech lead | Lock in architecture, data flow, diagrams, edge cases, and tests. |
|
||||
| `/review` | Paranoid staff engineer | Find the bugs that pass CI but blow up in production. Not a style nitpick pass. |
|
||||
| `/ship` | Release engineer | Sync main, run tests, push, open PR. For a ready branch, not for deciding what to build. |
|
||||
| `/review` | Paranoid staff engineer | Find the bugs that pass CI but blow up in production. Triages Greptile review comments. |
|
||||
| `/ship` | Release engineer | Sync main, run tests, resolve Greptile reviews, push, open PR. For a ready branch, not for deciding what to build. |
|
||||
| `/browse` | QA engineer | Give the agent eyes. It logs in, clicks through your app, takes screenshots, catches breakage. Full QA pass in 60 seconds. |
|
||||
| `/qa` | QA lead | Systematic QA testing with structured reports, health scores, screenshots, and regression tracking. Three modes: full, quick, regression. |
|
||||
| `/setup-browser-cookies` | Session manager | Import cookies from your real browser (Comet, Chrome, Arc, Brave, Edge) into the headless session. Test authenticated pages without logging in manually. |
|
||||
@@ -338,6 +338,70 @@ I want the plane landed.
|
||||
|
||||
---
|
||||
|
||||
## Greptile integration
|
||||
|
||||
[Greptile](https://greptile.com) is a YC company that reviews your PRs automatically. It catches real bugs — race conditions, security issues, things that pass CI and blow up in production. It has genuinely saved my ass more than once. I love these guys.
|
||||
|
||||
The problem with any automated reviewer is triage. Greptile is good, but not every comment is a real issue. Some are false positives. Some flag things you already fixed three commits ago. Without a triage layer, the comments pile up and you start ignoring them — which defeats the purpose.
|
||||
|
||||
gstack solves this. `/review` and `/ship` are now Greptile-aware. They read Greptile's comments, classify each one, and take action:
|
||||
|
||||
- **Valid issues** get added to the critical findings and fixed before shipping
|
||||
- **Already-fixed issues** get an auto-reply acknowledging the catch
|
||||
- **False positives** get pushed back — you confirm, and a reply goes out explaining why it's wrong
|
||||
|
||||
The result is a two-layer review: Greptile catches things asynchronously on the PR, then `/review` and `/ship` triage those findings as part of the normal workflow. Nothing falls through the cracks.
|
||||
|
||||
It also learns. Every false positive you confirm gets saved to `~/.gstack/greptile-history.md`. Future runs auto-skip known FP patterns for your codebase. And `/retro` tracks Greptile's batting average over time — so you can see whether the signal-to-noise ratio is improving.
|
||||
|
||||
### Example
|
||||
|
||||
```
|
||||
You: /ship
|
||||
|
||||
Claude: [syncs main, runs tests, pre-landing review...]
|
||||
|
||||
Greptile found 3 comments on this PR:
|
||||
|
||||
[VALID] app/services/payment_service.rb:47 — Race condition:
|
||||
concurrent charges can double-debit. Recommend DB-level advisory
|
||||
lock around the charge block.
|
||||
→ https://github.com/you/app/pull/42#discussion_r123
|
||||
|
||||
[ALREADY FIXED] app/models/user.rb:12 — Missing null check
|
||||
on email before downcase.
|
||||
→ Already fixed in commit abc1234. Auto-replying.
|
||||
|
||||
[FALSE POSITIVE] lib/auth.rb:88 — "Token comparison should
|
||||
use constant-time comparison." We already use
|
||||
ActiveSupport::SecurityUtils.secure_compare here.
|
||||
→ https://github.com/you/app/pull/42#discussion_r125
|
||||
|
||||
Fixing the race condition in payment_service.rb...
|
||||
Applied advisory lock. Committed: fix: address Greptile
|
||||
review — advisory lock on concurrent charges
|
||||
|
||||
The auth token comment is a false positive — we're already
|
||||
using secure_compare.
|
||||
|
||||
Options for the false positive:
|
||||
A) Reply to Greptile explaining (recommended)
|
||||
B) Fix it anyway
|
||||
C) Ignore
|
||||
|
||||
You: A
|
||||
|
||||
Claude: Replied to Greptile. Re-running tests after the fix...
|
||||
All tests pass. Continuing to version bump.
|
||||
|
||||
[creates PR with Greptile Review section in body]
|
||||
PR: https://github.com/you/app/pull/42
|
||||
```
|
||||
|
||||
Three Greptile comments. One real fix. One auto-acknowledged. One false positive pushed back with a reply. Total extra time: about 30 seconds. And the PR body has the full audit trail.
|
||||
|
||||
---
|
||||
|
||||
## `/browse`
|
||||
|
||||
This is my **QA engineer mode**.
|
||||
|
||||
@@ -103,6 +103,7 @@
|
||||
- [ ] Trend tracking across QA runs — compare baseline.json over time, detect regressions (P2, S)
|
||||
- [ ] CI/CD integration — `/qa` as GitHub Action step, fail PR if health score drops (P2, M)
|
||||
- [ ] Accessibility audit mode — `--a11y` flag for focused accessibility testing (P3, S)
|
||||
- [ ] Greptile training feedback loop — export suppression patterns to Greptile team for model improvement (P3, S)
|
||||
|
||||
## Ideas & Notes
|
||||
- Browser is the nervous system — every skill should be able to see, interact with, and verify the web
|
||||
|
||||
Reference in New Issue
Block a user