Sandbox/Version demo/2.0
From OHC Network Wiki
More languages
More actions
⚠️ Warning
This is a sandbox demonstration of the wiki's copy-on-write versioning system. See Sandbox/Version demo for the full comparison.
Notification system (v2.0)
Version 2.0 introduced async delivery and user preferences.
Channels
| Channel | Added in | Notes |
|---|---|---|
| 1.0 | Now sent via background queue | |
| In-app | 2.0 | Bell icon + dropdown |
| SMS | 2.0 | Optional, requires Twilio credentials |
User preferences
Users could now toggle channels per notification type:
{
"appointment_reminder": { "email": true, "sms": true, "in_app": true },
"lab_result": { "email": true, "sms": false, "in_app": true },
"system_alert": { "email": true, "sms": false, "in_app": true }
}
Architecture
Action → Queue (Redis) → Worker → Channel adapter → Delivery
↘ Retry (3x exponential backoff)
What improved over 1.0
- Async delivery — no more UI blocking
- Multi-channel support
- User opt-out per type/channel
- Basic retry logic
What you're observing right now
This is the second frozen fork. Notice:
- The version dropdown (in the badge strip) shows "2.0" selected.
- Selecting "1.0" takes you to the earlier fork. Selecting "4.0 (latest)" takes you to the canonical page.
- The Cargo table stores
IntroducedIn=2.0,DeprecatedIn=3.0,Status=frozen.
Key insight: In Docusaurus, when you shipped version 2.0, you ran npm run docusaurus docs:version 2.0 and it copied every single page into versioned_docs/version-2.0/ — even pages that hadn't changed. In this wiki, only the pages whose content actually diverged get a fork. Everything else continues to be served from the single canonical page.