When you runDocumentation Index
Fetch the complete documentation index at: https://docs.lintliot.com/llms.txt
Use this file to discover all available pages before exploring further.
npx lintliot init, LintLiot inserts itself at the front of your request pipeline — before routing, before your middleware, before any of your code runs. This page explains what happens from that point on: the 7-day learning phase, the request lifecycle on every inbound call, what changes when enforcement activates, and how your Security Score is calculated.
The 7-day learning phase
After your first request arrives, LintLiot automatically enters a passive observation window. For 7 days it watches traffic without changing how your app behaves (beyond standard WAF rules). During this time it builds five behavioral baselines specific to your application:| Baseline | What it measures |
|---|---|
| Traffic | Requests per minute by hour of day and day of week |
| Geographic distribution | Which countries your users request from |
| User behavior | Requests per session, endpoint variety per user |
| Authentication | Login attempt rate, failure rate, device variety |
| Data access | Records returned per API response, per user per day |
Your app is protected throughout learning mode. WAF rules, bot detection, IP blocklist checks, and standard rate limiting are all active from the first request. Learning mode only affects the personalized behavioral thresholds.
The request lifecycle
Every inbound request passes through up to seven checks in sequence before your application code runs. Each check runs in under 1ms — the total SDK overhead is under 1ms at p99.- Allow — the request continues to the next check
- Block — a
403or429response is returned immediately; the request never reaches your code - Monitor — the request passes but the event is logged for analysis
Enforcement mode
On Day 8, you receive an email and a dashboard notification: your app’s security profile is ready. A single button enables enforcement mode. When you enable enforcement, several things change: Rate limiting becomes personalized. Instead of a generic request limit, the threshold becomes:baseline mean + (3 × baseline standard deviation). An IP that your app normally sees 2 requests per minute from would need to reach about 8–10 requests per minute before being rate-limited — not an arbitrary flat number.
Anomaly detection activates blocking. Patterns that were logged-only during learning now trigger automatic responses. This includes:
- Brute force — 3 failed logins from the same IP in 60 seconds triggers a 10-minute block; 30+ failures escalates to 24 hours
- Credential stuffing — 20 unique IPs targeting the same account with failures in 5 minutes blocks all involved IPs and alerts you
- Impossible travel — a user logging in from two locations too far apart for the elapsed time invalidates the second session and sends you an immediate critical alert
- Data exfiltration — a user pulling records at more than 3σ above their normal volume triggers throttling and an alert
| Pattern | Protection applied |
|---|---|
/admin*, /api/admin* | Admin role required |
/delete*, /remove*, /destroy* | Re-authentication if session is over 30 minutes old |
/export*, /download*, /report* | Egress monitoring, rate limited to 10 requests/hour |
/payment*, /billing*, /checkout* | Full request payload logged for audit trail |
/bulk*, /batch* | Record count monitoring with exfiltration threshold |
The security score
Your Security Score (0–100) is a single number that reflects your app’s overall security posture. It updates immediately whenever something relevant changes. The score is calculated as:Score bands
| Score | Status | What it means |
|---|---|---|
| 90–100 | Excellent | No critical issues. Safe to share your Security Certificate with enterprise prospects. |
| 75–89 | Good | Minor open issues. Nothing critical. |
| 60–74 | Fair | Some open findings that need attention. |
| 40–59 | Poor | Active risks. Prioritize resolving findings. |
| 0–39 | Critical | Active threats or critical vulnerabilities present. |
What triggers a score update
The score recalculates immediately when:- A new scan finding is added or resolved
- A compliance control status changes
- A critical security event is detected
- You enable or disable learning mode
- Emergency lockdown is activated or lifted
