From d73d0fc4c27aa44b5afefc189c1cb87796c2ffa9 Mon Sep 17 00:00:00 2001
From: Catalan Lover <48515417+FSG-Cat@users.noreply.github.com>
Date: Sun, 30 Mar 2025 18:52:53 +0200
Subject: [PATCH] =?UTF-8?q?Change=20mentions=20of=20Mj=C3=B6lnir=20to=20Dr?=
=?UTF-8?q?aupnir=20(#796)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cat ran into this funny leftover when validating if abuse reporting still works after Cats reworks in mdad. Turns out they do and as it was my first time using these flows Cat discovered this.
---
src/report/ReportManager.ts | 16 ++++++++--------
src/webapis/WebAPIs.ts | 6 +++---
test/integration/abuseReportTest.ts | 6 +++---
.../commands/hijackRoomCommandTest.ts | 2 +-
test/integration/commands/redactCommandTest.ts | 4 ++--
test/nginx.conf | 2 +-
6 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/src/report/ReportManager.ts b/src/report/ReportManager.ts
index c27625d0..e015373f 100644
--- a/src/report/ReportManager.ts
+++ b/src/report/ReportManager.ts
@@ -96,7 +96,7 @@ enum Kind {
MODERATION_REQUEST,
//! An abuse report, as per https://matrix.org/docs/spec/client_server/r0.6.1#post-matrix-client-r0-rooms-roomid-report-eventid
SERVER_ABUSE_REPORT,
- //! Mjölnir encountered a problem while attempting to handle a moderation request or abuse report
+ //! Draupnir encountered a problem while attempting to handle a moderation request or abuse report
ERROR,
//! A moderation request or server abuse report escalated by the server/room moderators.
ESCALATED_REPORT,
@@ -572,7 +572,7 @@ interface IUIAction {
/**
* A unique label.
*
- * Used by Mjölnir to differentiate the actions, e.g. `kick-user`.
+ * Used by Draupnir to differentiate the actions, e.g. `kick-user`.
*/
readonly label: string;
@@ -590,14 +590,14 @@ interface IUIAction {
readonly needsConfirmation: boolean;
/**
- * Detect whether the action may be executed, e.g. whether Mjölnir has
+ * Detect whether the action may be executed, e.g. whether Draupnir has
* sufficient powerlevel to execute this action.
*
* **Security caveat** This assumes that the security policy on whether
* the operation can be executed is:
*
* > *Anyone* in the moderation room and who isn't muted can execute
- * > an operation iff Mjölnir has the rights to execute it.
+ * > an operation iff Draupnir has the rights to execute it.
*
* @param report Details on the abuse report.
*/
@@ -902,7 +902,7 @@ class Help implements IUIAction {
))
) {
list.push(
- `
Some actions were disabled because Mjölnir is not moderator in room ${htmlEscape(report.room_alias_or_id)}`
+ `Some actions were disabled because Draupnir is not moderator in room ${htmlEscape(report.room_alias_or_id)}`
);
}
const body = ``;
@@ -911,7 +911,7 @@ class Help implements IUIAction {
}
/**
- * Escalate to the moderation room of this instance of Mjölnir.
+ * Escalate to the moderation room of this instance of Draupnir.
*/
class EscalateToServerModerationRoom implements IUIAction {
public label = "escalate-to-server-moderation";
@@ -1055,7 +1055,7 @@ class DisplayManager {
}
} catch (ex) {
eventContent = {
- msg: `.`,
+ msg: `.`,
};
}
@@ -1084,7 +1084,7 @@ class DisplayManager {
try {
eventTimestamp = new Date(event["origin_server_ts"]).toUTCString();
} catch (ex) {
- eventTimestamp = `.`;
+ eventTimestamp = `.`;
}
let title;
diff --git a/src/webapis/WebAPIs.ts b/src/webapis/WebAPIs.ts
index 6a9e5f0c..e467760e 100644
--- a/src/webapis/WebAPIs.ts
+++ b/src/webapis/WebAPIs.ts
@@ -221,7 +221,7 @@ export class WebAPIs {
// as this would let us read encrypted messages;
// - this client is torn down as soon as possible to avoid
// any case in which it could somehow be abused if a
- // malicious third-party gains access to Mjölnir.
+ // malicious third-party gains access to Draupnir.
//
// Rationales for using this mechanism:
//
@@ -233,7 +233,7 @@ export class WebAPIs {
// - identity-checking; and
// - features that are already available in the Synapse Admin API
// (possibly in the Admin APIs of other homeservers, I haven't checked)
- // so we are not extending the abilities of Mjölnir
+ // so we are not extending the abilities of Draupnir
// 3. We are avoiding the use of the Synapse Admin API to ensure that
// this feature can work with all homeservers, not just Synapse.
const reporterClient = new MatrixClient(
@@ -257,7 +257,7 @@ export class WebAPIs {
// IMPORTANT: The following call will return the event without decyphering it, so we're
// not obtaining anything that we couldn't also obtain through a homeserver's Admin API.
//
- // By doing this with the reporterClient, we ensure that this feature of Mjölnir can work
+ // By doing this with the reporterClient, we ensure that this feature of Draupnir can work
// with all Matrix homeservers, rather than just Synapse.
event = await reporterClient.getEvent(roomID, eventID);
}
diff --git a/test/integration/abuseReportTest.ts b/test/integration/abuseReportTest.ts
index 4affbf93..81d8e592 100644
--- a/test/integration/abuseReportTest.ts
+++ b/test/integration/abuseReportTest.ts
@@ -56,7 +56,7 @@ describe("Test: Reporting abuse", () => {
// are sent.
for (const endpoint of ["v3", "r0"]) {
it(
- `Mjölnir intercepts abuse reports with endpoint ${endpoint}`,
+ `Draupnir intercepts abuse reports with endpoint ${endpoint}`,
async function (this: DraupnirTestContext) {
this.timeout(90000);
if (this.draupnir === undefined) {
@@ -344,7 +344,7 @@ describe("Test: Reporting abuse", () => {
}
assert.deepEqual(found, reportsToFind);
- // Since Mjölnir is not a member of the room, the only buttons we should find
+ // Since Draupnir is not a member of the room, the only buttons we should find
// are `help` and `ignore`.
for (const event of reactions) {
const regexp = /\/([[^]]*)\]/;
@@ -417,7 +417,7 @@ describe("Test: Reporting abuse", () => {
await badUser.joinRoom(roomId);
await goodUser.joinRoom(roomId);
- // Setup Mjölnir as moderator for our room.
+ // Setup Draupnir as moderator for our room.
await moderatorUser.inviteUser(await draupnir.client.getUserId(), roomId);
await moderatorUser.setUserPowerLevel(
await draupnir.client.getUserId(),
diff --git a/test/integration/commands/hijackRoomCommandTest.ts b/test/integration/commands/hijackRoomCommandTest.ts
index c5f88153..dac3fbc1 100644
--- a/test/integration/commands/hijackRoomCommandTest.ts
+++ b/test/integration/commands/hijackRoomCommandTest.ts
@@ -14,7 +14,7 @@ import { getFirstReaction } from "./commandUtils";
import { DraupnirTestContext, draupnirSafeEmitter } from "../mjolnirSetupUtils";
describe("Test: The make admin command", function () {
- it("Mjölnir make the bot self room administrator", async function (
+ it("Draupnir make the bot self room administrator", async function (
this: DraupnirTestContext
) {
this.timeout(90000);
diff --git a/test/integration/commands/redactCommandTest.ts b/test/integration/commands/redactCommandTest.ts
index 38802e5d..3e5090cb 100644
--- a/test/integration/commands/redactCommandTest.ts
+++ b/test/integration/commands/redactCommandTest.ts
@@ -31,7 +31,7 @@ describe("Test: The redaction command", function () {
});
it(
- "Mjölnir redacts all of the events sent by a spammer when instructed to by giving their id and a room id.",
+ "Draupnir redacts all of the events sent by a spammer when instructed to by giving their id and a room id.",
async function (this: RedactionTestContext) {
this.timeout(60000);
// Create a few users and a room.
@@ -139,7 +139,7 @@ describe("Test: The redaction command", function () {
);
it(
- "Mjölnir redacts all of the events sent by a spammer when instructed to by giving their id in multiple rooms.",
+ "Draupnir redacts all of the events sent by a spammer when instructed to by giving their id in multiple rooms.",
async function (this: RedactionTestContext) {
this.timeout(60000);
// Create a few users and a room.
diff --git a/test/nginx.conf b/test/nginx.conf
index 9692191a..98105c3d 100644
--- a/test/nginx.conf
+++ b/test/nginx.conf
@@ -12,7 +12,7 @@ http {
location ~ ^/_matrix/client/(r0|v3)/rooms/([^/]*)/report/(.*)$ {
mirror /report_mirror;
- # Abuse reports should be sent to Mjölnir.
+ # Abuse reports should be sent to Draupnir.
# The r0 endpoint is deprecated but still used by many clients.
# As of this writing, the v3 endpoint is the up-to-date version.