fix(growth,hands): 穷尽审计后 3 项修复 — browser 文档注释 + experience_store warn 日志 + identity 数字更正
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
- browser.rs: 过时 doc comment pending_execution → delegated_to_frontend - experience_store.rs: merge 反序列化失败时 warn!() + fallback 覆写 - wiki/log.md: identity_patterns 43→54 更正
This commit is contained in:
@@ -126,7 +126,16 @@ impl ExperienceStore {
|
|||||||
|
|
||||||
// If an experience with this URI already exists, merge instead of overwrite.
|
// If an experience with this URI already exists, merge instead of overwrite.
|
||||||
if let Some(existing_entry) = self.viking.get(&uri).await? {
|
if let Some(existing_entry) = self.viking.get(&uri).await? {
|
||||||
if let Ok(existing) = serde_json::from_str::<Experience>(&existing_entry.content) {
|
let existing = match serde_json::from_str::<Experience>(&existing_entry.content) {
|
||||||
|
Ok(e) => e,
|
||||||
|
Err(e) => {
|
||||||
|
warn!("[ExperienceStore] Failed to deserialize existing experience at {}: {}, overwriting", uri, e);
|
||||||
|
// Fall through to store new experience as overwrite
|
||||||
|
self.write_entry(&uri, exp).await?;
|
||||||
|
return Ok(());
|
||||||
|
}
|
||||||
|
};
|
||||||
|
{
|
||||||
let merged = Experience {
|
let merged = Experience {
|
||||||
id: existing.id.clone(),
|
id: existing.id.clone(),
|
||||||
reuse_count: existing.reuse_count + 1,
|
reuse_count: existing.reuse_count + 1,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
//! Browser Hand - Web automation capabilities (TypeScript delegation)
|
//! Browser Hand - Web automation capabilities (TypeScript delegation)
|
||||||
//!
|
//!
|
||||||
//! **Architecture note (M3-02):** This Rust Hand is a **schema validator and passthrough**.
|
//! **Architecture note (M3-02):** This Rust Hand is a **schema validator and passthrough**.
|
||||||
//! Every action returns `{"status": "pending_execution"}` — no real browser work happens here.
|
//! Every action returns `{"status": "delegated_to_frontend"}` — no real browser work happens here.
|
||||||
//!
|
//!
|
||||||
//! The actual execution path is:
|
//! The actual execution path is:
|
||||||
//! 1. Frontend `HandsPanel.tsx` intercepts browser hands → routes to `BrowserHandCard`
|
//! 1. Frontend `HandsPanel.tsx` intercepts browser hands → routes to `BrowserHandCard`
|
||||||
|
|||||||
10
wiki/log.md
10
wiki/log.md
@@ -19,7 +19,7 @@ tags: [log, history]
|
|||||||
- Hand 执行前端字段映射: instance_id → runId (kernel-hands.ts + gateway-api.ts)
|
- Hand 执行前端字段映射: instance_id → runId (kernel-hands.ts + gateway-api.ts)
|
||||||
- Heartbeat 痛点感知: PAIN_POINTS_CACHE + VikingStorage 持久化 + 未解决痛点检查 (heartbeat.rs)
|
- Heartbeat 痛点感知: PAIN_POINTS_CACHE + VikingStorage 持久化 + 未解决痛点检查 (heartbeat.rs)
|
||||||
- Browser Hand 委托消息: pending_execution → delegated_to_frontend + 中文摘要 (browser.rs)
|
- Browser Hand 委托消息: pending_execution → delegated_to_frontend + 中文摘要 (browser.rs)
|
||||||
- 跨会话记忆检索增强: IdentityRecall 模式 26→43 + 弱身份信号 + 低结果 fallback (query.rs + retriever.rs)
|
- 跨会话记忆检索增强: IdentityRecall 模式 26→54 + 弱身份信号(9个) + 低结果 fallback (query.rs + retriever.rs)
|
||||||
- Twitter Hand 凭据持久化: SetCredentials action + 文件持久化 + 启动恢复 (twitter.rs)
|
- Twitter Hand 凭据持久化: SetCredentials action + 文件持久化 + 启动恢复 (twitter.rs)
|
||||||
- Browser 测试适配: 新响应格式断言修复
|
- Browser 测试适配: 新响应格式断言修复
|
||||||
|
|
||||||
@@ -34,6 +34,14 @@ tags: [log, history]
|
|||||||
|
|
||||||
**6 个集成测试**: 经验累积触发/阈值过滤/多模式独立/SkillGenerator prompt/QualityGate验证/FeedbackCollector计分。全量 918 PASS。
|
**6 个集成测试**: 经验累积触发/阈值过滤/多模式独立/SkillGenerator prompt/QualityGate验证/FeedbackCollector计分。全量 918 PASS。
|
||||||
|
|
||||||
|
## [2026-04-21] fix | 穷尽审计后 3 项修复 (browser doc / experience_store warn / identity pattern count)
|
||||||
|
|
||||||
|
- browser.rs: 过时文档注释 `pending_execution` → `delegated_to_frontend`
|
||||||
|
- experience_store.rs: merge 反序列化失败时添加 `warn!()` 日志 + fallback 覆写
|
||||||
|
- wiki/log.md: identity_patterns 数量更正 43→54
|
||||||
|
|
||||||
|
验证: cargo check 0 error | cargo test 112 PASS (growth+hands)
|
||||||
|
|
||||||
## [2026-04-20] fix | 50 轮功能链路审计 7 项断链修复 (commit f291736)
|
## [2026-04-20] fix | 50 轮功能链路审计 7 项断链修复 (commit f291736)
|
||||||
|
|
||||||
**审计报告**: `docs/test-evidence/FUNCTIONAL_CHAIN_AUDIT_2026_04_20.md`
|
**审计报告**: `docs/test-evidence/FUNCTIONAL_CHAIN_AUDIT_2026_04_20.md`
|
||||||
|
|||||||
Reference in New Issue
Block a user