fetch_ml/internal
Jeremie Fraeys cb25677695
feat(kms): implement core KMS infrastructure with DEK cache
Add KMSProvider interface for external key management systems:
- Encrypt/Decrypt operations for DEK wrapping
- Key lifecycle management (Create, Disable, ScheduleDeletion, Enable)
- HealthCheck and Close methods

Implement MemoryProvider for development/testing:
- XOR encryption with HMAC-SHA256 authentication
- Secure random key generation using crypto/rand
- MAC verification to detect wrong keys

Implement DEKCache per ADR-012:
- 15-minute TTL with configurable grace window (1 hour)
- LRU eviction with 1000 entry limit
- Cache key includes (tenantID, artifactID, kmsKeyID) for isolation
- Thread-safe operations with RWMutex
- Secure memory wiping on eviction/cleanup

Add config package with types:
- ProviderType enum (vault, aws, memory)
- VaultConfig with AppRole/Kubernetes/Token auth
- AWSConfig with region and alias prefix
- CacheConfig with TTL, MaxEntries, GraceWindow
- Validation methods for all config types
2026-03-03 19:13:55 -05:00
..
api feat(api): integrate scheduler protocol and WebSocket enhancements 2026-02-26 12:05:57 -05:00
audit feat(security): add audit subsystem and tenant isolation 2026-02-26 12:03:45 -05:00
auth refactor(auth): add tenant scoping and permission enhancements 2026-02-26 12:06:08 -05:00
config feat(api): integrate scheduler protocol and WebSocket enhancements 2026-02-26 12:05:57 -05:00
container refactor(jupyter): enhance security and scheduler integration 2026-02-26 12:06:35 -05:00
crypto feat(kms): implement core KMS infrastructure with DEK cache 2026-03-03 19:13:55 -05:00
domain refactor(queue): integrate scheduler backend and storage improvements 2026-02-26 12:06:46 -05:00
envpool refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
errtypes refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
experiment refactor(jupyter): enhance security and scheduler integration 2026-02-26 12:06:35 -05:00
fileutil refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
jupyter refactor(jupyter): enhance security and scheduler integration 2026-02-26 12:06:35 -05:00
logging refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
manifest chore(cleanup): remove obsolete files and update .gitignore 2026-02-26 12:09:18 -05:00
metrics refactor: Phase 6 - Complete migration, remove legacy files 2026-02-17 14:39:48 -05:00
middleware fix: resolve TODOs and standardize tests 2026-02-19 15:34:59 -05:00
network refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
privacy refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
prommetrics feat(api): refactor websocket handlers; add health and prometheus middleware 2026-01-05 12:31:07 -05:00
queue refactor(queue): integrate scheduler backend and storage improvements 2026-02-26 12:06:46 -05:00
resources refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
scheduler feat: add Plugin GPU Quota implementation and tests 2026-02-26 14:35:05 -05:00
security refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
storage refactor(queue): integrate scheduler backend and storage improvements 2026-02-26 12:06:46 -05:00
telemetry Fix multi-user authentication and clean up debug code 2025-12-06 12:35:32 -05:00
tracking refactor(utilities): update supporting modules for scheduler integration 2026-02-26 12:07:15 -05:00
validation feat: add security monitoring and validation framework 2026-02-19 15:34:25 -05:00
worker feat(worker): integrate scheduler endpoints and security hardening 2026-02-26 12:06:16 -05:00