bug: /relations recurses even without recurse #2469

Closed
opened 2026-11-07 15:44:25 +00:00 by Henry-Hiles · 0 comments
Member

What is the bug?

As title says, recursion in relations when not wanted.

Steps to reproduce

call /relations without recurse, watch it recurse

Server name and version

federated.nexus + local repro, 02aed4fb23

Additional context

// Spec (v1.10) recommends depth of at least 3
let depth: u8 = if recurse { 3 } else { 1 };

let mut stack: Vec<_> = pdus
.iter()
.filter(|_| max_depth > 0)
.map(|pdu| (pdu.clone(), 1))
.collect();

for relation in relations {
if stack_pdu.1 < max_depth {
stack.push((relation.clone(), stack_pdu.1.saturating_add(1)));
}
pdus.push(relation);

### What is the bug? As title says, recursion in relations when not wanted. ### Steps to reproduce call `/relations` without `recurse`, watch it recurse ### Server name and version federated.nexus + local repro, https://forgejo.ellis.link/continuwuation/continuwuity/commit/02aed4fb23504f54ed068c51175959c2cc71d8d0 ### Additional context https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/02aed4fb23504f54ed068c51175959c2cc71d8d0/src/api/client/relations.rs#L150-L151 https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/02aed4fb23504f54ed068c51175959c2cc71d8d0/src/service/rooms/pdu_metadata/mod.rs#L84-L88 https://forgejo.ellis.link/continuwuation/continuwuity/src/commit/02aed4fb23504f54ed068c51175959c2cc71d8d0/src/service/rooms/pdu_metadata/mod.rs#L103-L108
Jade closed this issue 2026-11-08 19:34:28 +00:00
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
continuwuation/continuwuity#2469
No description provided.