WRITING
Writing
19 entries
2026
11-08Filtering kwargs with inspect.signature: a function that takes **kwargs looks like it accepts nothing, and a retry lost its model_path#Python#LLM#Debugging11-08Generator Exceptions Surface on the First next(): try Around create_chat_completion(stream=True) Never Sees the Context Window Error#Python#LLM#Error Handling#Testing#Autarkia11-07LLM Request Observability: Logs Count Messages, and the Native Tools Schema Shows Up Nowhere#LLM#Python#Observability#Autarkia11-07Breaking Out of an Async Generator Triggers aclose(): Code After the Last Yield Never Runs#Python#asyncio#Streaming#Autarkia11-01The Message You Edited Is Still in Memory#Memory#Evaluation#Measurement#LLM10-29Four Seconds on a First Visit#Networking#Deployment10-27The Synthetic Set Picked C. Forty-Four Real Questions Picked B.#Memory#Evaluation#Measurement#LLM10-27Where the Prefix-Cache Hits Went#LLM#Cost#Observability10-22Sample Age, Catch-up Sampling, and Measurement Validity#Measurement#GPU#Systems10-22A Failed Batch Stays Failed#Measurement#Data#Systems10-22Calibrate Your Ruler First#Forensics#Debugging10-22Already Pushed#Redaction#Git#Release10-21WorkBuddy Will Corrupt Your Git#Git#WorkBuddy#Forensics10-21Fixed Three Times, Still Broken#Postmortem#Engineering10-21Why the More You Write a Persona, the Less Human It Sounds#Prompt#Persona#LLM10-21One pop() in a subclass payload builder: max_tokens deleted before sending, invisible to callers, logs and tests#Python#LLM#Observability10-19Computing the project root twice: Path(__file__).parents[N] silently points elsewhere once the file moves#Python#Single Source of Truth#File Paths10-18Treat the LLM as an Untrusted External Service#LLM#Engineering10-17MagicMock accepts any arguments: the caller passes one too many, the test passes, production raises TypeError and except swallows it#Python#Testing