feat: merge oasis 0.7.5 upstream — tribes ACL, 4 new languages, model/view updates
Manual merge of epsylon/oasis 0.7.5 preserving our mobile-specific work:
- tribes_model: upstream ACL security (validMembershipDelta, structuralFieldsEqual)
+ our inviteLog feature re-applied in generateInvite/joinByInvite
- tribes_view: isSubEdit hides isAnonymous/isLARP when editing subtribes
- blockchain_view: new block types (calendarDate, calendarNote, padEntry, chatMessage),
bd-type-* CSS classes replacing inline styles, encrypted payload filter
- style.css: removed old tribe-parent classes, added bd-type-* and stats utility classes
(mobile.css/OasisMobile.css untouched — our mobile work)
- backend.js: calendarsModel/torrentsModel/mapsModel now receive tribeCrypto+tribesModel,
moved after tribesModel init; ensureFollowTribeMembers call in /tribe/:tribeId route
- translations: updated de/en/es/eu/fr/it/pt + 4 new languages ar/hi/ru/zh
- models (safe copy): calendars, chats, maps, pads, parliament, torrents,
tribe_crypto, tribes_content
- views (safe copy): chats, pads, torrents, stats
- package.json: bumped to 0.7.5
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>