Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
266 commits
Select commit Hold shift + click to select a range
5bd54a5
docs: 新增 runtime_launcher 架构文档(照搬 ZZZ + SR 现状适配)
DoctorReid Jul 5, 2026
26a57c1
feat(skills): 新增 sr-od-dev-* 3 个开发 skill,采纳 superpowers 流程方法论
DoctorReid Jul 5, 2026
a49142e
docs(harness): 勘误 MCP 状态(已落地)+ skills 入口登记
DoctorReid Jul 5, 2026
c63446c
feat(common): 带进 screen_match.py(画面匹配,MCP analyze 增强依赖)
DoctorReid Jul 5, 2026
631a236
feat(backend): 同步运行态管理(RunSlot + 可查可停 + close_game + analyze 画面匹配)
DoctorReid Jul 5, 2026
3b9635c
docs(backend): 同步运行态文档(7 tool/7 端点/RunSlot)+ design-principles
DoctorReid Jul 5, 2026
bd94140
fix(backend): RunSlot docstring spec 引用改指 SR 版(2026-07-05-mcp-run-sta…
DoctorReid Jul 5, 2026
8f0cc23
merge: MCP backend 运行态完善(RunSlot 单跑道 + 可查可停 + close_game + analyze 画面…
DoctorReid Jul 5, 2026
7bb747e
docs(common-sync): §5 token 清单补 5 类照搬缺口(MCP backend 同步实战)
DoctorReid Jul 5, 2026
c4743d8
fix: address CodeRabbit PR #604 review(4 个 SR-specific 发现)
DoctorReid Jul 5, 2026
93de91f
feat(backend): 同步 ZZZ backend 演进(open_game/click_game/input_text/scre…
DoctorReid Jul 6, 2026
39996c5
docs(backend): 同步 mcp/http/architecture 等到 11 tool(open_game + click/…
DoctorReid Jul 6, 2026
2d422b9
ci: 照搬 test-check.yml(PR 跑 sr-od-test 测试,同分支机制)
DoctorReid Jul 6, 2026
a60fcff
ci(test-check): 去掉通知类测试配置(SR 无 requires_secrets 测试 / 无 PUSH_ secret)
DoctorReid Jul 6, 2026
607995a
fix(pyproject): 加 [tool.pytest.ini_options] pythonpath=["src"],修 CI t…
DoctorReid Jul 7, 2026
a860aa2
ci/build: CodeRabbit #605 review — test-check 安全加固 + build_full copy /Y
DoctorReid Jul 7, 2026
db851d6
docs: CodeRabbit #605 — architecture tool 数 7→11 + runtime_launcher C…
DoctorReid Jul 7, 2026
df5ace5
ci(test-check): 预下载 YOLO 模型(CI 直连 github,绕过 ghfast.top 代理)
DoctorReid Jul 7, 2026
dc38a98
feat(backend): 同步 analyze 落盘返 screenshot_path + _save_screenshot 提到 b…
DoctorReid Jul 7, 2026
6b4a8e6
feat(common): 同步 one_dragon/qt/onnxocr 内容更新(ZZZ #2460)
DoctorReid Jul 11, 2026
9862055
feat(backend): 同步 MCP 应用运行能力 + 封装服务(ZZZ #2460,roadmap B-2)
DoctorReid Jul 11, 2026
e492782
docs+manifest: 同步 backend 文档到 #2460 + regenerate module_manifest
DoctorReid Jul 11, 2026
1b370c0
sync: common 文案/账号确认 + Deep Wiki 配置(ZZZ 582d9984/a3365dc4/3c6309c9)
DoctorReid Jul 19, 2026
191e76f
feat(backend): 同步 MCP tool 规范化 + 游戏画面建档(ZZZ 7277d040)
DoctorReid Jul 19, 2026
89524a4
revert: 移除 .devin/wiki.json(ZZZ 结构/玩法专属,naive 迁移不足)
DoctorReid Jul 19, 2026
f4ba2cd
feat(common): 同步 one_dragon/qt app 运行/分组/Discord/拖动等(ZZZ 近期)
DoctorReid Jul 27, 2026
c811abd
feat(backend): MCP 配置修改工具 + run_operation dataclass + analyze vision_…
DoctorReid Jul 27, 2026
a2cd936
feat(skills): 新增 sr-od-dev-pr-review + screen-onboarding + skill-guid…
DoctorReid Jul 27, 2026
5617028
feat(sr_od): 保留 app/sr_application_launcher 向后兼容入口
DoctorReid Jul 28, 2026
34f97a3
chore: .gitignore 忽略 *.exe.bak
DoctorReid Jul 28, 2026
e31f2ce
feat: 同步 ZZZ dev 方法论到 SR (skills + AGENTS + 同步文档)
DoctorReid Jul 28, 2026
8c0703a
fix(daemon): .env 条件追加 + 端口文档订正
DoctorReid Jul 28, 2026
ef4c565
fix(one_dragon): match_template 防 source<template 崩溃
DoctorReid Jul 29, 2026
0db280b
docs(sr_od/backend): check_game_window win_title 语义说明
DoctorReid Jul 29, 2026
ec16cbc
feat(skills): screen-onboarding 加玩法画面建档前先搜攻略
DoctorReid Jul 29, 2026
4cca997
docs(game): 画面玩法机制建档(对标 ZZZ 三层结构)
DoctorReid Jul 29, 2026
72c7c79
feat(sr_od/backend/mcp): instructions 补「配置生效」约束
DoctorReid Jul 29, 2026
6d89707
docs: enter_game 补登录子态快照 + testing fixture-driven op 测试框架说明
DoctorReid Jul 29, 2026
c25d72b
docs(game): email/assignments 玩法补 fixture + 验证 + 测试
DoctorReid Jul 29, 2026
e4f5e6a
chore: .claude 整个不入库 + harness 入口文件降 2 层
DoctorReid Jul 29, 2026
c778bbd
docs(sr_od/backend): ApplicationListResult 说明 idx→目录映射防误判
DoctorReid Jul 29, 2026
9a1b75b
docs(sr_od/backend/mcp): list_applications tool 描述补 idx→目录映射
DoctorReid Jul 29, 2026
bbf38b7
docs(sr_od/backend/mcp): config 工具 instance_idx 参数描述补 idx→目录
DoctorReid Jul 29, 2026
f6b3a9c
fix(sr_od/nameless_honor): 重做 tab 模板适配当前版本(3tab)
DoctorReid Jul 29, 2026
ca83603
feat(sr_od/echo_of_war): 历战余响建档 doc + 体力计划空 list 死循环修复
DoctorReid Jul 29, 2026
54f28b7
fix(sr_od/screen_state): is_battle_fail 改查「大世界-战斗失败」screen
DoctorReid Jul 30, 2026
978ba30
docs(sr_od/game): 画面/玩法建档内容更新 + 角色画面(character)建档
DoctorReid Jul 30, 2026
4b15fcc
fix(sr_od): 修 trick_snack 卡死 — TalkInteract/BuyStoreItem 点击稳健性+售罄处理
DoctorReid Jul 30, 2026
eb83302
docs(sr_od/game): 对话画面 + 商店购买弹窗(售罄)建档
DoctorReid Jul 30, 2026
691b6c1
fix(sr_od): GuideChooseMission 传送 click 防截图移鼠标 — 修 trailblaze_power/e…
DoctorReid Jul 30, 2026
1e1b60e
fix(sr_od): BackToNormalWorldPlus 传 sim_uni_exit(is_in_x=False) 修 ope…
DoctorReid Aug 1, 2026
cae7b0a
docs(sr_od/game): 模拟宇宙 + 差分宇宙 画面/玩法/编排建档
DoctorReid Aug 1, 2026
8a9dc76
fix(sr_od/mcp): start_sr_od_mcp_server 加锁防 TOCTOU 竞态(PR #605 CR review)
DoctorReid Aug 1, 2026
e82b08e
feat(sr_od/mcp): record_screen 录屏 tool + daemon 自重启
DoctorReid Aug 3, 2026
9399d1b
feat(sr_od/currency_war): 策略决策核心(eval+贪心+硬门,纯逻辑可测)
DoctorReid Aug 3, 2026
f4fcae5
fix(sr_od/currency_war): 阵营 tiers/角色费用 用米游社百科 V4.4 权威数据修正
DoctorReid Aug 3, 2026
cd88ce7
fix(sr_od/currency_war): 应用策略 review r1 修复(44 条确认问题)
DoctorReid Aug 3, 2026
d6b68dc
feat(sr_od/currency_war): A1 蒙特卡洛 D 牌 + A3 阶段键控目标(review r2 架构)
DoctorReid Aug 3, 2026
61f13b7
feat(sr_od/currency_war): review r5/r6 战术层修正 + 经济学校准
DoctorReid Aug 3, 2026
44a821d
feat(sr_od/currency_war): 阶段2 战略层+观测反馈+决策迹采集(纯逻辑)
DoctorReid Aug 3, 2026
7b14c21
fix(sr_od/currency_war): V4.4 数据校准(米游社实据)+ 机制表/COMP_LIBRARY 精修
DoctorReid Aug 3, 2026
fd40685
feat(sr_od/currency_war): A4 牌池概率模型 cw_shop_odds(米游社实据,纯逻辑)
DoctorReid Aug 3, 2026
7b37ca9
feat(sr_od/currency_war): 战略↔战术接法第一步 evaluate 支持 target_comp
DoctorReid Aug 3, 2026
9e6d419
feat(sr_od/currency_war): 角色领域模型 + V4.4 meta 重排(工程化 + 数据完善)
DoctorReid Aug 3, 2026
bec1291
feat(sr_od/currency_war): 装备/投资领域模型 + ENV_FACTION_MAP 派生(工程化)
DoctorReid Aug 3, 2026
ed6f573
docs(currency_war): 设计/数据文档迁入 docs/(版本化 + 代码注释引用稳定路径)
DoctorReid Aug 3, 2026
bf2d8b9
docs(currency_war): 决策日志规范(正文 what + decisions.md why 分开,试点)
DoctorReid Aug 3, 2026
02d76e3
feat(currency_war): A2 战略↔战术接线 plan 调 select_comp 传 target 给 evaluate
DoctorReid Aug 3, 2026
f5d3fc5
fix(currency_war): BuyShopCards 非备战屏守卫,避免事件叠层 retry 浪费/卡顿
DoctorReid Aug 3, 2026
4323a31
feat(currency_war): 阶段6 端到端验证通过 — app/ops/observation 运行代码入库
DoctorReid Aug 3, 2026
a79652e
fix(currency_war): bump 对局循环 MAX_ITER 500→2000(迭代预算耗尽非逻辑bug)
DoctorReid Aug 3, 2026
e9cc99f
feat(currency_war): shop op 透出 A2 target 到 telemetry/日志可观测
DoctorReid Aug 3, 2026
0cacbbf
fix(currency_war): 修正结算前进按钮坐标 900,882→960,898(点空卡死)
DoctorReid Aug 3, 2026
3b47063
feat(currency_war): A2 target 稳定性(task#16)— 防振荡 churn,跨回合持久化 target
DoctorReid Aug 3, 2026
40d3afa
fix(currency_war): read_board 优先 'X/Y' 格式取 count,拒 tier 链裸数字(task#17)
DoctorReid Aug 3, 2026
eb86998
fix(currency_war): comp_score 提 W_PROG 降 W_STR —— select_comp 偏好可成型 c…
DoctorReid Aug 3, 2026
d809f9e
feat(currency_war): synergy 超线性奖励深堆(收敛,task#16 第一步)
DoctorReid Aug 3, 2026
5d76d30
feat(currency_war): synergy off-target 打折(commitment,聚焦深化 target comp)
DoctorReid Aug 3, 2026
d87b2a6
revert(currency_war): OFF_TARGET_DISCOUNT 0.3→1.0(commitment regression)
DoctorReid Aug 3, 2026
46f6ddb
fix(currency_war): 提 LEVEL_WEIGHT 3→6(鼓励升级,comp-strength 第一步)
DoctorReid Aug 3, 2026
83c2175
fix(currency_war): 提 INTEREST_WEIGHT 2→4(economy fix,攒金升级)
DoctorReid Aug 3, 2026
4bd9245
fix(currency_war): 遭遇 keyword 遭遇节点→遭遇(屏显不匹配 stall)
DoctorReid Aug 3, 2026
bf9fe52
fix(currency_war): 遭遇 handler 移到备战 check 前(event overlay 根因)
DoctorReid Aug 3, 2026
df9f681
fix(currency_war): 移除遭遇 handler(V4.4 遭遇=普通战斗非选择,handler 干扰 prep stall)
DoctorReid Aug 3, 2026
52259f2
fix(currency_war): 出战双击(bug#1 吞第一次时第二次必落,解 prep-loop stall)
DoctorReid Aug 3, 2026
f86823d
fix(currency_war): 出战验证 transition(仍在备战→retry,防假成功 prep-loop)
DoctorReid Aug 3, 2026
f84455b
fix(currency_war): 出战 mouse_move+click(bug#1 根因修复 —— 先移后点,零移动不被判 drag)
DoctorReid Aug 3, 2026
adc8a2b
feat(currency_war): 选择伙伴 handler(stage 立绘选中+确认选择,解 recurring overlay …
DoctorReid Aug 4, 2026
3a9df3d
fix(currency_war): shop plan 循环 read board 前 sleep 0.3s(task#17 timing)
DoctorReid Aug 4, 2026
0dc5688
feat(currency_war): 列车同行 level_plan 曲线(task#18 第一步 —— economy 数据地基)
DoctorReid Aug 4, 2026
74e7cea
feat(currency_war): plan 接 level_plan —— LevelUp bonus when level_pla…
DoctorReid Aug 4, 2026
87cf269
feat(currency_war): level_plan spending gate(task#18 economy 核心修复)
DoctorReid Aug 4, 2026
d68ac45
fix(currency_war): 恢复遭遇选择 handler(遭遇其一+选择,df9f6810 误移除修正)
DoctorReid Aug 4, 2026
839374b
fix(currency_war): 遭遇 handler 修正 —— 直接 click 选择(不点 tab)
DoctorReid Aug 4, 2026
2f5a7b5
fix(currency_war): 遭遇 handler 双屏处理(选择屏 click 选择 / 详情屏 ESC 回选择)
DoctorReid Aug 4, 2026
ca67e86
fix(currency_war): 遭遇详情屏 blank click 关详情(ESC 无效,实测)
DoctorReid Aug 4, 2026
ee969bf
fix(currency_war): spending gate 通用曲线(lv6-7 level_up,覆盖无 level_plan 的…
DoctorReid Aug 4, 2026
cc02117
fix: import LevelGoal(spending gate 通用曲线用,runtime import)
DoctorReid Aug 4, 2026
33eff28
style: ruff import order fix(LevelGoal)
DoctorReid Aug 4, 2026
d8db56f
fix(currency_war): 列车同行 lv6 roll→level_up(攒金升7,解 bot 花光金不升级)
DoctorReid Aug 4, 2026
ee7e57b
fix(currency_war): spending gate refresh too(防 D 牌泄金,task#18 续)
DoctorReid Aug 4, 2026
19adb22
fix(currency_war): 遭遇选择 mouse_move+click(bug#1 mitigation,同出战 fix)
DoctorReid Aug 4, 2026
0f5bf94
fix(currency_war): 遭遇选择 3-step handler(遭遇其一→blank→选择,实测确认)
DoctorReid Aug 4, 2026
dc511da
fix(currency_war): 结算 mouse_move+click(bug#1 fix,同出战/遭遇/选择伙伴 模式)
DoctorReid Aug 4, 2026
f375fe2
fix(currency_war): 未达上限 handler mouse_move+click(bug#1 fix —— round3 …
DoctorReid Aug 4, 2026
f74e9be
feat(currency_war): 选人事件策略接线(投资环境 decide_event)+ debug snap + 方法论沉淀
DoctorReid Aug 4, 2026
7ecbec5
fix(currency_war): 选择伙伴/确认选择 收紧 LCS 0.7 防误派发到投资策略屏
DoctorReid Aug 4, 2026
f126e0b
feat(currency_war): 投资策略 3选1 接 decide_event(同投资环境模式)
DoctorReid Aug 4, 2026
f33c749
fix(currency_war): plane/round 读取过渡帧用 last-known-good 而非静默 fallback (…
DoctorReid Aug 4, 2026
232b8d0
feat(currency_war): select_comp shop-aware 降权不可成型 comp(通关核心,task#25)
DoctorReid Aug 4, 2026
1dcaf16
fix(currency_war): 修 round_by_ocr 中文关键词 LCS 误匹配(branch0 返回投资策略选择 + se…
DoctorReid Aug 4, 2026
0c33fb3
docs(skill): 沉淀中文关键词 LCS 误匹配坑(gameplay-automation 阶段3)
DoctorReid Aug 4, 2026
f99742e
fix(currency_war): 3b 返回货币战争 LCS 误匹配(解锁事件派发)+ invest_strategy 点卡名选中
DoctorReid Aug 4, 2026
2e92dc5
feat(currency_war): commitment prefilter — target 设定时跳过 off-target 散牌…
DoctorReid Aug 4, 2026
36cd455
fix(currency_war): 1b 详情弹窗 ESC 也关角色详情(事件长尾)
DoctorReid Aug 4, 2026
3678b68
fix(currency_war): 1b 角色详情 LCS 误匹配「角色」label(invest env 派发解锁)
DoctorReid Aug 4, 2026
4ccefa0
fix(currency_war): invest_env 选中改点描述区 y450(立绘区开详情非选中)
DoctorReid Aug 4, 2026
f86d41c
docs(skill): 沉淀'预料之外画面→调研入口+建档'方法论(gameplay-automation 调试纪律)
DoctorReid Aug 4, 2026
8f1fd0a
docs(skill): LCS 误匹配根因解=fixed-position screen_info area(用户方法论)
DoctorReid Aug 4, 2026
d660c21
feat(skills): skill-dev-guide 方法论重构 + dev skill 全量合规迁移
DoctorReid Aug 4, 2026
76ca89f
feat(sr_od/currency_war): LevelUp 硬 gate(task#18)+ 投资策略描述区点击修
DoctorReid Aug 4, 2026
8fb6042
docs(currency_war): 游戏数据/画面建档/立绘库 补全
DoctorReid Aug 4, 2026
c3fd423
fix(sr_od/backend): MCP server 日志 stdout UTF-8 输出
DoctorReid Aug 4, 2026
a8ffe7b
feat(sr_od/currency_war): 投资环境/投资策略 screen_info 建档 + 代码接 area_center(…
DoctorReid Aug 4, 2026
db61693
feat(sr_od/currency_war): 未达上限警告 screen_info 建档 + 接 area_center(task#20)
DoctorReid Aug 4, 2026
fd6f246
feat(sr_od/currency_war): 难度确认屏 screen_info 建档 + 接 area_center(task#20)
DoctorReid Aug 4, 2026
941304f
docs(currency_war): 设计↔代码对账 —— 补 decisions.md 演进 + 追齐 strategy/ statu…
DoctorReid Aug 4, 2026
a6d34e5
docs(currency_war): 设计文档去具体权重值(单一源=代码,避免两边漂)
DoctorReid Aug 4, 2026
098e4e6
feat(sr_od/currency_war): decide_encounter 纯逻辑骨架 + 4 测试(design 08,D-19)
DoctorReid Aug 4, 2026
4e31988
feat(sr_od/currency_war): decide_supply 纯逻辑骨架 + 4 测试(design 07/08,D-20)
DoctorReid Aug 4, 2026
eb2b016
feat(sr_od/currency_war): optionality_score + alpha_t 纯函数(承诺-期权,D-21)
DoctorReid Aug 4, 2026
2804217
feat(sr_od/currency_war): hp 阈值统一 config.hp_safe_threshold(D-22,D-18 落地)
DoctorReid Aug 4, 2026
31178e2
feat(sr_od/currency_war): config 加 4 轴 steer 字段(forbid/build_around,R…
DoctorReid Aug 4, 2026
957aeff
fix(sr_od/currency_war): EnterCurrencyWar wait_lobby 防御性加固(D-23)
DoctorReid Aug 4, 2026
4ffbfd1
fix(sr_od/currency_war): level gate chicken-egg 修——落后期望等级也升(D-24)
DoctorReid Aug 4, 2026
5ba0b47
fix(sr_od/currency_war): exit op 事件屏 escape(D-25)
DoctorReid Aug 4, 2026
ad6e2dc
feat(skills): 加 sr-od-dev-write-operation skill(写/改/调试单个 Operation)
DoctorReid Aug 4, 2026
8f76cdb
refactor(skills): 迁 sr-od-dev skill-guide + screen-onboarding 到公共仓 On…
DoctorReid Aug 4, 2026
0e94f4a
feat(sr_od/currency_war): app 中间态接手 state-aware resume(D-26)
DoctorReid Aug 4, 2026
1603014
fix(sr_od/currency_war): RunLoop 事件 overlay 前置检测 + BuyShopCards 兜底(D-27)
DoctorReid Aug 4, 2026
27faeaf
fix(sr_od/currency_war): 补给阶段 lcs 0.8(D-27 regression 修)
DoctorReid Aug 4, 2026
97f8d5d
refactor(skills): 迁 sr-od-dev-gameplay-automation 到公共仓 od-dev-gamepla…
DoctorReid Aug 4, 2026
d5e0aea
fix(sr_od/currency_war): _saving_for_level 对齐 D-24 gate(落后期望也攒)(D-28)
DoctorReid Aug 4, 2026
476fdea
refactor(skills): 迁 sr-od-dev-write-operation 到公共仓 od-dev-write-opera…
DoctorReid Aug 4, 2026
5225810
refactor(skills): 迁 sr-od-dev-ui-region-detect 到公共仓 od-dev-ui-region-…
DoctorReid Aug 4, 2026
0e9446b
docs+code: vision→视觉大模型 术语统一
DoctorReid Aug 4, 2026
61c6b48
feat(sr_od/currency_war): difficulty → hp_safe_threshold 派生(D-32,向后兼容)
DoctorReid Aug 5, 2026
6937c0b
fix(sr_od/currency_war): maybe_pivot 信号2 加已成型守卫(D-33)
DoctorReid Aug 5, 2026
1776e79
docs(currency_war): strategy/03 同步 D-33 + 信号3 阈值统一(修 doc-code 漂移)
DoctorReid Aug 5, 2026
928ae3f
feat(sr_od/currency_war): 策略插件机制 P1(CwStrategy ABC+Session+Manager,零行…
DoctorReid Aug 5, 2026
fa0e22f
fix(sr_od/currency_war): loop 0d「未达上限」LCS 误匹配「能量上限」→ 收紧 lcs 0.8(D-37)
DoctorReid Aug 5, 2026
b211e3b
feat(sr_od/currency_war): P1.5 观测回路 OCR 组件 —— 结算屏 hp_after 解析(D-38)
DoctorReid Aug 5, 2026
ab5f07d
fix(sr_od/currency_war): ↺ 修正 D-35 —— 遭遇节点有 3 难度选择 UI,re-activate dis…
DoctorReid Aug 5, 2026
550d808
fix(sr_od/currency_war): maybe_pivot 信号3(保命)优先于 1/2,防低 HP target 振荡 c…
DoctorReid Aug 5, 2026
0cc1874
fix(sr_od/currency_war): shop_supply shop presence 主导,board-only 降弱信号…
DoctorReid Aug 5, 2026
408dc7f
refactor(sr_od/currency_war): 入口 op area 化 + 清理 bug#1 误判(D-42/D-43)
DoctorReid Aug 5, 2026
bf6d83d
feat(sr_od/currency_war): 简报词缀(debuff)识别+保存 → mechanics_fit 接线
DoctorReid Aug 5, 2026
a02809d
fix(sr_od/currency_war): HandleInvestEnv _read_options 漏卡名(NAME_CY 窄 …
DoctorReid Aug 5, 2026
6f035c1
feat(sr_od/currency_war): 备战屏加 id_mark(备战标识-购买经验),让 is_precise
DoctorReid Aug 5, 2026
bd09a49
feat(sr_od/currency_war): 简报独立 op HandleBriefing + boss 识别链路 + 投资策略选中位置
DoctorReid Aug 5, 2026
62358b1
feat(sr_od/currency_war): 采全 19 boss 战斗机制(数据银行图鉴) + D-45 修正 bug#1 认识
DoctorReid Aug 5, 2026
1191e00
sr_od: bug#1 workaround 注释措辞校准(guide_choose_mission / buy_store_item)
DoctorReid Aug 5, 2026
5f552e5
fix(sr_od/currency_war): 投资策略点卡名(y474)选中非卡底820(D-46,推翻I16)
DoctorReid Aug 5, 2026
9d316f2
feat(sr_od/currency_war): 词缀效果采集+注册表py运行时自动写(D-47)
DoctorReid Aug 5, 2026
ce8b63f
feat(sr_od/currency_war): P1.5 观测回路接线 on_round_end(D-48)
DoctorReid Aug 5, 2026
9cc1a5b
feat(sr_od/currency_war): mechanics_fit 数据对齐+补全(D-49,task#73)
DoctorReid Aug 5, 2026
e1279ab
fix(sr_od/currency_war): 0e 投资策略/环境 改 id_mark area(D-50,推翻 LCS)
DoctorReid Aug 5, 2026
316362a
fix(sr_od/currency_war): 失败结算屏 hp=0 conf=1.0(D-51,P1.5 refine)
DoctorReid Aug 5, 2026
e0f0d0a
feat(sr_od/currency_war): P1.5 node_type 推断(首领→boss)(D-52)
DoctorReid Aug 5, 2026
0065a20
docs(sr_od/currency_war): strategy/11 P1.5 落地状态(D-48~52)+ 弱阵 next
DoctorReid Aug 5, 2026
f5ec944
feat(sr_od/currency_war): comp early_power 早期战力先验(D-53,弱阵实验)
DoctorReid Aug 5, 2026
4734bfc
fix(sr_od/currency_war): battle_loop 加 0f 消耗品详情浮层 ESC 关(D-54)
DoctorReid Aug 5, 2026
ae78915
feat(sr_od/currency_war): mechanics_fit 补 忍无可忍/沉重脚步 映射(D-55,task#73)
DoctorReid Aug 5, 2026
224d765
feat(sr_od/currency_war): maybe_pivot 决策迹 log(D-56,弱阵诊断采数据)
DoctorReid Aug 5, 2026
768ca74
fix(sr_od/currency_war): _in_match 大厅误判已在对局→空跑(D-57)
DoctorReid Aug 5, 2026
5b5e713
fix(sr_od/currency_war): write_affix_effects docstring 模板更新(D-55 跟进)
DoctorReid Aug 5, 2026
0bd65db
fix(sr_od/currency_war): 已选投资环境从不存 active_env→env_fit/T0硬绑失效(D-58)
DoctorReid Aug 5, 2026
9c660c0
feat(sr_od/currency_war): maybe_pivot 倾向易成型 comp(D-59 弱阵)
DoctorReid Aug 5, 2026
f2fa5c8
fix(sr_od/currency_war): HandleSelectPartner 硬编码立绘坐标落候选间隙→flat-loop(D…
DoctorReid Aug 6, 2026
6e70ef9
fix(sr_od/currency_war): choose_partner _read_candidates 加 x 过滤(D-60 补)
DoctorReid Aug 6, 2026
325a1c6
docs(cw/strategy): 11 status 同步 弱阵+事件修(D-54~60)
DoctorReid Aug 6, 2026
4374269
fix(sr_od/currency_war): choose_partner 验「已选择」+ 处理已选择态(D-61,ADR-0009)
DoctorReid Aug 6, 2026
67d38c7
fix(sr_od/currency_war): 出战 click 前 mouse_move 缓解 bug#1(D-62)
DoctorReid Aug 6, 2026
bcdaa9b
docs(cw/strategy): 12 comp 成型深化设计(P2 通关 blocker)
DoctorReid Aug 6, 2026
faf21cf
feat(sr_od/currency_war): plan roll 找 target(D-63,P2/F2 comp 成型)
DoctorReid Aug 6, 2026
a40ee29
data(cw/affix): 运行时采 4 词缀效果原文(D-47 持续)
DoctorReid Aug 6, 2026
4b1c0eb
fix(sr_od/currency_war): choose_partner confirm mouse_move+验overlay关(…
DoctorReid Aug 6, 2026
ba0f29d
docs(cw/decisions): D-64 choose_partner confirm mouse_move+验overlay关
DoctorReid Aug 6, 2026
1dbac74
docs(cw/strategy): 12 status 同步 F2 实现验证/F3 wired/F1 待做
DoctorReid Aug 6, 2026
b1facce
fix(sr_od/currency_war): 信号3保命优先 board有progress 的 easy comp(D-65)
DoctorReid Aug 6, 2026
895377a
feat(sr_od/currency_war): maybe_pivot commit 阈值(D-66,F1 comp 成型)
DoctorReid Aug 6, 2026
8e0ff4f
fix(sr_od/currency_war): 经济统一论接线+saving_for_interest+bench空间检查(D-67)
DoctorReid Aug 6, 2026
d8e0502
feat(sr_od/currency_war): INVESTMENT_ENVS 全量+数据银行核对+删冗余 doc(D-68)
DoctorReid Aug 6, 2026
04d3d64
feat(sr_od/currency_war): 备战字段采集 board tier(X/Y→count+next_tier,D-69)
DoctorReid Aug 6, 2026
87dcb57
refactor(sr_od/currency_war): 拆分 cw_observation→core/briefing/settlem…
DoctorReid Aug 6, 2026
7a5df37
feat(sr_od/currency_war): 备战字段采集 xp_progress(购买经验 X/Y,D-72)
DoctorReid Aug 6, 2026
4ad26dd
feat(sr_od/currency_war): 备战字段采集 node_type + vision 修复脚本(D-73)
DoctorReid Aug 6, 2026
69468d0
feat(sr_od/currency_war): 备战字段收尾(difficulty/level_cost/refresh_cost/s…
DoctorReid Aug 6, 2026
8d9d979
docs(cw/prep): 备战 reader 清单全量(D-69~74 新 read)+ board 脆已治 + 前沿(icon/身份库)
DoctorReid Aug 6, 2026
7b1aad3
feat(sr_od/currency_war): 角色立绘库 identity reader(脸库 SIFT 备战半身立绘,D-75)
DoctorReid Aug 6, 2026
90fb488
feat(cw/equip): 装备图标库 CV 采集工具 + 35/125 初始图标(D-76)
DoctorReid Aug 6, 2026
c4f55de
feat(cw/equip): 装备图标库 79 件(简易8+进阶36+特权35)+ 工具 tier 感应(D-76 续)
DoctorReid Aug 6, 2026
7805b64
feat(cw/equip): 装备图鉴全量采集(154件)+ 工具 op + 效果校验(D-76 续)
DoctorReid Aug 6, 2026
bcaee6c
feat(cw/equip): 装备注册表全量化(12→153)+ doc→code 生成器(D-70)
DoctorReid Aug 6, 2026
8b39d51
feat(cw/equip): 装备合成配方提取工具(D-73)
DoctorReid Aug 6, 2026
583f2c1
feat(cw/equip): 装备合成图谱 cw_synthesis(7基础件 K7 两两合成=28进阶,D-77)
DoctorReid Aug 6, 2026
8432941
feat(cw/state): GameState 加法建模块 strategy/13 §13.2 补字段(D-78,零行为变化)
DoctorReid Aug 6, 2026
5a93bce
fix(cw): 弱阵—commitment prefilter 不再豁免 priority 的 off-target(D-79,task…
DoctorReid Aug 6, 2026
3661e29
refactor(cw/state): difficulty→selected_difficulty 职级 rename(strategy…
DoctorReid Aug 6, 2026
37f5920
refactor(cw/state): bosses→plane_bosses rename(strategy/13 迁移块第二步,D-81)
DoctorReid Aug 6, 2026
0c3a603
feat(cw/prep): 备战 3 op 补执行日志 + 部署验落地 + 删 #未验证 (D-82)
DoctorReid Aug 6, 2026
23c9889
docs(cw/prep): 备战观测可靠性实图核实 (T#92)
DoctorReid Aug 6, 2026
103bbd0
feat(cw/entry): 去 entry ops #未验证 + 补进度日志 (T#94, guardrail 解锁 live)
DoctorReid Aug 6, 2026
cef94ca
docs(cw/prep): 备战费用字段 OCR 不可行 ground truth (T#96 重新建档)
DoctorReid Aug 6, 2026
eddb0b0
docs(cw/prep): 备战画面重新建档 — 干净新画面 doc (T#96)
DoctorReid Aug 6, 2026
50ca432
docs(cw): D-83 board_next_tier 不接线 — 静态 tiers=live ground truth(冗余)
DoctorReid Aug 6, 2026
df40e67
docs(cw/prep): live 建档补漏 — 惊喜盒 + 节点行 + node_type 根因
DoctorReid Aug 6, 2026
037c5c3
docs(cw): D-84 char identity — SIFT 屏幕识别不可行(两源都不 match)→ bot tracking
DoctorReid Aug 6, 2026
cb3038d
feat(cw): D-84 char identity tracking — buy OCR 名持久化 seed state.bench
DoctorReid Aug 6, 2026
bde82d1
fix(cw/shop): gold=0 时重读几帧取 >0(paddle det 间歇漏 gold 数字,部分缓解)
DoctorReid Aug 6, 2026
0d68635
fix(cw): read_gold 放大3x+收紧area — 解 gold 读0 blocker,bot 终能买(D-85)
DoctorReid Aug 6, 2026
71f016f
chore(cw): regen _od_merged.yml(文本-金币数 area 收紧)
DoctorReid Aug 6, 2026
06a307c
fix(cw): GameState.BENCH_CAPACITY → BENCH_CAPACITY 模块常量(bench 满时 Attr…
DoctorReid Aug 6, 2026
5ef239b
feat(cw): T#97 round-based comp commitment(累计轮≥4 commit 防 spread-flit)
DoctorReid Aug 6, 2026
df7c957
feat(cw): T#97 step-2 target-faction buy bonus(synergy ×1.5 target,正向…
DoctorReid Aug 6, 2026
bde2837
fix(cw): T#97 step-2 target bonus 1.5→1.0 disabled(counterproductive:…
DoctorReid Aug 6, 2026
ab90e9c
feat(cw): T#97 step-2 tuned — target bonus tier-only(不×close-to-next,…
DoctorReid Aug 6, 2026
e440e49
fix(cw): parse_settlement_hp 容忍 OCR garble「命值」(on_round_end hp=0 根因)
DoctorReid Aug 6, 2026
9db4c81
feat(cw): T#97 step-3 comp_viability 接线(tracker.is_losing_streak → 降 …
DoctorReid Aug 6, 2026
9a7b0b0
fix(cw): T#98 HandleSelectPartner step2 请选择强化角色(两步 overlay flat-loop 根因)
DoctorReid Aug 6, 2026
0fc0fbc
fix(cw): T#98 HandleSelectPartner step2 中心立绘 960,300(click-test 实锤,非 …
DoctorReid Aug 6, 2026
cf0663c
fix(cw): 事件 handler 全加出口验证(bug#1/多步 overlay flat-loop,partner reset 根…
DoctorReid Aug 6, 2026
8781782
fix(cw): D-90 Refresh 门 —— shop 有买得起的 target 卡先买别刷掉
DoctorReid Aug 6, 2026
cbb92e0
feat(cw): D-91 决策接线 audit + 遭遇节点接入策略(read_encounter_options→decide_en…
DoctorReid Aug 7, 2026
78d53d1
fix(cw): D-92 drought bail —— target 连续3轮 shop 无阵营卡则弃 target 重选
DoctorReid Aug 7, 2026
04d704b
fix(cw): D-93 read_hp 重读兜底 —— 读到上限100(入口过渡帧HP区未渲染)重读2次取真值
DoctorReid Aug 7, 2026
8391c4f
fix(cw): D-94 prep state.hp 用结算屏 HP(可靠)替 prep 帧 read_hp(持续误读)
DoctorReid Aug 7, 2026
e2fa71b
feat(cw): D-95 巨星节点接入策略(read_megastar_options → decide_megastar)
DoctorReid Aug 7, 2026
579e702
fix(cw): D-96 巨星 step2「请选择强化角色」→ 再 confirm 跳过强化(两步 overlay,partner re…
DoctorReid Aug 7, 2026
991f865
docs(cw): strategy/08 巨星接线状态 → ✅(D-95 read_megastar_options + D-96 两步…
DoctorReid Aug 7, 2026
868f0dd
refactor(cw): 删 dead code HandleMegastar/HandleSupply(battle_loop 用 R…
DoctorReid Aug 7, 2026
88ba971
fix(cw): D-97 巨星候选只点一次(flag 防 RunNode retry toggle 反选)—— 真根因
DoctorReid Aug 7, 2026
488919a
fix(cw): D-98 target 不含盛会之星 时永远不买盛会之星 卡(防 megastar 节点卡死)
DoctorReid Aug 7, 2026
76a695f
fix(cw): D-97b megastar 候选 session 级 flag + revert D-98(盛会之星 避开法无效且有害)
DoctorReid Aug 7, 2026
63996b7
feat(cw): D-98 DeployBench 接入策略(读 plan DeployMove,按 to_row 部署)
DoctorReid Aug 7, 2026
154cb8c
fix(cw): D-97c megastar session flag 重置(节点完成 _in_node=False 时清,下个节点可重…
DoctorReid Aug 7, 2026
283e011
feat(cw): D-102 deploy 身份驱动(采CW立绘库71+read_bench_chars,修D-100 bench_id…
DoctorReid Aug 7, 2026
d055fbf
fix(cw): loop 加 0g 阿哈装备选择 overlay 分支(投资策略阿哈大悦,选装备自动关;plane1 1-3 卡此 66…
DoctorReid Aug 7, 2026
069565a
fix(cw): 阿哈0g round_by_find_area(T#103 round_by_ocr→area 起)+ drought …
DoctorReid Aug 7, 2026
ab2809c
refactor(cw): T#103 round_by_ocr 全屏→area 化首批(复用现有 area + 按钮-收起)
DoctorReid Aug 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
31 changes: 8 additions & 23 deletions .github/dev.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,13 @@
# 1.开发环境

## 1.1.Python

推荐使用 [3.11.9](https://www.python.org/downloads/release/python-3119/)

## 1.2.虚拟环境

普通运行

```shell
pip install -r requirements-dev.txt
```

开发额外

```shell
pip install -r requirements-dev-ext.txt
```

生成最终使用

```shell
pip-compile --annotation-style=line --index-url=https://pypi.tuna.tsinghua.edu.cn/simple --output-file=requirements-prod.txt requirements-dev.txt
```
开发环境与常用命令见根目录 [AGENTS.md](../AGENTS.md)。要点:

- Python 3.11.9;包管理用 uv。
- 安装依赖(含 ruff/pytest/pyright 等 dev 工具):`uv sync --group dev`
- 运行:`uv run python src/sr_od/gui/sr_full_app.py`(需 `PYTHONPATH=src`,详见 AGENTS.md)
- Lint:`uv run ruff check src/<你修改的文件>.py`
- 测试:`uv run pytest sr-od-test/`
- 也可用 `debug.bat` 交互式调试。

# 2.打包

Expand Down
98 changes: 98 additions & 0 deletions .github/workflows/test-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: Test Check

on:
pull_request:
types: [opened, synchronize, reopened]
push:
branches: [main]

jobs:
test-check:
runs-on: windows-latest
Comment thread
coderabbitai[bot] marked this conversation as resolved.
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v5
with:
fetch-depth: 1
Comment thread
coderabbitai[bot] marked this conversation as resolved.
persist-credentials: false

- name: Install uv
shell: pwsh
run: |
Invoke-WebRequest -Uri https://astral.sh/uv/install.ps1 | Invoke-Expression

- name: Create and activate virtual environment
shell: pwsh
run: |
uv venv .venv --python=3.11.12

- name: Install dependencies
shell: pwsh
run: |
.\.venv\Scripts\Activate.ps1
uv sync --group dev

- name: Checkout test repo
id: checkout-test-repo
uses: actions/checkout@v5
with:
repository: ${{ github.event_name == 'pull_request' && (github.event.pull_request.head.repo.full_name && format('{0}/sr-od-test', github.event.pull_request.head.repo.owner.login) || 'OneDragon-Anything/sr-od-test') || 'OneDragon-Anything/sr-od-test' }}
path: sr-od-test
ref: ${{ github.event_name == 'pull_request' && github.head_ref || 'main' }}
fetch-depth: 1
persist-credentials: false
continue-on-error: true

- name: Checkout test repo (default branch)
id: checkout-test-repo-default
if: steps.checkout-test-repo.outcome == 'failure'
uses: actions/checkout@v5
with:
repository: OneDragon-Anything/sr-od-test
path: sr-od-test
ref: main
fetch-depth: 1
persist-credentials: false

- name: Pre-download YOLO model (CI bypasses ghfast.top proxy; direct github)
shell: pwsh
run: |
# cal_pos/sim_uni 集成测试需 YOLO 模型;loader 默认走 ghfast.top 代理在 CI 会失败。
# CI 直连 github release 预下载到 loader 期望的目录,check_model_exists 通过 → 不触发下载。
$url = "https://github.com/OneDragon-Anything/OneDragon-YOLO/releases/download/sr_model/yolov8n-640-simuni-0601.zip"
$tmp = "$env:TEMP\yolo.zip"
Invoke-WebRequest -Uri $url -OutFile $tmp
foreach ($cat in @("world_patrol", "sim_uni")) {
$dst = "assets\models\$cat\yolov8n-640-simuni-0601"
New-Item -ItemType Directory -Force -Path $dst | Out-Null
Expand-Archive -Path $tmp -DestinationPath $dst -Force
}
Write-Host "YOLO model pre-downloaded to world_patrol + sim_uni"

- name: Run tests
shell: pwsh
run: |
chcp 65001
$OutputEncoding = [System.Text.Encoding]::UTF8
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
.\.venv\Scripts\Activate.ps1

uv run pytest sr-od-test/ -v --tb=short --color=yes
env:
PYTHONIOENCODING: utf-8


- name: Test failure notification
if: failure()
run: |
$message = @"
::notice::当前触发事件: ${{ github.event_name }}
::error::测试失败!请检查上方的测试结果并修复问题。
::notice::您可以fork测试仓库 https://github.com/OneDragon-Anything/sr-od-test 创建相同分支来修改测试代码
::notice::您可以使用以下命令在本地运行测试: uv run pytest sr-od-test/ -v
"@
Write-Host $message
shell: pwsh
11 changes: 11 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ assets/ui/dynamic_background.webm

# 执行文件
*.exe
*.exe.bak

# 用户运行时产生的文件
.temp
Expand All @@ -51,3 +52,13 @@ notice_cache/

# 需自行下载的模型文件
models/
# AI 入口:.claude/ 整个不入库(CLAUDE.md 也是个人本地;团队共享走根 AGENTS.md)
.claude/*
CLAUDE.local.md

# superpowers(规划文档/会话产物,不入库)
docs/superpowers/
.superpowers/

# 装备图标采集调试标注(临时,不入库)
assets/template/cw_equip/_debug/
104 changes: 104 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
# AGENTS.md

本文件是项目级 AI 编码协作入口,只保留会直接影响实现落点与提交流程的约束。
详细规范与背景资料不要堆在这里,按需继续阅读:
- AI 编码 harness 工程方法论:[docs/develop/harness/README.md](docs/develop/harness/README.md)
- 上下文分层判据:[docs/develop/harness/context_layering.md](docs/develop/harness/context_layering.md)
- 入口文件维护规范:[docs/develop/harness/entry_files.md](docs/develop/harness/entry_files.md)
- AI 工具接入指引:[docs/develop/setup/ai_coding.md](docs/develop/setup/ai_coding.md)

## 项目概述

- 项目:星穹铁道一条龙(StarRail-OneDragon),面向 Windows 的崩坏星穹铁道自动化工具。
- 语言与环境:Python 3.11、uv、PySide6。
- 代码布局:`src-layout`,源码在 `src/`,运行时配置在 `config/`,资源在 `assets/`,开发文档在 `docs/develop/`。
- 运行基准:1080p;配置以 YAML 为主。
- 测试仓库独立维护:`sr-od-test/` 需要单独放在仓库根目录(已被 gitignore)。

## 常用命令

```shell
uv sync --group dev
uv run python src/sr_od/gui/sr_full_app.py
uv run pytest sr-od-test/
uv run ruff check src/你修改的文件.py
uv run ruff check --fix src/你修改的文件.py
```

- 因 `pyproject.toml` 设 `[tool.uv] package = false`,运行前需确保 `PYTHONPATH=src`:PowerShell 执行 `$env:PYTHONPATH="src"`,或在项目根 `.env` 写入 `PYTHONPATH=src` 后改用 `uv run --env-file .env python src/sr_od/gui/sr_full_app.py`。
- 也可以沿用 `debug.bat`(交互式调试入口,已设置好环境)。
- 只对自己修改的文件运行 `ruff check`。
- 不要对整个 `src/` 目录运行 ruff,现有仓库尚未全面适配。
- 优先使用 Windows PowerShell 可直接执行的命令。

## 架构落点

### 1. 核心分层

- `src/one_dragon/`:通用基础框架、配置、环境、工具、YOLO 能力。
- `src/one_dragon_qt/`:通用 Qt GUI 框架与公共组件。
- `src/onnxocr/`:OCR 引擎。
- `src/sr_od/`:星穹铁道业务代码,包括 application、operation、context、gui 等。

`one_dragon` / `one_dragon_qt` / `onnxocr` 是游戏无关的公共框架包(OneDragon 系列跨项目共享),星铁业务只在 `sr_od/`;公共框架的同步维护见 [common-package-sync.md](docs/develop/one_dragon/common-package-sync.md)。

### 2. 功能开发优先路径

- **涉及游戏流程的改动先理解再动手**:新功能 / debug / 修 bug 碰到自动化与游戏交互、游戏机制时,先读相关代码 + `screen_info` 弄清「bot 当前走到哪个画面、按什么玩法逻辑走」,知识缺失或过期按 `od-dev-screen-onboarding` 等 skill 补档,别凭猜改(凭猜 → 只覆盖一种情况、漏另一种 → 回归)。纯代码改动(重构 / 性能 / UI / 基建)不适用。
- 新功能优先评估是否应做成 `SrApplication`,放在 `src/sr_od/application/`,并通过 `ApplicationFactory` 接入(参考现有 `world_patrol`、`sim_universe`、`trailblaze_power` 等 `XxxAppFactory`)。
- 不要直接把新流程硬塞进主线逻辑;先复用现有 Application、Operation、配置体系与界面组件。
- 新的设置界面优先沿用现有 setting card、`YamlConfigAdapter`、`AdapterInitMixin` 等模式。

### 3. 关键运行机制

- `SrContext`(继承 `OneDragonContext`)管理懒加载服务与配置;实例级配置变更要走 `reload_instance_config()`。
- 操作链基于 `Operation` 编排;业务流程由 `SrApplication` 与各 `XxxAppFactory` 组装。
- ONNX session 的异步调用必须通过 `one_dragon.utils.gpu_executor.submit`,不要并发直调多个 session。

## 开发硬约束

- 所有函数签名、类成员变量都要有类型注解;使用 `list[str]`、`X | Y`。
- 注释与 docstring 用中文,保持现有项目风格。
- 禁止相对导入;仅类型注解使用 `TYPE_CHECKING` 导入。
- `__init__.py` 默认不要暴露模块,除非已有明确模式或收到明确要求。
- 构造函数显式声明参数,不要用 `**kwargs`。
- 路径操作使用 `pathlib`,字符串格式化使用 f-string。
- GUI 优先复用 `pyside6-fluent-widgets` 与现有项目组件,保持 Fluent Design。
- 配置改动优先落到 YAML 与对应 `YamlConfig` 子类,不要随意散落硬编码配置。
- 1080p 坐标属于项目既有前提,可以按现有模式硬编码,不要额外做分辨率适配设计。
- 模型文件(`.onnx` 等)走运行时资源下载,`.gitignore` 已忽略 `models/`,勿 `git add` 模型文件。

## 文档与测试要求

- 写文档 / skill / 注释 / 入口文件用直白表述,避免自造黑话或项目内部缩写(行业通用术语可用),首次出现的项目术语给定义 + 例子。
- 修改代码后,同步更新对应的 `docs/develop/` 文档与 `sr-od-test/` 测试。
- 提交前至少验证自己改动直接影响的部分(`ruff check` + 相关测试);若无法本地完成,要明确说明缺失前提。
- 复杂功能、架构调整或新自动化流程,先补设计/说明文档,再继续实现。

## 提交流程与协作边界

- 默认不要主动执行 `git commit`、`git push`、`git reset`、删分支等版本控制操作,除非用户明确要求。
- 如果用户明确要求切换分支,先 `stash` 当前改动,再切换。
- Review 关注逻辑错误、运行时崩溃、死循环、资源泄漏;不要为风格问题大改现有代码。
- 提交 PR 后,review comment 需要逐条回复或修正。

## 自维护指南

修改 **AI 入口文件** `AGENTS.md`(团队共享 / 跨工具单一源,提交)时,必须先按 [entry_files.md](docs/develop/harness/entry_files.md) 的规范来:纯指令不掺杂元信息、只放 always-on 该留的(「删了会出错吗」逐条自检)、单一信息源(`AGENTS.md` 是源,工具入口 `@import` 引入)、共享文档改动先经用户确认。`.claude/CLAUDE.md` 是**个人本地**(`.claude/` 整个不入库,见 entry_files.md),个人随意改。

## Skills

本项目开发类 skill(`sr-od-dev-*`)用公共仓的 **`od-dev-writing-skills`** 指导编写(方法论:4 硬规范 / writing-craft / testing)。

- **保存**:根 `skills/<name>/`(提交)。
- **命名**:`sr-od-dev-` 前缀(星铁专属命名空间,防撞名);使用类 `sr-od-`。
- **挂载**:junction `skills/<name>` → `.claude/skills/<name>`(本地,`.claude/` 不入库)。

`od-dev-writing-skills` 本身从公共仓 `OneDragon-Skills` 挂载进本仓 `.claude/skills/`(可通用 skill 沉淀到公共仓,SR 独有业务留本仓)。详 [docs/develop/setup/ai_coding.md](docs/develop/setup/ai_coding.md)。

## 深入阅读

只在当前任务确实需要时继续看这些文档:
- AI 编码 harness 工程:`docs/develop/harness/`
- 打包说明:`.github/dev.md`
- 业务模块架构:`docs/develop/one_dragon/`(按需补充)
Loading
Loading