Architecture: How to implement the Vitto Jarvis Evolution gaps across Phas...

Documentation for Sessions

๐Ÿ—๏ธ Architecture: How to implement the Vitto Jarvis Evolution gaps across Phas...

Date: 2026-03-17
Time: 21:33:46 UTC
Session: gspace1-231.5
Agent: angular
Confidence: 87%
Status: โœ… Documented


๐Ÿ“‹ Decision Context

Question:

How to implement the Vitto Jarvis Evolution gaps across Phases 1-4 without adding dead code or duplicating existing infrastructure?

Task: S231.2 Phase 1-4 gap closure


๐ŸŽฏ Decision Made

Chosen:

Reused all existing services: backend HeartbeatService (already exists, 30min cron), SkillExtractionService (already wired in vitto-engine:509), SkillRetrievalService (already in system prompt). New code: DossierPersonaAdapterService (expertiseโ†’persona recommendation), EvalModule (golden dataset+nightly judge), VittoHeartbeatService (Angular Tauri daemon with idle detection+SSE notifications), CU action memory via GoalHistory extension, AnonymousPatternExtractor stub implementation wired into PatternMiningJob and PyramidContext.

Options Considered:


๐Ÿ’ญ Reasoning

Research revealed Phase 4.1 skill loop was ALREADY closed (extractIfEligible called in vitto-engine:509, getRelevantSkillsPrompt in system prompt). Building on top of existing infrastructure rather than duplicating: GoalHistory extended for CU recipes instead of adding HTTP cross-service call, platform_intelligence wired into getPyramidContext() not a new getLearningIntelligence() method (which doesn't exist). Tauri notification uses existing invoke('send_notification') registered in lib.rs. Heartbeat avoids @libs-ai/vitto-hub circular dep by opening own EventSource.


๐Ÿ“ Files Involved


๐Ÿ”— Related


Auto-generated by MCP Smart Consolidation