ls ./projects
project // Lightning · Infrastructure · Open Source
Mission-Control Style Router
Score graph edges with fees, CLTV, and historical failures. Benchmark success rate against a naive Dijkstra baseline.
Advanced2 weeks
Overview
Pathfinding is a product differentiator. Build a service that proposes routes using your own scoring function.
Without a benchmark harness, "smarter routing" is just storytelling. Log attempt outcomes and measure success rate, fees, and retries.
Heuristics to try
- Fee cost + risk penalty
- Channel age / capacity priors
- Historical failure decay (mission-control style)
- Avoid recently failed edges for a cooldown window
Learning objectives
- Ingest a channel graph and invoice constraints
- Rank paths with custom fee and reliability heuristics
- Benchmark success rate against a baseline router
Prerequisites
- Pathfinding
- Failure Handling
- Onion Routing
Required skills
PathfindingGraph algorithmsBenchmark harnesses
Part of the lightning roadmap.
Architecture diagram
Graph snapshot → scorer → path candidates → payment attempt feedback
Requirements
- `POST /routes` accepts destination, amount, max fee, max CLTV
- Returns ranked candidate paths with expected fees
- At least two scoring strategies behind a flag
- Deterministic routes for a fixed graph fixture
- Comparison report: success rate, average fees, attempts
Stretch goals
- Feedback endpoint for success/failure learning
- Multipart / split payment path sets under a fee budget
- Cooldown window for recently failed edges
- Visualization of chosen vs rejected paths
Recommended resources
Example repositories
- lnd routing package
Production pathfinding and mission-control ideas.
- CLN askrene / plugins
Plugin-oriented routing experimentation surface.
Submission instructions
- Service repo with fixture graph and benchmark harness
- Written report comparing strategies on the same dataset
- API examples for route requests/responses
- Clear limitations vs full node private-state routers