Skip to main content

How the FedGrade Network graph works

FedGrade Network is the entity graph. It connects the agencies and vendors in FedGrade's federal civilian research library, with edges drawn from observed relationships in the underlying data.

What's in the graph

This page deliberately publishes no snapshot counts. Earlier versions listed figures — agencies, vendors, contracts, people, programs, regulations — that were written aspirationally and never reconciled against the database. Several were wrong by one to three orders of magnitude, and two named entity types (people, programs) do not exist in the graph at all.

For the current counts, read them from the product: the aggregate entity counts are returned by /api/network/stats and rendered in the header of /library/network. Those are live COUNT(*) queries, so they cannot drift from reality the way a hand-typed number in a help article can.

Today the graph carries two entity types — agencies and vendors. Contract, person, program and regulation nodes are not populated; regulations are searchable in the corpus but are not linked into the entity graph. Additional entity types are added as connectors land.

Edge types

The graph schema defines these edge kinds: won, cited, authored, moved_to, incident_at, partnered_with, subsidiary_of.

Only partnered_with is currently populated — vendor-to-vendor teaming and co-occurrence edges produced by the teaming-graph job. If you filter for any other edge kind today you will correctly get nothing back; that is an honest empty result, not a bug.

Each edge carries a provenance pointer — the source citation that established the edge. Click an edge to see the underlying document.

Browsing

Open /network. Start with the search box — type an agency, vendor, or contract name and the canvas centers on that node. From there:

  • Click a node to see its detail panel (related entities, recent activity, citations).
  • Drag to pan, scroll to zoom. Hold shift and drag to box-select multiple nodes.
  • Filter the canvas with the side panel — limit by edge type, entity type, depth.

Depth and node caps

BFS depth is capped per tier, matching lib/entitlements/catalog.ts:

  • Free: no graph access
  • Pro: depth 1
  • Team: depth 2
  • Enterprise / Government: depth 3

Max nodes per query: 10–500 (default 200). Larger queries return a 413 with the cap value in the response.

The Library Network view

/library/network is the tabular browse: live entity-type counts and the total edge count, with a link out to the force-directed visualization at /network.

Limits

  • The graph is a public-source aggregate; private vendor relationships (e.g., teaming agreements not filed in SAM) are not represented.
  • partnered_with edges derived from co-occurrence are heuristic — appearing on the same notice does not always mean a genuine teaming relationship. Treat the edge as a signal, not a fact.
  • Person nodes are not populated today.

Last updated 2026-08-02.


Was this article helpful?
Still need help? File a ticket via the floating "?" button on any app view, or email support@fedgrade.com.
How the Forum Network graph works · Help