saravanakumardb1
460ed6d0c0
feat(ai-diagnostics): add admin UI insights page [4.1]
2026-03-03 12:15:09 -08:00
saravanakumardb1
30583a1768
feat(diagnostics): implement Phase 1.5 — event bus, audit, rate limiting
...
1.5.2 Event Bus: Add warn to noopLog, update comments
1.5.3 Audit: Already implemented in all handlers
1.5.4 Rate Limiting: Add diagnostics keys (10/hr, 12/min, 100/min)
Delivery Templates: Add 4 diagnostics email templates (ready for wiring)
Tests: Update count to 12 templates (was 8)
All 839 tests passing
2026-03-03 08:19:41 -08:00
saravanakumardb1
3ded5ad751
fix(diagnostics,test): fix flaky test and test configuration
...
- Add DB_PROVIDER=memory to vitest config for diagnostics tests
- Fix flaky timestamp comparison in 'should update a session' test
- Add 10ms delay between create and update
- Use toBeGreaterThanOrEqual instead of strict inequality
- All 17 diagnostics tests now pass
2026-03-03 00:01:20 -08:00
saravanakumardb1
fdaffdb13c
docs(feedback): fix 8 bugs/gaps identified in systematic review
...
- Fix inconsistent screenshotUrl fields (removed, SAS generated on-demand)
- Fix blob path pattern to match feedbackScreenshots container
- Clarify flow: direct upload to final container (no temp/move)
- Add rate limiting specs to endpoint table
- Clarify access control: users submit but cannot view (security)
- Remove sas.ts from appendix (not created)
- Align size limits to 5MB consistently
- Add missing screenshotContentType and screenshotSizeBytes
2026-03-03 00:00:14 -08:00
saravanakumardb1
1b11db3f6f
feat(broadcasts,surveys): Phase 1 complete - backend modules
...
- broadcasts/types.ts: Broadcast, BroadcastTarget, BroadcastMetrics, InAppMessage
- broadcasts/repository.ts: CRUD + delivery tracking + read receipts
- broadcasts/targeting.ts: evaluateTarget(), semver, FNV-1a hash
- broadcasts/routes.ts: Admin CRUD + public endpoints (14 routes)
- surveys/types.ts: Survey, Question, SurveyResponse, conditional logic
- surveys/repository.ts: CRUD + analytics + CSV export
- surveys/routes.ts: Admin CRUD + public endpoints (13 routes)
- cosmos-init.ts: 7 new containers with TTL policies
- server.ts: Register broadcastRoutes + surveyRoutes
Implements Phase 1 of platform_BROADCAST_SURVEY_ROADMAP.md
2026-03-02 23:51:23 -08:00
saravanakumardb1
6a23a02cd4
fix(diagnostics): BUG-4, BUG-5, BUG-7, BUG-8 - race condition, transactions, test isolation, auth validation
...
- BUG-4: Add optimistic concurrency control with retry to updateSessionStats
- BUG-5: Document transaction limitations in batch operations
- BUG-7: Fix test isolation with unique productIds per test run
- BUG-8: Add session ownership validation to ingest endpoints
2026-03-02 23:47:14 -08:00
saravanakumardb1
4ffb28d8d2
fix(diagnostics): BUG-3 - add authentication check to /diagnostics/config endpoint
2026-03-02 23:45:36 -08:00
saravanakumardb1
4cb8b499af
fix(diagnostics): BUG-1, BUG-2 - DRY violation - centralize generateId and buildPk in types.ts
2026-03-02 23:43:11 -08:00
saravanakumardb1
fb71981e53
test(diagnostics): add diagnostics.test.ts with 14+ tests for Phase 1
2026-03-02 23:38:21 -08:00
saravanakumardb1
a66a689d7d
feat(diagnostics): Phase 1 complete - types, repository, routes
...
- types.ts: Session, Trace, Log, Screenshot schemas with Zod validation
- repository.ts: CRUD operations with composite partition keys
- routes.ts: REST endpoints for session management and data ingest
TODOs for Phase 2:
- TODO-1: Event bus integration
- TODO-2: PII redaction implementation
- TODO-6: PII redaction in log ingest
- TODO-7: Fatal log alerting
- TODO-8: Blob SAS token generation
2026-03-02 23:36:59 -08:00
saravanakumardb1
f272a44bbe
feat(diagnostics): add repository.ts with session, trace, log, screenshot CRUD
2026-03-02 23:34:35 -08:00
saravanakumardb1
f51c352452
feat(diagnostics): add types.ts with session, trace, log, screenshot schemas
2026-03-02 23:32:27 -08:00