Pathfinding searches the gossip graph (plus hints) for a path that can deliver an amount under fee and timelock constraints, even with incomplete liquidity knowledge.
Why this matters
Dijkstra-with-fees is only the start. Production routers track historical failures and prefer reliable edges.
Analogy
GPS with imperfect live traffic. You pick a route, hit a jam (insufficient balance), then reroute using what you learned.
Loading diagram…
type Edge = { from: string; to: string; feeBase: number; feeProportional: number };
// cost ≈ base + amount * proportional / million + riskPenaltyWorked mental model
Re-read the diagrams in this lesson once out loud in plain language. If you cannot explain the flow to a friend without jargon, pause and revisit Mastering Bitcoin / Mastering Lightning chapters linked in Resources. Chapter references are intentional, not decorative.
Hands-on habit
Every protocol idea should be paired with one local experiment:
- Reproduce the happy path on regtest (or Polar for Lightning)
- Break it on purpose (wrong fee, expired invoice, offline peer)
- Write down what error you saw and which layer produced it (wallet, node, mempool, peer)
That habit turns reading into builder instinct.
Glossary check
Pick three terms from this lesson and define them in one sentence each without opening notes. Weak definitions mean the lesson is not finished yet.
Resource order
Use Resources in order: narrative book chapter first, then BIP/BOLT for precision, then implementation docs for commands. Jumping straight to RPC flags without the mental model creates brittle knowledge.
Next steps
Liquidity management: keeping channels balanced so pathfinding has somewhere to go.