76 lines
2.4 KiB
Python
76 lines
2.4 KiB
Python
# -*- coding: utf-8 -*-
|
||||
|
|
"""iAOP-Core · 交接班摘要模块(shift-handover)—— 对齐 PRD 场景C / 5.4「④ LLM 网关」。
|
|||
|
|
|
|||
|
|
对外暴露 issue #53「移动端交接班摘要生成(NL)」的能力:把本班关键事件/能耗/待办/
|
|||
|
|
异常归一为 ``ShiftRecord``,按模板配置(``HandoverBriefConfig``)经 LLM(或离线
|
|||
|
|
确定性降级)生成交接班摘要,并编译成移动端只读卡片可直接消费的 props。
|
|||
|
|
|
|||
|
|
LLM 以依赖注入形式传入(``llm_generate``),内核不绑定具体云端 SDK;未注入或调用
|
|||
|
|
失败时自动降级为 ``render_deterministic_brief``(PRD「模型服务故障自动降级」、
|
|||
|
|
「可用性 ≥ 99.8%」),保证离线/降级时交接班链路不中断。
|
|||
|
|
|
|||
|
|
测试:`python -m unittest discover -s tests -v`(在 core/shift-handover 目录下)。
|
|||
|
|
验收:`python scripts/verify_handover_brief.py`。
|
|||
|
|
"""
|
|||
|
|
from __future__ import annotations
|
|||
|
|
|
|||
|
|
from .handover import ( # noqa: F401
|
|||
|
|
DEFAULT_COLLAPSE_THRESHOLD,
|
|||
|
|
DEFAULT_MAX_EVENTS,
|
|||
|
|
DEFAULT_MAX_TODOS,
|
|||
|
|
DEFAULT_PROMPT_TEMPLATE,
|
|||
|
|
DEFAULT_PROMPT_VERSION,
|
|||
|
|
DEFAULT_REQUIRE_CONFIRM,
|
|||
|
|
HANDOVER_CONFIG_SCHEMA_ID,
|
|||
|
|
HANDOVER_CONFIG_SCHEMA_VERSION,
|
|||
|
|
HANDOVER_GENERATION_BUDGET_MS,
|
|||
|
|
MAX_ALLOWED_EVENTS,
|
|||
|
|
MAX_ALLOWED_TODOS,
|
|||
|
|
VALID_FONT_SIZES,
|
|||
|
|
VALID_SECTIONS,
|
|||
|
|
HandoverBriefConfig,
|
|||
|
|
HandoverConfigError,
|
|||
|
|
HandoverConfigValidationResult,
|
|||
|
|
ShiftEvent,
|
|||
|
|
ShiftRecord,
|
|||
|
|
ShiftTodo,
|
|||
|
|
build_llm_input,
|
|||
|
|
generate_handover_brief,
|
|||
|
|
load_handover_config,
|
|||
|
|
normalize_shift_record,
|
|||
|
|
render_deterministic_brief,
|
|||
|
|
render_handover_brief,
|
|||
|
|
validate_handover_config,
|
|||
|
|
within_generation_budget,
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
__all__ = [
|
|||
|
|
"DEFAULT_COLLAPSE_THRESHOLD",
|
|||
|
|
"DEFAULT_MAX_EVENTS",
|
|||
|
|
"DEFAULT_MAX_TODOS",
|
|||
|
|
"DEFAULT_PROMPT_TEMPLATE",
|
|||
|
|
"DEFAULT_PROMPT_VERSION",
|
|||
|
|
"DEFAULT_REQUIRE_CONFIRM",
|
|||
|
|
"HANDOVER_CONFIG_SCHEMA_ID",
|
|||
|
|
"HANDOVER_CONFIG_SCHEMA_VERSION",
|
|||
|
|
"HANDOVER_GENERATION_BUDGET_MS",
|
|||
|
|
"MAX_ALLOWED_EVENTS",
|
|||
|
|
"MAX_ALLOWED_TODOS",
|
|||
|
|
"VALID_FONT_SIZES",
|
|||
|
|
"VALID_SECTIONS",
|
|||
|
|
"HandoverBriefConfig",
|
|||
|
|
"HandoverConfigError",
|
|||
|
|
"HandoverConfigValidationResult",
|
|||
|
|
"ShiftEvent",
|
|||
|
|
"ShiftRecord",
|
|||
|
|
"ShiftTodo",
|
|||
|
|
"build_llm_input",
|
|||
|
|
"generate_handover_brief",
|
|||
|
|
"load_handover_config",
|
|||
|
|
"normalize_shift_record",
|
|||
|
|
"render_deterministic_brief",
|
|||
|
|
"render_handover_brief",
|
|||
|
|
"validate_handover_config",
|
|||
|
|
"within_generation_budget",
|
|||
|
|
]
|