-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdiff.txt
More file actions
173 lines (158 loc) · 12.3 KB
/
diff.txt
File metadata and controls
173 lines (158 loc) · 12.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
diff --git a/MathProblemCache1.db b/MathProblemCache1.db
index a2f329d..3c02b75 100644
Binary files a/MathProblemCache1.db and b/MathProblemCache1.db differ
diff --git a/PRIVACY_POLICY.md b/PRIVACY_POLICY.md
index 8ba0373..7a3c649 100644
--- a/PRIVACY_POLICY.md
+++ b/PRIVACY_POLICY.md
@@ -1,6 +1,6 @@
# Privacy policy
## Disclaimers and stuff
-Disclaimer: I am not a lawyer. I am only a student, as of January 4, 2024. If you want legal advice, please ask a real lawyer.
+Disclaimer: I am not a lawyer. I am only a high school student, as of January 4, 2024. If you want legal advice, please ask a real lawyer.
Disclaimer 2: I did not consult any lawyers or get any legal advice while writing this privacy policy.
Most of the content in this privacy policy should be self-explanatory. (Write to me if it isn't!)
@@ -13,13 +13,19 @@ The only data we'll store about you without your consent is whether you're black
"me/I" means @rf20008 (however, when there are more maintainers, this will definitely change)
+
## Why I store your data
Storing data you voluntarily submit to the bot, and data from the Discord API, is required for this bot to work.
## What data I store through this application
-Data I store through this application include data from the Discord API, problems submitted, quizzes submitted, quiz problems submitted, deletion votes to problems, quiz submissions submitted. We may also store quiz gradings (and comments).
+Data I store through this application include data from the Discord API, problems submitted, quizzes submitted, quiz problems submitted, deletion votes to problems, quiz submissions submitted. We may also store quiz gradings (and comments).
+
+# Licenses you give me
+As mentioned in my terms of service, I mentioned that whenever you give me things I or my bot needs to process, you provide me and my bot a perpetual, survival, irrevokable, worldwide, royalty free, license with enough rights to do the things that I and my bot might need to do.
+However, you don't necessarily transfer ownership to me, and you still get credit for this problem wherever the bot shows it
+Also, the license you give me will survive the termination of this bot and/or your relationship with me.
## Disclosure of your data
diff --git a/TERMS_AND_CONDITIONS.md b/TERMS_AND_CONDITIONS.md
index ac84d6b..b994f77 100644
--- a/TERMS_AND_CONDITIONS.md
+++ b/TERMS_AND_CONDITIONS.md
@@ -236,16 +236,20 @@ Finally, you must not even distribute NSFW or NSFL content on my bot, because yo
* "you" refers to any user of this bot, or any entity that accesses any part of The Discord Math Problem Bot in such a way that these Terms apply, or both. <br>
* "NSFW" stands for *N*ot *S*afe *F*or *W*ork.
* "NSFL" stands for *N*ot *S*afe *F*or *L*ife.
+* "personal private information" refers to information about a permission that is private, such as, but NOT LIMITED TO, home and email addresses, age, grade, card numbers, financial things, government issued ID numbers (and ID numbers in general), dates of birth, and phone numbers.
+* "Full informed voluntary consent" refers to consent that has been obtained voluntarily, that is without any coercion or any other kind of forcing, that is informed, that is, the entity you are seeking consent knows all the information, including the potential consequences, risks, rewards, and other things, and that is full (nothing has been left out).
+* "Doxxing" refers to the act of spreading personal private information about someone without their full informed voluntary consent.
## 2: Rules/things I have the right to do.
Trusted users (including me) reserve the right to deny-list users from the official instance of the bot for many reasons, including:
<ul>
-<li> Sending NSFW/NSFL content through problems </li>
+<li> Sending NSFW/NSFL content through problems (or through any other kind of communication channel on my bot) </li>
<li> Submitting copyrighted problems that are reported (or that they find)</li>
<li> Spamming the bot. The bot might ban you for spamming.</li>
<li> Disrespecting/targeting/etc... people through problems.</li>
<li> Exploiting bugs instead of reporting them. </li>
-<li> Using my bot to violate Discord's Terms of Service directly, or causing my bot to violate Discord's Terms of Service in such a way that is your fault</li></ul>
+<li> Using my bot to violate Discord's Terms of Service directly, or causing my bot to violate Discord's Terms of Service in such a way that is your fault</li></ul>
+<li> Doxxing people through any kind of communication channel through my bot </li>
<!---Note that the space prevents errors--->
Trusted users retain the right to use their own discretion about whether to ban a person.
Moreover, trusted users are not contractually required by these Terms to deny-list users who break either these Terms or Discord's Terms.
@@ -260,7 +264,22 @@ The trusted users/guild administrators (if the problem isn't global) also have t
</ul> People with the authority to delete problems reserve the right to use their own discretion on whether to delete a problem or not. (This covers edge cases!)
I also do not have control over guild administrators (as they are not me). They can enforce their own rules on which problems are acceptable.
-
+### 2.1: A section about doxxing
+A general rule: You must not doxx anyone, including yourself, at any time! The **only** exception is when you achieve explicit written fully informed voluntary consent from the person you want to doxx.
+I advise the following: You should not even ask for consent to doxx someone, because it's extremely embarrassing and highly unethical.
+Also, when you ask for their consent, you must provide warnings such as the following:
+# 2.1.1: Warnings about doxxing you should provide
+* Beware: Doxxing is irreversible. It's very, very, very, very challenging to remove things from the Internet, and people might take screenshots, and do things. Deleting this might not be enough! YOUR DATA MIGHT STILL BE OUT THERE!!!!
+* Beware: When you are doxxed, your information is out there! People can do malicious things with it! They could go up to your house, they could spam your email, harrass you, impersonate you, or do similar evil things to you. (In no way am I condoning those activities.)
+* Beware: Depending on how you got the information, doxxing might be illegal! (Source: https://www.avg.com/en/signal/what-is-doxxing)
+* Beware: Doxxing can have a larger impact on the person who got doxxed's friends, family, and other close relationships.
+* Beware: Even if you obtain their consent before doxxing, you may still be punished.
+# 2.1.2: "I got doxxed! What can I do"?
+If you get doxxed, but not through my bot, then I can't help you. It is your responsibility to handle being doxxed (telling law enforcement authorities, blocking the person who doxxed you, reporting them, etc).
+If, however, it is through my bot, you should still pursue those activities (telling law enforcement, gathering evidence, blocking the person who doxxed you, reporting them, and things like that). Also, you should contact me ASAP. Be warned: I am still a high school student as of June 8, 2024. I do not know internet law. I might not see your message or respond to it, or be aware of it. I might not be able to help you. I might not be willing to help you (it's not that I have bad morals, but I might have homework to do, or other things.)
+
+Upon discovery, if you doxx someone, you will probably be immediately denylisted. Also, there are harsher consequences, including legal consequences, that you may be subject to.
+Also, you will probably be reported to Discord. I will not write more about this, because I am not a lawyer, and I do not know internet law.
## 3: Disclaimers (because they don't belong in the Privacy Policy)
### 3.1: NOT-A-LAWYER-DISCLAIMER
@@ -288,7 +307,7 @@ In most serious scenarios, the law would supersede this policy. I would still be
### 3.3: COPYRIGHT DISCLAIMER
When you submit anything that The Discord Math Problem Bot needs to process (i.e: problems, quizzes, appeals, responses, solutions) to this bot, you (the user of the bot) give me (ay136416 / rf20008) a perpetual, royalty-free, worldwide, non-revocable, etc. license with enough rights to allow me to use this bot to process, store, show, etc. the problem in order for the bot to function properly. However, you don't necessarily transfer ownership to me, and you still get credit for this problem wherever the bot shows it.
-Also, the license you give me will survive the termination of this bot.
+Also, the license you give me will survive the termination of this bot and/or your relationship with me.
## 4: Selling stuff
Notwithstanding the relevant portions of the GPLv3 and applicable law, you must not sell things related to my bot.
@@ -325,6 +344,9 @@ You must not sell NSFW/NSFL content anywhere on my bot. You may (and probably wi
Also, you will probably be reported to Discord.
Finally, you must not even distribute NSFW or NSFL content on my bot, because you will be subject to the same punishments (a possible denylist and being reported to Discord). There are harsher consequences, and you may be subject to them.
+
+### 4.4: Additional Monetization rules
+You must not monetize my bot without my explicit written permission that you must obtain beforehand (you cannot monetize my bot first, then ask me for permission later); this section does not override the other subsections of section 4, but it applies in addition to the other rules I set out.
## 5: When the law complicates stuff & Severability
When the law complicates stuff & it invalidates parts of these Terms, only the smallest part that, when removed, makes the law not complicate **stuff and makes the rest of the Terms invalid, will be removed from the Terms.
diff --git a/diff.txt b/diff.txt
index 86249bb..6aa4279 100644
--- a/diff.txt
+++ b/diff.txt
@@ -1,62 +0,0 @@
-
--diff --git a/cogs/debug_cog.py b/cogs/debug_cog.py
--index c92cd10..db26fc5 100644
----- a/cogs/debug_cog.py
--+++ b/cogs/debug_cog.py
--@@ -36,7 +36,7 @@ from helpful_modules.threads_or_useful_funcs import (
-- log_evaled_code,
-- file_version_of_item
-- )
---import orjson
--+from helpful_modules.paginator_view import PaginatorView
--
-- from .helper_cog import HelperCog
-- from .interesting_computation_ import InterestingComputationCog
--@@ -104,14 +104,32 @@ class DebugCog(HelperCog):
-- except BaseException as e:
-- new_stderr.write("".join(format_exception(e)))
-- err = None
--- await inter.send(
--- embed=SuccessEmbed(
--- f"""The code was successfully executed!
--+ text = f"""The code was successfully executed!
-- stdout: ```{new_stdout.getvalue()} ```
-- stderr: ```{new_stderr.getvalue()} ```"""
--- ),
--- ephemeral=ephemeral,
--- )
--+ if len(text) <= 4096:
--+ await inter.send(embed=SuccessEmbed(text), ephemeral=ephemeral)
--+ else:
--+ await inter.response.defer()
--+ stdout_pages = PaginatorView.break_into_pages(new_stdout.getvalue(), max_page_length=2994)
--+
--+ for i in range(len(stdout_pages)):
--+ stdout_pages[i] = f"```{stdout_pages[i]}```"
--+ if stdout_pages:
--+ stdout_pages[0] = "Stdout: " + stdout_pages[0]
--+ else:
--+ stdout_pages = ["Stdout: ``` ```"]
--+ stderr_pages = PaginatorView.break_into_pages(new_stderr.getvalue(), max_page_length=2994)
--+ for i in range(len(stderr_pages)):
--+ stderr_pages[i] = f"```{stderr_pages[i]}```"
--+ if stderr_pages:
--+ stderr_pages[0] = "Stderr: " + stderr_pages[0]
--+ else:
--+ stderr_pages = ["Stderr: ``` ```"]
--+ all_pages = []
--+ all_pages.extend(stdout_pages)
--+ all_pages.extend(stderr_pages)
--+ await inter.send(view=PaginatorView(user_id=inter.author.id, pages=all_pages))
-- new_stdout.close()
-- new_stderr.close()
-- if err is not None:
--@@ -190,7 +208,7 @@ class DebugCog(HelperCog):
-- await inter.send(
-- "The result is in the attached file!",
-- ephemeral=ephemeral,
--- file=file_version_of_item(result, "sql_result.txt")
--+ file=file_version_of_item(str(result), "sql_result.txt")
-- )
-- return
--