root@construct:~/logs$

LOGS

2026-09-28//LOG

Sonnet does not get the implementation job for life

A useful division of work needs to remain open to review. Previous use gives no model a permanent job. When a new version arrives or the assignment changes, I want to check whether the setup still hel...

2026-09-23//LOG

Cheaper Opus: where is the finding that changes the work?

I want review to find problems that change whether the work can be accepted. A huge list of suggestions can consume more time than implementation, especially when every comment introduces another pref...

2026-09-18//LOG

Already authorized. Why did the agent ask again?

Authorizing the same execution repeatedly is a workflow defect I want fixed. I delegate an assignment and somehow remain responsible for pressing continue. The tool needs to carry my decision forward ...

2026-09-10//LOG

Buying an executor only pays if I can resume the work

I want to buy less session maintenance and get continuity I can understand. Keeping an agent alive does little for me if returning means reading its entire conversation to discover where the task stan...

2026-09-05//LOG

Fable discounts count when your task reuses the cache

A caching discount reaches my bill only when the task actually reuses context. Taking the biggest percentage in an announcement and applying it to all consumption produces excellent savings on paper. ...

2026-08-27//LOG

A microscope does not need an impatient retry

An integration with physical equipment needs to explain what happened before letting an agent try again. Repeating a read and repeating an action on a machine can have very different consequences. I w...

2026-08-23//LOG

Good caching cannot rescue useless context

A pretty cache hit rate can hide lazy work distribution. If every agent receives material it does not need, paying less for repeated reads improves the bill while preserving the mess. I want to see bo...

2026-08-11//LOG

Reusing a skill does not renew its authorization

A reusable skill that forgets an investigation's scope is incomplete. Knowing how to run a procedure helps little when its next invocation inherits vague permission. I want to reuse the capability wit...

2026-08-08//LOG

If the tool switched models, show the switch

I want to know which model answered before I praise it or complain about it. That seems basic, but a name in the selector can conceal an execution that took another route. Comparing models without see...

2026-07-28//LOG

The budget ran out. Where did the agent stop?

I want an agent to work within a clear limit and leave a task I can resume when it reaches that limit. On July 13, 2026, I asked for more autonomy within limits. That wording gives the workflow design...

2026-07-24//LOG

Switching tools and losing cache has a cost too

Choosing by model name alone leaves out costs that appear as soon as an agent starts using tools. At the Opus 5 launch on July 24, 2026, Anthropic announced a beta for changing tools without invalidat...

2026-07-21//LOG

No vendor gets exclusive rights to my tasks

Choosing a vendor and defending its flag for the rest of the week is work I can do without. On July 11, 2026, I suggested trying Gemini for frontend work and assessed Claude as good for backend work. ...

2026-07-15//LOG

A skill without an owner becomes a prompt collection

A skill needs recognizable work and someone capable of correcting its instructions. Giving a collection of prompts an appealing name does not solve maintenance. Claude for Teachers, announced on July ...

2026-07-09//LOG

Parallelism in the announcement, tasks still waiting?

If two independent tasks wait for each other, I want a better explanation than a habit of running everything in sequence. GPT-5.6's general availability announcement on July 9, 2026 included an ultra ...

2026-06-30//LOG

Included Fable usage is no excuse to waste it

A temporary usage offer deserves a comparison with an objective before it becomes an excuse to open more agents without knowing why. On June 30, 2026, Anthropic announced Fable 5's return for July 1, ...

2026-06-26//LOG

A closed preview stays out of today's task

A model without confirmed access belongs on my watch list, outside the execution I need to start now. On June 26, 2026, OpenAI announced a limited preview of the GPT-5.6 family, including Sol, Terra, ...

2026-06-23//LOG

A fix without evidence goes back in the queue

I will not accept a fix just because an agent says it fixed something. I want to check the behavior that prompted the task. OpenAI's Daybreak update on June 22, 2026 put validation and automated remed...

2026-06-18//LOG

The second input puts the skill to the test

Teaching the same task every time is waste I want out of the workflow. Codex Record & Replay, announced for macOS on June 18, 2026, proposed generating a reusable skill from a demonstration. I like st...

2026-06-09//LOG

An invisible fallback ruins the comparison

When a product changes the model executing a request, I want that switch to be visible when I need it. At the Fable 5 launch on June 9, 2026, Anthropic said sensitive requests would be routed to Opus ...

2026-06-06//LOG

Great demo. Same amount of RAM.

A model that cannot fit the task's environment is not an execution option yet. It can be interesting and worth following, but available memory does not increase because I liked the demo. That constrai...

2026-06-03//LOG

Native audio: what if I correct myself mid-sentence?

Audio input interests me when it preserves the request a person finished making. In its June 3, 2026 announcement, Google presented Gemma 4 12B as a notebook option with native audio input. That deser...

2026-05-28//LOG

Maximum effort can be a lazy choice

Leaving model effort at maximum for every task means avoiding a decision I still own. Anthropic added effort controls in Claude with the Opus 4.8 announcement on May 28, 2026. I like having the contro...

2026-05-21//LOG

Show me Gemini handling the empty screen

AI frontend work needs to function when the screen is empty, and that is where I want to start comparing Gemini. A good-looking interface full of content gets attention quickly. Remove the data and yo...

2026-05-14//LOG

DALL·E is gone. A new endpoint is not the whole migration.

Changing an endpoint and calling the migration done is a good way to learn the rest of the contract from a user's error. OpenAI recorded the removal of DALL·E 2 and DALL·E 3 from its API in May 2026. ...

2026-05-07//LOG

Faster Gemma: which wait actually got shorter?

