Changelog
RSSCurrent: v0.2.0 · Alpha. Alpha: limits and features may change; no SLA.
Privacy 1.4
Privacy 1.4: to count a new account once, Faultline keeps a one-way hash of the account ID for 48 hours.
One free scan without an account; sign up for 5 a month
Without an account you now get 1 free scan per IP address every 30 days, down from 3 a day, so signing up never lowers your allowance. When it is used, the results page shows a sign-up prompt: a free account unlocks 5 scans a month. The free plan is unchanged at 5 scans a month. The 2,000 limit for a free scan now counts characters, so accented letters and emoji count as one each. Terms and Privacy are now version 1.3: Privacy states the new allowance and how long its counter lasts. The landing page, the API docs and the README show the new allowance.
Tax at checkout, Terms and Privacy 1.2
Paid checkout now asks where you are buying from and calculates sales tax or VAT from that location. Prices exclude tax. Paid plans are available in the United States, and to businesses with a VAT number in the United Kingdom and the EU. Terms and Privacy are now version 1.2: a tax clause, the data Stripe receives for tax, and Enterprise billing under a written agreement.
Personal plan returns to 100 scans a month
The Personal plan ($19/mo) includes 100 scans a month again, replacing the 25 set earlier the same day. The upgrade prompt at the monthly limit stays. Pro (500 scans a month) and Enterprise (custom) are unchanged. Pricing page, FAQ, llms.txt and llms-full.txt show 100.
Results page fixes: scan ring, limit panel, Critique panel, refresh
The scanning ring now stops when a scan is refused or fails, instead of spinning on. The "Monthly scan limit reached" panel is readable on the light theme. The Critique panel is labelled while it loads and shows a clear "unavailable" state if it cannot load. The free-scan meter no longer shows for signed-in users. Refreshing the results page now shows the saved result instead of running a new scan.
Hosted scans run on managed keys; bring-your-own-key removed
Hosted scans run on Faultline's managed provider keys. The "Run on your own model" option, the API key indicator and the related docs have been removed, and any key saved in your browser by an earlier version is cleared. The demo banner now points to the free tier: 3 scans a day, no account needed.
Multi-model consensus verification is Enterprise-only
Multi-model consensus verification is now part of the Enterprise plan. It is requested only for Enterprise accounts, and the scan service enforces the same rule on its side. Free, Personal and Pro scans do not use consensus verification.
Enterprise is sales-led: Custom pricing, Contact sales
The Enterprise card on /pricing now shows "Custom" and a "Contact sales" button that opens the nxtg.ai contact form. There is no self-serve checkout for Enterprise. Scan allowance is set in the contract. The pricing FAQ, llms.txt and llms-full.txt match.
Personal plan is 25 scans a month, with an upgrade prompt at the limit
The Personal plan ($19/mo) now includes 25 scans a month. When you reach your monthly limit, the results page shows "Monthly scan limit reached" with an "Upgrade plan" link, in place of a generic "Scan failed" message. Pricing page, FAQ, llms.txt and llms-full.txt show the new number.
nxtg.ai signature on the sign-in and sign-up pages
A small "made with a heart by nxtg.ai" line now sits under the sign-in and sign-up cards. The sign-in card itself is unchanged.
New insight: verifying autonomous agent output
Added /insights/verifying-autonomous-agents. It explains per-claim verification of agent output as the verification half of agent governance, cites the NXTG governance paper, and includes an FAQ. It states which Faultline mounts are available today.
Results workspace: resizable columns, visible quota, live status
On desktop, the results page has a visible drag handle between the source text and the scan report, so you can resize the columns. Anonymous scans show how many free scans remain today. While a scan runs, the report column shows a live status line ("Extracting claims", "Verifying 3 of 8") and stays visibly active.
Monthly scan count is tracked separately from history
Your monthly scan usage is now stored on its own, separate from scan history. Clearing your history stays a data-control action and no longer changes your monthly scan count.
New docs page: /docs/agent-guard
Added /docs/agent-guard. It covers the three ways to run Faultline on agent output (the MCP server, the faultline guard command and the GitHub Action) and a copy-paste Claude Code Stop hook. Each mode is labelled for whether it verifies against live sources. The MCP package is marked "not yet published", so no install command on the page points to a missing package.
Homepage sample claim corrected
The "Policy claim" example scan on the homepage contained an incorrect statement about EU AI Act watermark rules. It has been replaced with a sample that does not state wrong legal facts.
Claim highlights now appear on real scans
Highlights in the source text were missing on real scans because extracted claims rarely match the source word for word. Claims are now matched in three steps: exact text, text with normalised whitespace, then closest sentence. On a recorded real scan, highlights went from 0 of 8 claims to 6 of 6 distinct sentences.
Scan experience upgrades, PDF export fix, EU AI Act output off by default
Live scans now show real progress: the stepper, ETA and per-claim log lines update as claims are verified, and the scan log shows an elapsed-time counter so it never looks frozen. The Pro PDF export works again, and shows a clear "PDF failed" message if it cannot finish. The claim graph keeps moving for every verdict mix, and hovering a claim card traces its edges. The verdict, summary and trust gauge stay pinned at the top of the results rail. On the landing page, the paste box sits above the fold. EU AI Act output is now hidden by default and can be turned on from a switch in the results page Compliance slot. A scan with claims that could not be checked is no longer saved and shown again on back-navigation.
Framework pills read "Maps to"; SOC 2 badge removed
The framework row on the homepage and /pricing now starts with "Maps to", so NIST AI RMF and GDPR read as frameworks Faultline maps findings to, not certifications held. The SOC 2 badge was removed, because SOC 2 is an attestation of an organisation's own controls. ISO 42001 now reads "Compliance mapping for ISO 42001".
Security updates, enterprise subdomain, pricing FAQ and structured data
Next.js was updated to 16.2.9 and all four high-severity dependency advisories were cleared. enterprise.faultline.nxtg.ai now serves the pricing page. The workspace dashboard no longer waits forever on its loading skeleton if the sign-in service fails to load. /pricing gained an FAQ and structured data for search engines, and /readiness gained page metadata.
Plainer hero: "We check the receipts on AI output"
The homepage headline is now "We check the receipts on AI output." The subheadline says what Faultline does: it verifies each claim against live sources, scores the risk, and shows what it could not verify. Page descriptions and keywords were reworded to match. The scan history page no longer waits forever on its loading skeleton if the sign-in service fails to load: after 3 seconds it shows history saved in your browser.
New /readiness page for security questionnaires
Added /readiness, a landing page for teams asked how they verify AI output. It lists the five regulatory regimes Faultline can map to, links to a free scan, and shows a sample audit preview with an unlock prompt.
Checkout and sign-in fixes
If checkout cannot start, /pricing now shows an error message instead of failing silently. After a successful purchase you land on the dashboard with a welcome banner, and a cancelled checkout returns you to /pricing. Signing in from /pricing returns you to /pricing, not to nxtg.ai.
GTM reshape: agent governance, not date-pinned compliance
Repositioned Faultline as the agent-governance category leader rather than a date-pinned compliance product. Hero eyebrow now reads "Agent Governance"; framework pills broadened to include NIST AI RMF and ISO 42001 alongside EU AI Act / SOC2 / GDPR / HIPAA / FDA; new marketplace-distribution row positions FW for AWS Marketplace · Azure · Salesforce AppExchange · ServiceNow Store · MCP. Brand subheadlines, root + compliance SEO metadata, JSON-LD featureList, and README all lead with "future-proof your agent stack" — EU AI Act demoted to one trigger context among many. Driven by the Digital Omnibus deferral signal (the April 28 trilogue ended without agreement; May 13 trilogue is next).
Claim Graph: connected SOTA visualization (UAT-7)
Replaced static Mermaid subgraph boxes with React Flow + dagre auto-layout. Argument sits at the root; every claim branches off with a verdict-colored edge (green solid "backs", red dashed "breaks", amber "wobbles", slate "leans on"). Animated flow on supported/contradicted edges, glow on threat nodes, hacker-palette dark theme throughout. Dropped mermaid + isomorphic-dompurify deps.
Scan UX: thinking ticker + punchy claim loading (UAT-8)
During per-claim verification gaps (~12s each on prod), the scan log now rotates pseudo-log lines ("consulting sources...", "weighing evidence...", "synthesizing verdict...") every 1.8s — faux but honest, since the backend LLM IS doing grounded search. Per-claim loading cards swapped faint shimmer for terminal-style "VERIFYING_" label with blinking cursor + animated scan-line sweep. Patience no longer wears thin during long scans.
UAT-4/5/6: latency ETA, onboarding unblock, stats counters
Scan ETA multiplier 2s/claim → 12s/claim (observed FP reality, no more under-promising). Cancel button now sits next to the progress stepper during in-flight scans. Onboarding modal replaced with a non-blocking bottom banner — hero scanner interactive from first paint. Stats counters (40,609 portfolio tests / 5 providers / 17 projects) now animate on mount instead of waiting for scroll.
Landing chrome cleanup (UAT-2/3) + back-button re-scan fix (UAT-1)
Removed the "pip install nxtg-atlas" ghost (different NXTG product) from hero + public/llms.txt + llms-full.txt. "Star on GitHub" now points at the correct faultline-web repo. Landing CLI card reframed as "For developers" with explicit "Same engine as the web tool — different surface" copy + enterprise teaser (SSO · audit trails · custom frameworks · dedicated support). Back-button from /pricing to /results no longer re-runs the LLM scan — results now hydrate from sessionStorage cache.
FR-5: /weakest + /critique end-to-end
Faultline-Pro shipped the two endpoints (commit 682f337 on FP). FW-side had been dark-launching for weeks with a 404-masked-by-401 bug; with both layers fixed, the weakest-link + critique panels on /results now populate with real LLM-generated analysis (argument strength, fragility scores, improved-prompt rewrites). No more perpetual shimmer on the verification section.
P0 Dependabot remediation — 19 vulns → 0
Show HN pre-launch security clearance: non-forcing npm audit fix + manual patch-in-minor bump on next (16.2.0 → 16.2.4). Zero vulnerabilities before going live.
Demo timing calibrated against real scans
Demo mode playback cadence recalibrated from ground-truth live scan data (147s for 8 claims → ~18s/claim on verify stage). Demo now runs ~16s end-to-end instead of 2.5s — feels like real work without boring the user.
FR-4 spec + live-scan reference corpus
Filed FR-4 (embed full ComplianceReport in /scan/stream complete event — closes FR-1 parity gap). Added docs/live-scans/ with the canonical financial-claims reference payload + HTML/PDF reports for UI calibration.
SOTA UX: sources auto-surfaced on contradicted claims
Grounding sources appear inline on contradicted/mixed claims without needing to expand. No click required.
SOTA UX: cache hit indicator
Reads X-Cache: HIT from Faultline-Pro. Shows "↑ result from cache" in results footer.
SSE translation layer for progressive streaming
fp-proxy.ts translateFPStreamEvents() maps FP stream events to faultline-web format. Ready for POST /scan/stream when FR-1 ships.
PLG Unblock — free tier quota + anonymous scan system
Free-plan users now use their 5 scan/month quota instead of being hard-blocked. Anonymous users (no account) get 3 real scans/day via Cloudflare Turnstile + IP-based quota. Demo mode is now explicit opt-in with a "See a demo instead →" escape hatch.
PDF authority upgrade + easter egg
PDF exports now include FAULTLINE-YEAR-XXXX finding IDs, sub-second timestamps, SHA-256 scan fingerprint for tamper evidence, and a base64-encoded promo code hidden in PDF Author metadata. Renders with classification banner, severity color bars, and confidential footer.
Demo Mode — Zero-Friction Scan
Unauthenticated users get a full, realistic scan replay with streaming UX, trust gauge, weakest-link analysis, and compliance report — no account or API key required. DEMO banner on all demo screens. A post-scan key-entry CTA also shipped here; it was removed on 2026-09-30 because the scan backend never used a user-supplied key.
Scan UX Upgrade — Streaming Terminal + Progress Ring
Live claim-extraction log streams to a terminal panel during scanning. Individual claim cards flash in as verifications complete. Circular progress ring replaces linear bar. Pro PDF export added to export menu.
Export Menu — PDF, Markdown, Share
Export results as PDF (Pro), Markdown, or shareable link. Share generates a public scan URL backed by Vercel KV. PDF rendered with full trust score, compliance report, and claim table.
Homepage Redesign + Test Quality
Removed mock data from homepage. Customer-facing capabilities bar replaces internal metrics. CRUCIBLE audit: 36 hollow assertions replaced with specific checks.
FP Proxy Architecture
All scan logic moved to Faultline Pro API. FW proxies SSE streams and JSON responses. Zero local engine code.
Regulatory Framework Builder + Admin Tools
Custom compliance framework editor with KV storage. Bulk user import and audit log viewer for admins.
API Docs + Onboarding + Changelog
Interactive API documentation portal with 25 endpoints. First-time onboarding wizard with sample texts. Changelog page with RSS feed.
Audit Log Viewer
Admin audit trail at /admin/audit with searchable, filterable log of all user actions. CSV export for compliance. Fire-and-forget instrumentation on scans, billing, and imports.
Bulk User Import
CSV-based bulk user import at /admin/import with Clerk invitations, polling progress, and welcome message support. Max 100 users per import.
Regulatory Framework Builder
Custom compliance framework CRUD via KV storage. HIPAA and FDA AI/ML pre-built templates. Admin editor UI with icon picker and section builder. Marketplace publishing for shared frameworks.
Production Billing
3-tier Stripe billing (Personal/Pro/Enterprise) with pricing page, scan limits, feature gating, and multi-plan webhook handling.
Compliance Wizard + Command Palette
Guided compliance wizard at /compliance with regulation templates (EU AI Act, SOC2, GDPR). Global command palette via Ctrl+K / ⌘K for quick navigation.
Team Workspaces
Clerk Organizations as workspaces with shared scan history, OrganizationSwitcher, and workspace dashboard.
Scan Status Polling + Notification Bell
Live polling via KV every 5s for in-progress scans. Notification bell for Pro users via Clerk publicMetadata.
Shared Scan Sessions + Batch Scan UI
Share scan results via unique URLs with Vercel KV storage. Batch scan UI for uploading multiple files at once.
Comparison View
Side-by-side comparison of two scan results with delta highlighting for trust scores, claims, and compliance.
Multi-Brand Theming + Embeddable Widget
Four branded subdomains with CSS custom properties. Embeddable verification widget with API key auth.
Admin Dashboard
Admin-only dashboard with user management and system overview. Role-based access control.
E2E Test Suite
Playwright end-to-end tests covering paste-and-scan, view-history, and export-report flows.
Performance Dashboard
Scan analytics with volume charts, trust trends, verdict distribution, and lowest-trust scans. CSS-only charts, zero new deps.
Stripe Billing Prototype
Subscription tiers with Stripe checkout, webhook handling, and paywall on compliance exports.
Clerk-Persisted Scan History
Server-side scan history stored in Clerk publicMetadata with localStorage merge on first sign-in.
Enterprise UI/UX Overhaul
Blue-tinted oklch dark theme, monospace typography system, redesigned claim cards, trust gauge, and compliance panel.
Compliance Report Panel
Inline compliance report with risk summary, finding cards, and regulatory mapping. Expandable panel in results view.
Scan History
Persistent scan history with localStorage. View, delete, and clear past scans. History page with search.
Tier 2 UI Polish
Claim highlight pulse animation, brand logo marks, refined card styling, and micro-interactions.
Clerk Auth Integration
Clerk authentication with sign-in modal, user button, and protected API routes. Session-based auth for all scan endpoints.
Tier 1 UI Polish
Trust score gauge animation refinements, claim card hover states, split-pane layout improvements, and keyboard shortcuts.
Test Coverage Push
Expanded test suite from 47 to 154 tests across 17 test files. Component, hook, and API route coverage.
MVP Launch
Initial launch of faultline.nxtg.ai with paste-box-to-results flow, SSE streaming scan, trust score gauge, export system, and subdomain middleware.