Commit Graph

58 Commits

Author SHA1 Message Date
root
95d8f90ce3 test(mcp-server): cover chronomind tool proxies 2026-05-18 09:33:30 +00:00
saravanakumardb1
ab23f05b1a test(mcp-server): add 8 ChronoMind MCP tool registration + schema tests
- Verify all 15 tools registered (timers, routines, sync, planner, agent-actions)
- Check admin role requirement on every tool
- Validate input schemas for key tools (planDay, planNl, reschedule, availability)
- Resolves TODO-007 from ChronoMind roadmap
2026-05-14 16:59:26 -07:00
saravanakumardb1
9c60e5aba0 feat(mcp): add chronomind.planner.planDay + chronomind.planner.planNl MCP tools (Phase B.2b) 2026-05-14 16:56:43 -07:00
saravanakumardb1
7d266bfcc0 fix(docker): INFRA-gap-02 unblock full-stack docker compose up
Three coordinated fixes so 'docker compose up cosmos-emulator platform-service
cowork-service --wait' completes end-to-end (pre-existing blocker surfaced by
W1 post-push review).

1. Remove harmful prepare:tsc from @bytelyst/react-native-platform-sdk
   package.json. The hook fires during pnpm install --frozen-lockfile against
   an empty src/ tree (because Dockerfiles COPY package.jsons before
   sources), tsc aborts, install fails. Canonical monorepo build flow is
   pnpm -r build using the existing build:tsc script; prepare only runs for
   git+ URL installs (which this published package doesn't use), so removing
   it is lossless.

2. Add --ignore-scripts to platform-service + mcp-server Dockerfile install
   steps. Mirrors the pattern already used by extraction-service/Dockerfile,
   dashboards/admin-web/Dockerfile, dashboards/tracker-web/Dockerfile.
   Belt-and-braces against future prepare-hook regressions in any workspace
   package.

3. Expand .dockerignore node_modules/dist/.next/coverage to **/ globs.
   Docker's .dockerignore with bare 'node_modules' only matches root-level;
   nested packages/*/node_modules/ were being COPY'd into images, poisoning
   them with host-absolute-path .bin shims (e.g. @bytelyst/storage's tsc
   shim resolved to /learning_voice_ai_agent/node_modules/.pnpm/... which
   doesn't exist in the container → MODULE_NOT_FOUND). The glob fix makes
   COPY packages/ packages/ deliver source only.

Gap: INFRA-gap-02
Verified:
  pnpm install --frozen-lockfile                              
  pnpm --filter @bytelyst/react-native-platform-sdk build     
  pnpm --filter @bytelyst/react-native-platform-sdk typecheck 
  docker compose build platform-service                        (previously failed)
  docker compose build mcp-server                             
  docker compose build extraction-service                     
2026-04-16 15:48:32 -07:00
saravanakumardb1
af605a6e7d fix(mcp): align ChronoMind type enums with actual backend schema
Fix 3 type mismatches in MCP chronomind-client.ts + chronomind-tools.ts:

1. TimerDoc.type: Remove non-existent 'event', keep 'countdown'|'alarm'|'pomodoro'
2. TimerDoc.state: Remove non-existent 'idle', add missing 'snoozed'|'dismissed'
3. RoutineDoc.status: Replace wrong 'idle'|'running' with actual
   'template'|'ready'|'active'|'cancelled'

Fix cascading usages:
- chronomind.timers.create tool: default state 'idle' → 'active'
- chronomind.timers.list tool: update type/state enum in Zod schema + description
- calendar-import-pipeline.ts: 'idle' → 'active' for imported timers

MCP server typecheck passes. No runtime behavior change for existing tools.
2026-03-31 23:57:24 -07:00
saravanakumardb1
efde14ba6e feat(mcp): Phase A.3 — 5 new ChronoMind MCP tools + client functions
Extend centralized MCP server with 5 new ChronoMind tools:

- chronomind.timers.reschedule — shift timer by delta or set new target time
- chronomind.timers.availability — find free time slots in a window
- chronomind.routines.start — start a routine from ready/template status
- chronomind.agentActions.list — list agent action audit trail
- chronomind.agentActions.approve — approve a proposed agent action

Client functions added to chronomind-client.ts:
- chronomindTimerReschedule, chronomindTimerAvailability, chronomindRoutineStart
- chronomindAgentActionCreate, chronomindAgentActionsList, chronomindAgentActionApprove

Write tools (reschedule, routines.start) record agent actions for audit trail.
Audit recording is fail-open — failures don't block the actual operation.

MCP server typecheck passes. No breaking changes to existing tools.
2026-03-31 23:41:43 -07:00
58c47a751a fix(mcp-server): pass workspaceId to notelett note get/update/delete/summarize tools
Backend requires workspaceId query param on single-note endpoints.
Updated client functions and tool schemas accordingly.

Made-with: Cursor
2026-03-29 22:10:03 -07:00
6997dff8d9 feat(mcp-server): register NoteLett tools (notes, workspaces, tasks, artifacts, summarize)
Adds notelett-client.ts HTTP wrapper, notelett-tools.ts with 10 MCP tool registrations,
and NOTELETT_BACKEND_URL config entry.

Made-with: Cursor
2026-03-29 20:57:16 -07:00
saravanakumardb1
46ee14371c fix(ci): add --pool forks to all vitest test scripts to fix kill EPERM on Node v25
Root cause: tinypool worker teardown calls kill() which returns EPERM
in the act_runner host environment on Node.js v25.2.1. Tests pass but
the vitest process crashes during cleanup, causing CI failure.

Fix: --pool forks CLI flag on every package/service test script, plus
pool: 'forks' in all vitest.config.ts files. This uses child_process.fork()
worker management which handles termination cleanly.

60 package.json files updated, 10 vitest.config.ts files updated.
2026-03-27 23:23:38 -07:00
saravanakumardb1
85aca5534b fix(docker): sync all 3 service Dockerfiles with complete workspace package.json list
platform-service had 16/60, extraction-service had 14/60, mcp-server had 34/60.
All three now list all 57 packages + 4 services + 2 dashboards + scripts.
Required for pnpm install --frozen-lockfile to resolve the full workspace.
2026-03-24 11:55:47 -07:00
saravanakumardb1
cd811114e5 fix(devops): harden local shared-service docker bring-up 2026-03-22 12:34:38 -07:00
root
e996962b64 feat(mcp-server): add team provisioning follow-up hooks 2026-03-15 09:59:35 +00:00
root
8976caa966 feat(mcp-server): add org review follow-up hooks 2026-03-15 09:56:04 +00:00
root
7c5999ce5a feat(mcp-server): wire a2a governance hooks 2026-03-15 09:51:00 +00:00
root
daec38faf7 feat(a2a): persist incident pipeline runs 2026-03-15 05:58:15 +00:00
saravanakumardb1
aff78c55a4 fix(mcp-server): align notes tool outputs with contracts 2026-03-10 09:54:08 -07:00
saravanakumardb1
ec3dd4bd66 feat(mcp-server): add notes tool integration 2026-03-10 09:39:07 -07:00
saravanakumardb1
63b0d20b07 fix(fastify-core): address jwt rollout review findings 2026-03-06 13:44:22 -08:00
saravanakumardb1
cfca118c71 feat(fastify-core): add shared optional jwt context 2026-03-06 12:52:49 -08:00
saravanakumardb1
d365bc59d6 refactor(mcp-server): tighten MCP tool typing after review 2026-03-05 22:37:53 -08:00
saravanakumardb1
b199ea7976 fix(mcp-server): align secret and experiment tools with real services 2026-03-05 22:36:30 -08:00
saravanakumardb1
53f34851df fix(mcp-server): resolve lint blockers in new MCP tools 2026-03-05 22:30:39 -08:00
saravanakumardb1
3a7139790c fix(mcp-server): Improve error handling in A2A pipelines
- regression-watch-pipeline.ts: Add try/catch around session creation, continue on failures
- post-incident-cleanup-pipeline.ts: Add try/catch around policy deletion and audit export
- Fix extractionResetProductRateLimit optional parameter pattern
- Update return values to use actual counts instead of targets
- All pipelines now continue processing individual items instead of failing entirely
- Add proper type casting for audit response events array
2026-03-05 22:09:56 -08:00
saravanakumardb1
40db19a389 feat(mcp-server): Add 2 high-priority A2A pipelines
- regression-watch-pipeline.ts: Monitor error clusters and auto-create diagnostics sessions
- post-incident-cleanup-pipeline.ts: Resolve clusters, delete policies, export audit logs
- a2a-tools.ts: Register both pipelines as MCP tools (a2a.regressionWatch, a2a.postIncidentCleanup)
- Fix platform-client function names and TelemetryCluster interface usage
- Both pipelines support dryRun mode and proper error handling
- Fix ESLint warnings: remove unused imports, add proper types

All tools require admin role and use existing platform-service endpoints.
2026-03-05 22:07:42 -08:00
saravanakumardb1
c8fafbb564 feat(mcp-server): Add 7 missing extraction async jobs tools
- extraction.extractBatch: batch extraction with shared config
- extraction.submitJob: async job submission with webhook support
- extraction.getJob: get job status/results by ID
- extraction.listJobs: list recent async jobs
- extraction.getProductRateLimitStatus: per-product or summary rate limits
- extraction.resetProductRateLimit: admin rate limit reset
- extraction.sidecarMonitoringState: detailed sidecar circuit breaker state

All tools require admin role and map to existing extraction-service endpoints.
Fixes TypeScript optional parameter error in extractionGetProductRateLimitStatus.
2026-03-05 22:05:00 -08:00
saravanakumardb1
3f296a8e72 feat(mcp-server): fill 12 DOMAIN_PRODUCTS.md MCP tool gaps + client fn additions
Bug fix (committed separately):
  social-fast-coordinator: stage_transition used non-existent currentStage

New client functions:
  nomgap-client: nomgapFastingCreateSession, nomgapProtocolGet,
                 nomgapSocialListGroupFasts (+ GroupFastDoc)
  peakpulse-client: peakpulseRoutesList, peakpulseSyncStatus
  lysnrai-client: lysnraiApiTokenCreate, lysnraiSessionsStats,
                  lysnraiTranscriptsExportBatch
  chronomind-client: chronomindRoutineGet, chronomindSharedTimerShare

New MCP tools (12):
  mindlyst.briefs.generate        — trigger daily brief via mindlystBriefCreate
  mindlyst.memory.getTriageResult — extract TriageResult sub-doc only
  nomgap.fasting.createSession    — start new fast with protocolId
  nomgap.protocols.get            — single protocol lookup
  nomgap.social.listGroupFasts    — list group fast sessions
  peakpulse.routes.list           — list GPS r
Bug fix (committed separately):
  social-fast-coordinator: stage_transition used non-existent currentStage
ats  social-fast-coordinator: staon
New client functions:
  nomgap-client: nomgapFastingCreateSession, nomgarai  nomgaens.rotate                      nomgapSocialListGroupFasts (+ GroupFastDoc)
 d.  peakpulse-client: peakpulseRoutesList, peakpulseSyncStaturg  lysnrai-client: lysnraiApiTokenCreate, lysnraiSessionsStati                  lysnraiTranscriptsExpor                    us  chronomind-client: chronomindRoutineGet, chrerver total: 126 tools across 17 namespaces
2026-03-05 18:19:04 -08:00
saravanakumardb1
1da3394caf fix(mcp-server): social-fast-coordinator-pipeline — stage_transition used non-existent currentStage field
FastingSessionDoc has stages: unknown[] not currentStage: string.
- Replace currentStage cast with hasStages check (session.stages.length > 0)
- Fix protocolId extraction to use direct field (session?.protocolId)
- Report currentStage derived from stages.length as 'stage_N' indicator
2026-03-05 18:13:28 -08:00
saravanakumardb1
0a6950216a feat(mcp-server): A2A batch-5 — GoalCoachingAgent + SkiRunAnalystAgent (peakpulse) + OrgProvisioningAgent (lysnrai) + ProtocolTuningAgent (nomgap) + CalendarImportAgent (chronomind)
goal-coaching-pipeline.ts: peakpulse.goals.coach
  - SessionHistoryAgent -> GoalAnalysisAgent -> GoalReportAgent
  - Computes duration/distance/elevation/speed trends across recent sessions
  - Classifies user as beginner/intermediate/advanced; generates metric-specific goal suggestions

ski-run-analyst-pipeline.ts: peakpulse.ski.analyze
  - SkiSessionCollectorAgent -> RunQualityAnalystAgent -> SkiReportAgent
  - Computes runDensity, verticalPerRun, skiToLiftRatio per session
  - Flags: low_run_density, high_lift_ratio, short_session, vertical_drop vs baseline

org-provisioning-pipeline.ts: lysnrai.orgs.provision
  - OrgInspectorAgent -> ProvisioningActionAgent -> OrgReportAgent
  - Checks API tokens + session activity; classifies as new_org/needs_attention/complete

protocol-tuning-pipeline.ts: nomgap.protocols.tune
  - ProtocolStatsCollectorAgent -> AbandonmentAnalysisAgent -> TuningReportAgent
  - Finds protocols with >40% abandonment; runs extraction for pattern analysis
  - Proposes duration reduction, milestone notifications, or variant creation

calendar-import-pipeline.ts: chronomind.calendar.import
  - EventValidatorAgent -> ConflictDetectorAgent -> ImportReportAgent
  - Validates dtstart/dtend; detects time overlaps vs existing timers
  - Creates alarm timers for conflict-free events; dryRun support

MCP server total: 110 tools
2026-03-05 18:07:59 -08:00
saravanakumardb1
acadc3551e feat(mcp-server): A2A batch-4 — RoutineQualityAgent (chronomind) + SocialFastCoordinatorAgent (nomgap) + TeamProvisioningAgent (jarvis)
routine-quality-pipeline.ts: chronomind.routines.checkQuality
  - RoutineInventoryAgent -> QualityCheckAgent -> QualityReportAgent
  - Flags: duration_overflow, never_completed, empty_steps, no_category
  - Per-routine issue list + remediation suggestions; configurable maxDurationMinutes

social-fast-coordinator-pipeline.ts: nomgap.social.coordinateFast
  - GroupMemberResolverAgent -> NotificationDispatchAgent -> CoordinationReportAgent
  - Fires social_invite + stage_transition push to each group member
  - Sends weekly_digest to session owner; per-member outcome tracking

team-provisioning-pipeline.ts: jarvis.teams.provision
  - NewMemberDetectorAgent -> OnboardingAgent -> ProvisioningReportAgent
  - Detects invited + recently joined members (configurable sinceHours window)
  - Recommends starter agents by member role, seeds context memory in each agent
  - Marks check-in as scheduled after successful memory seed

MCP server total: 105 tools
2026-03-05 16:39:36 -08:00
saravanakumardb1
7ed4a105b7 feat(mcp-server): A2A batch-3 — ReflectionSynthesisAgent (mindlyst) + KeyboardDiagnosticsAgent (lysnrai) + NLParserEvalAgent (chronomind)
reflection-synthesis-pipeline.ts: mindlyst.reflections.synthesize
  - ReflectionCollectorAgent -> ThemeExtractionAgent -> SynthesisReportAgent
  - Fetches recent reflections, runs reflection-enrichment extraction, surfaces themes by frequency
  - Proposes weekly summary text; max 52 reflections (1 year lookback)

keyboard-diagnostics-pipeline.ts: lysnrai.keyboard.diagnose
  - KeyboardErrorScannerAgent -> DiagnosticsSessionAgent -> BugReportDraftAgent
  - Scans error telemetry filtered to keyboard surface, groups by anonymousInstallId
  - Opens diagnostics session per erroring install; drafts severity-ranked bug reports
  - 48h default window, configurable minErrors threshold

nl-parser-eval-pipeline.ts: chronomind.nlParser.eval
  - PhraseSamplerAgent -> ParseEvalAgent -> RegressionReportAgent
  - 10-phrase canonical test suite + optional custom phrases
  - Submits to extraction-service timer-parse task, validates parsed field presence
  - Returns pass/fail/partial scorecard with regression list

MCP server total: 102 tools
2026-03-05 16:36:19 -08:00
saravanakumardb1
b8e230f018 feat(mcp-server): A2A batch-2 — STTFallbackMonitorAgent (lysnrai) + ProgressAnalystAgent (jarvis) + BrainOverflowAgent (mindlyst)
stt-fallback-monitor-pipeline.ts: lysnrai.stt.monitorFallback
  - STTEventScannerAgent -> DiagnosticsLaunchAgent -> FallbackReportAgent
  - Queries stt_completed telemetry, splits azure vs whisper events, computes offline rate
  - Opens diagnostics session if rate exceeds threshold (default 20%); 6h default window

progress-analyst-pipeline.ts: jarvis.progress.analyze
  - SessionMetricsCollectorAgent -> PlateauDetectorAgent -> ProgressReportAgent
  - Collects skillMetrics timeseries per agent from recent sessions
  - Detects plateau (delta < threshold), recommends increase_difficulty or supplementary_agent

brain-overflow-pipeline.ts: mindlyst.brains.checkOverflow
  - BrainInventoryAgent -> OverflowDetectorAgent -> OverflowReportAgent
  - Flags brains above item count threshold with no acted-on items in N days
  - Per-brain suggestion: archive / reassign / review

MCP server total: 99 tools
2026-03-05 16:31:32 -08:00
saravanakumardb1
e4d489d40c fix(triage-quality-pipeline): remove unused MemoryItemDoc import 2026-03-05 16:18:54 -08:00
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