SCANYOURVIBEby Exacting Labs
AI napisało kod. My sprawdzamy, co przeoczyło.
Niezależny audyt bezpieczeństwa, jakości kodu i gotowości aplikacji do produkcji.
- Web GUI
- REST API
- MCP
- app/checkout
- page.tsx
- app/api
- auth/login/route.ts
- orders/[id]/route.ts
- lib
- supabase/admin.ts
- cart.ts
- tests
- orders.test.ts
Krytyczneroute.ts:9
Brak kontroli właściciela zasobu.
Użytkownik może odczytać cudze zamówienie po zmianie ID.
Działa to jeszcze nie znaczy, że jest gotowe.
- Użytkownicy się logująPo zmianie ID w adresie widać cudze zamówienia
- Płatności przechodząŻaden test nie sprawdza webhooka płatności
- Aplikacja działa na produkcjiKlucz administratora bazy trafia do przeglądarki
ScanYourVibe pokazuje tę różnicę, zanim zobaczą ją Twoi użytkownicy.
Pięć obszarów. Jeden raport z dowodami.
Przykładowy audyt fikcyjnej aplikacji. Wybierz kategorię.
Cudze zamówienia po zmianie ID w adresie
app/api/orders/[id]/route.ts:9
const order = await db.order.findUnique({
where: { id: params.id },
})
↳ brak warunku userId: session.user.id
- Co to znaczy
- Każdy zalogowany użytkownik zobaczy dane innych klientów.
- Naprawa
- Dodaj warunek właściciela i test dostępu z innego konta.
Ta sama wycena liczona w trzech miejscach
lib/cart.ts:41 · app/checkout/page.tsx:88 · app/api/orders/route.ts:57
// cart.ts Math.round(total * 100) / 100
// page.tsx total.toFixed(2)
// route.ts Math.floor(total * 100) / 100
- Co to znaczy
- Kwota w koszyku może różnić się od tej na fakturze.
- Naprawa
- Jeden moduł wyceny dla wszystkich trzech miejsc.
Strona checkout robi wszystko naraz
app/checkout/page.tsx · 612 linii
import { db } from '@/lib/db'
import { stripe } from '@/lib/stripe'
import { sendMail } from '@/lib/mailer'
import { calcTotal } from '@/lib/cart'
- Co to znaczy
- Każda zmiana wyglądu strony ryzykuje błąd w płatnościach.
- Naprawa
- Wydziel logikę do warstwy usług; strona tylko ją wywołuje.
Webhook płatności bez żadnego testu
app/api/webhooks/stripe.ts
ZmierzoneBrak raportu pokrycia w repozytorium, więc nie podajemy procentu.
WywnioskowaneŻaden z 14 plików testów nie wywołuje tego handlera.
- Co to znaczy
- Zepsute potwierdzanie płatności przejdzie testy i trafi do klientów.
- Naprawa
- Testy dla poprawnego, powtórzonego i podrobionego zdarzenia.
Brak limitu prób logowania
app/api/auth/login/route.ts:6
const { email, password } = await req.json()
const user = await verifyPassword(email, password)
↳ brak limitu prób na IP i konto
- Co to znaczy
- Hasła można zgadywać bez żadnych ograniczeń.
- Naprawa
- Limit prób na IP i konto, blokada po serii błędów.
Ograniczenia tego audytu
- Aplikacja nie była uruchamiana. Wyniki pochodzą z kodu, konfiguracji i testów.
- Folder
mobile/był poza zakresem. - Raport to ocena z dowodami, nie certyfikat bezpieczeństwa ani zgodności.
Korzystaj ze ScanYourVibe po swojemu.
Audyty w przeglądarce, w Twoim pipeline albo prosto z pracy agenta AI. Ten sam silnik i te same wyniki.
MCP
Twój asystent AI sam zleca audyt, pobiera wyniki i naprawia to, co znalazł.
- Claude Code, Cursor i inni klienci MCP
- Audyt przed każdym merge
- Wyniki z dowodem w rozmowie
REST API
Audyt w CI, w wewnętrznych narzędziach albo w Twojej platformie.
- Audyt każdej wersji przed wydaniem
- Webhook po zakończeniu
- Bramka merge według wagi wyników
Web GUI
Uruchamiasz audyt w przeglądarce i dostajesz wyniki opisane prostym językiem.
- Bez budowania integracji
- Dla founderów i zespołów
- Ponowny audyt po poprawkach
Twój kod. Twoje narzędzia. Niezależna weryfikacja.
Audyt działa osobno od narzędzia, które napisało kod. Każdy wynik ma dowód, który sprawdzisz sam.
Dlaczego drugi model AI to za mało?
Poproszenie innego modelu o opinię samo w sobie nie czyni przeglądu niezależnym. W ScanYourVibe niezależność to zasada architektury: oddzielamy implementację od weryfikacji, a wnioski opieramy na dowodach z kodu, nie na deklaracjach.
Uzyskaj wczesny dostęp.
Napiszemy, gdy otworzymy dostęp, i zaprosimy Cię do testów. Bez spamu.
Dziękujemy. Napiszemy, gdy otworzymy dostęp.
Jeśli ten adres był już zapisany, nic się nie zmienia: jesteś na liście raz.
ScanYourVibe tworzy Exacting Labs, zespół, który buduje software i narzędzia do pracy z AI. Zobacz też Exacting Agents i Live-ready.
Nazwy Cursor, Claude Code, Codex, Lovable, Bolt i v0 należą do ich właścicieli. ScanYourVibe nie jest z nimi powiązany.