---
# System prepended metadata

title: Radicle node overview
tags: [docs]

---

# Radicle node overview

### Node connection

if understand correctly the code the radicle node keep a direction for the connection as `inbound` or `outbound` direction.

Why it is done? the connection should be bidirectional right? because a node can send and receve events.

### Node fetching

Take into count the followin use case:

Vincent is a new contributor to the radicle network and want push a change inside a repository like the rip.

Now, lets immagine that Vincent is connected to the rad seed node and he has the radicle seed node as trusted node. At this point Vincent open a patch to the rip repository but it do not see the patch propagated to the seed 1, but the log of the seed one said `Sending refs announcement of z6Mku2RzwmYe4qbxPhS2ncEjuzdbEwr5vsQXvnoaGyMBraAW for rad:z3trNYnLWS11cJWC6BbxDs5niGo82 with 1 remote(s) to z6MksmpU5b1dS7oaqF2bHXhQi1DWy2hB7Mh9CuN7y1DN6QSz` (see note [1])

But there is no other information on the logs, so by looking at the method [that handle the incoming messages](https://app.radicle.xyz/seeds/seed.radicle.xyz/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/tree/master/radicle-node/src/service.rs#L884) I cam across the only case where this announce refs will not print nothing, and I found [this code](https://app.radicle.xyz/seeds/seed.radicle.xyz/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/tree/master/radicle-node/src/service.rs#L941) and by jumping inside the implementation `should_fetch_refs_announcement` ([here](https://app.radicle.xyz/seeds/seed.radicle.xyz/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/tree/master/radicle-node/src/service.rs#L1028)) and I found that my node can be not inside the `Trusted` peers of the seeed.

To proof this would be to run on the seed node the following patch that add a log line to get some additional information inside the log.

See reproducer https://github.com/vincenzopalazzo/heartwood/tree/macros/refs_from_untrusted_node

We can include the log inside the tests?


[1] In this case the node should print Receving refs but I gues the log is checking the connection link? and in this case is inbound, and the node prints the `Sending`? but I am not sure about it.