{"slug": "show-hn-a-lightweight-app-to-let-llm-work-for-oncall", "title": "Show HN: A lightweight app to let LLM work for oncall", "summary": "A lightweight app called NeatContext helps oncall engineers debug incidents by attaching team-specific knowledge and runbooks. In a demo, it correctly identified a pgbouncer pool-size cut as the root cause of checkout-api 5xx errors, while a generic SRE agent gave misleading advice. The app cites exact runbook lines and TSG rules, preventing dangerous actions like unnecessary failovers.", "body_md": "**NeatContext** infra-team profile · knowledge/infra-team attached\n\nRoot cause found: the 08:58Z pool-size cut. Revert it with a `RELOAD`\n\n.\n\nEvidence, checked with read-only tools\n\n- The deploy log shows\n`default_pool_size 100 → 40`\n\non pgbouncer at `08:58Z`\n\n— minutes before the first checkout-api 5xx. - Logs confirm the pool saturated at\n`40/40`\n\nwith clients queuing — the exact signature of postmortem INC-0977. - The Postgres primary is healthy and far below\n`max_connections=200`\n\n— the ceiling is the pool setting, not the database.\n\nSafe actions\n\n- Revert\n`default_pool_size`\n\nto `100`\n\nand `RELOAD`\n\npgbouncer — zero dropped connections. - Do not fail over the primary — the TSG forbids failover for saturation; it would drop every in-flight connection and widen the outage.\n- Watch the pool drain and confirm checkout-api 5xx returns to baseline.\n\nCites the exact runbook and TSG linespostgres-connection-pool.md:38-42db-failover-tsg.md:6-9inc-2026-0511-pool-sizing-regression.md:40-44\n\n✳**General SRE agent** No profile · no runbooks · no team context\n\nElevated 5xx can have many causes — here is a general checklist.\n\n- Review recent application deployments and roll back if anything looks suspicious.⚠The app deploy is innocent — the change that matters is the 08:58Z pgbouncer pool-size cut, which only the team's deploy log and runbook point to.\n- Check database health; if connections are stuck, restart the database or fail over to a replica.⚠Failing over a saturated-but-healthy primary drops every in-flight connection across every service — db-failover-tsg.md forbids exactly this.\n- Increase max_connections on Postgres to relieve the pressure.⚠Wrong knob: the pgbouncer pool ceiling is the constraint. Raising max_connections just moves the failure into the database.\n- Check the logs for errors and escalate to the appropriate team if the issue persists.\n\n∅ No sources cited — generic best practice, nothing to verify.", "url": "https://wpnews.pro/news/show-hn-a-lightweight-app-to-let-llm-work-for-oncall", "canonical_source": "https://www.neatcontext.com/", "published_at": "2026-07-12 16:39:28+00:00", "updated_at": "2026-07-12 17:05:36.687388+00:00", "lang": "en", "topics": ["artificial-intelligence", "large-language-models", "ai-tools", "developer-tools"], "entities": ["NeatContext", "pgbouncer", "Postgres", "checkout-api"], "alternates": {"html": "https://wpnews.pro/news/show-hn-a-lightweight-app-to-let-llm-work-for-oncall", "markdown": "https://wpnews.pro/news/show-hn-a-lightweight-app-to-let-llm-work-for-oncall.md", "text": "https://wpnews.pro/news/show-hn-a-lightweight-app-to-let-llm-work-for-oncall.txt", "jsonld": "https://wpnews.pro/news/show-hn-a-lightweight-app-to-let-llm-work-for-oncall.jsonld"}}