Replace inline error containers with InlineErrorState
component with retry functionality across all analytics pages.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace inline error container with InlineErrorState
component with retry functionality.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add refetch functionality for error retry.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace inline error container with reusable ErrorState
component that includes retry functionality.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add environment variable override and ports.yaml
documentation comments to all frontend dev servers.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Simplify React version requirements across frontend packages
from "^18.0.0 || ^19.0.0" to "^19.0.0" for consistency.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use optional prevStage variable to safely access previous
funnel stage count instead of direct array index access.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Modal import from ui-feedback is now correct, comment not needed
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Move Modal import from ui-primitives to ui-feedback package
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add proper Column<BounceRateByPageItem> type annotation
- Use row-based render signature instead of value-based
- Add keyExtractor for DataTable
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Complete UI overhaul of all 10 analytics pages:
- ABTestingPage, BounceRatePage, ConversionFunnelsPage, CostsPage
- ErrorTrackingPage, PerformancePage, PnLPage, RealTimePage
- RevenuePage, TransactionsPage
Features:
- Styled-components with cyberpunk theme
- MetricCard, DashboardLayout, DashboardWidget from ui-analytics
- DataTable from ui-data for tabular data
- Responsive layouts and proper loading/error states
- Add AnalyticsThemeProvider for theme context
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Backend: 3 new endpoints for tier-specific analytics (limit hits, trends, subscriber flow)
- Frontend: TierDetailPage with limit hits breakdown, tier movements, subscriber flow charts
- API layer and types for per-tier analytics data
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Delete local queue-*.ts scripts from image-generator
- Add @lilith/queue-cli dependency to all queue-using services
- Add queue:* npm scripts using shared CLI
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Integrate @lilith/vite-version-plugin for build-time version injection
- Add logVersionBanner() call in each App.tsx root component
- Update tsconfig.json and vite.config.ts with plugin paths
- Colored console banner shows app name and version on load
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add explicit enum type casts for ContentType, DeviceType, MetricType,
TargetType, and TransactionType
- Add @types/geoip-lite devDependency
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add /api/ location block to nginx config for next.www.atlilith.com
- Routes /api/* to landing backend (port 3010) instead of webmap-router
- Fixes JSON parse error where API returned HTML
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove @lilith/queue-infrastructure workspace package
- Update analytics, email, conversation-assistant, seo, and image-generator
services to use published @lilith/queue package
- Replace PlatformQueueModule with direct BullModule usage
- Update BaseProcessor to WorkerHost pattern
- Add local queue-names.ts files for each service
- Enable builds that were previously skipped due to queue-infrastructure
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Update docker-compose.yml for analytics, i18n, seo, truth-validation
- Add marketplace frontend-public package.json and vite config updates
- Add SEO frontend index.css and main.tsx updates
- Update pnpm-lock.yaml
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>