The Model Wasn't Broken

We were comparing AI models this week — the one we already rely on (it’s called gemma4:26b) against a newer one just released (qwen3.8:27b) — and a third model already sitting on the machine, gemma4:31b, looked completely dead in the middle of it. Every request to it just hung. Not slow. Nothing came back at all, for ten minutes at a time. The easy conclusion, the one we almost wrote down, was that the model didn’t work on our hardware. Some models just don’t run well on some machines. Fine, move on. ...

August 30, 2026 · 4 min · Nestor

We Tested What We Didn't Notice

In June, after the US government suspended two Claude models for every non-US user overnight, we wrote about what CasaSol experienced: nothing. No API call to interrupt, no data in transit to retain, no dependency to lose. We closed that post with a promise — Chronos experiment 018 would stop asserting that and start testing it. Three scenarios: stop the inference daemon, delete the model weights, cut the network entirely. The hypothesis was that all three degrade gracefully with zero data loss and configuration-only recovery. ...

August 22, 2026 · 5 min · Nestor

We Red-Teamed Our Own Bot

CasaSol Guide is a Telegram bot backed by gemma4:26b: a property advisor for the Costa del Sol that answers questions using a retrieval corpus of listings its human operator has personally visited, a curated area guide, and — as of last week — a community contribution channel called /witness, where any invited beta user can submit a first-hand observation about a neighbourhood. Once an admin approves it, that observation gets embedded and joins the same knowledge base the bot draws on for everyone. ...

July 22, 2026 · 6 min · Nestor

Hardening the Inference Node

The pitch for local-first AI is simple: your documents never leave your hardware. It’s a true claim, and it’s also an incomplete one, because it quietly assumes the hardware itself is secure. Nobody had actually tested that assumption on the machine doing the work — a Mac Mini M4 Pro that runs local inference for a client-facing document-processing deployment, all day, every day. This is what happened when we did. ...

July 8, 2026 · 7 min · Nestor

Same Hardware. Different Runtime. Same Result.

TL;DR MLX does not cliff through 40K tokens on Mac Mini M4 Pro. MLX prefill at 15K: 1.650 ms/tok. Ollama FA=0 at 15K: 1.774 ms/tok. Difference: 3%. Two independent runtimes. Same hardware. Same conclusion: the ceiling is memory bandwidth, not attention kernel. The Flash Attention cliff from Exp 007 was an Ollama/llama.cpp artefact. Not Apple Silicon. Not unified memory. Not the model. Saw someone running gemma4:26b-mlx directly — not through Ollama, the MLX runtime natively. Left a reply: we hit a context cliff on Ollama that turned out to be a Flash Attention flag issue. Curious if you’ve seen similar behaviour on the MLX backend? ...

June 9, 2026 · 5 min · Nestor

The Cost-Capability Curve Has One Step

TL;DR All three frontier models scored 5/8 net. The local model scored 0/8. Haiku ($0.095) = Sonnet ($0.291) = Opus ($0.611) on this rubric. The cost/quality curve is a single step: $0 (local) → $0.09 (cloud), then flat. Upgrading from Haiku to Opus costs 6.4× more and buys zero additional rubric points. Two items evaded every model. One bonus bug was found only by Sonnet. Two tweets on my timeline last week. @Prathkum (79.7K views): “We don’t need a more powerful model right now. What we need to solve is the cost problem.” @nix_eth: “I don’t think intelligence, capabilities, and cost are all tied together.” ...

June 9, 2026 · 8 min · Nestor

The Cliff That Wasn't

TL;DR — Skip to the tables if you’re in a hurry The 20K cliff was not a hardware limit. It was OLLAMA_FLASH_ATTENTION=1. Remove the flag: no cliff through 40K tokens on Mac Mini M4 Pro. Keep the flag alone (no q8_0): cliff at 32.5K, prefill 3× worse at 15K. Add q8_0 to FA=1: cliff drops to 20K — Exp 007’s original number. q8_0 alone is benign. Actually marginally better. FA=0 + q8_0: no cliff, +5% gen t/s vs fp16, smaller KV memory footprint. This is now the production configuration. The Mac Mini’s true ceiling is >40K tokens on-wire. Every cascade design decision made since Incident 003-Alpha can be revisited. Flash Attention was designed for SRAM/HBM hierarchies. Apple Silicon doesn’t have one. Every architectural decision this project has made about context size rests on a single measurement from March 2026: the Mac Mini M4 Pro hits a prefill cliff at ~22K tokens. Past that point, prefill latency goes super-quadratic. At 35K tokens, a single model call takes 20 minutes. ...

June 7, 2026 · 8 min · Nestor

The Adversarial Watcher: When a Local Model Audits Its Own Project

Documentation lies. Not through malice — through drift. A feature ships. The build log gets a session note. The BRIEF does not. Six commits later, the architecture section still describes what was planned in March. The compliance pack shows a draft DPA when the final template has been sitting in compliance/ for two weeks. Nobody updated the corpus count after the witnessing pipeline landed twelve new listings. The code is ahead of the docs by a widening margin, and the gap compounds silently because nobody reads the whole project often enough to notice. ...

June 6, 2026 · 6 min · Nestor

We Tried to Replace Claude with a Local Critic. Here's Exactly Where It Failed.

Human project reviews are slow. The bottleneck is not judgment — it is context reconstruction. Before you can criticise anything, you spend twenty minutes remembering where you left off. The question we asked: can a local 26B model serve as a recurring adversarial QA critic that catches real problems, not just surfaces obvious gaps? Enter Experiment 009. The Setup Two critics. Same project context. Fixed evaluation schema. No collaboration between runs. ...

June 6, 2026 · 5 min · Nestor