34 Commits

Author SHA1 Message Date
Cat
252b702875 fix(site): keep redirect failures from aborting site requests (#7227) 2026-10-28 18:43:19 +08:00
JontyLee
8c156d4f47 fix(rss): 遮盖失败日志与诊断报告中的 URL 凭据 (#7157)
站点 RSS 地址把 passkey、sign 等凭据放在查询串里,请求失败时这些原文会随
错误日志落盘,并被 Doctor 摘录进可外发的诊断报告;连接串形式的 userinfo 口令
同样存在。新增 app.foundation.url.mask_url_credentials 纯函数与两条共享正则,
RSS 失败日志改用遮盖后的地址,Doctor 的日志遮盖规则复用同一模式,避免两处实现分叉。
2026-10-23 17:43:30 +08:00
Aqr-K
598d1663b1 fix(download): preserve protocol failures and isolate site updates (#7143)
* fix(download): preserve protocol failures and isolate site updates

* test: cover tracker token lifecycle and record dependency facts

---------

Co-authored-by: jxxghp <jxxghp@gmail.com>
2026-10-23 07:22:22 +08:00
DDSRem
e0642eafa7 chore(types): reduce v3 host mypy debt (#7057)
* chore(types): clear AniList endpoint mypy debt

* chore(types): clear Douban endpoint mypy debt

* chore(types): clear recommendation endpoint mypy debt

* chore(types): clear subscription notification mypy debt

* chore(types): clear SDK string compatibility mypy debt

* chore(types): ratchet v3 host mypy across remaining files

* chore(types): reduce v3 host mypy debt and retire ledger

* chore(types): reconcile host snapshot with upstream HTTP pool

* test(types): cover host paths exposed by mypy cleanup
2026-10-18 09:37:49 +08:00
DDSRem
2de976f6b3 Merge pull request #7050 from DDSRem-Dev/codex-comment-migration
docs: 统一全项目中文注释和结构化契约说明
2026-10-17 19:26:29 +08:00
jxxghp
3ecf94787d style(types): align DOM import spacing and source metrics 2026-10-17 00:49:57 +08:00
jxxghp
9a94017a0a refactor(types): define DOM node and default value contracts 2026-10-17 00:41:12 +08:00
jxxghp
12f64bab7d refactor(types): specify text utility input and return contracts 2026-10-16 16:14:40 +08:00
jxxghp
8a39ece678 refactor(types): narrow RSA key verification and key derivation 2026-10-16 12:46:24 +08:00
jxxghp
55f4290c79 refactor(types): type singleton construction and cached instances 2026-10-16 11:34:11 +08:00
jxxghp
37a5787bf3 refactor(types): govern interpreter environment detection 2026-10-16 10:55:16 +08:00
jxxghp
95e936f1b3 refactor(types): govern reflection helpers without changing runtime signatures 2026-10-16 10:51:22 +08:00
jxxghp
e59f1de518 refactor(types): govern URL query composition with strict mypy 2026-10-16 09:35:28 +08:00
jxxghp
90754e06ba fix(telegram): preserve notification hierarchy and render detail links 2026-10-16 07:06:17 +08:00
jxxghp
13a58be2a6 feat(notifications): render structured results by channel capabilities 2026-10-14 08:05:41 +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
InfinityPacer
a7626a2f0f perf(temporal): bound dateparser languages for free-text dates
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 23:34:50 +08:00
InfinityPacer
c924a455b2 perf(memory): stop retaining module sources and cap nginx workers
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 02:53:00 +08:00
jxxghp
bbaec9d6b3 fix: preserve v3 architecture complexity budget 2026-09-23 18:49:00 +08:00
moviepilot-codex[bot]
1d043bb64e fix(agent): isolate memory by user 2026-09-21 08:59:33 +08:00
developer-wlj
11a2a09bf6 feat(update): 添加exe部署环境下的更新支持 (#6668) 2026-09-13 21:06:59 +08:00
jxxghp
8072b7d78f Refactor application architecture and compatibility boundaries 2026-09-13 12:53:00 +08:00
InfinityPacer
b6fe6998eb refactor(url): centralize HTTP URL validation in UrlUtils 2026-09-09 17:30:03 +08:00
jxxghp
92e745fc97 refactor(architecture): split chain owners and close runtime boundaries 2026-08-28 22:26:19 +08:00
jxxghp
9bff18739d refactor(runtime): own lifecycle and adapter boundaries 2026-08-28 18:18:07 +08:00
InfinityPacer
2b1f590c4d refactor(text): unify Chinese conversion on Rust (#6481) 2026-08-27 17:17:06 +08:00
InfinityPacer
d58c8d2b17 feat: 完善数据库备份管理与版本读取 (#6450) 2026-08-25 16:05:45 +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
7f09927c47 refactor: own shutdown lifecycle boundaries 2026-08-23 20:20:26 +08:00
jxxghp
8472bcff43 refactor: 收口 V3 分层架构与插件兼容边界 2026-08-18 13:22:02 +08:00
InfinityPacer
24671f8f18 refactor(runtime): lazily activate host modules (#6331) 2026-08-16 16:07:38 +08:00
jxxghp
96118e73e7 refactor(string): split utilities by responsibility 2026-08-15 08:03:55 +08:00
jxxghp
369d7d6448 refactor: reorganize backend module boundaries 2026-08-14 19:53:33 +08:00
jxxghp
7b3444c366 refactor backend module architecture 2026-08-14 15:45:38 +08:00