fix: "practise" -> "practice" (American spelling, matches the rest of the UI)

Three spots used British "practise" while the rest of the app uses
American "practice" (Keep practicing, Virtuoso - Practice, etc.):
- static/v3/profile.js — first-run onboarding "Feats of Power" step
- plugins/achievements/feats.json — The Witching Hour feat description
- plugins/achievements/engine.py — code comment

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: topkoa <topkoa@gmail.com>
This commit is contained in:
topkoa
2026-06-29 15:18:05 -04:00
co-authored by Claude Opus 4.8
parent dfa825b4ab
commit 38297937b7
3 changed files with 3 additions and 3 deletions
+1 -1
View File
@@ -109,7 +109,7 @@ def apply_activity(counters, delta):
def consecutive_run_length(dates): def consecutive_run_length(dates):
"""Longest run of consecutive calendar dates in ``dates`` (ISO 'YYYY-MM-DD'). """Longest run of consecutive calendar dates in ``dates`` (ISO 'YYYY-MM-DD').
Used by the `secret_witching` Feat (practise in the 25am window on N Used by the `secret_witching` Feat (practice in the 25am window on N
consecutive nights). Pure date arithmetic so it's unit-testable; routes.py consecutive nights). Pure date arithmetic so it's unit-testable; routes.py
feeds it the distinct night-dates recorded in `comp_ledger`. feeds it the distinct night-dates recorded in `comp_ledger`.
""" """
+1 -1
View File
@@ -76,7 +76,7 @@
{ {
"id": "secret_witching", "id": "secret_witching",
"title": "The Witching Hour", "title": "The Witching Hour",
"description": "Practise in the dead of night, seven nights running.", "description": "Practice in the dead of night, seven nights running.",
"category": "global", "category": "global",
"sourceId": "achievements", "sourceId": "achievements",
"secret": true, "secret": true,
+1 -1
View File
@@ -375,7 +375,7 @@
// Step 3 — Achievements wall opt-in (first-run only; default OFF). // Step 3 — Achievements wall opt-in (first-run only; default OFF).
'<div id="v3-ob-step3" class="hidden">' + '<div id="v3-ob-step3" class="hidden">' +
'<label class="block text-xs uppercase tracking-wider text-fb-textDim mb-2">Feats of Power</label>' + '<label class="block text-xs uppercase tracking-wider text-fb-textDim mb-2">Feats of Power</label>' +
'<p class="text-sm text-fb-textDim mb-3">As you practise youll earn rare <span class="text-fb-text">Feats of Power</span> — silly, bombastic activity trophies. Want to show them off on the public <span class="text-fb-text">Feats wall</span>?</p>' + '<p class="text-sm text-fb-textDim mb-3">As you practice youll earn rare <span class="text-fb-text">Feats of Power</span> — silly, bombastic activity trophies. Want to show them off on the public <span class="text-fb-text">Feats wall</span>?</p>' +
'<label class="flex items-start gap-3 cursor-pointer rounded-lg border border-fb-border/50 bg-fb-bg/40 p-3">' + '<label class="flex items-start gap-3 cursor-pointer rounded-lg border border-fb-border/50 bg-fb-bg/40 p-3">' +
'<input type="checkbox" id="v3-ob-optin" class="mt-1 h-4 w-4 rounded border-gray-600 bg-gray-800 text-fb-primary focus:ring-fb-primary">' + '<input type="checkbox" id="v3-ob-optin" class="mt-1 h-4 w-4 rounded border-gray-600 bg-gray-800 text-fb-primary focus:ring-fb-primary">' +
'<span class="text-sm text-fb-text">Share my Feats on the wall' + '<span class="text-sm text-fb-text">Share my Feats on the wall' +