Saltar a contenido

Especificacion Tecnica de MedTime

Identificador: TECH-INDEX-001 Version: 1.0.0 Fecha: 2025-12-08 Ultima Revision: IT-15 - Consolidacion v1.0 Autor: SpecQueen Technical Division



1. Introduccion

1.1. Proposito

Este documento es el indice maestro de la Especificacion Tecnica de MedTime. Define la arquitectura de software, contratos de API, modelos de datos, decisiones arquitectonicas y guias de implementacion para el ecosistema MedTime.

La especificacion tecnica traduce los requisitos funcionales (functional-spec) y de interfaz (UiSpec) en una arquitectura implementable.

1.2. Alcance

La especificacion tecnica cubre:

  • Arquitectura de Software: Clean Architecture, patrones, principios SOLID
  • APIs: Contratos OpenAPI 3.0, JSON Schemas, autenticacion
  • Base de Datos: Modelos, esquemas, migraciones, seguridad de datos
  • Servicios: Microservicios, comunicacion inter-servicio
  • Mobile: Arquitectura iOS/Android, estrategia offline-first
  • Seguridad: Cifrado, OWASP, compliance tecnico HIPAA/FDA
  • Performance: Benchmarks, caching, escalabilidad

1.3. Relacion con Otras Especificaciones

flowchart LR
    subgraph FS["functional-spec/"]
        FS1["MTS-*-001.md<br/>(QUE hacer)"]
        FS2["28 modulos funcionales"]
        FS3["Reglas de negocio"]
    end

    subgraph UI["UiSpec/"]
        UI1["UI-MTS-*<br/>(COMO se ve)"]
        UI2["207 pantallas<br/>28 flujos UI"]
        UI3["Design System"]
    end

    subgraph TS["technical-spec/"]
        TS1["API-*-001.md<br/>(COMO se hace)"]
        TS2["28 APIs<br/>28 modelos<br/>~23 ADRs"]
        TS3["Arquitectura"]
    end

    FS <--> UI <--> TS

    style FS fill:#e1f5fe,stroke:#01579b
    style UI fill:#fff3e0,stroke:#e65100
    style TS fill:#e8f5e9,stroke:#1b5e20
Especificacion Proposito Audiencia
functional-spec Define QUE debe hacer el sistema Product, BA, QA
UiSpec Define COMO se ve y se interactua Designers, Frontend
technical-spec Define COMO se implementa Developers, DevOps

2. Documentos Principales

ID Documento Descripcion Estado
TECH-SUMMARY-001 TECH-SUMMARY-001.md Resumen ejecutivo de la especificacion v1.0.0
TECH-INDEX-001 00-tech-spec-index.md Este indice v1.0.0
TECH-ARC-001 01-arquitectura-tecnica.md Arquitectura de software, C4, Clean Architecture v1.0.0
TECH-CS-001 02-arquitectura-cliente-servidor.md Arquitectura dual dispositivo/servidor (66KB) v1.0.0
TECH-DATA-001 03-estrategia-datos.md Clasificacion, sincronizacion, retencion, anonimizacion v1.0.0
TECH-SEC-CLIENT-001 04-seguridad-cliente.md Seguridad cliente: Zero-Knowledge, E2E, KeyChain (77KB) v1.0.0
TECH-SEC-SRV-001 05-seguridad-servidor.md Seguridad servidor: RLS, audit, OWASP (53KB) v1.0.0
TECH-INF-001 06-infraestructura.md Cloud, CI/CD, monitoring, DR v1.0.0
TECH-TST-001 07-testing-strategy.md Estrategia de testing completa v1.0.0

Nota: Todos los documentos principales completados - v1.0.0


3. Especificaciones de API

Ubicacion: technical-spec/apis/

ID API Modulo Funcional Documento Version
API-AUTH-001 Autenticacion MTS-AUTH-001 OpenAPI v1.0.0
API-MED-001 Medicamentos MTS-MED-001 OpenAPI v1.0.0
API-USR-001 Usuarios MTS-USR-001 OpenAPI v1.0.0
API-SYNC-001 Sincronizacion - OpenAPI v1.0.0
API-ALT-001 Alertas MTS-ALT-001 OpenAPI v1.0.0
API-NTF-001 Notificaciones MTS-NTF-001 OpenAPI v1.0.0
API-CAL-001 Calendario MTS-CAL-001 OpenAPI v1.0.0
API-ADH-001 Adherencia MTS-ADH-001 OpenAPI v1.0.0
API-ANA-001 Analisis MTS-ANA-001 OpenAPI v1.0.0
API-RX-001 Recetas MTS-RX-001 OpenAPI v1.0.0
API-INT-001 Interacciones Med-Med MTS-INT-001 OpenAPI v1.0.0
API-INT-002 Interacciones Med-Estudio MTS-INT-002 OpenAPI v1.0.0
API-CAT-001 Catalogos Secundarios MTS-CAT-001 OpenAPI v1.0.0
API-EST-001 Estudios Clinicos MTS-EST-001 OpenAPI v1.0.0
... ... ... ... ...

