What's new

Every feature, fix, and improvement shipped to SkyNimbus. Updated with each release.

2026
v2.13 June 3, 2026
Cost Anomalies fix for self-hosted tenants and early-month MTD
FIX Cost Anomalies data sovereignty — the volatile-services query in /api/spend/forecast-anomalies was running against the central database instead of the tenant’s, leaving the “Volatile Services” panel permanently empty for self-hosted tenants. Now correctly scoped via the tenant query function.
NEW Wider trailing window for anomaly detection — the dashboard widget and Anomalies page table now always evaluate against the last 30 days of trend data instead of just the user-selected range. Eliminates “no anomalies detected” on the 1st–3rd of any month when MTD has only 1–2 days of data due to Cost Explorer’s 24–48h reporting lag.
INFRA New external module sn-anomaly-window.js wraps detectAnomalies() to swap the wider trend window in during detection without affecting visible KPIs or charts.
v2.12 June 2, 2026
Auto-sync blocker fixed, SaaS report, JA in PDFs, sub-company allocation
FIX Auto-sync reliability for self-hosted tenants — scheduled syncs now use a fresh-client connection pattern that matches manual sync, eliminating silent failures on NLB-fronted PostgreSQL where pooled connections went stale. The chronic auto-sync gap is closed.
FIX Manual sync error path sovereignty — when a manual sync fails for a self-hosted tenant, the error notification and last_error update now write to the tenant’s own database instead of central.
NEW SaaS Spend Report — 11th report template. KPIs (Total SaaS Spend, Products, Total Seats, Avg $/Seat) plus a subscriptions table, generated as a PDF.
NEW Japanese language support in PDF reports — reports generated with the UI set to JA now render with translated labels and Japanese-capable typography via Noto Sans JP. Static labels translate through the existing phrase dictionary plus a PDF-specific supplementary dict; dynamic data (amounts, service names) renders raw. Date formatting follows ja-JP locale conventions.
NEW Sub-company cost allocation — Chargeback page surfaces parent + child tenant spend breakdowns when sub-companies are configured. Section auto-hides for tenants without children.
FIX Spend Trend chart on 1y/YTD — eliminated a phantom December bucket, restored February, and recovered June at the end of the range. Was a UTC/local-time mixing bug visible to users in non-UTC timezones (e.g. JST shifted Jan 1 into prior year).
FIX Scheduled Reports modal — dropdown now shows all 11 report types with correct IDs; backend properly serializes the recipients array as JSONB instead of leaking “invalid input syntax for type json” to the user; column-name typo (last_sent vs last_sent_at) resolved.
FIX Marketing nav (JA) — “Who it’s for” and “Compare” items now translate cleanly. Removed a greedy substring entry that was corrupting the full phrase.
INFRA Internal admin portal — added a read-only DB Query tool for master-tier admins with starter queries, auto-LIMIT 10000, 30s timeout, full audit logging, and correct routing to self-hosted tenant databases.
INFRA Internal admin portal sovereignty — connections list, tenant detail, and trigger-sync endpoints now correctly fan out to self-hosted tenant databases (previously only saw central). One remaining leak (Stripe webhook payment-fail notification) tracked for follow-up.
INFRA Provider color system — added CSS variables for Supabase, Pax8, and OCI; standardized chart provColors objects to reference them instead of hardcoded hex.
v2.11 June 1, 2026
Dashboard forecasts, new reports, audit-loop fix
NEW On-Prem Infrastructure Report — hosts, VMs, utilization, and monthly cost across the on-prem fleet.
NEW Kubernetes Cost Report — cost by namespace, workloads, pods, and CPU/memory drivers.
NEW Range-aware dashboard KPIs — each date range now shows correct labels (Cloud Spend YTD, Monthly Run Rate, Year-End Forecast) instead of generic MTD copy.
NEW Consistent EOY forecasts — 90d and 1y ranges produce the same year-end number, computed from actual YTD plus the recent 30-day daily rate.
NEW Spend Trend chart now spans the full selected range — YTD view shows all months from January with empty bars for months without data.
NEW Day-1-of-month empty state — on the first day before billing posts, the dashboard shows “Awaiting first 24h of [Month] billing” with a real forecast already available from the recent rate.
NEW Japanese translation keys for the new dashboard KPIs and report templates, ready for code wiring.
FIX Privacy audit int32 overflow — latent setTimeout bug that fired the monthly audit in a tight loop on the 30th of any month (CPU 8% → 1%, log flood eliminated). Delays now chunked to 24-day windows.
FIX LLM Spend Report renders correctly — $46.95 across 5 models / 31.9M tokens.
FIX Rightsizing Report — new endpoint surfaces 8 recommendations totaling $1,155/mo ($13,860/yr).
FIX Governance Scorecard policy coverage — was querying the wrong table (0%); now reads governance_policies and reports 100% coverage / 75% score.
FIX Dashboard onboarding wizard no longer appears for established tenants on the first day of a new month before billing posts.
INFRA Cache-busting convention bumped per JS patch (?v=pNN) so external enhancement modules pick up changes after every deploy.
v2.10 May 29, 2026
LLM Spend — real provider integrations
NEW LLM Spend module now backed by real API integrations — OpenAI and Anthropic usage endpoints, with provider stubs for Google, Mistral, Perplexity, Cohere, Groq, Together, Replicate, DeepSeek, and xAI.
NEW Connection wizard with test-before-save — verifies API credentials against the provider before storing.
NEW Per-model breakdown with input / output / cache token split — surfaces prompt-caching savings on Anthropic.
NEW 30-day spend trend chart, by-provider bars, and 7d-vs-prior-7d anomaly callouts.
NEW LLM budgets — monthly caps per provider, model, or connection with at-risk and over-budget status.
INFRA Encrypted credential storage (AES-256-GCM) using existing DB_ENCRYPT_KEY pattern. Self-hosted tenants store keys in their own DB — central and self-hosted parity preserved.
INFRA 12-hour scheduled sync hooked into existing runScheduledSync; manual Sync now button per connection.
INFRA 28-row seed of llm_model_pricing for cost computation; price lookups versioned by effective_from date.
FIX Eliminated root PM2 zombie process that was shadowing port 3001; configured pm2 startup for ubuntu user.
FIX Governance gauge completely rewritten — no more flicker. Gauge now wraps the dashboard render chain, deletes the old card, and reattaches a persistent node with cached data. Single animation, single API call, 5-minute cache.
NEW Tags column added to Cloud Spend table — shows resource tags from spend_records JSONB. Ready for AWS/Azure tag data to flow through sync.
FIX Settings → Plan & Billing now shows real spend data for self-hosted tenants (was querying central DB instead of tenant DB). Connection count fixed for self-hosted tenants.
FIX “3Unlimited” display fixed in Plan & Billing — enterprise metrics now show count and Unlimited on separate lines.
NEW Weather Station Windows MSI installer (4.3 MB) — supports silent install via msiexec /quiet for Datto, ConnectWise, and other RMM platforms. Download available in On-Prem → Deploy Station.
v2.9 May 28, 2026
UI Overhaul, AI Assistant, Sync Reliability & Crash Loop Fix
NEW SkyNimbus AI Assistant — ask questions about your cloud spend in natural language. Powered by Claude with full access to your real-time FinOps data including spend, services, anomalies, governance and budgets.
NEW Royal Purple sidebar — collapsible section groups with color-coded active indicators and colored pips for visual wayfinding across 8 module categories.
NEW Dashboard per-section refresh — each dashboard section has its own refresh button with spin animation and timestamp confirmation.
NEW Custom dashboard switcher — switching between custom dashboards applies the saved widget layout. Edit button for quick customization with 9 granular widget toggles.
IMPROVE Modern typography — removed all-caps monospace labels app-wide. Mixed-case DM Sans with proper font-weight hierarchy.
IMPROVE Refreshed top bar — centered wider search bar, deep purple logo, circle theme toggle, AI quick-access button.
IMPROVE Marketing site — AI Assistant and On-Prem feature cards, 6 providers, 28 modules, updated comparison table.
FIX PM2 crash loop — added process-level error handlers to prevent pool errors and EADDRINUSE from crashing the server. Restart count stays at zero.
FIX Self-hosted scheduled sync — 12-hour auto-sync was passing a query function instead of a connection string to sync workers.
FIX Central tenant scheduled sync — sync worker was not receiving DATABASE_URL. Now explicitly passes connection string for all tenant types. 2341 records synced.
FIX Dashboard gauge flicker — governance KPI row hidden during initial animation race, fades in once settled.
INFRA External CSS/JS modules — UI refresh via sn-ui-refresh.css and sn-ui-refresh.js. Fully reversible, zero shell HTML changes.
INFRA Process resilience — server survives unhandled promise rejections, uncaught exceptions, and port conflicts without crash-looping.
v2.8 May 27, 2026
Weather Station, On-Prem Monitoring & Cloud Spend Filters
NewWeather Station agent v1.0 — deploy on-premises data collectors to monitor vSphere and Hyper-V infrastructure. Dual-platform Go binary with one-command install for Linux and Windows.
NewOn-Prem dashboard — utilization heatmap, waste detection table, host overview, and KPI cards showing monthly cost, VM count, avg utilization, and wasteful VM count.
NewVM Detail panel — click any VM tile to see resource allocation, utilization bars, cloud migration cost comparison (AWS/Azure/GCP), waste score, and rightsizing recommendations.
NewCloud Spend Account column — every service row now shows the cloud account ID, making multi-account cost attribution visible at a glance.
NewSmart filter dropdowns — selecting Provider, Account, or Service as a filter dimension automatically swaps the text input for a dropdown of real values from your data. No more typing account IDs.
NewClear Filter button — after applying a spend filter, a visible bar appears above the table with a one-click reset.
NewAuto-refresh — all pages silently poll for new data every 30 seconds. After any create/delete/update action, the current page refreshes automatically. No more manual F5.
FixGovernance gauge race condition — resolved a 4-way animation conflict between score API, scan API, gauge renderer, and fallback handler. The 53% Walk Maturity score now loads reliably on every page load.
FixCloud Spend filter — completely rewrote the filter engine to properly read dimension, operator, and value inputs. Supports is, contains, starts with, and not operators across all dimensions.
FixDuplicate connection prevention — POST /api/connections now returns 409 if the same provider + account is already connected. Prevents double-counted spend data.
ImproveTab visibility handling — auto-refresh pauses when the browser tab is hidden and resumes immediately when you return, reducing unnecessary API calls.
ImprovePost-action data sync — creating a budget, adding a team, deploying an agent, or any mutation triggers an immediate data refresh on the current page.
InfraExternal JS module architecture — new features deploy as separate .js files (sn-enhancements.js, sn-autorefresh.js) loaded at runtime, reducing risk of breaking the main application shell.
InfraWeather Station Go build system — Makefile with dual-platform compilation, version injection via ldflags, and automated binary deployment to download server.
v2.7 May 25, 2026
Translation Engine, Spend Data Integrity & FAQ Localization
NewTranslation engine v3.0 — replaced textMap/MutationObserver approach with tHTML() engine that translates strings before DOM insertion. Phrase dictionary with 1,000+ entries, keyed translations, and live audit tool (snI18n.audit()).
NewFull-site i18n coverage — engine + dictionary deployed across all 6 client-facing pages (shell, login, onboarding, index, contact, support).
NewFAQ Japanese localization — all 67 FAQ answers (Understanding SkyNimbus, FinOps Foundations, Module Walkthroughs, New Features, Glossary) translated via dedicated sn-faq-ja.js with DOM replacement.
NewDuplicate connection prevention — POST /api/connections now returns 409 if the same provider + account is already connected. Prevents double-counted spend data.
FixSpend data integrity — identified and removed orphaned spend_records on self-hosted tenant DB that were doubling reported costs ($15k → $8k, matching AWS billing).
FixDemo data cleanup — removed duplicate demo connections (loaded twice) inflating real spend totals. Fixed renderDemoSection() timing so Clear Demo Data button appears reliably in Settings.
FixGovernance maturity gauge — loadMaturityScore() was using broken localStorage.getItem("token") instead of getValidToken(). FinOps Maturity tile now loads consistently.
FixTranslation engine t() function — empty keyed dict entries no longer match as valid translations. Fallback chain: keyed → phrase dict on fallback text → phrase dict on key → English.
ImproveJapanese translations — 3 translation batches covering all 26 modules: nav labels, buttons, status messages, governance terms, budget/forecast/rightsizing/K8s/anomaly/policy/tag/chargeback/reports/CSP/SaaS/settings content.
ImproveChangelog now uses translation engine — version history page translates to Japanese alongside the rest of the platform.
InfraSelf-hosted tenant spend cleanup — connection deletion now properly removes orphaned spend_records from tenant DBs, not just central DB.
Infrai18n architecture: sn-i18n-engine.js (core), sn-i18n-dict.js (1,000+ phrase dictionary), sn-faq-ja.js (67 FAQ translations). MutationObserver as safety net.
NewWeather Station on-prem agent — Go binary architecture for collecting VM utilization from vSphere/vCenter. 4 database tables (agents, VMs, hosts, snapshots), 10 API endpoints, tenant-aware migrations.
NewOn-Prem dashboard module — sidebar entry, empty state with Deploy Weather Station CTA, agent token generation modal, KPI cards, utilization heatmap, waste detection table, host overview.
NewDebug console — floating error panel (Ctrl+Shift+D) catches JS errors, unhandled rejections, console.error/warn, and failed HTTP fetches with stack traces.
NewAuto-translate innerHTML prototype override — intercepts Element.prototype.innerHTML setter so all dynamic content translates automatically. Zero manual wrapping needed.
FixEngine: skip empty dictionary entries during loading — 857 auto-extracted empty entries were blocking real translations. One-line fix unlocked all translation batches.
FixConnection delete uses req.tq() for spend_records cleanup — self-hosted tenant databases properly cleaned on connection removal.
Improve3 additional translation batches — architecture components, settings danger zone, empty states, glossary. Dictionary total: 3,500+ entries across 26 modules.
NewAuto-translate innerHTML prototype override — intercepts Element.prototype.innerHTML setter so all dynamic content passes through tHTML() automatically. Zero manual wrapping needed for existing or future code.
FixEngine: skip empty dictionary entries during loading — 857 auto-extracted entries with empty values were blocking real translations from matching. One-line fix unlocked all translation batches.
FixConnection delete now uses req.tq() for spend_records cleanup — ensures self-hosted tenant databases are properly cleaned when connections are removed.
Improve3 additional translation batches (4, 5, 6) — architecture sandbox components, settings danger zone, remaining UI labels, empty state messages, glossary definitions. Total dictionary: 3,500+ entries.
v2.6 May 22, 2026
Custom Integrations, Executive Summary & AWS Migration
NewSupabase integration — connect your Supabase account to track project-level spend (compute, storage, edge functions). Management API sync with per-project cost breakdown.
NewPax8 integration — MSP subscription and billing data. OAuth2 API sync pulls companies, subscriptions, and monthly costs. Paginated data import with automatic cost calculation.
NewOracle Cloud (OCI) integration — connection wizard for Tenancy OCID, User OCID, API Key Fingerprint, and Region. Backend sync coming soon.
NewCustom Integrations section on Connect CSPs — scalable grid for non-cloud providers. Supabase, Pax8, and OCI cards with connect wizards.
NewProvider color mappings — Supabase (green), Pax8 (cyan), OCI (red) now display with branded colors across all charts, badges, and spend breakdowns.
NewCompetitor comparison table on marketing site — 16 features compared against Vantage, CloudHealth, Kubecost, and Cloudability.
ImproveGovernance score unified — dashboard gauge, FinOps Maturity tile, and governance panel now pull from single API source. No more conflicting numbers.
ImproveAWS pricing fallback chain — credentials resolved from .env, central DB, or tenant self-hosted DBs automatically.
ImproveMarketing page updated — 4 new feature cards (SkyPilot AI, Kubernetes, Tag Forge, LLM Spend), 26 modules, refreshed hero text.
ImproveHelp & FAQ — support button now navigates to Support Tickets module. New walkthroughs for Tag Forge, SkyPilot, and session timeout.
InfraFull VPS migration to AWS EC2 — nginx, SSL, PostgreSQL, PM2 with ecosystem.config.js. Zero-downtime DNS cutover.
InfraSelf-hosted tenant DB encryption key migration — re-encrypted credentials with new JWT secret. SSL enabled for NLB connections.
FixSupport Tickets page title no longer shows raw i18n key.
FixHelp & FAQ support button navigates to correct module.
NewExecutive Summary PDF export — branded one-page report with KPI cards, daily spend trend chart, top cost drivers table, provider breakdown, and governance health. Auto-triggers print dialog for Save as PDF.
ImproveCSV export fixed — queries corrected to use spend_records table with tenant-aware database routing for self-hosted deployments.
InfraNode.js upgraded from v18 to v22 — resolves AWS SDK deprecation warnings and ensures long-term support through 2027.
FixRemoved 3,800 characters of dead governance calculation code — _computeMaturityScore eliminated, single API-driven source of truth.
v2.5 May 21, 2026
SkyPilot AI, Tag Forge & Kubernetes Depth
NewSkyPilot — AI-powered commitment savings engine with Claude integration. Analyzes 90 days of spend to recommend Savings Plans, Reserved Instances, and CUDs across AWS, Azure, and GCP. Includes Why? insights, Ask SkyPilot chat, and AI Executive Summary.
NewTag Forge — virtual tagging engine. Apply tags to spend records without modifying real cloud resources. Rule builder with conditions, preview, and spend-by-tag grouping.
NewKubernetes cost allocation — namespace and workload-level cost visibility. Register EKS, AKS, GKE, or self-hosted clusters. CSV import, label-based grouping, daily trend, workload drilldown.
NewSpend-based tiered pricing — Free ($0), Starter ($49), Pro ($149), Business ($349), Enterprise (custom). Prices based on monthly managed cloud spend.
NewLLM spend tracking — monitor costs across OpenAI, Anthropic, Google, and other LLM providers.
Security30-minute idle timeout with 5-minute warning banner. Session auto-expires on inactivity.
SecuritySSO MFA enforcement — Google and Microsoft SSO now require TOTP verification when MFA is enabled.
ImproveArchitecture sandbox — live pricing from AWS and Azure APIs. Properties panel with instance family, size, region, and storage configuration.
ImproveAuto-detect browser language for Japanese localization.
FixSaaS catalog search now uses shared renderer — no more stale results.
FixFinOps Maturity Score timing — no longer requires visiting Connect CSPs first.
v2.4 May 20, 2026
Stripe Billing, Partner Portal & Governance Engine
NewStripe billing integration — checkout, subscriptions, customer portal, and webhook handling.
NewPartner Portal — tiered partner program (Silver/Gold/Platinum) with dashboard, client management, commission tracking, and SSO.
NewGovernance score API — composite score with dashboard gauge and dimension breakdown.
NewCloud Spend drilldown — click any service to see daily breakdown by account and region.
NewBudgets frontend — gauge visualizations, KPIs, CRUD modal for budget management.
InfraSelf-hosted tenant DB auto-migrations on startup. Nginx 600s proxy timeout for long syncs.
FixData sovereignty enforcement — self-hosted tenants never fall back to central database.
v2.3 May 19, 2026
APPI Compliance, Support Module & Architecture Fixes
SecurityAPPI (Japan privacy law) compliance — privacy policy, data export, account deletion, consent tracking, breach notification, audit logging.
NewSupport Tickets module — create, list, reply, priority badges, status tracking.
NewInvoice viewer in Support — print-ready invoice display.
NewFloating architecture cost widget — live-updating total in the sandbox.
NewSub-company management — context switching, company switcher dropdown, detach and remove.
FixArchitecture zoom, undo/redo, export JSON, cost/tag overlay panels.
v2.2 May 13, 2026
Admin Portal, Scheduled Reports & Anomaly Forecasting
NewInternal admin portal — 9 pages (Dashboard, System Status, Accounts, Users, Connections, Audit, Billing, Discounts, Staff).
NewScheduled PDF reports — daily, weekly, or monthly email reports with provider breakdown.
NewAnomaly forecasting — 7-day spend projection with confidence intervals and volatile service detection.
NewIaC cost estimation — Terraform plan upload with GitHub Actions CI/CD integration.
NewAPI keys for CI/CD — create, revoke, and manage programmatic access tokens.
NewDemo data system — one-click load of 60 days of realistic multi-cloud spend data.
NewTrial system with 14-day free trial and upgrade overlay.
SecurityRefresh token rotation with proactive renewal before expiry.
v2.1 May 2026
Architecture Sandbox & Azure Pricing
NewArchitecture cost sandbox — drag-and-drop 100+ cloud components with real-time pricing.
NewAWS EC2 pricing via Pricing API — 2,260 instance types, 13 regions.
NewAzure VM pricing via Retail Prices API — live pricing, no authentication required.
NewPassword reset flow with email verification.
NewSSO with Google and Microsoft — one-click sign-in.
ImproveDashboard overhaul — governance gauge, stacked trend bars, anomaly detection cards.
v2.0 April 2026
Platform Launch
NewMulti-cloud spend visibility — AWS, Azure, GCP with read-only API access.
NewSpend forecasting with EOM projections and growth scenarios.
NewTag governance — required tags, allowed values, auto-remediation.
NewBudgets with automated threshold alerts.
NewRightsizing recommendations from AWS Cost Explorer and Azure Advisor.
NewSaaS spend tracking with 12 integrations.
NewChargeback and showback with PDF/CSV export.
NewCarbon footprint estimation with provider-specific emission factors.
NewMulti-tenant architecture with role-based access control.