Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 11 additions & 5 deletions src-tauri/src/cloud/client.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
use reqwest::Client;
use serde::{Deserialize, Serialize};

// The cloud API runs at cloud-api.proofofprints.com. The bare `cloud.`
// subdomain now hosts the web portal (Cloudflare static assets) and will
// return 405 Method Not Allowed for any POST that hits it. Don't put the
// portal URL here — it's a different host with no API routes.
const CLOUD_API_URL: &str = "https://cloud-api.proofofprints.com";
// The cloud API runs at cloud-api.overbuildlabs.com. The portal lives on
// the bare `cloud.` subdomain (Cloudflare static assets) and will return
// 405 Method Not Allowed for any POST that hits it. Don't put the portal
// URL here — it's a different host with no API routes.
//
// Rebrand 2026-05-22: canonical host moved from cloud-api.proofofprints.com
// → cloud-api.overbuildlabs.com. The old hostname is still served by the
// same Caddy site block (both names point at the same Node service) so
// existing installs on previous builds keep working — but new builds
// canonicalize on the OverBuild Labs domain.
const CLOUD_API_URL: &str = "https://cloud-api.overbuildlabs.com";

fn api_url(path: &str) -> String {
format!("{}{}", CLOUD_API_URL, path)
Expand Down
8 changes: 5 additions & 3 deletions src-tauri/src/cloud/ws.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ use tokio_tungstenite::tungstenite::Message;

use super::{command_exec, CloudState, CloudSyncStatus};

// See note in cloud/client.rs — the API host is cloud-api.proofofprints.com,
// NOT cloud.proofofprints.com (which serves the React portal).
const WS_URL_BASE: &str = "wss://cloud-api.proofofprints.com/api/v1/ws";
// See note in cloud/client.rs — the API host is cloud-api.overbuildlabs.com,
// NOT cloud.overbuildlabs.com (which serves the React portal). Old
// cloud-api.proofofprints.com still resolves to the same backend via
// Caddy aliases until the proofofprints.com domain is fully retired.
const WS_URL_BASE: &str = "wss://cloud-api.overbuildlabs.com/api/v1/ws";
const PING_INTERVAL_SECS: u64 = 30;

/// Backoff schedule: 5s → 10s → 30s → 60s (cap)
Expand Down
2 changes: 1 addition & 1 deletion src/pages/MobileMinerDetail.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ export default function MobileMinerDetail() {
value={poolUrl}
onChange={(e) => setPoolUrl(e.target.value)}
className="w-full bg-dark-900 border border-slate-600 rounded-lg px-3 py-2 text-white text-sm"
placeholder="stratum+tcp://pool.proofofprints.com:5558"
placeholder="stratum+tcp://pool.overbuildlabs.com:5558"
/>
</div>
<div className="grid grid-cols-2 gap-3">
Expand Down
Loading