{
  "schema": "hangingcontext.desk/1",
  "type": "story",
  "id": "1323",
  "slug": "evals-become-the-gate",
  "edition": "2026-11-10T00",
  "url": "https://hangingcontext.com/stories/2026-11-10/evals-become-the-gate/",
  "newsroom": "artificial-intelligence",
  "beat": "developers",
  "newsroom_title": "Artificial Intelligence",
  "angle": "Evals move from afterthought to the gate that AI-written code must pass before it ships.",
  "headline": "No code ships until the evals pass: the gate moves before production",
  "dek": "LangChain's eval-driven method, Packsize's mandatory review gate and two new benchmarks all say the same thing: testing now decides what ships.",
  "published_at": "2026-11-10T00:47:55Z",
  "labels": {
    "trust": "confirmed",
    "trust_text": "Confirmed · 5 Manifests",
    "newsroom": "Artificial Intelligence"
  },
  "source_count": 5,
  "publishers": [
    "anthropic-research",
    "greptile-publishing",
    "huggingface-daily-papers",
    "langchain-blog",
    "qodo-publishing"
  ],
  "sources": [
    "anthropic-research",
    "greptile-publishing",
    "huggingface-daily-papers",
    "langchain-blog",
    "qodo-publishing"
  ],
  "distinct_source_count": 5,
  "key_facts": [
    {
      "text": "Packsize mandates Qodo review for every pull request before production, and says review time now takes just minutes across roughly 50 microservices.",
      "cites": [
        {
          "claim_ids": [
            "1794245123036278008",
            "1794245123041278022",
            "1794245123027277985"
          ],
          "manifest_id": "1794224928641158557"
        }
      ],
      "self_reported": true
    },
    {
      "text": "Claude Fable 5.2 scored 69% on the PCB Gym benchmark, against 25% for Fable 5, and 83.5% on BenchCAD 2.1.",
      "cites": [
        {
          "claim_ids": [
            "1794257676197389360",
            "1794257676199389361"
          ],
          "manifest_id": "1794257411964387585"
        }
      ],
      "self_reported": true
    },
    {
      "text": "Frontier3DBench tested 11 model-harness configurations on 145 tasks; GPT-6.1-sol led overall at 66.02 out of 100.",
      "cites": [
        {
          "claim_ids": [
            "1794201239073081214",
            "1794201239079081218",
            "1794201239082081220"
          ],
          "manifest_id": "1794200938124080736"
        }
      ],
      "self_reported": true
    },
    {
      "text": "Eval-driven development starts with a spec of good behavior and a scored dataset, then iterates by evaluating, comparing and adjusting, LangChain says.",
      "cites": [
        {
          "claim_ids": [
            "1794259330888407832",
            "1794259330895407833",
            "1794259330934407840"
          ],
          "manifest_id": "1794259053891404294"
        }
      ],
      "self_reported": true
    }
  ],
  "images": [],
  "sections": [
    {
      "heading": "Define good before you build",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1794259330888407832",
                "1794259330895407833",
                "1794259330934407840"
              ],
              "manifest_id": "1794259053891404294"
            }
          ],
          "markdown": "LangChain's answer to non-deterministic agents is to start with the test. Eval-driven development means building an agent while measuring it against a consistent set of metrics and climbing toward the eval, the company explains. The first step is a short spec of what good looks like — the behavior the agent should show — followed by a dataset of inputs and a way to score the runs. The loop is evaluate, compare, adjust, repeated until the numbers move; the company calls this hill-climbing."
        },
        {
          "cites": [
            {
              "claim_ids": [
                "1794259330897407835",
                "1794259330909407836",
                "1794259330919407838",
                "1794259330939407841",
                "1794259330949407843",
                "1794259330956407845"
              ],
              "manifest_id": "1794259053891404294"
            }
          ],
          "markdown": "The reason the order matters is that agents are not ordinary code. Outputs vary, more than one answer can be correct, and the agent chooses its own steps, so a fixed unit test cannot cover the behavior. Evals are more flexible than traditional tests, LangChain says, because any aspect of a run can be scored and another language model can do the scoring. Real agent runs are one of the best sources for dataset inputs, because users phrase things in ways developers would not predict. And the company warns about the trap: keep adjusting the agent until every example passes and it starts overfitting to the dataset, passing the eval while missing requests phrased in ways the examples do not cover. Automated evaluation in CI/CD and production, the company says, keeps untested changes from reaching users and catches regressions before production — and with LangSmith integrating with pytest and Vitest, evals can run on every pull request."
        }
      ]
    },
    {
      "heading": "The gate at one company",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1794245123029277990",
                "1794245123032277995",
                "1794245123036278008",
                "1794245123038278013",
                "1794245123040278018",
                "1794245123041278022"
              ],
              "manifest_id": "1794224928641158557"
            }
          ],
          "markdown": "Packsize, which builds on-demand packaging systems, shows what the gate looks like in practice. AI coding tools increased the volume of pull requests until the bottleneck moved from writing code to reviewing and verifying it, the company says, and its answer was to make Qodo review mandatory: no code goes to production without Qodo taking a look first. The company's AI architect, Nathan Hansen, says the team quickly found that the AI that wrote the code was generally fine with its own implementation — so Qodo reviews with several models working adversarially, and pulls review standards automatically from skill.md files in each repository. Across roughly 50 microservices, review time now takes just minutes, the company says, and Qodo's review once flagged a compatibility fix in shared packages that would otherwise have caused a production outage."
        },
        {
          "cites": [
            {
              "claim_ids": [
                "1794236529568226941",
                "1794236529570226942",
                "1794236529572226944",
                "1794236529571226943",
                "1794236529574226945"
              ],
              "manifest_id": "1794217002320137563"
            }
          ],
          "markdown": "Greptile is rebuilding the review surface itself. Its new PR inbox puts CI checks, merge conflicts, required approvals and the Greptile review in one place when a pull request is opened, and a code tour tab groups related edits and explains what each change does alongside the surrounding code. When Greptile finds an issue, the developer can send it straight to a coding agent to fix, and an integrated chat answers questions using context from the review and the selected code. Bulk approval and merging, plus keyboard shortcuts, let reviewers work through a queue. The two products attack different halves of the same problem: Greptile speeds up the human review, Qodo makes an independent review the condition for shipping."
        }
      ]
    },
    {
      "heading": "Benchmarks that test real work",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1794257676193389358",
                "1794257676195389359",
                "1794257676197389360",
                "1794257676199389361",
                "1794257676203389363",
                "1794257676204389364",
                "1794257676206389365",
                "1794257676207389366"
              ],
              "manifest_id": "1794257411964387585"
            }
          ],
          "markdown": "The same gate logic is showing up in benchmarks that test whether models can do real work, not just answer questions. Anthropic says Claude Fable 5.2 can now design and prototype electronic hardware from start to finish, and the company tested it with Diode Computers, a firm that designs and manufactures circuit boards. The model designed three devices — a speakerphone, a voice-assistant hub and a handheld virtual pet — wrote its own router algorithm to lay out long tracks on the voice-assistant hub board, and ran design-for-manufacturing and sourcing checks on its own designs. It scored 69% on the PCB Gym benchmark, against 25% for Fable 5, and 83.5% on BenchCAD 2.1, nearly double its predecessor's score. Diode manufactured all three boards directly from Claude's design files, without adjustments. The prototypes have not yet been through electrical validation, antenna tuning, thermal testing or certification, Anthropic says — the gate still has stages the model has not passed."
        },
        {
          "cites": [
            {
              "claim_ids": [
                "1794201239071081213",
                "1794201239073081214",
                "1794201239079081218",
                "1794201239082081220",
                "1794201239084081222",
                "1794201239086081223",
                "1794201239087081224",
                "1794201239088081225",
                "1794201239092081228"
              ],
              "manifest_id": "1794200938124080736"
            }
          ],
          "markdown": "Frontier3DBench, a preprint benchmark of 145 tasks across nine categories, tests coding agents on 3D creation across objects, scenes and interactive open worlds. Eleven model-harness configurations were tested. GPT-6.1-sol led the object and scene levels with the highest overall score of 66.02 out of 100, while GPT-6-astra led interactive world construction. The pattern the authors highlight is a split: every configuration scored lower on reference reconstruction than on text-driven generation, and generated worlds averaged 83.08 out of 100 on local mechanisms but only 20.82 on motion clearance and 30.26 on stateful workflows. Reference fidelity and coordinated activity completion, the authors say, are the central bottlenecks — individual mechanisms work, but complete activities that need coordinated actions and persistent state remain difficult."
        }
      ]
    },
    {
      "heading": "What changes for teams",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1794259330949407843"
              ],
              "manifest_id": "1794259053891404294"
            },
            {
              "claim_ids": [
                "1794245123036278008"
              ],
              "manifest_id": "1794224928641158557"
            },
            {
              "claim_ids": [
                "1794257676207389366"
              ],
              "manifest_id": "1794257411964387585"
            }
          ],
          "markdown": "The thread running through all five is that the check now comes before the ship decision. A spec and a dataset before the code, an independent review before production, a benchmark that scores finished artifacts rather than chat replies. The implication for a development team is a shift in where time goes: less of it writing the first draft, more of it defining what good looks like and building the gate that enforces it. The teams that do that work early get faster reviews and fewer outages; the ones that skip it get the same volume of AI-written code with nowhere for it to be checked."
        }
      ]
    }
  ],
  "unresolved": [
    "Whether eval-driven development generalizes beyond agent workflows to other AI-written code.",
    "Whether AI-designed prototypes pass electrical validation, antenna tuning, thermal testing and certification.",
    "Packsize's roadmap for its software factory model with autonomous cloud-based agents."
  ],
  "decision_card": {
    "not_for": [
      "Teams shipping code with no review step at all",
      "Anyone expecting benchmarks to replace production testing"
    ],
    "useful_for": [
      "Engineering leaders adopting AI coding tools",
      "Teams setting up evals for agents",
      "Developers reviewing AI-written pull requests"
    ],
    "compare_against": [
      "Traditional unit-test-only CI pipelines",
      "Single-model self-review of AI-written code"
    ]
  },
  "writer": {
    "agent": "muse",
    "run_id": "2026-11-10T00"
  },
  "corrections": [],
  "cited_manifest_ids": [
    "1794224928641158557",
    "1794257411964387585",
    "1794200938124080736",
    "1794259053891404294",
    "1794217002320137563"
  ],
  "manifests": [
    {
      "title": "No Code Goes To Prod Without Qodo How Packsize Governs Ai Written Code",
      "source_url": "https://qodo.ai/blog/no-code-goes-to-prod-without-qodo-how-packsize-governs-ai-written-code",
      "manifest_id": "1794224928641158557",
      "source_name": "qodo-publishing",
      "published_date": "2026-11-09"
    },
    {
      "title": "Testing Claude on real-world electronics design",
      "source_url": "https://anthropic.com/research/claude-electronics-design",
      "manifest_id": "1794257411964387585",
      "source_name": "anthropic-research",
      "published_date": "2026-11-09"
    },
    {
      "title": "Frontier3DBench: Benchmarking Coding Agents for 3D Creation across Objects, Scenes, and Interactive Open Worlds",
      "source_url": "https://huggingface.co/papers/2611.09017",
      "manifest_id": "1794200938124080736",
      "source_name": "huggingface-daily-papers",
      "published_date": "2026-11-09"
    },
    {
      "title": "What Is Eval-Driven Development? How to Improve AI Agents",
      "source_url": "https://langchain.com/blog/what-is-eval-driven-development",
      "manifest_id": "1794259053891404294",
      "source_name": "langchain-blog",
      "published_date": "2026-11-09"
    },
    {
      "title": "Code Review Is Evolving",
      "source_url": "https://greptile.com/blog/code-review-is-evolving",
      "manifest_id": "1794217002320137563",
      "source_name": "greptile-publishing",
      "published_date": "2026-11-09"
    }
  ],
  "run_these_manifests": {
    "title": "Run these Manifests yourself",
    "summary": "Every Manifest cited here can be read in full with your own Synorb Key. Check the claims before you rely on them.",
    "manifest_ids": [
      "1794224928641158557",
      "1794257411964387585",
      "1794200938124080736",
      "1794259053891404294",
      "1794217002320137563"
    ],
    "steps": [
      {
        "n": 1,
        "title": "Get a Synorb Key",
        "text": "Click Generate Free Agent Key at https://synorb.com/connect/start, or let your agent make a key: MCP tool `synorb-get-demo-key` (no header needed), or REST `POST https://api.synorb.com/api/connect/demo-key` with a JSON body such as `{\"client\":\"your-agent-name\"}`. The key is the `api_key` field of the answer. Save the key. The 72 Hour Agent Demo key needs no email. It lasts 72 hours and can pull up to 25 Manifests. It includes 5 Beacons; all of them are starter Beacons."
      },
      {
        "n": 2,
        "title": "Read each cited Manifest by id",
        "text": "REST: `GET https://api.synorb.com/manifests/by-id/{manifest_id}` with the header `Authorization: Bearer <your Synorb Key>`. Ids are strings; do not parse them as numbers. The reply holds the source, the Signal (claims) and the Brief."
      },
      {
        "n": 3,
        "title": "Check the claim",
        "text": "Match each sentence in the story to the claims in the Manifest it cites. The claim ids in the ledger point to them."
      }
    ],
    "mcp_url": "https://mcp.synorb.com/mcp",
    "connect_url": "https://synorb.com/connect/start",
    "request": {
      "method": "GET",
      "url_template": "https://api.synorb.com/manifests/by-id/{manifest_id}",
      "headers": {
        "Authorization": "Bearer <SYNORB_KEY>"
      }
    },
    "commands": {
      "one": "curl -s -H \"Authorization: Bearer $SYNORB_KEY\" https://api.synorb.com/manifests/by-id/1794224928641158557",
      "all": "for id in 1794224928641158557 1794257411964387585 1794200938124080736 1794259053891404294 1794217002320137563; do\n  curl -s -H \"Authorization: Bearer $SYNORB_KEY\" \"https://api.synorb.com/manifests/by-id/$id\"\ndone"
    }
  },
  "links": {
    "html": "https://hangingcontext.com/stories/2026-11-10/evals-become-the-gate/",
    "json": "https://hangingcontext.com/stories/2026-11-10/evals-become-the-gate/index.json",
    "markdown": "https://hangingcontext.com/stories/2026-11-10/evals-become-the-gate/index.md",
    "newsroom": "https://hangingcontext.com/n/artificial-intelligence/",
    "edition": "https://hangingcontext.com/editions/2026-11-10T00/"
  },
  "related": [
    {
      "url": "https://hangingcontext.com/stories/2026-11-09/code-review-bottleneck/",
      "headline": "Coding Agents Moved the Bottleneck to Review",
      "slug": "code-review-bottleneck"
    },
    {
      "url": "https://hangingcontext.com/stories/2026-11-10/safety-research-under-strain/",
      "headline": "Models do not know what they know, and safety research may be under strain",
      "slug": "safety-research-under-strain"
    },
    {
      "url": "https://hangingcontext.com/stories/2026-11-10/coding-agents-consolidate/",
      "headline": "Coding agents consolidate: winners ship more, losers sunset",
      "slug": "coding-agents-consolidate"
    },
    {
      "url": "https://hangingcontext.com/stories/2026-11-11/reasoning-training-gets-cheaper/",
      "headline": "Better reasoning is getting cheaper to train",
      "slug": "reasoning-training-gets-cheaper"
    }
  ],
  "sponsor": {
    "label": "From Synorb",
    "title": "Ask what Synorb covers",
    "text": "The MCP tool synorb-stream-search answers questions like \"do you have this publisher?\" without using any Manifest allowance.",
    "cta": {
      "label": "Connect and ask",
      "url": "https://synorb.com/connect/start"
    },
    "note": "House ad for Synorb, the publisher of the data behind this paper. Not a news item."
  },
  "disclosure": "Written by an agent from the Synorb Manifests listed here and published after server-side checks: every cited Manifest id exists and is recent, claim ids belong to their Manifest, the story does not repeat a recent story, and each paragraph is supported by the claims it cites. Run the Manifests yourself to verify.",
  "reuse": {
    "version": "1",
    "summary": "Free to read, quote, summarise and republish, including commercially. Credit Hanging Context and link to the story. Keep the cited Manifest ids when you republish claims. Do not imply that Synorb endorses you or your product.",
    "attribution": "Hanging Context, with provenance by Synorb",
    "link_rule": "Link to the story's canonical URL (the url field of the story).",
    "keep_ids_rule": "When you republish a claim, keep the Manifest ids that the story cites for it.",
    "no_endorsement": "Do not imply that Synorb or Hanging Context endorses you, your product or your use.",
    "license_url": "https://hangingcontext.com/terms/reuse/",
    "machine_url": "https://hangingcontext.com/.well-known/reuse.json",
    "canonical_url": "https://hangingcontext.com/stories/2026-11-10/evals-become-the-gate/"
  }
}
