ChangelogRelease History

Release History

Chronological record of Zoris Engine releases.

Changelog

[v2.6.0] - 2026-04-23

  • PDF Reports: Dashboard now has separate Quant Briefing and Compliance Report download buttons (proxied via Next.js API route to keep API key server-side)
  • PDF Generation: Fixed font crash (fpdf2 v1.7.2 requires uni=True in add_font()), both PDFs now generate successfully
  • PDF Endpoints: Added /api/quant-briefing.pdf and /api/compliance-report.pdf with dual auth (X-API-Key header or ?api_key= query param for email links)
  • Autonomous Executor: Fixed actual_cost NameError crash that prevented all BUY executions
  • Autonomous Executor: Created zoris_llm_validate.py bridge module (executor imported nonexistent module)
  • Mover Accuracy: Fixed default inflation (50.0 → NaN when no movers), rolling inversion logic now uses .dropna()
  • Portfolio Actions: Fixed all positions showing "HOLD" — now cross-references risk report for actual LONG/AVOID/HOLD
  • Asset Page: Fixed "UNDEFINED" header and missing data (Next.js 16 requires await params Promise)
  • Asset Page: Added period % change card and full theme-aware rewrite
  • Email Links: Fixed PDF and terminal links (hardcoded localhost/IP → BACKEND_URL/FRONTEND_URL env vars with api_key query param)
  • API Helper: Added verify_key() function to zoris_api.py for consistent key validation
  • Full backend/frontend/VM sync and production deployment across all nodes

[v2.5.0] - 2026-04-23

  • Asset Detail Page: Full price history chart with date/volume/return columns for any JSE instrument
  • Market Telemetry: Dashboard now shows all instruments (removed Zoris Score filter that hid zero-score entries)
  • API Key Rotation: New tiered key format (zoris-admin-<hex> for admin, zoris-sk-<hex> for client). Old keys invalidated.
  • Documentation: Added OpenAPI spec for interactive API Reference, fixed MDX parsing errors
  • Dashboard UI: Collapsible sidebar, improved chart rendering, AI Portfolio as separate page
  • Security: Sensitive architecture docs removed from version control, git history scrubbed
  • Backend: Added /api/corporate-actions, /api/sentiment-timeline, /api/market-breadth endpoints
  • Full backend/frontend/VM sync across all three infrastructure nodes

[v2.4.1] - 2026-04-22

  • Verified News Brain integration in main prediction pipeline
  • Confirmed news features produce 6 outputs for signal enhancement
  • API performance endpoint filter validation working (avg_error>0 separates live predictions from backtest)
  • Dashboard server confirmed operational

[v2.4.0] - 2026-04-21

  • News Brain Integration: Added 6 news-derived features to improve signal quality
    • news_sentiment (0-1): Average sentiment score over 20 days
    • news_velocity_spike (0/1): Flag for unusual article volume spike
    • news_director_buy (0/1): Flag for director buying activity
    • news_director_sell (0/1): Flag for director selling activity
    • news_event_flag (dividend/rights-issue/none): Corporate event detection
    • news_modifier (-0.3 to +0.3): Sentiment modifier for signals
  • JSE Scraper v2: PDF extraction now universal (all categories), bulletin discovery, slug exclusion
  • Cron updated to run v2 scripts (jse_news_scraper_v2.py, jse_news_features_v2.py)
  • Features synced to DO: 364 rows, 79 tickers with news coverage

[v2.3.0] - 2026-04-18

  • PDF Reports: Institutional-grade Quant Briefing and Compliance PDFs
  • Redesigned with Goldman Sachs/BlackRock aesthetic
  • Typography: Inter (body), Cinzel (headers), Playfair Display (subtext)
  • Brand: White header with emerald accent, Zorisord Group Limited branding
  • AI Portfolio: Now reads from ai_portfolio.db SQLite database
  • Partner logos section on last page with Zorisord, Zoris Production, Zoris Engine symbols
  • Performance metrics: Fixed percentage display (was showing 4000% due to double multiplier)

[v2.2.0] - 2026-04-15

  • Market Prediction System: Polymarket integration for live market data
  • Paper Trading: $1000 virtual balance simulator (SQLite-backed)
  • Auto-Trade Bot: Scans markets → predicts → places paper trades
  • Authenticated API: Uses wallet key for full CLOB access
  • Wallet: [REDACTED] (Polygon)
  • Model: 55.5% CV accuracy (text-based features)

[v2.1.0] - 2026-04-15

  • Feature Engineering: Added 3 liquidity proxy features (61 features → 62 features)
    • Days_Since_Trade: Days since stock last traded (no trades = illiquid)
    • Volume_Trend: 5d vs 20d volume momentum
    • Share_Value: 5d volume sum × Price (dollar volume traded)
    • Share_Value_ZScore: Daily Share_Value / 20-day rolling average
  • Fixed Share_Value double-shift bug (was using t-2 to t-6, now correctly t-1 to t-5)
  • Fixed Share_Value unshifted price (was using today's price, now uses yesterday's price)
  • LightGBM Hyperparameter Optimization v62:
    • 50 walk-forward splits (was 10)
    • 75% Optuna search / 25% held-out evaluation
    • Honest directional accuracy: 66.54% (no overfit gap)
  • Share_Value is #1 feature by importance (399), model now understands dollar volume
  • Synced to production server

[v2.0.0] - 2026-04-13

  • Liquidity Rail: 4-gate entry system ensuring exit-ability based on real market volume and spreads
  • Kronos Phase 1: Foundation model as 14th feature in XGBoost (probability-of-up signal)
  • Fixed AI Prediction Accuracy graph (was reading nonexistent column, showed 0%)
  • Fixed Morning Intel timing (moved from 16:15 pipeline to 07:00 EST pre-market cron)
  • Aligned Morning Intel suggestions with autonomous executor (unified Score>=85+LONG+Weight criteria)
  • Frequency-aware PDF fetching (monthly once per calendar month, weekly once per ISO week)
  • XGBoost retrained with 14 features on 94,254 rows including Kronos_Prob_Up
  • Pipeline switched to venv Python (was crashing on system Python with no packages)
  • News intelligence: Gleaner, Observer, JSE PDF ingestion with Brotli decompression
  • Fixed duplicate __main__ block in news module causing double execution
  • 3-line accuracy graph: binary (emerald), 3-class (blue dashed), movers (purple dashed)
  • VM cleanup: removed 80+ dead files across all 3 nodes

[v1.0.0] - 2026-03-29

  • Initial Production Release
  • Institutional API Gateway support
  • Scraper sync pipeline finalized
  • Documentation site launch