Skip to content

project-nomad

v1.32.0 Security

This release includes 3 security fixes for security teams reviewing exposed deployments.

Published 14d Productivity & Wikis
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →
This release patches 3 known CVEs

Affected surfaces

rce_ssrf

ReleasePort's take

Moderate signal
editorial:auto 14d

v1.32.0 patches SSRF vulnerability in remote Ollama integration, prevents guardrail bypass in KB estimate loads, and fixes ioredis connection leak affecting long-running deployments.

Why it matters: Custom Ollama deployments need immediate SSRF testing in dev. Long-running services should prioritize connection leak fix. KB guardrail changes require validation before production rollout.

Summary

AI summary

Broad release touches Bug Fixes, https://github.com/Crosstalk-Solutions/project-nomad/issues/883, https://github.com/Crosstalk-Solutions/project-nomad/issues/804, and https://github.com/Crosstalk-Solutions/project-nomad/issues/899.

Changes in this release

Security Medium

improve remote Ollama URL validation to prevent SSRF vulnerability

improve remote Ollama URL validation to prevent SSRF vulnerability

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Security Medium

guardrail bypass during estimate load prevented in KB

guardrail bypass during estimate load prevented in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

accept notes, marker_type, and position on markers endpoints

accept notes, marker_type, and position on markers endpoints

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

add re-embed and reset & rebuild options to fix broken embeddings in KB

add re-embed and reset & rebuild options to fix broken embeddings in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

respect Manual ingest policy on post-download dispatch in KB

respect Manual ingest policy on post-download dispatch in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

union Stored Files list with state-machine file paths in KB

union Stored Files list with state-machine file paths in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

add start button in KB modal and ensure restart policy exists for RAG

add start button in KB modal and ensure restart policy exists for RAG

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

pass num_ctx and truncate to Ollama embed call for RAG

pass num_ctx and truncate to Ollama embed call for RAG

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Feature Medium

anchor continuation-batch initial progress to overall-file frame in RAG

anchor continuation-batch initial progress to overall-file frame in RAG

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Feature Medium

report ZIM ingestion progress in overall-file frame in RAG

report ZIM ingestion progress in overall-file frame in RAG

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Performance Medium

skip compression for Server-Sent Events

skip compression for Server-Sent Events

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Performance Medium

singleton QueueService to stop ioredis connection leak

singleton QueueService to stop ioredis connection leak

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: high

Performance Medium

pace continuation batches when embedding is CPU-only in RAG

pace continuation batches when embedding is CPU-only in RAG

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

add truncation DEBUG log to AI module

add truncation DEBUG log to AI module

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

pre-cap embed input and log fallback reason

pre-cap embed input and log fallback reason

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

preserve semver tag in DB on AMD Ollama updates

preserve semver tag in DB on AMD Ollama updates

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

rewrite RAG query on first follow-up (off-by-one fix)

rewrite RAG query on first follow-up (off-by-one fix)

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

vendor-aware AMD HSA override and benchmark discrete-GPU detection

vendor-aware AMD HSA override and benchmark discrete-GPU detection

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

show selected tier on cards while downloads are in flight

show selected tier on cards while downloads are in flight

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

treat missing Content-Type as octet-stream for Downloads

treat missing Content-Type as octet-stream for Downloads

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

blank-screen on panel open and tooltips on bulk-action buttons fixed in KB

blank-screen on panel open and tooltips on bulk-action buttons fixed in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

remove redundant Refresh button from Processing Queue in KB

remove redundant Refresh button from Processing Queue in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

surface file-warning compute failures instead of masking as healthy in KB

surface file-warning compute failures instead of masking as healthy in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

render notes in marker popup when populated in Maps

render notes in marker popup when populated in Maps

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Bugfix Medium

send filename instead of full path to delete endpoint in Maps

send filename instead of full path to delete endpoint in Maps

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Refactor Medium

improve volume logic and documentation in DockerService forceReinstall

improve volume logic and documentation in DockerService forceReinstall

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Refactor Medium

align chunks_per_mb column type with TypeScript contract in KB

align chunks_per_mb column type with TypeScript contract in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Refactor Medium

TierSelectionModal hook order and IconLibrary registration fixed in KB

TierSelectionModal hook order and IconLibrary registration fixed in KB

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Refactor Medium

correct inverted belongsTo keys on ChatMessage.session

correct inverted belongsTo keys on ChatMessage.session

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Other Medium

warn loudly on non-x86_64 architectures before pulling images

warn loudly on non-x86_64 architectures before pulling images

Source: granite4.1:8b-q6_K@2026-05-20

Confidence: low

