Open source · Real-time collaboration
Every thread.One point of focus.
Pull requests, tasks, and team discussions. Unified in one real-time cockpit.

Three tools. Zero cohesion.
Crux is where they meet.
crux · cockpit
LIVEPull request
#482 Rate-limit auth endpoints
dana.k · feat/rate-limit-auth
export async function limit(ip) {
- const max = 100;
+ const max = await tier(ip);
+ return bucket(ip, max);
+ export const limits = tiers;
}
arun: fallback if redis is down?
checks passing · 41s
Task
CRX-214
In ReviewRate-limit auth endpoints
✓ tier limits defined
✓ redis fallback noted
✓ pr linked to sprint
· load test staging
moved to review · 2m ago
Threads
arun · just now
Can we fall back to defaults if Redis is down?
dana.k · 1m
adding a tier default today
jm · 2m
CI is green, lgtm otherwise
4 replies in thread →
Reply synced to Slack…
# pr-review
3 newdana.k2:14 PM
the migration diff looks bigger than the ticket — thoughts?
arun1:58 PM
reviewing after standup, ping me if CI is red
4 replies in thread →
crux/api · #482
+142 −38
export async function limit(ip: string) {
- const max = 100;
+ const max = await tier(ip);
+ return tokenBucket(ip, max);
}
Sprint 24
3 issuesThe product
The Cockpit.
Every pull request with its tasks, threads, and checks attached. One glance, full context.
crux · crux/api · pull #482
#482 Rate-limit auth
OPENopened by dana.k · 2h ago
Linked task
CRX-214
Rate-limit auth endpoints
Reviewers
feat/rate-limit-auth → main
staging · deployed
auth/limiter.ts
+24 −6
export async function limit(ip: string) {
- const max = 100;
+ const max = await tier(ip);
+ return tokenBucket(ip, max);
}
aruncommented · 2m
Can we fall back to defaults if Redis is down?
Live sync
CRX-214
In Progress
CRX-214
In Review
#pr-review · just now
arun: left comments on limiter.ts
build / test
◌ pending
build / test
✓ passing · 41s
REVIEWER BRIEF2 flags
- · Auth path changed — hot traffic route
- · No schema or contract changes
A reviewer brief, before you ask.
The moment a PR opens, Crux scans the diff and writes the two-minute brief you would have written yourself.
Critical-path analysis
Spots changes that cascade across services before they merge.
Schema & contract detection
Flags migrations and breaking API changes automatically.
Test coverage gaps
Names the paths your diff leaves untested.
Security pre-filter
Surfaces auth, secrets, and permission risks first.
payments/refund.ts
+61 −12
export async function refund(id: string) {
- const rate = await fetchRate(id);
+ const rate = await fetchRate(id, { fresh: true });
+ await ledger.append(id, rate);
return settle(id, rate);
}
REVIEWER BRIEFscan · 34s
- · Rate fetch bypasses cache — latency risk on refund spikes
- · Ledger append is untested — add failure-path test
Sandbox · in the works
Test the PR. Not your patience.
One-click, production-like environments for every pull request. No local setup, no stale branches, no "trust me, it works".
guest · sandbox
$ crux sandbox open 482
● environment ready · 41s · 3 users synced
GitHub
Linear
Slack
Crux augments your stack. It doesn't replace it.