revert(proxy): drop the 1-hour cache TTL option and TTL-bucketed write accounting

The forced 1-hour cache_control TTL (schema v14) was a mistake. Injected
breakpoints return to Anthropic's standard 5-minute TTL, caller-owned
markers are preserved verbatim instead of having their TTLs rewritten,
and the 5m/1h cache-write buckets are removed from usage parsing and
pricing (back to the single aggregate cache-creation rate). The cache
TTL selector is removed from the rectifier settings panel along with its
i18n keys in all four locales.

SCHEMA_VERSION returns to 13: the unreleased cache_creation_1h_tokens
column and the v13->v14 migration are removed. The feature never shipped
in a release and the introducing commit was never pushed, so no
databases were stamped v14 outside this machine (local DB verified at
user_version 13).
This commit is contained in:
Jason
2026-07-13 17:55:33 +08:00
parent ac52c851bf
commit 6eb217b242
23 changed files with 56 additions and 416 deletions
@@ -22,7 +22,6 @@ export function RectifierConfigPanel() {
enabled: false,
thinkingOptimizer: true,
cacheInjection: true,
cacheTtl: "1h",
});
const [isLoading, setIsLoading] = useState(true);
@@ -204,31 +203,6 @@ export function RectifierConfigPanel() {
}
/>
</div>
{optimizerConfig.cacheInjection && (
<div className="flex items-center justify-between">
<div className="space-y-0.5">
<Label>{t("settings.advanced.optimizer.cacheTtl")}</Label>
</div>
<select
className="h-9 rounded-md border border-input bg-background px-3 text-sm"
value={optimizerConfig.cacheTtl}
disabled={
!optimizerConfig.enabled || !optimizerConfig.cacheInjection
}
onChange={(e) =>
handleOptimizerChange({ cacheTtl: e.target.value })
}
>
<option value="5m">
{t("settings.advanced.optimizer.cacheTtl5m")}
</option>
<option value="1h">
{t("settings.advanced.optimizer.cacheTtl1h")}
</option>
</select>
</div>
)}
</div>
</div>
</div>