saravanakumardb1
d7aa90b021
feat(mcp-server): 4 MCP tool gaps + 3 new A2A pipelines (Priority 3/6/7)
...
MCP tool gaps filled (DOMAIN_PRODUCTS.md alignment):
- jarvis.memory.create — POST /jarvis/agents/:agentId/memory (sessionId, type, content, importance, tags, expiresAt)
- jarvis.teams.listMembers — GET /jarvis/teams/:teamId/members (role, status, joinedAt)
- nomgap.fasting.getSession — GET /fasting/sessions/:id (client func already existed, MCP tool was missing)
- peakpulse.weather.getSnapshot — extracts weather field from peakpulseSessionGet response
New A2A pipelines (all registered in server.ts):
- transcript-extraction-pipeline.ts: lysnrai.transcripts.runExtractionPipeline
- TranscriptCollectorAgent -> ExtractionBatchAgent -> ExtractionReportAgent
- Queries transcripts missing extractedAt, runs extraction, returns batch report + dryRun support
- sync-conflict-pipeline.ts: chronomind.sync.diagnoseConflicts
- ConflictDetectorAgent -> SyncStateInspectorAgent -> DiagnosticsSessionAgent -> ConflictReportAgent
- Queries telemetry for sync_conflict events, classifies pattern, creates diagnostics session on conflict
- route-safety-pipeline.ts: peakpulse.sessions.assessSafety
- SessionDataAgent -> RouteProfileAgent -> SafetyAnalysisAgent -> SafetyReportAgent
- Fetches GPS + weather, evaluates UV/wind/altitude/speed risk factors, enriches with extraction entities
Client additions (jarvis-client.ts):
jarvisMemoryCreate, jarvisTeamsListMembers + JarvisTeamMemberDoc interface
MCP server total: 93 tools across 17 namespaces
2026-03-05 15:18:21 -08:00
saravanakumardb1
7e47151918
fix(mcp-server): 3 A2A pipeline bug fixes from audit
...
- nomgap-client: add electrolyte_reminder + extended_fast_warning to PushTriggerType; rename scheduledAt → scheduledFor to match backend schema; fix startedAt type string → number (backend stores epoch ms)
- nomgap-tools: rename scheduledAt → scheduledFor in nomgap.push.fire tool schema + execute call
- safety-monitor-pipeline: fix FastStateResult.startedAt type number; use epoch ms directly instead of new Date(string)
- sync-diagnostics-pipeline: remove peakpulseGetStats (returns aggregate stats not sync queue); derive queueDepth from recentFailureCount telemetry; add lastSuccessfulSync derivation from events
2026-03-05 14:54:21 -08:00
saravanakumardb1
ea16f8df19
feat(mcp-server): add 6 platform.schemas.* + platform.sdks.* tools from DOMAIN_PACKAGES_AND_SDKS.md
...
- platform.schemas.telemetryEvent: TelemetryEventDoc field schema + clustering keys + privacy rules
- platform.schemas.diagnosticsSession: DebugSession schema + full endpoint map
- platform.sdks.swiftCapabilities: ByteLystPlatformSDK 13 modules with phase + description
- platform.sdks.kotlinCapabilities: Android/KMP SDK feature inventory + KMP adoption
- platform.sdks.crossProductAdoption: 8 capabilities x 6 products adoption matrix + known gaps
- platform.sdks.auditActivity: live telemetry query to verify SDK wired + event breakdown per platform/module
- MCP server now at 97 tools across 16 namespaces
2026-03-05 14:25:01 -08:00
saravanakumardb1
654de4ed2e
feat(mcp-server): add 4 A2A pipelines — DailyBrief, MarketplaceCert, SafetyMonitor, SyncDiagnostics
...
- DailyBriefGenerationPipeline (mindlyst.brief.generate): fans out memory items across all brains, runs memory-insight extraction per brain, assembles and stores DailyBriefDoc
- MarketplaceCertificationPipeline (jarvis.marketplace.runCertification): ingestion validation, content safety via triage extraction, heuristic quality scoring, approve/reject/pending_human_review decision
- SafetyMonitorAgent (nomgap.safety.check + nomgap.safety.getThresholds): 5-tier threshold table, push notifications, A2A handoff for 72h+ fasts
- SyncDiagnosticsAgent (peakpulse.sync.diagnose): failure pattern classification from telemetry, conditional platform diagnostics session, log/trace capture, root cause + extraction entity report
- Add 3 missing client functions: mindlystBriefCreate, nomgapFastingSessionGet, jarvisMarketplaceGetListing
- MCP server now at 91 tools across 16 namespaces
2026-03-05 14:22:25 -08:00
saravanakumardb1
26a9868380
feat(mcp-server): add 5 missing tools for existing backend routes
...
New tools backed by routes that existed but had no MCP surface:
- maintenance.getSchedule: GET /settings/maintenance/schedule (list upcoming windows)
- maintenance.deleteWindow: DELETE /settings/maintenance/schedule/:id (cancel window)
- lysnrai.apiTokens.revoke: DELETE /api-tokens/:id (revoke token by ID)
New client functions:
- maintenanceGetSchedule, maintenanceDeleteWindow (platform-client.ts)
- lysnraiApiTokenRevoke (lysnrai-client.ts)
2026-03-05 14:09:00 -08:00
saravanakumardb1
5a3987bd9f
fix(mcp-server): jarvis.marketplace.certify routes to wrong endpoint on rejection
...
The backend has two separate endpoints:
POST /marketplace/admin/:id/approve
POST /marketplace/admin/:id/reject
Previously jarvisMarketplaceCertify always called /approve regardless of
the decision field — rejections would silently approve listings.
Fix: derive action from decision.decision ('approved' → 'approve', else 'reject')
and use the correct endpoint path.
2026-03-05 14:06:19 -08:00
saravanakumardb1
f70001de74
fix(mcp-server): audit fixes — 3 bugs + 2 new tools
...
Bug fixes:
- lysnrai: add lysnrai.sessions.get tool (GET /sessions/:id existed but had no MCP surface)
- nomgap: add nomgap.autophagyConfidence tool (POST /fasting/autophagy-confidence had no tool)
- chronomind: fix syncStatus description 'paused' -> 'pending' (wrong field name)
New client functions: lysnraiSessionGet, nomgapAutophagyConfidence (with typed interfaces)
Root bug fixed in learning_voice_ai_agent commit 42aa931:
GET /transcripts/:id was missing from backend — lysnrai.transcripts.get was always 404-ing
2026-03-05 14:05:03 -08:00
saravanakumardb1
0f57a48168
feat(mcp-server): add 19 platform ops tools — flags.*, jobs.*, maintenance.*, settings.*, webhooks.*
...
flags (5): list, get, upsert (create-or-update), delete, killSwitch
jobs (4): list, get, trigger, listRuns
maintenance (3): getCurrent (admin full), set, scheduleWindow
settings (3): get, update, checkKillSwitch
webhooks (7): listSubscriptions, create, get, update, delete, listDeliveries, test, rotateSecret
All backed by existing platform-service endpoints — no new backend changes.
MCP server now has 84 tools across 16 namespaces.
2026-03-05 13:46:15 -08:00
saravanakumardb1
33dd530d5f
feat(mcp-server): add tracker.* namespace — 13 tools for items, votes, comments, public roadmap
...
- tracker-client functions appended to platform-client.ts (tracker is part of platform-service)
- tracker.items.{stats,list,get,create,updateStatus,delete}
- tracker.votes.{toggle,list}
- tracker.comments.{list,add,delete}
- tracker.public.{roadmap,stats}
- All 13 tools require admin role; productId forwarded as x-product-id
2026-03-05 13:36:55 -08:00
saravanakumardb1
481760fba1
feat(mcp-server): fill DOMAIN_PRODUCTS.md tool gaps — +17 tools across 6 products
...
- mindlyst: +memory.get (single item with full TriageResult)
- lysnrai: +transcripts.get, +orgs.get
- jarvis: +agents.create, +marketplace.listPending/certify/suspend/feature
- chronomind: +timers.create, +households.list
- nomgap: +protocols.list, +bodyStages.list
- peakpulse: +sessions.get
2026-03-05 13:15:22 -08:00
saravanakumardb1
c9022665d6
fix(mcp-server): add /api prefix to all product backend clients (critical — all routes 404 without it)
2026-03-05 13:10:08 -08:00
saravanakumardb1
fcb3befa23
feat(mcp-server): Phase 3 — product namespaces for ChronoMind, NomGap, PeakPulse (13 more tools)
2026-03-05 13:05:03 -08:00
saravanakumardb1
f780f0b409
feat(mcp-server): Phase 3 — product namespaces for MindLyst, LysnrAI, JarvisJr (22 new tools)
2026-03-05 13:01:05 -08:00
saravanakumardb1
852cb18a5c
refactor(mcp-server): replace redundant CreatedSession local interface with imported DebugSession in diagnostics-orchestrator
2026-03-05 12:40:06 -08:00
saravanakumardb1
00b0555c97
fix(fastify-core,mcp-server): add logLevel to ServiceAppOptions and wire config.LOG_LEVEL so log verbosity is actually honoured at runtime
2026-03-05 12:38:09 -08:00
saravanakumardb1
44800ed36b
fix(mcp-server): correct stale port comment 4006→4007 in server.ts; document CORS_ORIGIN and query limit vars in .env.example
2026-03-05 12:36:26 -08:00
saravanakumardb1
3e37b3d5a0
fix(mcp-server): handle ZodDefault in zodToJsonSchema so boolean/object fields with defaults emit correct JSON Schema types; clean up inline import in debug-pack
2026-03-05 12:35:27 -08:00
saravanakumardb1
c04c78aff4
fix(mcp-server): fix debug-pack cluster rendering to use correct field names, tighten TelemetryCluster type; fix test mock to include all required fields
2026-03-05 12:33:43 -08:00
saravanakumardb1
6cee9c20af
fix(mcp-server): correct TelemetryCluster type, remove productId QS dead code from telemetryClusters, remove redundant extend() in pipeline-tool
2026-03-05 12:32:34 -08:00
saravanakumardb1
0f044830fa
feat(mcp-server): Phase 2 A2A orchestration — DispatcherAgent, TelemetryAnalystAgent, DiagnosticsOrchestratorAgent, ReportWriterAgent, runIncidentPipeline runner + support.runIncidentPipeline MCP tool (10 tests)
2026-03-05 12:23:53 -08:00
saravanakumardb1
d1d643f782
feat(mcp-server): Milestone B — telemetry policy CRUD, cluster status, diagnostics cancel, extraction sidecar health; enforce expiresAt on createPolicy
2026-03-05 12:17:15 -08:00
saravanakumardb1
26d3403d5a
fix(mcp-server): zodToJsonSchema emits correct JSON type for number/boolean/array fields (was always string)
2026-03-05 12:09:38 -08:00
saravanakumardb1
22ad88dd13
fix(mcp-server): Dockerfile — copy all 33 workspace package.json files for complete pnpm --frozen-lockfile resolution
2026-03-05 12:07:03 -08:00
saravanakumardb1
9a298d50ef
fix(mcp-server): add missing jose + @fastify/cors deps; use ServiceError subclasses for 401/403; remove swagger option that crashed startup; add AbortSignal.timeout to platformFetch
2026-03-05 12:06:54 -08:00
saravanakumardb1
3bc8e0e14c
fix(mcp-server): move default port 4006 → 4007 (conflict with extraction-service Python sidecar); add Dockerfile + docker-compose service + CI workflow
2026-03-05 11:56:35 -08:00
saravanakumardb1
027e2163a0
feat(mcp-server): scaffold @bytelyst/mcp-server on port 4006 with 10 tools across 4 namespaces
...
- platform.telemetry.{query,clusters,metrics}
- platform.diagnostics.sessions.{list,create,get,update,getLogs,getTraces}
- extraction.{run,models,cacheStats}
- support.createDebugPack (compound: clusters + optional diag session + markdown summary)
- Role-gated (viewer/admin/super_admin), JWT auth via platform-service secret
- Proxies to platform-service:4003 and extraction-service:4005
- 4 Vitest tests passing, tsc --noEmit clean
2026-03-05 11:47:08 -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
dfeed4c10f
fix(diagnostics): add missing crypto import for randomUUID [BUG-5]
2026-03-03 12:27:03 -08:00
saravanakumardb1
8749aa211d
fix(feedback-client): update tests to use fetch instead of post
2026-03-03 12:26:02 -08:00
saravanakumardb1
7552b8c8e8
fix(diagnostics): remove unused updateSessionStats import [BUG-4]
2026-03-03 12:25:55 -08:00
saravanakumardb1
eb83b83035
fix(diagnostics): resolve FilterMap type error in performance-profile-repository [BUG-3]
2026-03-03 12:24:54 -08:00
saravanakumardb1
7714ab51fb
fix(events): add missing platform event schemas for campaign engine and notifications
2026-03-03 12:24:39 -08:00
saravanakumardb1
d80cf075a3
fix(diagnostics): add missing session_replays and performance_profiles cosmos containers [BUG-1]
2026-03-03 12:24:05 -08:00
saravanakumardb1
03cda3a74f
fix(platform-service): resolve type errors in diagnostics and ab-testing modules
2026-03-03 12:22:35 -08:00
saravanakumardb1
914e344a92
fix(feedback-client): correct ApiClient method usage and types
2026-03-03 12:20:43 -08:00
saravanakumardb1
05ad9dbedc
feat(diagnostics): Phase 4 - automated triggers, crash sessions, session replay, profiling [4.1][4.2][4.3][4.4]
2026-03-03 12:18:58 -08:00
saravanakumardb1
eab854375e
feat(ai-diagnostics): add proactive alerts API and complete [4.3]
2026-03-03 12:17:11 -08:00
saravanakumardb1
460ed6d0c0
feat(ai-diagnostics): add admin UI insights page [4.1]
2026-03-03 12:15:09 -08:00
saravanakumardb1
1cba69948f
feat(ai-diagnostics): add REST API routes [3.3]
2026-03-03 11:57:00 -08:00
saravanakumardb1
71cbb570ef
feat(ai-diagnostics): add query parser and executor [3.1-3.2]
2026-03-03 11:53:59 -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
8951ab2c92
feat(ai-diagnostics): add HDBSCAN clustering algorithm [1.2.3]
2026-03-03 11:49:05 -08:00
saravanakumardb1
783067e17d
feat(ab-testing): bucketing, statistics, guardrails, routes [1.2][2.1][2.2]
2026-03-03 11:48:50 -08:00
saravanakumardb1
917ea03af9
feat(ai-diagnostics): add vector search repository with cosmos integration [1.2.2]
2026-03-03 11:48:12 -08:00
saravanakumardb1
50b7e22985
feat(ai-diagnostics): add Azure OpenAI embedding pipeline [1.2.1]
2026-03-03 11:47:12 -08:00
saravanakumardb1
8cdddd7c23
feat(ai-diagnostics): implement error normalization and fingerprinting [1.1.3]
2026-03-03 11:45:52 -08:00
saravanakumardb1
a9b224749c
feat(ab-testing): add experiment types and cosmos containers [1.1]
2026-03-03 11:44:33 -08:00
saravanakumardb1
4de01269b5
feat(ai-diagnostics): add error clustering types and cosmos containers [1.1.1-1.1.2]
2026-03-03 11:44:23 -08:00
saravanakumardb1
fcbae17866
feat(platform-service): implement P0-1 - Module generator script (pnpm gen:module)
...
- Add gen-module.ts with full CLI interface
- Generate types.ts, repository.ts, routes.ts, and test.ts
- Support field types: string, number, boolean, date, datetime, enum, string[], number[]
- Add --dry-run flag for preview
- Register script in package.json
2026-03-03 10:05:55 -08:00
saravanakumardb1
8e90358960
feat(platform): PII Redaction library (Appendix D.1)
...
- 8 PII patterns: email, SSN, credit card, phone, IP, password/token, JWT, API key
- redactPII() for string redaction
- redactObject() for recursive object redaction
- redactLogMessage() for log entries with context
- containsPII() and getPIITypes() detection helpers
- Custom pattern registration
- Preset configurations: minimal, standard, aggressive
2026-03-03 09:37:53 -08:00
saravanakumardb1
3efdd97057
feat(broadcasts): Rich media support in backend types
...
- BroadcastMedia interface for image/video/gif/audio
- Extended BroadcastMetrics with media engagement tracking
- Updated CreateBroadcastSchema with media array validation
2026-03-03 08:36:00 -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
4bf18f4d4f
feat(platform-service): Phase 4.4 - Push notification wiring (FCM/APNS)
...
- push-notifications.ts: FCM and APNS delivery services
- Device token registration/management
- sendPushNotification() for bulk delivery
- Automatic token deactivation on APNS 410 responses
2026-03-03 08:05:21 -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
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
6f9b799cc4
fix(jobs): add missing 'warn' method to logger type in runner.ts
...
The JobContext type requires log.warn but runner.ts loggers only
defined info/error. This caused TypeScript errors when passing log
to job handlers.
- Add warn: (...a: unknown[]) => void to startRunner log param
- Add warn: (...a: unknown[]) => void to tick log param
- Add warn: (...a: unknown[]) => void to executeJob log param
2026-03-02 23:57:21 -08:00
saravanakumardb1
e712968d3d
test(feedback): Phase 1.5 - add screenshot and deviceContext schema tests
2026-03-02 23:56:59 -08:00
saravanakumardb1
ecb9f67c99
fix(broadcasts): Fix percentage rollout bucketing logic
...
- Use userId only as seed instead of userId + percentage
- Prevents users from being re-bucketed when rollout % increases
- Ensures deterministic assignment for phased rollouts
2026-03-02 23:56:42 -08:00
saravanakumardb1
e4681fbbb2
fix(broadcasts): Fix metrics increment bug in updateBroadcastMetrics
...
- Change from merge pattern to explicit increment pattern
- Each metric field is properly incremented instead of overwritten
- Prevents race condition data loss
2026-03-02 23:56:09 -08:00
saravanakumardb1
cfbaa92539
feat(feedback): Phase 1.3 - add SAS endpoint and screenshot view/delete routes
2026-03-02 23:55:47 -08:00
saravanakumardb1
b5fb2b683b
fix(surveys): Create missing surveys module
...
- types.ts: Survey, Question, SurveyResponse, conditional logic, validation
- repository.ts: CRUD + analytics + CSV export with proper type casting
- routes.ts: Admin CRUD + public endpoints (13 routes)
Fixes missing module from Phase 1 implementation
2026-03-02 23:54:59 -08:00
saravanakumardb1
8d2ba9c1cc
feat(feedback): Phase 1.2 - extend repository with screenshot support and blob path generation
2026-03-02 23:52:57 -08:00
saravanakumardb1
acfbd7c9d7
feat(feedback): Phase 1.1 - add screenshot fields and deviceContext to FeedbackDoc
2026-03-02 23:52:18 -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
d444a8dfea
feat(diagnostics): wire routes into server.ts
2026-03-02 23:37:34 -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
dea1521dd5
feat(diagnostics): add 4 Cosmos containers (sessions, traces, logs, screenshots) with TTL
2026-03-02 23:32:49 -08:00
saravanakumardb1
f51c352452
feat(diagnostics): add types.ts with session, trace, log, screenshot schemas
2026-03-02 23:32:27 -08:00
saravanakumardb1
038cf30aca
fix(jobs): implement stub job handlers with actual functionality
2026-03-02 10:19:15 -08:00
saravanakumardb1
41b32a840f
fix(extraction-service): export rate limit cleanup functions for graceful shutdown
2026-03-02 10:16:24 -08:00
saravanakumardb1
aeae62027f
fix(telemetry): remove redundant event.userId check in cluster affected users dedup
2026-03-02 10:13:47 -08:00
saravanakumardb1
e943f14608
fix(marketplace): prevent duplicate votes with vote tracking collection
...
- Add marketplace_votes container to cosmos-init.ts
- Add MarketplaceVoteDoc type and vote repository functions
- Fix vote endpoint to toggle votes (prevent unlimited voting)
- Fix listMyReports to filter by productId for data isolation
- Update report routes to pass productId to listMyReports
2026-03-02 10:12:33 -08:00
saravanakumardb1
770bc5ae51
feat(referrals): partition key migration to /referrerId with dual-write backfill
2026-03-02 10:04:57 -08:00
saravanakumardb1
3e05260a6f
feat(marketplace): generic template marketplace with listings, reviews, installs, certification
2026-03-02 10:02:54 -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
7ca2139418
refactor(storage): migrate to storage abstraction
2026-03-02 09:07:33 -08:00
saravanakumardb1
5401fad419
refactor(platform-service): migrate webhooks/routes and migrations/runner from cosmos.js to datastore
2026-03-02 02:02:47 -08:00
saravanakumardb1
b69abf44c7
refactor(platform-service): migrate remaining 14 repositories to @bytelyst/datastore
...
Migrated modules: audit, auth, invitations, items, jobs, licenses,
maintenance, notifications, subscriptions, telemetry, tokens, usage,
waitlist, webhooks.
Updated 4 test files (notifications, subscriptions, tokens, usage) from
Cosmos SDK mocks to MemoryDatastoreProvider.
Zero cosmos.js imports remain in modules/. All 66 test files pass (746 tests).
2026-03-02 01:06:24 -08:00
saravanakumardb1
e355cb0c1b
feat(platform-service): migrate 7 more repositories to @bytelyst/datastore (exports, plans, status, sessions, referrals, ip-rules, delivery) — 753/753 tests pass
2026-03-02 00:54:55 -08:00
saravanakumardb1
4d126cb051
feat(platform-service): migrate 6 repositories to @bytelyst/datastore (flags, settings, comments, votes, products, themes) — 756/756 tests pass
2026-03-02 00:51:03 -08:00
saravanakumardb1
b33d3cf2b3
feat(platform): add webhook subscriptions module, DB migration runner, Swagger UI — complete 23/25 roadmap items
2026-03-01 23:38:48 -08:00
saravanakumardb1
24d7896599
refactor(platform-service): migrate product-specific modules to product repo backends
...
Remove 23 product-specific module directories from platform-service:
- ChronoMind: timers, routines, households, shared-timers, webhooks
- JarvisJr: jarvis-agents, jarvis-sessions, jarvis-memory, jarvis-teams, marketplace
- NomGap: fasting-sessions, fasting-protocols, body-stages, social-fasting, meal-log, push-triggers
- PeakPulse: peak-sessions, peak-routes
- MindLyst: brains, memory, reflections, daily-briefs, streaks
Update server.ts: remove product module imports and registrations
Update cosmos-init.ts: remove product-specific container definitions
Clean up server.test.ts: remove 5 stale vi.mock() calls
Update AGENTS.md: add section 13 (product backends), update test counts
Platform-service tests: 759 passing (platform-common only)
Product backends: PeakPulse 32, ChronoMind 171, JarvisJr 198, NomGap 152, MindLyst 59
2026-03-01 20:38:32 -08:00
saravanakumardb1
92a6929238
fix(delivery): replace hardcoded product URL/name maps with dynamic product cache lookup
2026-03-01 17:44:54 -08:00
saravanakumardb1
2f199cb67a
fix(auth): replace hardcoded product ID lists with dynamic getAllProducts() in reset-password and verify-email
2026-03-01 17:43:32 -08:00
saravanakumardb1
bd7e78641e
fix(platform): replace Math.random() IDs with crypto.randomUUID() in 5 P2 modules
2026-03-01 17:42:28 -08:00
saravanakumardb1
a2461fc26a
fix(platform): replace 3 console.* calls with process.stdout/stderr in cosmos-init + server startup
2026-03-01 17:41:02 -08:00
saravanakumardb1
f97f7a0adb
fix(marketplace): validate agentListingIds/individualPrices length match in buildAgentPack (18 tests)
2026-03-01 17:04:28 -08:00
saravanakumardb1
573f54888c
fix(jarvis-teams): enforce maxMembers capacity in addMember, return null on full/missing team (25 tests)
2026-03-01 17:03:49 -08:00
saravanakumardb1
5088507400
feat(marketplace): verified creator program — applications, badges, agent pack bundles with discount validation (17 tests)
2026-03-01 16:50:38 -08:00
saravanakumardb1
66d6aa7b5b
feat(jarvis-teams): enterprise teams module — team CRUD, member management, shared agents, analytics (23 tests)
2026-03-01 16:48:26 -08:00
saravanakumardb1
d0cb3a2238
feat(marketplace): purchase repository — build/complete/refund docs, 70/30 revenue share, author earnings aggregation (15 tests)
2026-03-01 16:39:38 -08:00
saravanakumardb1
063efa8e41
feat(marketplace): automated certification — prompt-safety, content-policy, payload-validator, engine (25 tests)
2026-03-01 14:26:23 -08:00