CHANGELOG · SHIPPED CONTINUOUSLY

What shipped, what's next

Hamro AI ships in the open. Every change lands here first — and the public roadmap below shows where we're heading.

Live model health is always on /status

v1.9

Unlisted admin & bulk key controlAug 31, 2026Latest
  • NEW

    Select-all and one-click bulk revoke for API keys

    The admin API keys table gained a checkbox column: a header checkbox selects every visible key at once (indeterminate when partially selected), a bilingual selection bar shows the count with a Clear button, and Revoke N keys… opens a confirm dialog listing the doomed keys before deleting them all in a single request. Works with search — select-all respects the current filter, and revoking auto-refreshes the real usage summary.

  • IMPROVED

    Admin console is now unlisted

    The Admin link is gone from the site header (desktop and mobile) and no public page links to the console anymore. Reach it only by typing the address: ai.hamro.site/admin — the sign-in page stays where it was.

  • IMPROVED

    Owner credentials + no hints on the login page

    The admin account now uses the owner's email and password (PBKDF2-hashed at rest, same as before — the raw password is never stored). The sign-in page no longer displays any credential hint, and the email placeholder is neutral.

v1.8.1

Dialog centering restoredAug 31, 2026
  • FIXED

    Every dialog opened at the bottom of the page — now centered again

    A decorative-CSS regression (an unlayered position:relative rule meant to anchor the bunting strip) silently overrode the fixed-positioning utility on every dialog, so Browse models, Add provider and the playground's View-as-API-call dialog all rendered at the page bottom instead of the viewport center. The rule is gone — fixed positioning was already a valid anchor for the strip — and all dialogs verified centered on desktop and mobile, with the bunting strip intact.

  • FIXED

    Admin providers header no longer causes sideways scroll on phones

    On 375px screens the Providers tab header row (last-run indicator + Run health check + Add provider) refused to wrap, pushing the whole page 18px sideways. The row now wraps, the bilingual last-run text truncates with a full tooltip, and equivalent rows on Models and Request logs were hardened the same way. Verified: zero horizontal overflow on every page and every admin tab at 375px.

  • IMPROVED

    Browse-models failure guidance, bilingual

    When a provider rejects the model-list fetch, the alert now explains the likely cause bilingually (401/403 usually means the API key), the HTTP badge carries a tooltip, and long provider URLs wrap instead of stretching the dialog on phones.

  • IMPROVED

    Cleaner dev console

    The root <html> element now declares its smooth-scroll intent (data-scroll-behavior), silencing Next.js's route-transition warning in the console — plus a hard cache rebuild flushed a stale CSS chunk that had been serving duplicate dialog rules.

v1.8

Inline recovery & keyboard accessAug 31, 2026
  • FIXED

    Browse-models 403/401: fix it without leaving the dialog

    When a provider rejects the model-list fetch (HTTP 403/401), the Browse models dialog now shows the status code and an inline API-key field — paste the key, hit Save key & retry, and the list re-fetches in place. No more close-navigate-reopen. A Retry fetch button and an edit-the-provider shortcut cover every failure cause.

  • FIXED

    Example chips no longer cut off mid-word

    Playground example chips previously hard-truncated their labels at 42–48 characters (…three sente…). They now carry a short, always-complete label — the full prompt still lands in the input on click, with a title tooltip showing it in full.

  • NEW

    Skip-to-content for keyboard users

    The first Tab stop on every page is now a bilingual Skip to content link — it slides in as a Rhododendron bar at the top of the viewport and jumps focus straight past the navigation. Anchor targets also scroll clear of the sticky header.

  • IMPROVED

    Windows High Contrast support

    Forced-colors mode (Windows High Contrast) now keeps buttons, inputs and the skip link outlined and legible instead of collapsing into the system palette.

  • IMPROVED

    Upstream outage recovered — verified end-to-end

    The platform token outage that caused every model to 401 has resolved. The half-open circuit breaker flipped models back automatically as traffic succeeded, and a full health check re-verified every model. The incident banner is gone and the hero pill reads models online again.

  • IMPROVED

    Timeline dot alignment & em-dash line breaks

    The changelog release dot now centers against its version number on mobile, and the playground sub-headline keeps its em-dash attached to the preceding word so no line starts with a dangling dash.

v1.7

