# Loaded Addon Control Center

ApiVault v1.2.0 includes a Loaded Addon Control Center for inspecting loaded/known addons and creating opt-in report requests.

## Commands

```text
/av addoncenter
/av addoncontrol
/av loadedaddons
/av requestreport
```

## What it shows

```text
- runtime addon metadata
- loaded/enabled/loadable state
- Version, Author, Interface
- Dependencies and OptionalDeps
- SavedVariables and SavedVariablesPerCharacter metadata where available
- ApiVault Public Developer API registration state
- Error Inbox matches
- Bug Advisor matches
- API traces, event traces, secure risks and SavedVariables reports if the addon opted in
- pending opt-in report requests
```

## Request model

ApiVault does not force arbitrary addons to execute code. Request buttons create pending request records only. An addon must opt in and poll `AV:GetPendingRequests()` to respond.

## Public API additions

```lua
local AV = ApiVault and ApiVault.GetPublicAPI and ApiVault:GetPublicAPI("MyAddon", 1)

if AV then
    for _, request in ipairs(AV:GetPendingRequests()) do
        if request.requestType == "savedvariables-status" then
            AV:ReportSavedVariables({ name = "MyAddonDB", initialized = type(MyAddonDB) == "table" })
            AV:AckRequest(request.id)
        end
    end
end
```

## Safety

```text
- no force-loading LoadOnDemand addons
- no arbitrary addon function calls
- no protected/secure execution
- no runtime source file reads
- opt-in only
```
