Problem
The extension isolation/security surface is stronger than the contributor experience. Third-party extension work needs typed contracts, manifest validation artifacts, and a mock host so contributors can build without reverse-engineering the app internals.
Evidence
- Extension host code and sandboxing exist, but there is no shipped
silent-ext.d.ts contract for extension authors.
- Manifest validation is backed by Rust types, but no generated JSON Schema is published for
manifest.json authoring.
- No mock-host test harness is available for extension development outside the full app.
Acceptance criteria
- Add
silent-ext.d.ts covering host APIs, grant shapes, event envelopes, and UI/data boundaries.
- Generate or maintain a JSON Schema for extension
manifest.json from the Rust manifest types.
- Provide a mock-host harness for local extension tests.
- Update extension docs with a minimal working extension, test command, and packaging expectations.
- Keep docs explicit that hosted deploys only enable extensions when the real extension route is available.
Problem
The extension isolation/security surface is stronger than the contributor experience. Third-party extension work needs typed contracts, manifest validation artifacts, and a mock host so contributors can build without reverse-engineering the app internals.
Evidence
silent-ext.d.tscontract for extension authors.manifest.jsonauthoring.Acceptance criteria
silent-ext.d.tscovering host APIs, grant shapes, event envelopes, and UI/data boundaries.manifest.jsonfrom the Rust manifest types.