=== Open questions
- [ ] What should happen in the following scenariox] What should happen when "Person 1" is automatically subscribed to "Conversation A" and then unsubscribes from "Conversation A"?
-- 1. "Person A" who has automatic topic subscriptions enabled, comments in an existing conversation //or// starts a new topic.
-- 2. "Person A" becomes automatically subscribed to the topic they commented in or started in "Step 1."
-- 3. "Person A" unsubscribes from the topic they commented in or started in "Step 1."
-- 4. "Person A" comments in the topic they commented in or started in "Step 1."
-- 5. ❓//Is "Person A" resubscribed to the conversation?"Person 1" should remain unsubscribed to "Conversation A". Do they remain u//This is documented in the newly-created `Unsubscribed?ing` section within `===Implementation details` Something else?//
=== Implementation details
=====Meta=====
[x] Functional Requirements - @ppelberg
- Platforms: mobile and desktop
- The editing interface people are using to start a new discussion or post a new comment should NOT impact their - ability to automatically be subscribed to a topic.
- The software should continue considering a discussion/conversation to be any `== H2 ==` section that exists on pages - used for hosting conversations (e.g. talk pages, pages in `wgExtraSignatureNamespaces` namespaces...more in T249036).
- No new comment notifications should be sent for comments authored by users the would-be recipient has muted in `Special:Preferences#mw-prefsection-echo` > `Muted users`
- By default, automatic topic subscriptions should be enabled for all people who have the `Enable topic subscription` enabled
[x] Design Requirements @iamjessklein
-- //Not needed for this step of the workflow.//
[x] QA specifications
-- //See `Functional requirements` above.//
---
=====Relation to existing topic subscriptions=====
- When automatic topic subscriptions are deployed, **no one** should be automatically subscribed to all topics they previously participated in.
=====Initiating a subscription=====
[x] Functional Requirements - @ppelberg
- For people who have automatic topic subscriptions enabled, they should be automatically subscribed to a topic after taking either of the following actions:
# Posting a comment in a discussion they are not already subscribed to
---- //After "1)", people should see the `[ subscribe ]` affordance on the page turn into `[ unsubscribed ]` //
# Starting a new discussion
[x] Design Requirements @iamjessklein
-- //Not needed for this step of the workflow.//
[x] QA specifications
-- //See `Functional requirements` above.//
---
=====Being made aware of automatic subscription | T262103=====
[x] Functional Requirements - @ppelberg
- The first time someone is automatically subscribed to a conversation, they should be made aware:
-- They will receive a notification if/when someone posts a new comment in that discussion
-- Where they can adjust whether they are automatically subscribed to discussions they participate in the future
[] Design Requirements @iamjessklein
-- User story
--- As someone posting a comment or starting a new conversation for the first time after automatic topic subscriptions became available:
---- I want to know that I will be made aware when someone posts a new comment in that discussion so that I have an accurate expectation for how I will know if someone responds to me.
---- I want to know where I can adjust whether I am automatically subscribed to the future discussions I start and/or participate so that I can ensure the notifications I receive are valuable to me.
-- Mockups
--- //Mockups will be created in T262103.//
[x] QA specifications
-- //See `Functional requirements` and `Mockups` above.//
---
=====Notification delivery/receipt (no implementation required) =====
[x] Functional Requirements - @ppelberg
- In general, new comment notifications initiated via an automatic subscription should be delivered in the same ways they are when initiated via manual subscriptions (T263820).
- Notifications about new comments in sections people are subscribed to should appear in Notices
[x] Design Requirements @iamjessklein
-- //Not needed for this step of the workflow.//
[x] QA specifications
-- //See `Functional requirements` above.//
---
=====Unsubscribing=====
- When someone is automatically subscribed to a conversation, and they subsequently unsubscribe from that conversation using any method (e.g. clicking {nav [unsubscribe]} on the talk page or unsubscribing from within Echo), that person should remain unsubscribed to that conversation //until// they manually resubscribe to it.
---
=====Managing automatic subscription behavior=====
[] Functional Requirements - @ppelberg
-- The setting that controls the channels through which new comment notifications are delivered should continue to be: `Special:Preferences#mw-prefsection-echo` > `Talk page subscription`
-- People should be able to enable/disable being automatically subscribed from all conversations they start and/or comment in within `Special:Preferences#mw-prefsection-editing` --> `Discussion pages`
--- This setting should only be visible to people who have the `Talk page subscription` setting enabled. //More in T263819#7143367.//
--- This setting should read: `Automatically subscribe to topics. / When you start a new discussion or comment in an existing discussion, you will be automatically notified when others post new comments to it.`
-- When a user disables the automatic subscription setting, their existing automatic subscriptions should continue sending notifications.
--- To unsubscribe from conversations in this case, people should be able to use the affordance within Echo that was implemented in T279150.
-- There should be one notification method setting (web/email/apps/none) that applies to topic subscriptions that are initiated manually and automatically
[x] Design Requirements @iamjessklein
-- //Not needed for this step of the workflow.//
[x] QA specifications
-- //See `Functional requirements` above.//