Knowledge
It knows a column
from a function.
Descry reads both your repositories and builds a map of your product, not a map of your files.
A generic graph can’t form the question.
It can tell you two files are connected. It cannot tell you a database column feeds a screen, because “column” and “screen” are not concepts inside it.
One vocabulary, ten languages.
One translator per language. Nothing above that layer knows what anything was written in, which is why a JavaScript frontend and a Java backend join into one map.
Sometimes we skip the parsing entirely.
Reading a contract someone already wrote is cheaper and more accurate than inferring it from code. We read your OpenAPI contract, and your schema, directly.
Everyone else has a map of files. Descry has a map of your product.
Structural read
Parses every file structurally and records fifteen typed node types.
Matched by shape
Matches every frontend API call to its backend route by path, method and shape.
Drift flagged
Flags renamed fields, changed types, orphaned routes and dead calls.
Ranked reach
Computes blast radius by weighted impact score, not hop count.
Watches your work
Watches your working directory and offers to check what you just changed.
Incremental
Updates incrementally, re-reading only what changed.
Rename that column and these three screens go blank. Said before a browser opens. Then proven by opening one.
Fifteen
Typed node types, from database column to page.
Ten
Languages, one shared vocabulary above them.
Two
Contracts read directly: OpenAPI and your schema.
One
Map, across the seam, both repositories in it.
Find out what your change actually did.
Hummingbird is our first release. Join the waitlist and help shape it.
