Files
SnowLuma/compat/qq.schema.json
T
DrSmoothl af1c50f4e7 feat(compat): add QQ compatibility manifest
Static JSON served from raw.githubusercontent.com/.../main/compat/qq.json
that SnowLumaDesktop polls (3-day cached fallback) to classify the local
QQ install as known-good / known-bad / unknown / too-old.

- compat/qq.json — initial allow-all manifest (policy.allowUnknown=true)
- compat/qq.schema.json — JSON Schema for the manifest shape

Editing this file is how we ship "QQ X.Y.Z breaks Hook" advisories
without cutting a Desktop release.
2026-05-17 00:24:10 +08:00

57 lines
1.6 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "SnowLuma QQ compatibility manifest",
"type": "object",
"required": ["version", "policy", "knownGoodVersions", "knownBadVersions"],
"properties": {
"$schema": { "type": "string" },
"version": { "type": "integer", "const": 1 },
"updatedAt": { "type": "string", "format": "date-time" },
"policy": {
"type": "object",
"required": ["allowUnknown"],
"properties": {
"allowUnknown": {
"type": "boolean",
"description": "若 true,未在 known* 中列出的版本视为允许;若 false,需明确出现在 knownGoodVersions"
},
"warnUnknown": {
"type": "boolean",
"description": "未列出的版本启动时是否弹警告"
}
}
},
"knownGoodVersions": {
"type": "array",
"items": {
"type": "object",
"required": ["version"],
"properties": {
"version": { "type": "string", "description": "QQ 版本号字符串,如 '9.9.20.123'" },
"note": { "type": "string" }
}
}
},
"knownBadVersions": {
"type": "array",
"items": {
"type": "object",
"required": ["version"],
"properties": {
"version": { "type": "string" },
"reason": { "type": "string" },
"fixedInDesktopVersion": { "type": "string" }
}
}
},
"minVersion": {
"type": ["string", "null"],
"description": "最低支持版本(SemVer),null = 不限"
},
"notes": {
"type": "array",
"items": { "type": "string" }
}
}
}