Discord Messages

From neuromatch

22-12-09

sneakers-the-rat#wikibot22-12-09 11:34:07
sneakers-the-rat#wikibot22-12-09 11:39:41
sneakers-the-rat#technical-wg22-12-09 11:40:14

beepalabeep da beep beep Here We Go

sneakers-the-rat#wikibot is alive22-12-09 11:45:31

Beepalabeep da da deep Here We Go#Section

sneakers-the-rat#wikibot is alive22-12-09 11:46:55

Beepaleepalabeep da deep deep Here We Go#Theme Song: https://youtu.be/7hT04AB1JU4

sneakers-the-rat#technical-wg22-12-09 11:52:48

So anyway TODO Document the WikiBot

sneakers-the-rat#This is a test. Forum channels are new to discord. Let's test the features together!22-12-09 12:07:42

<@827519038120132608> also re: memory and bridging between the garden and the stream or whatever metaphor ya want, you should check out WikiBot#Purpose

sneakers-the-rat#This is a test. Forum channels are new to discord. Let's test the features together!22-12-09 12:10:47

as u talk about stuff you can tag in various concepts like Institutional Memory or if your working group is organized you can even tag in specific projects and Todo lists or just use it to bookmark conversations so you have an indexical/plastic memorybank alongside a fluid/streamlike mode of communication. the cscw ppl in the workshop we did a month or so ago went bananas for this lol it is good

sneakers-the-rat#technical-wg22-12-09 12:28:39

up to y'all but all I'll say is we did indeed already start one and The Wiki Is Happening feat. The Wiki Waits For No One WikiParables

sneakers-the-rat#wiki22-12-09 12:37:58
sneakers-the-rat#wiki22-12-09 12:38:45

Wiki#TODO Clean up link to Wiki/TODO and write some docs on Wikibot#Usage Patterns

mstimberg#wiki22-12-09 20:16:00

Re Wiki/TODO#Onboarding: I migrated earlier today and took some notes, happy to add them to the wiki – I'd need someone to approve my account (`mstimberg`), though 😊


22-12-10

sneakers-the-rat#Blocklist22-12-10 05:22:08

Mastodon/Social WG#TODO - discuss the Defederated Instances#Instances To Discuss - decide what we want to do with edge cases/cases where we already had a number of people following people from these instances

sneakers-the-rat#technical-wg22-12-10 06:24:49

Mastodon/Tech WG#TODO: Change the favicon i have way too many instances open in my tabs for this


22-12-12

sneakers-the-rat#mathjax22-12-12 08:37:18

Aight i'm totally flummoxed about how to get Mastodon/Mathjax#Stumpted to load. it <really really> wants you to use the <script> tag loading method, which i would rather not do since that makes it way less portable or else requires a call-out to an external CDN, but I can't get the startup functions to trigger programmatically, and i've tried all the various things in their docs as well as some other stuff that isn't. I am tempted to just rewrite the mathstodon stuff using a react component that i was able to find but idk <@451520217139511306> u know anything else about this?

sneakers-the-rat#general22-12-12 12:03:08

this week is a good week to finish our rules, instance description, invite statement and make a mass coordinated announcement ♥️♥️♥️😘😘😘 in cooperation, towards information liberation!!!!!

pls join us in conversations in <#1050561894752198706> if you are so inclined 🙂

Mastodon/Seed Council#TODO

https://open.spotify.com/track/0fEasSvs63eKApKfYbi2uD

sneakers-the-rat#technical-wg22-12-12 18:51:13
sneakers-the-rat#mathjax22-12-12 20:53:43

Mastodon/Mathjax: information in this thread about different possible implementation approaches

Mastodon/Hacking#Dev Environment: Details on setting up Vagrant for local development

Wikibot#TODO: implement n-back archiving of threads and previous posts, the parser already supports it


22-12-14

sneakers-the-rat#Perf & Resource Management22-12-14 08:21:18

Mastodon/Tech WG#TODO Mastodon/Storage#TODO investigate Wasabi for storage 🙂


22-12-15

sneakers-the-rat#technical-wg22-12-15 21:59:34

Mastodon/Tech WG#TODO change default email notifications to turn off new follow notifs

sneakers-the-rat#social-wg22-12-15 22:54:47

Mastodon/Social WG#TODO: Once we have rules and about and more of a mod team set up we should ask to be put on fediscience's instance list Fediverse Indexes

sneakers-the-rat#wiki22-12-15 22:57:13

Mastodon/Tech WG#TODO: - Fix semantic wikilinks in the WikiBot#TODO, - Allow `:` prefixed wikilinks to link to a page without embedding the post in that page (and then ofc stripping the colon) - this would trade off with n-back wikilinks because it wouldn't make sense to archive a series of posts at the same time as not embedding the posts into a page


22-12-16

sneakers-the-rat#ratelimiting22-12-16 23:37:02

Mastodon/Rate Limits: For the record the rate limits are - Per account and per IP: 300 requests per 5 minutes - Upload media: 30 times in 30 minutes - Delete posts: 30 times in 30 minutes - Creating accounts: 5 times in 30 minutes. https://docs.joinmastodon.org/api/rate-limits/

and a lot of methods through the UI call the API under the hood


22-12-17

sneakers-the-rat#Finances22-12-17 00:07:49

