Run the steps in the order you wrote.
They are excellent for expected behavior, but they rarely try the timing mistakes that cause the hardest production bugs.
For asynchronous application workflows
Normal tests run the path you wrote. Geometer tries different event orders, retries, delays, and failures—then gives you simple steps to replay the bug.
One command · Runs locally · No new modeling language
Why normal tests miss these bugs
A webhook arrives twice. A worker retries after success. A refund and shipment happen together. Each component does its job, but the company ends up in a state nobody intended.
They are excellent for expected behavior, but they rarely try the timing mistakes that cause the hardest production bugs.
They help your team investigate, but a customer may encounter the bug first.
Tell Geometer what must remain true. It searches for a sequence that breaks the rule and shows exactly how to replay it.
Start with one command
Run geo test against a workflow your application already knows. Geometer reports what it found in the terminal and lets you test other possible executions safely. Open a visual report when you need to investigate.
Geometer detects supported libraries, watches the workflow, and reports the result locally in your terminal.
npx geo test -- npm test checkoutWrite what must never happen, such as “a refunded order must never ship.” Start from a template or write your own.
rule("refunded orders never ship")Geometer changes supported event orders, deliveries, retries, failures, and timing inside the test environment.
geo explore run_82d1Geometer removes unrelated noise and gives your team a short sequence it can reproduce, fix, and keep in CI.
geo replay case_71b4Tell Geometer what must never happen
A healthy server can still charge someone twice. Geometer checks business state: money charged, inventory reserved, approvals granted, messages sent, and records committed.
// Name the business rule in plain language. rule.sql( "refunded orders must never ship", ` NOT EXISTS ( SELECT 1 FROM orders WHERE refunded_at IS NOT NULL AND shipment_id IS NOT NULL ) ` );
From finding to permanent protection
Geometer turns a difficult race into a short replayable sequence. Fix it, replay the exact failure, and keep the workflow protected in CI whenever the code changes.
Protect a workflowOrdinary tests confirm the path you wrote. Geometer searches for another valid path that breaks the rule.
Clear about what was tested
Every result includes the environment, failures, event choices, limits, and blind spots. “No bug found” is never turned into “this can never fail.”
The rule broke. Geometer attaches the exact sequence, state difference, and command needed to replay it.
Geometer shows which events, failures, and schedules it tried—and exactly where it stopped.
If Geometer could not observe or control something important, it shows the missing piece instead of guessing.
Start narrow. Expand through protected workflows.
Geometer starts with one TypeScript workflow where ordering mistakes have real consequences. The same event, rule, exploration, and replay model expands to more stacks and more of the application.
Postgres, HTTP, webhooks, queues, retries, and important business state.
Python, Java, Go, Kafka, cloud queues, workflows, and additional databases.
Continuously protect checkout, refunds, fulfillment, inventory, billing, and payouts.
Block well-understood unsafe transitions only after the testing engine is trusted.
Start free. Add the team when it works.
Developers can prove Geometer on one workflow for free. Teams pay to share results and run deeper checks in CI. Enterprises add private runners and organizational controls.
Prove Geometer on a real workflow before involving procurement.
Run Geometer whenever an important workflow changes.
Run against sensitive systems with predictable capacity and organizational controls.
Test one real workflow
We will test one TypeScript workflow with your team and search for a consequential bug your existing tests do not cover. You receive either a replayable finding or a clear report showing what Geometer tried, what it could not test, and what should remain protected in CI.
[email protected]