feat(plugins): add generic approval ledger and receipts (#3238)

Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com>
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
This commit is contained in:
Alassane
2026-09-15 18:16:06 -04:00
committed by GitHub
parent 37cea5a8c2
commit cb9752b1a2
27 changed files with 3226 additions and 13 deletions
+6
View File
@@ -268,6 +268,12 @@ curated React, UI, and app-store surface.
- capabilities.auth is the highest-risk capability. A webhook response may
assert a verified external identity with X-Kandev-Auth-Login; only assert an
email the IdP verified as owned by the subject. See [ADR 0050](../decisions/0050-plugin-external-auth-capability.md).
- Plugin installations also carry a host-minted opaque installation identity
and a generic capability-approval ledger. That ledger records approval
history, exact approval revisions, and revocation tombstones for the host
boundary, but there is no public mutation UI in this release. Future exact
Host adapters consume the approval receipt/query surface; they do not derive
authority from plugin IDs, package digests, or workspace state.
An isolated web app has a separate browser boundary. Kandev loads it in a
sandboxed iframe with an opaque origin. It cannot use the host DOM, cookies,