|
| 1 | +# LastSaaS Version Notes |
| 2 | + |
| 3 | +## v1.2 — March 1, 2026 |
| 4 | + |
| 5 | +### Product Analytics & Telemetry |
| 6 | +- **Conversion funnel dashboard** — visualize the customer journey from visitor to paid subscriber with conversion rates at each step (Visitors → Signups → Plan Page Views → Checkouts → Paid Conversions → Upgrades) |
| 7 | +- **SaaS KPIs** — MRR, ARR, ARPU, LTV, churn rate, trial-to-paid conversion rate, median time to first purchase, active subscriber count with trend sparklines |
| 8 | +- **Retention cohort analysis** — weekly or monthly cohort retention heatmap tracking user engagement over time |
| 9 | +- **Engagement metrics** — DAU/WAU/MAU for paying subscribers, average sessions per user, top features by usage, credit consumption trend |
| 10 | +- **Custom event explorer** — browse all telemetry event types, view trend charts, filter by name and time range |
| 11 | +- **Telemetry Go SDK** — `telemetry.Track()`, `TrackBatch()`, `TrackPageView()`, `TrackCheckoutStarted()`, `TrackLogin()` for zero-overhead in-process event recording |
| 12 | +- **Telemetry REST API** — anonymous endpoint for page views (rate-limited at 60/min per IP) and authenticated endpoints for custom events (120/min per user) |
| 13 | +- **Auto-instrumentation** — registration, email verification, login, checkout, subscription activation/cancellation, and plan changes tracked automatically with no configuration |
| 14 | +- **365-day retention** with MongoDB TTL auto-expiration |
| 15 | + |
| 16 | +### MCP Server (AI Admin Access) |
| 17 | +- **26 read-only tools** across 13 categories for AI-powered admin access |
| 18 | +- **2 resources** — `lastsaas://dashboard` and `lastsaas://health` for automatic context |
| 19 | +- Tool categories: About, Dashboard, Tenants, Users, Financial, Logs, Health, Config, Plans, Announcements, Promotions, Security, Webhooks |
| 20 | +- API key authentication with root-tenant scope |
| 21 | +- Stdio transport compatible with Claude Desktop and Claude Code |
| 22 | +- MCP registry manifests for discoverability |
| 23 | + |
| 24 | +### System Health Monitoring |
| 25 | +- Automatic node registration with 30-second heartbeat |
| 26 | +- Metrics collection every 60 seconds: CPU, memory, disk, network, HTTP request stats, MongoDB stats, Go runtime |
| 27 | +- HTTP metrics middleware with percentile latency tracking (p50/p95/p99) |
| 28 | +- Threshold-based alerting with configurable warning/critical levels |
| 29 | +- 30-day data retention via MongoDB TTL indexes |
| 30 | +- Real-time dashboard with 8 time-series charts (Recharts) |
| 31 | +- Aggregate, all-nodes overlay, and single-node filter modes |
| 32 | +- Time range selection: 1h, 6h, 24h, 7d, 30d |
| 33 | +- Integration health panel (MongoDB, Stripe, Resend, Google OAuth connectivity) |
| 34 | +- Send Test Email button for Resend integration verification |
| 35 | + |
| 36 | +### Authentication Enhancements |
| 37 | +- **MFA/TOTP** two-factor authentication with setup wizard and recovery codes |
| 38 | +- **Magic link** passwordless login via email |
| 39 | +- **Google, GitHub, and Microsoft OAuth** with automatic account linking |
| 40 | +- **Passkey/WebAuthn** support for passwordless authentication |
| 41 | +- **Dark/light theme** preference per user |
| 42 | +- **Session management** — list active sessions, revoke individual or all sessions |
| 43 | +- Password reset for OAuth-only accounts |
| 44 | +- Auto-verify email when accepting a team invitation |
| 45 | +- Account lockout after failed login attempts |
| 46 | + |
| 47 | +### Billing & Commerce |
| 48 | +- **Per-seat pricing model** with included seats, min/max seat limits |
| 49 | +- **Free trials** with configurable trial days per plan and trial abuse prevention |
| 50 | +- **Stripe Tax** integration for automatic tax calculation |
| 51 | +- **Promotion codes and coupons** — create and manage via admin UI with expiration dates and product restrictions |
| 52 | +- **Credit bundles** for one-time credit purchases |
| 53 | +- **PDF invoice generation** with company name, address, and tax breakdown |
| 54 | +- **Multi-currency support** with configurable default currency |
| 55 | +- **Refund and dispute handling** via webhook handlers |
| 56 | + |
| 57 | +### White-Label Branding |
| 58 | +- Custom app name, tagline, and logo (text, image, or both modes) |
| 59 | +- Theme colors with auto-generated shade palettes |
| 60 | +- Custom fonts (body and heading), favicon, media library |
| 61 | +- Custom landing page, custom pages at `/p/{slug}` with SEO metadata |
| 62 | +- CSS injection, head HTML injection (analytics, meta tags) |
| 63 | +- Configurable navigation sidebar with entitlement-gated items |
| 64 | +- Auth page customization (login/signup headings and subtext) |
| 65 | +- Dashboard HTML customization, Open Graph image support |
| 66 | + |
| 67 | +### API Keys & Outgoing Webhooks |
| 68 | +- `lsk_`-prefixed API keys with admin and user authority scopes |
| 69 | +- SHA-256 hashed storage, last-used tracking |
| 70 | +- 19 webhook event types across billing, team lifecycle, user lifecycle, credits, and security |
| 71 | +- HMAC-SHA256 payload signing with `whsec_`-prefixed secrets |
| 72 | +- Delivery tracking, test events, secret regeneration, event type filtering |
| 73 | + |
| 74 | +### Admin Interface Improvements |
| 75 | +- **Three-tier admin access**: user (read-only), admin (read-write), owner (destructive) |
| 76 | +- **Root Members management** — manage the admin team with invitations and role changes |
| 77 | +- **Admin impersonation** — log in as any user for debugging |
| 78 | +- **Financial dashboard** — revenue, ARR, DAU, MAU time-series with charting |
| 79 | +- **Onboarding flow** for new users |
| 80 | +- **Announcements** — publish system-wide announcements |
| 81 | +- **In-app messaging** — send messages to individual users |
| 82 | +- **CSV export** for users and tenants |
| 83 | +- Multi-select severity toggles in log viewer |
| 84 | + |
| 85 | +### Built-in API Documentation |
| 86 | +- Interactive HTML reference at `/api/docs` with expandable endpoint cards |
| 87 | +- Markdown reference at `/api/docs/markdown` for external documentation |
| 88 | +- Comprehensive webhook event reference with payload descriptions |
| 89 | +- Auto-versioned from the VERSION file |
| 90 | +- Embeddable via iframe (CSP configured) |
| 91 | + |
| 92 | +### CI/CD & Testing |
| 93 | +- GitHub Actions CI workflow with Go build, lint, and test |
| 94 | +- Codecov integration with coverage badges |
| 95 | +- Comprehensive backend test suite (handlers, services, middleware) |
| 96 | +- Frontend test setup with Vitest |
| 97 | +- MongoDB JSON Schema validation for data integrity |
| 98 | +- Hybrid validation: Go struct tags + MongoDB schema enforcement |
| 99 | + |
| 100 | +### Infrastructure & Performance |
| 101 | +- Scalability improvements: batch queries, bounded concurrency, fail-open rate limiting |
| 102 | +- Server-side app name injection into index.html (eliminates title flicker) |
| 103 | +- Compile-time version embedding via ldflags |
| 104 | +- CLI tools: `setup`, `start`/`stop`/`restart`, `change-password`, `send-message`, `transfer-root-owner`, `config`, `version`, `status`, `mcp` |
| 105 | + |
| 106 | +### Security Hardening |
| 107 | +- Security headers (CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy) |
| 108 | +- Rate limiting on authentication and telemetry endpoints |
| 109 | +- NoSQL injection protection with regex input escaping |
| 110 | +- XSS protection via DOMPurify for injected HTML |
| 111 | +- Webhook signature verification (Stripe inbound, HMAC-SHA256 outbound) |
| 112 | +- System log injection detection with automatic critical alerts |
| 113 | +- Refresh token rotation with family-based revocation |
| 114 | +- Billing attack vector hardening |
| 115 | + |
| 116 | +--- |
| 117 | + |
| 118 | +## v1.0 — February 22, 2026 |
| 119 | + |
| 120 | +### Initial Public Release |
| 121 | +- Multi-tenant architecture with role-based access control (owner/admin/user) |
| 122 | +- Email/password authentication with bcrypt hashing and JWT tokens |
| 123 | +- Email verification via Resend |
| 124 | +- Stripe Checkout integration for subscription billing |
| 125 | +- Stripe Billing Portal for customer self-service |
| 126 | +- Plan management with entitlements (boolean and numeric) |
| 127 | +- Billing enforcement middleware |
| 128 | +- Dual credit buckets (subscription + purchased) with configurable reset policies |
| 129 | +- Team invitations and member management |
| 130 | +- Ownership transfer between members |
| 131 | +- Per-tenant activity logs |
| 132 | +- User profile management and account deletion |
| 133 | +- Admin dashboard with user and tenant management |
| 134 | +- Configuration variable editor (strings, numbers, enums, templates) |
| 135 | +- Dockerized deployment (Go + React + Alpine) |
| 136 | +- Fly.io deployment configuration |
| 137 | +- Graceful shutdown with connection draining |
| 138 | +- Auto-versioning with database migration on startup |
0 commit comments