5759c1862e
M0-M7 已完成:核心网关(身份/RBAC/TOTP/OIDC/SAML/Provider/配额/路由/内容策略/审计/定价)+ 资源市场(MCP/Skills/数字员工)。 含 22 个 PostgreSQL 迁移、管理端/门户端前端源码、OpenAPI 契约、部署 compose。 Co-Authored-By: Claude <noreply@anthropic.com>
24 KiB
24 KiB
旧 Python → Go 路由契约矩阵
由
scripts/compare_route_contracts.py通过 AST 与 OpenAPI 自动生成;replaced表示能力有新契约承接,仍需兼容层或客户端迁移,不能视为原路由原样可用。
- 旧源码路由装饰器:201
- 同方法同规范路径:85
- 新契约替代:112
- 明确退役:4
- 尚无契约:0
| 状态 | 方法 | 旧路径 | Go 契约/预期目标 | 来源 |
|---|---|---|---|---|
| 新契约替代 | GET |
/admin/api/admins |
/api/v1/admin/identities/admins |
admin.py:290 |
| 新契约替代 | POST |
/admin/api/admins |
/api/v1/admin/identities/admins |
admin.py:306 |
| 新契约替代 | POST |
/admin/api/admins/change_password |
/api/v1/admin/password |
admin.py:361 |
| 新契约替代 | DELETE |
/admin/api/admins/{admin_id} |
/api/v1/admin/identities/*/{identity_id} active=false |
admin.py:381 |
| 新契约替代 | PATCH |
/admin/api/admins/{admin_id} |
/api/v1/admin/identities/admins/{identity_id} (PUT with full revision payload) |
admin.py:329 |
| 已覆盖 | GET |
/admin/api/applications |
/api/v1/admin/applications |
applications.py:158 |
| 已覆盖 | POST |
/admin/api/applications |
/api/v1/admin/applications |
applications.py:287 |
| 已覆盖 | GET |
/admin/api/applications/asset-dependencies |
/api/v1/admin/applications/asset-dependencies |
applications.py:172 |
| 已覆盖 | GET |
/admin/api/applications/catalog |
/api/v1/admin/applications/catalog |
applications.py:165 |
| 已覆盖 | DELETE |
/admin/api/applications/{app_id} |
/api/v1/admin/applications/{application_id} |
applications.py:370 |
| 新契约替代 | PATCH |
/admin/api/applications/{app_id} |
/api/v1/admin/applications/{application_id} (PUT with full revision payload) |
applications.py:312 |
| 新契约替代 | GET |
/admin/api/applications/{app_id}/composition |
/api/v1/admin/applications/{application_id} |
applications.py:190 |
| 新契约替代 | PUT |
/admin/api/applications/{app_id}/composition |
/api/v1/admin/applications/{application_id} |
applications.py:202 |
| 新契约替代 | POST |
/admin/api/applications/{app_id}/keys |
/api/v1/admin/api-keys (scoped credentials) |
applications.py:384 |
| 已覆盖 | POST |
/admin/api/applications/{app_id}/publish |
/api/v1/admin/applications/{application_id}/publish |
applications.py:214 |
| 已覆盖 | POST |
/admin/api/applications/{app_id}/rollback/{version} |
/api/v1/admin/applications/{application_id}/rollback/{version} |
applications.py:233 |
| 已覆盖 | GET |
/admin/api/applications/{app_id}/runs |
/api/v1/admin/applications/{application_id}/runs |
applications.py:254 |
| 新契约替代 | POST |
/admin/api/applications/{app_id}/test |
/v1/applications/{application_code}/chat/completions |
applications.py:272 |
| 新契约替代 | GET |
/admin/api/audit_settings |
/api/v1/admin/content-policies and /api/v1/admin/notification-channels |
admin.py:2297 |
| 新契约替代 | PUT |
/admin/api/audit_settings |
/api/v1/admin/content-policies and /api/v1/admin/notification-channels |
admin.py:2340 |
| 新契约替代 | POST |
/admin/api/audit_settings/test_image_model |
/api/v1/admin/content-policies and /api/v1/admin/notification-channels |
admin.py:2379 |
| 新契约替代 | GET |
/admin/api/content_audit_scopes |
/api/v1/admin/content-policies |
admin.py:2413 |
| 新契约替代 | POST |
/admin/api/content_audit_scopes |
/api/v1/admin/content-policies |
admin.py:2436 |
| 新契约替代 | DELETE |
/admin/api/content_audit_scopes/{scope_id} |
/api/v1/admin/content-policies |
admin.py:2470 |
| 新契约替代 | GET |
/admin/api/cost_report |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3936 |
| 新契约替代 | GET |
/admin/api/cost_report/export |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3967 |
| 已覆盖 | GET |
/admin/api/departments |
/api/v1/admin/departments |
admin.py:550 |
| 已覆盖 | POST |
/admin/api/departments |
/api/v1/admin/departments |
admin.py:565 |
| 新契约替代 | DELETE |
/admin/api/departments/{dept_id} |
/api/v1/admin/departments/{department_id} active=false |
admin.py:615 |
| 新契约替代 | PATCH |
/admin/api/departments/{dept_id} |
/api/v1/admin/departments/{department_id} (PUT with full revision payload) |
admin.py:584 |
| 新契约替代 | GET |
/admin/api/dept_budgets |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3781 |
| 新契约替代 | POST |
/admin/api/dept_budgets |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3807 |
| 新契约替代 | DELETE |
/admin/api/dept_budgets/{budget_id} |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3839 |
| 新契约替代 | GET |
/admin/api/dept_stats |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:2934 |
| 已覆盖 | GET |
/admin/api/fact-check/events |
/api/v1/admin/fact-check/events |
hallucination.py:390 |
| 已覆盖 | GET |
/admin/api/fact-check/events/{event_id} |
/api/v1/admin/fact-check/events/{event_id} |
hallucination.py:405 |
| 已覆盖 | GET |
/admin/api/fact-check/policies |
/api/v1/admin/fact-check/policies |
hallucination.py:348 |
| 已覆盖 | POST |
/admin/api/fact-check/policies |
/api/v1/admin/fact-check/policies |
hallucination.py:355 |
| 已覆盖 | DELETE |
/admin/api/fact-check/policies/{policy_id} |
/api/v1/admin/fact-check/policies/{policy_id} |
hallucination.py:378 |
| 已覆盖 | GET |
/admin/api/fact-check/settings |
/api/v1/admin/fact-check/settings |
hallucination.py:312 |
| 已覆盖 | PUT |
/admin/api/fact-check/settings |
/api/v1/admin/fact-check/settings |
hallucination.py:323 |
| 新契约替代 | GET |
/admin/api/feishu_auth |
/api/v1/admin/identity-providers (generic OIDC/SAML) |
admin.py:3314 |
| 新契约替代 | POST |
/admin/api/feishu_auth |
/api/v1/admin/identity-providers (generic OIDC/SAML) |
admin.py:3335 |
| 新契约替代 | POST |
/admin/api/feishu_auth/test |
/api/v1/admin/identity-providers (generic OIDC/SAML) |
admin.py:3364 |
| 新契约替代 | GET |
/admin/api/kb |
/api/v1/admin/knowledge-bases |
knowledge.py:395 |
| 新契约替代 | POST |
/admin/api/kb |
/api/v1/admin/knowledge-bases |
knowledge.py:410 |
| 新契约替代 | DELETE |
/admin/api/kb/{kb_id} |
/api/v1/admin/knowledge-bases/{knowledge_base_id} |
knowledge.py:475 |
| 新契约替代 | PATCH |
/admin/api/kb/{kb_id} |
/api/v1/admin/knowledge-bases/{knowledge_base_id} (PUT with full revision payload) |
knowledge.py:439 |
| 新契约替代 | GET |
/admin/api/kb/{kb_id}/documents |
/api/v1/admin/knowledge-bases/{knowledge_base_id}/documents |
knowledge.py:494 |
| 新契约替代 | POST |
/admin/api/kb/{kb_id}/documents/paste |
/api/v1/admin/knowledge-bases/{knowledge_base_id}/documents |
knowledge.py:550 |
| 新契约替代 | POST |
/admin/api/kb/{kb_id}/documents/upload |
/api/v1/admin/knowledge-bases/{knowledge_base_id}/documents |
knowledge.py:508 |
| 新契约替代 | DELETE |
/admin/api/kb/{kb_id}/documents/{doc_id} |
/api/v1/admin/knowledge-bases/{knowledge_base_id}/documents/{document_id} |
knowledge.py:590 |
| 新契约替代 | POST |
/admin/api/kb/{kb_id}/documents/{doc_id}/reprocess |
/api/v1/admin/knowledge-bases/{knowledge_base_id}/documents/{document_id}/reprocess |
knowledge.py:574 |
| 新契约替代 | POST |
/admin/api/kb/{kb_id}/test_search |
/api/v1/admin/knowledge-bases/{knowledge_base_id}/search |
knowledge.py:613 |
| 新契约替代 | GET |
/admin/api/keys |
/api/v1/admin/api-keys |
admin.py:912 |
| 新契约替代 | POST |
/admin/api/keys |
/api/v1/admin/api-keys |
admin.py:943 |
| 新契约替代 | DELETE |
/admin/api/keys/{key_id} |
/api/v1/admin/api-keys/{api_key_id} |
admin.py:1017 |
| 新契约替代 | PATCH |
/admin/api/keys/{key_id} |
/api/v1/admin/api-keys/{api_key_id}/limits |
admin.py:977 |
| 新契约替代 | GET |
/admin/api/log_search |
/api/v1/admin/audit-events |
admin.py:2817 |
| 新契约替代 | GET |
/admin/api/log_views |
/api/v1/admin/audit-events |
admin.py:2879 |
| 已覆盖 | POST |
/admin/api/login |
/api/v1/admin/login |
admin.py:151 |
| 已覆盖 | POST |
/admin/api/login/totp |
/api/v1/admin/login/totp |
admin.py:193 |
| 新契约替代 | DELETE |
/admin/api/logs |
/api/v1/admin/audit-events (bounded immutable audit query) |
admin.py:2633 |
| 新契约替代 | GET |
/admin/api/logs |
/api/v1/admin/audit-events |
admin.py:2540 |
| 新契约替代 | GET |
/admin/api/logs/search |
/api/v1/admin/audit-events (bounded immutable audit query) |
admin.py:2689 |
| 新契约替代 | GET |
/admin/api/logs/{log_id}/view_history |
/api/v1/admin/audit-events (bounded immutable audit query) |
admin.py:2862 |
| 明确退役 | POST |
/admin/api/logs/{log_id}/view_raw |
retired: unbounded raw-body access is excluded by storage/compliance ADR |
admin.py:2653 |
| 新契约替代 | GET |
/admin/api/malicious_domains |
/api/v1/admin/content-policies |
admin.py:2501 |
| 新契约替代 | POST |
/admin/api/malicious_domains |
/api/v1/admin/content-policies |
admin.py:2512 |
| 新契约替代 | DELETE |
/admin/api/malicious_domains/{domain} |
/api/v1/admin/content-policies |
admin.py:2528 |
| 已覆盖 | GET |
/admin/api/model-requests |
/api/v1/admin/model-requests |
admin.py:3506 |
| 已覆盖 | POST |
/admin/api/model-requests/{req_id}/approve |
/api/v1/admin/model-requests/{request_id}/approve |
admin.py:3522 |
| 已覆盖 | POST |
/admin/api/model-requests/{req_id}/reject |
/api/v1/admin/model-requests/{request_id}/reject |
admin.py:3569 |
| 新契约替代 | GET |
/admin/api/model_aliases |
/api/v1/admin/model-routes |
admin.py:2204 |
| 新契约替代 | POST |
/admin/api/model_aliases |
/api/v1/admin/model-routes |
admin.py:2224 |
| 新契约替代 | DELETE |
/admin/api/model_aliases/{alias_id} |
/api/v1/admin/model-routes |
admin.py:2262 |
| 新契约替代 | PUT |
/admin/api/model_aliases/{alias_id} |
/api/v1/admin/model-routes |
admin.py:2240 |
| 新契约替代 | GET |
/admin/api/model_pricing |
/api/v1/admin/model-prices |
admin.py:3615 |
| 新契约替代 | POST |
/admin/api/model_pricing |
/api/v1/admin/model-prices |
admin.py:3646 |
| 新契约替代 | DELETE |
/admin/api/model_pricing/{pricing_id} |
/api/v1/admin/model-prices/{price_id} |
admin.py:3677 |
| 新契约替代 | GET |
/admin/api/model_qps |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2114 |
| 新契约替代 | POST |
/admin/api/model_qps |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2125 |
| 新契约替代 | DELETE |
/admin/api/model_qps/{config_id} |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2147 |
| 已覆盖 | GET |
/admin/api/models |
/api/v1/admin/models |
admin.py:1093 |
| 已覆盖 | GET |
/admin/api/monitoring/overview |
/api/v1/admin/monitoring/overview |
admin.py:3153 |
| 新契约替代 | GET |
/admin/api/notify_config |
/api/v1/admin/notification-channels |
admin.py:3392 |
| 新契约替代 | POST |
/admin/api/notify_config |
/api/v1/admin/notification-channels |
admin.py:3415 |
| 新契约替代 | POST |
/admin/api/notify_config/test |
/api/v1/admin/notification-channels |
admin.py:3447 |
| 新契约替代 | GET |
/admin/api/pricing_config |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3702 |
| 新契约替代 | PUT |
/admin/api/pricing_config |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3717 |
| 已覆盖 | GET |
/admin/api/prompts |
/api/v1/admin/prompts |
prompts.py:227 |
| 已覆盖 | POST |
/admin/api/prompts |
/api/v1/admin/prompts |
prompts.py:246 |
| 新契约替代 | GET |
/admin/api/prompts/categories |
/api/v1/admin/prompt-categories |
prompts.py:135 |
| 新契约替代 | POST |
/admin/api/prompts/categories |
/api/v1/admin/prompt-categories |
prompts.py:150 |
| 新契约替代 | DELETE |
/admin/api/prompts/categories/{cat_id} |
/api/v1/admin/prompt-categories |
prompts.py:168 |
| 已覆盖 | DELETE |
/admin/api/prompts/{tpl_id} |
/api/v1/admin/prompts/{prompt_id} |
prompts.py:323 |
| 已覆盖 | GET |
/admin/api/prompts/{tpl_id} |
/api/v1/admin/prompts/{prompt_id} |
prompts.py:279 |
| 新契约替代 | PATCH |
/admin/api/prompts/{tpl_id} |
/api/v1/admin/prompts/{prompt_id} (PUT with full revision payload) |
prompts.py:292 |
| 新契约替代 | POST |
/admin/api/prompts/{tpl_id}/preview |
/api/v1/admin/prompts/{prompt_id}/render |
prompts.py:392 |
| 已覆盖 | POST |
/admin/api/prompts/{tpl_id}/versions |
/api/v1/admin/prompts/{prompt_id}/versions |
prompts.py:344 |
| 已覆盖 | POST |
/admin/api/prompts/{tpl_id}/versions/{version_id}/activate |
/api/v1/admin/prompts/{prompt_id}/versions/{version}/activate |
prompts.py:371 |
| 已覆盖 | GET |
/admin/api/providers |
/api/v1/admin/providers |
admin.py:1083 |
| 已覆盖 | POST |
/admin/api/providers |
/api/v1/admin/providers |
admin.py:1106 |
| 新契约替代 | DELETE |
/admin/api/providers/{provider_id} |
/api/v1/admin/providers/{provider_id} enabled=false |
admin.py:1152 |
| 新契约替代 | PATCH |
/admin/api/providers/{provider_id} |
/api/v1/admin/providers/{provider_id} (PUT with full revision payload) |
admin.py:1169 |
| 已覆盖 | PUT |
/admin/api/providers/{provider_id} |
/api/v1/admin/providers/{provider_id} |
admin.py:1128 |
| 新契约替代 | GET |
/admin/api/providers/{provider_id}/backends |
/api/v1/admin/providers/{provider_id}/models and /api/v1/admin/model-routes |
admin.py:1333 |
| 新契约替代 | PUT |
/admin/api/providers/{provider_id}/backends |
/api/v1/admin/providers/{provider_id}/models and /api/v1/admin/model-routes |
admin.py:1358 |
| 新契约替代 | DELETE |
/admin/api/providers/{provider_id}/backends/{backend_name} |
/api/v1/admin/providers/{provider_id}/models and /api/v1/admin/model-routes |
admin.py:1455 |
| 新契约替代 | PATCH |
/admin/api/providers/{provider_id}/backends/{backend_name} |
/api/v1/admin/providers/{provider_id}/models and /api/v1/admin/model-routes |
admin.py:1414 |
| 新契约替代 | POST |
/admin/api/providers/{provider_id}/fetch_models |
/api/v1/admin/providers/{provider_id}/models/sync |
admin.py:1255 |
| 已覆盖 | POST |
/admin/api/providers/{provider_id}/test |
/api/v1/admin/providers/{provider_id}/test |
admin.py:1231 |
| 新契约替代 | GET |
/admin/api/rate_limit_rules |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2033 |
| 新契约替代 | POST |
/admin/api/rate_limit_rules |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2044 |
| 新契约替代 | DELETE |
/admin/api/rate_limit_rules/{rule_id} |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2090 |
| 新契约替代 | PATCH |
/admin/api/rate_limit_rules/{rule_id} |
/api/v1/admin/api-keys and /api/v1/admin/model-routes |
admin.py:2064 |
| 已覆盖 | POST |
/admin/api/reload |
/api/v1/admin/reload |
admin.py:3292 |
| 新契约替代 | GET |
/admin/api/routing_groups |
/api/v1/admin/model-routes |
smart_router.py:309 |
| 新契约替代 | POST |
/admin/api/routing_groups |
/api/v1/admin/model-routes |
smart_router.py:326 |
| 新契约替代 | DELETE |
/admin/api/routing_groups/{group_id} |
/api/v1/admin/model-routes |
smart_router.py:372 |
| 新契约替代 | PATCH |
/admin/api/routing_groups/{group_id} |
/api/v1/admin/model-routes |
smart_router.py:346 |
| 新契约替代 | POST |
/admin/api/routing_groups/{group_id}/preview |
/api/v1/admin/model-routes |
smart_router.py:468 |
| 新契约替代 | POST |
/admin/api/routing_groups/{group_id}/targets |
/api/v1/admin/model-routes |
smart_router.py:390 |
| 新契约替代 | DELETE |
/admin/api/routing_groups/{group_id}/targets/{target_id} |
/api/v1/admin/model-routes |
smart_router.py:448 |
| 新契约替代 | PATCH |
/admin/api/routing_groups/{group_id}/targets/{target_id} |
/api/v1/admin/model-routes |
smart_router.py:422 |
| 新契约替代 | GET |
/admin/api/rule_dimensions |
/api/v1/admin/content-policies |
admin.py:1854 |
| 新契约替代 | GET |
/admin/api/rules |
/api/v1/admin/content-policies |
admin.py:1717 |
| 新契约替代 | POST |
/admin/api/rules |
/api/v1/admin/content-policies |
admin.py:1753 |
| 新契约替代 | POST |
/admin/api/rules/batch |
/api/v1/admin/content-policies |
admin.py:1775 |
| 新契约替代 | DELETE |
/admin/api/rules/{rule_id} |
/api/v1/admin/content-policies |
admin.py:1835 |
| 新契约替代 | PATCH |
/admin/api/rules/{rule_id} |
/api/v1/admin/content-policies |
admin.py:1808 |
| 新契约替代 | GET |
/admin/api/stats |
/api/v1/admin/usage/daily and /api/v1/admin/model-prices |
admin.py:3022 |
| 新契约替代 | GET |
/admin/api/system_info |
/api/v1/admin/system-info |
admin.py:2488 |
| 已覆盖 | GET |
/admin/api/tools |
/api/v1/admin/tools |
tools.py:218 |
| 已覆盖 | POST |
/admin/api/tools |
/api/v1/admin/tools |
tools.py:229 |
| 已覆盖 | DELETE |
/admin/api/tools/{tool_id} |
/api/v1/admin/tools/{tool_id} |
tools.py:305 |
| 新契约替代 | PATCH |
/admin/api/tools/{tool_id} |
/api/v1/admin/tools/{tool_id} (PUT with full revision payload) |
tools.py:260 |
| 明确退役 | GET |
/admin/api/tools/{tool_id}/headers |
retired: decrypted secret headers are intentionally write-only |
tools.py:320 |
| 新契约替代 | POST |
/admin/api/tools/{tool_id}/test_invoke |
/api/v1/admin/tools/{tool_id}/test |
tools.py:338 |
| 新契约替代 | POST |
/admin/api/totp/backup_codes/regenerate |
/api/v1/admin/totp/backup-codes/regenerate |
admin.py:521 |
| 已覆盖 | POST |
/admin/api/totp/confirm |
/api/v1/admin/totp/confirm |
admin.py:464 |
| 已覆盖 | POST |
/admin/api/totp/disable |
/api/v1/admin/totp/disable |
admin.py:487 |
| 已覆盖 | POST |
/admin/api/totp/setup |
/api/v1/admin/totp/setup |
admin.py:439 |
| 已覆盖 | GET |
/admin/api/totp/status |
/api/v1/admin/totp/status |
admin.py:422 |
| 新契约替代 | GET |
/admin/api/users |
/api/v1/admin/identities/portal-users |
admin.py:683 |
| 新契约替代 | POST |
/admin/api/users |
/api/v1/admin/identities/portal-users |
admin.py:721 |
| 新契约替代 | DELETE |
/admin/api/users/{user_id} |
/api/v1/admin/identities/*/{identity_id} active=false |
admin.py:826 |
| 新契约替代 | PATCH |
/admin/api/users/{user_id} |
/api/v1/admin/identities/portal-users/{identity_id} (PUT with full revision payload) |
admin.py:745 |
| 新契约替代 | POST |
/admin/api/users/{user_id}/approve |
/api/v1/admin/identities/portal-users/{identity_id} active=true |
admin.py:788 |
| 新契约替代 | DELETE |
/admin/api/users/{user_id}/feishu |
/api/v1/admin/identity-providers (generic identity link lifecycle) |
admin.py:806 |
| 新契约替代 | POST |
/admin/api/users/{user_id}/reset_password |
/api/v1/admin/identities/portal-users/{identity_id} password field |
admin.py:771 |
| 已覆盖 | GET |
/admin/api/whoami |
/api/v1/admin/whoami |
admin.py:256 |
| 明确退役 | GET |
/admin/ui |
Art Design Pro SPA deployment |
main.py:3838 |
| 已覆盖 | GET |
/healthz |
/healthz |
main.py:3756 |
| 已覆盖 | GET |
/metrics |
/metrics |
main.py:3793 |
| 已覆盖 | GET |
/portal/api/applications |
/api/v1/portal/applications |
applications.py:408 |
| 已覆盖 | POST |
/portal/api/apps/{app_code}/chat |
/api/v1/portal/apps/{application_code}/chat |
orchestration.py:227 |
| 已覆盖 | POST |
/portal/api/apps/{app_code}/conversations |
/api/v1/portal/apps/{application_code}/conversations |
orchestration.py:245 |
| 已覆盖 | GET |
/portal/api/apps/{app_code}/conversations/{conversation_id} |
/api/v1/portal/apps/{application_code}/conversations/{conversation_id} |
orchestration.py:260 |
| 已覆盖 | POST |
/portal/api/apps/{app_code}/conversations/{conversation_id}/messages |
/api/v1/portal/apps/{application_code}/conversations/{conversation_id}/messages |
orchestration.py:275 |
| 已覆盖 | GET |
/portal/api/catalog |
/api/v1/portal/catalog |
portal.py:938 |
| 已覆盖 | GET |
/portal/api/cost |
/api/v1/portal/cost |
portal.py:550 |
| 已覆盖 | GET |
/portal/api/docs-info |
/api/v1/portal/docs-info |
portal.py:690 |
| 新契约替代 | GET |
/portal/api/feishu/callback |
/api/v1/portal/sso (generic OIDC/SAML) |
portal.py:214 |
| 新契约替代 | GET |
/portal/api/feishu/enabled |
/api/v1/portal/sso (generic OIDC/SAML) |
portal.py:189 |
| 新契约替代 | GET |
/portal/api/feishu/login |
/api/v1/portal/sso (generic OIDC/SAML) |
portal.py:195 |
| 已覆盖 | GET |
/portal/api/knowledge |
/api/v1/portal/knowledge |
portal.py:830 |
| 已覆盖 | POST |
/portal/api/login |
/api/v1/portal/login |
portal.py:76 |
| 已覆盖 | POST |
/portal/api/login/totp |
/api/v1/portal/login/totp |
portal.py:123 |
| 已覆盖 | POST |
/portal/api/logout |
/api/v1/portal/logout |
portal.py:181 |
| 已覆盖 | GET |
/portal/api/logs |
/api/v1/portal/logs |
portal.py:597 |
| 已覆盖 | GET |
/portal/api/logs/{log_id} |
/api/v1/portal/logs/{audit_event_id} |
portal.py:657 |
| 已覆盖 | GET |
/portal/api/me |
/api/v1/portal/me |
portal.py:432 |
| 已覆盖 | GET |
/portal/api/model-requests |
/api/v1/portal/model-requests |
portal.py:803 |
| 已覆盖 | POST |
/portal/api/model-requests |
/api/v1/portal/model-requests |
portal.py:754 |
| 已覆盖 | GET |
/portal/api/model-requests/available |
/api/v1/portal/model-requests/available |
portal.py:716 |
| 已覆盖 | POST |
/portal/api/password |
/api/v1/portal/password |
portal.py:273 |
| 已覆盖 | GET |
/portal/api/prompts |
/api/v1/portal/prompts |
portal.py:855 |
| 已覆盖 | GET |
/portal/api/prompts/{tpl_id} |
/api/v1/portal/prompts/{prompt_id} |
portal.py:887 |
| 已覆盖 | DELETE |
/portal/api/prompts/{tpl_id}/favorite |
/api/v1/portal/prompts/{prompt_id}/favorite |
portal.py:926 |
| 已覆盖 | POST |
/portal/api/prompts/{tpl_id}/favorite |
/api/v1/portal/prompts/{prompt_id}/favorite |
portal.py:910 |
| 已覆盖 | GET |
/portal/api/stats |
/api/v1/portal/stats |
portal.py:457 |
| 已覆盖 | GET |
/portal/api/tools |
/api/v1/portal/tools |
portal.py:838 |
| 新契约替代 | POST |
/portal/api/totp/backup_codes/regenerate |
/api/v1/portal/totp/backup-codes/regenerate |
portal.py:409 |
| 已覆盖 | POST |
/portal/api/totp/confirm |
/api/v1/portal/totp/confirm |
portal.py:354 |
| 已覆盖 | POST |
/portal/api/totp/disable |
/api/v1/portal/totp/disable |
portal.py:377 |
| 已覆盖 | POST |
/portal/api/totp/setup |
/api/v1/portal/totp/setup |
portal.py:328 |
| 已覆盖 | GET |
/portal/api/totp/status |
/api/v1/portal/totp/status |
portal.py:310 |
| 明确退役 | GET |
/portal/ui |
Art Design Pro SPA deployment |
main.py:3846 |
| 已覆盖 | GET |
/readyz |
/readyz |
main.py:3762 |
| 新契约替代 | POST |
/v1/apps/{app_code}/chat/completions |
/v1/applications/{application_code}/chat/completions |
orchestration.py:213 |
| 已覆盖 | POST |
/v1/chat/completions |
/v1/chat/completions |
main.py:2502 |
| 已覆盖 | POST |
/v1/embeddings |
/v1/embeddings |
main.py:2541 |
| 已覆盖 | POST |
/v1/knowledge/search |
/v1/knowledge/search |
main.py:3543 |
| 已覆盖 | POST |
/v1/messages |
/v1/messages |
main.py:2515 |
| 已覆盖 | GET |
/v1/models |
/v1/models |
main.py:3512 |
| 已覆盖 | GET |
/v1/prompts |
/v1/prompts |
main.py:3657 |
| 已覆盖 | POST |
/v1/prompts/{prompt_name}/render |
/v1/prompts/{prompt_name}/render |
main.py:3680 |
| 已覆盖 | POST |
/v1/responses |
/v1/responses |
main.py:2530 |
| 已覆盖 | GET |
/v1/tools |
/v1/tools |
main.py:3601 |
| 已覆盖 | POST |
/v1/tools/{tool_name}/invoke |
/v1/tools/{tool_code}/invoke |
main.py:3610 |