Commit Graph

286 Commits

Author SHA1 Message Date
wangsenhao 4dbf59116f docs: simplify complex_dev/complex_base, remove cleaned_predict row
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 15:49:23 +08:00
wangsenhao b48032e15c feat: backend gate fallback + metric_diff docs + submit_sft fix
- Auto-inject human-review gate when agent asks question but forgets gate entry
- Add complex_dev/complex_base field docs to program.md metric_diff table
- Fix submit_sft.sh minor issues
- jupyter_runtime improvements

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 15:42:02 +08:00
wangsenhao a09d4afacd fix: pipeline排序/runDic映射/label-master repeatable/达标优先级
- pipeline items 按 first_ts 自然时间排序,去掉 hardcoded section_order
- augment step-detail 去掉 R{n-1} 偏移,直接用本轮 runDic(与 resolve_run_ids.sh 实际行为对齐)
- 加 BundledSkill.repeatable 字段,label-master 标记 repeatable:true 跳过 duplicate detection
- SKILL.md/program.md: 目标集≥95%最高优先级,未达标前其他集合轻微下降不回滚
- SKILL.md/program.md: 禁止正则脚本替代 label-master 语义复核
- program.md: 每轮 SFT 前必须展示训练数据组成
- resolve_run_ids.sh: 修正注释(SFT_RUNDIC = 当轮 eval workflow id)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 14:10:32 +08:00
hupenglong1 d2bb525e38 修改 2026-05-25 19:34:49 +08:00
hupenglong1 5b708d2996 fix: use custom event for training panel toggle, no more poll inference
SkillInsertDialog dispatches SKILL_TOGGLED_EVENT on user click.
AssistantWorkspace listens for that event to set applied state.
Completely eliminates poll-based state inference that caused flash.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 17:46:51 +08:00
hupenglong1 2acbd0b509 fix: eliminate training panel flash on page load
- Don't restore applied state from localStorage on mount (was causing
  first-frame flash when skill was already enabled)
