[registry] Validate module formats and shared dependencies #9

Open
opened 2026-06-02 08:21:14 +00:00 by steve · 0 comments
Owner

Source: Lapis plugin module loading plan, 2026-06-02.

Goal: enforce loader compatibility rules before registry publication/install.

Scope:

  • Extend registry release metadata/schema with formats and runtime metadata.
  • Validate ESM, CommonJS fallback, and sidecar entry files exist.
  • Validate shared dependencies against the generated host catalogue per platform.
  • Reject undeclared externals in official plugin bundles.
  • Reject renderer plugins that declare desktop-only dependencies and sidecar plugins that import renderer-only modules.
  • Allow community/manual compatibility paths to continue with warnings where appropriate.

Acceptance:

  • Invalid official ESM/shared-dependency metadata is rejected by registry validation.
  • Install/enable compatibility warnings are available to the app.
  • Registry rules use generated catalogue metadata, not a second hand-maintained list.
Source: Lapis plugin module loading plan, 2026-06-02. Goal: enforce loader compatibility rules before registry publication/install. Scope: - Extend registry release metadata/schema with formats and runtime metadata. - Validate ESM, CommonJS fallback, and sidecar entry files exist. - Validate shared dependencies against the generated host catalogue per platform. - Reject undeclared externals in official plugin bundles. - Reject renderer plugins that declare desktop-only dependencies and sidecar plugins that import renderer-only modules. - Allow community/manual compatibility paths to continue with warnings where appropriate. Acceptance: - Invalid official ESM/shared-dependency metadata is rejected by registry validation. - Install/enable compatibility warnings are available to the app. - Registry rules use generated catalogue metadata, not a second hand-maintained list.
Sign in to join this conversation.
No labels
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lapis-notes/plugin-registry#9
No description provided.