Repository navigation
flowfig 0.8.0
flowfig verify now checks the arrows, not only the names. It tells you which edges of a figure the code really makes, so a reviewer can see which parts to trust.
npx flowfig verify docs/login.svg
# docs/login.svg: 7 of 7 boxes defined; edges: 9 found, 0 not found, 1 unsure, 1 not checkedNew
- Edge check.
verifygives each edge one result:- found: the caller code calls or references the callee, through an import, the same file or a typed receiver.
- not found: the code does not make that call.
verifyprints a warning, and--strictmakes it an error. - unsure:
verifycannot decide, for example when a receiver has no declared type. It lists the edge with the reason and never fails CI. - not checked: the edge has no code to check, or the file is in a language that
verifydoes not read.
- Languages. Edge checks work in TypeScript, JavaScript, Python, Go, Java, C# and Rust.
- Methods. A
sourcecan name a method:src/auth/session.ts#Session.refresh. viafor edges across a process. Setviato the route, queue, topic, table, file or key that both sides use, for example"via": "order-paid". For aviaedge, "found" means that the caller code and the callee file both use that name. It does not prove that a handler serves it.- Counts everywhere. The CLI, the MCP
verifytool and the GitHub Action comment show the box and edge counts.verify --jsonadds acoveragelist with the counts and the unsure edges. - Agent guide. The instructions that
flowfig initinstalls teach agents to set edge sources andvia, and to fix each edge thatverifydoes not find.
Improvements
- Box check. In a code file, a box symbol must be defined, not only mentioned. A name in a comment or a string no longer passes.
flowfig/verifyexportsverifyReport, which returns the findings and the counts.verifykeeps its signature.
Requirements
- Node 18 or later.
- React 18 or later, only for the
<Flow />player. flowfig gifuses Chrome, Edge, Chromium or Brave from your machine, and needs a little-endian CPU (x64 or ARM).
Upgrade
- A box
sourcewhose symbol the file only mentions, and does not define, now failsverifywithsymbol not defined. Point thesourceat the file that defines the symbol, or usepath#Owner.namefor a method. - Edges that
verifycannot find give warnings, not errors, unless you use--strict. Runnpx flowfig verify <figure>once after the upgrade and fix the edges it reports. - If your GitHub workflow uses the flowfig Action, change it to
iamalvisng/flowfig@v0.8.0.
Full Changelog: v0.7.0...v0.8.0