Project Tasks
Designs
https://www.figma.com/proto/OIGiBfSeZA7EQO2HRXpmPt/MS-Calendar?node-id=1%3A3&scaling=min-zoom
OAuth Management
OAuth landing page - JIRA Ticket
The page is plain text, should be stylized like Jira. We should also offer Disconnect.
OAuth token renewal - GitHub Ticket
OAuth access tokens expire after a given amount of time. We are given a refresh token that is used to create a new access token. Refresh tokens also expire, but when we request an access token, we are also given a new refresh token.
The task here is to store the refresh token each time we make a request for an access token. We should also periodically request a new token, so the user does not have to re-auth after the stored refresh token expires.
Store OAuth token encrypted at rest - GitHub Ticket
In order to keep the OAuth token safe, we should store them encrypted in the KV store
Event Sync / Subscriptions
Generate ClientState secret - GitHub Ticket
When setting up a subscription, we should supply the Graph API with a secret, so any webhook events we receive can be verified that it came from Microsoft.
Delete Subscriptions upon user disconnect - GitHub Ticket
If a user disconnects, we should delete their subscription in Microsoft’s system.
Daily Summary for Calendar View
Implement a markdown-formatted view of the user’s default calendar - JIRA Ticket
Should include details of the current day.