Operator history & subscriptionsAug 31, 2026
  • NEW

    Admin Overview tab with health history

    Every health check run — automatic every 6 hours or admin-triggered — now writes a snapshot. The new Overview tab (first in the admin console) charts models online/degraded/offline over time with a recent-snapshots table.

  • NEW

    RSS status feed

    Subscribe to gateway status in any RSS reader — ai.hamro.site/api/status/feed carries the current model summary plus one item per active hour, all real telemetry. A Subscribe section on /status makes the URL copyable.

  • NEW

    Quickstart recipes in the docs

    Copy-paste recipes for the three most common integrations: Python (openai SDK), Node.js (openai SDK) and streaming cURL — complete with the free key flow and the model:"auto" convention.

  • NEW

    ⌘/Ctrl+Enter sends in the playground

    The chat composer now supports the universal send shortcut with a platform-aware hint chip (⌘⏎ on Mac, Ctrl+⏎ elsewhere). Plain Enter still sends, Shift+Enter still makes a newline.

  • IMPROVED

    Uptime totals in /v1/status

    The public status endpoint now includes uptime_24h — total requests, success rate and fallback events for the last day — sharing the same 60-second cache as the uptime bar.

  • IMPROVED

    Motion, print & keyboard details

    Chat bubbles rise softly into place, dialogs float over a blurred backdrop, anchor navigation scrolls smoothly, kbd hints get a consistent chip style, and every page prints as a clean report — no navigation, ink on white.

v1.6

Persistence & telemetryAug 31, 2026
  • NEW

    Playground conversations persist on refresh

    Chat, image and smart conversations now auto-save to your browser and restore on page refresh — close the tab, come back, and your last session is right where you left it (capped at 50 messages per tab).

  • NEW

    24-hour uptime bar on /status

    A new 24-cell histogram on the status page shows real success rate per hour for the last day — green / gold / red buckets with hover tooltips, plus a totals summary. Backed by a new public /api/status/uptime endpoint with 60-second caching.

  • NEW

    Admin request logs CSV export

    Operators can now download the current filtered log set as a CSV — up to 5,000 rows with full attempts summary, properly escaped, UTC-stamped filename. The Logs tab gets a Download CSV button.

  • IMPROVED

    Copy trace button in the playground

    Every routing trace now has a one-click Copy button at the top — pretty-printed JSON of the full attempt chain for bug reports. Works across chat, image and smart tabs.

  • IMPROVED

    "Last run" indicator on admin providers

    The Providers tab now shows when the last health check ran (bilingual, relative time) right next to the Run health check button — so it's obvious at a glance whether health data is fresh.

  • IMPROVED

    Brand-true micro-interactions

    Rhododendron-tinted focus rings sitewide, bunting-toned tooltip strips, shimmer-animated skeletons, animated inline link underlines, brand-tinted scrollbar, and selection color — every surface now feels on-brand.

v1.5

Operator toolkitAug 31, 2026
  • NEW

    Admin-triggered health checks

    A "Run health check" control in the admin console probes every active provider and refreshes model health on demand — with an opt-in image-model probe for the full picture.

  • NEW

    Per-model probe buttons

    Every row in the Models tab now has a one-click probe that tests that exact model upstream and updates its health fields instantly.

  • NEW

    Recovery probes in the routing trace

    When the gateway retries an offline model through its half-open circuit breaker, the attempt is now labelled "recovery probe" in the playground trace and admin request logs.

  • IMPROVED

    Errors link to live status

    Failed playground requests now offer a "View live status" link beside Retry, so during an incident you can see exactly what's affected.

  • IMPROVED

    Quieter, brand-true interface details

    Dialogs wear a bunting strip, tabs get an animated rhododendron indicator, data-table rows highlight on hover, and the conversation panel fades softly under its top edge.

v1.4

