refactor(branding): rename app Tanemaki → Tane

Public name is now Tane (種, "seed"); Tanemaki (種まき, "to scatter seeds")
is kept only as etymology in the About screen and onboarding.

App not yet distributed, so format tokens rename cleanly with no migration:
backup extension .tanemaki→.tane, QR scheme tanemaki://→tane://, file
prefixes tane-*. Website link and species-catalog User-Agent →
tane.comunes.org. Android label capitalised to "Tane".

Identity/crypto constants already use org.comunes.tane (derivation, HKDF
backup, sync namespace, TANE1 recovery tag) — left untouched, so keys,
backups and sync are unaffected. Tests updated; analyze + full suite green.
This commit is contained in:
vjrj 2026-07-12 13:04:16 +02:00
parent 2c113cc17d
commit a534c14983
34 changed files with 180 additions and 180 deletions

View file

@ -29,7 +29,7 @@ abstract final class RecoveryCode {
static String decode(String code) {
final compact = code.toUpperCase().replaceAll(RegExp(r'[\s-]'), '');
if (!compact.startsWith(_tag)) {
throw const FormatException('Not a Tanemaki recovery code');
throw const FormatException('Not a Tane recovery code');
}
final payload = compact.substring(_tag.length);
final bytes = _unbase32(payload);

View file

@ -13,7 +13,7 @@ class NostrRatingTransport implements RatingTransport {
final NostrChannel _conn;
/// Custom Tanemaki rating kind (addressable range, next to trust's 30777).
/// Custom Tane rating kind (addressable range, next to trust's 30777).
static const kindRating = 30778;
@override

View file

@ -14,7 +14,7 @@ class NostrTrustTransport implements TrustTransport {
final NostrChannel _conn;
/// Custom Tanemaki certification kind (addressable range).
/// Custom Tane certification kind (addressable range).
static const kindCertification = 30777;
int get _now => DateTime.now().millisecondsSinceEpoch ~/ 1000;