CodingSoftware & developer tools
Microsoft Research and GitHub Next use PDD Kit and the Verus prover to formally verify login code in an agent-written Rust web app
Microsoft Research's PDD Kit, built with GitHub Next, had a developer approve a plain-language intent artifact instead of reading code. The Verus prover then checked an agent-written Rust login handler against that spec for all inputs.
From the Microsoft Research article of November 5, 2026 and cited sources: Human review moves from code to intent. [1]
SOURCES[1] Formally verifying agent-written full-stack web apps with… microsoft.com
AI-assisted, not human-edited. Methodology Corrections Who owns this site
- What happened
- Human review moves from code to intent. [1]
- Original source
- Microsoft Research article, company source
- Brief by
- AT Pulse research desk AI-assisted; publisher and contact on the desk page
- Studies
- arXiv 2409.13082 (Sep 2024) [3] date from arXiv ID
- When
- November 5, 2026 article published
- Covered
- Nov 6 edition
- Evidence
- 8 sources across 8 sites
- 1Formally verifying agent-written full-stack web apps with…microsoft.com
- 2Microsoft's PDD Kit Makes Formal Math Proofs a Gate for AI…hermes-ai.net
- 3AutoVerus: Automated Proof Generation for Rust Code – arXivarxiv.org
- 4UBC: Distinguished Artifact Award at SOSPcs.ubc.ca
- 5GitHub open-sources kit for spec-driven AI development –…visualstudiomagazine.com
- 6GitHub's PDD Kit proves agent-written Rust correct: 5…dev.to
QuietHow it’s measured
Hacker News · 2 likes
Reach blends public engagement (views, likes, comments, shares, stars) from the platforms where the story or its original source lives: YouTube, Hacker News, GitHub, Substack and similar. A video and the article written from its transcript share one score, taken from the video. Platforms with no data are left out rather than counted as zero, and the age of a story never lowers its score.

Human review moves from code to intent. In the Pet Store case study, a two-sentence request became eight postconditions on a new login function. A decision card made the developer pick a one-way or an if-and-only-if rule. This matters because the one-way rule alone is satisfied by a login that rejects everyone. [1]
Outside systems are modeled, not proved. The database, bcrypt and JWT behavior appear as abstract functions linked to real code through six trusted wrappers, and each assumed clause gets a planned Given/When/Then test. For async code, the proof covers only the value returned, so it does not guarantee that login finishes. [1]
PDD Kit builds on earlier work. Verus has verified systems such as a key-value store and a memory allocator. AutoVerus showed that LLM agents can write Verus proofs, reporting correct proofs on more than 90% of 150 tasks. Spec Kit made specs the source of truth for coding agents. PDD Kit adds a verifier that checks the code against the spec. Those figures come from the earlier tools, not PDD Kit. [3] [5] [7]
Access is narrow and evidence is thin. PDD Kit is a Rust-only research preview that runs inside Chopin, GitHub Next's prototype, which has no promise of general availability. Microsoft reports that the run found existing bugs but does not name them, and there are no benchmarks or cost data for PDD Kit. [1] [2] [6]
one case study that verified a single authentication file in a roughly 5,000-line app. Implication: if the approach scales, teams could review specs and signed-off assumptions instead of diffs, easing the bottleneck in reviewing agent-written code.
Read the full assessment
No effort or defect-rate data exists yet.
Executive brief
Microsoft Research says a developer formally verified the login logic of a Rust web app without reading the generated code line by line. The developer reviewed only a plain-language "intent artifact." The prover, Verus, then checked the agent's code against it for every possible input. The tool is PDD Kit ("Proof-Driven Development"), built with GitHub Next. Microsoft reports the run "uncovered existing bugs" but does not list them. PDD Kit is a research preview that works only on Rust. No independent evaluation was found.
What changed and event timeline