Schemas Compartidos: technical-spec/apis/schemas/

ID Schema Descripcion Version
SCH-COMMON-001 common.yaml Error, Pagination, EncryptedBlob, Sync, Security v1.0.0

Postman Collections: technical-spec/apis/postman/ (Pendiente)


4. Base de Datos

Ubicacion: technical-spec/database/

ID Documento Descripcion Version
DB-ERD-001 Diagrama ER Modelo entidad-relacion completo (Mermaid) v1.0.0
DB-SCHEMA-001 Esquemas DDL y definiciones Pendiente
DB-MIGRATIONS-001 Migraciones Estrategia de migraciones Pendiente
DB-SECURITY-001 Seguridad BD RLS, cifrado, backups Pendiente

Modelos por Dominio: technical-spec/database/models/

ID Modelo Entidades Version
MDL-AUTH-001 Autenticacion users, sessions, devices, relations, invitations v1.0.0
MDL-MED-001 Medicamentos medications, schedules, doses, inventory, catalog v1.0.0
MDL-USR-001 Usuarios profiles, preferences, dependents, caregivers v1.0.0
MDL-ALT-001 Alertas push_tokens, notification_queue, sms_log, escalation_log, scheduled_alerts v1.0.0
MDL-NTF-001 Notificaciones Inteligentes pattern_data, detected_patterns, suggestions, ml_model_state v1.0.0
MDL-CAL-001 Calendario user_habits, day_moments, scheduled_doses, dose_events, dose_records v1.0.0
MDL-ADH-001 Adherencia adherence_daily, adherence_streaks, adherence_patterns, insights v1.0.0
MDL-ANA-001 Analisis clinical_analyses, analysis_results, parameters, alerts v1.0.0
MDL-RX-001 Recetas prescriptions, medications, prescriber, ocr_results v1.0.0
MDL-INT-001 Interacciones Med-Med interaction_cache, detected_interactions, acknowledgments, history v1.0.0
MDL-INT-002 Interacciones Med-Estudio med_study_rules, detected_med_study, suspension_reminders v1.0.0
... ... ... ...

5. Servicios

Ubicacion: technical-spec/services/

ID Servicio Descripcion Dependencias
SVC-AUTH-001 Auth Service Autenticacion y autorizacion Firebase Auth
SVC-MED-001 Medications Service Gestion de medicamentos DrugBank API
SVC-NTF-001 Notification Service Notificaciones push FCM/APNs
SVC-SYNC-001 Sync Service Sincronizacion offline -
... ... ... ...

6. Mobile

Ubicacion: technical-spec/mobile/

ID Documento Plataforma Version
MOB-IOS-001 Arquitectura iOS iOS 15+ v1.0.0
MOB-AND-001 Arquitectura Android Android 8+ v1.0.0
MOB-OFFLINE-001 Estrategia Offline Ambas Pendiente
MOB-PUSH-001 Notificaciones Push Ambas Pendiente
MOB-CRYPTO-001 Cifrado Local Ambas Pendiente

7. Seguridad

Ubicacion: technical-spec/security/

ID Documento Descripcion Compliance
SEC-CRYPTO-001 Cifrado AES-256, TLS 1.3 HIPAA
SEC-AUTH-001 Autenticacion MFA, session mgmt HIPAA, FDA
SEC-AUDIT-001 Auditoria Logging, trazabilidad HIPAA, FDA
SEC-INCIDENT-001 Incidentes Breach response HIPAA

8. Performance

Ubicacion: technical-spec/performance/

ID Documento Descripcion Version
PERF-001 PERF-001-benchmarks.md SLAs, benchmarks, metricas globales, capacity planning v1.0.0
PERF-002 PERF-002-mobile.md Performance mobile iOS/Android, cross-platform v1.0.0

9. Knowledge Base Tecnica

Ubicacion: technical-spec/knowledge-base/

9.1. Architecture Decision Records (ADRs)