Full changelog

1.32.0 (2026-05-20)

Bug Fixes

  • AI: add truncation DEBUG log (e3b758f)
  • AI: improve remote Ollama url validation to prevent SSRF vulnerability (989a401)
  • AI: pre-cap embed input + log fallback reason (#881) (2dec5bf), closes #369 #670
  • AI: preserve semver tag in DB on AMD Ollama updates (019a5a4)
  • AI: rewrite RAG query on first follow-up (off-by-one in skip-rewrite threshold) (43645e4)
  • AI: vendor-aware AMD HSA override + benchmark discrete-GPU detection (a2e2f7f), closes #804 #804 #810
  • API: accept notes, marker_type, and position on markers endpoints (#770) (132ec9c), closes #768
  • API: skip compression for Server-Sent Events (#798) (4b21ea6)
  • content: show selected tier on cards while downloads are in flight (059cf2a), closes #36b6d8e
  • DockerService: improve volume logic and documentation in forceReinstall (501860a)
  • Downloads: treat missing Content-Type as octet-stream (#848) (3abf338)
  • install: warn loudly on non-x86_64 architectures before pulling images (#797) (cb129d2), closes #419
  • KB: add re-embed and reset & rebuild opts to fix broken embeddings (#886) (4c21196)
  • KB: align chunks_per_mb column type with TS contract (4d6b140)
  • KB: blank-screen on panel open + tooltips on bulk-action buttons (633a3c3), closes #892 #895 post-#892
  • KB: guardrail bypass during estimate load + Transition sibling (PR #901 review) (7e768f3)
  • KB: remove redundant Refresh button from Processing Queue (4e8cadd), closes #893
  • KB: respect Manual ingest policy on post-download dispatch (a5fe52f), closes #909
  • KB: silent maybe-later error + redundant prompt-state refetches (PR #899 review) (9a684a5)
  • KB: surface file-warning compute failures instead of masking as healthy (PR #895 review) (a0047c1)
  • KB: TierSelectionModal hook order + register IconLibrary (6e5284e), closes #915
  • KB: union Stored Files list with state-machine file paths (#898) (8ed0bdf), closes #886 #888 #888
  • Maps: render notes in marker popup when populated (f41027c), closes #770
  • Maps: send filename instead of full path to delete endpoint (6a68bac)
  • models: correct inverted belongsTo keys on ChatMessage.session (#921) (82f67de)
  • queue: singleton QueueService to stop ioredis connection leak (ba53702), closes #872
  • RAG: add start button in kb modal and ensure restart policy exists (#700) (2d8a02f)
  • RAG: anchor continuation-batch initial progress to overall-file frame (#889) (f304d80)
  • RAG: pace continuation batches when embedding is CPU-only (a22c640)
  • RAG: pass num_ctx and truncate to Ollama embed call (#763) (7bebedc), closes #756 #369 #670
  • RAG: report ZIM ingestion progress in overall-file frame (d28eb9b)
  • RAG: unbreak multi-batch ZIM ingestion (jobId dedupe) (74cef75)
  • security: canonicalize hostnames to block IPv4-mapped IPv6 IMDS bypass (736c9bd)
  • security: match IPv6 SSRF patterns against unbracketed hostnames (b3dac9b)
  • System: correct AMD VRAM in Graphics card + harden log probe (d2f2172), closes #835 #850 #208
  • System: correct NVIDIA VRAM in Graphics card (#835) (6c799dd), closes #804
  • System: self-heal stale updateAvailable flag after sidecar-driven update (#825) (318276c)
  • System: validate StartedAt with fallback to tail:500 (PR review) (662a6c4)
  • UI: Country Picker UX polish + auto-refresh stored files (#817) (8c06b5b), closes #780
  • UI: four fixes for the System Update page (#827) (3a2e92a)
  • UI: improve global map banner display logic (#702) (5517e82)
  • UI: wire map file delete confirmation to API (#732) (e561ce8)
  • ZIM: preserve co-existing Wikipedia corpora on cleanup (#884) (5e2c599)

Features

Security Fixes

  • AI remote Ollama URL validation prevents SSRF vulnerability
  • Security: canonicalize hostnames to block IPv4‑mapped IPv6 IMDS bypass
  • Security: match IPv6 SSRF patterns against unbracketed hostnames

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track project-nomad

Get notified when new releases ship.

Sign up free

About project-nomad

Project N.O.M.A.D, is a self-contained, offline survival computer packed with critical tools, knowledge, and AI to keep you informed and empowered—anytime, anywhere.

All releases →

Related context

Related tools

Beta — feedback welcome: [email protected]