For the moment, until we decide on a different model, neuromatch bears the costs of the instance. Though we trust neuromatch to not abuse that power, one question we should answer as a community is whether we want to move to a fully cooperative model where the members of the instance support its costs so it is truly member-owned and operated. That would likely look like some sliding scale model where members are encouraged to pay what they can, a rough guideline based on nothing but vibes might be: - $0/mo for students/people making <$50k annually - $1/mo for postdocs/people making <$75k annually - $5/mo for PIs/people making >$75k annually though this would be something we would determine based on how many members we have and how much the instance costs to run. If we were to do this, then we would use opencollective to make our finances transparent.

We could also do a hybrid model where neuromatch kicks in some defined contribution and the members donate the rest, or if we establish a financial working group we could collectively apply for grants with neuromatch as a fiscal sponsor.

Another benefit is that by having some financial surplus we would be able to pay stipends to people who volunteer for mod duty/being on call for tech emergencies.

In the meantime though, mostly so the <#1049184335514828860> knows what it's working with: what kind of costs is neuromatch willing to bear? eg. upgrading to a 16GB ram node with 8 dedicated CPUs would be $120/month but would probably be as much scale as we need for the indefinite future. Currently we are going to upgrade to an 8GB ram node at $60/month, which is already $720 annually (just for the instance, we are also running another node that will host the wiki and loomio) <@215274946560131074> Mastodon/Finances

sneakers-the-rat#techwg-ops22-12-17 06:19:24

Tech WG/Ops Diary#22-12-16 Upgrading Linode Ram Mission accomplished. by god we've done it

sneakers-the-rat#technical-wg22-12-17 22:13:21


22-12-18

sneakers-the-rat#technical-wg22-12-18 00:23:06

Mastodon/Tech WG#TODO Translation services! can we do something like Kolektiva does: https://kolektiva.social/@subMedia/109531114768269437 isn't there some fancy new offline/self-contained translation network thing??? I don't want to make any calls to Google from the instance but translation would be great

sneakers-the-rat#technical-wg22-12-18 21:14:38

Mastodon/Tech WG#TODO: why are follow buttons not present for all instances for user accounts on the notification feed?


22-12-21

sneakers-the-rat#new-fedis22-12-21 17:49:16

so! the "local" feed is the one that shows all the toots from our instance, the "federated" feed shows all toots from everyone that everyone on the instance follow. "local-only toots" are a special feature of glitch-soc where you can make your post *only* visible to the other members of the instance (in base masto you can only limit to mentioned accounts or followers). Local feed also will show you boosts from people on our instance, I'm not sure if there's a way to turn that off but if there isn't there should be bc that would be nice

Mastodon/Social WG#TODO: guides on how the different Mastodon/Feeds and Mastodon/Post Visibility work

sneakers-the-rat#Paper thread bot22-12-21 18:13:43

Paper Thread Bot the thread is here


22-12-22

sneakers-the-rat#technical-wg22-12-22 18:51:13

Mastodon/Tech WG#TODO: Secrets manager/password manager so we can have shared accounts better 🙂


22-12-24

mannaz#change default email notifications to turn off follow notifs22-12-24 09:07:52

Mastodon/Tech WG#Done changed default email notifications in config/settings.yml to turn off new follow notifs and restarted services


22-12-25

sneakers-the-rat#techwg-ops22-12-25 01:59:05

OK Tech WG/Ops Diary#22-12-24 going to pull in a few upgrades: https://github.com/NeuromatchAcademy/mastodon/pull/7

  • Mathjax
  • Larger Post Previews
  • Default false notifications for new follows
  • Autofollow accounts

And also pulling in updates from upstream glitch-soc, which in my test run means that we have to upgrade node from 14 to 16


22-12-26


22-12-27

sneakers-the-rat#technical-wg22-12-27 19:53:46
sneakers-the-rat#technical-wg22-12-27 20:04:22

also need general Ruby dev stuff, like a Masto Code Structure overview, which I'm feeling more and more capable of doing, and I have been doing on my personal wiki and could export over. still need to figure out how to write tests but yes I think I have gotten the big chunks of how stuff works. the Rails <-> Redux <-> React stuff still sorta eludes me, esp how it's "supposed" to be done in the program because I have more experience with react and you can do a lot of uh web app stuff with it that could also be done with rails (tho a lot of their components are a) written in the old object style which I find sorta clumsy after converting to the function style and b) actually pretty imperative for a declarative framework, which makes stuff difficult)


22-12-29

sneakers-the-rat#social-wg22-12-29 00:22:33

the DOI thing I think will only take an hour or two more, and then yeah will be adapting some of the WikiBot code that runs on this discord already to do an agora-like thing. I've talked to flancian about this as well a bunch of times, unifying the agora bots and making a general framework for that kind of cross platform linking

sneakers-the-rat#social-wg22-12-29 00:24:51

yes! this is definitely the idea with the WikiBot: capture links in situ for reminders and backlinks, but then have them be part of the wiki that can be curated down rather than just being the raw content of the post forever. Need to fix up the css for representing posts on the wiki to make them a little less obtrusive, but then yeah they can be hidden or collapsed once the page matures.

sneakers-the-rat#social-wg22-12-29 00:27:20

we've talked about this as well, being able to make the bot more granularly opt-in, as well as make some simple degeneracy rules like #CamelCase == Camel Case (actually proposed that probably to no result in masto here: https://github.com/mastodon/mastodon/issues/19992#issuecomment-1363496984 )


23-01-02

