M3a:息壤三级记忆域——归真触发提取管线/白名单明忆/重忆确认/正影版本链/删除墓碑/双通道召回注入,退役旧记忆-抽取-反思-大周天-演化管线(迁移 004,验收 7 用例)
This commit is contained in:
1 parent
2a640a901b
commit
9c98c2f85e
69 files changed
+1193
-6033
No files matched your search
@@ -1,35 +0,0 @@
|
||||
"""演化候选 API schema(契约字典 §12;api-spec 演化候选审核)。"""
|
||||
|
||||
from datetime import datetime
|
||||
from typing import Any
|
||||
|
||||
from pydantic import Field
|
||||
|
||||
from app.schemas.common import OrmModel
|
||||
|
||||
|
||||
class EvolutionCandidateResponse(OrmModel):
|
||||
"""演化候选响应(delta/evidence_ids 已从 JSON 文本解析)。"""
|
||||
|
||||
id: str = Field(description="演化候选 ID(evolution_ 前缀)")
|
||||
character_id: str
|
||||
cycle_id: str = Field(description="触发本次的大周天循环 ID")
|
||||
type: str = Field(description="候选类型,取值见契约字典 §12.1")
|
||||
source: str = Field(description="来源,本期 big_cycle")
|
||||
level: str = Field(description="影响层级 L0-L4")
|
||||
scope: str = Field(description="作用域,取值见契约字典 §12.3")
|
||||
title: str
|
||||
proposal: str
|
||||
delta: dict[str, Any] = Field(default_factory=dict, description="演化增量")
|
||||
evidence_ids: list[str] = Field(default_factory=list)
|
||||
confidence: float
|
||||
benefit_score: float
|
||||
risk_score: float
|
||||
drift_score: float
|
||||
auto_apply_allowed: bool
|
||||
status: str
|
||||
resulting_target_id: str | None = None
|
||||
error_message: str | None = None
|
||||
reviewed_at: datetime | None = None
|
||||
reviewed_by: str
|
||||
created_at: datetime
|
||||
@@ -1,109 +0,0 @@
|
||||
"""记忆 API schema。"""
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
|
||||
|
||||
class MemoryCreateRequest(BaseModel):
|
||||
model_config = ConfigDict(
|
||||
json_schema_extra={
|
||||
"examples": [
|
||||
{
|
||||
"type": "user",
|
||||
"title": "回答偏好",
|
||||
"content": "用户喜欢简洁、直接、带验证结果的中文回答。",
|
||||
"source": "user_explicit",
|
||||
"confidence": 1.0,
|
||||
"importance": 0.8,
|
||||
"sensitivity": "low",
|
||||
"evidence_ids": ["message_462927da6f0e4af780dd28fd58f73314"],
|
||||
"character_id": "character_ec83d55746c54e47ab6f98d683032626",
|
||||
}
|
||||
]
|
||||
}
|
||||
)
|
||||
|
||||
type: str = Field(
|
||||
default="user", max_length=60, description="记忆类型,取值见契约字典 memory.type。"
|
||||
)
|
||||
title: str = Field(max_length=200, description="记忆标题。")
|
||||
content: str = Field(min_length=1, description="记忆正文。")
|
||||
source: str = Field(
|
||||
default="user_explicit", description="记忆来源,取值见契约字典 memory.source。"
|
||||
)
|
||||
confidence: float = Field(default=1.0, ge=0.0, le=1.0, description="置信度,范围 0.0–1.0。")
|
||||
importance: float = Field(default=0.5, ge=0.0, le=1.0, description="重要性,范围 0.0–1.0。")
|
||||
sensitivity: str = Field(default="low", description="敏感等级:none / low / medium / high。")
|
||||
evidence_ids: list[str] = Field(default_factory=list, description="证据 ID 列表。")
|
||||
character_id: str | None = Field(default=None, description="人物 ID;为空时使用当前激活人物。")
|
||||
|
||||
|
||||
class MemoryUpdateRequest(BaseModel):
|
||||
model_config = ConfigDict(
|
||||
json_schema_extra={
|
||||
"examples": [
|
||||
{
|
||||
"title": "回答偏好(已确认)",
|
||||
"importance": 0.9,
|
||||
"status": "active",
|
||||
"evidence_ids": ["message_462927da6f0e4af780dd28fd58f73314"],
|
||||
}
|
||||
]
|
||||
}
|
||||
)
|
||||
|
||||
type: str | None = Field(default=None, max_length=60, description="记忆类型。")
|
||||
title: str | None = Field(default=None, max_length=200, description="记忆标题。")
|
||||
content: str | None = Field(default=None, description="记忆正文。")
|
||||
confidence: float | None = Field(
|
||||
default=None, ge=0.0, le=1.0, description="置信度,范围 0.0–1.0。"
|
||||
)
|
||||
importance: float | None = Field(
|
||||
default=None, ge=0.0, le=1.0, description="重要性,范围 0.0–1.0。"
|
||||
)
|
||||
sensitivity: str | None = Field(default=None, description="敏感等级。")
|
||||
status: str | None = Field(
|
||||
default=None, description="记忆状态:active / archived / deleted / superseded。"
|
||||
)
|
||||
evidence_ids: list[str] | None = Field(default=None, description="证据 ID 列表。")
|
||||
|
||||
|
||||
class MemoryResponse(BaseModel):
|
||||
model_config = ConfigDict(
|
||||
json_schema_extra={
|
||||
"examples": [
|
||||
{
|
||||
"id": "memory_4d9c6e3b18bb4ef5a6b8ed2e902d1f1a",
|
||||
"character_id": "character_ec83d55746c54e47ab6f98d683032626",
|
||||
"type": "user",
|
||||
"title": "回答偏好",
|
||||
"content": "用户喜欢简洁、直接、带验证结果的中文回答。",
|
||||
"source": "user_explicit",
|
||||
"confidence": 1.0,
|
||||
"importance": 0.8,
|
||||
"sensitivity": "low",
|
||||
"evidence_ids": ["message_462927da6f0e4af780dd28fd58f73314"],
|
||||
"status": "active",
|
||||
"created_at": "2026-06-19T09:12:00.000000Z",
|
||||
"updated_at": "2026-06-19T09:12:00.000000Z",
|
||||
"deleted_at": None,
|
||||
"expires_at": None,
|
||||
}
|
||||
]
|
||||
}
|
||||
)
|
||||
|
||||
id: str = Field(description="记忆 ID,前缀为 memory_。")
|
||||
character_id: str = Field(description="所属人物 ID。")
|
||||
type: str = Field(description="记忆类型。")
|
||||
title: str = Field(description="记忆标题。")
|
||||
content: str = Field(description="记忆正文。")
|
||||
source: str = Field(description="记忆来源。")
|
||||
confidence: float = Field(description="置信度。")
|
||||
importance: float = Field(description="重要性。")
|
||||
sensitivity: str = Field(description="敏感等级。")
|
||||
evidence_ids: list[str] = Field(description="证据 ID 列表。")
|
||||
status: str = Field(description="记忆状态。")
|
||||
created_at: str = Field(description="创建时间,UTC ISO 8601 字符串。")
|
||||
updated_at: str = Field(description="更新时间,UTC ISO 8601 字符串。")
|
||||
deleted_at: str | None = Field(description="删除时间;未删除时为空。")
|
||||
expires_at: str | None = Field(description="过期时间;永不过期时为空。")
|
||||
Reference in new issue
Block a user