- Always start with applied=false; only set true on user click

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 17:41:35 +08:00
hupenglong1 21c0cfc52d fix: prevent training panel flash on page load
Track skill.loading → only trigger applied=true on user-initiated
skill enable (not on initial page load where skill was already on).
Clear stale localStorage applied state on load if skill is off.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 17:35:53 +08:00
hupenglong1 defbc9da28 fix: training panel only opens on explicit skill click
Remove auto-detection from user message patterns and pipeline polling.
Panel now opens only when user explicitly enables model-iteration skill
via the UI button, and closes via "退出训练模式" or disabling the skill.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 17:30:46 +08:00
hupenglong1 a3ab74b506 refactor: split submit_sft_via_cml.sh into submit_sft.sh + submit_cml_eval.sh
- submit_sft.sh: pure SFT submission, prints JobID and exits (no embedded watcher)
- submit_cml_eval.sh: pure CML eval, reads workflow_id/version from config.yaml
- jupyter_runtime write_text: rewrite to use Contents API instead of terminal websocket
- SKILL.md: restrict trigger to explicit UI click only
- program.md: update §5.2 docs to reflect two-script workflow

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 17:21:42 +08:00
hupenglong1 d2c221e2da auth: 邮箱注册/登录补全 Linux 账号创建
registerByEmail / loginByEmail 漏掉 ensureLinuxAccount,开 CLAW_ENABLE_LINUX_ACCOUNTS=1
时邮箱用户既不会建 Linux 账号、createAccountDirectories 的 chown 也会失败。
照搬 username 路径的位置补上即可。同时删掉后端 server.py 里同逻辑的 dead code
(_XIAOMI_EMAIL_RE / _account_id_from_email),实际拆分发生在 TS 层。
2026-05-25 11:55:56 +08:00
hupenglong1 d8741a3489 Merge remote-tracking branch 'origin/main' into wsh_dev
# Conflicts:
#	backend/api/server.py
2026-05-25 11:46:44 +08:00
hupenglong1 f068311cac backend/frontend/runtime: 训练面板 / session 隔离 / agent runtime 调整
- backend/api/server.py:训练 step-detail / pipeline 卡片排序逻辑
- frontend:thread-list / thread / training-pipeline-panel / step-detail-sheet 配套调整,新增 metrics-chart-panel
- src/agent_*:tool spec / runtime / prompting 配套
- .gitignore 加 .logs/

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 11:43:10 +08:00
hupenglong1 57f5b60a3e model-iteration: runDic 单一可信源 + label-master 逐条调用
- 新增 scripts/resolve_run_ids.sh:从 workflow5/ 解析出 SFT_RUNDIC / EVAL_RUNDIC,禁止 agent 心算 +1
- submit_sft_via_cml.sh 拆成 <SFT_RUNDIC> <EVAL_RUNDIC> [PREV_RUNDIC] 三参,yaml 用 SFT_RUNDIC,cml workflow run 用 EVAL_RUNDIC
- program.md §746 / §5.2 / §1.2 同步约束,并加 R2 落盘多 +1 的踩坑案例
- §4.0.1 Step A.5 / §4.5 label-master 复核改逐条调用(≤8 路并发),禁止批量塞多条 query

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 11:42:44 +08:00
hupenglong1 362321c460 修改 2026-05-22 20:56:57 +08:00
hupenglong1 5311e6d97c 修改 2026-05-22 19:48:47 +08:00
wuyang6 c40d59901b Merge data agent runtime updates 2026-05-21 20:54:57 +08:00
wuyang6 a3a4cdca14 Add model labeling skill 2026-05-21 19:10:06 +08:00
wuyang6 101a4a57c3 Add memory research technical doc 2026-05-20 15:53:06 +08:00
hupenglong1 20690cdef3 修改 2026-05-20 15:46:36 +08:00
hupenglong1 1a94cec822 修改 2026-05-20 15:04:19 +08:00
wuyang6 ee596a33e0 Add Linux account workspace runtime 2026-05-20 14:13:34 +08:00
wuyang6 5684df3caf Add intervention data skill 2026-05-19 11:59:49 +08:00
wuyang6 201058dfb2 docs: add example session links 2026-05-18 19:41:59 +08:00
wuyang6 3054b3bc6b docs: add technical architecture guide 2026-05-18 19:28:02 +08:00
wuyang6 c4b935692c Add interactive project doc page 2026-05-15 10:12:31 +08:00
wuyang6 9e7f2a44ea Hide pre-tool content from chat stream 2026-05-14 22:11:44 +08:00
wuyang6 951fbb2cb2 Scope active session to browser tab 2026-05-14 22:02:36 +08:00
wuyang6 57f4452508 Separate live text and tool stream parts 2026-05-14 21:46:45 +08:00
wuyang6 946cca1ac4 Keep active session URL in sync 2026-05-14 21:14:23 +08:00
wuyang6 182e72680d Prevent stale session during active runs 2026-05-14 21:04:42 +08:00
wuyang6 d427086aa7 Stabilize live run activity updates 2026-05-14 20:55:30 +08:00
wuyang6 cf72540bc9 Guard reasoning deltas after visible output 2026-05-14 20:38:24 +08:00
wuyang6 05a014d03c Start visible text stream after reasoning status 2026-05-14 20:26:42 +08:00
wuyang6 2895425869 Stream assistant content to chat output 2026-05-14 20:06:55 +08:00
wuyang6 2eeabdeccf Show live content deltas in activity 2026-05-14 19:43:41 +08:00
wuyang6 dd7ff75a69 Ignore root scratchpad artifacts 2026-05-14 18:15:48 +08:00
wuyang6 119e329dfb Fix live activity timer 2026-05-14 18:12:11 +08:00
wuyang6 87dd67c76a Use prompt history for online mining records 2026-05-14 17:42:08 +08:00
wuyang6 f1dc7e4b91 Fix online mining session lookup 2026-05-14 17:25:51 +08:00
wuyang6 c6b3233769 Improve online mining record conversion 2026-05-14 17:19:23 +08:00
wuyang6 e10cb6909b Show cancel button for backend active runs 2026-05-14 16:43:06 +08:00
wuyang6 e48c0ff981 Sync session URL when opening chats 2026-05-14 16:02:27 +08:00
wuyang6 997f5cd60b Add direct session URL route 2026-05-14 15:53:58 +08:00
wuyang6 e815056348 Restore workspace status display 2026-05-14 15:44:44 +08:00
wuyang6 64b39e3839 Default service model to DeepSeek V4 Pro 2026-05-14 15:33:59 +08:00
wuyang6 076dc61b7f Fix workspace switch session binding 2026-05-14 15:21:45 +08:00
wuyang6 1d37511762 Show pending prompt for interrupted runs 2026-05-14 15:02:11 +08:00
wuyang6 3c200db621 Persist resume prompts before execution 2026-05-14 14:48:21 +08:00
wuyang6 ed935b633f Clear stale frontend run state 2026-05-14 14:41:58 +08:00
wuyang6 52cb3cad06 Refresh current thread when run settles 2026-05-14 14:25:45 +08:00