Notes from building Huxகn. Architecture decisions, postmortems, and the occasional opinion.
OpenAI clients put the model name in the request body. APISIX's router only matches on URI + headers. Here's the plugin we wrote to bridge that gap, and the three architecture iterations it took to get right.
Coming soonHow the keyauth-map sync went from a 50 MB JSON snapshot every 15 seconds to a delta-with-ETag protocol that idles at a 304 NOT MODIFIED.
Coming soonA NULL-handling bug in pgx, layered with a swallowed error in the response stream, layered with a silent agent cursor advance. End result: every key 401'd for two hours. Here's how we found it.
Coming soonWhy we don't have a "private deployment tier". Why every customer gets the same posture. Why pricing isn't per-token.
Coming soon