sneakers-the-rat#technical-wg23-01-02 22:37:52

<@540104559079456770> I think you should have permissions to do a code review on the PR itself, do you know how to do one of those? we should add that to the Hack Merging Policy - a guide on how to do code review. Mastodon/Tech WG#TODO

sneakers-the-rat#technical-wg23-01-02 22:39:57

<@863052667857534996> do y'all have anything like this for the pyopensci stuff? like a "make a feature branch off dev, make a pull request back to dev, during a code review, look for xyz" then we will also need stuff like how to do the merge and update the instance Hack Merging Policy Updating Mastodon Code Review


23-01-20


23-01-26

sneakers-the-rat#introductions23-01-26 03:58:14

great! let me plant a bookmark on the wiki to remind me to fill in this information when I get internet at my new place & can edit it. Accessibility#Disabling Motion Discord#Accessibility


23-02-02

sneakers-the-rat#questions23-02-02 03:11:06

Ah yes, this is a Consensus thing. I just updated the wiki page to explain a bit better: https://wiki.neuromatch.io/Mastodon/Governance#Voting Yes, you can think of it analogously to a veto. Consensus refers both to making decisions that accommodate the needs of all members as well as consent - you should not be able to be coerced into consent by a bare majority of people. In more intimate consensus processes, a single person might be able to block a proposal. That becomes untenable in larger groups for sort of obvious reasons, hence the design of this governance system to have different proportional thresholds for different types of proposals, as well as division of decisionmaking power between working groups and the general membership.

A block means something different than voting in a few ways, including that blocks should be rare: consensus sort of inverts the decisionmaking process, where care should be taken to discuss with the membership and refine a proposal before, rather than after making the proposal - so in a majoritarian system one might make a proposal and make an argument in favor, people discuss in the comments and then make up their minds there. The purpose of requiring discussion beforehand is to make more space for everyone to craft the proposal in the first place, register concerns, etc. So if people are blocking a proposal, that is a sign that the process has failed (as opposed to in a majoritarian system that the proposal has failed).

Blocking also typically enjoins the person blocking to help remedy the reason for their block: if a proposal is being made in good faith, we assume that it is meeting some unmet need by the proposer/other members. If someone blocks a proposal, that will mean that it might cause them or the organization harm, but those unmet needs still remain - so it's basically like conflict res at that point. Ofc there are exceptions like not making marginalized ppl do additional labor, etc.


23-02-07

sneakers-the-rat#general23-02-07 04:15:02

i think it would be cool if we could pay a member or two to hack on the instance!! we could take proposals on what ppl would like to see improved that guide what they are working on so we actually can resolve some of the many tiny things littering our Mastodon/TODO and maybe even one or two big things like finally doing DIY Algorithms or Nested Threads or whatnot. Grants Mastodon/Grants


23-02-08

sneakers-the-rat#Nested Threads23-02-08 06:54:02

Nested Threads Grab the parent post in this^^


23-03-10

sneakers-the-rat#technical-wg23-03-10 07:10:00

I just had a good idea I think: Mastodon/Hacks#Ideas Zenodo Social Reading https://neuromatch.social/@jonny/109997725222638244

> ok you know what would actually rock: a #Zenodo plugin where you could sync a collection to an #ActivityPub outbox, and do social public highlighting that way - share a set of papers under a topic for ppl to browse, but also share your annotations and then be able to show your friends annotations over the papers you're reading if u want to

  1. MastoHacks #MastoDev


23-03-18

sneakers-the-rat#testing23-03-18 21:48:09

@lina gathering some stuff here: Mastodon/Tests Mastodon/Tech WG Exclusive Lists Ruby Spec Ruby spec for home feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/home_feed_spec.rb for public feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/public_feed_spec.rb that gives more examples on how feeds are supposed to be filtered tag feed: https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/tag_feed_spec.rb in case we might want to add exclusive tag feeds (I personally do, self interested bc monsterdon lol) account filter (looks like for blocks): https://github.com/NeuromatchAcademy/mastodon/blob/main/spec/models/account_statuses_filter_spec.rb

and so on

the question to me is basically how these things are structured: you have some fabricator steps that set up the conditions for the test, but then you also have these `context` statements that looks like plain English strings to me? like how do those and the `describe` fields map onto the code? like is their testing system so good that you can really just write `it {is_expected.to be_filtered }` and that just works???? or how do you define all those.

Also u mentioned they are using a separate JavaScript testing framework? Jest ? that looks like it's configured here: https://github.com/NeuromatchAcademy/mastodon/blob/main/jest.config.js and doesn't cover the glitch flavours, just the mastodon folder. it seems like that is for testing the appearance and function of the JS? not sure how it interacts with the ruby tests.

So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.


23-03-23

sneakers-the-rat#Will we allow bots on this instance?23-03-23 15:11:22

re: PaperBot we also had talked about DOI Search and resolving urls to DOIs and embedding them in the JSON-LD. the DOI Search should actually be super easy if we do it by altering the hashtag regex. doing it by making it an additional search type would take a little more, as would doing automatic dereferencing, but all those sound like fun to me


23-03-24

sneakers-the-rat#social-wg23-03-24 19:47:11

Mastodon/Social WG Moderated Instances

new reports include a few spam accounts from mastodon.top, looks like a big general instance, though I can't actually see it because their certs are broken. going to ban the reported accounts and put the instance on notice, raising here in case anyone has any input on the instance


