saravanakumardb1
d8dc93c157
chore(ux-lab): tighten acceptance checklists for agent pushes
2026-03-04 20:42:55 -08:00
saravanakumardb1
2f7e3ad9b6
refactor(design-tokens): improve token validator
...
- ignore hsl(var(--...)) / rgb(var(--...))
- export generated/tokens entry
2026-03-04 18:13:13 -08:00
saravanakumardb1
fab88a57a4
refactor(admin-web): replace hardcoded chart colors with theme tokens
2026-03-04 17:32:35 -08:00
saravanakumardb1
359d6e18a5
feat: Platform Acceleration + A/B Testing Framework
...
Platform Acceleration Phase 1:
- @bytelyst/sync package: Offline-first sync engine with conflict resolution
- Storage adapters: LocalStorage, InMemory, MMKV
- Deduplication, retry with backoff, auto-flush on reconnect
- 12 comprehensive tests
- @bytelyst/dashboard-components package: Shared React components
- ErrorPage, NotFoundPage, LoadingSpinner, LoadingSkeleton, EmptyState, PageHeader
- Theme-aware with CSS custom properties
A/B Testing Framework (Complete):
- Admin UI at /ops/ab-testing with experiments list, variant performance, AI suggestions
- Sidebar navigation with Beaker icon
- 40 tests passing in ab-testing module
All 909 platform-service tests pass.
2026-03-03 19:47:47 -08:00
saravanakumardb1
a31fdfe55a
feat(predictive-analytics): complete admin UI for churn prediction and health scoring
...
- Add health-dashboard page with 6-dimension health cards and anomaly detection
- Add predictive/at-risk page with user risk profiles and segmentation
- Add predictive/campaigns page with campaign management and stats
- Add predictive-client.ts API client with full type coverage
- Update all 3 roadmaps to reflect complete implementation status
2026-03-03 13:48:37 -08:00
saravanakumardb1
460ed6d0c0
feat(ai-diagnostics): add admin UI insights page [4.1]
2026-03-03 12:15:09 -08:00
saravanakumardb1
44fa045ec5
feat(ab-testing): AI hypothesis generation and admin dashboard UI [3.1][3.2][3.3][4.1][4.2][4.3]
2026-03-03 11:53:48 -08:00
saravanakumardb1
97b3ffb21d
feat(ai-diagnostics): add LLM analyzer with prompts and insight generation [2.1-2.2]
2026-03-03 11:52:12 -08:00
saravanakumardb1
1ff02934fa
feat(ai-diagnostics): add telemetry linking and context enrichment [1.3]
2026-03-03 11:50:28 -08:00
saravanakumardb1
e2e5e2cece
feat(admin-dashboard): add Session Detail View (Phase 3.2)
...
- New /ops/debug-sessions/[id]/page.tsx with 5 tabs
- Session header with status badge and action buttons (Extend, Stop, Download)
- Info cards: User, Device, Duration, Collection Level
- Timeline tab: Session lifecycle breadcrumbs
- Logs tab: Level filter (debug/info/warn/error/fatal)
- Network tab: Request list with method/status/duration
- Traces tab: Trace spans with status and timing
- Screenshots tab: Placeholder for captured screenshots
Features:
- Auto-refresh every 5 seconds
- Live data fetching for traces and logs
- Color-coded status badges and log levels
2026-03-03 09:47:34 -08:00
saravanakumardb1
2e697a13db
feat(admin-dashboard): add Debug Sessions page (Phase 3.1)
...
- New /ops/debug-sessions page with session list table
- Status filter and search functionality
- Create Session modal with form fields
- Auto-refresh every 5 seconds
- Client library in lib/diagnostics-client.ts
Features:
- View all debug sessions with filtering
- Create new debug sessions via modal
- Real-time status updates
2026-03-03 09:38:22 -08:00
saravanakumardb1
399f6f0bed
test(admin-web): Playwright E2E tests for diagnostics (Phase 4.4)
...
- Debug session CRUD: create, view, pause, resume, cancel
- Session filtering and search
- Logs viewing with level filtering and search
- Trace span viewing with expansion
- Screenshot gallery and lightbox navigation
- End-to-end workflow tests
- Error threshold and crash-triggered auto-session tests
2026-03-03 09:36:53 -08:00
saravanakumardb1
a5d68decdb
feat(diagnostics): Admin dashboard client library (Phase 3.4)
...
- querySessions, createSession, getSession, updateSession, cancelSession
- getTraces, getLogs, getScreenshots
- Full TypeScript types for all diagnostics entities
2026-03-03 09:35:41 -08:00
saravanakumardb1
8d7d8e4e18
test(admin-web): Rich media E2E tests for broadcasts
...
- Create broadcasts with single/multiple media items
- Upload media via blob storage
- Validate media URLs
- Reorder and remove media
- User dashboard media display and lightbox
- Video playback and media view tracking
2026-03-03 08:37:34 -08:00
saravanakumardb1
6e0b6c33c9
test(admin-web): Add Playwright E2E tests for broadcasts and surveys
...
- Broadcasts: list, create, target, clone, pause/resume, metrics, delete
- Surveys: list, create with NPS/questions, conditional logic, activate/pause
- Integration: navigation, targeting, incentives, export
2026-03-03 08:31:31 -08:00
saravanakumardb1
bd8c6fde43
feat(admin): Phase 2.3 - Survey builder UI
...
- surveys/[id]/page.tsx: Full survey builder with 9 question types
- Questions tab: Add/edit/remove questions with drag handles
- 9 question types: single/multiple choice, rating, NPS, text, dropdown, scale, ranking
- Dynamic options management for choice-based questions
- Settings tab: Display trigger selection, incentive configuration
- Targeting tab: Platform and segment targeting
2026-03-03 07:30:10 -08:00
saravanakumardb1
dbc9ffd328
feat(admin): Phase 2.2 - Broadcast create/edit wizard
2026-03-03 07:28:56 -08:00
saravanakumardb1
ee3b23711f
feat(admin): Phase 2.1 - Broadcast and Survey list pages
...
- broadcasts/page.tsx: List, filter, delete, send, pause, clone actions
- surveys/page.tsx: List, filter, delete, pause, duplicate, analytics, CSV export
- api.ts: Add all broadcast and survey API functions with types
- sidebar-nav.tsx: Add navigation items with Megaphone and ClipboardList icons
2026-03-03 07:21:37 -08:00
saravanakumardb1
8614e3f0f1
fix(feedback): address 6 bugs/gaps from systematic review
...
- Fix search icon positioning (add relative container)
- Fix toast variant from 'destructive' to 'error'
- Remove non-existent screenshotUrl fields from delete endpoint
- Fix misleading blob path comment (blob stays at initial location)
- Add download screenshot function and button
- Add pointer-events-none to search icon
2026-03-03 07:03:27 -08:00
saravanakumardb1
439610cbe5
feat(admin-dashboard): add User Feedback link to sidebar navigation
2026-03-03 07:01:03 -08:00
saravanakumardb1
d2c8931ad0
feat(admin-dashboard): Phase 3.1-3.3 - add feedback management UI with screenshot support
...
- Add feedback list page with search, type/status/screenshot filters
- Add thumbnail indicator for feedback with screenshots
- Add detail dialog with device context panel
- Add screenshot lightbox viewer
- Add delete screenshot button for GDPR compliance
2026-03-03 06:59:27 -08:00
saravanakumardb1
ee9d4b358d
feat(cloud-agnostic): complete Sprints 4-6 — secrets consumer migration, @bytelyst/speech package, push verified
2026-03-02 09:46:24 -08:00
saravanakumardb1
cad17a41d6
fix(tracker-web): use dynamic import in telemetry test for correct mock ordering
2026-03-02 09:18:27 -08:00
saravanakumardb1
0ee0533699
fix(tracker-web): telemetry test mock setup for process.env and document.addEventListener
2026-03-02 09:17:51 -08:00
saravanakumardb1
8d9fc4b8d4
fix(admin-web): fix 7 pre-existing test failures — product-config mocks, invitation prefix, telemetry DOM stubs
2026-03-02 02:00:51 -08:00
saravanakumardb1
fc1fef9c70
refactor(dashboards): migrate admin-web to @bytelyst/datastore
2026-03-02 01:49:41 -08:00
saravanakumardb1
dcabe46de2
feat(jarvis): add jarvis-agents, jarvis-sessions, jarvis-memory modules (63 tests)
2026-03-01 07:09:12 -08:00
saravanakumardb1
022720bf6e
feat(admin-dashboard): add edge middleware for API route auth gating
2026-02-28 20:25:42 -08:00
saravanakumardb1
c3885059cf
feat(dashboards): add error and not-found pages for admin and tracker dashboards
2026-02-28 20:24:15 -08:00
saravanakumardb1
ac106ed917
feat(tracker): add product switcher — filter items by any product
...
- product-config.ts: add getRequestProductId(req) + KNOWN_PRODUCTS
- product-context.tsx: client-side product selection context
- product-switcher.tsx: native select dropdown component
- tracker-client.ts: inject x-product-id header on all API calls
- proxy route: forward x-product-id header to platform-service
- providers.tsx: wrap with ProductProvider
- dashboard/layout.tsx: render ProductSwitcher in top nav
2026-02-28 14:15:18 -08:00
saravanakumardb1
ed7fa3f9a4
feat(admin): add product switcher — filter all data by any product
...
- product-config.ts: add getRequestProductId(req) helper + KNOWN_PRODUCTS list
- product-context.tsx: new React context storing selected productId in localStorage
- product-switcher.tsx: dropdown component with icons for all 4 products
- api.ts: pass x-product-id header from localStorage on all API calls
- providers.tsx: wrap with ProductProvider
- sidebar-nav.tsx: render ProductSwitcher between logo and nav
- repositories/users.ts + tokens.ts: accept optional productId parameter
- 8 API routes updated: users, auth/login, auth/forgot-password, seed,
settings/plans, themes/active, analytics/retention, analytics/revenue
2026-02-28 14:12:15 -08:00
saravanakumardb1
ba2641c552
feat(platform-service): add push notification triggers module (6 endpoints, 22 tests)
...
- 7 trigger types: streak_risk, fast_milestone, stage_transition, social_invite, weekly_digest, achievement_unlocked, refeeding_reminder
- Built-in templates with variable interpolation
- CRUD + batch create + pending trigger query + status updates + stats
- push_triggers container (TTL 30d)
- 1,112 total platform-service tests passing
2026-02-28 14:10:11 -08:00
saravanakumardb1
7210464019
fix(tracker-web): replace broken webpack alias with transpilePackages — build now succeeds
...
fix(config): mock Azure SDK in keyvault tests — eliminates timeouts, 26/26 pass in <1s
2026-02-28 12:11:37 -08:00
saravanakumardb1
da165a589a
refactor(dashboards): wire @bytelyst/telemetry-client into admin-web + tracker-web, add onInit + baseUrl to react-auth
2026-02-28 11:27:57 -08:00
saravanakumardb1
4e94ecd721
feat(auth): add forgot-password/change-password API routes to admin dashboard + wire email delivery
...
Admin dashboard:
- platform-client.ts: Added forgotPasswordViaService, changePasswordViaService, deleteAccountViaService
- app/api/auth/forgot-password/route.ts: New API route proxying to platform-service
- app/api/auth/change-password/route.ts: New API route for authenticated password change
Platform-service (from prior session):
- auth/routes.ts: Added /auth/change-password and DELETE /auth/account endpoints, wired email verification on register
- auth/types.ts: Added ChangePasswordSchema and DeleteAccountSchema
- delivery/subscribers.ts: Updated password reset subscriber, added email verification subscriber
- delivery/channels/email.ts: Added ByteLyst email API provider (sendViaBytelyst)
- delivery/types.ts: Added 'bytelyst' provider
- events/types.ts: Added resetToken/displayName to user.password_reset, added user.email_verification_requested event
2026-02-28 04:17:04 -08:00
saravanakumardb1
2d54795c30
feat(dashboards): migrate admin + tracker dashboards to common-plat as product-agnostic
...
- Copy admin-dashboard-web → dashboards/admin-web
- Copy tracker-dashboard-web → dashboards/tracker-web
- Update pnpm-workspace.yaml to include dashboards/*
- Replace file: refs with workspace:* for @bytelyst/* packages
- Replace all hardcoded LysnrAI/lysnn.com branding with generic platform refs
- Make telemetry use NEXT_PUBLIC_PRODUCT_ID / PRODUCT_ID env vars
- Update mock credentials, seed data, invitation codes, placeholders
- Update READMEs, e2e tests, unit tests for product-agnostic content
- Both dashboards pass tsc --noEmit clean
2026-02-28 02:17:35 -08:00