79 Commits

Author SHA1 Message Date
jxxghp
be65e047b0 fix(plugin): support mirrors for Release asset downloads (#7224) 2026-10-27 22:21:48 +08:00
jxxghp
d9afaba8dd feat(plugin): expose documentation before installation (#7222) 2026-10-27 21:37:00 +08:00
jxxghp
6680e090e6 feat: 自动登记中心推送实例并安全轮换凭据 2026-10-24 09:17:24 +08:00
jxxghp
3ac7526930 feat(notification): relay AppPush through private MoviePilot Server 2026-10-24 07:32:00 +08:00
jxxghp
6d4ce83837 fix(types): clear host mypy debt and prevent typing regressions
严格检查全部宿主源码,清零类型错误预算并移除按模块类型豁免。
按原因、所属方法、错误码及语法指纹锁定必要兼容例外和站点类型桩,
CI 阻断新增忽略、检查范围退化、本地桩替代真实接口及新的类型错误。

修复空值、异步和供应方类型边界,保持插件与 API 兼容合同,
并补充存储、订阅、通知、Agent 和工作流边界的回归覆盖。
2026-10-21 22:03:18 +08:00
DDSRem
2de976f6b3 Merge pull request #7050 from DDSRem-Dev/codex-comment-migration
docs: 统一全项目中文注释和结构化契约说明
2026-10-17 19:26:29 +08:00
jxxghp
643f66040b style(types): format server imports 2026-10-17 16:44:16 +08:00
jxxghp
ae4534e14a fix(types): preserve server compatibility contracts 2026-10-17 16:37:48 +08:00
jxxghp
76d9ead430 fix(types): type MoviePilot server adapter responses 2026-10-17 16:23:48 +08:00
jxxghp
c94abab7b7 fix: type OCR user agent fallback 2026-10-17 12:36:48 +08:00
jxxghp
f7ce5c0ed0 fix(types): narrow CookieCloud request URL 2026-10-17 07:15:40 +08:00
jxxghp
ffbb3a73fe fix(wechat): preserve encryption errors and type crypto contracts 2026-10-17 01:58:42 +08:00
jxxghp
ba997610ad refactor(types): preserve JSON location response contract 2026-10-16 19:09:12 +08:00
InfinityPacer
615884dd95 fix(community): type server feature lookups
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 22:28:58 +08:00
InfinityPacer
9181ad2b65 feat(community): serve community medals from the Wiki registry behind remote switches
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 22:28:58 +08:00
jxxghp
ea60ed0fd6 feat(community): recognize GitHub contributions and honor levels 2026-10-15 12:11:36 +08:00
freeman
f3ad81b39e style: apply safe ruff auto-fixes and exempt startup late imports
Run `ruff check app tests scripts --fix` with the configured rule set
(E4/E7/E9/F/I): import sorting (I001), f-strings without placeholders
(F541), lambda/variable/unused-import cleanups that ruff marks safe.
Nine files whose only ruff debt sits next to pre-existing pylint
import-resolution errors (lazy exports, sys.path script imports) or
whose "unused" imports are reached through attribute access by tests are
left untouched so the changed-file pylint gate and the benchmark tests
stay green; their diagnostics remain in the baseline.

app/startup/lifecycle/__init__.py and app/main.py import business
modules after cache composition, import-path and stdio setup on purpose
(the source comments document the contract), so declare E402
per-file-ignores for them instead of adding per-line noqa.

Ruff ratchet watermark drops from 498 to 100; sync the baseline fixture
and the optimization checklist figure.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 13:29:09 +08:00
jxxghp
967431091e feat: share GitHub token with Agent skills 2026-09-23 12:41:18 +08:00
InfinityPacer
0238351071 fix(plugin): v3t 下不再隐藏不兼容插件,改为提示不支持 (#6760)
* feat(plugin): surface v3t incompatibility instead of hiding plugins

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* chore(architecture): refresh dependency baseline after plugin gate split

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* fix(plugin): keep runtime-incompatible plugins out of startup sync

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* fix(plugin): annotate runtime compatibility ports without bare dict

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-09-23 00:35:20 +08:00
moviepilot-codex[bot]
d96f00113c feat: add GitHub Token device authorization 2026-09-21 18:30:15 +08:00
jxxghp
fa1df511e1 fix(plugin): satisfy index task typing 2026-09-19 23:19:00 +08:00
jxxghp
026f460155 fix(plugin): support BOM and wrapped market indexes 2026-09-19 23:08:34 +08:00
jxxghp
8072b7d78f Refactor application architecture and compatibility boundaries 2026-09-13 12:53:00 +08:00
InfinityPacer
747f9f921f fix(plugin): prioritize local plugin sources 2026-09-12 19:11:08 +08:00
jxxghp
06ed22c584 feat(agent): improve browser-assisted site cookie login 2026-09-11 14:31:01 +08:00
jxxghp
ca01cceed1 fix(server): use HTTP/1.1 for central service requests 2026-09-09 14:40:56 +08:00
ranzhigg
5f12ffa0c2 fix(plugin-market): satisfy index request type gate 2026-09-09 10:27:40 +08:00
ranzhigg
6e991171f3 fix(architecture): restore ratchet baselines without weakening gates 2026-09-09 10:05:06 +08:00
ranzhigg
f10af54404 fix(plugin-market): share index request limits 2026-09-09 07:48:40 +08:00
ga626
5edeef5a4d fix(plugin-market): bound proxy failure handling 2026-09-06 10:53:49 +08:00
jxxghp
a350bae0d0 refactor(plugin): share runtime dependency owners 2026-08-30 12:12:01 +08:00
jxxghp
7f5b8b469a refactor(plugin): centralize market composition owners 2026-08-30 11:48:41 +08:00
jxxghp
0c05956814 refactor(architecture): enforce module naming policy 2026-08-29 22:17:17 +08:00
jxxghp
ac772646f7 refactor(server): unify sync async decisions 2026-08-29 22:07:53 +08:00
jxxghp
93a8dca5e9 refactor(plugin): unify adapter decisions 2026-08-29 21:32:37 +08:00
jxxghp
808f2439ef refactor(startup): add provider reset contracts 2026-08-29 17:57:01 +08:00
InfinityPacer
dba4ddc168 fix(plugin): 增加插件市场元数据边界 (#6495)
* fix(plugin): bound market metadata inputs

* test(architecture): sync plugin metadata baseline

* fix(plugin): narrow validated metadata identifiers

* test(architecture): sync coverage baseline
2026-08-29 15:23:33 +08:00
jxxghp
fa40f29dfd refactor(plugin): converge runtime ownership and compatibility 2026-08-29 12:55:52 +08:00
jxxghp
13fba96fd8 refactor(runtime): govern dependency module naming 2026-08-29 08:14:21 +08:00
InfinityPacer
92066dfad4 feat: 完成插件原生依赖重启激活闭环 (#6491)
* feat(plugins): track native dependency activation

* fix(plugins): finalize native restart state lifecycle
2026-08-29 02:10:50 +08:00
jxxghp
92e745fc97 refactor(architecture): split chain owners and close runtime boundaries 2026-08-28 22:26:19 +08:00
InfinityPacer
3b7f8c357d fix: 增加插件 V3t 运行时兼容门禁 (#6475)
* fix(plugin): enforce declared runtime compatibility

* chore(ci): record plugin runtime compatibility edges

---------

Co-authored-by: jxxghp <jxxghp@gmail.com>
2026-08-27 07:06:16 +08:00
InfinityPacer
7c81fb357f fix(plugin): 收敛市场安装与运行态错误处理 (#6470) 2026-08-26 18:00:49 +08:00
jxxghp
9dbe424c3d refactor(config): retire RuntimeSettingsCompat host usage 2026-08-26 15:55:21 +08:00
InfinityPacer
71db425c07 feat(plugin): 建立可信来源准入与安装恢复 (#6462) 2026-08-26 07:52:00 +08:00
InfinityPacer
d58c8d2b17 feat: 完善数据库备份管理与版本读取 (#6450) 2026-08-25 16:05:45 +08:00
InfinityPacer
34f59bc9f4 fix(plugin): filter declared uv dependency exclusions (#6437) 2026-08-24 20:06:57 +08:00
InfinityPacer
326b5cf3ad feat: 新增 Python 3.14t 自由线程镜像 (#6434)
* fix(resource): select free-threaded extension ABI

* chore(deps): require moviepilot-rust 0.2.9

* perf: add free-threaded runtime comparison

* feat: add free-threaded runtime profile

* chore(deps): require moviepilot-rust 0.3.0

* test: isolate system endpoint import graph

* fix(docker): preserve runtime profile during recovery

* feat(runtime): expose active GIL state

* feat(plugin): log GIL fallback attribution

* test: refresh runtime observability dependency baseline

* fix(plugin): validate the active uv runtime profile

* test(runtime): expand free-threaded benchmark evidence

* docs(runtime): define v3t governance gates

* test(runtime): separate rust benchmark modes

* docs: sync free-threaded architecture baseline

* perf: add PostgreSQL driver comparison

* docs(runtime): record final free-threaded evidence

* fix(runtime): converge dual-profile dependency verification

* fix(runtime): scope Python 3.14 warning filter

* fix(runtime): match actual oss2 syntax warning

* docs(runtime): refresh free-threaded benchmark evidence

* test(architecture): refresh runtime dependency baseline

* ci: skip unused Trivy Java database

* build: exclude local verification artifacts

* docs(runtime): refresh PostgreSQL driver benchmarks

* docs(runtime): record plugin restore acceptance

* docs(runtime): record amd64 candidate acceptance

* ci: pin beta image publisher action

* test(architecture): merge runtime dependency baseline

* feat(runtime): expose Python GIL status

* docs(runtime): document Python runtime status fields
2026-08-24 17:48:14 +08:00
jxxghp
d95a6a96fe fix: clean successful plugin rollback backups 2026-08-24 11:49:56 +08:00
jxxghp
df9b733d1e refactor: unify plugin install mode policy 2026-08-24 11:41:42 +08:00