23-03-30

sneakers-the-rat#techwg-ops23-03-30 04:49:04

ok Tech WG/Ops Diary#23-03-29: going to pull in dev branch and deploy to tha server: https://github.com/NeuromatchAcademy/mastodon/pull/13

I thought this had fetch all replies in it but i need to rebase it and also now that we know how to write them i want to write some tests....

It does have Better Code Blocks in it from <@485848481995423755> : https://github.com/NeuromatchAcademy/mastodon/pull/9

wish e luck


23-04-01

sneakers-the-rat#Supporting NMA/NMC23-04-01 22:32:47

QUESTION isn't NMA coming up? and maybe NMC at some point???? how can the instance support that????? can we make some cool pages for people to share their code or whatever, index the talks in a conference, etc???? I have posted a few ideas before in the neuromatch slack but wanted to pose this generally to the instance and see if we can yno use that as a motivating reason to do some masto hacking tagging the neuromatch ppl I know are on the discord <@540104559079456770> <@1050459047582781480> <@215274946560131074> <@651480296415297553> and who else sorry I don't have a list Mastodon and Neuromatch Neuromatch and Mastodon (idk lol I'll just redirect one page to another) Infrastructure


23-04-02

mannaz#Supporting NMA/NMC23-04-02 04:35:46

NMA is from July 10-28, Climatematch Academy CMA is for 2 weeks from July 17-28. Not sure about NMC dates for this year.


23-04-06

sneakers-the-rat#technical-wg23-04-06 23:26:09

So Masto Docs Rate Limiting is controlled by Rack Attack - https://github.com/NeuromatchAcademy/mastodon/blob/main/config/initializers/rack_attack.rb - logging: https://github.com/NeuromatchAcademy/mastodon/blob/main/config/initializers/rack_attack_logging.rb - docs: https://github.com/rack/rack-attack#throttling

The throttling rules differentiate between authenticated and unauthenticated API requests, so I would want to raise the authenticated ones. Unfortunately the logging does not actually tell me what *kind* of throttle is being hit (eg. the authenticated api vs token api vs paging api, etc.) and the throttling rules definitely overlap with one another... so I'm going to make that change first - log the kind of throttle that is hit, and then come back later and actually adjust values


23-04-25

mannaz#techwg-ops23-04-25 12:52:00

Tech WG/Ops Diary#23-04-25: restarted systems services as we were hitting swap limits https://neuromatch.social/@manisha/110259466647197417


23-04-27

sneakers-the-rat#technical-wg23-04-27 04:17:50

sidenote I just looked at the channel member list and holy crap wikibot are you still alive WikiBot Checkup


23-05-04

mannaz#social-wg23-05-04 14:48:37

Mastodon/Social WG Getting hit with a lot of crypto spam reports from mastodon.social today. Some instances are temporarily limiting m.s till their mods wake up.


23-05-20

sneakers-the-rat#techwg-ops23-05-20 05:46:32

Tech WG/Ops Diary#23-05-19: We are attempting to Upgrade Mastodon to 4.1.2 and also merge in Exclusive Lists, wish us luck.

We begin with what is probably the worst way to do it based on the conversation in <#1049184335514828860> , specifically:

  • main -> dev,
  • upstream -> dev,
  • dev -> pr,
  • pr -> dev,
  • dev -> main

https://discord.com/channels/1049136631065628772/1049184335514828860/1109355378178789396

sneakers-the-rat#technical-wg23-05-20 08:29:54

ok Tech_WG/Ops_Diary#23-05-19: We conclude this evening having gotten all the way to the last stage where we pull back to main and then deploy. see preceding chat logs for history and also for the millionth time WikiBot#TODO implement archiving ranges of posts


23-05-23

sneakers-the-rat#techwg-ops23-05-23 01:35:39

Tech WG/Ops Diary#23-05-22: What up it's me and we're about to deploy Exclusive Lists and update to 4.1.2. starting by making a linode backup and then following instructions on https://github.com/mastodon/mastodon/releases/tag/v4.1.2


23-05-31

mannaz#Open Infra Grant23-05-31 23:55:22

Those are great ideas!! We'd shared some of these on the NM conference channel as well and there is definitely some interest around it. So this is exciting!

> forum mode! one thing I would love is for NMS to be a place where non-neuroscientists can come and ask questions of neuroscientists... Yess! I've also been thinking of how to break down the barriers between scientists and non-scientists in general and for the NM and climatematch communities. Currently if anyone wants to be a part of the NM/CM community they need to be actively involved with it somehow -- as a student/TA/conference presenter/organizer/mentor/volunteer/... but with NMS anyone whose interests and values align is welcome to join us and hang out with a bunch of scientists. NMS is a low barrier entry to the community and expands the scope of the community!

I think forums would be great for the Knowledge Group Knowledge Club that we've discussed [here](https://discord.com/channels/1049136631065628772/1049184264832417823/1106307113359265932) and looks like there is interest for it in even outside of neuroscience (on the same thread that Jonny linked earlier -- https://weirder.earth/@dessertgeek/110460194256055941 and my response https://neuromatch.social/@manisha/110463002047148596).

The only thing with forum mode is we'd need to figure out how to basically take lemmy's code and make it work with masto. Easiest would be to host it as a separate forum.neuromatch.social subdomain but it would be awesome if folks didn't have to create a separate account for that. We could ask for funding to implement the forum mode with DIY stuff where we hack it to make it work with masto accounts?? does that seem feasible?


23-06-04

mannaz#Server costs and invoices23-06-04 14:05:20

Server Costs and Invoices: Invoice for May, 2023


23-06-27

mannaz#techwg-ops23-06-27 12:20:04

Tech WG/Ops Diary#23-06-27: restarted systems services as we were hitting swap limits https://neuromatch.social/@manisha/110616054514875151 This time I remembered to take a screenshot before and after


23-07-02

mannaz#Server costs and invoices23-07-02 20:25:23

Server Costs and Invoices: Invoice for June, 2023


23-07-04

mannaz#technical-wg23-07-04 20:31:28

worst case scenario -- ppl get a break from scrolling our local TL for a while 😂 🙈

writing here in caps so that we Mastodon updates REMEMBER TO TAKE A BACKUP BEFORE starting.. we should have a rocess of the typical steps to follow

sneakers.the.rat#technical-wg23-07-04 21:16:38

yes agreed we should make a wiki guide to updating the instance.

I need to log off for the day bc am visiting friends, but in short it's - start backup in linode (reminder to also set you up with an account there and add that to Tech WG#TODO Tech WG/Onboarding docs - do all the git work that we're familiar with to prepare the new deploy - check upgrade notes, usually on base masto release notes, to see if anything out of the ordinary is required - pull down new changes to server - potentially recompile yarn assets - potentially run database migrations - restart mastodon-* services

and that's usually it. downtime is usually on the order of a few seconds (and we could explore how to make that zero, I think that's how the pros do it with like multiple servers)


23-07-06

mannaz#social-wg23-07-06 23:31:37

Thank you soo much El!! This would be amazing! to be frank, you already help us here in the working group and we all truly appreciate that ❤️

Social WG/Responsibilities If you officially join, what this would do is allow us to give you access to the moderation interface where we handle new account requests and reports, and you'd also publicly get the credit that you deserve for all your contributions! :) I think some academics can be really stingy about giving credits (uh see one of my recent polls :P https://neuromatch.social/@manisha/110556283019459141) but in a place like ours where we are all volunteers doing the work, every bit of appreciation goes a long way. So another thing we could be doing more often is showing gratitude to instance members and like <@305044217393053697> mentioned -- make everyone feel welcome and improve our onboarding experience. Like recently from the socialwg account, I've been boosting intros, lab pics, graduation news, etc etc.. We could make all of that more fun and be like "hey #neuromatchstodon <awesome NMS member> got their PhD give them boosts" 🥳 or something

Account requests are usually the fun part of moderation -- I love reading the reasons people/organizations/departments/conferences share for joining the instance and they are always so interesting and diverse! (e.g. the time someone said they had fomo of not being on neuromatch.social ❤️ https://discord.com/channels/1049136631065628772/1049136631065628775/1116378014897426432)

The only thing to be careful of is if the account requester mentions something that could be a violation of our rules or our bylaws. In such instances, I typically ask the instance for their opinion on our social wg forum channel. For full transparency we do have a private mod channel but we haven't used that since April! A good sign that we are not hiding things from the instance. We used to use it only for cases where we had to disclose some PII


23-07-07

mannaz#social-wg23-07-07 00:50:28

Thank you El and welcome onboard!! woohoo!! 🥳 ❤️ 💚 💜 💙 🧡

Social WG/Responsibilities continued: with great power comes great responsibility :)

Before taking any drastic decisions, we should discuss things with the instance -- things like defederation/limiting instances and banning accounts. Also, we should be careful when speaking on behalf of the instance from our "official" accounts like the @socialwg one (this one is quite scary for me because sometime mods say something that ticks another mod/instance member off and then it leads to pile ons 😬 -- so we try to be as cordial as possible and respect people from other instances even if they choose different things for their community - that's fine. we all don't have to be an exact replica of each other :) )

we learn new things from other mods too -- I follow the #fediblock hashtag and keep an eye on anything that could affect us terribly. In the past we have blocked instances based on reports from other mods on this hashtag (see <#1055915765133488158>)

I've been on call since October https://wiki.neuromatch.io/Mastodon/Mods_On_Call. You could add your availability here. Let's get you wiki access as well if you don't have already. Create an account here: https://wiki.neuromatch.io and <@305044217393053697> can approve it when they are back from their short holiday.

Being on call means I check for new account requests once a day and approve them if there aren't any issues. Or bring the discussion to the instance. And handle any reports. We get updates from linode when a few settings cross a threshold. Usually it just means the instance has been busy. But it could also be a DDoS attack -- so I also quickly browse through our local TL and this discord to see nothings blowing up. We have an admin@neuromatch.social account that I monitor every few days. We get very few emails there.

mannaz#techwg-ops23-07-07 18:47:50

Tech WG/Ops Diary#23-07-07: masto 4.1.3 update -- security patch. Jonny's on the road so Lina and Manisha are going to give this a try. If we muck something up, please be kind 🥺 starting by making a linode backup and then following instructions on ...

oh wait! dang they already released 4.1.4 just an hour ago https://github.com/mastodon/mastodon/releases/tag/v4.1.4

4.1.3 from yesterday: https://github.com/mastodon/mastodon/releases/tag/v4.1.3

sneakers.the.rat#Meta may be joining fedi. Time to draft our Federation Abuse Policy23-07-07 18:51:01

- solidarity with the fedi: to survive this and future attempts at corporate capture, it is important to act together. many instances have already committed to defederation, and even if it is symbolic, symbols are important.

- being defederated by other instances: we are currently in the good graces of some very protective instances through prior social ties and our promise to be a good actor in the space, these include instances with many leftists, queer people, and others that would likely defederate from us if we were to federate with meta. this would put NMS in a more homogeneous, corporate nice space in the fedi.

- communication with threads users: some people probably want to communicate with some threads users, and this might cause dual accounts, as you say. defederation would potentially split ties. I will hold my thoughts on this for now since I'm just trying to list the relevant factors.

what else? listing the concerns, we could then see how each impacts a decision to limit/defederate based on what each decision does.

I am traveling and AFK until Monday, but I think it would also be good to make a Defederation from Meta wiki page to keep more organized notes. forgot to tag the previous post.

mannaz#announcements23-07-07 20:10:07

@here Announcements hello #neuromatchstodon membies So far <@305044217393053697> and I have been doing most of the admin and moderation work in cooperation with the rest of the instance members.

We are excited to welcome new members joining our working groups!🎉 🥳

This has been a long time coming but our very own #MastoDev <@485848481995423755> (who contributed to the exclusive lists PR that got merged upstream) is joining our <#1049184335514828860> 🙌

And the amazing <@961628326005440552> (who is one of the organizers of #Maystodon #JoinMastodonDay and #NeuroParty) is joining the <#1049184264832417823> 🙌

Thank you both for your outstanding contributions ❤️ 🙏


23-07-10

mannaz#techwg-ops23-07-10 00:35:37

Tech WG/Ops Diary#23-07-09: Updating reverse proxy config to the recommended one as root `cd /etc/nginx cd site-enabled vim mastodon`

search for "system" added the following two headers in that block as per the release notes: `add_header X-Content-Type-Options nosniff;

add_header Content-Security-Policy "default-src 'none'; form-action 'none'"; `

save test nginx configs are valid or not (w/o running) `nginx -t `

all looked good `nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful ` Reload nginx

mannaz#social-wg23-07-10 22:57:03

I think that's part of trends (but I'd need to check). and the reason why we didn't have Trends enabled was because of this: https://discord.com/channels/1049136631065628772/1052069805856935996/1067653230533804093

if that has changed in the recent versions of masto/glitch, we can enable trends again


23-08-01

mannazsci#Server costs and invoices23-08-01 14:16:21

Server Costs and Invoices: Invoice for July, 2023 - USD 106.00


23-08-16

mannazsci#technical-wg23-08-16 04:11:30

Mastodon/Setup useful commands to improve disk usage:

`# Prune remote accounts that never interacted with a local user RAILS_ENV=production /home/mastodon/live/bin/tootctl accounts prune;

  1. Remove remote statuses that local users never interacted with older than 4 days

RAILS_ENV=production /home/mastodon/live/bin/tootctl statuses remove --days 4;

  1. Remove media attachments older than 4 days

RAILS_ENV=production /home/mastodon/live/bin/tootctl media remove --days 4;

  1. Remove all headers (including people I follow)

RAILS_ENV=production /home/mastodon/live/bin/tootctl media remove --remove-headers --include-follows --days 0;

  1. Remove link previews older than 4 days

RAILS_ENV=production /home/mastodon/live/bin/tootctl preview_cards remove --days 4;

  1. Remove files not linked to any post

RAILS_ENV=production /home/mastodon/live/bin/tootctl media remove-orphans;`


23-08-27

sneakers.the.rat#technical-wg23-08-27 22:00:20

Also saw you boosted this, seems like a great idea for Translation https://frontrange.co/@raineer/110959799057137486


23-08-30

mannazsci#Technical Working Group - membership rules, roles, responsibilities, access levels23-08-30 08:45:21

Access_Policy for - Server shell access : root, user - Git repo access: admin, maintain, write, triage, read - email accounts: admin@ noreply@ - Mastodon Admin portal - Mastodon @admin account - Mastodon @techwg account - Sendgrid - Loomio - Wiki - DNS (neuromatch.social) - Discord mod chat : discord roles until we move away from discord

Based on the access policy we decide, we would need to update access and note that on this page: https://wiki.neuromatch.io/Administrators


23-09-01

mannazsci#Server costs and invoices23-09-01 12:43:01

Server Costs and Invoices: Invoice for Aug, 2023 - USD 106.00


23-09-20

sneakers.the.rat#techwg-ops23-09-20 02:55:44

Tech WG/Ops Diary#23-09-19 - Upgrading to 4.2-RC2 while trying to write the Upgrade Mastodon docs. currently doing the merge from upstream and noticing db migrations for exclusive lists failing, but not fixing now because that would put the fixes in the `glitch-soc-main` branch which is a local mirror of upstream which gets force pushed. Seems like that should happen in the `merge-upstream` branch after upstream is merged


23-09-21

sneakers.the.rat#technical-wg23-09-21 21:37:59

Btw I noticed we don't have Unattended Upgrades turned on to automatically keep system-level packages up to date. I usually do that with servers I manage because i have been told by security ppl that keeping up to date is like most of what matters with day-to-say security probs, but i mean it seems like it could uh accidentally break a package one day and kill the instance, so idk if there's a reason to not do that but thought i'd ask


23-09-26

sneakers.the.rat#questions23-09-26 21:29:58

