openvibers/openvibe.report CHANGELOG.md

CHANGELOG.md

main 3.0 KB · 34 lines · markdown

Changelog

What changed in OpenVibe.Report, newest first. Each site also publishes its patch notes at /updates on
openvibe.network.

Unreleased

  • The AI section (2026-11-08): OpenVibe.Bench's pages moved here. /ai is the overview: every published benchmark with its leader, runs and last run, every task kind with quality, price and speed, and a fold for the jobs still waiting. /ai/<benchmark> has verified rankings, score against cost in SVG and the latest runs; /ai/<kind> keeps the Elo/Pareto/cost boards and adds the verified runs on the kind's benchmarks. /ai/models/<model> has runs over time, best and worst tasks, cost and recent runs; /ai/compare puts two or three models side by side; /ai/method says how a score is made and how runs are judged. /ai/feed.xml and GET /api/v1/ai/results publish new runs. Every number is Bench's, read through its public API with its 60-second cache and last-good copy; Bench's old HTML pages 301 here.

0.1.0 — 2026-10-28

The service skeleton: a stateless front for the network's open numbers, The Rundown and every stream's after-show
report.

  • Two read clients (server/data/network.js, server/data/live.js): OpenVibe.Network's open stats and
    OpenVibe.Live's Rundown and recap APIs, with injectable fetch, 8 s timeouts, an in-memory cache (1000 entries,
    oldest out; 2 to 10 minutes per answer) and one short log line on failure. A failure is null, never a throw.
    Slugs, stream ids and usernames are validated before a source request; a bad parameter is a 404 without one.
  • Pages (server/http/pages.js, server/views/index.js): /, /stats, /rundown, /rundown/t/:slug,
    /rundown/e/:streamId, /rundown/s/:username, /after-show/:streamId and /c/:username. The views are plain
    placeholders with every dynamic value escaped; the main session designs the real pages. A missing source answer
    is the 404 view.
  • JSON API (server/http/api.js): /api/v1/stats, /api/v1/rundown, /api/v1/rundown/topics,
    /api/v1/rundown/t/:slug, /api/v1/after-show/:streamId and /api/v1/c/:username answer the source's document
    as it came, CORS-open and public for two minutes; 120 requests a minute per address; problem+json 404s.
  • Plumbing: helmet with the same CSP as OpenVibe.Help, /api/health, /api/ready (Network and Live are
    optional, so a dead source is degraded and still 200), /release.json, /release-metrics, /metrics on
    loopback, /shared/*, /css and /js (immutable only with the matching ?v=), robots.txt, sitemap.xml
    (the home, /stats, /rundown and every topic), llms.txt, and the SDK's graceful stop.
  • Deploy: deploy/systemd/openvibe-report.service on 127.0.0.1:5080 and
    deploy/nginx/openvibe.report.conf (www → apex, Let's Encrypt certs, GET-only /api/), plus STATUS.json,
    .env.example and the shared CI workflow.
  • Tests (test/): the clients' cache, expiry, failure and parameter rules; every page and its 404s; the API
    shapes, CORS, cache and rate limit; robots/sitemap/llms; health, readiness and the static cache.