App Registry
Purpose
Register app IDs with metadata, ownership, status, and module lists.
Scope
This contract records app metadata and modules. It does not execute app logic.
Actors and Roles
- App owners register and manage app entries.
- App admins update metadata and module lists.
- Owner configures the permissions contract.
State and Storage Model (High-Level)
- App records keyed by
appId(name, metadata URI, owner, status, version). - Module list per app with module type and active flag.
Core Flows
registerAppcreates a new app entry.updateMetadataincrements version and updates metadata.addModuleadds a module contract to an app.setAppStatussuspends or reactivates an app.
Security Invariants
- Only app owners or admins can update app records.
- Module updates are auditable via events.
Integration Notes
- Use events to build app indexes.
- Treat status as authoritative for app availability.