{"slug": "assure-formal-verification-for-every-pr", "title": "Assure – formal verification for every PR", "summary": "Symbolia Assurance released Assure v0.1.2, a formal-verification tool that checks AI-written code before pull requests merge, reporting 0 false alarms across ten real Flask apps while catching a planted auth flaw in 5 of 10 apps, versus 0 for Bandit and CodeQL. On the same clean code, Bandit raised 275 findings and CodeQL 11 while catching 0 planted flaws, and Assure posted its first PR comment in 3.6 minutes across ten apps. Assure is free to start, with Premium at USD 20 a month, Pro at USD 200 a month, and Enterprise pricing for larger codebases.", "body_md": "One command fetches the declaration, your requirements.md and the workflow. The agent opens the first pull request, already checked.\n\n# Your AI writes the code.\n\nAssure checks it before it merges.\n\nholdsnot establisheddisproven\n\nTell your agent\n\n```\nSet up Assure: follow https://github.com/Symbolia-Assurance/assure-action/blob/v0.1.2/skills/assure/SKILL.md\n```\n\n## [Assure checks itself](#assure-checks-itself)\n\nAssure checks itself · release fa579391 · 2026-10-22 · 51 of 61 hold · 8 not established · 2 disproven\n\nPremised: A1, A4 and G5.\n\n**See it in action.** [A live demo: three pull requests, one caught bug](https://github.com/Symbolia-Assurance/assure-demo) · [One prompt to an agent sets up Assure](https://github.com/Symbolia-Assurance/assure-install-demo) · [What Assure posts on your pull request](https://symbolia.ai/how-it-works#what-assure-posts-on-your-pull-request)\n\n## [Verify Assure](#verify-assure)\n\n1.  0 false alarms on ten real Flask apps. A broken rule reported on code that keeps it, on Free and on Premium. On the same clean code Bandit raised 275 findings and CodeQL 11 while catching 0 planted flaws. [See the repo](https://github.com/Symbolia-Assurance/assure-benchmark)\n2.  Planted auth flaw caught: Free 5 / 10. Bandit 0. CodeQL 0. One unguarded route planted in each app. [Extend it yourself](#assure-improves-continuously) . Semgrep is not published (rules licence); run it with run.sh.[See the repo](https://github.com/Symbolia-Assurance/assure-benchmark)\n3.  Checked on real, public code. [microblog](https://github.com/miguelgrinberg/microblog)[PR](https://github.com/Symbolia-Assurance/setup-qual-microblog/pull/5) ,[flasky](https://github.com/miguelgrinberg/flasky)[PR](https://github.com/Symbolia-Assurance/setup-qual-flasky/pull/5) ,[flask-base](https://github.com/hack4impact/flask-base)[PR](https://github.com/Symbolia-Assurance/setup-qual-flask-base/pull/5) ,[realworld](https://github.com/gothinkster/flask-realworld-example-app)[PR](https://github.com/Symbolia-Assurance/setup-qual-realworld/pull/5) ,[Flask-User starter](https://github.com/lingthio/Flask-User-starter-app)[PR](https://github.com/Symbolia-Assurance/setup-qual-flask-user-starter/pull/5) ,[cookiecutter-flask demo](https://github.com/jamescurtin/demo-cookiecutter-flask)[PR](https://github.com/Symbolia-Assurance/setup-qual-cookiecutter-demo/pull/39) ,[flask-jwt-auth](https://github.com/oleg-agapov/flask-jwt-auth)[PR](https://github.com/Symbolia-Assurance/setup-qual-jwt-restful/pull/5) ,[REST-tutorial](https://github.com/miguelgrinberg/REST-tutorial)[PR](https://github.com/Symbolia-Assurance/setup-qual-rest-tutorial/pull/5) ,[flaskr](https://github.com/pallets/flask/tree/main/examples/tutorial)[PR](https://github.com/Symbolia-Assurance/setup-qual-flaskr/pull/7) ,[flask-bones](https://github.com/cburmeister/flask-bones)[PR](https://github.com/Symbolia-Assurance/setup-qual-flask-bones/pull/5) .Pinned commits and plants in the [benchmark repo](https://github.com/Symbolia-Assurance/assure-benchmark) .\n4.  First PR comment in 3.6 minutes. Fresh agents, from the one-liner, ten apps. [See the install demo](https://github.com/Symbolia-Assurance/assure-install-demo) and[the live demo](https://github.com/Symbolia-Assurance/assure-demo)\n5.  66x internal development acceleration. Reviewed changes merged a day: from 1 to a median of 66 (peak 130).\n\n## [Assure improves continuously](#assure-improves-continuously)\n\n1. **Build an adapter bridge.**\n2. **State a fact only you know.**\n3. **Request coverage.**\n\n## [Get started for free](#get-started-for-free)\n\nFree to start. Premium USD 20 a month. Pro USD 200 a month. Enterprise for larger codebases.\n\nFormal verification used to take specialists weeks per system.\n\nAssure can build a formal model on every release, automatically.\n\nSee what it can establish for your code.", "url": "https://wpnews.pro/news/assure-formal-verification-for-every-pr", "canonical_source": "https://symbolia.ai/", "published_at": "2026-10-23 01:21:49+00:00", "updated_at": "2026-10-23 01:41:00.150836+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools", "ai-agents", "ai-safety"], "entities": ["Assure", "Symbolia Assurance", "Bandit", "CodeQL", "Semgrep", "Flask", "GitHub"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/assure-formal-verification-for-every-pr", "markdown": "https://wpnews.pro/news/assure-formal-verification-for-every-pr.md", "text": "https://wpnews.pro/news/assure-formal-verification-for-every-pr.txt", "jsonld": "https://wpnews.pro/news/assure-formal-verification-for-every-pr.jsonld"}}