实现侧: - 上下文:任务范围拆分为 范围校验/范围授权;索引按可发现口径重建、索引新鲜度改对称差;依赖校验统一快照漂移说明。 - 知识方法:方法与材料读取口径统一;超限方法材料按可选省略,核对路径不再二次计费;删除无合同的读时重算。 - 任务运行:新增 context.usage/tool.denied 事件类型;连接池常驻并在装配生命周期内开关;调用结算与核对分列。 - 效果评测/审校修订/交付连载/作者经验/作品规划:凭据冻结、标定消费、导出补证、事实引文核对等收尾修复。 - 资源加载:能力正文不再夹带索引用的导航注记(该注记此前进入角色与技能的模型提示)。 - 元数据:受保护骨架与代码保护属性对齐;字段校验与内置结构口径同步。 - 基础设施:环境预检进入装配生命周期;数据库连接运行期字段不参与相等比较;索引指纹归一化 jsonb 浮点。 - 删除被替代实现:7 份旧提示词模板与空壳 资料来源 读取器。 用例侧: - 用例身份与导航元信息迁移;夹具补生命周期、同库暴露与模板封存; - 本轮定向修复:方法材料省略、事实引文、迁移回执、额度与暂停用例、慢用例超时预算等。
112 lines
5.0 KiB
Python
112 lines
5.0 KiB
Python
"""长期观察按确切改进版本分组,未知值与因果未定不被掩盖。"""
|
||
|
||
from dataclasses import replace
|
||
from uuid import uuid4
|
||
|
||
import pytest
|
||
import test_作者偏好与反馈 as 偏好测试
|
||
import test_具体改进与回执 as 改进测试
|
||
import test_方法启用凭据 as 启用测试
|
||
|
||
from muse.作者经验.接口 import 改进定位, 观察请求
|
||
from muse.共享.错误 import Muse错误
|
||
|
||
pytestmark = pytest.mark.数据库
|
||
环境 = 偏好测试.环境
|
||
候选环境 = 偏好测试.候选环境
|
||
方法环境 = 启用测试.方法环境
|
||
|
||
|
||
@pytest.mark.case_id(
|
||
"NC-w26-26d001",
|
||
environment="隔离PG、实际B10/S01/B04与合成HTTP;不认证外部文学效果",
|
||
given="确切方法版本、真实反馈和同作者用途配置",
|
||
when="登记具体改进、实际验证和owner启停并恢复已提交结果;记录分版本观察",
|
||
then=["观察未知指标不填零且自报不认证因果"],
|
||
contract="docs/系统架构/新版设计/模块设计/B07-作者经验.md",
|
||
)
|
||
def test_观察未知指标不填零且自报不认证因果__26d001(环境):
|
||
service, author, _, feedback = 环境
|
||
fid = str(service.记录反馈(author, "feedback", feedback)["feedback_id"])
|
||
unknown = 观察请求((fid,), "尚未记录耗时和费用。")
|
||
saved = service.记录观察(author, "unknown", unknown)
|
||
assert service.记录观察(author, "unknown", unknown) == saved
|
||
summary = service.读取观察(author)["groups"][0]
|
||
assert all(m == {"known": 0, "unknown": 1, "total": None} for m in summary["metrics"].values())
|
||
service.记录观察(
|
||
author,
|
||
"known",
|
||
观察请求(
|
||
(fid,), "这次没有返工,费用为零。", review_seconds=30, rework_count=0, cost_usd="0"
|
||
),
|
||
)
|
||
report = service.读取观察(author)
|
||
assert report["groups"][0]["metrics"]["cost_usd"] == {"known": 1, "unknown": 1, "total": "0"}
|
||
assert report["groups"][0]["metrics"]["false_positives"]["total"] is None
|
||
assert report["groups"][0]["causality"] == "not_established"
|
||
assert all(
|
||
r["payload"]["measurement_source"] == "author_report" for r in report["observations"]
|
||
)
|
||
assert service.列出偏好(author) == []
|
||
|
||
|
||
@pytest.mark.case_id(
|
||
"NC-w26-26d002",
|
||
environment="隔离PG、实际B10/S01/B04与合成HTTP;不认证外部文学效果",
|
||
given="确切方法版本、真实反馈和同作者用途配置",
|
||
when="登记具体改进、实际验证和owner启停并恢复已提交结果;记录分版本观察",
|
||
then=["不同改进版本的长期观察不混算也不启用目标"],
|
||
contract="docs/系统架构/新版设计/模块设计/B07-作者经验.md",
|
||
)
|
||
def test_不同改进版本的长期观察不混算也不启用目标__26d002(方法环境):
|
||
env = 启用测试._确认方法({"actor": 方法环境[1]}, 方法环境)
|
||
service, request, point = 改进测试._提案(env)
|
||
service.记录观察(
|
||
env["owner"],
|
||
"first",
|
||
观察请求(
|
||
request.feedback_ids, "第一版耗时一分钟。", point, review_seconds=60, cost_usd="0.75"
|
||
),
|
||
)
|
||
revised = service.提出改进(
|
||
env["owner"], replace(request, expected_revision=1, rationale="第二版明确限制适用范围。")
|
||
)
|
||
other = 改进定位(request.improvement_id, revised["revision"], revised["content_hash"])
|
||
service.记录观察(
|
||
env["owner"],
|
||
"second",
|
||
观察请求(
|
||
request.feedback_ids, "第二版仍需复查。", other, review_seconds=120, false_positives=2
|
||
),
|
||
)
|
||
groups = service.读取观察(env["owner"], request.improvement_id)["groups"]
|
||
assert [g["revision"] for g in groups] == [1, 2]
|
||
assert [g["metrics"]["review_seconds"]["total"] for g in groups] == [60, 120]
|
||
assert groups[1]["metrics"]["cost_usd"]["total"] is None
|
||
assert service.读取改进(env["owner"], request.improvement_id)["target_state"] == "confirmed"
|
||
|
||
|
||
@pytest.mark.case_id(
|
||
"NC-w26-26d003",
|
||
environment="隔离PG、实际B10/S01/B04与合成HTTP;不认证外部文学效果",
|
||
given="确切方法版本、真实反馈和同作者用途配置",
|
||
when="登记具体改进、实际验证和owner启停并恢复已提交结果;记录分版本观察",
|
||
then=["观察拒绝假来源跨作者及无效指标"],
|
||
contract="docs/系统架构/新版设计/模块设计/B07-作者经验.md",
|
||
)
|
||
def test_观察拒绝假来源跨作者及无效指标__26d003(环境):
|
||
service, author, _, feedback = 环境
|
||
fid = str(service.记录反馈(author, "feedback", feedback)["feedback_id"])
|
||
for args in [
|
||
{"cost_usd": "NaN"},
|
||
{"cost_usd": "-1"},
|
||
{"review_seconds": -1},
|
||
{"rework_count": True},
|
||
]:
|
||
with pytest.raises(Muse错误):
|
||
观察请求((fid,), "观测原话", **args)
|
||
for who, source in [(author, str(uuid4())), (replace(author, 作者="stranger"), fid)]:
|
||
with pytest.raises(Muse错误):
|
||
service.记录观察(who, "invalid", 观察请求((source,), "需要真实来源。"))
|
||
assert service.读取观察(author)["observations"] == []
|