ID ADR Estado Fecha
ADR-001 Clean Architecture Aceptado 2025-12-07
ADR-002 Firebase Auth vs Custom Aceptado 2025-12-07
ADR-003 Offline-First Strategy Aceptado 2025-12-07
ADR-004 Database Selection (PostgreSQL) Aceptado 2025-12-07
ADR-005 API Versioning Aceptado 2025-12-07
ADR-006 iOS/Android Min Versions Pendiente -
ADR-007 REST vs GraphQL Pendiente -

9.2. Patrones Tecnicos

ID Patron Descripcion
TPAT-001 Repository Pattern Abstraccion de datos
TPAT-002 Use Case Pattern Logica de negocio
TPAT-003 Error Handling Manejo de errores

10. Drones Tecnicos

El Colectivo de SpecQueen incluye 7 drones tecnicos especializados:

Drone Archivo Proposito
ArchitectureDrone .claude/agents/ArchitectureDrone.md Coherencia arquitectonica, SOLID, Clean Architecture
ApiContractDrone .claude/agents/ApiContractDrone.md Contratos de API, OpenAPI, breaking changes
SecurityDrone .claude/agents/SecurityDrone.md Seguridad, OWASP, compliance HIPAA/FDA
DatabaseDrone .claude/agents/DatabaseDrone.md Base de datos, modelos, RLS, migraciones
PerformanceDrone .claude/agents/PerformanceDrone.md Performance, SLAs, caching, benchmarks
TestingDrone .claude/agents/TestingDrone.md Testing, cobertura, trazabilidad
DevOpsDrone .claude/agents/DevOpsDrone.md Infraestructura, CI/CD, monitoring

Ubicacion: Los drones tecnicos estan consolidados en .claude/agents/ como agentes funcionales de Claude Code.


11. Sistema de Iteraciones

La especificacion tecnica se desarrolla en iteraciones (IT-XX):

NOTA: Post-RESET (IT-01-RESET), el plan original de 23 iteraciones fue reemplazado por un enfoque de ~15 iteraciones con prioridad "seguridad primero".

Fase Iteraciones Foco Estado
Consolidacion IT-01-RESET Actualizar indice, documentar RESET Completado
Seguridad Servidor IT-02 RLS, audit, OWASP Completado
Base de Datos Core IT-03 ERD, modelos AUTH/MED/USR Completado
APIs Core IT-04 API-AUTH, API-MED, API-USR, API-SYNC Completado
Alertas/Notif IT-05 MDL-ALT, MDL-NTF, API-ALT, API-NTF Completado
Testing IT-06 Estrategia de testing Completado
Infraestructura IT-07 Cloud, CI/CD, monitoring Completado
Calendario/Adherencia IT-08 MDL-CAL, MDL-ADH, APIs Completado
Analisis/Recetas IT-09 MDL-ANA, MDL-RX, APIs Completado
Interacciones IT-10 MDL-INT, API-INT-001, API-INT-002 Completado
Catalogos IT-11 API-CAT-001, API-EST-001 Completado
Mobile iOS IT-12 MOB-IOS-001 Completado
Mobile Android IT-13 MOB-AND-001 Completado
Performance IT-14 PERF-001, PERF-002 Completado
Consolidacion v1.0 IT-15 Review completo, TECH-SUMMARY Completado

Documentos de iteracion: technical-spec/iterations/IT-XX/ Plan detallado: Ver .claude/plans/tech-spec-v2-plan.md


12. Matriz de Trazabilidad

Modulo Funcional UI Spec API Modelo Servicio
MTS-AUTH-001 UI-MTS-AUTH-001 API-AUTH-001 MDL-AUTH-001 SVC-AUTH-001
MTS-MED-001 UI-MTS-MED-001 API-MED-001 MDL-MED-001 SVC-MED-001
MTS-USR-001 UI-MTS-USR-001 API-USR-001 MDL-USR-001 SVC-USR-001
MTS-ALT-001 UI-MTS-ALT-001 API-ALT-001 MDL-ALT-001 SVC-NTF-001
MTS-NTF-001 UI-MTS-NTF-001 API-NTF-001 MDL-NTF-001 SVC-NTF-001
MTS-CAL-001 UI-MTS-CAL-001 API-CAL-001 MDL-CAL-001 SVC-MED-001
MTS-ADH-001 UI-MTS-ADH-001 API-ADH-001 MDL-ADH-001 SVC-MED-001
... ... ... ... ...

Documento generado por SpecQueen Technical Division - IT-15 v1.0.0 "La resistencia es futil cuando la arquitectura es perfecta."