fixed # 统一头像获取接口

This commit is contained in:
2026-10-23 00:41:51 +08:00
parent d238005561
commit 71ef1e2d30
8 changed files with 292 additions and 10 deletions
+8 -3
View File
@@ -27,11 +27,16 @@ def build(root, output):
'_version.py', 'version.txt', 'LICENSE',
)}
source = root / 'integrations/astrbot'
for name in ('main.py', '_conf_schema.json', 'requirements.txt'):
for name in ('main.py', 'avatars.py', '_conf_schema.json',
'requirements.txt'):
files[name] = (source / name).read_bytes()
files['README.md'] = (source / 'README.md').read_bytes()
files['runtime.py'] = (root / 'integrations/zhenxun/runtime.py').read_bytes()
files['verify_package.py'] = (root / 'scripts/verify_astrbot.py').read_bytes()
files['runtime.py'] = (
root / 'integrations/zhenxun/runtime.py'
).read_bytes()
files['verify_package.py'] = (
root / 'scripts/verify_astrbot.py'
).read_bytes()
# JSON是YAML的子集;标准库即可生成AstrBot可读的metadata.yaml。
files['metadata.yaml'] = (json.dumps({
'name': ROOT_NAME, 'display_name': '农场',
+4 -2
View File
@@ -29,13 +29,15 @@ def verify_files(files):
or manifest.get('plugin') != ROOT_NAME):
raise ValueError('Invalid package identity')
expected = manifest.get('files')
if not isinstance(expected, dict) or set(files) != set(expected) | {MANIFEST}:
if (not isinstance(expected, dict)
or set(files) != set(expected) | {MANIFEST}):
raise ValueError('Package files differ from manifest')
for name, digest in expected.items():
safe_path(name)
if hashlib.sha256(files[name]).hexdigest() != digest:
raise ValueError('Package checksum mismatch')
required = {'main.py', 'metadata.yaml', '_conf_schema.json', 'runtime.py',
required = {'main.py', 'avatars.py', 'metadata.yaml', '_conf_schema.json',
'runtime.py',
'requirements.txt', 'LICENSE', 'version.txt', '_version.py',
'_vendor/farm_core/__init__.py',
'_vendor/farm_render/data/assets.zip'}