Repository navigation
Releases: Crosstalk-Solutions/project-nomad
Releases · Crosstalk-Solutions/project-nomad
Release list
v1.35.1
Version 1.35.1 - October 5, 2026
Features
Bug Fixes
- AI: probe a model the list reports without vision before disabling image attachments, so
gemma3accepts images again (#1409). Thanks @chriscrosstalk for the contribution! - Translate: forward upstream redirects instead of following them, so books open styled and their article links resolve (#1379). Thanks @chriscrosstalk for the contribution!
- Translate: download every released language instead of crashing on pre-release models, and list all supported languages in the docs (#1405). Thanks @chriscrosstalk for the contribution!
Improvements
📝 All Changes
- chore(docs): update release notes (f257d54)
- fix(ai): probe a model the list reports without vision before disabling images (26f40ba)
- fix(translate): download every released language, and list them in the docs (ee203df)
- fix(translate): forward upstream redirects instead of following them (eef5b6c)
- chore(attribution): credit Gabe Graves for the vision attachments work (a483e15)
- fix(collections): repoint 11 curated ZIMs whose upstream files are gone (5e1702e)
v1.35.0
Version 1.35.0 - September 29, 2026
Features
- AI: support local vision attachments in chat (#1288). Thanks @gabegraves and @chriscrosstalk for the contribution!
- AI: show source document and date as citations under RAG answers (#1287). Thanks @chriscrosstalk for the contribution!
- AI: budget the prompt and actually set the context window on a native Ollama chat path (#1253). Thanks @jakeaturner for the contribution!
- AI: give chat a sampler with four response-style profiles instead of backend defaults (#1282). Thanks @jakeaturner for the contribution!
- AI: constrain the structured task calls (titles, chips, query rewrite) instead of asking nicely (#1259). Thanks @jakeaturner for the contribution!
- AI: let retrieval decline via a post-rerank relevance floor (#1281). Thanks @jakeaturner for the contribution!
- AI: add opt-in relevance check for off-topic retrieval (#1365). Thanks @jakeaturner for the contribution!
- AI: specify a lightweight model for ancillary tasks (#1244). Thanks @jakeaturner for the contribution!
- AI: make RAG retrieval optional per chat (#1247). Thanks @jakeaturner for the contribution!
- Dashboard: user-added link tiles for services NOMAD does not manage (#1293). Thanks @chriscrosstalk for the contribution!
- KB: per-file active toggle plus collection grouping and bulk toggle (#1286). Thanks @just-jbc and @chriscrosstalk for the contribution!
- Kiwix Library: browse the remote Kiwix catalog in any language, not just English (#1299). Thanks @chriscrosstalk for the contribution!
- Maps: full marker management (visibility, search/sort, per-marker icon and colour, coordinate navigation, delete confirmation) (#1291). Thanks @kennethbrewer3 and @chriscrosstalk for the contribution!
- Translate: offline machine translation for the Information Library, shipped as a Supply Depot app (#1292). Thanks @chriscrosstalk for the contribution!
Bug Fixes
- AI: stop
<think>output leaking into titles, chips, and the RAG rewrite (#1254). Thanks @jakeaturner for the contribution! - AI: report a failed Ollama model pull as a failure instead of a success (#1274). Thanks @chriscrosstalk for the contribution!
- AI: don't probe the native embed endpoint on a non-Ollama backend (#1284). Thanks @chriscrosstalk for the contribution!
- AI: don't classify the backend as non-Ollama when it is merely unreachable (#1357). Thanks @chriscrosstalk for the contribution!
- AI: bump the Ollama pin to 0.33.3 to fix the disconnect hang (#1356). Thanks @chriscrosstalk for the contribution!
- AI: remove the long-dead default rewrite model warning (#1249). Thanks @jakeaturner for the contribution!
- Benchmark: show the v2 score in Benchmark History (#1210). Thanks @chriscrosstalk for the contribution!
- Benchmark: stop WSL2 submitting "Microsoft Basic Render Driver" as the GPU model (#1277). Thanks @chriscrosstalk for the contribution!
- Chat: abort abandoned response streams (#1220). Thanks @NgoQuocViet2001 for the contribution!
- Chat: stop capping answers at 1024 tokens and surface truncation (#1360). Thanks @jakeaturner for the contribution!
- Chat: render the user's message before creating the session (#1301). Thanks @chriscrosstalk for the contribution!
- Content: re-download content updates after a failed attempt (#1213). Thanks @Osamaali313 for the contribution!
- Database: allow
datasetininstalled_resources.resource_type(#1243). Thanks @rcorvus for the contribution! - Downloads: guard orphaned model jobs (#1245). Thanks @NgoQuocViet2001 for the contribution!
- GPU: detect Ollama CPU fallback from logs so auto-remediation fires (#1109). Thanks @fpolica91 for the contribution!
- GPU: detect Ollama CPU fallback on AMD and offer the right fix (#1370). Thanks @jakeaturner for the contribution!
- GPU: stop a missing
/dev/kfdblocking the AI Assistant install entirely (#1276). Thanks @chriscrosstalk for the contribution! - GPU: keep an existing AMD HSA override across reinstall and update (#1390). Thanks @jakeaturner for the contribution!
- Install: time out Redis readiness probes (#1347). Thanks @dajiaohuang for the contribution!
- Install: match the HawkPoint1 lspci string for gfx1103 AMD GPU detection (#1385). Thanks @Yi-111-a for the contribution!
- KB: stop leaking Qdrant vectors when a ZIM is deleted or replaced (#1227). Thanks @just-jbc for the contribution!
- KB: stop the orphan sweep purging an empty but present scan root (#1393). Thanks @jakeaturner for the contribution!
- KB: persist the source active toggle when no ingest state row exists (#1395). Thanks @jakeaturner for the contribution!
- Maps: stop world basemap provisioning running pmtiles extract twice (#1394). Thanks @jakeaturner for the contribution!
- Queue: clear terminal jobs before re-dispatch so downloads aren't silently dropped (#1225). Thanks @chriscrosstalk for the contribution!
- Queue: stop stalled-job recovery forking the embedding chain (#1270). Thanks @chriscrosstalk for the contribution!
- RAG: don't abandon a ZIM after one sparse batch (#1242). Thanks @rcorvus for the contribution!
- Security: reject oversized custom URLs (#1354). Thanks @dajiaohuang for the contribution!
- Seeder: keep an installed app's host port across catalog sync (#1300). Thanks @johno10661 and @chriscrosstalk for the contribution!
- System: resolve a placeholder GPU name on the System page too (#1285). Thanks @chriscrosstalk for the contribution!
- UI: restore dark mode text contrast (#1358). Thanks @Tiancheng-Xu for the contribution!
- ZIM: resolve flavoured and non-English ZIMs in the update check (#1298). Thanks @chriscrosstalk for the contribution!
Improvements
- Brand: replace the retired N.O.M.A.D. badge with the new logo (#1375). Thanks @chriscrosstalk for the contribution!
- CI: add a weekly schedule trigger to collection URL validation (#1217). Thanks @cclavin for the contribution!
- Dashboard: tighten the Drug Reference tile description (#1297). Thanks @chriscrosstalk for the contribution!
- Docs: add SECURITY.md and tighten .gitignore for credential files (#1223). Thanks @chriscrosstalk for the contribution!
- Docs: state how much disk NOMAD needs before any content (#1278). Thanks @chriscrosstalk for the contribution!
- Eval: standardized RAG quality evaluation harness with a frozen corpus and golden question set (#1233). Thanks @jakeaturner for the contribution!
- Install: add the Project NOMAD ASCII banner to the installer (#1310). Thanks @chriscrosstalk for the contribution!
📝 All Changes
- docs: update release notes (ddb0235)
- fix(kb): keep chunk active flags in sync with toggles during embedding (c65198c)
- fix(kb): persist source active toggle when no ingest state row exists (152d1ee)
- fix(maps): stop world basemap provisioning from running pmtiles extract twice (bc24508)
- fix(install): match HawkPoint1 lspci string for gfx1103 AMD GPU detection (25a5f82)
- fix(kb): stop orphan sweep from purging an empty but present scan root (ae1eae7)
- fix(gpu): keep an existing AMD HSA override across reinstall and update (a1b899f)
- chore(branding): replace the retired N.O.M.A.D. badge with the new logo (4c75eb5)
- fix(gpu): detect Ollama CPU fallback on AMD and offer the right fix (ac437f8)
- fix: bound custom URL length before persistence (7dabc40)
- feat(AI): add opt-in relevance check for off-topic retrieval (a915cdc)
- fix(chat): stop capping answers at 1024 tokens and surface truncation (a013eb6)
- fix(ui): cover dark accent interaction states (99fe2ef)
- fix(ui): restore dark mode contrast (8d821f3)
- fix(kb): confine the orphan sweep to roots the scan actually walked (52d12a2)
- test(kb): extract orphan allowlist into a tested pure fn (d4f0f07)
- fix(kb): batch the orphan sweep's Qdrant/state deletes into one round trip (6712251)
- fix(kb): make purge self-healing and allowlist the orphan sweep's roots (50b42fe)
- fix(kb): guard ZIM delete purge and dedupe reconcile's...
v1.35.0-rc.2
1.35.0-rc.2 (2026-09-24)
Bug Fixes
- ai: bump the Ollama pin to 0.33.3 to fix the disconnect hang (bdfcd16), closes #1321
- ai: don't classify the backend as non-Ollama when it is merely unreachable (9504f5f), closes #1349 #1349
- bound custom URL length before persistence (ce60e06)
- chat: render the user's message before creating the session (1cf7bf5)
- chat: stop capping answers at 1024 tokens and surface truncation (b2cb1f1), closes #1342
- db: allow 'dataset' in installed_resources.resource_type (da54e6d)
- drug-reference: backfill the missing dataset install row on boot (4229ff9)
- gpu: detect Ollama CPU fallback on AMD and offer the right fix (74012e1), closes #1232 #1325 #1344 #1325 #1232
- install: time out Redis readiness probes (86a8616)
- kb: batch the orphan sweep's Qdrant/state deletes into one round trip (2cc3ce9)
- kb: confine the orphan sweep to roots the scan actually walked (f8a2969), closes #1050
- kb: guard ZIM delete purge and dedupe reconcile's delete pair (b8bb3cd)
- kb: make purge self-healing and allowlist the orphan sweep's roots (565ec8c)
- kb: purge qdrant points when a zim is deleted (#1170) (231b3c4)
- rag: reap orphaned qdrant sources during sync (#1170) (6983ab8)
- ui: cover dark accent interaction states (c9a1a76)
- ui: restore dark mode contrast (02fe66e)
Features
v1.35.0-rc.1
1.35.0-rc.1 (2026-09-13)
Bug Fixes
- ai: a failed Ollama model pull is reported to the user as a success (37818a3), closes #1071 #1273 #1071
- ai: don't probe the native embed endpoint on a non-Ollama backend (8c80916), closes #1279
- AI: removes long-dead default rewrite model warning (cfdd863)
- AI: stop output leaking into titles, chips, and the RAG query (#1254) (4acfef5)
- AI: tell a broken grammar apart from a backend that never had one (bb01d61)
- benchmark: show the v2 score in Benchmark History (7c55aa0)
- benchmark: WSL2 submits "Microsoft Basic Render Driver" as the GPU model (5bdba49), closes #1218 #1218
- chat: abort abandoned response streams (9a9b796)
- content: re-download content updates after a failed attempt (4f06848)
- dashboard: exempt link tiles from container reconciliation (a8fb58d)
- dashboard: show the color picker swatches solid (2085a52)
- downloads: guard orphaned model jobs (fdc6b6b)
- gpu: a missing /dev/kfd blocks the AI Assistant install entirely (b3ea3e5), closes #1232
- gpu: detect Ollama CPU fallback from logs so auto-remediation fires (7f7cb45)
- maps: cap marker notes at 500 characters server-side (f702ff5)
- maps: restore the icon picker's width so the grid does not collapse (0481e2e)
- maps: undef func call, flyTo issue, visible column, and silent save failures (102a00b)
- queue: clear terminal jobs before re-dispatch so downloads aren't silently dropped (17916a7), closes #1214 #1214
- queue: stop stalled-job recovery forking the embedding chain (932ced3)
- rag: don't abandon a ZIM after one sparse batch (1933f8e)
- seeder: derive ui_location from the merged config, not the live row (39566e6)
- seeder: keep an installed app's host port across catalog sync (c6f0e7a)
- system: resolve a placeholder GPU name on the System page too (c325c81), closes #1277 #1196
- UI: remove deprecated prop from type dec (2b04710)
- zim: drop the dead keyword-scan fallback (597665a)
- zim: extract Kiwix catalog URL into system-wide constant (b34926c)
- zim: resolve flavoured and non-English ZIMs in the update check (f63adb8)
- zim: use the OPDS catalog host, not Kiwix's gated browse host (4e8a540)
Features
- AI: budget the prompt and actually set the context window (#1253) (5af5e1e)
- AI: constrain the structured task calls instead of asking nicely (cccdbbd)
- AI: let retrieval decline instead of making the prompt paper over it (1b552cf)
- AI: make RAG retreival optional per chat (#1247) (f1ec20e)
- AI: specify a model for ancillary tasks (#1244) (91a9e2b)
- ai: support local vision attachments (edbfe1a), closes #1178
- dashboard: let a link tile carry a brand colour (c83a191)
- dashboard: user-added link tiles for services NOMAD does not manage (2c73139), closes #1239
- eval: standardized RAG quality evaluation harness (#1233) (d8f6ba2)
- kb: per-file active toggle + collection grouping/bulk toggle (#1286) (f162422), closes #1119 #1193 #1198
- maps: confirm before deleting a pin, after flying to it (c2e7bdb)
- maps: map marker management (a01aa5d), closes #836
- show source document and date as citations under RAG chat answers (c448715)
- translate: offline translation for the Information Library (#1292) (9ef31b1), closes #x27 #x27 #x27
- zim: let users browse the Kiwix library in any language (dde8aa5)
Reverts
- Revert "fix(zim): extract Kiwix catalog URL into system-wide constant" ([93be567](https://github.com/Crosstalk-Solu...
v1.34.1
v1.34.0
Version 1.34.0 - August 4, 2026
Features
- AI: nomad.md for custom instructions (#1127). Thanks @jakeaturner for the contribution!
- AI: per-model thinking toggle with global default (off) (#1079). Thanks @chriscrosstalk for the contribution!
- API Documentation: Auto-generating OpenAPI docs with Scalar UI (#1128). Thanks @jakeaturner for the contribution!
- Benchmark: official multi-arch sysbench, resolved digest, platform metadata (#1158). Thanks @chriscrosstalk for the contribution!
- Benchmark: lock Score v2 AI reference to 13.2 (measured, was placeholder) (#1097). Thanks @chriscrosstalk for the contribution!
- Benchmark: dashboard re-run banner prompting a Score v2 re-run (#1096). Thanks @chriscrosstalk for the contribution!
- Benchmark: Score v2 app client — raws, uncapped score, v2 payload + UI. Thanks @chriscrosstalk for the contribution!
- Benchmark: harness hardening — fail loudly + pin sysbench + record provenance (#1089). Thanks @chriscrosstalk for the contribution!
- Benchmark: end-of-run score reveal + NVIDIA GPU-util overlay (#1087). Thanks @chriscrosstalk for the contribution!
- Benchmark: authoritative in-test sysbench numbers + results strip (#1085). Thanks @chriscrosstalk for the contribution!
- Benchmark: live telemetry during benchmark runs (#1082) (#1084). Thanks @chriscrosstalk for the contribution!
- Collections: support gated downloads for self-hosted curated content (#1172). Thanks @chriscrosstalk for the contribution!
- Creator Packs: gated per-creator video packs, offline via Kiwix (#1106). Thanks @chriscrosstalk for the contribution!
- Dashboard: add dismissable "What's new" banner for v1.34 (#1112). Thanks @chriscrosstalk for the contribution!
- Dashboard: round out the v1.34 What's new highlights (#1197). Thanks @chriscrosstalk for the contribution!
- Debug Info: add storage, docker, GPU health, and auto-update diagnostics (#1102). Thanks @chriscrosstalk for the contribution!
- Drug Reference: Add offline FDA drug reference (labels, interaction view, conditions, remedies) (#1040). Thanks @caweis for the contribution!
- Kiwix Library: Expandable rows in Kiwix Library browser (#1060). Thanks @jarvisxyz for the contribution!
- Maps: add notes input to map pin placement popup (#926). Thanks @chriscrosstalk for the contribution!
- RAG: add subject/collection organization to knowledge base (#1063). Thanks @just-jbc for the contribution!
Bug Fixes
- AI: stream thinking from /v1 reasoning field + abort on client disconnect (#1078). Thanks @chriscrosstalk for the contribution!
- AI: stop forcing HSA_OVERRIDE=11.0.0 on natively-supported AMD iGPUs (#1076). Thanks @chriscrosstalk for the contribution!
- AI: set OLLAMA_IGPU_ENABLE on AMD provisioning so iGPUs are used (#1074). Thanks @chriscrosstalk for the contribution!
- AI: coerce gfx1103 (780M) to HSA_OVERRIDE 11.0.0 so it stays on GPU (#1134). Thanks @jakeaturner for the contribution!
- Benchmark: fix various typescript errors. Thanks @jakeaturner for the contribution!
- Benchmark: partial runs are not the NOMAD Score (relabel + renormalize) (#1088). Thanks @chriscrosstalk for the contribution!
- Benchmark: remove stale progress setter (#1136). Thanks @NgoQuocViet2001 for the contribution!
- Benchmark: surface a clear reason when leaderboard submission fails (#1138). Thanks @chriscrosstalk for the contribution!
- Benchmark: warm the AI model before timed runs for reproducible scores (#1140). Thanks @chriscrosstalk for the contribution!
- Benchmark: block leaderboard submission when AI runs on a remote host (#1157). Thanks @chriscrosstalk for the contribution!
- Benchmark: don't block submission when the AI host is this machine (#1166). Thanks @chriscrosstalk for the contribution!
- Chat: make conversation layout responsive (#1090). Thanks @Bortlesboat for the contribution!
- Chat: open full chat in place instead of a new window (#1181). Thanks @chriscrosstalk for the contribution!
- Content: resolve current ZIM URL before download (#1091). Thanks @NgoQuocViet2001 for the contribution!
- Content: refresh installed ZIMs when a download completes to prune ghost entries (#1099). Thanks @chriscrosstalk for the contribution!
- Creator Packs: add missing Modern Rogue banner asset (#1147). Thanks @chriscrosstalk for the contribution!
- Downloads: send a descriptive User-Agent so Wikimedia mirrors don't 403 (#1114). Thanks @chriscrosstalk for the contribution!
- Downloads: add retry button and resource download link for failed downloads (#1059). Thanks @jarvisxyz for the contribution!
- Downloads: don't 500 the jobs endpoint on an orphaned BullMQ job (#1191). Thanks @chriscrosstalk for the contribution!
- Downloads: don't retry a rejected entitlement for four hours (#1205). Thanks @chriscrosstalk for the contribution!
- Downloads: let interrupted content downloads resume (#1202). Thanks @chriscrosstalk for the contribution!
- Easy Setup: streamline wizard + robust model recommendations (#1110). Thanks @chriscrosstalk for the contribution!
- Install: define missing header_red + colors in uninstall/update scripts (#1098). Thanks @chriscrosstalk for the contribution!
- KB: stop the collection dropdown in from being clipped, widen the modal (#1198). Thanks @chriscrosstalk for the contribution!
- KB: keep the collection when a file is indexed after assignment (#1200). Thanks @chriscrosstalk for the contribution!
- KVStore: fix missing apps.homebox key. Thanks @jakeaturner for the contribution!
- Maps: warn when world basemap missing instead of silent grey map (#1104). Thanks @not-knope for the contribution!
- RAG: add proper .docx text extraction via mammoth (#1100). Thanks @just-jbc for the contribution!
- RAG: stop re-creating payload indexes on every embedded document (#1135). Thanks @bragaus for the contribution!
- Content: respect ingest policy when a ZIM is uploaded locally (#1184). Thanks @chriscrosstalk for the contribution!
- Supply Depot: generate Homebox API key pepper so it stops crash-looping (#1077). Thanks @chriscrosstalk for the contribution!
- UI: add API reference link to the Settings sidebar. Thanks @jakeaturner for the contribution!
- Updater: prune superseded images after update to reclaim disk (#1101). Thanks @chriscrosstalk for the contribution!
Improvements
- Brand: add ™ to Project NOMAD wordmark on prominent surfaces. Thanks @chriscrosstalk for the contribution!
- Brand: standardize brand name to Project NOMAD, retire backronym. Thanks @chriscrosstalk for the contribution!
- Build: run drug reference codegen step (#1132). Thanks @jakeaturner for the contribution!
- Supply Depot: sunset orphaned Meshtastic Daemon card (#1049). Thanks @chriscrosstalk for the contribution!
- Catalog: add The Modern Rogue creator pack (dev) (#1146). Thanks @chriscrosstalk for the contribution!
- CI: fix collection URL validation. Thanks @jakeaturner for the contribution!
- Collections: update stale URLs (#1148). Thanks @jakeaturner for the contribution!
- Collections: fix four dead Wikipedia download URLs (#1189). Thanks @chriscrosstalk for the contribution!
- Content Manager: filter non-content sections + render tables in ZIM extraction (#1044). Thanks @chriscrosstalk for the contribution!
- Dependencies: bump tar, vite, and dockerode in admin. Thanks @jakeaturner for the contribution!
- Dependencies: bump axios and systeminformation in admin. Thanks @jakeaturner for the contribution!
- Docs: make storage-relocation guidance accurate and consistent (#1103). Thanks @chriscrosstalk for the contribution!
- Docs: add UI Consistency section (#1080). Thanks @chriscrosstalk for the contribution!
- Docs: recommend Ubuntu 26.04 LTS as the default base (#1141). Thanks @chriscrosstalk for the contribution!
- Docs: point MeshCore Web to the official meshcore.io site (#1142). Thanks @chriscrosstalk for the contribution!
- Drug Reference: make collections JSON the single source for curated data (#1130). Thanks @caweis for the contribution!
- Drug Reference: tabbed redesign with grouped search, multi-select situations, and a disclaimer gate (#1137). Thanks @chriscrosstalk for the contribution!
📝 All Changes
- docs: update release notes (195a0a9)
- fix(downloads): don't retry a rejected entitlement for four hours (#1205) (65bfd4f)
- fix(downloads): let interrupted content downloads resume (#1202) (2159c9d)
- fix(kb): keep the collection when a file is indexed after assignment (#1200) (7472442)
- fix(kb): stop the collection dropdown being clipped, widen the modal (#1198) (7325457)
- feat(dashboard): round out the v1.34 What's new highlights (#1197) (af3fb8d)
- docs: update release notes (9e173ce)
- docs: document Ubuntu 26.04 LTS as the recommended OS in the in-app docs (#1159) (2ec6ef3)
- docs: add an in-app Drug Reference guide (#1161) ([bab2c42](bab2c42...
v1.34.0-rc.4
1.34.0-rc.4 (2026-08-02)
Bug Fixes
- benchmark: don't block submission when the AI host is this machine (#1166) (bb17ad7), closes #1157
- benchmark: don't submit unresolved PCI ids as the GPU model (#1165) (fe2d070)
- benchmark: name the fix in the remote-host block, log warm-up failures (#1164) (a0d36e0)
- chat: open full chat in place instead of a new window (#1181) (f7e7ac0), closes #1123
- downloads: don't 500 the jobs endpoint on an orphaned BullMQ job (#1191) (de6f453), closes #1190
- drug-reference: responsive compare columns and dark-mode readability (#1163) (fb99b39)
- kb: respect ingest policy when a ZIM is uploaded locally (#1184) (379f3de), closes #1119
Features
v1.34.0-rc.3
1.34.0-rc.3 (2026-07-27)
Bug Fixes
- benchmark: block leaderboard submission when AI runs on a remote host (#1157) (d1535d1), closes #1151
- benchmark: remove stale progress setter (#1136) (25fc4ad)
- benchmark: surface a clear reason when leaderboard submission fails (#1138) (cf6d686)
- benchmark: warm the AI model before timed runs for reproducible scores (#1140) (5afb4ba), closes #1139
- UI: add API reference to Settings sidebar (f04a700)
Features
- benchmark: official multi-arch sysbench, resolved digest, platform metadata (#1158) (0891d17), closes #1156 #1151
- creator-packs: add missing Modern Rogue banner asset (#1147) (5cebb8e), closes 1145/#1146
- drug-reference: tabbed redesign with grouped search, multi-select situations, and a disclaimer gate (#1137) (ab738cf)
v1.34.0-rc.2
v1.34.0-rc.1
1.34.0-rc.1 (2026-07-21)
Bug Fixes
- AI: set OLLAMA_IGPU_ENABLE on AMD provisioning so iGPUs are used (#1074) (60fffda)
- AI: stop forcing HSA_OVERRIDE=11.0.0 on natively-supported AMD iGPUs (#1076) (6b29465), closes #1056
- AI: stream thinking from /v1 reasoning field + abort on client disconnect (#1078) (166247c)
- benchmark: partial runs are not the NOMAD Score (relabel + renormalize) (#1088) (39d0acb)
- Benchmark: various typescript errors (b249ef1)
- chat: make conversation layout responsive (#1090) (7641d0d)
- content: refresh installed ZIMs when a download completes to prune ghost entries (#1099) (97d70a4), closes #771 #731
- content: resolve current ZIM URL before download (#1091) (c6bc40e)
- downloads: add retry button and resource download link for failed downloads (#1059) (d48dffc)
- downloads: send a descriptive User-Agent so Wikimedia mirrors don't 403 (#1114) (59332c6)
- easy-setup: streamline wizard + robust model recommendations (#1110) (e1d7da0)
- install: define missing header_red + colors in uninstall/update scripts (#1098) (5c05e12), closes #1058
- KVStore: missing apps.homebox key (cf33072)
- maps: warn when world basemap missing instead of silent grey map (#1104) (bc6a5f9), closes #1030
- rag: add proper .docx text extraction via mammoth (#1100) (8400866)
- supply-depot: generate Homebox API key pepper so it stops crash-looping (#1077) (39507d6)
- updater: prune superseded images after update to reclaim disk (#1101) (2a11a81), closes #858
Features
- AI: nomad.md for custom instructions (#1127) (a5be2d4)
- AI: per-model thinking toggle with global default (off) (#1079) (d50cfa1), closes #1078
- auto-generating OpenAPI docs with Scalar UI (#1128) (e4b5f49)
- benchmark: authoritative in-test sysbench numbers + results strip (#1085) (b32c488), closes #1082
- benchmark: dashboard re-run banner prompting a Score v2 re-run (#1096) (401fbf4), closes #1094
- benchmark: end-of-run score reveal + NVIDIA GPU-util overlay (#1087) (fd9310b), closes #1082
- benchmark: harness hardening — fail loudly + pin sysbench + record provenance (#1089) (00b5977)
- benchmark: live telemetry during benchmark runs (#1082) (#1084) (5dee942)
- benchmark: lock Score v2 AI reference to 13.2 (measured, was placeholder) (#1097) (928cd71), closes #1074 #1074 #1094
- benchmark: Score v2 app client — raws, uncapped score, v2 payload + UI (398ca01), closes #1089 #1016 #1074
- brand: add ™ to Project NOMAD wordmark on prominent surfaces (fca1a48)
- creator-packs: gated per-creator video packs, offline via Kiwix (#1106) (d07b08d)
- dashboard: add dismissable "What's new" banner for v1.34 (#1112) (3735a4c)
- debug-info: add storage, docker, GPU health, and auto-update diagnostics (#1102) (05af847), closes #1050 #938 passthrou#lost-after-update 755/#878 #938
- Expandable rows in Kiwix Library browser (#1060) (9482f78)
- maps: add notes input to map pin placement popup (#926) ([59c2fdb](59c2fdbb326f44...