@@ -9,17 +9,23 @@ the most complicated part of writing agents, so there's a fair bit to cover.
9Before we get into the nitty-gritty details, we'll give a brief overview of
9Before we get into the nitty-gritty details, we'll give a brief overview of
10Gall's subscription mechanics.
10Gall's subscription mechanics.
12−The basic unit of subscriptions is the _path_. An agent will define a number of
12+The basic unit of subscriptions is the _path_. An agent will typically define a
13−subscription paths in its `on-watch` arm, and other agents (local or remote) can
13+number of subscription paths in its `on-watch` arm, and other agents (local or
14−subscribe to those paths. The agent will then send out updates called `%fact`s
14+remote) can subscribe to those paths. The agent will then send out updates
15−on one or more of its paths, and _all_ subscribers of those paths will receive
15+called `%fact`s on one or more of its paths, and _all_ subscribers of those
16−them. An agent cannot send out updates to specific subscribers, it can only
16+paths will receive them. An agent cannot send out updates to specific
17−target its paths. An agent can kick subscribers from its paths, and subscribers
17+subscribers, it can only target its paths. An agent can kick subscribers from
18−can unsubscribe from any paths.
18+its paths, and subscribers can unsubscribe from any paths.
20The subscription paths an agent defines can be simple and fixed like
20The subscription paths an agent defines can be simple and fixed like
21−`/foo/bar/baz`. They can also be dynamic, containing data of a particular atom aura
21+`/foo/bar/baz`. They can also be dynamic, containing data of a particular atom
22−encoded in certain elements of the path. These paths can therefore be as simple or complex as you need for your particular application.
22+aura encoded in certain elements of the path. These paths can therefore be as
23+simple or complex as you need for your particular application.
25+Note it's not strictly necessary to define subscription paths explicitly. As
26+long as the arm doesn't crash, the subscription will succeed. In practice,
27+however, it's nearly always appropriate to define them explicitly and crash on
24For a deeper explanation of subscription mechanics in Arvo, you can refer to
30For a deeper explanation of subscription mechanics in Arvo, you can refer to
25Arvo's [Subscriptions](/docs/arvo/concepts/subscriptions) section.
31Arvo's [Subscriptions](/docs/arvo/concepts/subscriptions) section.