From 974b37a71cfdc64b94a235c663d3709391de262e Mon Sep 17 00:00:00 2001 From: lachtan Date: Sun, 20 Sep 2026 12:21:24 +0200 Subject: [PATCH] nanobot: 2026-09-20 12:21:23 --- cron/jobs.json | 258 ++++++++++++------ projects/devops/memory.md | 9 + projects/devops/state.md | 2 +- projects/en/artifacts/vocabulary.md | 8 +- .../life/artifacts/.fyzio-cviky-kycele.md.swp | Bin 0 -> 12288 bytes projects/life/artifacts/trenink-log.md | 4 +- projects/life/memory.md | 3 + projects/life/state.md | 6 +- 8 files changed, 198 insertions(+), 92 deletions(-) create mode 100644 projects/life/artifacts/.fyzio-cviky-kycele.md.swp diff --git a/cron/jobs.json b/cron/jobs.json index dea2180..0e27c4b 100644 --- a/cron/jobs.json +++ b/cron/jobs.json @@ -37,8 +37,8 @@ } }, "state": { - "nextRunAtMs": 1789884000000, - "lastRunAtMs": 1789797600001, + "nextRunAtMs": 1789970400000, + "lastRunAtMs": 1789884000001, "lastStatus": "ok", "lastError": null, "runHistory": [ @@ -111,11 +111,18 @@ "durationMs": 7488, "error": null, "runId": "c1e268c8:1789797600001:a9bf94ec" + }, + { + "runAtMs": 1789884000001, + "status": "ok", + "durationMs": 47538, + "error": null, + "runId": "c1e268c8:1789884000002:7d0fdaa0" } ] }, "createdAtMs": 1788948314679, - "updatedAtMs": 1789797607489, + "updatedAtMs": 1789884047539, "deleteAfterRun": false }, { @@ -142,32 +149,11 @@ "originMetadata": {} }, "state": { - "nextRunAtMs": 1789801337499, - "lastRunAtMs": 1789794137480, + "nextRunAtMs": 1789902137794, + "lastRunAtMs": 1789894937775, "lastStatus": "ok", "lastError": null, "runHistory": [ - { - "runAtMs": 1789736537196, - "status": "ok", - "durationMs": 133, - "error": null, - "runId": null - }, - { - "runAtMs": 1789743737331, - "status": "ok", - "durationMs": 19, - "error": null, - "runId": null - }, - { - "runAtMs": 1789750937353, - "status": "ok", - "durationMs": 18, - "error": null, - "runId": null - }, { "runAtMs": 1789758137372, "status": "ok", @@ -209,11 +195,109 @@ "durationMs": 19, "error": null, "runId": null + }, + { + "runAtMs": 1789801337501, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null + }, + { + "runAtMs": 1789808537521, + "status": "ok", + "durationMs": 20, + "error": null, + "runId": null + }, + { + "runAtMs": 1789815737542, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null + }, + { + "runAtMs": 1789822937564, + "status": "ok", + "durationMs": 20, + "error": null, + "runId": null + }, + { + "runAtMs": 1789830137585, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null + }, + { + "runAtMs": 1789837337605, + "status": "ok", + "durationMs": 23, + "error": null, + "runId": null + }, + { + "runAtMs": 1789844537629, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null + }, + { + "runAtMs": 1789851737649, + "status": "ok", + "durationMs": 20, + "error": null, + "runId": null + }, + { + "runAtMs": 1789858937670, + "status": "ok", + "durationMs": 23, + "error": null, + "runId": null + }, + { + "runAtMs": 1789866137695, + "status": "ok", + "durationMs": 18, + "error": null, + "runId": null + }, + { + "runAtMs": 1789873337715, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null + }, + { + "runAtMs": 1789880537736, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null + }, + { + "runAtMs": 1789887737756, + "status": "ok", + "durationMs": 18, + "error": null, + "runId": null + }, + { + "runAtMs": 1789894937775, + "status": "ok", + "durationMs": 19, + "error": null, + "runId": null } ] }, "createdAtMs": 1776109113789, - "updatedAtMs": 1789794137499, + "updatedAtMs": 1789894937794, "deleteAfterRun": false }, { @@ -240,155 +324,155 @@ "originMetadata": {} }, "state": { - "nextRunAtMs": 1789801337517, - "lastRunAtMs": 1789799537516, + "nextRunAtMs": 1789900337802, + "lastRunAtMs": 1789898537802, "lastStatus": "ok", "lastError": null, "runHistory": [ { - "runAtMs": 1789765337415, + "runAtMs": 1789864337702, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789767137416, - "status": "ok", - "durationMs": 1, - "error": null, - "runId": null - }, - { - "runAtMs": 1789768937418, - "status": "ok", - "durationMs": 1, - "error": null, - "runId": null - }, - { - "runAtMs": 1789770737420, - "status": "ok", - "durationMs": 1, - "error": null, - "runId": null - }, - { - "runAtMs": 1789772537441, + "runAtMs": 1789866137717, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789774337443, + "runAtMs": 1789867937718, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789869737721, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789776137445, + "runAtMs": 1789871537722, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789873337736, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789777937446, - "status": "ok", - "durationMs": 1, - "error": null, - "runId": null - }, - { - "runAtMs": 1789779737462, - "status": "ok", - "durationMs": 1, - "error": null, - "runId": null - }, - { - "runAtMs": 1789781537464, + "runAtMs": 1789875137737, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789783337465, + "runAtMs": 1789876937738, "status": "ok", "durationMs": 1, "error": null, "runId": null }, { - "runAtMs": 1789785137467, + "runAtMs": 1789878737740, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789880537758, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789786937484, + "runAtMs": 1789882337760, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789788737486, + "runAtMs": 1789884137768, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789790537487, - "status": "ok", - "durationMs": 1, - "error": null, - "runId": null - }, - { - "runAtMs": 1789792337489, + "runAtMs": 1789885937770, "status": "ok", "durationMs": 0, "error": null, "runId": null }, { - "runAtMs": 1789794137504, + "runAtMs": 1789887737778, "status": "ok", "durationMs": 1, "error": null, "runId": null }, { - "runAtMs": 1789795937506, + "runAtMs": 1789889537780, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789891337781, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789893137783, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789894937796, "status": "ok", "durationMs": 1, "error": null, "runId": null }, { - "runAtMs": 1789797737513, + "runAtMs": 1789896737798, "status": "ok", "durationMs": 1, "error": null, "runId": null }, { - "runAtMs": 1789799537516, + "runAtMs": 1789898537802, "status": "ok", - "durationMs": 1, + "durationMs": 0, "error": null, "runId": null } ] }, "createdAtMs": 1776109113795, - "updatedAtMs": 1789799537517, + "updatedAtMs": 1789898537802, "deleteAfterRun": false } ] diff --git a/projects/devops/memory.md b/projects/devops/memory.md index b2f2546..af3589f 100644 --- a/projects/devops/memory.md +++ b/projects/devops/memory.md @@ -225,3 +225,12 @@ Vyhodnocení testu: Zůstává otevřené: bez ohledu na výsledek testu stále chybí PBS (kam zálohovat) — nezávislé na 9020. - 2026-09-18: Stav sehnání originálního Dell PSU pro 9020: hledaný, ale **nenašel se** (uživatel zkusí ještě jednou). Bezpečný test Aukro desky přes originální zdroj je tedy zatím nedostupný — test půjde pravděpodobně přes AliExpress adapter s vědomým rizikem (konvertor může zabít i novou desku). +- 2026-09-19: Root cause BIOS neukládání na Optiplexu 9010 nalezen: uživatel sám vyndal **PSWD jumper** (schválně, aby smazal heslo od předchozího správce — jinak nemohl měnit nastavení). Bez nasazeného jumperu je deska v ochranném režimu a **žádné změny v BIOSu se neukládají** (ani nová hesla). Nejsou za tím CMOS battery, verze BIOSu ani jumper jinde. + +Postup (dohodnutý, dle konzultace s Gemini): +1. Vypnout PC, odpojit napájení +2. Nasadit jumper zpět na oba piny PSWD (staré heslo už je smazané, nové není potřeba) +3. Zapnout, F2 do BIOSu, nastavit potřebné hodnoty, uložit +4. Ověřit: výstražná hláška zmizí a hodnoty po restartu zůstanou + +Pozn.: bezpečnostní důsledek — BIOS je po nasazení jumperu bez hesla, plně přístupný. U homelab stroje přijatelné. diff --git a/projects/devops/state.md b/projects/devops/state.md index ea5fb40..e894458 100644 --- a/projects/devops/state.md +++ b/projects/devops/state.md @@ -10,7 +10,7 @@ timestamp: draft - Ollama na nvidia.hell: po incidentech 12.–13. 9. 2026 zaevidován root cause pádů — kauzální řetěz: ollama rozhoduje load podle VRAM ne volné RAM + vypíná mmap (podmínka na 9,5 GiB stroji nesplnitelná nikdy, regrese od 2026-06-05) + PLE host buffer u gemma4 + přerušený load leakuje napinovanou host paměť (neviditelná pro ps/nvidia-smi/cgtop, detekce jen `nr_foll_pin` delta v /proc/vmstat), uvolní **jen reboot** (rmmod driveru ověřeně NE). Cgroup pojistka (`MemoryMax=6G`, `MemorySwapMax=0`, bez MemoryHigh) ověřena zátěžovým testem: 240/240 SSH heartbeatů, load 3,41 vs 81 při incidentu. Skutečný zdroj zátěže = nanobot.hell (dávky přes ~10 modelů + embedding), LibreChat jen zesilovač. Reporty v `artifacts/2026-09-13_ollama-nvidia-full-report.md` (ucelený, s kuchařkou pro triáž) a `artifacts/2026-09-13_ollama-nvidia-negative-findings.md` (negativní zjištění), shrnutí v memory.md 2026-09-14. Zavržené cesty: earlyoom i jakákoli externí kill varianta, MemoryHigh pod MemoryMax, navýšení RAM (headroom konstanta 7,5 GiB), limit počtu modelů, OLLAMA_LOAD_TIMEOUT, upgrade ollamy, mmap override (neexistuje), ballooning (`balloon: 0` + pevná paměť), rmmod jako remedy. ## Co dál -- **HW po migraci na Optiplex 9010 (aktuální fronta):** (1) BIOS — neukládající se změny (CMOS battery? verze?); (2) doladit sekundární vetrak; (3) instalovat nový 1TB NVme; (4) nahodit Proxmox Backup Server — kandidát pivo.hell (Atom), aby bylo kam zálohovat; (5) dlouhodobě plán nového HW — průzkum ukázal 15–20 l skříňky s převahou jader, což nevyhovuje (uživatel nechce víc jader); zvažovat mini-ITX SFF, Optiplex jako mezikrok, custom build. +- **HW po migraci na Optiplex 9010 (aktuální fronta):** (1) ~~BIOS — neukládající se změny~~ — root cause nalezen 2026-09-19: vyndaný PSWD jumper drží desku v ochranném režimu; fix: nasadit jumper zpět na oba piny PSWD, nastavit hodnoty v BIOSu, uložit, ověřit persistenci (postup v memory.md 2026-09-19); (2) doladit sekundární vetrak; (3) instalovat nový 1TB NVme; (4) nahodit Proxmox Backup Server — kandidát pivo.hell (Atom), aby bylo kam zálohovat; (5) dlouhodobě plán nového HW — průzkum ukázal 15–20 l skříňky s převahou jader, což nevyhovuje (uživatel nechce víc jader); zvažovat mini-ITX SFF, Optiplex jako mezikrok, custom build. - Rozhodnout umístění LibreCodeInterpreter (AI stack VM vs dedikovaná VM) a nasadit — viz memory.md 2026-09-13 pro capability požadavky (SYS_ADMIN, NET_ADMIN, apparmor:unconfined). - Ollama open body dle priority (report §11): (1) ~~zastavit dávky z nanobot.hell~~ — **neplatí jako provozní riziko** (dávky byly testovací tool-calling requesty, běžný provoz nanobot nesahá na lokální modely); (2) retest cgroup pojistky bez MemoryHigh (odblokováno rebootem; kritéria: heartbeat bez výpadku, MemAvailable > 2 GiB, dmesg constraint=MEMCG); (3) doladit MemoryMax podle memory.peak; (4) rozhodnout osud gemma4 (PLE ~5,9 GiB host bufferu, na 9,5 GiB stroji nikdy); (5) `OLLAMA_KV_CACHE_TYPE=q4_0` zrušit nebo nepoužívat granite-code; (6) drobnosti: `apt purge` earlyoom (rc), llama-server `--log-verbosity 4`, zabbix `Hostname=Zabbix server` → nvidia, LibreChat titleConvo duplicitní requesty, otázka real-time monitoringu (hlídač co killuje = zavržená cesta). - Návrh k rozhodnutí: izolovat embedding pipeline (wiki skill) ze ollamy na statický llama.cpp server (`llama-server --embeddings --pooling last`, stejný GGUF, /v1/embeddings) — obejde load path, kde vzniká leak; po ní nanobot nezůstane na lokální ollamě žádný provoz krom cloud proxy. Vyžaduje: úprava wiki_embed.py klienta, config.yaml endpoint, reindex --full. diff --git a/projects/en/artifacts/vocabulary.md b/projects/en/artifacts/vocabulary.md index 8d2ba96..a27add3 100644 --- a/projects/en/artifacts/vocabulary.md +++ b/projects/en/artifacts/vocabulary.md @@ -7,4 +7,10 @@ Nová slova na konec. Řádky: slovo, výslovnost, odrážky = významy (přípa ## inquiry /ɪnˈkwaɪəri/ - dotaz, poptávka — *in response to your inquiry* -- vyšetřování — *a public inquiry* \ No newline at end of file +- vyšetřování — *a public inquiry* + +## genuinely +/ˈdʒenjuɪnli/ +- opravdu, skutečně — *I genuinely don't know.* +- upřímně (řečeno) — *I'm genuinely sorry about that.* +- přisuzuje upřímnost/celistvost — *genuinely interested in the topic* \ No newline at end of file diff --git a/projects/life/artifacts/.fyzio-cviky-kycele.md.swp b/projects/life/artifacts/.fyzio-cviky-kycele.md.swp new file mode 100644 index 0000000000000000000000000000000000000000..91b40cb42ef0e8424bbca8621800a0f4c2000c7b GIT binary patch literal 12288 zcmeI2JCEH&6vro2D3E}7)SR%*ZgltVBfNH-G$@D!5+NW$baU-ld9Ljl%N`rq1w{0> zqk*jq0%?m?LJ_)bfqg@fduv@=O2+kSTn8c%<1{=m8voD}@C1%0aE4vj+*r5ImR>$b&p-F! z@yq;OPrwuK1Uvyxz!UHUJONL@6ZlUOFxe^g88Ulfk=?n)`P3ul#ic)a0-k^;;0bsF zo`5Id33vjYfG6MycmkflzmNdOkLjmRGxi;1fB%2*|Ns4G7`q2$kcM7_UVwf%%h=D* zedr!^19}5`9s2VOV}C%mp=;1t=%=R{y9@mQ-G<(REpin3C zo0P%D@ZR}lC8n}4-QI|r5H7O3Yb(|7Qq^QS?e-P2&@1Q1h~TmaVO!~lQzD{3z)YOO zJeG_oh;%4H1kpJtSXL93yNKjyxZMtKr(H{1>p$M2f=s`gh?IW4@dZ^iK=iXA)=(oQ zWLA$TN_Yjg+?mieRh#kHVSGnK_DR#Vp$H<2>54X>4xAbA77GqW_cMSsd6~i4L)#Sd z)KM{-rXhHtY%~>$j8KhDj{stdQkHmU0=yp`uIv!ORZjiP)NnTVe?QYxxXSXvAO>(Q zjEIy-VLaEF(xsuKyJKQKA|)u*0TmK`G!PgX$+CXTjN@p{7#?vmVAT{`t45+6Nw=4l zl=D<5d9nd#NmC_kXj9vPnQml&8kvMUPR^!FVSaO{jRW#n{(m1PCghPghsbDo@YxPk zf;pXB4#{=zFq7x#W147x)Y!9H+wg3;w zC8((!^2SHrG!YFciT;hW1@2K$Y8+kCaIptM549g zx}PPOX*V8rUW;5;c382<)f4^8RfVQ@+fNH8a1|q<3hA;pxhd0Oo7tv~_3_qtbA9tQ zTFynR6(+2VG2abLr2VczYoJ#_*X|85C$6L&xl9(v?o~^4$$l-r$kmSaB5LdgF6z;d IU~QD_FL``c*#H0l literal 0 HcmV?d00001 diff --git a/projects/life/artifacts/trenink-log.md b/projects/life/artifacts/trenink-log.md index ed0ed43..7beb73a 100644 --- a/projects/life/artifacts/trenink-log.md +++ b/projects/life/artifacts/trenink-log.md @@ -11,4 +11,6 @@ Pravidlo: vynechaný den není selhání. Pásmo: podlaha 2×/týden, strop denn | 2026-09-15 | ✅ | + další cviky z vlastní sestavy; pravá kyčel táhne víc, kolena ztuha | | 2026-09-16 | ✅ | + další cviky z vlastní sestavy | | 2026-09-17 | ❌ | | -| 2026-09-18 | ✅ | | \ No newline at end of file +| 2026-09-18 | ✅ | | +| 2026-09-19 | ✅ | | +| 2026-09-20 | ✅ | | \ No newline at end of file diff --git a/projects/life/memory.md b/projects/life/memory.md index 59a502d..7df1b53 100644 --- a/projects/life/memory.md +++ b/projects/life/memory.md @@ -30,3 +30,6 @@ - 2026-09-16: Další tréninkový den (16.9.) — fyzio cviky plus další přidané protahovací cviky z vlastní obvyklé sestavy. Adherence drží: 5 tréninků za 6 dní, v rámci zvoleného pásma (podlaha 2×/týden, cíl denně). - 2026-09-16: Rozhodnutí o doplňcích (k výživě, po rozboru článku o hořčíku): vybral si MedPharma Magnesium citrát Forte B6 (BENU, 67 tbl., ~119 Kč) — plán brát **1 tabletu denně** (150 mg elementárního hořčíku v citrátu, 6 mg B6; při 1 tabletě pod EFSA UL 250 mg i pod britským B6 limitem 10 mg). Splňuje kritéria z článku: vstřebatelná forma, elementární hořčík jasně na etiketě, malý počet tablet na dávku, rozumná cena. Vedle toho má doma MedPharma Ca+Mg+Zn (hořčík jako špatně vstřebatelný oxid) — ten nadále brát na Ca+Zn, ne jako zdroj hořčíku; při kombinaci počítat hořčík z obou produktů. Důvod v kontextu projektu: lepší spánek/regenerace jako podpora váhového cíle; doplněk ale nenahrazuje jídlo a spánek. Produkt: https://www.benu.cz/medpharma-magnesium-citrat-forte-b6-tbl-67 - 2026-09-16: Zdroj k rozhodnutí o hořčíku: článek „Hořčík pro běžce: Kdy má smysl a za co zbytečně připlácíte“ (rungo.cz, 16.9.2026) — https://rungo.cz/2026/09/16/horcik-pro-bezce-jak-vybrat/ . Klíčové závěry, na kterých stojí volba doplňku: křeč v lýtku není diagnóza nedostatku hořčíku (současný výzkum EAMC je složitější než výpadek jednoho minerálu); běhání samo o sobě nedostatek nezpůsobuje; první řešit jídlem (luštěniny, ořechy, semínka, celozrnné, listová zelenina); při výběru hledat elementární hořčík v denní dávce (ne hmotnost sloučeniny na přední straně), počet tablet na dávku a formu — lépe vstřebatelné citrát/laktát/chlorid/aspartát, oxid má horší vstřebatelnost ale není zbytečný; přesné načasování forem (malát ráno na energii, bisglycinát večer na spánek) marketing bez důkazů, stejně jako hořčíkové koupele/olej (transdermální vstřebávání nedoložené); EFSA UL pro hořčík z doplňků 250 mg/den (limit odvozen z projímavosti, ne toxicity); hořčík na spánek nenahradí režim a spánek. Zdroje článku: EFSA, NIH ODS, PubMed systematické review. +- 2026-09-19: Cvičil dnes fyzio cviky (2026-09-19). Streak pokračuje, od fyzio (10.9.) 7 z 9 dní — v rámci pásma (podlaha 2×/týden). +- 2026-09-19: Trénink 19.9.: šlo ztuha, hlavně pravá strana — očekával by viditelné zlepšení už po ~týdnu od fyzio. Poznámka: ROM adaptace je podle dřívější rešerše chronická/kumulativní, vyhodnotit až na kontrole začátkem října; sledujeme, jestli je ztuhlost pravé strany konzistentní, nebo kolísá den ode dne. +- 2026-09-20: Cvičil dnes fyzio cviky (2026-09-20). Streak pokračuje — od fyzio (10.9.) 8 z 11 dní, nad podlahou 2×/týden. diff --git a/projects/life/state.md b/projects/life/state.md index af3b907..b6d7e7a 100644 --- a/projects/life/state.md +++ b/projects/life/state.md @@ -62,8 +62,10 @@ Denní vážení, vnímaná kondice, jestli mě něco bolí. - **Chybí**: počty opakování a délky výdrží — doladit s fyzioterapeutem při další návštěvě. - **Kontrola naplánovaná**: ~3–4 týdny po první návštěvě, tedy začátek října. -- **Stav (15.9.)**: asymetrie přetrvává — pravá strana táhne víc, přitahování - kolen ztuha. ROM adaptace trvá týdny, čekat zlepšení. +- **Stav (19.9.)**: asymetrie přetrvává, stále jde ztuha hlavně pravá strana — + očekávané zlepšení po ~týdnu od fyzio zatím nepřišlo. ROM adaptace je + kumulativní, reálné vyhodnocení až na kontrole začátkem října. Sledovat, + jestli je ztuhlost pravé strany konzistentní, nebo kolísá den ode dne. - **Frekvence — rozhodnuto (2026-09-11)**: denní snaha s tolerancí — vynechaný den není selhání. Pásmo: podlaha 2× týdně (pevná), strop denně, cokoli mezi = úspěch. Fyzicky stačilo i obden, denní cíl je kvůli návyku, ne