<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/circuit/reactor, branch arti-v2.5.1</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.5.1</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.5.1'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-08-03T18:27:50Z</updated>
<entry>
<title>proto: Add {backward|forward} prefix to circ_id in logs</title>
<updated>2026-08-03T18:27:50Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-08-03T17:47:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c241916c931a7e9c0970e6db643689c2b39468d0'/>
<id>urn:sha1:c241916c931a7e9c0970e6db643689c2b39468d0</id>
<content type='text'>
Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Rename uniq_id to circ_unique_id mostly in logging</title>
<updated>2026-08-03T18:27:50Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-08-03T17:22:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b772cecf5d5bee7e3eea0ca652e4befdeee4ed29'/>
<id>urn:sha1:b772cecf5d5bee7e3eea0ca652e4befdeee4ed29</id>
<content type='text'>
We have decided that instead of "uniq_id" in logging, we'll use the
"&lt;domaine&gt;-[&lt;type&gt;]-id" syntax to indicate who is that unique ID.

This commit only renames circuit's unique ID to "circ_uniq_id".

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Log both UniqId and CircId when possible</title>
<updated>2026-08-03T18:27:50Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-07-29T14:43:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=996f0448223011b6948d2197706b0fcf8b3dfc2d'/>
<id>urn:sha1:996f0448223011b6948d2197706b0fcf8b3dfc2d</id>
<content type='text'>
This commit only affects logging. Whenever possible, log both the UniqId
and CircId.

This also changes the log lines which is now "uniq_id=" and "circ_id="
as the UniqId is internal and circ_id (CircId) is protocol level.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Rename CircId and UniqId variable name</title>
<updated>2026-08-03T18:25:23Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-07-29T14:03:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=cc838ad3312d491c406fdc06c2971c006c4cf5f5'/>
<id>urn:sha1:cc838ad3312d491c406fdc06c2971c006c4cf5f5</id>
<content type='text'>
A CircId is now a circ_id and a UniqId is a unique_id so we stop
confusing them in the code.

Furthermore, channel_id that are CircId are now circ_id. Channel IDs are
different and encoded internally into a UniqId.

This is the first step to clarify semantic before we change the logging
to log both unique ID and circ ID.

No behavior change.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Include the actual cell command in an error message</title>
<updated>2026-07-23T16:59:55Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-07-23T16:49:26Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5636fa83e736b5221cc4c8f73a482a88d0eb2535'/>
<id>urn:sha1:5636fa83e736b5221cc4c8f73a482a88d0eb2535</id>
<content type='text'>
This can happen if we get an unexpected BEGIN_DIR/RESOLVE too, so we
can't hard-code "BEGIN" in the error message.

Context: https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/4230#note_3439258,
</content>
</entry>
<entry>
<title>proto: Remove feature-gating from CircHop::handle_msg()</title>
<updated>2026-07-23T16:59:55Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-07-22T16:52:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=458460fe1ec1ce5efc0cf76d7720857aca2ac2a7'/>
<id>urn:sha1:458460fe1ec1ce5efc0cf76d7720857aca2ac2a7</id>
<content type='text'>
This feature-gating has been a source of confusion, and it unnecessarily
complicates the stream message handling flow.

I've previously argued in favour of keeping it, in the spirit of a belt
and braces approach to message validation, but I've been convinced that
in this particular case, the feature-gate is more trouble than it's
worth.

What makes things worse is that the `CircHop::handle_msg()`
function was designed poorly (by yours truly). I plan on refactoring it
at some point, hopefully soon. There is a TODO about this below
its doc comment.
</content>
</entry>
<entry>
<title>proto: Add TODO about the eventual client-side reactor rewrite</title>
<updated>2026-07-02T09:52:30Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-07-02T09:51:10Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=cd4212887e54e37b66215aa53132ef939751a7f1'/>
<id>urn:sha1:cd4212887e54e37b66215aa53132ef939751a7f1</id>
<content type='text'>
See
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/4188#note_3432579
</content>
</entry>
<entry>
<title>proto: Allow BeginDir and Resolve messages in the stream reactor (fmt)</title>
<updated>2026-07-01T11:11:08Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-07-01T11:11:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8ab821cc724c60fbe191e124ed9e2d4bd244036d'/>
<id>urn:sha1:8ab821cc724c60fbe191e124ed9e2d4bd244036d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Allow BeginDir and Resolve messages in the stream reactor</title>
<updated>2026-07-01T11:10:48Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-07-01T11:01:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4d83a51f193b964dd4c493eb0c34f215447d1b6f'/>
<id>urn:sha1:4d83a51f193b964dd4c493eb0c34f215447d1b6f</id>
<content type='text'>
Previously, these would fail to parse, because the (WIP) stream reactor
assumed all streams would be exit (BEGIN) streams.

Closes #2613
</content>
</entry>
<entry>
<title>proto: Add expect(unused) where needed</title>
<updated>2026-06-29T13:52:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-23T18:00:55Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4f4130c34ffb89ff4c75c143d1612d2ced60e9d6'/>
<id>urn:sha1:4f4130c34ffb89ff4c75c143d1612d2ced60e9d6</id>
<content type='text'>
Now that relays no longer use `CtrlCmd::AwaitStreamRequests`, some of
these fields are unused. I'm leaving them in for now, but we should
remove them if they're still unused after we finish the circ reactor
impl.

I'm not removing `AwaitStreamRequests`, because it will be needed by
onion services, when we replace the old client circuit reactor with the
new one.
</content>
</entry>
</feed>
