纯标准库实现,对齐 PRD 5.5「⑤ 配置化驾驶舱」性能口径: - perf_budget.py:PerformanceBudget(首屏 2000ms + 6 类资源预算)、 ResourceMeasurement(block_render 区分关键路径)、BudgetVerifier (阻塞串行+非阻塞取最大口径,逐类型比对预算,PASS/FAIL/EMPTY + 类型化优化建议,reason 可解释)。 - lazy_load.py:LazyLoadStrategy(immediate/visible/idle/never)、 LazyLoadPolicy(视口行数+预加载+分页阈值+虚拟滚动)、LazyLoadPlanner (widget 坐标+滚动位置 → 决策+分页计划+虚拟滚动窗口)。 - tests:32 用例覆盖预算构造/查询、关键路径口径、达标/超预算场景、 always_load 强制加载、视口边界、分页/虚拟滚动、输入校验。 - _sanity_check.py:冒烟验证达标/超预算/懒加载分流。
47 lines
955 B
Python
47 lines
955 B
Python
# -*- coding: utf-8 -*-
|
|
"""性能预算与懒加载策略引擎包(Issue #54)。
|
|
|
|
对齐 PRD 5.5「⑤ 配置化驾驶舱」性能口径:首屏 ≤ 2s、图表懒加载。
|
|
"""
|
|
from .perf_budget import (
|
|
BudgetError,
|
|
BudgetOverrun,
|
|
BudgetReport,
|
|
BudgetStatus,
|
|
BudgetVerifier,
|
|
PerformanceBudget,
|
|
ResourceBudget,
|
|
ResourceMeasurement,
|
|
ResourceType,
|
|
)
|
|
from .lazy_load import (
|
|
LazyLoadDecision,
|
|
LazyLoadError,
|
|
LazyLoadPlan,
|
|
LazyLoadPlanner,
|
|
LazyLoadPolicy,
|
|
LazyLoadStrategy,
|
|
WidgetLayout,
|
|
)
|
|
|
|
__all__ = [
|
|
# perf_budget
|
|
"PerformanceBudget",
|
|
"ResourceBudget",
|
|
"ResourceMeasurement",
|
|
"ResourceType",
|
|
"BudgetReport",
|
|
"BudgetOverrun",
|
|
"BudgetVerifier",
|
|
"BudgetStatus",
|
|
"BudgetError",
|
|
# lazy_load
|
|
"LazyLoadPolicy",
|
|
"LazyLoadDecision",
|
|
"LazyLoadPlan",
|
|
"LazyLoadStrategy",
|
|
"LazyLoadPlanner",
|
|
"LazyLoadError",
|
|
"WidgetLayout",
|
|
]
|