diff --git a/app/locales/en-US.json b/app/locales/en-US.json index 15e1ed805..e019154b5 100644 --- a/app/locales/en-US.json +++ b/app/locales/en-US.json @@ -160,6 +160,7 @@ "未识别到艺术家信息": "Unable to recognize artist information", "音乐实体类型无效,仅支持 recording 或 album": "Invalid music entity type; only recording or album is supported", "音乐下载只能使用音乐元数据源": "Music downloads can only use music metadata sources", + "艺术家合集只能使用音乐元数据源": "Artist collections can only use music metadata sources", "音乐重新识别只能使用音乐元数据源": "Music re-identification can only use music metadata sources", "读取数据库备份列表失败,请查看日志": "Failed to load database backups. Check the logs for details", "创建数据库备份失败,请查看日志": "Failed to create the database backup. Check the logs for details", @@ -187,6 +188,7 @@ "媒体ID格式无效": "Invalid media ID format", "MusicBrainz 只能用于音乐刮削": "MusicBrainz can only be used for music scraping", "音乐元数据源只能用于音乐刮削": "Music metadata sources can only be used for music scraping", + "艺术家合集任务添加失败": "Failed to add the artist collection download task", "刮削失败,无法识别音乐信息": "Scraping failed: unable to recognize music information", "刮削失败,无法识别媒体信息": "Scraping failed: unable to recognize media information", "刮削路径不存在": "Scraping path does not exist", diff --git a/app/locales/zh-TW.json b/app/locales/zh-TW.json index e7171a5b2..9146b2c10 100644 --- a/app/locales/zh-TW.json +++ b/app/locales/zh-TW.json @@ -152,6 +152,7 @@ "未识别到艺术家信息": "未識別到藝術家資訊", "音乐实体类型无效,仅支持 recording 或 album": "音樂實體類型無效,僅支援 recording 或 album", "音乐下载只能使用音乐元数据源": "音樂下載只能使用音樂中繼資料來源", + "艺术家合集只能使用音乐元数据源": "藝術家合集只能使用音樂中繼資料來源", "音乐重新识别只能使用音乐元数据源": "音樂重新識別只能使用音樂中繼資料來源", "读取数据库备份列表失败,请查看日志": "讀取資料庫備份清單失敗,請查看日誌", "创建数据库备份失败,请查看日志": "建立資料庫備份失敗,請查看日誌", @@ -179,6 +180,7 @@ "媒体ID格式无效": "媒體ID格式無效", "MusicBrainz 只能用于音乐刮削": "MusicBrainz 只能用於音樂刮削", "音乐元数据源只能用于音乐刮削": "音樂中繼資料來源只能用於音樂刮削", + "艺术家合集任务添加失败": "藝術家合集任務新增失敗", "刮削失败,无法识别音乐信息": "刮削失敗,無法識別音樂資訊", "刮削失败,无法识别媒体信息": "刮削失敗,無法識別媒體資訊", "刮削路径不存在": "刮削路徑不存在", diff --git a/docs/architecture/agent-api-surface-audit.json b/docs/architecture/agent-api-surface-audit.json index 68e262779..fb459b07c 100644 --- a/docs/architecture/agent-api-surface-audit.json +++ b/docs/architecture/agent-api-surface-audit.json @@ -3,7 +3,7 @@ "alternate-auth-duplicate": 11, "consolidated": 72, "gateway": 202, - "provider-skill": 12, + "provider-skill": 13, "stream_or_binary": 10, "transport_or_identity": 66, "ui_presentation": 23 @@ -21,7 +21,7 @@ "gateway_http_route_count": 203, "gateway_operation_count": 205, "matched_gateway_http_route_count": 202, - "openapi_operation_count": 396, + "openapi_operation_count": 397, "operations": [ { "disposition": "consolidated", @@ -639,6 +639,18 @@ "download" ] }, + { + "disposition": "provider-skill", + "method": "POST", + "operation_ids": [], + "owner": "downloader-operation", + "path": "/api/v1/download/artist-collection", + "reason": "Low-level provider behavior is exposed by the self-describing provider Skill; high-level MoviePilot operations remain in moviepilot-api.", + "summary": "添加艺术家合集下载", + "tags": [ + "download" + ] + }, { "disposition": "gateway", "method": "GET", diff --git a/docs/architecture/agent-api-surface-audit.md b/docs/architecture/agent-api-surface-audit.md index a4eaa1e42..6688f4d9a 100644 --- a/docs/architecture/agent-api-surface-audit.md +++ b/docs/architecture/agent-api-surface-audit.md @@ -5,7 +5,7 @@ ## Result -- OpenAPI HTTP operations: **396** +- OpenAPI HTTP operations: **397** - Stable `moviepilot_api` operations: **205** - Exact HTTP routes used by the gateway: **203** - OpenAPI routes matched directly by the gateway: **202** @@ -20,7 +20,7 @@ | `alternate-auth-duplicate` | 11 | API-token compatibility duplicate of a bearer-authenticated capability. | | `consolidated` | 72 | Source/UI route represented by a stable aggregate Agent operation. | | `gateway` | 202 | Approved structured MoviePilot Agent operation. | -| `provider-skill` | 12 | Low-level downloader or media-server capability owned by a provider Skill. | +| `provider-skill` | 13 | Low-level downloader or media-server capability owned by a provider Skill. | | `stream_or_binary` | 10 | Streaming or binary response owned by a direct client transport. | | `transport_or_identity` | 66 | Authentication, protocol, callback, account, or conversation transport boundary. | | `ui_presentation` | 23 | Frontend or plugin-rendered presentation contract. | @@ -84,6 +84,7 @@ | `GET` | `/api/v1/download/` | download | `gateway` | download.tasks.active | 正在下载 | | `POST` | `/api/v1/download/` | download | `consolidated` | download.add | 添加下载(含媒体信息) | | `POST` | `/api/v1/download/add` | download | `gateway` | download.add | 添加下载(不含媒体信息) | +| `POST` | `/api/v1/download/artist-collection` | download | `provider-skill` | downloader-operation | 添加艺术家合集下载 | | `GET` | `/api/v1/download/clients` | download | `gateway` | download.clients | 查询可用下载器 | | `GET` | `/api/v1/download/paths` | download | `gateway` | download.paths | 查询可用下载路径 | | `GET` | `/api/v1/download/start/{hashString}` | download | `provider-skill` | downloader-operation | 开始任务 | diff --git a/tests/fixtures/architecture/ruff-baseline.json b/tests/fixtures/architecture/ruff-baseline.json index 8d651e1c2..5f7ccb1e2 100644 --- a/tests/fixtures/architecture/ruff-baseline.json +++ b/tests/fixtures/architecture/ruff-baseline.json @@ -504,9 +504,6 @@ "app/schemas/message.py": { "I001": 1 }, - "app/schemas/types.py": { - "I001": 1 - }, "app/sdk/_legacy/user.py": { "I001": 1 },