diff --git a/kernel/model/ai.go b/kernel/model/ai.go index 0cdc03e56..85757f7de 100644 --- a/kernel/model/ai.go +++ b/kernel/model/ai.go @@ -48,6 +48,12 @@ func ChatGPTWithAction(ids []string, action string) (ret string) { var cachedContextMsg []string func chatGPT(msg string, cloud bool) (ret string) { + if "Clear context" == strings.TrimSpace(msg) { + // AI clear context action https://github.com/siyuan-note/siyuan/issues/10255 + cachedContextMsg = nil + return + } + ret, retCtxMsgs, err := chatGPTContinueWrite(msg, cachedContextMsg, cloud) if nil != err { return @@ -58,6 +64,12 @@ func chatGPT(msg string, cloud bool) (ret string) { func chatGPTWithAction(msg string, action string, cloud bool) (ret string) { action = strings.TrimSpace(action) + if "Clear context" == action { + // AI clear context action https://github.com/siyuan-note/siyuan/issues/10255 + cachedContextMsg = nil + return + } + if "" != action { msg = action + ":\n\n" + msg } diff --git a/kernel/model/attribute_view.go b/kernel/model/attribute_view.go index 29b61923a..4c41ae0cd 100644 --- a/kernel/model/attribute_view.go +++ b/kernel/model/attribute_view.go @@ -2432,6 +2432,14 @@ func UpdateAttributeViewCell(tx *Transaction, avID, keyID, rowID, cellID string, if err = gulu.JSON.UnmarshalJSON(data, &val); nil != err { return } + + if av.KeyTypeNumber == val.Type { + if nil != val.Number && !val.Number.IsNotEmpty { + // 删除内容为空值 + val.Number.Content = 0 + } + } + relationChangeMode := 0 // 0:不变(仅排序),1:增加,2:减少 if av.KeyTypeRelation == val.Type { // 关联列得 content 是自动渲染的,所以不需要保存