{
  "compat_manifest": {
    "module_aliases": {
      "app.application.filter": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.rules",
        "target": "app.application.rules"
      },
      "app.application.filter_rules": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.rules",
        "target": "app.application.rules"
      },
      "app.chain.media_interaction": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "chain",
        "replacement": "app.chain.interaction",
        "target": "app.chain.interaction"
      },
      "app.core.auth": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.security.auth",
        "target": "app.application.security.auth"
      },
      "app.core.auth_bridge": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.security.auth",
        "target": "app.application.security.auth"
      },
      "app.core.cache": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.cache",
        "target": "app.sdk.cache"
      },
      "app.core.config": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.config",
        "target": "app.runtime.config"
      },
      "app.core.context": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.context"
      },
      "app.core.event": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.events",
        "target": "app.runtime.events"
      },
      "app.core.meta.customization": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.customization"
      },
      "app.core.meta.infopath": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.infopath"
      },
      "app.core.meta.metaanime": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.metaanime"
      },
      "app.core.meta.metabase": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.metabase"
      },
      "app.core.meta.metamusic": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.metamusic"
      },
      "app.core.meta.metavideo": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.metavideo"
      },
      "app.core.meta.releasegroup": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.releasegroup"
      },
      "app.core.meta.streamingplatform": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.streamingplatform"
      },
      "app.core.meta.words": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta.words"
      },
      "app.core.metainfo": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.metainfo"
      },
      "app.core.module": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.plugins",
        "target": "app.runtime.extensions.module_manager"
      },
      "app.core.plugin": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.plugins",
        "target": "app.runtime.extensions.plugin_manager"
      },
      "app.core.security": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.security",
        "target": "app.sdk.security"
      },
      "app.db.agentchat_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.agentchat",
        "target": "app.db.oper.agentchat"
      },
      "app.db.agenttask_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.agenttask",
        "target": "app.db.oper.agenttask"
      },
      "app.db.downloadfailure_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.downloadfailure",
        "target": "app.db.oper.downloadfailure"
      },
      "app.db.downloadhistory_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.downloadhistory",
        "target": "app.db.oper.downloadhistory"
      },
      "app.db.init": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "startup",
        "replacement": "app.startup.initializers.database",
        "target": "app.startup.initializers.database"
      },
      "app.db.mediaserver_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.mediaserver",
        "target": "app.db.oper.mediaserver"
      },
      "app.db.message_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.message",
        "target": "app.db.oper.message"
      },
      "app.db.plugindata_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.plugindata",
        "target": "app.db.oper.plugindata"
      },
      "app.db.site_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.site",
        "target": "app.db.oper.site"
      },
      "app.db.subscribe_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.application.subscription.write.add_subscribe",
        "target": "app.sdk._legacy.subscribe"
      },
      "app.db.subscribehistory_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.subscribehistory",
        "target": "app.db.oper.subscribehistory"
      },
      "app.db.systemconfig_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.systemconfig",
        "target": "app.db.oper.systemconfig"
      },
      "app.db.transferhistory_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.application.history",
        "target": "app.sdk._legacy.history"
      },
      "app.db.transferpending_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.transferpending",
        "target": "app.db.oper.transferpending"
      },
      "app.db.user_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.db.oper.user 或 app.api.deps",
        "target": "app.sdk._legacy.user"
      },
      "app.db.userconfig_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.userconfig",
        "target": "app.db.oper.userconfig"
      },
      "app.db.workflow_oper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "db",
        "replacement": "app.db.oper.workflow",
        "target": "app.db.oper.workflow"
      },
      "app.domain.string": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.utilities",
        "target": "app.sdk.string"
      },
      "app.helper.agent": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.messaging.agent",
        "target": "app.application.messaging.agent"
      },
      "app.helper.audio": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.audio",
        "target": "app.application.audio"
      },
      "app.helper.browser": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.network.browser",
        "target": "app.adapters.network.browser"
      },
      "app.helper.cloudflare": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.network.cloudflare",
        "target": "app.adapters.network.cloudflare"
      },
      "app.helper.cookie": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.security.cookie",
        "target": "app.application.security.cookie"
      },
      "app.helper.cookiecloud": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.external.cookiecloud",
        "target": "app.adapters.external.cookiecloud"
      },
      "app.helper.directory": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.directory",
        "target": "app.application.directory"
      },
      "app.helper.display": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.system.display",
        "target": "app.adapters.system.display"
      },
      "app.helper.doh": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.network.doh",
        "target": "app.adapters.network.doh"
      },
      "app.helper.downloader": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.services",
        "target": "app.application.downloader"
      },
      "app.helper.format": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.formatting",
        "target": "app.application.formatting"
      },
      "app.helper.image": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.image",
        "target": "app.application.image"
      },
      "app.helper.interaction": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.messaging.interaction",
        "target": "app.application.messaging.interaction"
      },
      "app.helper.llm": {
        "introduced": "v3.0.0",
        "is_package": true,
        "owner": "agent",
        "replacement": "app.agent.llm",
        "target": "app.agent.llm"
      },
      "app.helper.locale": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.utilities",
        "target": "app.runtime.localization"
      },
      "app.helper.market": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.external.market",
        "target": "app.adapters.external.market"
      },
      "app.helper.mediaserver": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.services",
        "target": "app.application.mediaserver"
      },
      "app.helper.message": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.messaging.message",
        "target": "app.application.messaging.message"
      },
      "app.helper.module": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.foundation.reflection",
        "target": "app.foundation.reflection"
      },
      "app.helper.nfo": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.scraper"
      },
      "app.helper.notification": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.services",
        "target": "app.application.notification"
      },
      "app.helper.ocr": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.external.ocr",
        "target": "app.adapters.external.ocr"
      },
      "app.helper.package": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.system.package",
        "target": "app.adapters.system.package"
      },
      "app.helper.passkey": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.security.passkey",
        "target": "app.application.security.passkey"
      },
      "app.helper.plugin": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.external.market",
        "target": "app.adapters.external.market"
      },
      "app.helper.progress": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.progress",
        "target": "app.runtime.progress"
      },
      "app.helper.redis": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.cache.redis",
        "target": "app.adapters.cache.redis"
      },
      "app.helper.resource": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.system.resource",
        "target": "app.adapters.system.resource"
      },
      "app.helper.rss": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.network",
        "target": "app.application.rss"
      },
      "app.helper.rule": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.services",
        "target": "app.application.rules"
      },
      "app.helper.scraper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.domain.scraper",
        "target": "app.domain.scraper"
      },
      "app.helper.server": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.external.server",
        "target": "app.adapters.external.server"
      },
      "app.helper.service": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.services",
        "target": "app.sdk.services"
      },
      "app.helper.sites": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.network",
        "target": "app.application.site.sites"
      },
      "app.helper.skill": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "agent",
        "replacement": "app.agent.skills.registry",
        "target": "app.agent.skills.registry"
      },
      "app.helper.storage": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.services",
        "target": "app.application.storage"
      },
      "app.helper.system": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.services",
        "target": "app.runtime.state"
      },
      "app.helper.thread": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.thread",
        "target": "app.runtime.thread"
      },
      "app.helper.torrent": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.torrent",
        "target": "app.application.torrent"
      },
      "app.helper.transferhistory": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.history",
        "target": "app.application.history"
      },
      "app.helper.twofa": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.security.twofactor",
        "target": "app.application.security.twofactor"
      },
      "app.helper.wallpaper": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.application.image",
        "target": "app.application.image"
      },
      "app.helper.webpush": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "api",
        "replacement": "app.api.endpoints.message",
        "target": "app.api.endpoints.message"
      },
      "app.log": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.logging",
        "target": "app.sdk.logging"
      },
      "app.runtime.extensions.service_registry": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.services",
        "target": "app.sdk.services"
      },
      "app.utils.coalesce": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.coalesce",
        "target": "app.runtime.coalesce"
      },
      "app.utils.common": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.utilities",
        "target": "app.sdk.utilities"
      },
      "app.utils.crypto": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.utilities",
        "target": "app.foundation.crypto"
      },
      "app.utils.debounce": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.debounce",
        "target": "app.runtime.debounce"
      },
      "app.utils.dom": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.utilities",
        "target": "app.foundation.dom"
      },
      "app.utils.gc": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.gc",
        "target": "app.runtime.gc"
      },
      "app.utils.http": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.network",
        "target": "app.adapters.network.http"
      },
      "app.utils.identity": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.foundation.identity",
        "target": "app.foundation.identity"
      },
      "app.utils.ip": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.sdk.network",
        "target": "app.adapters.network.ip"
      },
      "app.utils.jieba": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.utilities",
        "target": "app.foundation.text"
      },
      "app.utils.limit": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.rate",
        "target": "app.runtime.rate"
      },
      "app.utils.media": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.media",
        "target": "app.sdk.media"
      },
      "app.utils.mixins": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.runtime.reload",
        "target": "app.runtime.reload"
      },
      "app.utils.object": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.utilities",
        "target": "app.foundation.reflection"
      },
      "app.utils.otp": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.utilities",
        "target": "app.application.security.otp"
      },
      "app.utils.rust_accel": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.system.rust",
        "target": "app.adapters.system.rust"
      },
      "app.utils.security": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "application",
        "replacement": "app.sdk.network",
        "target": "app.application.security.url"
      },
      "app.utils.singleton": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.utilities",
        "target": "app.foundation.singleton"
      },
      "app.utils.site": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.network",
        "target": "app.domain.site"
      },
      "app.utils.stdio": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.adapters.system.stdio",
        "target": "app.adapters.system.stdio"
      },
      "app.utils.string": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "sdk",
        "replacement": "app.sdk.utilities",
        "target": "app.sdk.string"
      },
      "app.utils.structures": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.foundation.collections",
        "target": "app.foundation.collections"
      },
      "app.utils.system": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.sdk.utilities",
        "target": "app.adapters.system.host"
      },
      "app.utils.timer": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "runtime",
        "replacement": "app.sdk.utilities",
        "target": "app.runtime.scheduling"
      },
      "app.utils.tokens": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.tokens"
      },
      "app.utils.url": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.sdk.network",
        "target": "app.foundation.url"
      },
      "app.utils.web": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "adapters",
        "replacement": "app.sdk.network",
        "target": "app.adapters.external.location"
      },
      "app.utils.zhconv": {
        "introduced": "v3.0.0",
        "is_package": false,
        "owner": "foundation",
        "replacement": "app.foundation.text",
        "target": "app.foundation.text"
      }
    },
    "package_aliases": {
      "app.core.meta": {
        "introduced": "v3.0.0",
        "is_package": true,
        "owner": "domain",
        "replacement": "app.sdk.media",
        "target": "app.domain.meta"
      }
    },
    "package_exports": {
      "app.core.meta": {
        "MetaAnime": {
          "replacement": "app.sdk.media.MetaAnime",
          "target_module": "app.domain.meta.metaanime",
          "target_name": "MetaAnime"
        },
        "MetaBase": {
          "replacement": "app.sdk.media.MetaBase",
          "target_module": "app.domain.meta.metabase",
          "target_name": "MetaBase"
        },
        "MetaMusic": {
          "replacement": "app.sdk.media.MetaMusic",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MetaMusic"
        },
        "MetaVideo": {
          "replacement": "app.sdk.media.MetaVideo",
          "target_module": "app.domain.meta.metavideo",
          "target_name": "MetaVideo"
        },
        "MusicNameContext": {
          "replacement": "app.sdk.media.MusicNameContext",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MusicNameContext"
        },
        "MusicNameParseResult": {
          "replacement": "app.sdk.media.MusicNameParseResult",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MusicNameParseResult"
        },
        "MusicNameParser": {
          "replacement": "app.sdk.media.MusicNameParser",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MusicNameParser"
        },
        "MusicNamePattern": {
          "replacement": "app.sdk.media.MusicNamePattern",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MusicNamePattern"
        },
        "MusicNamePatternMatch": {
          "replacement": "app.sdk.media.MusicNamePatternMatch",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MusicNamePatternMatch"
        },
        "MusicNameRegistry": {
          "replacement": "app.sdk.media.MusicNameRegistry",
          "target_module": "app.domain.meta.metamusic",
          "target_name": "MusicNameRegistry"
        }
      }
    },
    "symbol_aliases": {
      "app.agent.orchestrator": {
        "AgentChain": {
          "replacement": "app.chain.agent.AgentChain",
          "target_module": "app.chain.agent",
          "target_name": "AgentChain"
        },
        "ReplyMode": {
          "replacement": "app.schemas.types.ReplyMode",
          "target_module": "app.schemas.types",
          "target_name": "ReplyMode"
        }
      },
      "app.chain.media": {
        "ScrapingChain": {
          "replacement": "app.chain.scraping.ScrapingChain",
          "target_module": "app.chain.scraping",
          "target_name": "ScrapingChain"
        },
        "ScrapingConfig": {
          "replacement": "app.chain.scraping.ScrapingConfig",
          "target_module": "app.chain.scraping",
          "target_name": "ScrapingConfig"
        },
        "ScrapingOption": {
          "replacement": "app.chain.scraping.ScrapingOption",
          "target_module": "app.chain.scraping",
          "target_name": "ScrapingOption"
        }
      },
      "app.chain.message": {
        "MediaInteractionChain": {
          "replacement": "app.chain.interaction.MediaInteractionChain",
          "target_module": "app.chain.interaction",
          "target_name": "MediaInteractionChain"
        }
      },
      "app.domain.media": {
        "MEDIA_SOURCE_ALIASES": {
          "replacement": "app.schemas.media.MEDIA_SOURCE_ALIASES",
          "target_module": "app.schemas.media",
          "target_name": "MEDIA_SOURCE_ALIASES"
        },
        "MEDIA_SOURCE_PREFIXES": {
          "replacement": "app.schemas.media.MEDIA_SOURCE_PREFIXES",
          "target_module": "app.schemas.media",
          "target_name": "MEDIA_SOURCE_PREFIXES"
        },
        "build_media_key": {
          "replacement": "app.schemas.media.build_media_key",
          "target_module": "app.schemas.media",
          "target_name": "build_media_key"
        },
        "normalize_media_identity_payload": {
          "replacement": "app.schemas.media.normalize_media_identity_payload",
          "target_module": "app.schemas.media",
          "target_name": "normalize_media_identity_payload"
        },
        "normalize_media_source": {
          "replacement": "app.schemas.media.normalize_media_source",
          "target_module": "app.schemas.media",
          "target_name": "normalize_media_source"
        },
        "parse_media_key": {
          "replacement": "app.schemas.media.parse_media_key",
          "target_module": "app.schemas.media",
          "target_name": "parse_media_key"
        },
        "resolve_media_identity": {
          "replacement": "app.schemas.media.resolve_media_identity",
          "target_module": "app.schemas.media",
          "target_name": "resolve_media_identity"
        }
      },
      "app.schemas": {
        "ChannelCapabilities": {
          "replacement": "app.schemas.notification.ChannelCapabilities",
          "target_module": "app.schemas.notification",
          "target_name": "ChannelCapabilities"
        },
        "ChannelCapability": {
          "replacement": "app.schemas.notification.ChannelCapability",
          "target_module": "app.schemas.notification",
          "target_name": "ChannelCapability"
        },
        "ChannelCapabilityManager": {
          "replacement": "app.schemas.notification.ChannelCapabilityManager",
          "target_module": "app.schemas.notification",
          "target_name": "ChannelCapabilityManager"
        },
        "CommingMessage": {
          "replacement": "app.schemas.message.IncomingMessage",
          "target_module": "app.schemas.message",
          "target_name": "IncomingMessage"
        },
        "MessageChannel": {
          "replacement": "app.schemas.types.NotificationChannel",
          "target_module": "app.schemas.types",
          "target_name": "NotificationChannel"
        },
        "Notification": {
          "replacement": "app.schemas.message.Message",
          "target_module": "app.schemas.message",
          "target_name": "Message"
        },
        "NotificationClearBefore": {
          "replacement": "app.schemas.message.MessageClearBefore",
          "target_module": "app.schemas.message",
          "target_name": "MessageClearBefore"
        },
        "NotificationClearData": {
          "replacement": "app.schemas.message.MessageClearData",
          "target_module": "app.schemas.message",
          "target_name": "MessageClearData"
        },
        "NotificationClearScope": {
          "replacement": "app.schemas.message.MessageClearScope",
          "target_module": "app.schemas.message",
          "target_name": "MessageClearScope"
        },
        "NotificationHistoryItem": {
          "replacement": "app.schemas.message.MessageHistoryItem",
          "target_module": "app.schemas.message",
          "target_name": "MessageHistoryItem"
        },
        "NotificationType": {
          "replacement": "app.schemas.types.MessageType",
          "target_module": "app.schemas.types",
          "target_name": "MessageType"
        },
        "TransferQueue": {
          "replacement": "app.application.transfer.TransferQueue",
          "target_module": "app.sdk._legacy.transfer",
          "target_name": "TransferQueue"
        },
        "TransferTask": {
          "replacement": "app.application.transfer.TransferTask",
          "target_module": "app.sdk._legacy.transfer",
          "target_name": "TransferTask"
        }
      },
      "app.schemas.agent": {
        "ReplyMode": {
          "replacement": "app.schemas.types.ReplyMode",
          "target_module": "app.schemas.types",
          "target_name": "ReplyMode"
        }
      },
      "app.schemas.message": {
        "ChannelCapabilities": {
          "replacement": "app.schemas.notification.ChannelCapabilities",
          "target_module": "app.schemas.notification",
          "target_name": "ChannelCapabilities"
        },
        "ChannelCapability": {
          "replacement": "app.schemas.notification.ChannelCapability",
          "target_module": "app.schemas.notification",
          "target_name": "ChannelCapability"
        },
        "ChannelCapabilityManager": {
          "replacement": "app.schemas.notification.ChannelCapabilityManager",
          "target_module": "app.schemas.notification",
          "target_name": "ChannelCapabilityManager"
        },
        "CommingMessage": {
          "replacement": "app.schemas.message.IncomingMessage",
          "target_module": "app.schemas.message",
          "target_name": "IncomingMessage"
        },
        "MessageChannel": {
          "replacement": "app.schemas.types.NotificationChannel",
          "target_module": "app.schemas.types",
          "target_name": "NotificationChannel"
        },
        "Notification": {
          "replacement": "app.schemas.message.Message",
          "target_module": "app.schemas.message",
          "target_name": "Message"
        },
        "NotificationClearBefore": {
          "replacement": "app.schemas.message.MessageClearBefore",
          "target_module": "app.schemas.message",
          "target_name": "MessageClearBefore"
        },
        "NotificationClearData": {
          "replacement": "app.schemas.message.MessageClearData",
          "target_module": "app.schemas.message",
          "target_name": "MessageClearData"
        },
        "NotificationClearScope": {
          "replacement": "app.schemas.message.MessageClearScope",
          "target_module": "app.schemas.message",
          "target_name": "MessageClearScope"
        },
        "NotificationHistoryItem": {
          "replacement": "app.schemas.message.MessageHistoryItem",
          "target_module": "app.schemas.message",
          "target_name": "MessageHistoryItem"
        },
        "NotificationType": {
          "replacement": "app.schemas.types.MessageType",
          "target_module": "app.schemas.types",
          "target_name": "MessageType"
        }
      },
      "app.schemas.transfer": {
        "DownloadHistory": {
          "replacement": "app.schemas.history.DownloadHistory",
          "target_module": "app.schemas.history",
          "target_name": "DownloadHistory"
        },
        "MediaType": {
          "replacement": "app.schemas.types.MediaType",
          "target_module": "app.schemas.types",
          "target_name": "MediaType"
        },
        "TmdbEpisode": {
          "replacement": "app.schemas.tmdb.TmdbEpisode",
          "target_module": "app.schemas.tmdb",
          "target_name": "TmdbEpisode"
        },
        "TransferDirectoryConf": {
          "replacement": "app.schemas.system.TransferDirectoryConf",
          "target_module": "app.schemas.system",
          "target_name": "TransferDirectoryConf"
        },
        "TransferQueue": {
          "replacement": "app.application.transfer.TransferQueue",
          "target_module": "app.sdk._legacy.transfer",
          "target_name": "TransferQueue"
        },
        "TransferTask": {
          "replacement": "app.application.transfer.TransferTask",
          "target_module": "app.sdk._legacy.transfer",
          "target_name": "TransferTask"
        }
      },
      "app.schemas.types": {
        "MessageChannel": {
          "replacement": "app.schemas.types.NotificationChannel",
          "target_module": "app.schemas.types",
          "target_name": "NotificationChannel"
        },
        "NotificationType": {
          "replacement": "app.schemas.types.MessageType",
          "target_module": "app.schemas.types",
          "target_name": "MessageType"
        }
      },
      "app.sdk.logging": {
        "CustomFormatter": {
          "replacement": "app.runtime.log.CustomFormatter",
          "target_module": "app.runtime.log",
          "target_name": "CustomFormatter"
        },
        "LogConfigModel": {
          "replacement": "app.runtime.log.LogConfigModel",
          "target_module": "app.runtime.log",
          "target_name": "LogConfigModel"
        },
        "LogEntry": {
          "replacement": "app.runtime.log.LogEntry",
          "target_module": "app.runtime.log",
          "target_name": "LogEntry"
        },
        "LogSettings": {
          "replacement": "app.runtime.log.LogSettings",
          "target_module": "app.runtime.log",
          "target_name": "LogSettings"
        },
        "LoggerManager": {
          "replacement": "app.runtime.log.LoggerManager",
          "target_module": "app.runtime.log",
          "target_name": "LoggerManager"
        },
        "NonBlockingFileHandler": {
          "replacement": "app.runtime.log.NonBlockingFileHandler",
          "target_module": "app.runtime.log",
          "target_name": "NonBlockingFileHandler"
        },
        "configure_log_settings": {
          "replacement": "app.runtime.log.configure_log_settings",
          "target_module": "app.runtime.log",
          "target_name": "configure_log_settings"
        },
        "configure_log_writer": {
          "replacement": "app.runtime.log.configure_log_writer",
          "target_module": "app.runtime.log",
          "target_name": "configure_log_writer"
        },
        "log_settings": {
          "replacement": "app.runtime.log.log_settings",
          "target_module": "app.runtime.log",
          "target_name": "log_settings"
        }
      }
    },
    "virtual_packages": [
      "app.core",
      "app.helper",
      "app.utils"
    ]
  },
  "event_specs": {
    "ChainEventType.AgentLLMProvider": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "AgentLLMProviderEventData",
      "sensitive_fields": [
        "api_key"
      ],
      "visibility": "plugin_public"
    },
    "ChainEventType.AuthIntercept": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "AuthInterceptCredentials",
      "sensitive_fields": [
        "token"
      ],
      "visibility": "plugin_public"
    },
    "ChainEventType.AuthVerification": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "AuthCredentials",
      "sensitive_fields": [
        "password",
        "token",
        "mfa_code"
      ],
      "visibility": "plugin_public"
    },
    "ChainEventType.CommandRegister": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "CommandRegisterEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.DiscoverSource": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "DiscoverSourceEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.MediaRecognize": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "MediaRecognizeEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.MediaRecognizeConvert": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "MediaRecognizeConvertEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.MusicMediaRecognize": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "MusicMediaRecognizeEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.MusicNameRecognize": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "MusicNameRecognizeEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.NameRecognize": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "NameRecognizeEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.PluginDataReset": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "PluginDataResetEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.RecommendSource": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "RecommendSourceEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.ResourceDownload": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "ResourceDownloadEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.ResourceSelection": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "ResourceSelectionEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.StorageOperSelection": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "StorageOperSelectionEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.SubscribeCompletionCheck": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "SubscribeCompletionCheckEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.SubscribeEpisodesRefresh": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "SubscribeEpisodesRefreshEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.TransferIntercept": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "TransferInterceptEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.TransferOverwriteCheck": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "TransferOverwriteCheckEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.TransferRename": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "TransferRenameEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.TransferRenameBuild": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "TransferRenameBuildEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "ChainEventType.WorkflowExecution": {
      "delivery": "ephemeral",
      "error_behavior": "stop_chain",
      "legacy_reason": null,
      "mode": "chain",
      "ordering": "priority_serial",
      "payload_contract": "ActionContext",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.AgentTokensUsage": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "AgentTokensUsageEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.AudioTransferComplete": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "TransferResultEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.AudioTransferFailed": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "TransferResultEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.CommandExcute": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "CommandExecuteEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.ConfigChanged": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "ConfigChangeEventData",
      "sensitive_fields": [],
      "visibility": "host_only"
    },
    "EventType.DownloadAdded": {
      "delivery": "durable_required",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "DownloadAddedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.DownloadDeleted": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "DownloadDeletedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.DownloadFileDeleted": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "DownloadFileDeletedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.HistoryDeleted": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "HistoryDeletedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.MessageAction": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "MessageActionEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.MetadataScrape": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "MetadataScrapeEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.ModuleReload": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "EmptyEventData",
      "sensitive_fields": [],
      "visibility": "host_only"
    },
    "EventType.NoticeMessage": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "NoticeMessageEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.PluginAction": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "PluginActionEventData",
      "sensitive_fields": [],
      "visibility": "target_plugin"
    },
    "EventType.PluginReload": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "PluginReloadEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.PluginTriggered": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "PluginTriggeredEventData",
      "sensitive_fields": [],
      "visibility": "target_plugin"
    },
    "EventType.SiteDeleted": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SiteEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SiteRefreshed": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SiteEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SiteUpdated": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SiteEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SubscribeAdded": {
      "delivery": "durable_required",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SubscribeAddedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SubscribeComplete": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SubscribeCompleteEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SubscribeDeleted": {
      "delivery": "durable_required",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SubscribeDeletedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SubscribeModified": {
      "delivery": "durable_required",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SubscribeModifiedEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SubtitleTransferComplete": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "TransferResultEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SubtitleTransferFailed": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "TransferResultEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.SystemError": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "SystemErrorEventData",
      "sensitive_fields": [],
      "visibility": "host_only"
    },
    "EventType.TransferComplete": {
      "delivery": "durable_required",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "TransferResultEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.TransferFailed": {
      "delivery": "durable_required",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "TransferResultEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.UserMessage": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "UserMessageEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.WebhookMessage": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "WebhookEventInfo",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    },
    "EventType.WorkflowExecute": {
      "delivery": "ephemeral",
      "error_behavior": "notify",
      "legacy_reason": null,
      "mode": "broadcast",
      "ordering": "priority_queue",
      "payload_contract": "WorkflowExecuteEventData",
      "sensitive_fields": [],
      "visibility": "plugin_public"
    }
  },
  "events": {
    "consumer_count": 15,
    "dynamic_consumers": [
      {
        "caller": "app.adapters.system.fsproxy",
        "count": 1
      },
      {
        "caller": "app.agent.llm.provider",
        "count": 1
      },
      {
        "caller": "app.chain.transfer",
        "count": 1
      },
      {
        "caller": "app.db.oper.transferpending",
        "count": 1
      },
      {
        "caller": "app.runtime.events",
        "count": 3
      },
      {
        "caller": "app.runtime.tasks",
        "count": 1
      },
      {
        "caller": "app.startup.lifecycle",
        "count": 1
      },
      {
        "caller": "app.testing.bootstrap",
        "count": 1
      },
      {
        "caller": "app.workflow",
        "count": 1
      }
    ],
    "dynamic_producers": [
      {
        "caller": "app.agent.tools.impl._filter_rule_utils",
        "count": 1
      },
      {
        "caller": "app.agent.tools.impl.update_system_settings",
        "count": 1
      },
      {
        "caller": "app.api.endpoints.system",
        "count": 4
      },
      {
        "caller": "app.chain._messaging",
        "count": 4
      },
      {
        "caller": "app.chain._recognition",
        "count": 2
      },
      {
        "caller": "app.chain.user",
        "count": 2
      },
      {
        "caller": "app.command",
        "count": 1
      },
      {
        "caller": "app.modules._base.mediaserver",
        "count": 1
      },
      {
        "caller": "app.modules.navidrome",
        "count": 1
      },
      {
        "caller": "app.modules.plex",
        "count": 1
      },
      {
        "caller": "app.runtime.extensions.module_manager",
        "count": 1
      }
    ],
    "event_count": 53,
    "events": {
      "ChainEventType.AgentLLMProvider": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.agent.orchestrator",
            "count": 1
          }
        ]
      },
      "ChainEventType.AuthIntercept": {
        "consumers": [],
        "producers": []
      },
      "ChainEventType.AuthVerification": {
        "consumers": [],
        "producers": []
      },
      "ChainEventType.CommandRegister": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.command",
            "count": 1
          },
          {
            "caller": "app.modules._base.notification",
            "count": 1
          }
        ]
      },
      "ChainEventType.DiscoverSource": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.api.endpoints.discover",
            "count": 1
          }
        ]
      },
      "ChainEventType.MediaRecognize": {
        "consumers": [],
        "producers": []
      },
      "ChainEventType.MediaRecognizeConvert": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.media",
            "count": 2
          }
        ]
      },
      "ChainEventType.MusicMediaRecognize": {
        "consumers": [],
        "producers": []
      },
      "ChainEventType.MusicNameRecognize": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.media",
            "count": 2
          }
        ]
      },
      "ChainEventType.NameRecognize": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.media",
            "count": 2
          }
        ]
      },
      "ChainEventType.PluginDataReset": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.api.dependencies.plugin",
            "count": 1
          }
        ]
      },
      "ChainEventType.RecommendSource": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.api.endpoints.recommend",
            "count": 1
          },
          {
            "caller": "app.workflow.actions.fetch_medias",
            "count": 1
          }
        ]
      },
      "ChainEventType.ResourceDownload": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.download",
            "count": 1
          }
        ]
      },
      "ChainEventType.ResourceSelection": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.download",
            "count": 1
          }
        ]
      },
      "ChainEventType.StorageOperSelection": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 2
          }
        ]
      },
      "ChainEventType.SubscribeCompletionCheck": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.subscribe",
            "count": 1
          }
        ]
      },
      "ChainEventType.SubscribeEpisodesRefresh": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.subscribe",
            "count": 2
          }
        ]
      },
      "ChainEventType.TransferIntercept": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.modules.filemanager.transhandler",
            "count": 2
          }
        ]
      },
      "ChainEventType.TransferOverwriteCheck": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.modules.filemanager.transhandler",
            "count": 1
          }
        ]
      },
      "ChainEventType.TransferRename": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.modules.filemanager.transhandler",
            "count": 1
          }
        ]
      },
      "ChainEventType.TransferRenameBuild": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.modules.filemanager.transhandler",
            "count": 1
          }
        ]
      },
      "ChainEventType.WorkflowExecution": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.workflow.actions.send_event",
            "count": 1
          }
        ]
      },
      "EventType.AgentTokensUsage": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.agent.orchestrator",
            "count": 1
          }
        ]
      },
      "EventType.AudioTransferComplete": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 1
          }
        ]
      },
      "EventType.AudioTransferFailed": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 1
          }
        ]
      },
      "EventType.CommandExcute": {
        "consumers": [
          {
            "caller": "app.command",
            "count": 1
          }
        ],
        "producers": [
          {
            "caller": "app.agent.tools.impl.run_slash_command",
            "count": 1
          },
          {
            "caller": "app.chain.message",
            "count": 1
          }
        ]
      },
      "EventType.ConfigChanged": {
        "consumers": [
          {
            "caller": "app.runtime.extensions.module_manager",
            "count": 1
          },
          {
            "caller": "app.runtime.reload",
            "count": 1
          },
          {
            "caller": "app.startup.initializers.agent",
            "count": 1
          }
        ],
        "producers": []
      },
      "EventType.DownloadAdded": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.download",
            "count": 2
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.DownloadDeleted": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.download",
            "count": 1
          }
        ]
      },
      "EventType.DownloadFileDeleted": {
        "consumers": [
          {
            "caller": "app.chain.download",
            "count": 1
          }
        ],
        "producers": [
          {
            "caller": "app.api.dependencies.history",
            "count": 1
          }
        ]
      },
      "EventType.HistoryDeleted": {
        "consumers": [],
        "producers": []
      },
      "EventType.MessageAction": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.application.messaging.plugin",
            "count": 3
          },
          {
            "caller": "app.chain.message",
            "count": 1
          }
        ]
      },
      "EventType.MetadataScrape": {
        "consumers": [
          {
            "caller": "app.chain.scraping",
            "count": 1
          }
        ],
        "producers": [
          {
            "caller": "app.chain._transfer",
            "count": 2
          }
        ]
      },
      "EventType.ModuleReload": {
        "consumers": [
          {
            "caller": "app.command",
            "count": 1
          }
        ],
        "producers": []
      },
      "EventType.NoticeMessage": {
        "consumers": [
          {
            "caller": "app.api.endpoints.agent",
            "count": 1
          }
        ],
        "producers": []
      },
      "EventType.PluginAction": {
        "consumers": [],
        "producers": []
      },
      "EventType.PluginReload": {
        "consumers": [
          {
            "caller": "app.scheduler",
            "count": 1
          }
        ],
        "producers": []
      },
      "EventType.PluginTriggered": {
        "consumers": [],
        "producers": []
      },
      "EventType.SiteDeleted": {
        "consumers": [
          {
            "caller": "app.chain.search",
            "count": 1
          },
          {
            "caller": "app.chain.subscribe",
            "count": 1
          }
        ],
        "producers": [
          {
            "caller": "app.api.dependencies.site",
            "count": 1
          }
        ]
      },
      "EventType.SiteRefreshed": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.site",
            "count": 2
          }
        ]
      },
      "EventType.SiteUpdated": {
        "consumers": [
          {
            "caller": "app.chain.site",
            "count": 3
          }
        ],
        "producers": [
          {
            "caller": "app.agent.tools.impl.update_site",
            "count": 1
          },
          {
            "caller": "app.api.dependencies.site",
            "count": 1
          },
          {
            "caller": "app.chain.site",
            "count": 1
          }
        ]
      },
      "EventType.SubscribeAdded": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.subscribe",
            "count": 2
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.SubscribeComplete": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.startup.composition.subscription",
            "count": 1
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.SubscribeDeleted": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.api.dependencies.subscription",
            "count": 1
          },
          {
            "caller": "app.startup.composition.subscription",
            "count": 2
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.SubscribeModified": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.api.dependencies.subscription",
            "count": 1
          },
          {
            "caller": "app.api.endpoints.subscribe",
            "count": 3
          },
          {
            "caller": "app.startup.composition.subscription",
            "count": 1
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.SubtitleTransferComplete": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 1
          }
        ]
      },
      "EventType.SubtitleTransferFailed": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 1
          }
        ]
      },
      "EventType.SystemError": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain",
            "count": 2
          },
          {
            "caller": "app.runtime.events",
            "count": 1
          },
          {
            "caller": "app.scheduler",
            "count": 1
          }
        ]
      },
      "EventType.TransferComplete": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 2
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.TransferFailed": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.transfer",
            "count": 2
          },
          {
            "caller": "app.startup.initializers.modules",
            "count": 1
          }
        ]
      },
      "EventType.UserMessage": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.message",
            "count": 1
          }
        ]
      },
      "EventType.WebhookMessage": {
        "consumers": [],
        "producers": [
          {
            "caller": "app.chain.webhook",
            "count": 1
          }
        ]
      },
      "EventType.WorkflowExecute": {
        "consumers": [
          {
            "caller": "app.chain.workflow",
            "count": 1
          }
        ],
        "producers": [
          {
            "caller": "app.workflow",
            "count": 1
          }
        ]
      }
    },
    "producer_count": 78
  },
  "module_method_specs": {
    "anilist_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "anilist_id",
        "count",
        "page"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListDiscoverArguments",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "anilist_id"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPersonPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page",
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_popular_this_season": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_recommendations": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "anilist_id",
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "anilist_trending": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "any_files": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageAnyFilesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "extensions",
        "fileitem"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "anilist_id",
        "count",
        "page"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListDiscoverArguments",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "anilist_id"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPersonPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page",
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_popular_this_season": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_recommendations": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "anilist_id",
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_anilist_trending": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "anilist",
      "input_contract": "AniListPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_calendar": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiCalendarRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "bangumiid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiDiscoverArguments",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "bangumiid"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_bangumi_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "bangumiid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanDiscoverRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "mtype",
        "page",
        "sort",
        "tags"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid",
        "mtype",
        "raise_exception"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_movie_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_movie_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanPersonCreditsRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_tv_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_douban_tv_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_identify_music_by_fingerprint": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicFingerprintRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "path"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_match_doubaninfo": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "DoubanMatchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "imdbid",
        "mtype",
        "name",
        "raise_exception",
        "season",
        "year"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_match_music_album": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicAlbumMatchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "limit",
        "meta",
        "tracks"
      ],
      "result_contract": "MusicAlbumInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_match_tmdbinfo": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "TmdbMatchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mtype",
        "name",
        "season",
        "year"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_movie_hot": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_movie_showing": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_movie_top250": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_obtain_images": {
      "aggregation": "pipeline_relay",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaInfo",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mediainfo"
      ],
      "result_contract": "MediaInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_recognize_media": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaRecognitionRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "cache",
        "episode_group",
        "media_id",
        "media_source",
        "meta",
        "mtype"
      ],
      "result_contract": "MediaInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_refresh_torrents": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentRefreshRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "cat",
        "keyword",
        "mtype",
        "page",
        "site"
      ],
      "result_contract": "list[TorrentInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_search_collections": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "CollectionSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_source",
        "name"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_search_medias": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_source",
        "meta"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_search_persons": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "PersonSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_source",
        "name"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_search_subtitles": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "SubtitleSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "keyword",
        "page",
        "site"
      ],
      "result_contract": "list[SubtitleInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_search_torrents": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "TorrentSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "keyword",
        "mtype",
        "page",
        "site"
      ],
      "result_contract": "list[TorrentInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_collection": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbCollectionRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "collection_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbDiscoverRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mtype",
        "page",
        "release_date",
        "sort_by",
        "vote_average",
        "vote_count",
        "with_genres",
        "with_keywords",
        "with_original_language",
        "with_watch_providers"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_episodes": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbEpisodesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episode_group",
        "season",
        "tmdbid"
      ],
      "result_contract": "list[TmdbEpisode]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_group_seasons": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbGroupRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "group_id"
      ],
      "result_contract": "list[TmdbSeason]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mtype",
        "season",
        "tmdbid"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_movie_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "tmdbid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_movie_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_movie_similar": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbPersonPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_seasons": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[TmdbSeason]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_trending": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbTrendingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_tv_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "tmdbid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_tv_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tmdb_tv_similar": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tv_animation": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tv_hot": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tv_weekly_chinese": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_tv_weekly_global": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "async_update_recognize_cache": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "RecognitionCacheUpdateRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mediainfo",
        "meta"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_calendar": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiCalendarRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "bangumiid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiDiscoverArguments",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "bangumiid"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "bangumi_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "bangumi",
      "input_contract": "BangumiMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "bangumiid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "channel_manage": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "ChannelManageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "action",
        "channel"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "clear_cache": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "category",
      "input_contract": "CacheClearRequest",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "create_folder": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageCreateFolderRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem",
        "name"
      ],
      "result_contract": "FileItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "delete_file": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageDeleteRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "delete_message": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageDeleteRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "channel",
        "chat_id",
        "message_id",
        "source"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanDiscoverRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "mtype",
        "page",
        "sort",
        "tags"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid",
        "mtype",
        "raise_exception"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_movie_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_movie_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanPersonCreditsRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_tv_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "douban_tv_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "douban",
      "input_contract": "DoubanMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "doubanid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "DownloadTaskRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "category",
        "content",
        "cookie",
        "download_dir",
        "downloader",
        "episodes",
        "label"
      ],
      "result_contract": "DownloadTaskResult | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_added": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "DownloadAddedHook",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [
        "context",
        "download_dir",
        "torrent_content"
      ],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_discord_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_feishu_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_feishu_image_to_data_url": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageImageDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "image_ref",
        "source"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_file": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem",
        "path"
      ],
      "result_contract": "FileItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_qq_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_slack_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_slack_file_to_data_url": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_url",
        "source"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_synologychat_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_telegram_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_id",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_telegram_file_to_base64": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_id",
        "source"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_vocechat_file_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFileDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "file_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_vocechat_image_to_data_url": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageImageDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "image_ref",
        "source"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_wechat_image_to_data_url": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageImageDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "image_ref",
        "source"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "download_wechat_media_bytes": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageMediaDownloadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_ref",
        "source"
      ],
      "result_contract": "bytes | None",
      "result_shape": "bytes",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "downloader_info": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "DownloaderInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader"
      ],
      "result_contract": "list[DownloaderInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "edit_message": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageEditRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "buttons",
        "channel",
        "chat_id",
        "message_id",
        "metadata",
        "source",
        "text",
        "title"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "filter_torrents": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentFilterRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mediainfo",
        "rule_groups",
        "torrent_list"
      ],
      "result_contract": "list[TorrentInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "finalize_message": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageFinalizeRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "response"
      ],
      "result_contract": "Message | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "get_file_item": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageItemRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "path",
        "storage"
      ],
      "result_contract": "FileItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "get_folder": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageFolderRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "path",
        "storage"
      ],
      "result_contract": "FileItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "get_parent_item": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageParentRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem"
      ],
      "result_contract": "FileItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "get_search_page_size": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "site",
      "input_contract": "SiteSearchPageSizeRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "keyword",
        "site"
      ],
      "result_contract": "int | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "get_torrent_trackers": {
      "aggregation": "ordered_mapping_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentTrackersRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "hash_string"
      ],
      "result_contract": "dict[str, list[str]] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "identify_music_by_fingerprint": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicFingerprintRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "path"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "list_files": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageListRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem",
        "recursion"
      ],
      "result_contract": "list[FileItem]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "list_torrents": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentListRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "hashs",
        "include_all_tags",
        "status"
      ],
      "result_contract": "list[DownloaderTorrent]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "load_category_config": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "category",
      "input_contract": "CategoryConfigReadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "CategoryConfig | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mark_message_processing_finished": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageProcessingFinishRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "channel",
        "chat_id",
        "message_id",
        "source",
        "status",
        "userid"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mark_message_processing_started": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageProcessingStartRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "channel",
        "chat_id",
        "message_id",
        "source",
        "text",
        "userid"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "match_doubaninfo": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "DoubanMatchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "imdbid",
        "mtype",
        "name",
        "raise_exception",
        "season",
        "year"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "match_music_album": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicAlbumMatchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "limit",
        "meta",
        "tracks"
      ],
      "result_contract": "MusicAlbumInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "match_tmdbinfo": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "TmdbMatchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mtype",
        "name",
        "season",
        "year"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "media_category": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaCategoryRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "dict[str, list] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "media_exists": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaExistsRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "itemid",
        "mediainfo",
        "server"
      ],
      "result_contract": "ExistMediaInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "media_files": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "MediaFilesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mediainfo"
      ],
      "result_contract": "list[FileItem]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "media_statistic": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaStatisticRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "server"
      ],
      "result_contract": "list[Statistic]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_image_cookies": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerImageCookiesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "image_url",
        "server"
      ],
      "result_contract": "str | dict | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_iteminfo": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerItemRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "item_id",
        "server"
      ],
      "result_contract": "MediaServerItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_items": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerItemsRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "library_id",
        "limit",
        "server",
        "start_index"
      ],
      "result_contract": "Iterable[MediaServerItem] | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_items_count": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerItemsCountRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "library_id",
        "server"
      ],
      "result_contract": "int | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_latest": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerRecentRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "server",
        "username"
      ],
      "result_contract": "list[MediaServerPlayItem]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_latest_images": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerRecentImagesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "remote",
        "server",
        "username"
      ],
      "result_contract": "list[str]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_librarys": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerLibrariesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "hidden",
        "server",
        "username"
      ],
      "result_contract": "list[MediaServerLibrary]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_play_url": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerPlayRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "item_id",
        "server"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_playing": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerRecentRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "server",
        "username"
      ],
      "result_contract": "list[MediaServerPlayItem]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_season_episode_ids": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerSeasonEpisodesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "item_id",
        "season",
        "server"
      ],
      "result_contract": "dict[int, str] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "mediaserver_tv_episodes": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-server",
      "input_contract": "MediaServerEpisodesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "item_id",
        "server"
      ],
      "result_contract": "list[MediaServerPlayItem]",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "message_parser": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageParseRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "args",
        "body",
        "form",
        "source"
      ],
      "result_contract": "IncomingMessage | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "metadata_img": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "metadata",
      "input_contract": "MetadataImageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episode",
        "mediainfo",
        "season"
      ],
      "result_contract": "dict[str, str] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "metadata_nfo": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "metadata",
      "input_contract": "MetadataNfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episode",
        "mediainfo",
        "meta",
        "season"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "movie_hot": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "movie_showing": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "movie_top250": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_album": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicIdentityRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_id",
        "media_source"
      ],
      "result_contract": "MusicAlbumInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_album_related": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicRelatedRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "media_id",
        "media_source"
      ],
      "result_contract": "list[MusicInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_artist": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicIdentityRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_id",
        "media_source"
      ],
      "result_contract": "MusicArtistInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_artist_albums": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicArtistAlbumsRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "album_type",
        "count",
        "media_id",
        "media_source",
        "page"
      ],
      "result_contract": "list[MusicInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_artist_related": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicRelatedRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "media_id",
        "media_source"
      ],
      "result_contract": "list[MusicArtistInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_cache_clear": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicCacheClearRequest",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_cache_delete": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicCacheDeleteRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "cache_key"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_cache_items": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicCacheReadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[dict]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_chart": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicChartRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "entity",
        "offset",
        "range_name"
      ],
      "result_contract": "list[MusicInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicDiscoverRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "entity",
        "media_source",
        "mode",
        "page",
        "sort",
        "tags"
      ],
      "result_contract": "list[MusicInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_fresh_releases": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicFreshReleasesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "days",
        "future",
        "offset",
        "past",
        "sort"
      ],
      "result_contract": "list[MusicInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "music_lyrics": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicLyricsRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "music"
      ],
      "result_contract": "MusicLyrics | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "obtain_images": {
      "aggregation": "pipeline_relay",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaInfo",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mediainfo"
      ],
      "result_contract": "MediaInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "obtain_specific_image": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "metadata",
      "input_contract": "SpecificImageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episode",
        "image_prefix",
        "image_type",
        "mediaid",
        "mtype",
        "season"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "recognize_media": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaRecognitionRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "cache",
        "episode_group",
        "media_id",
        "media_source",
        "meta",
        "mtype"
      ],
      "result_contract": "MediaInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "recommend_name": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "metadata",
      "input_contract": "RecommendNameRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episodes_info",
        "mediainfo",
        "meta"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "refresh_torrents": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentRefreshRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "cat",
        "keyword",
        "mtype",
        "page",
        "site"
      ],
      "result_contract": "list[TorrentInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "refresh_userdata": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "site",
      "input_contract": "SiteUserDataRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "site"
      ],
      "result_contract": "SiteUserData | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "register_commands": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "CommandRegistrationRequest",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [
        "commands"
      ],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "remove_torrents": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentRemoveRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "delete_file",
        "downloader",
        "hashs"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "rename_file": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageRenameRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem",
        "name"
      ],
      "result_contract": "bool | FileItem",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "save_category_config": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "category",
      "input_contract": "CategoryConfigWriteRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "config"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "scheduler_job": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "scheduling",
      "input_contract": "SchedulerJobRequest",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_collections": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "CollectionSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_source",
        "name"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_medias": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "MediaSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_source",
        "meta"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_music": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "music",
      "input_contract": "MusicSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "limit",
        "media_source",
        "meta"
      ],
      "result_contract": "list[MusicInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_persons": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "PersonSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "media_source",
        "name"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_subtitles": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "SubtitleSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "keyword",
        "page",
        "site"
      ],
      "result_contract": "list[SubtitleInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_torrents": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "TorrentSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "keyword",
        "mtype",
        "page",
        "site"
      ],
      "result_contract": "list[TorrentInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "search_tvdb": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tvdb",
      "input_contract": "TvdbSearchRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "title"
      ],
      "result_contract": "list[dict]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "send_direct_message": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "DirectMessageSendRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "message"
      ],
      "result_contract": "MessageResponse | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "send_message": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "messaging",
      "input_contract": "MessageSendRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "Message | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "set_torrents_tag": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentTagRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "hashs",
        "tags"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "site_subtitle_links": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "site",
      "input_contract": "SiteSubtitleLinksRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "context"
      ],
      "result_contract": "list[str]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "snapshot_storage": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageSnapshotRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "last_snapshot_time",
        "max_depth",
        "path",
        "previous_snapshot",
        "storage"
      ],
      "result_contract": "dict[str, dict] | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "start_torrents": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentControlRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "hashs"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "stop_torrents": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentControlRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "hashs"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "storage_manage": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageManageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "action",
        "storage"
      ],
      "result_contract": "StorageProviderResult",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_cache_clear": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbCacheClearRequest",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_cache_delete": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbCacheDeleteRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "cache_key"
      ],
      "result_contract": "dict[str, Any] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_cache_items": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbCacheListRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [],
      "result_contract": "list[dict[str, Any]]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_collection": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbCollectionRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "collection_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_discover": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbDiscoverRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mtype",
        "page",
        "release_date",
        "sort_by",
        "vote_average",
        "vote_count",
        "with_genres",
        "with_keywords",
        "with_original_language",
        "with_watch_providers"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_episodes": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbEpisodesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episode_group",
        "season",
        "tmdbid"
      ],
      "result_contract": "list[TmdbEpisode]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_group_seasons": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbGroupRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "group_id"
      ],
      "result_contract": "list[TmdbSeason]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mtype",
        "season",
        "tmdbid"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_movie_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "tmdbid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_movie_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_movie_similar": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_person_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbPersonPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "person_id"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_person_detail": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbPersonRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "person_id"
      ],
      "result_contract": "MediaPerson | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_seasons": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[TmdbSeason]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_trending": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbTrendingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_tv_credits": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaPageRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "page",
        "tmdbid"
      ],
      "result_contract": "list[MediaPerson]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_tv_recommend": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tmdb_tv_similar": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tmdb",
      "input_contract": "TmdbMediaRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tmdbid"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "torrent_files": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentFilesRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "tid"
      ],
      "result_contract": "list[DownloaderFile]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "transfer": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "TransferRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "episodes_info",
        "fileitem",
        "library_category_folder",
        "library_type_folder",
        "mediainfo",
        "meta",
        "preview",
        "scrape",
        "source_oper",
        "target_directory",
        "target_oper",
        "target_path",
        "target_storage",
        "transfer_type"
      ],
      "result_contract": "TransferInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "transfer_completed": {
      "aggregation": "fan_out",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TransferCompletedHook",
      "plugin_short_circuit": false,
      "public_to_plugins": true,
      "required_parameters": [
        "downloader",
        "hashs"
      ],
      "result_contract": "None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tv_animation": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tv_hot": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tv_weekly_chinese": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tv_weekly_global": {
      "aggregation": "ordered_list_merge",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-discovery",
      "input_contract": "MediaRankingRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "count",
        "page"
      ],
      "result_contract": "list[MediaInfo]",
      "result_shape": "list",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tvdb_info": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tvdb",
      "input_contract": "TvdbInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tvdbid"
      ],
      "result_contract": "dict | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "tvdb_slug": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "tvdb",
      "input_contract": "TvdbInfoRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "tvdbid"
      ],
      "result_contract": "str | None",
      "result_shape": "string",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "update_recognize_cache": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "media-recognition",
      "input_contract": "RecognitionCacheUpdateRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "mediainfo",
        "meta"
      ],
      "result_contract": "bool | None",
      "result_shape": "boolean",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "update_torrent": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "downloader",
      "input_contract": "TorrentUpdateRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "category",
        "download_limit",
        "downloader",
        "hash_string",
        "ratio_limit",
        "save_path",
        "seeding_time_limit",
        "tracker_list",
        "upload_limit"
      ],
      "result_contract": "dict[str, bool] | None",
      "result_shape": "mapping",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "upload_file": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "storage",
      "input_contract": "StorageUploadRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "fileitem",
        "new_name",
        "path"
      ],
      "result_contract": "FileItem | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "user_authenticate": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "authentication",
      "input_contract": "UserAuthenticationRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "credentials"
      ],
      "result_contract": "AuthCredentials | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    },
    "webhook_parser": {
      "aggregation": "first_non_empty",
      "error_policy": "isolate_provider",
      "execution": "sync_or_async",
      "family": "integration",
      "input_contract": "WebhookRequest",
      "plugin_short_circuit": true,
      "public_to_plugins": true,
      "required_parameters": [
        "args",
        "body",
        "form"
      ],
      "result_contract": "WebhookEventInfo | None",
      "result_shape": "any",
      "supports_async": true,
      "supports_sync": true,
      "timeout_policy": "caller_budget",
      "version": 1
    }
  },
  "run_module": {
    "call_count": 260,
    "dynamic_call_count": 0,
    "dynamic_calls": [],
    "method_count": 211,
    "methods": {
      "anilist_credits": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_discover": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_info": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_person_credits": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_person_detail": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_popular_this_season": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_recommendations": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "anilist_trending": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "sync"
        }
      ],
      "any_files": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "async_anilist_credits": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_discover": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_info": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_person_credits": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_person_detail": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_popular_this_season": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_recommendations": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_anilist_trending": [
        {
          "caller": "app.chain.anilist",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_calendar": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_credits": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_discover": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_person_credits": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_person_detail": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_bangumi_recommend": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_discover": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 2,
          "mode": "async"
        }
      ],
      "async_douban_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_movie_credits": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_movie_recommend": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_person_credits": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_person_detail": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_tv_credits": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_douban_tv_recommend": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_identify_music_by_fingerprint": [
        {
          "caller": "app.chain.acoustid",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_match_doubaninfo": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_match_music_album": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_match_tmdbinfo": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_movie_hot": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_movie_showing": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_movie_top250": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_obtain_images": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_recognize_media": [
        {
          "caller": "app.chain._recognition",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_refresh_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_search_collections": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_search_medias": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_search_persons": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_search_subtitles": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_search_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_collection": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_discover": [
        {
          "caller": "app.chain.recommend",
          "count": 2,
          "mode": "async"
        },
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_episodes": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_group_seasons": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_movie_credits": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_movie_recommend": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_movie_similar": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_person_credits": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_person_detail": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_seasons": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_trending": [
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_tv_credits": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_tv_recommend": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tmdb_tv_similar": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tv_animation": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tv_hot": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tv_weekly_chinese": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_tv_weekly_global": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.recommend",
          "count": 1,
          "mode": "async"
        }
      ],
      "async_update_recognize_cache": [
        {
          "caller": "app.chain._recognition",
          "count": 1,
          "mode": "async"
        }
      ],
      "bangumi_calendar": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "bangumi_credits": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "bangumi_discover": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "bangumi_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "bangumi_person_credits": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "bangumi_person_detail": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "bangumi_recommend": [
        {
          "caller": "app.chain.bangumi",
          "count": 1,
          "mode": "sync"
        }
      ],
      "channel_manage": [
        {
          "caller": "app.chain.notification",
          "count": 1,
          "mode": "sync"
        }
      ],
      "clear_cache": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "create_folder": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "delete_file": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "delete_message": [
        {
          "caller": "app.chain._messaging",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_discover": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_movie_credits": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_movie_recommend": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_person_credits": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_person_detail": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_tv_credits": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "douban_tv_recommend": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download_added": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download_discord_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_feishu_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_feishu_image_to_data_url": [
        {
          "caller": "app.chain.message",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download_file": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download_qq_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_slack_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_slack_file_to_data_url": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_synologychat_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_telegram_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 4,
          "mode": "sync"
        }
      ],
      "download_telegram_file_to_base64": [
        {
          "caller": "app.chain.message",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download_vocechat_file_bytes": [
        {
          "caller": "app.chain.message",
          "count": 2,
          "mode": "sync"
        }
      ],
      "download_vocechat_image_to_data_url": [
        {
          "caller": "app.chain.message",
          "count": 1,
          "mode": "sync"
        }
      ],
      "download_wechat_image_to_data_url": [
        {
          "caller": "app.chain.message",
          "count": 3,
          "mode": "sync"
        }
      ],
      "download_wechat_media_bytes": [
        {
          "caller": "app.chain.message",
          "count": 5,
          "mode": "sync"
        }
      ],
      "downloader_info": [
        {
          "caller": "app.chain.dashboard",
          "count": 1,
          "mode": "sync"
        }
      ],
      "edit_message": [
        {
          "caller": "app.chain._messaging",
          "count": 1,
          "mode": "sync"
        }
      ],
      "filter_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "finalize_message": [
        {
          "caller": "app.chain._messaging",
          "count": 1,
          "mode": "sync"
        }
      ],
      "get_file_item": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "get_folder": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "get_parent_item": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "get_search_page_size": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "get_torrent_trackers": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "identify_music_by_fingerprint": [
        {
          "caller": "app.chain.acoustid",
          "count": 1,
          "mode": "sync"
        }
      ],
      "list_files": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "list_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "load_category_config": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mark_message_processing_finished": [
        {
          "caller": "app.chain._messaging",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mark_message_processing_started": [
        {
          "caller": "app.chain._messaging",
          "count": 1,
          "mode": "sync"
        }
      ],
      "match_doubaninfo": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "match_music_album": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "match_tmdbinfo": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "media_category": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "media_exists": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "media_files": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "media_statistic": [
        {
          "caller": "app.chain.dashboard",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_image_cookies": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_iteminfo": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_items": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_items_count": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_latest": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_latest_images": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_librarys": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_play_url": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_playing": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_season_episode_ids": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "mediaserver_tv_episodes": [
        {
          "caller": "app.chain.mediaserver",
          "count": 1,
          "mode": "sync"
        }
      ],
      "message_parser": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "metadata_img": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.scraping",
          "count": 1,
          "mode": "sync"
        }
      ],
      "metadata_nfo": [
        {
          "caller": "app.chain.scraping",
          "count": 1,
          "mode": "sync"
        }
      ],
      "movie_hot": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "movie_showing": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "movie_top250": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_album": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_album_related": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "music_artist": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "music_artist_albums": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "music_artist_related": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "music_cache_clear": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_cache_delete": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_cache_items": [
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_chart": [
        {
          "caller": "app.chain.listenbrainz",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.listenbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_discover": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "music_fresh_releases": [
        {
          "caller": "app.chain.listenbrainz",
          "count": 1,
          "mode": "async"
        }
      ],
      "music_lyrics": [
        {
          "caller": "app.chain.lrclib",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.lrclib",
          "count": 1,
          "mode": "sync"
        }
      ],
      "obtain_images": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "obtain_specific_image": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "recognize_media": [
        {
          "caller": "app.chain._recognition",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "recommend_name": [
        {
          "caller": "app.chain._transfer",
          "count": 2,
          "mode": "sync"
        }
      ],
      "refresh_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "refresh_userdata": [
        {
          "caller": "app.chain.site",
          "count": 1,
          "mode": "sync"
        }
      ],
      "register_commands": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "remove_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "rename_file": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "save_category_config": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "scheduler_job": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_collections": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_medias": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_music": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "async"
        },
        {
          "caller": "app.chain.musicbrainz",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_persons": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_subtitles": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "search_tvdb": [
        {
          "caller": "app.chain.tvdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "send_direct_message": [
        {
          "caller": "app.chain._messaging",
          "count": 1,
          "mode": "sync"
        }
      ],
      "set_torrents_tag": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "site_subtitle_links": [
        {
          "caller": "app.chain.download",
          "count": 1,
          "mode": "sync"
        }
      ],
      "snapshot_storage": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "start_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "stop_torrents": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "storage_manage": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_cache_clear": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_cache_delete": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_cache_items": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_collection": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_discover": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_episodes": [
        {
          "caller": "app.chain._transfer",
          "count": 1,
          "mode": "sync"
        },
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_group_seasons": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_movie_credits": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_movie_recommend": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_movie_similar": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_person_credits": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_person_detail": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_seasons": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_trending": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_tv_credits": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_tv_recommend": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tmdb_tv_similar": [
        {
          "caller": "app.chain.tmdb",
          "count": 1,
          "mode": "sync"
        }
      ],
      "torrent_files": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "transfer": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "transfer_completed": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tv_animation": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tv_hot": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tv_weekly_chinese": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tv_weekly_global": [
        {
          "caller": "app.chain.douban",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tvdb_info": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "tvdb_slug": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "update_recognize_cache": [
        {
          "caller": "app.chain._recognition",
          "count": 1,
          "mode": "sync"
        }
      ],
      "update_torrent": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ],
      "upload_file": [
        {
          "caller": "app.chain.storage",
          "count": 1,
          "mode": "sync"
        }
      ],
      "user_authenticate": [
        {
          "caller": "app.chain.user",
          "count": 1,
          "mode": "sync"
        }
      ],
      "webhook_parser": [
        {
          "caller": "app.chain",
          "count": 1,
          "mode": "sync"
        }
      ]
    }
  },
  "schema_version": 2,
  "sdk_exports": {
    "app.sdk": [],
    "app.sdk.browser": [
      {
        "kind": "FunctionDef",
        "name": "launch_browser_context",
        "target": ""
      },
      {
        "kind": "AsyncFunctionDef",
        "name": "launch_browser_context_async",
        "target": ""
      }
    ],
    "app.sdk.cache": [
      {
        "kind": "import",
        "name": "AsyncCache",
        "target": "app.runtime.cache.AsyncCache"
      },
      {
        "kind": "import",
        "name": "AsyncCacheBackend",
        "target": "app.runtime.cache.AsyncCacheBackend"
      },
      {
        "kind": "import",
        "name": "AsyncFileBackend",
        "target": "app.adapters.cache.backends.AsyncFileBackend"
      },
      {
        "kind": "import",
        "name": "AsyncFileCache",
        "target": "app.runtime.cache.AsyncFileCache"
      },
      {
        "kind": "import",
        "name": "AsyncMemoryBackend",
        "target": "app.runtime.cache.AsyncMemoryBackend"
      },
      {
        "kind": "import",
        "name": "AsyncRedisBackend",
        "target": "app.adapters.cache.backends.AsyncRedisBackend"
      },
      {
        "kind": "import",
        "name": "Cache",
        "target": "app.runtime.cache.Cache"
      },
      {
        "kind": "import",
        "name": "CacheBackend",
        "target": "app.runtime.cache.CacheBackend"
      },
      {
        "kind": "import",
        "name": "FileBackend",
        "target": "app.adapters.cache.backends.FileBackend"
      },
      {
        "kind": "import",
        "name": "FileCache",
        "target": "app.runtime.cache.FileCache"
      },
      {
        "kind": "import",
        "name": "LRUCache",
        "target": "app.runtime.cache.LRUCache"
      },
      {
        "kind": "import",
        "name": "MemoryBackend",
        "target": "app.runtime.cache.MemoryBackend"
      },
      {
        "kind": "import",
        "name": "RedisBackend",
        "target": "app.adapters.cache.backends.RedisBackend"
      },
      {
        "kind": "import",
        "name": "TTLCache",
        "target": "app.runtime.cache.TTLCache"
      },
      {
        "kind": "import",
        "name": "async_fresh",
        "target": "app.runtime.cache.async_fresh"
      },
      {
        "kind": "import",
        "name": "cached",
        "target": "app.runtime.cache.cached"
      },
      {
        "kind": "import",
        "name": "fresh",
        "target": "app.runtime.cache.fresh"
      },
      {
        "kind": "import",
        "name": "is_fresh",
        "target": "app.runtime.cache.is_fresh"
      }
    ],
    "app.sdk.config": [
      {
        "kind": "import",
        "name": "global_vars",
        "target": "app.runtime.config.global_vars"
      },
      {
        "kind": "import",
        "name": "settings",
        "target": "app.runtime.config.settings"
      }
    ],
    "app.sdk.database": [
      {
        "kind": "import",
        "name": "BackupArtifact",
        "target": "app.application.backup.BackupArtifact"
      },
      {
        "kind": "import",
        "name": "BackupVerification",
        "target": "app.application.backup.BackupVerification"
      },
      {
        "kind": "FunctionDef",
        "name": "create_backup",
        "target": ""
      },
      {
        "kind": "FunctionDef",
        "name": "list_backups",
        "target": ""
      },
      {
        "kind": "FunctionDef",
        "name": "verify_backup",
        "target": ""
      }
    ],
    "app.sdk.events": [
      {
        "kind": "import",
        "name": "Event",
        "target": "app.runtime.events.Event"
      },
      {
        "kind": "import",
        "name": "EventManager",
        "target": "app.runtime.events.EventManager"
      },
      {
        "kind": "import",
        "name": "eventmanager",
        "target": "app.runtime.events.eventmanager"
      }
    ],
    "app.sdk.logging": [
      {
        "kind": "import",
        "name": "logger",
        "target": "app.runtime.log.logger"
      }
    ],
    "app.sdk.media": [
      {
        "kind": "import",
        "name": "Context",
        "target": "app.domain.context.Context"
      },
      {
        "kind": "import",
        "name": "MEDIA_SOURCE_ALIASES",
        "target": "app.schemas.media.MEDIA_SOURCE_ALIASES"
      },
      {
        "kind": "import",
        "name": "MEDIA_SOURCE_PREFIXES",
        "target": "app.schemas.media.MEDIA_SOURCE_PREFIXES"
      },
      {
        "kind": "import",
        "name": "MUSIC_MEDIA_SOURCES",
        "target": "app.domain.media.MUSIC_MEDIA_SOURCES"
      },
      {
        "kind": "import",
        "name": "MUSIC_MEDIA_SOURCE_ORDER",
        "target": "app.domain.media.MUSIC_MEDIA_SOURCE_ORDER"
      },
      {
        "kind": "import",
        "name": "MediaInfo",
        "target": "app.domain.context.MediaInfo"
      },
      {
        "kind": "import",
        "name": "MetaAnime",
        "target": "app.domain.meta.metaanime.MetaAnime"
      },
      {
        "kind": "import",
        "name": "MetaBase",
        "target": "app.domain.meta.metabase.MetaBase"
      },
      {
        "kind": "import",
        "name": "MetaInfo",
        "target": "app.domain.metainfo.MetaInfo"
      },
      {
        "kind": "import",
        "name": "MetaInfoPath",
        "target": "app.domain.metainfo.MetaInfoPath"
      },
      {
        "kind": "import",
        "name": "MetaMusic",
        "target": "app.domain.meta.metamusic.MetaMusic"
      },
      {
        "kind": "import",
        "name": "MetaVideo",
        "target": "app.domain.meta.metavideo.MetaVideo"
      },
      {
        "kind": "import",
        "name": "MusicNameContext",
        "target": "app.domain.meta.metamusic.MusicNameContext"
      },
      {
        "kind": "import",
        "name": "MusicNameParseResult",
        "target": "app.domain.meta.metamusic.MusicNameParseResult"
      },
      {
        "kind": "import",
        "name": "MusicNameParser",
        "target": "app.domain.meta.metamusic.MusicNameParser"
      },
      {
        "kind": "import",
        "name": "MusicNamePattern",
        "target": "app.domain.meta.metamusic.MusicNamePattern"
      },
      {
        "kind": "import",
        "name": "MusicNamePatternMatch",
        "target": "app.domain.meta.metamusic.MusicNamePatternMatch"
      },
      {
        "kind": "import",
        "name": "MusicNameRegistry",
        "target": "app.domain.meta.metamusic.MusicNameRegistry"
      },
      {
        "kind": "import",
        "name": "NfoReader",
        "target": "app.domain.scraper.NfoReader"
      },
      {
        "kind": "import",
        "name": "Tokens",
        "target": "app.domain.tokens.Tokens"
      },
      {
        "kind": "import",
        "name": "TorrentInfo",
        "target": "app.domain.context.TorrentInfo"
      },
      {
        "kind": "import",
        "name": "WordsMatcher",
        "target": "app.domain.meta.words.WordsMatcher"
      },
      {
        "kind": "import",
        "name": "build_media_key",
        "target": "app.schemas.media.build_media_key"
      },
      {
        "kind": "import",
        "name": "configure_search_source_provider",
        "target": "app.domain.media.configure_search_source_provider"
      },
      {
        "kind": "import",
        "name": "is_media_source_enabled",
        "target": "app.domain.media.is_media_source_enabled"
      },
      {
        "kind": "import",
        "name": "is_media_source_selected",
        "target": "app.domain.media.is_media_source_selected"
      },
      {
        "kind": "import",
        "name": "is_music_media_source",
        "target": "app.domain.media.is_music_media_source"
      },
      {
        "kind": "import",
        "name": "normalize_media_identity_payload",
        "target": "app.schemas.media.normalize_media_identity_payload"
      },
      {
        "kind": "import",
        "name": "normalize_media_source",
        "target": "app.schemas.media.normalize_media_source"
      },
      {
        "kind": "import",
        "name": "normalize_music_type",
        "target": "app.domain.media.normalize_music_type"
      },
      {
        "kind": "import",
        "name": "parse_media_key",
        "target": "app.schemas.media.parse_media_key"
      },
      {
        "kind": "import",
        "name": "parse_media_source_selection",
        "target": "app.domain.media.parse_media_source_selection"
      },
      {
        "kind": "import",
        "name": "resolve_media_identity",
        "target": "app.schemas.media.resolve_media_identity"
      }
    ],
    "app.sdk.network": [
      {
        "kind": "import",
        "name": "AsyncRequestUtils",
        "target": "app.adapters.network.http.AsyncRequestUtils"
      },
      {
        "kind": "import",
        "name": "IpUtils",
        "target": "app.adapters.network.ip.IpUtils"
      },
      {
        "kind": "import",
        "name": "RequestUtils",
        "target": "app.adapters.network.http.RequestUtils"
      },
      {
        "kind": "import",
        "name": "RssHelper",
        "target": "app.application.rss.RssHelper"
      },
      {
        "kind": "import",
        "name": "SecurityUtils",
        "target": "app.application.security.url.SecurityUtils"
      },
      {
        "kind": "import",
        "name": "SiteUtils",
        "target": "app.domain.site.SiteUtils"
      },
      {
        "kind": "import",
        "name": "SitesHelper",
        "target": "app.application.site.sites.SitesHelper"
      },
      {
        "kind": "import",
        "name": "UrlUtils",
        "target": "app.foundation.url.UrlUtils"
      },
      {
        "kind": "import",
        "name": "WebUtils",
        "target": "app.adapters.external.location.WebUtils"
      }
    ],
    "app.sdk.plugins": [
      {
        "kind": "import",
        "name": "ModuleManager",
        "target": "app.runtime.extensions.module_manager.ModuleManager"
      },
      {
        "kind": "import",
        "name": "PluginManager",
        "target": "app.runtime.extensions.plugin_manager.PluginManager"
      }
    ],
    "app.sdk.security": [
      {
        "kind": "import",
        "name": "ALGORITHM",
        "target": "app.application.security.token.ALGORITHM"
      },
      {
        "kind": "import",
        "name": "BCRYPT_PASSWORD_MAX_BYTES",
        "target": "app.application.security.token.BCRYPT_PASSWORD_MAX_BYTES"
      },
      {
        "kind": "import",
        "name": "BCRYPT_ROUNDS",
        "target": "app.application.security.token.BCRYPT_ROUNDS"
      },
      {
        "kind": "import",
        "name": "PasswordTooLongError",
        "target": "app.application.security.token.PasswordTooLongError"
      },
      {
        "kind": "import",
        "name": "TokenValidationError",
        "target": "app.application.security.token.TokenValidationError"
      },
      {
        "kind": "import",
        "name": "aes_decrypt",
        "target": "app.application.security.token.aes_decrypt"
      },
      {
        "kind": "import",
        "name": "aes_encrypt",
        "target": "app.application.security.token.aes_encrypt"
      },
      {
        "kind": "import",
        "name": "anthropic_api_key_header",
        "target": "app.adapters.web.security.access.anthropic_api_key_header"
      },
      {
        "kind": "import",
        "name": "api_key_header",
        "target": "app.adapters.web.security.access.api_key_header"
      },
      {
        "kind": "import",
        "name": "api_key_query",
        "target": "app.adapters.web.security.access.api_key_query"
      },
      {
        "kind": "import",
        "name": "api_token_query",
        "target": "app.adapters.web.security.access.api_token_query"
      },
      {
        "kind": "import",
        "name": "create_access_token",
        "target": "app.application.security.token.create_access_token"
      },
      {
        "kind": "import",
        "name": "decode_access_token",
        "target": "app.application.security.token.decode_access_token"
      },
      {
        "kind": "import",
        "name": "decrypt",
        "target": "app.application.security.token.decrypt"
      },
      {
        "kind": "import",
        "name": "encrypt_message",
        "target": "app.application.security.token.encrypt_message"
      },
      {
        "kind": "import",
        "name": "get_password_hash",
        "target": "app.application.security.token.get_password_hash"
      },
      {
        "kind": "import",
        "name": "hash_sha256",
        "target": "app.application.security.token.hash_sha256"
      },
      {
        "kind": "import",
        "name": "nexusphp_encrypt",
        "target": "app.application.security.token.nexusphp_encrypt"
      },
      {
        "kind": "import",
        "name": "oauth2_scheme_manual_error",
        "target": "app.adapters.web.security.access.oauth2_scheme_manual_error"
      },
      {
        "kind": "import",
        "name": "openai_bearer_scheme",
        "target": "app.adapters.web.security.access.openai_bearer_scheme"
      },
      {
        "kind": "import",
        "name": "resource_token_cookie",
        "target": "app.adapters.web.security.access.resource_token_cookie"
      },
      {
        "kind": "import",
        "name": "set_or_refresh_resource_token_cookie",
        "target": "app.adapters.web.security.access.set_or_refresh_resource_token_cookie"
      },
      {
        "kind": "import",
        "name": "set_superuser_token_payload_provider",
        "target": "app.adapters.web.security.access.set_superuser_token_payload_provider"
      },
      {
        "kind": "import",
        "name": "verify_apikey",
        "target": "app.adapters.web.security.access.verify_apikey"
      },
      {
        "kind": "import",
        "name": "verify_apitoken",
        "target": "app.adapters.web.security.access.verify_apitoken"
      },
      {
        "kind": "import",
        "name": "verify_password",
        "target": "app.application.security.token.verify_password"
      },
      {
        "kind": "import",
        "name": "verify_resource_token",
        "target": "app.adapters.web.security.access.verify_resource_token"
      },
      {
        "kind": "import",
        "name": "verify_token",
        "target": "app.adapters.web.security.access.verify_token"
      }
    ],
    "app.sdk.services": [
      {
        "kind": "import",
        "name": "DownloaderHelper",
        "target": "app.application.downloader.DownloaderHelper"
      },
      {
        "kind": "import",
        "name": "MediaServerHelper",
        "target": "app.application.mediaserver.MediaServerHelper"
      },
      {
        "kind": "import",
        "name": "MediaServerIdentityHelper",
        "target": "app.application.mediaserver.MediaServerIdentityHelper"
      },
      {
        "kind": "import",
        "name": "MusicMediaServerHelper",
        "target": "app.application.mediaserver.MusicMediaServerHelper"
      },
      {
        "kind": "import",
        "name": "NotificationHelper",
        "target": "app.application.notification.NotificationHelper"
      },
      {
        "kind": "import",
        "name": "RuleHelper",
        "target": "app.application.rules.RuleHelper"
      },
      {
        "kind": "import",
        "name": "ServiceBaseHelper",
        "target": "app.application.service.ServiceBaseHelper"
      },
      {
        "kind": "import",
        "name": "ServiceConfigHelper",
        "target": "app.runtime.extensions.service_config.ServiceConfigHelper"
      },
      {
        "kind": "import",
        "name": "StorageHelper",
        "target": "app.application.storage.StorageHelper"
      },
      {
        "kind": "import",
        "name": "SystemHelper",
        "target": "app.runtime.state.SystemHelper"
      }
    ],
    "app.sdk.string": [
      {
        "kind": "ClassDef",
        "name": "StringUtils",
        "target": ""
      }
    ],
    "app.sdk.utilities": [
      {
        "kind": "import",
        "name": "CryptoJsUtils",
        "target": "app.foundation.crypto.CryptoJsUtils"
      },
      {
        "kind": "import",
        "name": "DomUtils",
        "target": "app.foundation.dom.DomUtils"
      },
      {
        "kind": "import",
        "name": "LocaleHelper",
        "target": "app.runtime.localization.LocaleHelper"
      },
      {
        "kind": "import",
        "name": "ObjectUtils",
        "target": "app.foundation.reflection.ObjectUtils"
      },
      {
        "kind": "import",
        "name": "OtpUtils",
        "target": "app.application.security.otp.OtpUtils"
      },
      {
        "kind": "import",
        "name": "Singleton",
        "target": "app.foundation.singleton.Singleton"
      },
      {
        "kind": "import",
        "name": "StringUtils",
        "target": "app.sdk.string.StringUtils"
      },
      {
        "kind": "import",
        "name": "SystemUtils",
        "target": "app.adapters.system.host.SystemUtils"
      },
      {
        "kind": "import",
        "name": "TimerUtils",
        "target": "app.runtime.scheduling.TimerUtils"
      },
      {
        "kind": "import",
        "name": "cut",
        "target": "app.foundation.text.cut"
      },
      {
        "kind": "alias",
        "name": "decrypt",
        "target": "app.foundation.crypto.CryptoJsUtils.decrypt"
      },
      {
        "kind": "alias",
        "name": "encrypt",
        "target": "app.foundation.crypto.CryptoJsUtils.encrypt"
      },
      {
        "kind": "import",
        "name": "log_execution_time",
        "target": "app.runtime.execution.log_execution_time"
      },
      {
        "kind": "import",
        "name": "retry",
        "target": "app.runtime.execution.retry"
      }
    ]
  }
}
