AIVO PUBLICATION · ARCHITECTURE & INFRASTRUCTURE

Write slowly,
understand deeply.

Technical notes on distributed infrastructure, production-grade system architecture and critical thinking byTú (tusgino).

  1. Ask before writing, and refuse when nobody answers
  2. Cut the context, keep the audit trail
  3. Permission sits on the path, not in the tool
A stack of log records with two arrows fanning out to what is derived from it

The log is the source, not a copy

Everything the model sees must be in the log first. Context is never stored beside it — it is derived, and that is the difference between a source and a copy.

Four identical loops, each with a cut at a different position

The same loop, different seams

Every harness has a log, a tool registry, a context budget and a permission layer. They differ in which of those you may replace — I read four to answer.

A harness plugin tree with the four core parts highlighted among the other plugins

Where a harness begins

The loop is only a coordinator. Four parts turn it into a harness: a durable log, a tool registry, a context budget, and a permission layer, all four pluggable.

System One AI architecture diagram and Typed Decisions with the Jev model

System One AI: don't burn 800ms just to get one routing keyword

Explore System One AI with TypeSafe Jev: replace slow LLMs with Typed Decisions, probability distributions and the three primitives Choice, Score and Noul.

A minimal while loop with four broken branches marked around it

The while loop works, until it doesn't

An agent loop runs in ten lines. The production version of that same loop is 101 lines, and every extra line marks a place it used to break. Here are the four.

The boundary between the tool declaration sent to the model and the execution that stays host-side

The model proposes, your code executes

The model sees only a tool declaration, never its execution. A tool call is a structured request your code validates, authorises, and then decides to run.

A budget bar filling up block by block, the final block cut off past the limit line

The context window is not memory

A context window is a finite budget, not a memory. On the same request, two published token ratios differ by 1.6x, and you cannot tell which one you are on.

Two separate API calls, where the second one carries the entire history of the first

Call the API, then forget

Every API call is a pure function: text in, text out, then nothing. The memory you think the model has is history you resend yourself, and you pay for it.