jxxghp
6d4ce83837
fix(types): clear host mypy debt and prevent typing regressions
...
严格检查全部宿主源码,清零类型错误预算并移除按模块类型豁免。
按原因、所属方法、错误码及语法指纹锁定必要兼容例外和站点类型桩,
CI 阻断新增忽略、检查范围退化、本地桩替代真实接口及新的类型错误。
修复空值、异步和供应方类型边界,保持插件与 API 兼容合同,
并补充存储、订阅、通知、Agent 和工作流边界的回归覆盖。
2026-10-21 22:03:18 +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
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
4bd7e3dc04
perf(webpush): send Web Push with http-ece and py-vapid instead of pywebpush
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:20:00 +08:00
jxxghp
92e745fc97
refactor(architecture): split chain owners and close runtime boundaries
2026-08-28 22:26:19 +08:00
jxxghp
9dbe424c3d
refactor(config): retire RuntimeSettingsCompat host usage
2026-08-26 15:55:21 +08:00
jxxghp
baf4e883b2
refactor: route storage adapter settings through runtime
2026-08-23 03:25:08 +08:00
jxxghp
5128ae9e1e
refactor: 推进后端分层架构治理
2026-08-18 00:29:14 +08:00
jxxghp
54f093a099
Merge remote-tracking branch 'origin/v3' into v3
...
# Conflicts:
# app/api/endpoints/agent.py
# app/api/endpoints/anthropic.py
# app/api/endpoints/openai.py
# app/chain/__init__.py
# app/chain/message.py
# app/chain/site.py
# app/chain/subscribe.py
# app/chain/transfer.py
# app/modules/discord/__init__.py
# app/modules/qqbot/__init__.py
# app/modules/slack/__init__.py
# app/modules/telegram/__init__.py
# app/modules/wechat/__init__.py
# app/runtime/extensions/module_manager.py
# app/runtime/extensions/service_registry.py
# tests/test_agent_interaction.py
# tests/test_slash_command_interactions.py
# tests/test_web_agent_stream.py
2026-08-16 19:44:43 +08:00
jxxghp
240a4dffe6
refactor(schemas): 统一 message/notification 命名边界,旧名收敛至兼容映射表
...
- notification 域:渠道能力(MessageChannel→NotificationChannel、ChannelCapability* 迁入 notification.py)
- message 域:消息收发(Notification→Message、NotificationType→MessageType、CommingMessage→IncomingMessage、NotificationHistoryItem→MessageHistoryItem、NotificationClear*→MessageClear*)
- Agent 工具契约:send_notification_message→send_message、notification_callback→message_callback
- 源码不保留旧名物理别名,旧导入经 app/runtime/compat/manifest.py SYMBOL_ALIASES 惰性解析
- API 路径与持久化键冻结不变,前端零改动
- 新增兼容守护测试与 docs/rules/07 命名边界规范
2026-08-16 19:32:20 +08:00
InfinityPacer
24671f8f18
refactor(runtime): lazily activate host modules ( #6331 )
2026-08-16 16:07:38 +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
G0m3e
c57985d553
fix(webpush): add WNS cache policy for Windows Edge push ( #6034 )
...
WNS rejects pywebpush default ttl=0 with 400 Bad Request unless X-WNS-Cache-Policy matches TTL; iOS/APNs endpoints are unaffected.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-01 10:45:24 +08:00
jxxghp
79539760da
fix: bound long-lived cache state
2026-05-24 18:03:42 +08:00
Attente
ca5ec8af0f
feat(config): 优化配置变更事件处理机制
2025-11-27 23:17:34 +08:00
jxxghp
6a492198a8
fix post_message
2025-11-17 13:33:01 +08:00
jxxghp
1f44e13ff0
add reload logging
2025-06-23 10:14:22 +08:00
jxxghp
bbfd8ca3f5
fix Config reload
2025-06-03 23:08:58 +08:00
jxxghp
b4ed2880f7
refactor:重构配置热加载
2025-06-03 20:56:21 +08:00
jxxghp
5c1e972feb
更新 __init__.py
2025-01-20 16:02:53 +08:00
Aqr-K
825fc35134
feat(modules): 增加子级 type 分类。
...
- 在 `types` 里,针对各个模块的类型进行子级分类。
- 为每个模块统一添加 `get_subtype` 方法,这样一来,能更精准快速地区分与调用子类的每个模块,又能获取 ModuleType 所规定的分类以及对应存在的子模块类型支持列表,从而有效解决当下调用时需繁琐遍历每个 module 以获取 get_name 或 _channel 的问题。
- 解决因消息渠道前端返回所保存的 type 与后端规定值不一致,而需要频繁调用 _channel 私有方法才能获取分类所可能产生的问题。
2024-12-03 14:57:19 +08:00
jxxghp
363f12ed5a
refactor:Module加入执行优先顺序
2024-10-19 19:31:25 +08:00
jxxghp
2b982ce7a8
fix 消息交互 again
2024-10-18 18:30:34 +08:00
jxxghp
603ab97665
add ModuleType Schema
2024-10-12 11:50:00 +08:00
InfinityPacer
0afdd9056a
fix(module): use getters for _instances and _configs in subclasses
2024-10-06 14:38:17 +08:00
InfinityPacer
2ce3ddb75a
refactor(module): simplify service instantiation with generics
2024-09-27 04:04:56 +08:00
InfinityPacer
5efcd6e6be
refactor (module): improve the implementation of base classes
2024-09-26 19:44:35 +08:00
jxxghp
7444b3e84b
fix storage api
2024-09-21 20:18:40 +08:00
jxxghp
fada22e892
fix webpush
2024-09-21 17:59:39 +08:00
jxxghp
1a0c4acf1c
fix bug
2024-07-06 08:30:09 +08:00
jxxghp
28d420af51
fix bug
2024-07-04 22:04:10 +08:00
jxxghp
b5eaba26da
更新 __init__.py
2024-06-08 21:05:53 +08:00
jxxghp
748de0ff00
fix webpush link
2024-06-08 07:45:13 +08:00
jxxghp
f8fbf9b5eb
fix webpush
2024-06-07 21:53:48 +08:00
jxxghp
bc689074e0
fix webpush
2024-06-07 21:47:43 +08:00
jxxghp
0a9a391eb3
add webpush log
2024-06-07 21:31:03 +08:00
jxxghp
2d4fb5d52e
fix webpush switch
2024-06-07 08:15:30 +08:00
jxxghp
6aa5a836b9
fix webpush api
2024-06-05 18:40:00 +08:00