Extensions
Phasoric has several extension layers with different trust and compatibility contracts. They should not be marketed as one unrestricted plugin system.
Lightweight Extension SDK
The current client exposes a narrow global registry:
BasaltExtensions.registerCommand(pluginId, command)
BasaltExtensions.registerImporter(pluginId, importer)
BasaltExtensions.registerQuarryView(pluginId, view)
The registry stores only registered command/importer/view capabilities. Extensions are not handed raw Phasoric database, authentication, filesystem, or network objects through this registry.
Commands
A command registration requires a plugin ID, command ID, and runnable command function.
Importers
An importer registration requires a plugin ID, importer ID, and import function.
Quarry views
A Quarry view requires a plugin ID, view ID, and render function.
Security wording
The narrow registry is a capability boundary, but it should not be described as a hardened arbitrary-code sandbox unless the complete loader/execution path proves that property. Public documentation should describe what capabilities Phasoric supplies, not promise that arbitrary JavaScript is safe merely because the registry itself is narrow.
Vertical Intelligence Packs
Vertical Intelligence Packs define how a domain reasons over Phasoric's shared intelligence core. They can define domain entities, relationships, governing constraints, source-authority semantics, deterministic evaluators, Decision Signals, readiness concepts, and domain-specific handoffs into Pulse/Strata/Forge.
They do not create a second decision engine, action engine, trust model, or canonical storage system.
Current authoring should be treated as first-party / approved partner preview, not unrestricted public arbitrary-code installation.
Product Experience Packs
Product Experience Packs define how a product presents Phasoric capabilities:
- branding;
- terminology;
- navigation;
- onboarding intent;
- home surfaces;
- capability visibility;
- safe presentation presets.
A Product Experience cannot change data authority, domain truth, entitlement, or governance merely by hiding/showing a capability.
Product Experience authoring is currently a first-party / approved partner preview surface.
Product Runtime
If you are building a separate application over Phasoric rather than extending the Phasoric UI, use Product Runtime instead of deep-importing internal UI/storage modules.
Which extension path should I use?
| Goal | Extension path |
|---|---|
| Add a narrow command/importer/Quarry renderer inside Phasoric | Lightweight Extension SDK |
| Add a new professional/domain reasoning model | Vertical Intelligence Pack |
| Create a different Phasoric product UX | Product Experience Pack |
| Build a separate application over Phasoric | Product Runtime |
Governance
None of these extension layers may bypass Strata decision authority, Forge mutation/action boundaries, Context Scope audience rules, plan entitlements, logical-vault grants, or permanent-memory trust/review requirements.
