Complete M11 Creator Studio and M12 Trust & Safety for PC5
checkpoint / checkpoint (push) Failing after 3h14m9s

- Creator Studio: Visual behavior & property inspector, GLB model importer, binary persistence
- Trust & Safety: 18+ TOS confirmation (DOB removed), creator guidelines & briefing card on join, in-game reporting HUD
- Test Harness: Add --filter, --skip-backend, --skip-godot to run_checkpoint_tests.py
This commit is contained in:
2026-09-17 23:13:57 +00:00
parent 920354705a
commit 7ecf0d53bd
30 changed files with 2099 additions and 157 deletions
+42
View File
@@ -199,3 +199,45 @@ class TestModerationQueue:
# Attempting to use bad_user's token fails with 403 inactive account
bad_me = client.get("/api/users/me", headers=bad_user["headers"])
assert bad_me.status_code == 403
def test_submit_world_and_user_moderation_report(self):
"""Test submitting general moderation reports for worlds and users."""
client = TestClient(app)
reporter = _register(client, "gen_reporter")
admin = _register(client, "admin_gen_mod")
# Report a world
world_rep = client.post(
"/api/moderation/reports",
headers=reporter["headers"],
json={
"target_type": "world",
"target_id": 42,
"reason": "Violates world guidelines",
"category": "world_rules",
},
)
assert world_rep.status_code == 201, world_rep.text
assert "[WORLD:42]" in world_rep.json()["reason"]
# Report a user
user_rep = client.post(
"/api/moderation/reports",
headers=reporter["headers"],
json={
"target_type": "user",
"target_id": 99,
"reason": "Harassment in world",
"category": "harassment",
},
)
assert user_rep.status_code == 201, user_rep.text
assert "[USER:99]" in user_rep.json()["reason"]
# Admin lists open reports and sees both
rep_list = client.get("/api/moderation/reports", headers=admin["headers"])
assert rep_list.status_code == 200
reasons = [r["reason"] for r in rep_list.json()]
assert any("[WORLD:42]" in r for r in reasons)
assert any("[USER:99]" in r for r in reasons)