Skip to content

Instantly share code, notes, and snippets.

View renezander030's full-sized avatar

René Zander renezander030

View GitHub Profile
@renezander030
renezander030 / README.md
Created October 11, 2026 07:17
HTTP If-Match and 412: stop stale agent writes after approval

HTTP If-Match and 412: stop stale agent writes after approval

Keep a human edit when an agent writes from an older snapshot.

Last tested: October 2026 — Python 3.13.5, SQLite, localhost HTTP and two local processes. See Changelog.

If this saves you a lost-update investigation, follow @renezander030 for executable notes on agent boundaries.

Companion: automation-reference-examples — persisted ETags, atomic version checks and an HTTP race demo.

@renezander030
renezander030 / graphiti-ollama-ladybugdb-guide.md
Last active October 11, 2026 07:16
Graphiti + Ollama + LadybugDB: local agent memory without Docker

Graphiti + Ollama + LadybugDB: local agent memory without Docker

Last tested: September 2026 — original pinned demo; October source maintenance does not renew its measured results.

Follow @renezander030 for tested implementation notes.

TL;DR cheat sheet

Use Contract
@renezander030
renezander030 / README.md
Last active October 11, 2026 07:16
Permission-aware retrieval: visible counts, current ACLs and authorized citations

Permission-aware retrieval: visible counts, current ACLs and authorized citations

Last tested: October 2026 — synthetic permission/revocation fixture only.

Runnable correction fixtures: automation-reference-examples.

Follow @renezander030 for tested implementation notes.

TL;DR cheat sheet

@renezander030
renezander030 / README.md
Last active October 4, 2026 07:19
Never let an agent write to the knowledge graph: queued proposals, one writer, and why a refusal that exits 0 is not a refusal

Never let an agent write to the knowledge graph: queued proposals, one writer, and why a refusal that exits 0 is not a refusal

Retrieval bugs are loud. Write bugs are silent — a concurrent add_episode() puts your facts in the wrong graph, a refused proposal that exits 0 tells the caller it succeeded, and both look exactly like success until someone reads the data months later.

Last tested: September 2026 — graphiti-core 0.29.3, FalkorDB graph module ver 42003 on Redis 8.6.3, Python 3.13. See Changelog at the bottom.

If this saves you a re-ingest, follow @renezander030 — production notes on agent pipelines, retrieval and approval gates.

Reference implementation: graphiti-local (kg propose / kg-workspace approve / drain).

@renezander030
renezander030 / README.md
Last active October 4, 2026 07:43
`Vector dimension mismatch, expected 1024 but got 768` — the embedding width your graph stored is not the one your config claims (Graphiti + FalkorDB)

Vector dimension mismatch, expected 1024 but got 768 — the embedding width your graph stored is not the one your config claims (Graphiti + FalkorDB)

Runnable correction fixtures: automation-reference-examples.

Nothing errors when the wrong-width vector is written. The write path truncates with a Python slice, and a slice past the end of a list is a no-op. You find out at query time, from the database, about rows you ingested weeks ago.

Last tested: September 2026 — graphiti-core 0.29.3, FalkorDB graph module ver 42003 on Redis 8.6.3, Ollama nomic-embed-text, Python 3.13. See Changelog at the bottom.

@renezander030
renezander030 / README.md
Created August 22, 2026 14:18
Production AI Automation Notes #17: Validate before you log — the RAG query guard that belongs above your first log line, and the ordering test that isn't vacuous

Validate before you log: the RAG query guard that belongs above your first log line (TypeError: Cannot read properties of null (reading 'substring'))

The first thing most pipelines do with user input is interpolate it into a debug log. If validation sits one line below that, your "guard" runs after the crash — and everything that doesn't crash goes into the logs unvalidated.

Last tested: August 2026, Node 22 / TypeScript. See Changelog at the bottom.

If this saves you a confusing stack trace, follow @renezander030 — production notes on agent pipelines, retrieval and approval gates.

Real-world fix using this pattern: tetherto/qvac#3729, merged into Tether's QVAC RAG package.

@renezander030
renezander030 / README.md
Last active October 4, 2026 07:19
GPT-5 / o-series vision calls failing in Go: "this model is not supported MaxTokens, please use MaxCompletionTokens" — and the empty response with `finish_reason: "length"`

GPT-5 / o-series vision calls failing in Go: "this model is not supported MaxTokens, please use MaxCompletionTokens" — and the empty response with finish_reason: "length"

Renaming max_tokens is not enough. go-openai rejects reasoning-model requests client-side on seven independent grounds, and even a request that passes can return zero content with no error at all.

Last tested: August 2026 — go-openai master (reasoning_validator.go), GPT-5 / o-series vision endpoints. See Changelog at the bottom.

If this saves you a debugging afternoon, follow @renezander030 — production notes on agent pipelines, retrieval and approval gates.

The fix described here is merged in Tencent's WeKnora: Tencent/WeKnora#2614

@renezander030
renezander030 / agent-review-cost-worksheet.md
Last active October 4, 2026 07:20
The Agent Review Cost Worksheet

The Agent Review Cost Worksheet

What every AI-authored change costs you in senior review hours, and how to buy that cost down.

Most organisations book a coding agent as a productivity gain and leave review as a background activity nobody owns a number for. This worksheet produces that number and then attacks it. Forward it to engineering, finance, or procurement as-is.


Current scope — 4 October 2026

@renezander030
renezander030 / README.md
Last active October 4, 2026 07:43
Agent memory that degrades instead of failing: keyword fallback when the embedding provider dies ("Premature close", APIConnectionError)

Agent memory that degrades instead of failing: keyword fallback when the embedding provider dies ("Premature close", APIConnectionError)

Runnable correction fixtures: automation-reference-examples.

Retrieval with a single vector path goes to zero recall the moment the embedder is unreachable. Two branches plus reciprocal rank fusion keeps it answering.

Last tested: August 2026. See Changelog at the bottom.

@renezander030
renezander030 / ai-signoff-checklist.md
Last active October 4, 2026 07:19
The AI Sign-Off Checklist

The AI Sign-Off Checklist

Trust basis for AI-shipped work: eight questions before an agent's output lands.

Before you approve anything an AI agent produced, run these. If you cannot answer them, your sign-off documents a decision without securing it. Forward this to engineering, security, or procurement as-is.


Current scope — 4 October 2026