Skip to content

feat: add endpoint to list the groups associated to a managed room#48

Merged
FrenchGithubUser merged 1 commit into
mainfrom
tt/list-groups
Jul 10, 2026
Merged

feat: add endpoint to list the groups associated to a managed room#48
FrenchGithubUser merged 1 commit into
mainfrom
tt/list-groups

Conversation

@FrenchGithubUser

Copy link
Copy Markdown
Member

@codecov

codecov Bot commented Jul 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.47%. Comparing base (0e176cf) to head (8ade4b6).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #48      +/-   ##
==========================================
+ Coverage   93.27%   93.47%   +0.20%     
==========================================
  Files          10       10              
  Lines         877      904      +27     
  Branches      131      135       +4     
==========================================
+ Hits          818      845      +27     
  Misses         34       34              
  Partials       25       25              
Files with missing lines Coverage Δ
famedly_control_synapse/famedly_control.py 95.12% <100.00%> (+0.06%) ⬆️
famedly_control_synapse/repository.py 86.48% <100.00%> (+1.48%) ⬆️
famedly_control_synapse/rest/room.py 90.75% <100.00%> (+1.33%) ⬆️

Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0e176cf...8ade4b6. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@FrenchGithubUser
FrenchGithubUser marked this pull request as ready for review July 6, 2026 13:42
@FrenchGithubUser
FrenchGithubUser requested a review from a team as a code owner July 6, 2026 13:42
@cursor

cursor Bot commented Jul 6, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Read-only admin API with patterns aligned to the existing list endpoint; main risk is servlet registration order, which is documented and tested.

Overview
Adds an admin-only GET /_famedlyControl/v1/managedRooms/{roomId} that returns one managed room as a ManagedRoomChunk—same shape as list entries, including aggregated de.famedly.managedRoom groups plus room stats (name, topic, alias, member count, etc.).

A new get_managed_room repository method runs the existing list-style SQL filtered by room_id. 404 is returned when the room is missing or not managed; non-admins get 403.

GetManagedRoomResource is registered after ListManagedRoomsResource so the /{room_id}$ pattern does not take precedence over the literal /rooms list route. OpenAPI documents getManagedRoom; REST tests cover auth, success payload, 404 cases, and list-route shadowing.

Reviewed by Cursor Bugbot for commit 8ade4b6. Bugbot is set up for automated code reviews on this repo. Configure here.

Comment thread famedly_control_synapse/repository.py Outdated
Comment thread famedly_control_synapse/repository.py
Comment thread tests/rest/test_room.py
Comment thread openapi-spec.yaml

@jason-famedly jason-famedly left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Largely looks good, lets get these couple of things

@jason-famedly jason-famedly left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@FrenchGithubUser
FrenchGithubUser added this pull request to the merge queue Jul 10, 2026
Merged via the queue into main with commit 065f7fb Jul 10, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants