Tech WG

From neuromatch
Revision as of 00:51, 1 May 2024 by Manisha (talk | contribs) (add Ops Diary as a subpage)
Description Keeping neuromatch.social running, coordinating work on our fork
Members Jonny Saunders, Manisha Sinha, Lina Lina
Projects Mastodon/Hacking, Access Policy
Part of Mastodon
Active Status Active

Up to Mastodon


Subpages

Guides

TODO

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

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

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

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#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

sneakers-the-rat#technical-wg22-12-17 22:13:21
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?

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 🙂

sneakers-the-rat#technical-wg22-12-27 19:53:46
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-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)


Project Ideas

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


Done

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


Discord

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.