Yes! Good question!!!!! Thats one of the basic Consensus questions - good for me vs. Good for the group. Good for both is ideal ofc, but "bad for me, good for the group" is the real meat of the problem. There's a couple of different flavors there. Is bad for me something thats actively bad, something that will have negative felt effects on me, or is it something that just isnt good for me, something I wont feel the positive effects of? Also, is "bad for me" a symptom of "bad for the group" in that the decision is exclusionary/the negative impacts predominately fall on a particular group? In this case, does being able to opt out alleviate concerns you have, or is there something larger you're objecting to beyond that? Few decisions are universally good for everyone, so were your concerns heard and weighed as part of the discussion? How that translates to a vote can be a little tricky/subjective, but in general if there are no active harmful effects, just absence of benefit for you then that would be a vote yes with caveat. Other consensus systems have a "stand aside" which is "if the rest of the group thinks this is good then I'll go with it, but I have some problem with the decision as a whole beyond how it impacts me" where a certain number of stand asides equal a block - doing something everyone feels lukewarm about is not great consensus. We could make abstentions mean that if that makes sense, altho an abstain means something slightly different ("I dont have enough information here but that wasnt the fault of the process" or "this us wholly irrelevant to me" or "I have some conflict of interest"). If you feel like this would have negative impacts on you that you feel like weren't seriously addressed during the discussion, or arent reflected in the outcome, then vote no.

Thats all my interpretation, not gospel or True, and the "meaning of votes" being somewhat up to interpretation and variable between systems is one of the things that makes consensus messy

sneakers.the.rat#questions23-09-26 21:34:40

BTW since we have lotsa new people here, when I make a Wikilink we have a bot that copies your message to the wiki so we can capture discussion contextually and refine it later. Eg. In this case that previous message went here: https://wiki.neuromatch.io/Consensus#Discord


23-09-27

sneakers.the.rat#honorary members23-09-27 23:54:40

I wanted to check in before I invited someone(s) that is not a neuromatch.social member to the discord - we already have a few beloved Honorary Members but I dont think we have any explicit norm here. Does anyone have any objection to this?

The main reason to use discord is to be able to coordinate in small groups in real time in a way masto doesn't really work for, and nothing in public channels as far as I can tell is private, so it makes sense to me for members to be able to invite ppl they vouch for? If honorary members cause trouble (which I doubt they would) then we could address that when/if it happens, it seems like prevailing social norms of being responsible for someone u bring into a space mostly take care of that yno.

If I dont hear anything in a day or so ill invite them!


23-10-01

mannazsci#techwg-ops23-10-01 07:44:40

Tech WG/Ops Diary#23-10-01 I am ready to deploy v4.2 but I encountered a few issues while following the process mentioned in Upgrade_Mastodon. I'll update the wiki with the steps I took.


23-10-06

sneakers.the.rat#technical-wg23-10-06 21:45:39

