Raven Scott and Cursor
8d23288b41
feat(mesh): guild channel settings gossip sync-ready (Phase 794)
...
Apply slowmode on CHANNEL_SETTINGS gossip, count channelSettings in GUILD_SYNC
ingest/wire handlers, and emit guild-sync-ready for remote settings propagation.
Co-authored-by: Cursor <[email protected] >
2026-06-03 22:21:44 -04:00
Raven Scott and Cursor
0ac42af467
feat(mesh): guild soundboard GUILD_SYNC slice and gossip sync-ready (Phase 793)
...
Export and ingest guildSounds in full sync bundles, emit guild-sync-ready on
sound gossip (including tombstone deletes), and sanitize sound rows for wire.
Co-authored-by: Cursor <[email protected] >
2026-06-03 22:16:36 -04:00
Raven Scott and Cursor
675ee4ac52
Phase 792: pin gossip guild-sync-ready and GUILD_SYNC pins slice counts.
...
Track pinsApplied on sync ingest; emit pin after bundle pin rows apply.
Co-authored-by: Cursor <[email protected] >
2026-06-03 22:09:53 -04:00
Raven Scott and Cursor
7fb3be2adb
Phase 791: GUILD_SYNC guildStickers slice and guild-sync-ready stickers count.
...
Export/ingest custom sticker bundles; sticker gossip emits structural sync-ready.
Co-authored-by: Cursor <[email protected] >
2026-06-03 22:04:20 -04:00
Raven Scott and Cursor
bf16bd2e9a
Phase 790: GUILD_SYNC guildEmojis slice and guild-sync-ready emojis count.
...
Export/ingest custom emoji bundles; emoji gossip emits structural sync-ready.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:59:11 -04:00
Raven Scott and Cursor
2476fad34e
Phase 789: guild-sync-ready reactions slice on reaction gossip (v0.8.756)
...
Emit guild-sync-ready with reactions on REACTION_TOGGLE ingest and count
GUILD_SYNC reactions bundle in wire handler.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:51:40 -04:00
Raven Scott and Cursor
e0a6eaeab7
Phase 788: guild-mesh-reconnected on rejoin and peer-drop recovery (v0.8.755)
...
Emit after zero-peer mesh rejoin and when _recoverGuildMeshAfterPeerDrop
completes with active peers.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:46:15 -04:00
Raven Scott and Cursor
b17e7bdc74
Phase 787: guild-sync-ready roles slice on role gossip (v0.8.754)
...
Emit guild-sync-ready with roles on guild-role, guild-role-delete, and
guild-member-roles; count guildRoles/memberRoleLinks in GUILD_SYNC ingest.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:40:24 -04:00
Raven Scott and Cursor
7e4942f709
Phase 785: voiceOccupancy guild-sync ready and voice-state emit
...
Return voice applied count from ingest; wire guild-sync-ready includes
voice; detect voiceOccupancy-only sync slices.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:30:03 -04:00
Raven Scott and Cursor
d18971a689
Phase 784: guild-sync channel slice ready events and channel emit
...
Return channels count from ingest; emit channel after channel bundle
ingest; wire guild-sync-ready includes channels for structural UI push.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:25:48 -04:00
Raven Scott and Cursor
31cdce2c9d
Phase 783: clear sync push halt on guest mesh peer-join
...
Guests resume watermark delta sync after reconnect instead of staying
halted when ACK gate had paused host pushes.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:20:57 -04:00
Raven Scott and Cursor
f5f2f2987d
Phase 782: surface presence count on guild-sync ingest and ready events
...
Return presence applied from vector ingest; wire emits guild-sync-ready when
presenceVector-only bundles arrive so workers push peer status to UI.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:16:59 -04:00
Raven Scott and Cursor
bc663d29fc
feat(mesh): emit guild-sync-ready after MEMBER_PAGE ingest (v0.8.748)
...
Member-page completion notifies the worker for structural roster pushes.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:11:23 -04:00
Raven Scott and Cursor
2792be67c8
feat(mesh): peer retry on guild create and wire/outbox hardening (v0.8.747)
...
Schedule mesh peer retry when create finishes with no peers; gossip outbox and
wire mixin tweaks for join reliability during guild loading.
Co-authored-by: Cursor <[email protected] >
2026-06-03 21:04:38 -04:00
Raven Scott and Cursor
66160bbc53
Improve guild member roster sync and mesh recovery reliability.
...
Queue member join and sync-request gossip through the outbox, infer members from mesh peers and profiles, add host-initiated identify handshake, and harden partition heal plus mesh bounded clearing.
Co-authored-by: Cursor <[email protected] >
2026-06-03 20:28:00 -04:00
Raven Scott and Cursor
822cc91554
Restore compliance snapshot partition heal dropped in JSON export factory migration.
...
Co-authored-by: Cursor <[email protected] >
2026-06-03 19:00:58 -04:00
Raven Scott and Cursor
53044f0be3
Gate guild boost APIs and view data behind boostsEnabled server setting.
...
Co-authored-by: Cursor <[email protected] >
2026-06-03 18:52:13 -04:00
Raven Scott and Cursor
ddcdc33363
docs: link mixin README to PLATFORM_MIXINS and prestage workflow
...
Clarify category folders, regenerate npm script, and OTA prestage docs.
Co-authored-by: Cursor <[email protected] >
2026-06-03 17:45:18 -04:00
Raven Scott and Cursor
a5dba86570
refactor(platform): organize mixins into category directories
...
Move 136 prototype mixins under mixins/domain, json-export, and
runtime/* so the package root stays navigable. Manifest assign order
is unchanged; apply-platform-mixins and runtime registry paths updated.
Co-authored-by: Cursor <[email protected] >
2026-06-03 17:42:26 -04:00
Raven Scott
08bdbf4d17
Update Docs
2026-06-03 17:33:33 -04:00
Raven Scott and Cursor
de7dfb3b1d
feat(permissions): effective inspector polish and cross-links (v0.8.746)
...
Phase 779 adds copy effective-permissions deep links with optional memberId,
live breakdown refresh while the inspector is open, and a cross-link to
channel permissions for the focused role. Closes deferred P778-42.
Co-authored-by: Cursor <[email protected] >
2026-06-03 16:03:16 -04:00
Raven Scott and Cursor
cdf6a1178a
feat(platform): effective permissions deep link role focus (Phase 778)
...
navigateDeepLink returns openEffectivePermissions and
effectivePermFocusRoleId from guild-channel query params.
Co-authored-by: Cursor <[email protected] >
2026-06-03 15:58:55 -04:00
Raven Scott and Cursor
3da679e2cf
feat(platform): return channelPermFocusRoleId from channel permissions deep links
...
navigateDeepLink guild-channel results now include the roleId query param
for UI modal focus (Phase 777).
Co-authored-by: Cursor <[email protected] >
2026-06-03 15:49:44 -04:00
Raven Scott and Cursor
192ec0fd5e
Document Phase 776 role editor CI closure in platform README.
...
Notes editor track completion and partition heal verification for custom
roles in the Phase 776 release bundle.
Co-authored-by: Cursor <[email protected] >
2026-06-03 15:36:25 -04:00
Raven Scott and Cursor
d0119b9442
Annotate role span taxonomy for Phase 775 editor track.
...
Documents role.create/update/delete/reorder/member spans and tags create
paths with editorTrack role.editor.create for editor-origin telemetry.
Co-authored-by: Cursor <[email protected] >
2026-06-03 15:24:12 -04:00
Raven Scott and Cursor
bfc5eb4508
feat(deep-links): pass roleId and roleTab through settings navigateDeepLink
...
Surface settings deep-link role selection fields in deep-link-result for
the role editor Permissions tab (Phase 772).
Co-authored-by: Cursor <[email protected] >
2026-06-03 14:52:24 -04:00
Raven Scott and Cursor
30965efaf7
feat(platform): pass hoist/mentionable on createGuildCustomRole (Phase 771)
...
Role create IPC now forwards display flags to guild-roles storage.
Co-authored-by: Cursor <[email protected] >
2026-06-03 14:33:43 -04:00
Raven Scott and Cursor
d1caedef8b
feat(platform): view.roleEditor and roleEditorPrefs slice (Phase 769)
...
Expose role editor selection state on the guild settings view snapshot.
Co-authored-by: Cursor <[email protected] >
2026-06-03 14:20:01 -04:00
Raven Scott and Cursor
438ef65cc4
feat(platform): debounce user pref sliders and guild name updates (Phase 768)
...
Coalesce fontScale/voiceAttenuation patches in updateUserPrefs and debounce
name-only updateGuildSettings calls to reduce mesh churn during settings edits.
Co-authored-by: Cursor <[email protected] >
2026-06-03 14:00:25 -04:00
Raven Scott and Cursor
06c8d9b7c7
Expose settingsHub on platform view and extend settings deep links.
...
Platform view now includes settingsHub metadata from the shared taxonomy.
formatSettingsDeepLink forwards guildId and category for Phase 766 copy-link
and navigation parity.
Co-authored-by: Cursor <[email protected] >
2026-06-03 13:24:05 -04:00
Raven Scott and Cursor
6d6d8bca00
refactor(platform): one-pass class decomposition into 25 mixins (Phase 756)
...
Move ~30k lines from platform-pearcord-platform-class.js into dedicated
platform-* mixins including view(), guild wire/sync, JSON export surface,
and domain APIs. Manifest grows to 136 rows with 76 runtime mixins; class
spine retains constructor, session lifecycle, openGuild, and close (~938 lines).
Co-authored-by: Cursor <[email protected] >
2026-06-03 13:11:56 -04:00
Raven Scott and Cursor
f455de2bfa
fix(platform): static mixin requires for Pear bundler compatibility
...
Replace dynamic require() loop in apply-platform-mixins with generated
static requires (ORDERED_PLATFORM_MIXINS). Pear runtime resolves dynamic
paths to .bare addons with unsupported pear: protocol; static requires
fix pear run and staged release boot. Regenerate via
apps/pearcord/scripts/regenerate-apply-platform-mixins.py when manifest changes.
Co-authored-by: Cursor <[email protected] >
2026-06-03 12:24:28 -04:00
Raven Scott and Cursor
e1c3f27641
refactor(platform): Phase 755 embed/voicenote/attachment heal mixins (v0.8.731)
...
Extract stale embed cache heal, failed voicenote draft retry, and orphaned
attachment relink into three prototype mixins (manifest 111 rows, runtime registry
51). Non-breaking: identical partition extended heal embed/voice/attachment paths;
platform class ~31205 lines (~96 net drop).
Co-authored-by: Cursor <[email protected] >
2026-06-03 12:06:26 -04:00
Raven Scott and Cursor
f3e2583dde
refactor(platform): Phase 754 forum filter & partition heal mixins (v0.8.730)
...
Extract setForumIncludeArchived, partition reaction/sticker relist heal, and
member/voice/thread metadata partition heal into three prototype mixins (manifest
108 rows, runtime registry 48). Non-breaking: identical forum filter behavior,
reaction cache invalidation, sticker gossip upsert, and roster/thread heal paths;
platform class ~31300 lines (~125 net drop).
Co-authored-by: Cursor <[email protected] >
2026-06-03 12:02:30 -04:00
Raven Scott and Cursor
15b0b4600e
refactor(platform): Phase 753 pin/discovery/partition heal mixins (v0.8.729)
...
Extract orphan pin row repair, unread consistency audit, discovery tag mesh
publish, and partition pin/search index heal into four prototype mixins
(manifest 105 rows, runtime registry 45). Non-breaking: identical pin repair,
unread audit logging, discovery tag updates, and partition heal gossip/index
behavior; platform class ~31424 lines (~141 net drop).
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:58:41 -04:00
Raven Scott and Cursor
5d242d5da9
refactor(platform): Phase 752 forum search & view consistency mixins (v0.8.728)
...
Extract forum post local/mesh search, partition forum index heal, and channel
view pin/reaction consistency audit into three prototype mixins (manifest 101
rows, runtime registry 41). Non-breaking: identical forum search, partition heal,
and view consistency audit behavior; platform class ~31564 lines (~311 net drop).
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:54:22 -04:00
Raven Scott and Cursor
713658b6bc
refactor(platform): Phase 751 guild search query & mesh resolve mixins (v0.8.727)
...
Extract searchGuildMessages, getGuildSearchIndexMeta, _applySearchQueryFilters,
and searchGuildMessagesWithMesh into three prototype mixins (manifest 98 rows,
runtime registry 38). Non-breaking: identical local/mesh search, structured filter
matching, and index meta reporting; platform class ~31874 lines (~127 net drop).
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:50:29 -04:00
Raven Scott and Cursor
02a879fed3
refactor(platform): Phase 750 search index & discovery mesh mixins (v0.8.726)
...
Extract guild search index store/persist/rebuild, mesh search gossip handlers,
and discovery listing refresh after mesh actions into four prototype mixins
(manifest 95 rows, runtime registry 35). Non-breaking: identical search index
persistence, mesh waiter behavior, and federation-scoped discovery refresh;
platform class ~32001 lines (~152 net reduction).
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:45:30 -04:00
Raven Scott and Cursor
315318a90b
refactor(platform): Phase 749 view/search/discovery cache mixins (v0.8.725)
...
Extract view list cache, guild search cache, and discovery prefs baseline
helpers into three prototype mixins (manifest 91 rows, runtime registry 31).
Non-breaking: identical cache invalidation, composer focus TTL, and prefs
ingest behavior; platform class ~32154 lines (~91 net reduction).
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:39:19 -04:00
Raven Scott and Cursor
f7aeb84704
Phase 748: extract thread/forum export and schedule mixins
...
Non-breaking refactor: move thread archive and forum tag palette export,
discovery listing push/revoke scheduling and listing delta hints, member page
debounce scheduling, guild sync attachment pull scheduling, and reaction
tombstone key helper out of platform-pearcord-platform-class.js. Manifest
rows 85→88; runtime registry 25→28. Sync and discovery scheduling unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:35:18 -04:00
Raven Scott and Cursor
7d81dcf305
Phase 747: extract sparse QoS, contacts presence, voice mesh mixins
...
Non-breaking refactor: move channel core key filtering, sparse ack defer
policy, guild sync ack gossip, debounced contacts presence reconcile, and
voice speaking/mute mesh state helpers out of platform-pearcord-platform-class.js.
Manifest rows 82→85; runtime registry 22→25. Sparse sync, presence, and voice
mesh behavior unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:31:10 -04:00
Raven Scott and Cursor
6d7f3b8a4e
Phase 746: extract presence vector, settings mesh health, wire/sparse mixins
...
Non-breaking refactor: move presence vector export/reconcile/bump, settings
mesh health gossip schedule/broadcast/ingest and packet routing, guild sync
bundle wire sanitization, sparse open rate limiting, and presence vector mesh
broadcast out of platform-pearcord-platform-class.js. Manifest rows 79→82;
runtime registry 19→22. Presence and settings mesh behavior unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:27:17 -04:00
Raven Scott and Cursor
c05223413c
Phase 745: extract sync health patch, gossip view, push schedule mixins
...
Non-breaking refactor: move _patchGuildSyncHealth and health count refresh,
gossip lane alert thresholds, sparse ack view rows, compact health slice,
discovery listing expiry view, and guild sync push/request burst schedulers
out of platform-pearcord-platform-class.js. Manifest rows 76→79; runtime
registry 16→19. Sync health and mesh scheduling behavior unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:23:08 -04:00
Raven Scott and Cursor
88a1624a2c
Phase 744: extract guild sync watermark, gossip, bandwidth mixins
...
Non-breaking refactor: move sync watermark/ack/tail helpers, gossip outbox
queue and flush, and bandwidth/member-page slice helpers out of
platform-pearcord-platform-class.js. Manifest rows 73→76; runtime registry
13→16. Mesh sync behavior and observability unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:18:51 -04:00
Raven Scott and Cursor
870cb61b46
Phase 743: extract mesh view, logging, and member burst mixins
...
Non-breaking refactor: move sync fanout watermarks, mesh peer quality and
status summary, mesh span logging (partition heal, topic pool, churn,
resilience, federation live), topic pool peer tracking, and member page
burst limit helpers out of platform-pearcord-platform-class.js. Manifest
rows 70→73; runtime registry 10→13. Behavior and observability unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:14:10 -04:00
Raven Scott and Cursor
6fe8bda25b
Phase 742: extract topic replication, mesh auto-heal, peer retry mixins
...
Non-breaking refactor: move _refreshGuildTopicPoolCap,
_recordChannelReplicationDiag, _channelReplicationDiagnosticsForExport,
_touchMeshZeroPeerSince, _maybeTriggerMeshAutoHeal, _startMeshAutoHealWatchdog,
_clearGuildMeshPeerRetry, and _scheduleGuildMeshPeerRetry from
platform-pearcord-platform-class.js into dedicated runtime mixins. Manifest
rows 67→70; runtime registry 7→10. Observable mesh and replication behavior
unchanged.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:08:38 -04:00
Raven Scott and Cursor
e1aa68456c
refactor(platform): extract guild mesh peer mixin (Phase 741)
...
Move peer seen tracking, stale peer eviction, sweep timers, and adaptive
mesh retry delay into platform-guild-mesh-peer-mixin.js (67 manifest rows;
runtime registry 7 modules). Class ~33607 lines. No behavior change.
Co-authored-by: Cursor <[email protected] >
2026-06-03 11:02:43 -04:00
Raven Scott and Cursor
8e53355fd5
refactor(platform): mesh bounded and federation view mixins (Phase 740)
...
Extract _isGuildMeshBounded/_setGuildMeshBounded and federation/multi-guild
view helpers (_guildSyncHealthRailForView, _federationSyncAggregateForView,
_logMultiGuildMesh, etc.) to dedicated runtime mixins. Manifest 66 rows;
runtime registry 6 modules. Class ~33864 lines. No behavior change.
Co-authored-by: Cursor <[email protected] >
2026-06-03 10:58:16 -04:00
Raven Scott and Cursor
7a573ae2e2
refactor(platform): guild open and partition heal mixins (Phase 739)
...
Extract guild open fallback throttle and partition heal state helpers to
platform-guild-open-fallback-mixin and platform-partition-heal-state-mixin
(64 manifest rows). Add platform-runtime-mixin-registry. Class ~34044 lines.
No behavior change.
Co-authored-by: Cursor <[email protected] >
2026-06-03 10:53:35 -04:00
Raven Scott and Cursor
3c348f4fcc
refactor(platform): runtime mixins and export manifest (Phase 738)
...
Extract _hyperswarmOpts/_newHyperswarm and _startupStepTimeout to
platform-hyperswarm-runtime-mixin and platform-session-startup-mixin
(62 manifest rows). Add platform-class-imports and
platform-index-export-manifest; registries derive counts from manifest.
No behavior change.
Co-authored-by: Cursor <[email protected] >
2026-06-03 10:49:34 -04:00