# The Dragons ![](https://i.imgur.com/puSLLSE.png =220x220) **Main focus**: waku v2, message reliability, c++ app, Desktop Backend, status-lib, status-go, **Members**: Richard, Pascal, Patryk QA notes can be found in [QA standups/notes](/2thEbI0BRwqBq6wtMEzzOA) ## Meetings ### Friday September 9th **r4bbit** - done - Added attachments support to `StatusMessage - https://github.com/status-im/StatusQ/pull/892 - Rebased discord import tool on top of latest master (Status Desktop) - https://github.com/status-im/status-desktop/pull/7095` - Make discord avatarURLs served via `MediaServer` - current - Rebasing discord import tool on top of latest `develop` (status-go) - next - Add message archive support to discord imports **Patryk** - done - performed 2 interviews - addressed pending PR comments and issues - status-desktop#7279 - display user online/offline state on - current - ? - next - ? **rramos.eth** - done - waku-org/js-rln#5 feat: generate and verify proofs - status-im/infra-go-waku#6 chore: setup wss port - status-im/infra-go-waku#5 chore: enable dns and discv5 discovery - current - go-waku#303 chore: android 30 support - Currently working with Railgun to determine if go-waku can run in Android 30 - There's a bug in gomobile that hasn't been fixed by Go - I monkeypatched the code for some depene - - waku-org/js-rln#6 unit tests - next - fix: pinned mailserver format ### Wednesday, September 7th **rramos.eth** - done - waku-org/js-rln#4 feat: repo setup and typescript support - status-im/status-go#2845 fix: lint - status-im/status-go#2843 chore: change address of community portal testnet contract - current - waku-org/js-rln#5 feat: generate and verify proofs - next - fix: pinned mailserver format **Patryk** - done - rebased group chat PRs - reworked members selector, it fixes: - https://github.com/status-im/status-desktop/issues/7234 - https://github.com/status-im/status-desktop/issues/7237 - https://github.com/status-im/status-desktop/issues/7238 - https://github.com/status-im/status-desktop/issues/7239 - https://github.com/status-im/status-desktop/issues/7240 - https://github.com/status-im/status-desktop/issues/7236 - https://github.com/status-im/status-desktop/issues/7235 - https://github.com/status-im/status-desktop/issues/5941 - current - address peding PRs comments - next - ? **r4bbit** - done - Import tool: Implemented pin message support - Import tool: UI fixes related to cancelling imports - current - Import tool: make author avatar URLs served via `MediaServer` - next - Create message archives after import is done ### Monday, September 5th **rramos.eth** - current - js-waku:RLN - vacp2p/zerokit#38 feat: wasm - Managed to fix threading issue. Proofs are being generated - Without threads, generating a proof takes ~2s. @s1fr0 suggest looking at https://github.com/GoogleChromeLabs/wasm-bindgen-rayon - Exposed a function to validate proofs - Currently working on cleaning the code, and create a JS api so it can be consumed from js-waku - next - fix: pinned mailserver format **r4bbit** - done - Made discord image messages work for discord import - Implemented reply messages for discord import - current - Implementing pin messages for discord import - next - Figure out bug that causes imported community to not be handled by desktop **Patryk** - done - status-desktop#6731 - If a channel has just been created do not show "fetch more messages" - reviewed some PRs - current - group chat epic - rebase PRs and recheck functionality, there are/were conflicting PRs: - https://github.com/status-im/status-go/pull/2797 - https://github.com/status-im/status-desktop/pull/7057 ### Friday 2nd September **Patryk** - done - status-go: add and distribute chatIdentity.FirstMessageTimestamp (needed by 6731) - current - status-desktop#6731 - If a channel has just been created do not show "fetch more messages" - use FirstMessageTimestamp to obtain if messages can be fetched from mailserver **r4bbit** - done - Added property to `StatusMessage` to allow for disabling profile clicks - https://github.com/status-im/StatusQ/pull/877 - Made author avatar download concurrent in discord import tool - current - Implement discord message asset downloads in concurrent fashion - next - Handle discord message assets via status-go's media server **rramos.eth** - current - js-waku:RLN - vacp2p/zerokit#38 feat: wasm - Exposed all the functions related to generating proofs and membership key generation - There's an issue trying to generate the proof since it seems that wasm does not support multiple threads - next - fix: pinned mailserver format ### Wednesday 31st August **r4bbit** - done - Improved discord import signal handling to emit progress updates periodically - https://github.com/status-im/status-go/pull/2829 - current - Working on functionality to cancel discord imports - Refactoring `Community` type to live in `protocol/common` - next - Updating open discord import PR based on feedback - https://github.com/status-im/status-desktop/pull/7095 - Continue working on discord message assets - handling image messages **rramos.eth** - done - status-im/go-zerokit-rln#2: chore: add iOS libraries - vacp2p/ark-circom#000: created branch `wasm` to test compiling the library to wasm - current - js-waku:RLN - vacp2p/zerokit#38 feat: wasm - I managed to compile the library to wasm - Need to expose required functions and test calling them from js - fix: pinned mailserver format **Patryk** - done - status-desktop#7154 - give any member ability to add its mutual contact to the group - status-desktop#7155 - give any member ability to change the name, image and color of the - status-go#? add group chat image propagation - implemented and reverted :( because it was concurrently developed by Michal: https://github.com/status-im/status-go/pull/2797 - current - status-desktop#6731 - If a channel has just been created do not show "fetch more messages" - next - group chat epic - rebase PRs and recheck functionality, there are/were conflicting PRs: - https://github.com/status-im/status-go/pull/2797 - https://github.com/status-im/status-desktop/pull/7057 ### Monday 29th August **rramos.eth** - done - status-im/go-waku#000 fix - issue when stopping node when RLN is not active - status-im/go-waku#300 fix: noise padding, docs and http status for rpc errors - status-im/go-zerokit-rln#1 Zerokit's version of Go-RLN - vacp2p/zerokit#36 feat(RLN): add new_with_params - current - fix: pinned mailserver format - next - js-waku: RLN - action items from feedback from go-waku's chat2 dogfooding (depends on vac team testing chat2) **Patryk** - done - updated desktop translations - status-go#2825 Ensure the group is created only with Group creator's mutual contacts - status-go#2823 Give any member ability to add its mutual contact to the group - status-go#2824 Give any member ability to change the name and color of the group - status-go provided tests for each of these scenarios - current - group chat epic - status-go#? add group chat image propagation - next - group chat epic - status-desktop#7154 - give any member ability to add its mutual contact to the group - status-desktop#7155 - give any member ability to change the name, image and color of the group **r4bbit** - OOO ### Friday 26th August **rramos.eth** - done - go-waku#298 fix: increase timeout when dialing peers and add extra logging - go-waku#297 feat: add flag to set wss port - go-waku#296 fix: null response obtaining messages from relay - status-desktop#7151 chore: script for creating local test fleet - infra-go-waku#4 go-waku: enable lightpush protocol - status-go#2821 feat: allow passing variables to docker-compose and fix var name - Debugging - IPFS gateway error: could not find issue. added extra logging and asked Andrey to run status-go on status-react to see what up - Worked with Patryk to debug segfault in status-go - current - go-waku: fix noise padding - fix: pinned mailserver format - next - js-waku: RLN - action items from feedback from go-waku's chat2 dogfooding (depends on vac team testing chat2) **Patryk** - done - status-desktop#6813: Can't leave community - fixed statusgo protocol tests segfault - rebased and merged - status-desktop#7146: Can't add members to group chat when it is already created - group chat epic - analyzed current state of group chats from status-go perspective - created subtasks - current - group chat epic - status-go#2825 Ensure the group is created only with Group creator's mutual contacts - status-go#2823 Give any member ability to add its mutual contact to the group - status-go#2824 Give any member ability to change the name, image and color of the group - status-go provide tests for each of these scenarios - next - group chat epic - status-desktop#7154 - give any member ability to add its mutual contact to the group - status-desktop#7155 - give any member ability to change the name, image and color of the group ### Wednesday 24th August **Patryk** - done - status-desktop#6813: Can't leave community - finalized logic and added tests - created mobile PR for manual testing - rebased - rebased pending PRs - reviewed some PRs - current - investigate statusgo protocol tests segfault - group chat epic - split epic to iterable tasks - verify specs once again with John - next - group chat epic **r4bbit** - done - Debugged and fixed issue that syncing devices removes chats from paired device - https://github.com/status-im/status-go/pull/2815 - current - next - Putting on the discord import tool hat **rramos.eth** - done - status-desktop: fix: remove recipient selector from StatusETHTransactionModal - these are supposed to be hardcoded when interacting with contracts - waku-react-native#31 chore: upgrade react native and target android 31 - status-go#2814 feat: use dns discovery if a enrtree is used in the DiscV5BootstrapNodes config - status-desktop#7123 feat: use dnsdisc for obtaining bootstrap nodes in vac's waku2 fleets - current - message reliability & fetching: create test network - next - fix: pinned mailserver format ### Monday 22th August **r4bbit** - done - Looked into community reported bug resulting from account recovered from Keycard - Setting keycard up on mobile doesn't work - Storing seed phrase on keycard doesn't work - Context: - https://discord.com/channels/624205794384281629/626738033701683200/1011185307875557416 - https://discord.com/channels/624205794384281629/626738033701683200/1011186682026016880 - Deskop: Keycard reader isn't recognized - current - Discord import tool: Working on handling image messages - Revisit keycard bug again with hard coded request parameters (should allow to bypass actual keykard usage) - next - Continue with handling image messages **Patryk** - done - status-desktop#6813: Can't leave community - introduced CommunityRequestToLeave and handlers - participated in status-go bi-weekly - current - status-desktop#6813: Can't leave community - investigating why CommunityRequestToLeave is not received by community owner.. - next - group chat epic - split epic to iterable tasks - verify specf once again with John **rramos.eth** - done - vacp2p/zerokit#33 refactor(RLN): use iterators instead of loops - status-im/waku-react-native: - fix: filter and download script - feat: filter (#6) - go-waku - fix: set default response if nil - status-im/status-go#2810 chore: hardcode optimism testnet for retrieving communities portal - status-im/status-desktop#7102 chore: always load curated communities from optimism testnet - current - Releasing waku-react-native - dogfood wakuv2 - next - message reliability & fetching: create test network - fix: pinned mailserver format ### Friday 19th August **r4bbit** - done - **Cleaned up discord import work and prepared PRs so they can be reviewed by the team**: - https://github.com/status-im/status-desktop/pull/7083 - https://github.com/status-im/status-desktop/pull/7084 - https://github.com/status-im/status-desktop/pull/7085 - https://github.com/status-im/status-desktop/pull/7095 - Introduce publish flag in communities manager APIs (needed for discord import) - https://github.com/status-im/status-go/pull/2807 - Fixed bug in message persistence - https://github.com/status-im/status-go/pull/2805 - current - Continue working on asset downloads for discord messages - Prepare PRs for status-go so that some changes can already land in the main branch - next - Next week will have to look into the keycard issue related to syncing chats - Revisiting handling message replies **Patryk** - done - status-desktop#6634: Chats should be sorted by most recent message or chat creation - provided implementation - provided squish tests - current - status-desktop#6813: Can't leave community - it is missing status-go functionality, gathered implementation ideas **rramos.eth** - done - status-desktop#7001 chore: setup a mailserver as part of UI tests run in CI - Development is complete. Waiting for response from Squish regarding error while running tests - go-waku#290 chore: upgrade dependencies - upgrading libp2p dependencies for: - status-im/go-multiaddr-ethv4 - status-im/rendezvous - go-waku: release v0.2.0 - rebase open PRs in desktop and mobile - status-mobile: apps crash when connecting to store server? #13811 - current - Releasing waku-react-native - next - communities portal: hardcode testnet - message reliability & fetching: create test network - dogfood wakuv2 - fix: pinned mailserver format ### Wednesday 17th August **Patryk** - done - status-desktop#6673: Blocking a contact still shows them in the Contact list - addressed bio and social links QA issues - https://github.com/status-im/status-desktop/pull/6947#issuecomment-1217003028 - current - status-desktop#6634: Chats should be sorted by most recent message or chat creation **rramos.eth** - done - go-waku#288 refactor: chat2 and flag handling - With this PR, RLN integration is 'complete' - This [tutorial](https://github.com/status-im/go-waku/blob/master/docs/tutorials/rln.md) (adapted from nwaku's) is available in case people want to participate in the RLN testnet using go-waku - current - status-desktop#7001 chore: setup a mailserver as part of UI tests run in CI - This is mostly done. The mailserver is created and will live for as long as the [withRun](https://github.com/status-im/status-desktop/blob/3f90f93878005787913f1310c885ebdc0f181feb/ci/Jenkinsfile.uitests) function executes - Currently working on making desktop receive the enode address for connecting to it as a peer and use it for mailserver queries - go-waku: integrate zerokit - Creating go-waku and waku-react native releases - next - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process **r4bbit** - done - Made discord author avatars work - includes asset download and falling back to its url in case download fails - https://github.com/status-im/status-desktop/issues/6691 - Don't render identity rings for discord messages - https://github.com/status-im/status-desktop/issues/6677 - Don't provide message context menu for discord messages - https://github.com/status-im/status-desktop/issues/6680 - Mark discord messages visually as imported - https://github.com/status-im/status-desktop/issues/6685 - current - Started looking into implementing discord message assets downloads - Handling image messages - next - Look into community reported bug ### Monday 15th August **rramos.eth** - current - status-desktop#7001 chore: setup a mailserver as part of UI tests run in CI - go-waku: integrate zerokit - next - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process **r4bbit** - done - current - Import Tool: Working on implementing import task that download discord author avatar assets - Need to download sources - Encode images in Status encoding - Save payload + base64 representation in DB - **Debugged an issue that payload isn't stored in DB for some reason** - This is still unsolved - next - Implement desktop author model to take new avatar images into account - Look into postponed community advertisement ### Friday 12th August **r4bbit** - done - Implemented discord import progress signal in status-go and the corresponding models in desktop - Connected those to the view as well - Debugged a bug in nimqml that causes `QtProperty[float]` to not be handled correctly - Debugged **app freeze** during discord import - **Cause**: turns out our signal handling in desktop is synchronous, if many signals are emitted (which is the case in the discord import), desktop can't handle them in time and freezes - Solved this for now in statusgo by sending less signals - current - Explore fixing nimqml's QtProperty[float] bug mentioned above - next - Look into how to postpone import commuity advertisement so it doesn't show up in the app immediately after creation but only after import is done - Various other open tasks related to discord import - Handling different message types - handling assets - etc **rramos.eth** - done - go-rln: fix android cross compilation - go-waku#287 feat: make rln optional - status-go#2796 feat: make kdf iterations configurable when creating a multiaccount - status-desktop#6997 feat: use a higher kdf number for DB encryption - Create script to [extract and pin stickers](https://gist.github.com/richard-ramos/689f5d2d802a76d5655e60af6c5fb71f) in Status infura's gateway - current - go-waku: integrate zerokit - next - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process **Patryk** - done - spent a lot of time investigating `RangeError: Maximum call stack size exceeded` blocker - made qml-debugger-profiler work with nim-status-client (https://github.com/status-im/status-desktop/issues/6973) - found and experimented with fine-tuning JavaScript Engigne parameters - eventually one of those (QV4_JS_MAX_STACK_SIZE) was used as issue workaround - social links - rebased status-go PR - waiting for approvals - rebased status-desktop PR - waiting for QA - created mobile regression tests PR - already tested/approved - status-destkop#6797: cover bio and social links feature with squish tests - https://github.com/status-im/status-desktop/pull/6947/commits/73effb4f68d302c327fed7ccaef773e854693052 - current - status-desktop#6673: Blocking a contact still shows them in the Contact list - next - ? ### Wednesday, 8th August **Patryk** - done - status-destkop#6797: implement UI for social links and bio - add social links' ui primitives - add SocialLinksModal - add bio and social links to settings - add bio and social links to profile view - fixed minor stuff in StatusQ - PR is pending (needs rebase) - status-go#2782: propagate bio, social links with profile info - rebased - addressed PR comments - current - status-destkop#6797: cover bio and social links feature with squish tests - next - status-desktop#6673: Blocking a contact still shows them in the Contact list - ? **rramos.eth** - done: - status-go#2792 feat: obtain ENSUsername address from registry #2792 - go-waku: various - fix: store content filters - fix: get gomobile before building mobile targets - rebases - waku-react-native#6 feat: filter - vacp2p/rln-contract#2 minor changes / optimizations - go-waku#285: Dynamic RLN test unit - go-waku: Store membership credentials in file - dogfood nwaku chat2 + rln - current - status-desktop: increase kdf iterations - go-waku: integrate zerokit - next - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process **r4bbit** - done - Import-tool: Make file list powered by nim model - https://github.com/status-im/status-desktop/issues/6788 - Import-tool: add flag that signals to UI that data extraction is in progress - https://github.com/status-im/status-desktop/issues/6841 - Import-tool: expose errors count for data extraction to UI - https://github.com/status-im/status-desktop/issues/6923 - Import-tool: Experimented with making imports tasks threaded - **This turned out to be problematic as multiple tasks will try to access the same state which will cause funny results** - Putting that on hold and do operations sequentially instead - https://github.com/status-im/status-desktop/issues/6692 - Import-tool: landed discord_authors_table in status-go - Import-tool: Updated PR to add discord_messages_table to status-go - https://github.com/status-im/status-go/pull/2784 - **This waits for client testing** - current - Import-tool: implement discord import progress signal - https://github.com/status-im/status-desktop/issues/6910 - https://github.com/status-im/status-desktop/issues/6948 - next - Finish up models for import progress signals ### Monday, 8th August **Patryk** - current - status-destkop#6797: implement UI for social links and bio - next - status-desktop#6673: Blocking a contact still shows them in the Contact list - ? **rramos.eth** - done - status-desktop#6592 Add custom waku2 nodes - go-waku#284 feat: add filter bindings and improve docs - vacp2p/rfc#525 docs(36/WAKU2-BINDINGS-API): add filter, store, and lightpush functions - current - go-waku: Dynamic RLN test unit - go-waku: Store membership credentials in file - next - status-desktop: increase kdf iterations - waku-react-native: add bindings for filter protocol - go-waku: integrate zerokit - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process ### Friday, 5th August **r4bbit** - done - Landed categories extraction API in status-go - Updated PR that adds `discord_message_authors` to status-go - https://github.com/status-im/status-go/pull/2766 - Extracted `discord_messages` data into its own field and added APIs + tests - https://github.com/status-im/status-go/pull/2784 - https://github.com/status-im/status-desktop/issues/6814 - Added loading state property to desktops' community module - https://github.com/status-im/status-desktop/issues/6841 - current - Implement feature flag for discord import tool - https://github.com/status-im/status-desktop/issues/6843 - next - Pick up actual discord import functionality **rramos.eth** - done - go-waku#283 feat: chat2 dynamic RLN - status-desktop#6501 fix: ens details view - Fixed issue in status-go where obtaining pending transactions failed due to malformed IN in sql query - Fixed wrong parameter being sent when releasing a ENS name - Deployed new ENS Usernames registrar contract. Waiting for @3esmit to update stateofus.eth in Goerli to point to that contract - richard-ramos/contributors - created script to obtain list of contributors of an org/repo (will be used in vac website) - current - status-desktop#6592 Add custom waku2 nodes - status-go#2438 is a breaking change so we might not be able to merge this PR and status-desktop's - go-waku: Add filter C and waku-react-native bindings - next - go-waku: Dynamic RLN test unit - go-waku: integrate zerokit - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process **Patryk** - done - status-go#2782: propagate bio, social links with profile info - PR pending - status-destkop#6796: integrate status-go social links and bio endpoints - added reading/updating social links - added social links model - added reading/updating bio - added trivial UI to test the changes - current - status-desktop#5984 - Add bio, media links to profile edit and profile modal - status-destkop#6796: integrate status-go social links and bio endpoints - polish commits before PR - status-destkop#6797: implement UI for social links and bio - prototype arleady implemented - next - status-desktop#6673 - Blocking a contact still shows them in the Contact list ### Wednesday, 3rd August **rramos.eth** - done - infra-go-waku#2 chore: extend store capacity to 30d and unlimited messages - go-multiaddr-ethv4 - chore: upgrade libp2p dependencies - status-go#2780 feat: wakuv2 store - status-go#2438 feat: waku2 - use identify protocol - Rebase this PR, since it's necessary for adding custom nodes - status-desktop#6782 chore: update go version in dockerfile to 1.18.5 - Required for wakuv2 store. The go version we use in desktop is too old - Debug issue in waku-react-native reported to happen on iOS devices. - status-desktop#6707 feat: add store nodes - Making modal look less ugly - go-waku#281 refactor: remove WakuStoreWithRetentionPolicy and add build tag to migrations - current - status-desktop#6501 fix: ens details view - Buying ENS is not working (?????) - go-waku: chat2 + RLN - next - go-waku: integrate zerokit - status-desktop#6592 Add custom waku2 nodes - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version - waku-react-native: reduce size of mobile bindings - strip library as part of build process **Patryk** - done - status-go#2782: propagate bio, social links with profile info - extended ChatIdentity protobuf with social links - extended Contact with social links and adapted db related code - added tests to cover new Contact fields - introduced chat_identity_last_received to ensure display name is not updated for older ChatIdentity updates (bonus bugfix) - current - status-desktop#5984 - Add bio, media links to profile edit and profile modal - status-go#2782: propagate bio, social links with profile info - expose endpoints to modofiy bio and social links - status-destkop#6796: integrate status-go social links and bio endpoints - status-destkop#6797: implement UI for social links and bio **r4bbit** - done - Improved status-go APIs for extracting channels and categories - https://github.com/status-im/status-desktop/issues/6690 - https://github.com/status-im/status-go/pull/2752 - Reworked discord file selector to account for error handling and being driven by proper model - https://github.com/status-im/status-desktop/issues/6788 - Lives in: https://github.com/status-im/status-desktop/pull/6441/commits - Cleaned up import-tool work-in-progress so Lukas can start helping with front-end stuff - https://github.com/status-im/status-desktop/pull/6441/commits - Also, bunch of meetings with Ben, John and Lukas to discuss import tool designs and requirements - current - Updating outstanding status-go PRs so they can be merged - next - Pick up work of actual import logic again and look into why stuff is slow ### Monday, 1st August **Patryk** - done - status-desktop#5984 - Add bio, media links to profile edit and profile modal - status-go: investigated how profile data is propagated, discussed various solutions, implementation not yet stated - current - status-desktop#5984 - Add bio, media links to profile edit and profile modal - status-go: propagate bio, social links with profile info - status-destkop: use status-go endpoints to read/propagate social links - status-destkop/StatusQ: implement UI **rramos.eth** - done - go-waku#278: RLN onchain mode - status-desktop#6591 Add custom store nodes - go-waku: fix stored messages prometheus metric - current - status-desktop#6593 Toggle to enable store functionality on Desktop - go-waku: chat2 + RLN - waku-react-native: reduce size of mobile bindings - strip library as part of build process - next - go-waku: integrate zerokit - status-desktop#6592 Add custom waku2 nodes - go-libp2p-webrtc-direct: Update basic example to guarantee webrtc-direct works with latest libp2p version **r4bbit** - done - Meeting with Ben, John and Lukas to discuss designs of the discord import tool - Meeting with Jamie (Buddy program) - current - Revising extract channel/categories API to return mulitple errors as required by design - next - Update WIP PR for discord import so Lukas can pick it up to do the UI work ## Dragons - Archive May 18 - July 31 [Dragons - Archive May 18 - July 31](/VpveeUAjRCWtn2YsLDws9Q) ## Dragons - Archive January 3 - May 18 [Dragons - Archive January 3 2021 - May 18 2021](/0KbISLl8T12bbZcwMmiasg) ## January 3 (Monday) - Changes * previous members: Anthony, Richard * new members: Richard, Pascal ## Dragons - Archive September 20th - December 30 [Dragons - Archive September 20th - December 30](/_1vv2QF-T42MZ114wK7s4w)