Changelog
All notable changes to Spheron AI will be documented in this file.
Track new features, improvements, bug fixes, and breaking changes across all releases. This changelog is automatically updated with each deployment to ensure you always have the latest information about platform updates and enhancements.
v1.17.1 • 2026-04-28
API Reference & Referrals Page Refresh
Design & UX RefreshThe API reference and referrals pages have been rebuilt to match the v1.17.0 design refresh, the deployment, volume, and reserved GPU wizards have picked up another round of polish, and Spheron AI spot offers now stay fresher in the marketplace.
- New API Reference Page: Endpoints are now grouped by category, with short descriptions, cleaner endpoint cards, refreshed request and response examples, and a tighter quick-test panel for easier scanning and testing
- Refreshed Referrals Page: Stats, the share link, share buttons, and the "how it works" section have been rebuilt with clearer hierarchy, step cards, and reward callouts, so it is easier to see your rewards and pass on your link
- More Wizard Polish: The deployment, volume, and reserved GPU wizards have picked up another round of spacing and typography tweaks across cards, selections, and order summaries
- Fresher Spheron AI Spot Pricing: Spheron AI spot offers now refresh on the same fast cadence as other spot providers, so spot availability and pricing stay current without a manual reload
v1.17.0 • 2026-04-27
Marketplace Design Refresh, Volume Discounts & NVLink GPU Flagging
Design & UX RefreshA top-to-bottom visual refresh across billing, teams, volumes, API keys, SSH keys, deployment, and reserved GPU pages. Discounts now apply to volumes the same way they apply to deployments, the reserved GPU contact form captures more useful detail, and Spheron AI NVLink GPUs are clearly flagged in the marketplace.
- Unified Visual Language: Billing, teams, volumes, API keys, SSH keys, deployment wizard, and reserved GPU wizard have all been redesigned around a shared header, card, and table style for a calmer, more consistent look
- New Team Switcher: The team menu has been consolidated into a single switcher in the top navigation. Create, switch, and manage teams from one place instead of several disconnected dialogs
- Refreshed Billing Page: Balance, deposit history, usage analytics, discount overview, and the add-credits flow (custom amount, saved card, billing details) have all been rebuilt with clearer hierarchy and tighter spacing
- Smoother Wizards: Deployment, volume, and reserved GPU wizards share a common header treatment and improved step layouts. The order summary sidebar now stays put when dropdowns or dialogs open, so it no longer disappears mid-configuration
- API Keys & SSH Keys: Empty states, generation dialogs, the whitelist-required state, the quick reference, and the documentation card have all been updated to match the new style
- Volume Cards & Sidebar: Volume cards, the volume details sidebar, the resize dialog, and the create-volume order summary have been refreshed to read more clearly at a glance
- Volume Discounts: Active team discounts now apply to volume hourly rates at creation and at resize time, the same way they already apply to deployments. The discounted rate is locked in when the volume is created. If a team's discount later expires or is revoked, the volume automatically reverts to its standard rate on the next billing cycle
- Spheron AI NVLink GPUs Flagged: Spheron AI GPU offers that are NVLink-bridged variants (for example
H100 NVL) are now clearly marked in the marketplace so you can pick the interconnect that matches your workload - Richer Reserved GPU Contact Form: The reserved GPU request form now captures phone country and country code separately (with a country picker), preferred GPU model, requested GPU quantity, and an optional marketing consent, so the team can route inquiries faster
- Discount Preview No Longer Fails Silently: The discount-code preview used in billing, the deposit flow, and the deployment and volume wizards now handles non-JSON error responses gracefully instead of failing in the background. Users see a clear error state instead of a stuck preview
- Create Team Dialog Stays Open Until Done: The create team dialog now stays open and shows its loading state until the team is actually created, matching the behavior of the invite member and add SSH key dialogs
- Data Crunch Cleanup Safety: The background cleanup that removes orphaned Data Crunch volumes now has additional safeguards so marketplace-tracked, idle, and shared user-owned volumes are never eligible. Only true orphans can be removed
- Runtime Display: Reserved runtime hours now display as
N/Ainstead ofN.Awhen no expiry is set
-
Volume Hourly Rate (all clients): Volumes created or resized while a team has an active discount now bill at the discounted rate. The volume response from
GET /api/volumesandGET /api/volumes/:volumeIdreflects the locked-in discounted rate; the pre-discount rate is also returned for reference. If the team's discount later expires, the rate automatically reverts on the next billing cycle. No request changes are required for clients to benefit from this; pricing endpoints continue to return public list rates. -
Spheron AI GPU Offers: GPU offers from Spheron AI now include an
nvlink: trueflag in their metadata when the GPU model is an NVLink-bridged variant (for exampleH100 NVL,A100 NVL). Non-NVLink offers do not include the flag. Existing fields are unchanged, so existing integrations continue to work and can opt in to the new flag when ready.
v1.16.0 • 2026-04-24
Spheron AI Persistent Volumes & Provider Rules Dialogs
New FeaturesPersistent storage, now on Spheron AI. Create a volume, attach it to a GPU instance at deploy time or while it's running, and move it between instances without losing data. Every volume provider now has a dedicated rules dialog so you know exactly how attachment and lifecycle work before you commit.
- Spheron AI Volumes: Spheron AI is now a supported volume provider. Create and manage persistent storage from the
/volumesdashboard, backed by Cloud-SSD storage - Attach at Deploy Time or Later: Pick a Spheron AI volume in the deployment wizard, or attach one to an already-running instance from the volume or instance sidebar. No need to tear down and redeploy to add storage
- Hot-Detach Supported: Detach a volume from a running instance and reattach it to a different instance without terminating either one. Your data moves with it
- Up to 10 Volumes per Instance: A single Spheron AI instance can have up to 10 volumes attached at once. The UI and API enforce the limit automatically so attach requests fail fast instead of in the middle of a deploy
- Single-Attach Volumes: Each Spheron AI volume can only be attached to one instance at a time. The dashboard hides incompatible volumes in the deploy wizard and shows a clear error if you try to double-attach
- Persistent After Termination: Volumes survive instance termination by default. Delete them explicitly from the dashboard when you're done
- Large Storage Ceiling: Create volumes from 1 GB up to 40 TB in a single volume
- Data Crunch Multi-Volume Support: Data Crunch instances can now attach up to 10 shared volumes at a time, up from a single volume in v1.14.1. Each Data Crunch volume can still be mounted on multiple instances concurrently, so you can fan out shared data and mix storage pools on the same instance
- Provider Rules Dialogs: Every volume provider (Spheron AI, Data Crunch, Sesterce, Voltage Park) now has its own "Volume Rules" dialog accessible from the create-volume and attach flows. Each dialog spells out per-provider limits: attach timing, concurrent-attach rules, resize policy, and lifecycle behavior, so you know what you're getting before you create a volume
- Volume Created Success Modal: After a Spheron AI volume is created, a confirmation modal summarizes the rules and offers a one-click "Deploy GPU" shortcut to go straight into the deployment wizard with the new volume pre-selected
- GPU Offer Availability Warning: The create-volume wizard now checks whether the selected provider and region actually have live GPU offers. If there's nothing to attach the volume to, a warning surfaces in the order summary before you confirm
- Smarter Volume Matching in Deploy Wizard: The attach step in the deployment wizard now respects per-provider constraints. Incompatible volumes are filtered, limit warnings appear when you hit the cap, and single-attach volumes already bound elsewhere are shown as blocked with an explanation
- Smarter Region Default on Create Volume: The create volume wizard now auto-selects the first region that actually has live GPU offers instead of blindly picking the alphabetical first. Regions without GPU offers are clearly labeled "No GPU offer present" in the Sesterce, Data Crunch, and Spheron AI dropdowns so you can see which ones to avoid before selecting. The Data Crunch dropdown is also cleaner, with decorative flag graphics removed
- Consistent Region Name Formatting: Massed Compute regions (for example
us-central-3) now display as "Us Central 3" in the deployment wizard, order summary, and instance cards, matching the style used for Sesterce and Spheron AI
- No In-Place Resize (Enforced): Spheron AI volumes cannot be resized once created. The API now returns a clear error on resize attempts instead of silently succeeding. To grow storage, create a new larger volume and migrate your data
- Accurate Region Codes in UI: The dashboard now shows clean region codes (for example
CANADA-1) regardless of the provider's internal naming - Stale Deployments No Longer Lock Volumes: If a previous instance terminated without a clean detach, single-attach volumes are no longer permanently locked. Attach attempts skip terminated, failed, stopped, and deleted deployments when checking occupancy, so you can always reclaim the volume onto a new instance. Applies to both Spheron AI and Voltage Park volumes
- Cleaner Single-Attach Error Messages: When a single attach volume is genuinely in use, the error message now lists only the live conflicting instances instead of every instance the volume has ever been attached to. Terminated and failed deployments no longer clutter the list
- Voltage Park Single-Attach Enforced Server-Side: Voltage Park's one-volume-per-instance and one-instance-per-volume rules are now enforced by the API, not just the UI. Double-attach attempts are rejected even when the request bypasses the dashboard
Creating and using a Spheron AI volume involves three steps:
-
Fetch available regions:
GET /api/volumes/regions?provider=spheron-aireturns aregionsarray. Each entry has anid(the region code to pass at creation time) and aname. Each region now also includes ahasGpuOffersboolean so you can check availability before creating a volume in a dead region. -
Create the volume:
POST /api/volumeswithprovider: "spheron-ai",region: "<region id from step 1>",name(max 50 characters), andsizeInGb(1–40960). The response includes the volumeidyou will use for all subsequent operations. -
Attach to an instance: two options depending on your workflow:
- At deploy time: include
volumeIds: ["<volumeId>"]in yourPOST /api/deploymentsrequest - After the instance is running:
POST /api/volumes/{volumeId}/attachwith{ "deploymentId": "<id>" }
- At deploy time: include
Detaching and re-attaching: POST /api/volumes/{volumeId}/detach with { "deploymentId": "<id>" } frees the volume to be attached elsewhere. Data is preserved. Detach and re-attach are supported without instance downtime.
Limits: Each Spheron AI instance supports up to 10 attached volumes. Each volume can be attached to only one instance at a time. Resize is not supported. Rename is not supported, so pick the name you want at creation.
Pricing: GET /api/volumes/pricing?provider=spheron-ai returns the current hourly rate per GB so you can estimate cost before creating a volume.
Data Crunch limits (updated): Each Data Crunch instance now supports up to 10 attached volumes (was 1 in v1.14.1). Multi-instance attach is unchanged. A single Data Crunch volume can still be mounted on many instances at the same time.
API Docs correction: The API reference now uses CLUSTER as the instanceType for multi-node deployments, matching the v1.10.0 rename. Any request examples that still showed BARE_METAL have been updated.
v1.15.0 • 2026-04-04
Sesterce Persistent Volume Support
New FeaturesPersistent storage is now available on Sesterce. Create volumes, pick your cloud provider and region, and attach them to instances at deploy time. Your data outlives any single session.
- Sesterce Volumes: Sesterce is now a supported volume provider. Create and manage persistent storage volumes from the
/volumesdashboard - Cloud Provider + Region Picker: When creating a Sesterce volume, choose your cloud provider and region from a dynamic dropdown so volumes are always deployed where your compute is
- Deploy-time Attachment: Select a compatible Sesterce volume in the deployment wizard. It attaches automatically when the instance starts, no extra steps needed
- Automatic Compatibility Filtering: The deployment wizard only shows volumes that match the region and cloud provider of your selected GPU offer. No risk of picking an incompatible volume
- Volume Deletion: Delete a Sesterce volume from the dashboard once the instance it was attached to has been terminated
Creating and using a Sesterce volume involves three steps:
-
Fetch available cloud providers and regions:
GET /api/volumes/regions?provider=sestercereturns aregionsarray where each entry has anid(the region code), aname, acloudId, and acloudName. You need bothidandcloudIdwhen creating the volume. They must match the cloud provider and region of the instance you plan to deploy. -
Create the volume:
POST /api/volumeswithprovider: "sesterce",region: "<id from step 1>",cloudId: "<cloudId from step 1>",name, andsizeInGb. The response includes the volumeidyou will use when deploying. -
Attach at deploy time: include
volumeIds: ["<volumeId>"]in yourPOST /api/deploymentsrequest. The volume attaches when the instance is created. Post-creation attach and detach are not supported for Sesterce. The volume is bound at launch.
Compatibility: the cloudId and region of your volume must match the cloud provider and region of your GPU offer. Use GET /api/gpu-offers to find offers and cross-reference the region before creating a volume.
Pricing: GET /api/volumes/pricing?provider=sesterce with optional cloudId and region query params returns the current hourly rate per GB for that specific location.
v1.14.6 • 2026-03-17
Spheron AI: Open All Inbound Ports by Default
ImprovementsAll ports are open out of the box. Spheron AI provider VMs now have full inbound access (TCP/UDP/ICMP, ports 1–65535, IPv4 and IPv6) applied automatically at creation time, with no manual firewall configuration required.
- Security rules at creation: Six inbound rules (TCP 1–65535, UDP 1–65535, and ICMP for both IPv4 and IPv6) are now passed directly in the VM creation payload via the
security_rulesfield, replacing the previous post-creation polling approach - Removed background firewall task: Eliminated the
enableSSHFirewallWhenActivepolling loop (up to 10-minute wait) and the separateenableSSHFirewallmethod that made individualPOST /sg-rulescalls after the VM reached ACTIVE state - No more
sshFirewallErrortracking: Removed thesshFirewallErrorMap, thesshFirewallErrorfield onVMInstance, and all related error-surface logic. Firewall setup is now atomic with VM creation
v1.14.5 • 2026-03-16
GPU Count Validation Hardening
Bug FixesStricter GPU count validation. Deployment requests with a mismatched GPU count are now rejected reliably regardless of whether the value arrives as a string or a number, and validation errors are propagated correctly through the error-handling pipeline.
- Type-safe GPU count comparison: The GPU count check now coerces both the requested value and the offer config value to
Numberbefore comparing, preventing false validation failures caused by string/number type mismatches (e.g.,"2"vs2) - GpuValidationError class: Introduced a dedicated
GpuValidationErrorsubclass so that GPU validation errors are identified withinstanceofrather than fragileerror.message.startsWith(...)string matching, eliminating the risk of silently swallowing errors or misclassifying HTTP status codes if the message text changes - Route-level fix:
deployment.routes.tsnow usesinstanceof GpuValidationErrorto classify the error as an HTTP 400, replacing the previouserror.message.includes('Invalid GPU count:')check
v1.14.4 • 2026-03-15
Feature Announcement Modal & Sidebar Changelog Link
New FeaturesStay up to date without leaving the dashboard. A new in-app feature announcement modal greets users with what's new since their last visit, and the sidebar now links directly to the changelog.
- Feature Announcement Modal: Automatically shows authenticated users any features released since their last visit. Slides through announcements newest-first with story-style progress bars, smooth slide transitions, and a 25-second auto-advance timer
- Per-User Tracking: Last-seen feature is persisted. The modal only re-appears when genuinely new features have shipped
- Learn More Links: Each announcement card links directly to the relevant docs or changelog section
- Changelog Sidebar Link: A compact "Changelog" entry with a "New" badge now lives in the sidebar bottom dock alongside the API Docs link, opening
docs.spheron.network/changelogin a new tab
v1.14.3 • 2026-03-14
Sesterce Deployment Reliability Fix
Bug FixesSesterce deployments no longer fail on name collisions. A
409 Conflicterror that occurred when instance names clashed is now handled automatically with a unique suffix and retry logic.
- 409 Name Collision: Sesterce's
/gpu-cloud/instancesAPI rejects duplicate instance names with a 409. Deployment names are now suffixed with a random 6-character hex string (crypto.randomBytes(3).toString('hex')) to prevent collisions - Retry Logic: If a 409 still occurs (e.g. extremely unlikely suffix collision), the deployment automatically retries with a freshly generated name, up to 3 attempts before failing
- Status Code on Errors:
makeAuthenticatedRequestnow attachesstatusCodeto thrown errors, enabling reliable detection of 409 vs other failure types - SSH Key Cleanup: If all retry attempts are exhausted, any provisioned temporary SSH key is deleted to prevent resource leaks
v1.14.2 • 2026-03-14
TensorDock Deployment Fix & Improved Error Reporting
Bug FixesTensorDock deployments now work reliably. A
400 Bad Requesterror that blocked all TensorDock deployments has been fixed, and deployment failures now show human-readable error messages in the dashboard.
- TensorDock 400 Error: Removed an incorrect JSON wrapper (
data.attributes) that was wrapping the request payload. TensorDock's API v2 expects a flat JSON body - Field Name Casing: Renamed
useDedicatedIp(camelCase) →use_dedicated_ip(snake_case) to match TensorDock's API contract - Cloud-Init Format: Converted
cloud_initfrom a JSON object to a YAML string, consistent with how other providers (e.g. Spheron AI provider) handle startup scripts
- Human-Readable Failure Reasons: TensorDock JSON error responses are now parsed and classified into user-friendly categories (e.g. "Insufficient resources", "Invalid configuration") stored as
failureReasonon the deployment - Failure Details in Sidebar:
InstanceDetailsSidebarnow surfacesfailureReasonandfailureDetailsso users can see exactly why a deployment failed without digging through logs
v1.14.1 • 2026-03-04
Data Crunch Shared Volume Support
New Provider SupportShared NFS volumes on Data Crunch. Create persistent NFS-backed volumes, attach them to multiple instances simultaneously, and keep your data safe after instance termination.
- Data Crunch Volumes: Data Crunch is now a supported volume provider. Create and manage shared NFS volumes from the dashboard or via the API
- Multi-Instance Attachment: A single Data Crunch volume can be attached to multiple GPU instances at the same time, unlike Voltage Park which restricts each volume to one instance
- Region Selection: Deploy volumes into FIN-01 (Finland 1), FIN-02 (Finland 2), or FIN-03 (Finland 3). Each volume is pinned to the region you pick at creation time
- Persistent Volumes: Data Crunch volumes survive instance termination by default. Only deleted on explicit user action
- One Volume Per Instance: Each Data Crunch instance supports at most one shared volume at a time, though that same volume can be attached to unlimited instances concurrently
Creating and using a Data Crunch volume involves three steps:
-
Fetch available regions:
GET /api/volumes/regions?provider=datacrunchreturns aregionsarray where each entry has anid(the region code to pass at creation time), a human-readablename, and acountry_code. Use theidvalue as theregionfield when creating the volume. -
Create the volume:
POST /api/volumeswithprovider: "datacrunch",region: "<region id from step 1>",name, andsizeInGb. The response includes the volumeidyou will use for all subsequent operations. -
Attach to an instance: two options depending on your workflow:
- At deploy time: include
volumeIds: ["<volumeId>"]in yourPOST /api/deploymentsrequest - After the instance is running:
POST /api/volumes/{volumeId}/attachwith{ "deploymentId": "<id>" }
- At deploy time: include
After attachment, GET /api/volumes/{volumeId} returns the NFS mount command and mount path in the response. Copy these directly into your instance to mount the volume.
Detaching and re-attaching: POST /api/volumes/{volumeId}/detach with { "deploymentId": "<id>" } frees the volume to be attached elsewhere. Data is preserved.
Pricing: GET /api/volumes/pricing?provider=datacrunch returns the current hourly rate per GB so you can estimate cost before creating a volume.
v1.14.0 • 2026-03-03
New GPU Provider: Europe & North America Regions
New GPU InventoryMore GPUs, more regions. A new provider is now available on the Spheron AI marketplace, adding H200, H100, A100, L40S, A6000, and A4000 inventory across Canada, Norway, and the US.
- GPU Models: H200 SXM, H100 SXM5 / NVL / PCIe, A100 SXM4 / NVL / PCIe, L40S, L40, A6000, RTX Pro 6000, A4000
- Regions: Canada (Montreal), Norway (Bergen), United States
- On-Demand & Spot: Both instance types are available. Spot instances offer the same GPU configurations at a lower price with no uptime guarantee
- Startup Scripts: Cloud-init startup scripts are supported. Packages, run commands, and file writes all work on this provider the same as others
- OS Options: 11 OS images to choose from, including Ubuntu 22.04/24.04, AlmaLinux 9, Debian 12, and CUDA-enabled variants (R535, R550, R570). Defaults to Ubuntu Server 22.04 LTS with CUDA 12.8 and Docker
- SSH Access: Port 22 is automatically opened on every new instance. No manual firewall configuration needed
v1.13.1 • 2026-02-27
Password Complexity Enforcement on Signup
Bug FixesStronger account security. Signup now enforces password complexity rules before any Firebase call, giving users immediate, clear feedback.
- Weak Password Allowed: The signup form previously accepted any non-empty string as a password, including the user's own email address. This is now blocked
- No Complexity Checks: Passwords with no uppercase, no lowercase, or no digits were accepted without warning. All three are now required
- Minimum 8 characters
- Cannot be identical to your full email address (case-insensitive)
- Cannot be identical to the local part of your email (the portion before
@) - Must contain at least one uppercase letter
- Must contain at least one lowercase letter
- Must contain at least one digit
- Inline Error Messages: Validation failures are shown immediately below the password field with a specific explanation. No generic Firebase errors
- Live Clearing: The error clears on every keystroke in the password field, and also when the email field is changed (prevents a stuck form if a "password too similar to email" error was triggered and the user updates their email instead)
- Gated Submit: The sign-up button stays disabled while a password validation error is active
v1.13.0 • 2026-02-27
Auto Top-Up Credits via Stripe
Saved Card ManagementNever run out of credits. Configure a balance threshold and Spheron automatically charges your saved card to keep your deployments running.
- Save a Card: Add a payment card via Stripe's hosted setup flow (no card numbers stored; only a Stripe PaymentMethod ID)
- Card Details: Saved card brand, last 4 digits, and expiry are shown in the billing page at all times
- Remove Card: Detach your saved card from Stripe entirely. This automatically disables auto top-up if it was enabled
- Role-Gated Access: Only team owners and admins can save or remove cards; members see card info in read-only mode
- Enable / Disable Toggle: Turn auto top-up on or off from the billing page
- Threshold Setting: Set the balance level (min $5, max $500) that triggers an automatic charge
- Top-Up Amount: Choose how much to charge each time (min $15, max $5,000)
- Immediate Check: Enabling auto top-up immediately checks your balance and triggers a charge if already below threshold
- Failure Banner: A warning banner appears on the billing page if auto top-up was disabled due to a declined charge
- Balance-Triggered Charge: After each credit deduction cycle, if your team balance falls below the configured threshold, a Stripe off-session PaymentIntent is created and charged automatically
- 5-Minute Cooldown: A distributed lock prevents double-charging. Top-ups cannot fire more than once every 5 minutes per team
- Race Condition Safe: Balance is re-fetched inside the lock before charging to prevent concurrent monitor cycles from triggering duplicate charges
- Instant Credit: Team balance is credited immediately on successful charge without waiting for a webhook
payment_intent.succeeded: Idempotent safety net. Credits the team if the service layer missed it (e.g. network failure mid-request)payment_intent.payment_failed: Automatically disables auto top-up and recordslastFailedAtwhen a card is declined
- Auto top-up charges appear in Deposit History labeled "Auto Top-Up" with a distinct badge, clearly separated from manual credit purchases
- Success Email: Confirms the charge amount and shows the new account balance
- Failure Email: Notifies the configuring user that their card was declined and auto top-up has been disabled, with a direct link to re-enable
v1.12.2 • 2026-02-27
Mandatory Phone Number on Reserved GPU Form
Bug FixesRequired contact info. Phone number is now enforced end-to-end so reserved GPU requests always include reachable contact details.
- Mandatory Phone Field: Phone number is now a required field on the Reserved GPU request form. The label, frontend validation, and server-side validation all enforce it
- Format Validation: Phone input is validated against a format check (supports
+, digits, spaces, dashes, parentheses, e.g.+1 555-123-4567or(555) 123-4567) with a minimum of 7 digits, on both client and server - Review Step Gate: If contact info (including phone) is incomplete when the user reaches the review step, the wizard redirects back to the contact form with a clear "Contact Info Required" toast notification
- Backwards Compatibility: Existing reservations without a phone number are unaffected. The schema change is non-breaking for legacy documents
v1.12.1 • 2026-02-23
Zero-Downtime Deployment & Faster Container Restarts
Deployment ScriptsInstant restarts, no build delays. App builds are now baked into the Docker image so containers spin up in seconds instead of minutes.
- Zero-Downtime Deploy: New
script/deploy.shfor all the apps. Builds the new image while the current container keeps serving traffic, then hot-swaps to the new container with no manual downtime - Health-Gated Rollout: The deploy script waits for Docker's health check to pass (up to 120s) before declaring success, ensuring the new container is fully ready before traffic is handed off
- Build at Image Time:
npm run buildnow runs duringdocker build(image layer) instead of at container startup. Containers start in seconds rather than waiting for a full compile - Health Checks Added: All app's Dockerfiles now include
HEALTHCHECKdirectives with 10s intervals and 30s start periods so Docker and the deploy script can reliably detect readiness
v1.12.0 • 2026-02-23
Volume Management UI for Voltage Park
New PagesFull persistent storage experience. Create, browse, attach, detach, resize, and monitor volumes directly from the dashboard.
- Volumes Page (
/volumes): Dedicated page to view and manage all your persistent storage volumes in one place, with status badges, provider/region info, hourly rates, and quick actions - Create Volume Page (
/create-volume): Step-by-step wizard to create a new volume. Select a provider, configure name, size, region, and lifecycle settings before reviewing the cost summary
- Volume Cards: Each volume displays its name, size, provider, region, status (available, attached, creating, deleting, error), and current cost, with one-click copy for Volume ID
- Volume Details Sidebar: Click any volume to open a detailed side panel showing overview, configuration, storage usage metrics, and attached instances
- Attach to Deployment: During the deployment wizard, an "Attach Volumes" step surfaces compatible volumes (same provider and region) and lets you select one to attach before launch
- Voltage Park instances support 1 volume per instance. The UI enforces this limit automatically
- Detach Volume: Detach a volume from a running instance directly from the instance detail sidebar or the volumes page, without losing data
- Resize Volume: Expand a volume's storage size on-demand from the volumes page (shrinking is not supported)
- Delete Volume: Delete a volume (must be detached first) with a confirmation dialog
- New Attached Volumes card visible on each running instance showing all volumes currently mounted, their size, hourly cost, and a detach action
- Volumes and Create Volume entries added to the sidebar for quick access
- Volume selection resets automatically when you switch providers or networking type in the deployment wizard
- Volume size input clamps to the provider's supported min/max range and rounds to a whole number
- Region matching is normalized so minor formatting differences (e.g.
us-east-1vsUS East 1) don't prevent valid volumes from appearing - Provider pricing is validated before allowing volume creation. A clear error is shown if pricing is unavailable for the selected provider/region
- Hourly and monthly cost estimates shown in real-time while configuring volume size
- Order summary in the create wizard shows total hourly cost and projected 30-day cost before confirming
GET /api/volumes: list volumes (filterable by team, status, provider)POST /api/volumes: create volumeGET /api/volumes/:volumeId: volume details with live usage dataPATCH /api/volumes/:volumeId: rename, resize, or update lifecycle settingsDELETE /api/volumes/:volumeId: delete volumePOST /api/volumes/:volumeId/attach: attach to a deploymentPOST /api/volumes/:volumeId/detach: detach from a deploymentGET /api/volumes/pricing: storage pricing by provider
v1.11.1 • 2026-02-13
Kubernetes Add-on for Voltage Park
New FeaturesManaged Kubernetes clusters on bare-metal GPU instances with automatic provisioning, kubeconfig access, and health monitoring.
- Kubernetes Cluster Deployment: Deploy fully managed Kubernetes clusters on Voltage Park bare-metal GPU instances
- Version Selection: Choose from multiple Kubernetes versions (1.35, 1.34, 1.33, 1.32) with automatic validation
- Automatic Provisioning: Kubernetes clusters are automatically provisioned and configured during instance deployment
- Kubeconfig Access: Download kubeconfig files directly from deployments for immediate kubectl access
- Cluster Health Monitoring: Real-time health tracking for control plane nodes, worker nodes, and network components
- Grafana Integration: Built-in Grafana monitoring links for cluster observability and metrics
- Custom Authentication: Optional support for custom Kubernetes AuthenticationConfiguration YAML
- Persistent Cluster State: Cluster configurations persist independently from instance lifecycle
- Provider Validation: Automatic validation ensures Kubernetes add-ons are only used with Voltage Park bare-metal instances
- Version Validation: Server-side version checking against provider-supported Kubernetes releases
- Base64 Encoding: Secure transmission of authentication configurations via base64 encoding
- Monitoring Service: Background service updates cluster health and configuration data automatically
GET /api/kubernetes/versions?provider=voltage-park: List available Kubernetes versionsGET /api/kubernetes/:clusterId/health: Get cluster health status with node and network component metricsPOST /api/deploymentswithkubernetesAddonobject: Create deployment with Kubernetes cluster
- Provider: Voltage Park only (other providers not yet supported)
- Instance Type: CLUSTER deployments only for H100 SXM5
- Operating System: Compatible with TensorML and other Voltage Park OS images
v1.11.0 • 2026-02-07
Persistent Storage Volumes
New FeaturesPersistent storage for GPU instances with flexible volume management and deployment attachment.
- Volume Management: Create, update, and delete persistent storage volumes independent of GPU instances
- Flexible Attachment: Attach and detach volumes to/from running deployments without losing data
- Multi-Provider Support: Volume storage available across supported providers (Voltage Park, etc.)
- Size Flexibility: Configure volumes from 1GB to 10TB with dynamic expansion support
- Automatic Billing: Hourly billing based on storage size with transparent pricing per GB
- Usage Tracking: Real-time monitoring of used capacity and storage metrics
- Smart Lifecycle Management: Choose whether volumes persist after instance termination or delete automatically
- Credit Validation: Automatic validation ensures sufficient credits before volume creation (24-hour minimum)
- Independent Lifecycle: Volumes persist independently from GPU instances by default
- Cross-Instance Sharing: Attach a single volume to multiple instances (provider-dependent)
- Capacity Expansion: Expand volume size on-demand (shrinking not supported for data safety)
- Name Validation: Alphanumeric naming with hyphens/underscores (max 60 characters)
- Status Tracking: Real-time status monitoring (available, attached, deleting, deleted)
- Automatic Cleanup: Orphaned volume references automatically cleaned from deployments
GET /api/volumes: List all volumes for a team with pagination and filteringPOST /api/volumes: Create new persistent storage volumeGET /api/volumes/:volumeId: Get volume details with fresh usage dataPATCH /api/volumes/:volumeId: Update volume name, size, or lifecycle settingsDELETE /api/volumes/:volumeId: Delete volume (must be detached first)POST /api/volumes/:volumeId/attach: Attach volume to a deploymentPOST /api/volumes/:volumeId/detach: Detach volume from deploymentGET /api/volumes/pricing: Get storage pricing by provider
- Provider Consistency: Volumes and deployments must be from the same provider for attachment
- Atomic Operations: Provider updates happen before database updates to maintain consistency
- Graceful Cleanup: Automatic cleanup of volume references when deployments are deleted
- Audit Logging: Complete audit trail for all volume lifecycle events
v1.10.1 • 2026-01-14
Reserved Instance Management
New FeaturesDedicated GPU leasing for users who have contacted the team and secured reserved GPU nodes.
- Reserved Instance Display: Users who have leased GPU nodes directly with Spheron AI can now view their reserved instances in the marketplace
- Direct Leasing Support: Seamless integration for customers who have contacted the team for bulk GPU reservations
- Dedicated Node Access: Reserved instances provide exclusive access to pre-allocated GPU nodes with guaranteed availability
- Custom Configurations: Support for custom GPU configurations negotiated directly with the Spheron AI team
- Enhanced Visibility: Reserved instances are clearly labeled and distinguished from on-demand offerings
- Better Management: Improved interface for tracking and managing leased GPU resources
- Streamlined Experience: Integrated workflow for users with both reserved and on-demand instances
v1.10.0 • 2026-01-08
Cluster Deployments & Baremetal GPU Offers
New FeaturesMulti-node cluster support with enhanced baremetal GPU offerings and clearer deployment terminology.
- Cluster Deployment Support: Multi-node GPU clusters are now clearly labeled and supported throughout the platform
- Baremetal GPU Offers: New baremetal GPU configurations added to the marketplace for dedicated hardware performance
- Improved Nomenclature: Voltage Park's H100 SXM5 offerings now accurately labeled as "H100 SXM5 Cluster" instead of "Baremetal" for better clarity
- Better GPU Classification: Enhanced distinction between single-node baremetal instances and multi-node cluster deployments
- Clearer Labels: Deployment types are now more accurately labeled to help users understand exactly what they're deploying
- Enhanced Discovery: Cluster and baremetal options are now easier to find and understand in the GPU marketplace
- Consistent Terminology: Standardized naming conventions across all providers for better user experience
v1.9.7 • 2026-01-06
Intercom Live Chat Support
New FeaturesGet instant help with integrated Intercom messenger for real-time customer support and assistance.
- Live Chat Widget: Intercom messenger widget integrated throughout the platform for instant support access
- Identity Verification: Secure user authentication with HMAC-SHA256 hash-based identity verification to prevent user impersonation
- User Context: Automatic user data synchronization (name, email, account creation date) for personalized support experience
- Anonymous Visitor Support: Non-authenticated visitors can still access support through anonymous chat sessions
- Smart Session Management: Automatic session handling when users log in, log out, or switch accounts
- Seamless Integration: Support chat available on all pages without disrupting your workflow
v1.9.6 • 2025-12-30
Deployment Termination Controls
Breaking ChangesCritical Fix: Strict termination controls prevent premature instance termination and ensure proper billing accuracy.
- Status-Based Termination: Only instances with
runningstatus can now be terminated manuallydeployinginstances cannot be terminated (must wait until running or automatic failure)failed,terminated, andterminated-providerinstances are already in final states
- Minimum Runtime Enforcement: Running instances must meet the 20-minute minimum runtime requirement before termination
- Fixed incorrect status semantics: Deployments that never started running are now marked as
failedinstead ofterminated - Fixed API key users being able to bypass minimum runtime checks by terminating during
deployingstatus - Fixed deployments showing "terminated" with N/A runtime and $0.00 cost (now correctly marked as
failed) - Added proper error messages for termination attempts on non-running instances
- Improved Error Messages: Status-specific error messages guide users on correct actions
- Clear explanations for why termination is blocked
- Helpful guidance on what to do next
- Frontend Error Handling: Enhanced UI feedback for termination failures
- Status-specific toast messages
- Better user experience during edge cases
- Updated GET
/api/deployments/:id/can-terminateendpoint with status validation - Updated DELETE
/api/deployments/:idendpoint with strict pre-termination checks
v1.9.5 • 2025-12-30
Flexible Storage Options for Data Crunch
New FeaturesChoose your storage size when deploying Data Crunch dedicated instances with new 500GB and 1TB options.
- Storage Size Selection: Data Crunch dedicated instances now offer two storage options:
- 500GB Standard: Default option with $0.137/hr storage pricing
- 1TB Extended: Expanded storage option with $0.274/hr storage pricing
- Clear Pricing Display: Storage costs are shown separately in the deployment wizard for transparent pricing
- Smart Defaults: 500GB storage is automatically selected when configuring Data Crunch dedicated instances
- Flexible Configuration: Easily switch between storage sizes to match your workload requirements
- Storage property is now included in GPU offer configurations for Data Crunch dedicated instances
- Pricing calculations properly account for storage costs in commission-adjusted totals
v1.9.4 • 2025-12-25
OTP Verification for Reserved GPU Requests
New FeaturesEnhanced security for bulk GPU reservations with email-based OTP verification.
- OTP Verification Flow: Reserved GPU requests now require email verification via one-time password (OTP) for added security
- Email OTP Delivery: Receive a verification code via email when submitting a reserved GPU request
- OTP Resend Option: Didn't receive the code? Request a new OTP to be sent to your email
- Session Management: OTP verification sessions are securely managed with automatic expiration
- Rate Limiting: OTP requests are rate-limited to prevent abuse and ensure system stability
v1.9.3 • 2025-12-25
API Access Control & Runtime Policies
New FeaturesControlled API access with whitelist-based key generation and enforced minimum runtime for deployments.
- API Key Whitelisting: API key generation is now controlled through a whitelist system. Contact support to request API access
- Whitelist Status Visibility: Users can now see their API access status clearly in the settings interface
- Admin Whitelist Management: Administrators can manage API key access by adding or removing users from the whitelist via email
- Minimum Runtime Enforcement: Deployments now require a 20-minute minimum runtime before termination to prevent accidental early shutdowns
- Runtime Protection: Destroy action is automatically disabled during the minimum runtime period with a helpful countdown timer
- System Configuration API: New endpoint (
GET /api/config/system) exposes system configuration including minimum runtime requirements - Termination Validation: New endpoint (
GET /api/deployments/:id/can-terminate) checks if an instance can be safely terminated
- Enhanced Rate Limiting: Deployment creation now limited to 5 deployments per hour per user for better platform stability and abuse prevention
- Better API Key Handling: Improved handling of empty or undefined API keys in the UI
- Deployment Wizard Updates: SSH key step now displays minimum runtime requirements upfront
- Clear User Feedback: Disabled actions now include tooltips explaining why they're unavailable and when they'll be enabled
GET /api/config/system: Returns system configuration including minimum runtime settingsGET /api/deployments/:id/can-terminate: Validates if deployment can be terminatedDELETE /api/deployments/:id: Enforces minimum runtime checks before allowing terminationPOST /api/deployments: Enhanced with rate limiting
v1.9.2 • 2025-12-22
Christmas Promo & Active Discount Display
New FeaturesTime-limited promotional discounts with automatic activation and clear discount visibility.
- Christmas Promo: Special time-limited discount offers appear automatically to eligible users with easy one-click activation
- Active Discount Display: Your current discount percentage and expiration date are now prominently shown on the billing page
- Clear Savings: See exactly how much you're saving with active discounts applied to your usage
v1.9.1 • 2025-12-20
Reserved GPU Offers
Reserved GPU OffersSmarter GPU reservation options with detailed specifications.
- Two Display Modes: Reserved GPU offers now support two presentation styles:
- Tiers Mode: Compare multiple pricing tiers (up to 3) with flexible commitment options, perfect for understanding pricing at different commitment levels
- Specs Mode: View detailed technical specifications including vCPUs, RAM, storage, connectivity type, and deployment method (Bare Metal or VM), ideal for understanding exact hardware configurations
- Regional Availability: GPU offers now display available regions, making it easier to choose deployments close to your users
- Better Descriptions: Hover over offer descriptions to see full details without cluttering the interface
- Improved Reservation Flow: When clicking "Reserve" on an offer, relevant details (specs, regions, pricing) are now pre-filled in the reservation form for faster booking
v1.9.0 • 2025-12-18
Major Frontend Refactor
Routing & LayoutComplete codebase modernization with modular components, centralized hooks, and improved UX.
- Introduce new routing and layout components
- Split PublicLayout and Sidebar into components/shared
- Refactor AddCreditsTab into modular components
- Powered by new usePayment hook and usePaymentCallback
- Move deposit dialog to TopNavBar subcomponents
- Break ApiDocumentation into composable sections and utils/types
- Modularize Card and Sidebar into subcomponents
- Rebuild pages/instances.tsx using new grid/header/empty/error components with infinite loading
- Extract Sidebar and TopNavBar for reusability
- Normalize toast hook path (useToast)
- Set wagmi to base chain only
- All modals now wait for API completion before closing
- Fixed React Hooks violations with proper hook ordering
- Team switcher dropdown now works correctly
- Better loading states and error handling throughout
v1.8.2 • 2025-12-17
Higher Deposit Limits & New Credit Packages
New FeaturesDeposit up to $5,000 with new bulk credit packages for larger workloads.
- Increased Deposit Limits: Maximum deposit raised from $1,000 to $5,000 for teams with larger GPU requirements
- New Credit Packages: Added $500, $1,000, and $5,000 quick purchase options for bulk credits
- Clear Limit Display: Deposit limits are now prominently displayed in the UI for transparency
- Package Validation: UI automatically prevents purchases outside allowed limits with helpful error messages
- Better Formatting: Large numbers now display with proper comma formatting for easier reading
- Dynamic Configuration: Deposit limits and referral rewards are now centrally managed for consistency
- Referral Page Updates: Referral reward amounts and minimum deposit requirements are now displayed accurately throughout
- Enhanced UX: Improved handling of edge cases when selecting credit packages
v1.8.1 • 2025-12-17
Search Improvements
ImprovementsEnhanced GPU search with better filtering and improved reliability.
- Reserved GPU Search: Search now properly filters reserved GPU offers. When you search for "H100", only H100 models will appear in results
- More Accurate Results: Improved search matching ensures you see only relevant GPU configurations
- Better Performance: Enhanced search processing for faster and more reliable results
- Consistent Experience: Search behavior is now unified across all GPU offer types
v1.8.0 • 2025-12-16
Referral Program Launch
New FeaturesEarn rewards by referring friends! Get $5 credit when your referral deposits $15.
- Referral Dashboard: Access your unique referral link and track your referrals
- Shareable Links: Easy sharing via Twitter, LinkedIn, and direct link copying
- Automatic Tracking: Referrals are automatically tracked when someone signs up using your link
- Instant Rewards: Credits are automatically added to your account when referrals make qualifying deposits
- Discount Codes: New ability to validate and apply discount codes to your account
- Enhanced Transaction History: Referral bonus deposits are now clearly labeled in your transaction history
v1.7.0 • 2025-11-20
Email Notifications & Credit Monitoring
New FeaturesStay informed with professional email notifications and proactive balance alerts.
- Enhanced Email Notifications: Improved email design for welcome messages, deployment updates, and account alerts
- Smart Low Balance Alerts: Receive notifications when your balance reaches $50, $20, $10, or $5 to avoid service interruption
- Balance Exhaustion Alerts: Get notified when your balance reaches $0 and deployments are automatically stopped
- Rate-Limited Notifications: Smart notification system prevents email spam with 6-hour intervals between similar alerts
- Priority Notification Delivery: Account owners and admins receive critical balance alerts first
v1.6.0 • 2025-10-29
Transaction Receipts & Improved Navigation
New FeaturesDownload payment receipts and enjoy faster page loading with improved pagination.
- Receipt Downloads: Download official receipts for all completed deposits (Stripe & CopperX payments)
- Deposit History: Renamed transaction view to "Deposit History" for better clarity
- Paginated Views: Faster loading with pagination across deployment history and usage analytics
- Load More Button: Browse through your instances with easy "Load More" functionality
- Documentation Access: Quick access to API documentation directly from the navigation menu
- Loading States: Better visual feedback with loading skeletons while data loads
- Error Handling: Improved error messages and handling throughout billing and instances pages
- Performance: Faster page loads with optimized data fetching
v1.5.0 • 2025-10-18
Complete UI Redesign
Visual OverhaulModern dark theme with sleek blue gradients and enhanced user experience throughout the platform.
- Modern Dark Theme: New dark interface with blue gradient accents and improved contrast
- Redesigned Cards: Sleek card designs with unique clipped borders for a futuristic look
- Enhanced Buttons: Modern call-to-action buttons with hover effects and smooth transitions
- Improved Typography: Updated fonts and text hierarchy for better readability
- Billing Dashboard: Completely redesigned with clear balance overview, streamlined deposit flow, and organized transaction history
- Instance Management: Improved instance cards with better status indicators and enhanced SSH key management
- Settings Interface: Modern tabbed navigation with refreshed profile, SSH key, and API key management sections
- Deployment Wizard: Enhanced GPU browsing experience with improved provider, region, and configuration selection
- Reserved GPU Portal: New design for bulk GPU reservation requests with better quote workflow
- Faster Loading: Optimized loading and redirect screens
- Better Navigation: Improved top navigation and sidebar with clearer menu organization
- Enhanced Dialogs: Modern confirmation dialogs with better visual feedback
- Consistent Design: Unified design language across all pages and components
v1.4.0 • 2025-09-28
Reserved GPU Pricing & Compliance
New Features- Reserved GPU Pricing: Special pricing model for long-term GPU reservations
- Provider Compliance Status: View compliance and certification status for each provider during deployment
- Flexible SSH Key Options: Enhanced SSH key support for programmatic deployments
- Better Pricing Display: Improved GPU offer pricing calculations and display
- Enhanced Security: Stronger SSH key validation and processing
- System Stability: Improved reward processing reliability
v1.3.0 • 2025-09-02
Onboarding & Discounts
New Features- Welcome Onboarding: New user onboarding flow to help you get started quickly
- Discount Codes: Support for promotional and discount codes
- Reserved GPU Marketplace: New page for requesting bulk GPU reservations from our provider network
- Accurate Billing: Fixed credit deduction and monitoring for precise billing
- Better Calculations: Improved accuracy in usage cost calculations
v1.2.0 • 2025-08-12
API Access & New Provider
New Features- API Key Management: Create and manage deployments programmatically using API keys
- Massed Compute Provider: New provider option for more GPU choices and competitive pricing
- Multi-Node Deployments: Deploy multiple GPU nodes simultaneously with Voltage Park for larger workloads
v1.1.0 • 2025-07-25
Startup Scripts & Discounts
New Features- Startup Scripts: Add custom initialization scripts that run automatically when your instance starts
- Usage Discounts: Discount system for reduced pricing on GPU usage
- Real-Time Pricing: Fixed spot pricing updates for accurate availability and costs
- Accurate GPU Selection: Improved pricing calculations during GPU selection
v1.0.0 • 2025-07-04
Initial Release
Welcome to Spheron AI GPU Marketplace!The easiest way to rent high-performance GPUs on-demand from multiple providers.
Core Features- Multiple GPU Providers: Access GPUs from Voltage Park, Data Crunch, Sesterce, and TensorDock
- Simple Authentication: Sign in with Google, GitHub, or email
- Team Management: Create and manage teams for collaborative work
- Flexible Billing: Pay with crypto or credit card
- Usage Analytics: Track your GPU usage and spending in real-time
- Transaction History: Complete history of all your deposits and usage charges