fix(cma): KR 名称污染存量清理 + 透传点护栏 (cma-kr-name-pollution-cleanup-20260916)
ci/woodpecker/push/main Pipeline was canceled

- kr_name.py/krName.ts: sanitize_kr_name 判据(尾部≥/≤数字≠目标值→截断;==目标值→保留)
- maps.py/okr.py/okr_templates.py: 模板名/JSON→krs.title 透传点护栏
- test: 28 passed(独立复核)
- 原会话因迭代上限停手,本提交代收口(工作已复核完成)
This commit is contained in:
Hermes CI Fix
2026-09-16 14:48:06 +08:00
parent 09fb11d86f
commit 06c23927aa
8 changed files with 300 additions and 3 deletions
+4 -1
View File
@@ -183,6 +183,7 @@ import KnowledgePanel from '../components/KnowledgePanel.vue'
import api from "../api/index"
import { LAYER_CONFIG, LAYER_KEYS, getLayerList } from "../config/layers"
import { useFormGuard } from "../composables/useFormGuard"
import { sanitizeKrName } from "../utils/krName"
import StrategyLayer from "../components/strategy-map/StrategyLayer.vue"
import ConnectionLines from "../components/strategy/ConnectionLines.vue"
import MapCanvasToolbar from "../components/map-canvas/MapCanvasToolbar.vue"
@@ -909,7 +910,9 @@ async function saveUserTemplate(data: any, layer: string) {
description: (data.description || '').trim(),
dimension: layer,
preset_krs: (data.krs || []).map((kr: any) => ({
name: kr.name,
// 护栏(2026-09-16):画布 KR 名 → 模板库 透传点,历史污染尾巴(截断值)在此规整,
// 防污染经用户自定义模板再次传染新目标
name: sanitizeKrName(kr.name, kr.target_value).name,
target_value: kr.target_value,
weight: kr.weight || 33,
})),