[object Object]

← back to Ventura Corridor

fix: Ollama fallbacks pointed at dead hosts (mac2 tailnet IP, offline Mac1 LAN) — default to local; preflight 15s->60s for cold model load

d2e66de81172d7d93683993129f00f892ec801ab · 2026-07-13 09:47:54 -0700 · Steve Abrams

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

Files touched

Diff

commit d2e66de81172d7d93683993129f00f892ec801ab
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon Jul 13 09:47:54 2026 -0700

    fix: Ollama fallbacks pointed at dead hosts (mac2 tailnet IP, offline Mac1 LAN) — default to local; preflight 15s->60s for cold model load
    
    Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
---
 src/enrich/score_headlines.ts       | 2 +-
 src/enrich/score_headlines_batch.ts | 2 +-
 src/jobs/generate_features.ts       | 2 +-
 src/jobs/summarize_news.ts          | 4 ++--
 src/server/index.ts                 | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/enrich/score_headlines.ts b/src/enrich/score_headlines.ts
index 991ddd6..52d8474 100644
--- a/src/enrich/score_headlines.ts
+++ b/src/enrich/score_headlines.ts
@@ -14,7 +14,7 @@
  */
 import { query, pool } from '../../db/pool.ts';
 
-const OLLAMA = process.env.OLLAMA_HOST || 'http://192.168.1.133:11434';
+const OLLAMA = process.env.OLLAMA_HOST || 'http://127.0.0.1:11434'; // Mac1 LAN 192.168.1.133 unreachable since ~2026-07 — local Ollama has qwen3:14b
 const MODEL = process.env.OLLAMA_MODEL || 'qwen3:14b';
 
 const VOICE_LABELS = ['', 'TEMPLATE', 'FUNCTIONAL', 'SHARP', 'EXCEPTIONAL'];
diff --git a/src/enrich/score_headlines_batch.ts b/src/enrich/score_headlines_batch.ts
index 8524d7a..a0402a7 100644
--- a/src/enrich/score_headlines_batch.ts
+++ b/src/enrich/score_headlines_batch.ts
@@ -5,7 +5,7 @@
  */
 import { query, pool } from '../../db/pool.ts';
 
-const OLLAMA = process.env.OLLAMA_HOST || 'http://192.168.1.133:11434';
+const OLLAMA = process.env.OLLAMA_HOST || 'http://127.0.0.1:11434'; // Mac1 LAN 192.168.1.133 unreachable since ~2026-07
 const MODEL = process.env.OLLAMA_MODEL || 'mistral:7b';
 const BATCH = 5;
 
diff --git a/src/jobs/generate_features.ts b/src/jobs/generate_features.ts
index 856b526..b6221c5 100644
--- a/src/jobs/generate_features.ts
+++ b/src/jobs/generate_features.ts
@@ -9,7 +9,7 @@
 import 'dotenv/config';
 import { pool, query } from '../../db/pool.ts';
 
-const OLLAMA = process.env.OLLAMA_URL || 'http://100.94.103.98:11434';
+const OLLAMA = process.env.OLLAMA_URL || 'http://127.0.0.1:11434'; // old 100.94.103.98 default = dead mac2-era tailnet IP
 // Single model, single in-flight request. Empirically MS1 Ollama queues only 1
 // request reliably — adding parallelism causes 503s and retry-backoff balloons latency.
 // At ~25-30s per feature this hits ~30 features/15min = ~120/hour overnight.
diff --git a/src/jobs/summarize_news.ts b/src/jobs/summarize_news.ts
index 077d94f..87b35d0 100644
--- a/src/jobs/summarize_news.ts
+++ b/src/jobs/summarize_news.ts
@@ -12,7 +12,7 @@
 import 'dotenv/config';
 import { pool, query } from '../../db/pool.ts';
 
-const OLLAMA = process.env.OLLAMA_URL || 'http://100.94.103.98:11434';
+const OLLAMA = process.env.OLLAMA_URL || 'http://127.0.0.1:11434'; // old 100.94.103.98 default = dead mac2-era tailnet IP
 const MODEL  = process.env.OLLAMA_MODEL || 'qwen3:14b';
 const TIMEOUT_MS = parseInt(process.env.OLLAMA_TIMEOUT_MS || '90000', 10);
 
@@ -84,7 +84,7 @@ async function preflight(): Promise<{ ok: boolean; reason?: string }> {
         messages: [{ role: 'user', content: 'reply with OK' }],
         options: { num_predict: 4, num_ctx: 256 }
       }),
-      signal: AbortSignal.timeout(15000)
+      signal: AbortSignal.timeout(60000) // 15s died on qwen3:14b cold-load while another model held the GPU
     });
     if (res.status === 503 || res.status === 429) {
       const txt = (await res.text()).slice(0, 120);
diff --git a/src/server/index.ts b/src/server/index.ts
index 0206217..884bb0e 100644
--- a/src/server/index.ts
+++ b/src/server/index.ts
@@ -2923,7 +2923,7 @@ Building context: ${biz.bldg_address ? `Inside the multi-tenant building at ${bi
 
 Write the feature.`;
 
-    const OLLAMA = process.env.OLLAMA_URL || 'http://100.94.103.98:11434';
+    const OLLAMA = process.env.OLLAMA_URL || 'http://127.0.0.1:11434'; // old 100.94.103.98 default = dead mac2-era tailnet IP
     const MODEL  = process.env.OLLAMA_MODEL || 'qwen3:14b';
     const t0 = Date.now();
     const ollResp = await fetch(`${OLLAMA}/api/chat`, {

← 9a05162 chore: macstudio3 migration — reconcile from mac2 + repoint  ·  back to Ventura Corridor  ·  feat: explicit 'Source: <site>' credit on news + archive car a49ac4f →