47 lines
1.1 KiB
Markdown
47 lines
1.1 KiB
Markdown
---
|
|
id: TASK-118.13
|
|
title: Add forum provision state sync to rforum
|
|
status: Done
|
|
assignee: []
|
|
created_date: '2026-03-16 00:07'
|
|
updated_date: '2026-03-16 00:50'
|
|
labels:
|
|
- multiplayer
|
|
- tier-5
|
|
milestone: Multiplayer Everything
|
|
dependencies: []
|
|
parent_task_id: TASK-118
|
|
priority: low
|
|
---
|
|
|
|
## Description
|
|
|
|
<!-- SECTION:DESCRIPTION:BEGIN -->
|
|
rforum provisions Discourse instances on Hetzner. Add minimal Automerge sync for forum provisioning state per space (URL, status, admin info).
|
|
|
|
## New files:
|
|
- `modules/rforum/local-first-client.ts` — wraps existing schemas
|
|
|
|
## Schema (extend existing):
|
|
```
|
|
ForumDoc {
|
|
meta: { module: 'forum', collection: 'provision', version: 1 }
|
|
forums: Record<string, { url, status: 'provisioning'|'active'|'suspended', adminDid, createdAt }>
|
|
}
|
|
```
|
|
|
|
Minimal — just syncs which forum is linked to which space.
|
|
<!-- SECTION:DESCRIPTION:END -->
|
|
|
|
## Acceptance Criteria
|
|
<!-- AC:BEGIN -->
|
|
- [ ] #1 Forum provision state syncs across space members
|
|
- [ ] #2 All members can see forum URL and status
|
|
<!-- AC:END -->
|
|
|
|
## Implementation Notes
|
|
|
|
<!-- SECTION:NOTES:BEGIN -->
|
|
schemas.ts + local-first-client.ts created
|
|
<!-- SECTION:NOTES:END -->
|