Apr 14, 2026
Commits
2a7024a — Add model comparison demo + fix Volume env isolation
New comparison page at /comparison for side-by-side streaming across all 6 models: Gemini, Claude, OpenAI (teachers) and TS_Modal (31B), TS_mobile4B (E4B), TS_mobile2B (E2B) with version selectors. Uses existing SSE multiplexing from chat.py extended with new providers.
Fixed environment isolation bug: _current.json version pointer in the shared Modal Volume was not namespaced per-environment. Now uses _current_{env}.json so dev/jh/main track active versions independently while sharing the same model weights.
New files:
ml/comparison.html— side-by-side streaming comparison UIstream_openai(),stream_claude(),stream_model_slot()ingateway/providers.py
Changed:
gateway/chat.py— routes Claude, OpenAI, model slots; adds timing metadatatraining/model_registry.py— env-aware_current_{env}.jsonwith legacy fallbackml_endpoint.py—/comparisonrouteML_PIPELINE_SPEC.md— updated env isolation docs
b9b7b53 — Add project documentation
Created docs/ folder with architecture overview, service catalog, and changelog infrastructure covering W14-W15.
9bc71f9 — Remove SSE_ONLY encryption type (jh branch)
Removed SSE_ONLY encryption type from dev/core/data.py. Video recordings now stored as PLAINTEXT until a proper per-account video encryption strategy is designed. This avoids shipping a half-baked encryption approach that would need to be reworked later.
Changed:
core/data.py— removed SSE_ONLY from encryption type enum and related handling