Operational transparencyAug 31, 2026
  • NEW

    Standard rate-limit headers

    Every /v1 response now carries standard quota headers — x-ratelimit-limit-day, -remaining-day and -reset-day — and a daily-limit 429 adds Retry-After. Documented in /docs.

  • NEW

    Most-served models leaderboard

    /status now ranks models by real traffic — requests served, success rate, average latency and estimated value — computed from the gateway's own request logs.

  • NEW

    Admin request logs

    A fourth admin tab browses the full gateway request history — filters, pagination and expandable routing traces, sanitized so upstream internals never surface.

  • NEW

    Success/failure donut split

    The task-type donut on /usage now splits each slice into a solid success arc and a faded failure arc — you see not just what you called, but what actually worked.

  • NEW

    Provider ping & scheduled health checks

    Admins can ping any provider for a live reachability probe, and the gateway now schedules its own health checks every six hours — no external cron required.

  • IMPROVED

    Honest status, everywhere

    The home hero pill now reports the real gateway state — ok, degraded or outage — instead of always green, and the status page raises an incident banner when models degrade.

  • FIXED

    Errors that don't leak

    API error responses are now clean, categorized messages that never leak internal upstream details — raw diagnostics stay in the admin logs.

  • FIXED

    Readable docs tables

    Documentation tables now scroll horizontally on narrow viewports instead of clipping — every column stays readable.

  • FIXED

    Badge & preview card fixes

    The Answered by badge renders its · separator cleanly again (· mojibake gone), and the social preview card now draws from self-hosted fonts for stable renders.

v1.3

Aug 2026
  • NEW

    Active health checks

    The gateway now probes models on demand — chat, vision and image probes move models between online, degraded and offline without waiting for real traffic. Admins trigger it from the console; a protected endpoint runs it on a schedule.

  • NEW

    API key management

    A new admin tab lists every issued og_ key with real lifetime usage, lets you edit labels and daily limits inline, and revoke a key instantly.

  • NEW

    Task-type donut on /usage

    The usage dashboard now shows a donut chart breaking your requests down by task type — chat, image, smart — with real counts and percentages.

  • NEW

    Social preview card

    Links to ai.hamro.site now unfold into a proper card — देवनागरी wordmark, Himal skyline and a red sun — generated on the fly.

  • NEW

    This changelog page

    Everything we ship, in one place — plus the public roadmap below.

v1.2

Aug 2026
  • NEW

    Usage dashboard + /v1/usage

    Key holders can now paste their og_ key and see real requests, quota, latency, savings, a 14-day activity chart and a recent-request table — all from a read-only endpoint that never mutates counters.

  • IMPROVED

    Search engine basics

    Per-page titles, descriptions, canonical robots.txt and a sitemap — the site now tells crawlers exactly what's public and what isn't.

  • FIXED

    Sharper numbers & links

    Count-up animations no longer flicker with float noise, robots.txt no longer 500s, and footer Build links point at real doc anchors.

v1.1

Aug 2026
  • NEW

    Comparison page

    /compare stacks Hamro AI against OpenAI, Anthropic, Gemini and Mistral on cost, signup friction and features — with live savings computed from real request volume.

  • IMPROVED

    Animated hero stats

    Homepage stats now count up as they scroll into view — real numbers from /v1/status, no fake motion for its own sake.

v1.0

Aug 2026 · first public cut
  • LAUNCH

    The gateway itself

    One OpenAI-compatible endpoint that ignores the model field, auto-detects the task, scores every enabled free model by health, latency and load, and fails over in milliseconds. Streaming included.

  • LAUNCH

    Free keys, no signup

    One click on /get-key issues an og_ key with a 200-request daily quota — enough to build something real, cheap enough to stop abuse.

  • LAUNCH

    Playground, status, docs

    A playground with zero model picker, a live status page crowned by the Model Skyline — one peak per provider — and full API documentation.

  • LAUNCH

    Admin console + catalog sync

    Providers and models managed from one console; provider keys encrypted at rest; the catalog self-syncs so free models that vanish upstream retire themselves.

PUBLIC ROADMAP

Where we're heading

No dates promised — but the direction is public. When something ships, it moves to the timeline above.

Building

More free providers

Eight provider templates are wired and waiting on keys — each one widens the routing pool and the skyline.

Planned

Voice endpoints

Text-to-speech and speech-to-text behind the same auto-routing promise — Nepali and beyond.

Planned

Embeddings endpoint

/v1/embeddings for search and RAG — free, auto-routed, same key.

Planned

Shareable playground runs

Pin a great answer and send the link — the trace shows which model served it.

Planned

Quota insights

Gentle heads-ups as you approach the daily limit, with a usage forecast from your own history.

Planned

Community model requests

Vote for the next provider template — the pool grows where builders point.

Build on what's already shipped

Hamro AI sits in front of many AI providers and exposes one simple endpoint. You never pick a model — the system always picks the best free one for the job, and switches instantly if it fails.