So idle thought, i saw someone whose instance had Slugified URLs for posts, ( eg. https://neuromatch.social/@Jonny /my-post-title ) And it looks like it would be pretty easy to do... - add a `slug` db column in the statuses table - add a route using `slug` https://github.com/mastodon/mastodon/blob/3262d1f1b62a984343f0f6c67c1d18921daabb0a/config/routes.rb#L130 - add a field to the status composer component to optionally add a slug, which would need to validate for correct formatting and uniqueness (eg. Show red outline with message when slug is already used, disallow spaces and other non URI chars) - add API endpoint to check if slug exists - add button in "share" dropdown to copy slugified link - optionally: provide an auto-slug option that slugifies the first n unique characters in a post, or parses a leading # header

That would be for adding them as an additional ui thing, rather than changing the representation of the AP objects/etc. ID URL would remain canonical, slug would be useful for sharing, and also if we want to allow posts to behave more like pages (eg. Set custom page CSS for an `Article` type vs the usual `Note` ) for a future rich text editor hack that makes masto both micro and macro blog

Mastodon/Hacks


23-10-27

sneakers.the.rat#elasticsearch23-10-27 02:29:48

OK yet again starting thread on getting ElasticSearch running


23-12-05

sneakers.the.rat#onboarding and instance docs23-12-05 06:58:02

OK <@318247805124870145> i'm doing a little wiki gardening rn and here i'll narrate a little of what i'm doing as i do it to give you a sense of what that looks like:

first i am reading this and wondering how i could offer part of this to you, and with this set of prompts and with ur previous comments about 'where do i even start with this thing' which are extremely justified i want to make a 'how to get started with masto as software' page, so I go to where we have previously put such things on the Tech WG page (https://wiki.neuromatch.social/Tech_WG ) and add a link there to a new Intro To Mastohacking page ( https://wiki.neuromatch.social/Intro_To_Mastohacking ) since i figure "intro to mastodon" is too much like our general getting started on fedi pages. idk we can always change it later.

So then i do a search for "docs" to see where else we might have written stuff like this and lo and behold there's also a page for that, so i add a link from there too: https://wiki.neuromatch.social/Mastodon/Docs

then i start my new page by adding categories and backlinks. Don't worry about the syntax for right now, but what i'm doing here is making this page findable in a few different ways - by navigating from related pages, formally through the semantic relationship `Part Of`, and then also via the category system (which we can also query to eg. display a list of all pages in the "hacking" and "guide" categories if we want to make some automatic index, but i digress).

nothing on the page yet but that? fuck it, save page. we can keep saving as we update, no need to be shy on wiki

(sorry for notifs el i'm going to split this up into a few messages so i can intersperse images)


24-01-09

sneakers.the.rat#technical-wg24-01-09 02:48:18

quick aside for <@540104559079456770> if she gets a second, can u add some DNS records for meeeee??? - `A` record pointing `feeds` subdomain to `45.56.100.144` - `A` record pointing `dev.feeds` subdomain to `45.56.100.144` - `AAAA` pointing `feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f` - `AAAA` pointing `dev.feeds` subdomain to `2600:3c03::f03c:93ff:feca:b20f`

That's the Linode/Loomio node, not the Linode/Mastodon node, so i won't be draining resources. want to start running a dev version of paper-feeds to test against actual RSS readers and also test federation when we get to activitypub. https://github.com/sneakers-the-rat/paper-feeds/

sneakers.the.rat#technical-wg24-01-09 04:53:38

so re: Stoplight and Cooldowns, Sidekiq#Cooldown tries to deliver something 16 times ( https://github.com/NeuromatchAcademy/mastodon/blob/eb24c0ad07c4137517e6bd37ebcc99d6e2b86797/app/workers/activitypub/delivery_worker.rb#L11 ) the delay rises exponentially (^4) with each retry. So eg by the 10th retry we're delaying an average of 208 minutes, and by 16 we're at 1365 (22 hours).

That delay uses sidekiq's `sidekiq_retry_in` method, which applies to each delivery task (ie. each status we're trying to push), but there is also an additional control flow tool Stoplight ( https://blog.bolshakov.dev/stoplight/ ) that applies per inbox URL (rather than per job). You start in a good (green) state. Each failure counts towards a threshold (10), after which it halts all jobs matching that inbox (red). After the cooldown period (60 seconds) it flips into a "yellow" state: if the next job succeeds, it flips back to green. If it fails, it goes immediately back to red.

That configuration seems sorta... pointless to me? if it only kicks in after 10 failures, then it'll only be halting after really long delays, right? it seems like that should be a high threshold with like a really long cooldown to me - if we haven't been able to deliver like 200 messages, then cooldown for like 6 hours (i'm not sure if receiving a message clears the stoplight)


24-01-15

sneakers.the.rat#social-wg24-01-15 03:31:15

i can't remember where we left off w.r.t. enabling trends on the instance, i can't think of a strong reason to leave them disabled, but does anyone have feelings about this?


24-01-17

sneakers.the.rat#Sticky Posts & Discussions24-01-17 10:58:31

ok i'd like to raise an olde idea again and that is having an instancewide Sticky Posts to supplement announcements to be able to make discussions that are intended to lead to a proposal more visible to the instance. loomio and discord merely by virtue of being separate platforms are less visible, so let's try and do a lil bridging of mediums.

here's one idea of what that might look like: v1 - currently we have a Discussions stage in governance docs (https://wiki.neuromatch.social/Governance#Discussions) we can make that a more formal definition and say that a discussion intended to lead to a proposal is a stickied post. - ping a member of social wg (make sure these are up to date) or start discussion here to make a sticky post - sticky posts come from an autofollowed @ discussions account - ... are local only posts - ... show themselves at the top of the home and local feed with a highlighted background color to offset them from the feed - ... have a "minimize" button that is persistent across sessions, so once you minimize a sticky post it is hidden but still visible, I'm thinking like a 1em bar across the top of the feed

questions: - can we just use browser storage to remember collapsed status rather than needing to make a new column in the statuses table for 'collapsed' - should stickies have a time limit? or just a mechanism to close them in governance process?

v2 a) The threading interface on the web interface is awful, b) it would be nice to be able to show a title on a minimized sticky post c) ideally we would be able to organize discussions around topics and questions rather than chronologically in a more forumlike way so - posts can have titles - titles are declared with a special "title" field in the web ui - or with a first line beginning with a # from other clients, a la markdown - replies with titles can be minimized too - replies with titles are sorted first (bc they can be minimized)

Hacks


24-01-20

sneakers.the.rat#Path to independence - setting up a coop/legal entity24-01-20 05:20:06

Also that reminds me that I did get the announcement notif but the interface opened starting with the first announcement not the most recent one so TODO


24-02-02

sneakers.the.rat#techwg-ops24-02-02 01:16:50

Tech WG/Ops Diary#24-02-01 - Patching some mysterious critical security vuln thread


24-02-16

sneakers.the.rat#technical-wg24-02-16 23:01:41

ok so they refactored all the css, and it was pretty hard to track down what in the heck was changed, so here is another Lessons We Gone And Learned From Maintaining A Fork Of A Fork - patching is good, editing in place can be fragile. i moved the custom styles from better code blocks and expanded status previews to their own set of stub scss files that then get imported at the end of the scss index, so they should override conflicting rules set previously. that keeps them nice and separate and survivable in the case of big refactorings. this is similar to the "flavours" system which takes whatever isn't overridden from base masto. i can't run the dev server rn bc my brother is in town but since these are just css changes we can uh test in prod i think https://github.com/NeuromatchAcademy/mastodon/commit/8e54a6bf891ff855104225032dd9ccfb0163acea


24-02-17

sneakers.the.rat#techwg-ops24-02-17 22:16:31

Tech WG/Ops Diary#24-02-14 - Patching two more security bugs thread!


24-04-10

sneakers.the.rat#technical-wg24-04-10 21:38:20