47 const std::vector<std::uint8_t>& trusted_public_key,
57 "remote update channel accepts ui-script packs only"};
60 if (!srl_fresh || srl ==
nullptr)
62 "no fresh revocation list for this remote fetch"};
63 const std::string signer_fpr =
srl_hex_encode(m.signer_public_key);
66 for (
const auto& f : m.files)
71 if (m.pack_version <= installed_pack_version)
73 "pack version " + std::to_string(m.pack_version) +
74 " does not exceed installed " + std::to_string(installed_pack_version)};
80 "declared capabilities include an unknown token"};
85 if (requested.
has(c) && !host_granted.
has(c))
88 "' the host did not grant"};
A granted-capability set.
Definition reload_capabilities.hpp:74
static bool parse(const std::vector< std::string > &names, CapabilitySet &out)
Parse a declared-capability name list (from the signed manifest).
Definition reload_capabilities.hpp:117
bool has(ReloadCapability c) const
Definition reload_capabilities.hpp:86
std::string_view capability_name(ReloadCapability c)
Stable wire name for a capability (used in the SIGNED pack manifest + config).
Definition reload_capabilities.hpp:45
@ RuntimeImport
evaluate a runtime-imported JS bundle (dynamic code load)
Definition reload_capabilities.hpp:38
@ Clipboard
read/write the system clipboard
Definition reload_capabilities.hpp:34
@ Ai
AI-CLI bridge.
Definition reload_capabilities.hpp:37
@ Storage
persistent key/value + preset temp files
Definition reload_capabilities.hpp:36
@ Exec
shell exec/execAsync — ALSO compiled out unless the PULP_DEV_BRIDGE_EXEC CMake option is ON (release/...
Definition reload_capabilities.hpp:32
@ Filesystem
read arbitrary file paths (asset file loads, native dialogs)
Definition reload_capabilities.hpp:35
@ Network
outbound network (reserved; used by remote-UX-push, not the bridge today)
Definition reload_capabilities.hpp:39
Signed Revocation List (SRL) + namespaced monotonic epoch floor.
Sealed swap-pack manifest + per-file integrity.