Plugins
Testing & Debugging

Testing & Debugging

Test in a development-only profile before distributing a bundle. A complete plugin test suite covers at least:

  • manifest schema, semver/API compatibility and tier policy;
  • artifact path containment, SHA-256 mismatch, invalid Ed25519 signatures and signed descriptor/manifest tampering;
  • descriptor path containment, SHA-256 mismatch, install, restart restore and uninstall cleanup;
  • permission denial, live permission revocation and disabled lifecycle;
  • descriptor hash, size, JSON-schema and timeout failures for community bundles;
  • unavailable services, cancellation, rate limits and bounded errors;
  • field-level metadata selection, provenance, conflict and undo when relevant;
  • loading, empty, error and plugin-disabled UI states.

Debugging safely

Use bounded structured diagnostics with a plugin ID, operation, outcome and non-sensitive error code. Do not include local paths, audio, full library records, pairing material, tokens, private storage contents or raw remote payloads. A host may count failures and auto-disable a repeatedly failing plugin. Reproduce lifecycle behaviour with restart and grant-revocation tests, not only an in-memory happy path.

The preview community runtime deliberately cannot execute a test artifact. Its tests validate local installation, grants, disablement, restart restore, uninstall, bundle verification and descriptor activation only. Test a future executable runtime only after its isolation model is published.