I want faster generation when it shortens the path to finished work. That is why Gemma 4 drafters interest me. In May 2026, Google announced speculative decoding with generation up to three times fast...

2026-04-30//LOG

A pile of links does not finish the research

Parallel research needs to return an answer that helps the work continue. A mountain of links without a conclusion hands the investigation back to me, now with more tabs to open. I delegate precisely ...

2026-04-24//LOG

Is GPT-5.5 worth the trouble of switching tools?

A better model needs to justify changing a workflow that already works. The new capability can be excellent and still arrive in an application that creates too much work for me. That part of the compa...

2026-04-17//LOG

Before blaming Opus, I will reread my prompt

Better instruction following can expose the mess in instructions I wrote myself. That is the Opus 4.7 detail I care about most: in its April 2026 announcement, Anthropic emphasized more literal instru...

2026-04-12//LOG

Even the agent app joins the maintenance queue

The tool that sends an agent to work deserves the same attention as project dependencies. In April 2026, OpenAI responded to the Axios compromise with certificate replacement and a deadline for updati...

2026-04-05//LOG

A small CLI beats an endless prompt

I prefer a clear CLI operation to a prompt trying to anticipate every move an agent makes. Reusing work should reduce how much I need to explain. When the solution requires memorizing a manual for eve...

2026-04-02//LOG

Gemma 4: open weights do not guarantee a spot

Gemma 4 deserves a place in task comparisons; making it the default just because the weights are open would be lazy on my part. The April 2026 launch brought four sizes, open weights, and an Apache 2....

2026-03-25//LOG

What good is a model that cannot reach the app?

A better model needs a way to reach the work, including the application's buttons. That is why Anthropic's computer use announcement interests me. In March 2026, the company introduced computer contro...

2026-03-14//LOG

Claude Code as a Daily Driver: 4 Months In

Four months ago I switched to Claude Code as my primary development tool. I work in the terminal now, with Claude, without VS Code or JetBrains. After four months, I have a pretty good sense of where ...

2026-03-10//LOG

1M Token Context Windows Changed How I Architect

A few weeks with Claude's 1M token context window have changed how I work through software architecture decisions. Before: I would carefully select which files to share with the AI. "Here is the serv...

2026-03-05//LOG

FlowForm: Building Conversational Forms with LLMs

Three days after ranting about chat interfaces, I am building FlowForm, a conversational form tool powered by LLMs. Yes, I am aware of the irony. I think conversation works here because there is a for...

2026-02-28//LOG

Real-Time Sync Between POS and Cloud

At Yooga, our POS terminals need to work offline. A restaurant cannot stop taking orders because the WiFi went down. So the terminal has a local database, processes transactions locally, and syncs wit...

2026-02-22//LOG

React Server Components: Actually Good or Stockholm Syndrome?

I have been using React Server Components for a few months now. The blog runs on Next.js App Router. Some components at Yooga are moving to RSC. I have mixed feelings about it. The mental model shift...

2026-02-14//LOG

Building Sigil Protocol: Why AI Agents Need Identity

I have been thinking about this problem for months and I finally started building. It is an easy question to ask and a hard one to answer: when AI agents talk to each other, how do you know who you ar...

2026-02-06//LOG

State Machines in Production: 16 States of Accounting

TOPO Contabil has a bank reconciliation workflow. When I first mapped it out, I counted 16 distinct states, from "raw_import" all the way through "matched," "partially_matched," "disputed," "manually_...

2026-01-31//LOG

Prisma vs TypeORM vs Raw SQL: The Final Answer

I have used all three in production. Prisma on TOPO Contabil (42 NestJS modules). TypeORM on two older Yooga services. Raw SQL on performance-critical reporting queries. After years of using them, I h...

2026-01-24//LOG

Kotlin on Sunmi POS: The Android You Never Wanted to Write

Writing Kotlin for Sunmi POS terminals is like Android development but everything is trying to kill you. The Sunmi V2 Pro runs Android 7.1, from 2017. Half the Jetpack libraries do not support it. Yo...

2026-01-16//LOG

Building Payment Systems That Don't Lose Money

I have been building payment processing infrastructure for Yooga's restaurant POS systems for a while now. When something goes wrong, someone loses real money. These are the lessons I have learned in ...

2026-01-07//LOG

TypeScript Strict Mode Changed How I Think

I turned on strict mode in a legacy NestJS codebase last week. It reported 847 errors. I stared at my terminal for a solid minute before closing the laptop and going to make coffee. Every one of thos...

2025-12-20//LOG

Clean Architecture After 252 Use Cases

I've been practicing Clean Architecture for years. TOPO Contabil has 252 use cases following the pattern strictly. Living with it at that scale has taught me where it helps and where it gets in the wa...

2025-12-08//LOG

NestJS at Scale: 42 Modules and Counting

People keep asking me how TOPO Contabil runs 42 NestJS modules without turning into spaghetti. We keep the patterns consistent and enforce the module boundaries, with exceptions where the rules get in...

2025-12-01//LOG

M4 Max: First Impressions After Real Work

I've had the M4 Max MacBook Pro for about two weeks now. I do not care about Geekbench scores. I wanted to see what changed in my work when the machine stopped being the bottleneck. First thing I did...

2025-11-30//LOG

Opus for hard reviews. The rest can cost less.

I want to pay for Opus where a review needs serious reasoning and send simple work to a cheaper model. That sounds obvious until you open a tool and leave the same model selected for everything. The s...

2025-11-20//SYSTEM

Hello World // Introduction

I'm Kayo Souza, a Software Engineer and Creative Technologist based in Brazil. I build systems that need to keep working under pressure. That has meant optimizing massive logistics networ...

The Broad Way | Kinho.dev