refactor(platform): Phase 730 mixin manifest and gossip validation DRY
Introduce platform-mixin-assign-manifest.js (59 rows, same assign order) and manifest-driven apply-platform-mixins loop. Add json-export-gossip-alignment- validate.js, platform-ipc-contract.js; digest-json uses per-entry gossip keys. No observable behavior or mesh semantics changes. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
'use strict'
|
||||
|
||||
/**
|
||||
* Ordered PearcordPlatform prototype mixin registration (Phase 730).
|
||||
* Preserves assign order from index.js / apply-platform-mixins (Phase 727).
|
||||
*/
|
||||
const PLATFORM_MIXIN_ASSIGNMENTS = [
|
||||
{ module: './polls-scheduling', export: 'pollSchedulingMixin' },
|
||||
{ module: './notifications-activity', export: 'notificationsActivityMixin' },
|
||||
{ module: './user-settings', export: 'userSettingsMixin' },
|
||||
{ module: './moderation', export: 'moderationMixin' },
|
||||
{ module: './invites-discovery', export: 'invitesDiscoveryMixin' },
|
||||
{ module: './threads-forum', export: 'threadsForumMixin' },
|
||||
{ module: './announcements-mixin', export: 'announcementsMixin' },
|
||||
{ module: './permissions-mixin', export: 'permissionsMixin' },
|
||||
{ module: './member-roles-mixin', export: 'memberRolesMixin' },
|
||||
{ module: './slash-mixin', export: 'slashMixin' },
|
||||
{ module: './bots-mixin', export: 'botsMixin' },
|
||||
{ module: './webhooks-mixin', export: 'webhooksMixin' },
|
||||
{ module: './automation-mixin', export: 'automationMixin' },
|
||||
{ module: './workers-mixin', export: 'workersMixin' },
|
||||
{ module: './delivery-mixin', export: 'deliveryMixin' },
|
||||
{ module: './health-mixin', export: 'healthMixin' },
|
||||
{ module: './audit-json-mixin', export: 'auditJsonMixin' },
|
||||
{ module: './digest-json-mixin', export: 'digestJsonMixin' },
|
||||
{ module: './relay-json-mixin', export: 'relayJsonMixin' },
|
||||
{ module: './worker-json-mixin', export: 'workerJsonMixin' },
|
||||
{ module: './bot-registry-json-mixin', export: 'botRegistryJsonMixin' },
|
||||
{ module: './slash-json-mixin', export: 'slashJsonMixin' },
|
||||
{ module: './oauth-json-mixin', export: 'oauthJsonMixin' },
|
||||
{ module: './invite-json-mixin', export: 'inviteJsonMixin' },
|
||||
{ module: './permission-json-mixin', export: 'permissionJsonMixin' },
|
||||
{ module: './emoji-json-mixin', export: 'emojiJsonMixin' },
|
||||
{ module: './member-json-mixin', export: 'memberJsonMixin' },
|
||||
{ module: './ban-json-mixin', export: 'banJsonMixin' },
|
||||
{ module: './poll-json-mixin', export: 'pollJsonMixin' },
|
||||
{ module: './pin-json-mixin', export: 'pinJsonMixin' },
|
||||
{ module: './thread-json-mixin', export: 'threadJsonMixin' },
|
||||
{ module: './stage-json-mixin', export: 'stageJsonMixin' },
|
||||
{ module: './voice-json-mixin', export: 'voiceJsonMixin' },
|
||||
{ module: './screen-json-mixin', export: 'screenJsonMixin' },
|
||||
{ module: './presence-json-mixin', export: 'presenceJsonMixin' },
|
||||
{ module: './notification-json-mixin', export: 'notificationJsonMixin' },
|
||||
{ module: './status-json-mixin', export: 'statusJsonMixin' },
|
||||
{ module: './activity-json-mixin', export: 'activityJsonMixin' },
|
||||
{ module: './session-json-mixin', export: 'sessionJsonMixin' },
|
||||
{ module: './device-json-mixin', export: 'deviceJsonMixin' },
|
||||
{ module: './discovery-json-mixin', export: 'discoveryJsonMixin' },
|
||||
{ module: './federation-json-mixin', export: 'federationJsonMixin' },
|
||||
{ module: './mesh-json-mixin', export: 'meshJsonMixin' },
|
||||
{ module: './multi-guild-json-mixin', export: 'multiGuildJsonMixin' },
|
||||
{ module: './partition-heal-json-mixin', export: 'partitionHealJsonMixin' },
|
||||
{ module: './channel-follow-json-mixin', export: 'channelFollowJsonMixin' },
|
||||
{ module: './guild-widget-json-mixin', export: 'guildWidgetJsonMixin' },
|
||||
{ module: './read-state-json-mixin', export: 'readStateJsonMixin' },
|
||||
{ module: './webhook-json-mixin', export: 'webhookJsonMixin' },
|
||||
{ module: './vanity-url-json-mixin', export: 'vanityUrlJsonMixin' },
|
||||
{ module: './effective-permission-json-mixin', export: 'effectivePermissionJsonMixin' },
|
||||
{ module: './invite-link-json-mixin', export: 'inviteLinkJsonMixin' },
|
||||
{ module: './role-override-json-mixin', export: 'roleOverrideJsonMixin' },
|
||||
{ module: './oauth-grant-json-mixin', export: 'oauthGrantJsonMixin' },
|
||||
{ module: './oauth-install-token-json-mixin', export: 'oauthInstallTokenJsonMixin' },
|
||||
{ module: './slash-registry-json-mixin', export: 'slashRegistryJsonMixin' },
|
||||
{ module: './slash-invoke-audit-json-mixin', export: 'slashInvokeAuditJsonMixin' },
|
||||
{ module: './worker-release-json-mixin', export: 'workerReleaseJsonMixin' },
|
||||
{ module: './integration-manifest-json-mixin', export: 'integrationManifestJsonMixin' }
|
||||
]
|
||||
|
||||
module.exports = { PLATFORM_MIXIN_ASSIGNMENTS }
|
||||
Reference in New Issue
Block a user