40%+
of agentic AI projects are expected to be cancelled by the end of 2027 — on escalating cost, unclear value and inadequate risk controls.
Capabilities
What we write it in, how we work out which of them your problem actually needs, and what each one cannot do.
Three disciplines. Most engagements use all three, in a proportion that depends on what is actually at risk in your software — which is the part worth paying for, and the part a vendor selling one of these exclusively cannot get right.
Each section below ends with what that discipline cannot do. A testing partner who has never told you the limits of their own method has not finished thinking about it.
Automation checks that the things you thought of still work. It cannot notice the thing nobody thought of, and after AI-assisted development there is more of that than there used to be. Manual work here is structured and time-boxed, not a person clicking through a spreadsheet of steps.
Time-boxed sessions against a written charter and a risk area, with notes and reproducible findings — not unscripted clicking. You get the session log, so you can see what was covered and what was not.
The paths a real user takes across features, including the partial, interrupted and resumed ones that unit and component tests never exercise.
Keyboard-only traversal, screen reader passes, and focus and reflow behaviour. Automated tooling reliably detects a minority of WCAG success criteria; the US Department of Justice has said on the record that automated remediation tools lack sufficient reliability for complex content.
Findings ranked by risk and effort, with reproduction steps, so the output is a decision rather than a list.
On automated tooling being insufficient: US Department of Justice, ADA Title II web rule · 20 Apr 2026 · VERIFIED
What this cannot doManual testing does not scale as regression coverage and we will not sell it as though it does. If your problem is that the same 400 checks have to pass on every release, that is an automation problem and we will say so.
Most teams do not need more automated tests. They need the ones they have to be fast, stable and trusted, because a suite nobody believes is worse than no suite — it trains a team to click merge on a red build. We build suites and, more often, we rescue them.
Our default for new browser and API suites: parallel execution, auto-waiting that removes a whole category of flake, tracing that makes a failure diagnosable from CI alone, and cross-browser coverage without a grid to maintain.
Where the estate is already there, the grid is established, or the language and browser matrix requires it. A working Selenium suite is not a problem to be migrated — rewriting one that works is usually somebody billing you for their preference.
Quarantine, retry policy that does not hide real failures, and the specific work of getting a suite from an hour to something that can gate a merge. Flake is a trust problem before it is a technical one.
Tiered suites wired into the pipeline so the right set runs at the right gate: fast checks on every commit, the full run before release. Includes API and contract level, because pushing everything through the browser is why suites get slow.
What this cannot doWe will not quote a suite for a codebase we have not assessed, and we will not promise a coverage percentage. Coverage as a single number is a poor metric and committing to one produces tests written to move it.
We build our own GenAI tooling for QA and we deploy it for clients. Agents are genuinely good at the wide, repetitive, judgement-light parts of testing: reading a diff and proposing where coverage is missing, generating and maintaining test data, triaging a failure queue, drafting reproduction steps. Used there, an agent widens the search enormously.
A coverage-gap agent, a failure-triage agent, a test-data agent — each with a defined job, defined inputs, and a defined handoff to a person. Not a general-purpose assistant bolted onto your pipeline.
Wired into CI with your source control, defect tracker and test runner, with the access boundaries written down. Deployed to your infrastructure — we do not require that your code leave it.
Every agent ships with a measurement of how often it is right, on your data, and where it fails. An unevaluated agent is a confident guess at scale, and Gartner expects over 40% of agentic AI projects to be cancelled by the end of 2027 on exactly that basis.
You get the prompts, the harness, the deployment and the documentation. If you want to run it without us afterwards, that is the intended outcome.
40%+
of agentic AI projects are expected to be cancelled by the end of 2027 — on escalating cost, unclear value and inadequate risk controls.
What this cannot doWe do not let an agent sign off on a release, and neither should you. Agent output is an input to a human decision — every finding that reaches your report is verified by one of our engineers first. That is the line the whole practice is built on, and building agents is what makes us confident about where to draw it.
Most of this work arrives inside one of the three engagements on the home page — the diagnostic finds what is wrong, the quality gate build fixes it, the retainer keeps it fixed. That is the path we recommend, because it puts a measurement before the spend.
If you already know what you need — a suite rescued, an agent built and deployed, an exploratory pass before a release you are nervous about — say so in your first email and we will scope it directly. Fixed price, quoted before any work starts.
What we will not sell you is testers by the hour. That is staff augmentation, it competes on rate with suppliers we cannot and should not undercut, and it produces no outcome either of us can point at afterwards. If that is genuinely what you need, we will tell you so in the first reply and you will have lost five minutes.
Tell us what you are testing, what keeps breaking, and what you have already tried. If we cannot help, we will say so.