5fc3b2883b
"discovery: mDNS/DNS-SD peer discovery; dynamic upstream management"
...
Allows ncro instances to discover each other dynamically without static
configuration and enables a peer-to-peer style (hello funny cube) mesh
where nodes share cached builds locally instead of all hitting upstream
caches.
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7d723876c6816cb6aaaf3fe14cb24a426a6a6964
2026-04-05 22:48:20 +03:00
5da43e2937
ncro: migrate CLI to cobra/viper
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I4707bb1927224624f811ce4d3f2f8a3b6a6a6964
2026-04-05 22:48:15 +03:00
41b18dd1f8
router: add singleflight deduplication for concurrent narinfo races
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ib682889f34ad4ad4fb331ee2924dc9916a6a6964
2026-04-05 22:47:59 +03:00
efca8dff6c
metrics: add Prometheus metrics
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I13becfd5a309cc2e24579244d88343a56a6a6964
2026-03-15 11:01:35 +03:00
605923a94a
mesh: init ed25519-signed gossip layer; conflict-resolving route store
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I92ff256da8e84e86cd9e7c2b511c0ae56a6a6964
2026-03-15 11:01:31 +03:00
663f9995b2
cache: add SQLite route persistence; initial TTL and LRU eviction implementation
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0370d6c114d5490634905c1a831a31526a6a6964
2026-03-15 11:01:26 +03:00
9f264fbef1
config: add Duration test coverage and fix error wrapping
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I5c08e63297f90acdedd9744de904c36b6a6a6964
2026-03-15 11:01:25 +03:00
356aa999af
initial commit
...
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iec17afe27e51e55d53e09479fcdfd4456a6a6964
2026-03-15 11:01:11 +03:00