mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 17:30:23 +08:00
fix(pool): recent_refresh 按 provider_type 解析 reset_seconds 并锁定 Codex 周重置语义
- 为 `extract_reset_seconds` 增加 `provider_type` 解析链路(显式参数 -> key.provider_type -> key.provider.provider_type -> metadata 推断)。 - Codex 场景固定读取 `primary_reset_seconds`(周限额),避免误用 `secondary_reset_seconds`(5 小时窗口);Kiro/Antigravity 继续走统一 quota reader。 - 在 `RecentRefreshDimension` 和 `PoolManager` 的策略上下文中透传 `provider_type`,并在缺失时从 key provider 回退推断。 - 新增/补强测试覆盖: - multi_score `recent_refresh` 在 Codex 下按 weekly reset 排序; - quota reader helper 在 Codex provider 下返回 primary reset; - Codex 付费计划(plus/enterprise)在 headers 与 WHAM 响应中的窗口映射与主次窗口对齐(10080/300 分钟)。 降低 recent_refresh 评分偏差风险,并为 Codex 付费窗口解析提供回归保护。
This commit is contained in:
@@ -74,6 +74,20 @@ def test_dimension_helpers_delegate_to_unified_reader(monkeypatch: pytest.Monkey
|
||||
assert extract_usage_ratio(key_obj) == pytest.approx(0.45)
|
||||
|
||||
|
||||
def test_extract_reset_seconds_uses_codex_weekly_reset_for_codex_provider() -> None:
|
||||
key_obj = SimpleNamespace(
|
||||
provider_type="codex",
|
||||
upstream_metadata={
|
||||
"codex": {
|
||||
"primary_reset_seconds": 1800.0,
|
||||
"secondary_reset_seconds": 120.0,
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
assert extract_reset_seconds(key_obj) == pytest.approx(1800.0)
|
||||
|
||||
|
||||
def test_resolve_pool_account_state_keeps_codex_metadata_block() -> None:
|
||||
state = resolve_pool_account_state(
|
||||
provider_type="codex",
|
||||
|
||||
Reference in New Issue
Block a user