Not agreed. Screens illustrate proposals in docs/ and .scratch/ , and invent the states those documents leave open.

Back

How should we send roadworks and disruption near me?

Choose a way

Behind the scenes

Property names follow docs/profile-communication-subscriptions.md, which says its own spelling is illustrative. The shape is what was decided.

Usable destinations

email
usable
sms
usable
post
usable
in-app
usable

Seeded by seedChannel() against this fixture — §4.1, the one communication rule with real logic behind it here.

Subscription

subscriptionId
sub-highways
catalogueTopicId
highways.local-disruption
state
active
basisAtOptIn
public-task
noticeVersionAgreed
v1
channel
sms
channelSource
preferred-seed
createdBy
Citizen
captureChannel
my-account
createdAt
2026-07-20T11:05:00Z
context
{"scope":"address","addressValueId":"ad-ctax"}
deliveryIssue
We are not sure which address this should cover any more.

Not modelled

  • Expiry, withdrawal history and officer-captured consent. Examples 6.3, 6.6, 6.7 and 6.8 are not fixtures, so nothing renders them.
  • What happens to a Subscription when the contact value it depends on is removed. Phase 1 sends to the primary confirmed destination for the channel, so there are no per-Subscription pointers to repair.
  • The material-change flow that forces re-opt-in. §5 lists the event; no owner and no journey exist for it.