# The Log

- [Same model, different harness](https://edheltzel.codes/log/same-model-different-harness): 2026-10-23 - Why the app a coding agent runs inside changes the work you get back, even when the model stays the same.
- [The actual pain points of agentic engineering](https://edheltzel.codes/log/pain-points-of-agentic-engineering): 2026-09-12 - After six months of daily agent use, here's where it breaks down
- [Clankers in your codebase](https://edheltzel.codes/log/clankers-in-your-codebase): 2026-09-10 - What happens when you wire a token launcher into your deploy pipeline
- [Fine-tuning MedGemma on your own data](https://edheltzel.codes/log/fine-tuning-medgemma): 2026-09-08 - Practical notes on adapting Google's medical vision model with LoRA
- [Error recovery needs a stopping rule](https://edheltzel.codes/log/error-recovery-needs-a-stopping-rule): 2025-08-29 - Feeding a stack trace back to the model can unstick a call. Doing it forever is how agents spin.
- [Human approval belongs before the side effect](https://edheltzel.codes/log/approval-before-the-side-effect): 2025-08-25 - If the model can select a dangerous tool, you need a break in the loop before that tool runs. Slack is a channel, not an afterthought.
- [An agent should be able to stop and come back](https://edheltzel.codes/log/stop-and-come-back): 2025-08-21 - If you cannot serialize the thread, you do not have an agent you can pause. You have a process you hope stays up.
- [The context window is an application interface](https://edheltzel.codes/log/context-window-is-an-interface): 2025-08-18 - Prompts and context are code. If a framework hides the tokens, you cannot tune the only interface the model has.
- [Your agent does not need to own the workflow](https://edheltzel.codes/log/agent-does-not-own-the-workflow): 2025-08-15 - Most of a good agent is still your code. The model only names the next structured step.
