docs(admin): on-site notifications, and the defaults page that was wrong #24

Merged
whitlocktech merged 1 commits from docs/engagement-inapp-channel into edge 2026-08-31 07:23:24 +00:00
Member

§6.0b assigns this repo engagement Phase 7: notifications-and-email.mdx gains the in-app channel. Companion to RunicGateway/website#175 and RunicGateway/docs#188.

The new section

On-site notifications — the third way to reach somebody, and the only one needing no relay, no mailbox and no app. What it is, that it is the one channel on by default (and why: push wakes a device somebody is holding, email leaves the building, an inbox item does neither), that its body is always plain text so nothing an operator writes can become markup on somebody else's page, and that the nightly prune takes read items only.

The push section now says what a tickle raised by an engagement rule carries — a pointer at the matching inbox item — and that it is still only a pointer.

Two corrections, both already wrong before this phase

  • "Who receives what" said push was opt-OUT. Push stream subscriptions have always been opt-IN (notification_subscriptions holds a row only when somebody asked), and engagement Phase 3 made that explicit in the channel registry. Rewritten as three defaults — email opt-in, push opt-in, on-the-site opt-out — plus the Team mute that overrides all three. It also now points at the preferences grid the same phase gave the web, which is where that setting actually lives.
  • capabilities.mjs claimed "Web, push and email … Push arrives by default and can be switched off". The web channel did not exist until this phase, and push has never arrived by default. Reworded to name the on-site inbox as the opt-out one. (§6.0b assigns this line to Phase 12; it is corrected here because it is a factual claim about the thing this phase built, and leaving it knowingly false for four phases in the repo whose whole job is factual accuracy is the worse trade. Flagging it rather than burying it.)

Checks

build · check:links (2503 internal links) · check:a11y (51 pages) · check:sidebar · test (42) — all green. check:facts is untouched: nothing here is a fact fetched from a source repo's main, so this stays green through the whole edge period as Phase 12 requires.


  • AI-assisted: written with Claude Code; commits carry Co-Authored-By: Claude.
§6.0b assigns this repo engagement **Phase 7**: `notifications-and-email.mdx` gains the in-app channel. Companion to **RunicGateway/website#175** and **RunicGateway/docs#188**. ## The new section **On-site notifications** — the third way to reach somebody, and the only one needing no relay, no mailbox and no app. What it is, that it is the one channel on by default (and why: push wakes a device somebody is holding, email leaves the building, an inbox item does neither), that its body is always plain text so nothing an operator writes can become markup on somebody else's page, and that the nightly prune takes **read items only**. The push section now says what a tickle raised by an engagement rule carries — a pointer at the matching inbox item — and that it is still only a pointer. ## Two corrections, both already wrong before this phase - **"Who receives what" said push was opt-OUT.** Push stream subscriptions have always been opt-IN (`notification_subscriptions` holds a row only when somebody asked), and engagement Phase 3 made that explicit in the channel registry. Rewritten as three defaults — email opt-in, push opt-in, on-the-site opt-out — plus the Team mute that overrides all three. It also now points at the preferences grid the same phase gave the web, which is where that setting actually lives. - **`capabilities.mjs` claimed "Web, push and email … Push arrives by default and can be switched off".** The web channel did not exist until this phase, and push has never arrived by default. Reworded to name the on-site inbox as the opt-out one. *(§6.0b assigns this line to Phase 12; it is corrected here because it is a factual claim about the thing this phase built, and leaving it knowingly false for four phases in the repo whose whole job is factual accuracy is the worse trade. Flagging it rather than burying it.)* ## Checks `build` · `check:links` (2503 internal links) · `check:a11y` (51 pages) · `check:sidebar` · `test` (42) — all green. `check:facts` is untouched: nothing here is a fact fetched from a source repo's `main`, so this stays green through the whole `edge` period as Phase 12 requires. --- - [x] AI-assisted: written with Claude Code; commits carry `Co-Authored-By: Claude`.
wtclaude added 1 commit 2026-08-31 07:12:22 +00:00
Engagement Phase 7 gives the platform a third notification channel — an inbox
on the site itself — so `notifications-and-email.mdx` gains a section for it:
what it is, that it is the one channel on by default, that its body is always
plain text, and that the nightly prune takes read items only.

Two corrections in the same file, both of which were already false before this
phase and would have become misleading with it:

- "Who receives what" said push was opt-OUT. Push stream subscriptions have
  always been opt-IN, and engagement Phase 3 made that explicit in the channel
  registry. Rewritten as three defaults plus the Team mute that overrides all
  three, and pointed at the preferences grid the same phase gave the web.
- `capabilities.mjs` claimed "Web, push and email … push arrives by default".
  The web channel did not exist until now and push has never arrived by
  default. Reworded to name the on-site inbox as the opt-out one.

The push section now says what a tickle raised by an engagement rule carries,
and that it is still only a pointer.

Code: RunicGateway/website#TBD · Docs: RunicGateway/docs#TBD

Co-Authored-By: Claude <noreply@anthropic.com>
whitlocktech merged commit 92a1a33121 into edge 2026-08-31 07:23:24 +00:00
whitlocktech deleted branch docs/engagement-inapp-channel 2026-08-31 07:23:25 +00:00
Sign in to join this conversation.
No description provided.