You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
copy: rego throughout the guests page, visitor page, tour, guides and emails
The second pass of the settled vocabulary. Every user-facing "car",
"vehicle" or bare "plate" that means the rego on the permit now says
rego: the guests page and its confirms, the visitor's own page, the
schedule's remaining tooltips and errors, the Regos, Settings, Activity
and onboarding pages, the landing page, the features tour, the FAQ and
guides, and the failure, drift, expiry, re-link and driver emails.
"Number plate" stays wherever it already appeared, and "car" stays where
it means the physical vehicle: the car parked at the kerb, the car that
is fined, the metal plate a rego is checked against, the paper permit
that moved between cars.
The overnight option no longer says every activation ends at the end of
the day, which was wrong: when a window ends the roster takes over, and
with nothing scheduled the rego stays on the permit until the next
change. The guests intro says the rego a visitor puts on is their own,
chosen from the household's saved list.
Page and email goldens regenerated; the diff is the intended lines.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0121j6qgGwUSLGQ48jWZN98F
body+=fmt.Sprintf("\n\nThis replaced %s, which an active booking had put on — we've emailed the person responsible for that car a heads-up.", o.DisplacedReg)
188
+
body+=fmt.Sprintf("\n\nThis replaced %s, which an active booking had put on. We have emailed the person whose rego that is.", o.DisplacedReg)
189
189
} else {
190
190
body+=fmt.Sprintf("\n\nThis replaced %s, which an active booking had put on. We had no way to reach whoever drives it — if %s is still parked there, please let them know it's no longer covered.", o.DisplacedReg, o.DisplacedReg)
// pointing them at it would be impossible advice — the honest Action already
228
228
// stands on its own.
229
229
if!o.CouncilDown {
230
-
lines=append(lines, "", "You can set the vehicle on your permit yourself at the council:", portalURL)
230
+
lines=append(lines, "", "You can set the rego on your permit yourself at the council:", portalURL)
231
231
}
232
232
body=strings.Join(lines, "\n")
233
233
}
@@ -252,7 +252,7 @@ func onboardNudgeMessage(to, appURL string, c mailTenant) (subject, body string)
252
252
// button's label in the HTML alternative (see mailer/html.go). Folding the
253
253
// label into the preceding sentence puts the whole sentence on the button.
254
254
lines:= []string{
255
-
"You signed up for p.stonn, but it isn't connected to your council account yet — so nothing is running. The weekly plate schedule, guest QR codes and one-off bookings all start from that one connection.",
255
+
"You signed up for p.stonn, but it isn't connected to your council account yet — so nothing is running. The weekly roster, guest QR codes and one-off bookings all start from that one connection.",
256
256
"",
257
257
say(c, "mail.nudge_connect", nil),
258
258
"",
@@ -277,7 +277,7 @@ func onboardNudgeMessage(to, appURL string, c mailTenant) (subject, body string)
277
277
"")
278
278
}
279
279
lines=append(lines,
280
-
"One thing to know: p.stonn manages VISITOR permits only — the permit your guests' cars go on — and only one you already hold; it can't apply for one, and it never touches a resident permit.",
280
+
"One thing to know: p.stonn manages VISITOR permits only — the permit your visitors' regos go on — and only one you already hold; it can't apply for one, and it never touches a resident permit.",
"When you arrive, open the link and choose your car. It stays on the permit until the end of the day.",
571
+
"When you arrive, open the link and choose your rego. It stays on the permit until the end of the day.",
572
572
"",
573
573
url,
574
574
"",
@@ -595,7 +595,7 @@ func (s *Service) NotifyDriverDisplaced(ctx context.Context, owner, to, permitLa
595
595
subject:=fmt.Sprintf("Heads up: %s is no longer covered on the visitor permit", oldReg)
596
596
when:=at.In(s.loc).Format("3:04pm")
597
597
lines:= []string{
598
-
fmt.Sprintf("Your car %s came off the visitor parking permit for %s at %s — %s.", oldReg, permitLabel, when, how),
598
+
fmt.Sprintf("Your rego %s came off the visitor parking permit for %s at %s: %s.", oldReg, permitLabel, when, how),
599
599
"",
600
600
"If your car is still parked there it's no longer covered. Move it, or put it back on with your link, or check with the permit holder.",
601
601
}
@@ -625,7 +625,7 @@ func (s *Service) NotifyDriverAdded(ctx context.Context, owner, tenantID, to, pl
625
625
// blank lines; a "---" block becomes a section separator in the HTML render.
626
626
subject:=fmt.Sprintf("%s is on a %s visitor parking permit", plate, c.Short)
627
627
lines:= []string{
628
-
fmt.Sprintf("Your car is now on a %s visitor parking permit, so you're covered to park where the permit applies.", c.Name),
628
+
fmt.Sprintf("Your rego is now on a %s visitor parking permit, so you are covered to park where the permit applies.", c.Name),
629
629
"",
630
630
"---",
631
631
"",
@@ -665,7 +665,7 @@ func (s *Service) NotifyDriverFailed(ctx context.Context, owner, tenantID, to, p
665
665
}
666
666
subject:=fmt.Sprintf("%s couldn't be put on a %s visitor parking permit", plate, c.Short)
667
667
lines:= []string{
668
-
fmt.Sprintf("Your car %s couldn't be put on the %s visitor parking permit — %s. It may not be covered right now; p.stonn keeps trying and will put it on as soon as it can.", plate, c.Name, cause),
668
+
fmt.Sprintf("Your rego %s could not be put on the %s visitor parking permit: %s. It may not be covered right now; p.stonn keeps trying and will put it on as soon as it can.", plate, c.Name, cause),
subject=fmt.Sprintf("The car was removed from your %s at the council", permitLabel)
695
-
body=fmt.Sprintf("The car on your %s was removed at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.", permitLabel)
694
+
subject=fmt.Sprintf("The rego was removed from your %s at the council", permitLabel)
695
+
body=fmt.Sprintf("The rego on your %s was removed at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.", permitLabel)
696
696
} else {
697
697
subject=fmt.Sprintf("Your %s was changed to %s at the council", permitLabel, plate)
698
-
body=fmt.Sprintf("The car on your %s was changed to %s at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.", permitLabel, plate)
698
+
body=fmt.Sprintf("The rego on your %s was changed to %s at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.", permitLabel, plate)
for_, want:=range []string{"Your car AAA111 couldn't be put on the", "the council's system is down right now", "Your car BBB222 couldn't be put on the", "p.stonn couldn't update the permit", "It may not be covered right now"} {
256
+
for_, want:=range []string{"Your rego AAA111 could not be put on the", "the council's system is down right now", "Your rego BBB222 could not be put on the", "p.stonn couldn't update the permit", "It may not be covered right now"} {
Copy file name to clipboardExpand all lines: internal/notify/testdata/golden/apply-failure-transient.txt
+6-6Lines changed: 6 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -3,12 +3,12 @@ Subject: Still updating your Visitor — it shows XYZ789 for now
3
3
Provenance: You received this at primary@example.com because this address manages, or shares access to, a p.stonn account that schedules a visitor parking permit. p.stonn is a free, unofficial scheduler for City of Stonnington visitor parking permits.
4
4
5
5
p.stonn tried to set your Visitor to Van — ABC123 but couldn't.
6
-
The permit still shows XYZ789, so that is the vehicle currently covered.
6
+
The permit still shows XYZ789, so that is the rego currently covered.
7
7
8
8
The council was temporarily unavailable.
9
9
Nothing to do yet — p.stonn keeps trying.
10
10
11
-
You can set the vehicle on your permit yourself at the council:
11
+
You can set the rego on your permit yourself at the council:
Subject: Still updating your Visitor — it shows XYZ789 for now
32
32
Provenance: You received this at sam@example.com because this address manages, or shares access to, a p.stonn account that schedules a visitor parking permit. p.stonn is a free, unofficial scheduler for City of Stonnington visitor parking permits.
33
33
34
34
p.stonn tried to set your Visitor to Van — ABC123 but couldn't.
35
-
The permit still shows XYZ789, so that is the vehicle currently covered.
35
+
The permit still shows XYZ789, so that is the rego currently covered.
36
36
37
37
The council was temporarily unavailable.
38
38
Nothing to do yet — p.stonn keeps trying.
39
39
40
-
You can set the vehicle on your permit yourself at the council:
40
+
You can set the rego on your permit yourself at the council:
Copy file name to clipboardExpand all lines: internal/notify/testdata/golden/apply-failure-urgent.txt
+6-6Lines changed: 6 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -3,12 +3,12 @@ Subject: Action needed: your Visitor still shows XYZ789
3
3
Provenance: You received this at primary@example.com because this address manages, or shares access to, a p.stonn account that schedules a visitor parking permit. p.stonn is a free, unofficial scheduler for City of Stonnington visitor parking permits.
4
4
5
5
p.stonn tried to set your Visitor to Van — ABC123 but couldn't.
6
-
The permit still shows XYZ789, so that is the vehicle currently covered.
6
+
The permit still shows XYZ789, so that is the rego currently covered.
7
7
8
8
The council rejected the change.
9
9
Check the permit on the council's site.
10
10
11
-
You can set the vehicle on your permit yourself at the council:
11
+
You can set the rego on your permit yourself at the council:
Subject: Action needed: your Visitor still shows XYZ789
32
32
Provenance: You received this at sam@example.com because this address manages, or shares access to, a p.stonn account that schedules a visitor parking permit. p.stonn is a free, unofficial scheduler for City of Stonnington visitor parking permits.
33
33
34
34
p.stonn tried to set your Visitor to Van — ABC123 but couldn't.
35
-
The permit still shows XYZ789, so that is the vehicle currently covered.
35
+
The permit still shows XYZ789, so that is the rego currently covered.
36
36
37
37
The council rejected the change.
38
38
Check the permit on the council's site.
39
39
40
-
You can set the vehicle on your permit yourself at the council:
40
+
You can set the rego on your permit yourself at the council:
Subject: Your Visitor was changed to AMY602 at the council
4
4
5
-
The car on your Visitor was changed to AMY602 at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.
5
+
The rego on your Visitor was changed to AMY602 at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.
6
6
7
7
https://p.stonn.org
8
8
9
9
=== OUTBOX account= recipients= ntfy=pstonn-primary// reason=this address manages, or shares access to, a p.stonn account that schedules a visitor parking permit
Subject: Your Visitor was changed to AMY602 at the council
12
12
13
-
The car on your Visitor was changed to AMY602 at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.
13
+
The rego on your Visitor was changed to AMY602 at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.
14
14
15
15
https://p.stonn.org
16
16
17
17
=== OUTBOX account= recipients=sam@example.com ntfy=// reason=this address manages, or shares access to, a p.stonn account that schedules a visitor parking permit
Subject: Your Visitor was changed to AMY602 at the council
20
20
21
-
The car on your Visitor was changed to AMY602 at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.
21
+
The rego on your Visitor was changed to AMY602 at the council directly — p.stonn didn't make this change. If that wasn't you or someone in your household, you may want to check it.
0 commit comments