Nov 2024: Verus groundwork
Used LLM agents to write Verus proofs.
Spec Kit ships
GitHub open-sourced for spec-driven AI coding. Microsoft describes PDD Kit as filling the same role for formal methods.
Research preview reported
Coverage described Microsoft Research and GitHub Next to verify Rust code against specs.
Early skeptical read
A called the assurance claims vendor framing and said a public demo was scheduled for GitHub Universe (Oct 28–29).
Full-stack case study
Microsoft Research published a of verifying Pet Store's login inside GitHub Next's Chopin.
Capabilities and access
- Runs as a partner inside Chopin, GitHub Next's multiplayer planning document. The planning workflow is called
pdd-plan(MSR). - Uses Verus as the verifier, so it only works on Rust.
- Chopin is listed as a research prototype with no promise of general availability.
Read the full section
- Runs as a partner inside Chopin, GitHub Next's multiplayer planning document. The planning workflow is called
pdd-plan(MSR). - Uses Verus as the verifier, so it only works on Rust. Anything Verus cannot cover (UI, third-party libraries) is checked with tests, browser agents and computer-use agents.
- Chopin is listed as a research prototype with no promise of general availability. The blog gives no repository link, no release date and does not name the coding model used.
Technical analysis for researchers and developers
- Target: Pet Store is about 5,000 lines of Rust (Axum, SQLite, a Leptos/WebAssembly frontend). Only
backend/src/handlers/auth.rswas verified. - From request to spec: a two-sentence request became eight
ensuresclauses (postconditions) on a new async function,login_flow. - Modelling outside systems: the database, bcrypt and JWTs appear as uninterpreted functions such as
customer_on_fileandbcrypt_verdict.
Read the full section
- Target: Pet Store is about 5,000 lines of Rust (Axum, SQLite, a Leptos/WebAssembly frontend). Only
backend/src/handlers/auth.rswas verified. - From request to spec: a two-sentence request became eight
ensuresclauses (postconditions) on a new async function,login_flow. A decision card made the developer choose between a one-way rule (a token implies the right password) and a two-way rule (if and only if). The one-way rule alone is satisfied by a login that refuses everyone. - Modelling outside systems: the database, bcrypt and JWTs appear as uninterpreted functions such as
customer_on_fileandbcrypt_verdict. Six trusted wrappers connect them to real code using#[verifier::external_body]orexternal_fn_specification, and each assumed clause gets a planned Given/When/Then test. - Async rule: preconditions are checked when the future is created. Postconditions cover only the value it returns, so the proof does not guarantee the call ever finishes.
Claims and evidence

- The claim that Verus "uncovered existing bugs" and proved login free of bugs relative to the spec is Microsoft's own report.
- The claim that CI gets "stronger and leaner" by dropping tests that only re-check proved properties is also Microsoft's. No numbers are given.
- There are no benchmarks for PDD Kit itself.
Read the full section
- The claim that Verus "uncovered existing bugs" and proved login free of bugs relative to the spec is Microsoft's own report. The retrieved text does not name the bugs. The Bob/Alice token mix-up in the post is a hypothetical example, not a reported finding.
- The claim that CI gets "stronger and leaner" by dropping tests that only re-check proved properties is also Microsoft's. No numbers are given.
- There are no benchmarks for PDD Kit itself. The figures that do exist come from earlier work: AutoVerus reported correct proofs for more than 90% of 150 tasks, and the Verus paper reported verification 3–61× faster than prior tools.
Context and prior work
- Verus is co-developed by Microsoft Research, CMU, VMware Research, ETH Zurich and others.
- AutoVerus showed that a team of LLM agents can write Verus proofs (arXiv).
- Spec Kit made the spec the source of truth that AI agents work from.
Read the full section
- Verus is co-developed by Microsoft Research, CMU, VMware Research, ETH Zurich and others. It has been used to verify a key-value store, an OS page table and a memory allocator (SOSP 2024 artifact).
- AutoVerus showed that a team of LLM agents can write Verus proofs (arXiv).
- Spec Kit made the spec the source of truth that AI agents work from. PDD Kit goes further and has the verifier check the code against that spec (Visual Studio Magazine).
Limitations, safety and contested findings
- A proof only covers what the spec says. Things the spec leaves out are not covered at all.
- The trusted boundary carries real weight.
- The plan explicitly does not promise that login finishes, that an out-of-range clock won't cause a panic, or anything about timing or rate limits.
Read the full section
- A proof only covers what the spec says. Things the spec leaves out are not covered at all. One practitioner gives an example: revoked sessions went unchecked because revocation was never written into the spec.
- The trusted boundary carries real weight. Every password guarantee depends on the assumed contract for the bcrypt wrapper, and the bcrypt, sqlx and jsonwebtoken code is never proved (MSR).
- The plan explicitly does not promise that login finishes, that an out-of-range clock won't cause a panic, or anything about timing or rate limits.
- Critics note that UI and most I/O-heavy logic still need ordinary testing (DEV).
Business and practitioner implications
- Where review effort goes: teams review intent and sign off on each trusted assumption, not diffs.
- Where to start: Microsoft recommends beginning with the most security-sensitive code, such as authentication, and expanding from there.
- Adoption limits: it requires Rust and Chopin, both preview-stage.
Read the full section
- Where review effort goes: teams review intent and sign off on each trusted assumption, not diffs. This targets the review bottleneck that agent-written pull requests create.
- Where to start: Microsoft recommends beginning with the most security-sensitive code, such as authentication, and expanding from there.
- Adoption limits: it requires Rust and Chopin, both preview-stage. Teams on TypeScript or Python have nothing to install, though they can still adopt the explicit-contract approach (Aleman).
- Missing evidence: there are no published figures on cost, effort or defect rates, so return on investment cannot yet be assessed.