aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub/api/moderation.py
diff options
context:
space:
mode:
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub/api/moderation.py')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/api/moderation.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/api/moderation.py b/packages/meshbay-hub/src/meshbay_hub/api/moderation.py
index 038f310..ecca4df 100644
--- a/packages/meshbay-hub/src/meshbay_hub/api/moderation.py
+++ b/packages/meshbay-hub/src/meshbay_hub/api/moderation.py
@@ -244,6 +244,7 @@ async def admin_list_blocklist(
db: AsyncSession = Depends(get_db),
limit: int = 500,
):
+ """The content blocklist."""
result = await db.execute(
select(ContentBlocklist)
.order_by(ContentBlocklist.added_at.desc())
@@ -269,6 +270,7 @@ async def admin_add_blocklist(
current_user: User = Depends(require_admin),
db: AsyncSession = Depends(get_db),
):
+ """Add a content hash (BLAKE3) to the blocklist."""
if not _is_hash(body.content_hash):
raise HTTPException(status_code=422, detail="content_hash must be 64 hex chars (blake3)")
existing = await db.get(ContentBlocklist, body.content_hash)
@@ -291,6 +293,7 @@ async def admin_remove_blocklist(
current_user: User = Depends(require_admin),
db: AsyncSession = Depends(get_db),
):
+ """Remove a content hash from the blocklist."""
entry = await db.get(ContentBlocklist, content_hash)
if not entry:
raise HTTPException(status_code=404, detail="Hash not in blocklist")
@@ -344,6 +347,7 @@ async def admin_block_reported(
current_user: User = Depends(require_admin),
db: AsyncSession = Depends(get_db),
):
+ """Block reported content and close its reports."""
await _decide(db, content_hash, "blocked", current_user.username)
reasons = Counter((await db.execute(select(ContentReport.reason).where(
ContentReport.content_hash == content_hash))).scalars().all())
@@ -363,6 +367,7 @@ async def admin_dismiss_reported(
current_user: User = Depends(require_admin),
db: AsyncSession = Depends(get_db),
):
+ """Dismiss the reports on a piece of content."""
await _decide(db, content_hash, "dismissed", current_user.username)
await db.commit()
return {"status": "dismissed", "hash": content_hash}