vibeostheog 0.22.25 → 0.22.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/lib/pricing.js +3 -0
- package/src/lib/state.js +2 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vibeostheog",
|
|
3
|
-
"version": "0.22.
|
|
3
|
+
"version": "0.22.26",
|
|
4
4
|
"description": "Cost-aware delegation enforcer for OpenCode. Tracks model usage, routes Task subagents to cheaper tiers, surfaces cumulative savings in chat. Includes research audit, reporting framework, project memory, progressive scratchpad decadence, and trinity CLI for brain/medium/cheap slot switching.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"release": "node scripts/release.mjs",
|
package/src/lib/pricing.js
CHANGED
|
@@ -1001,6 +1001,9 @@ export function loadTrinitySlotsFromTiersFile() {
|
|
|
1001
1001
|
// Refresh currentModel/currentTier from disk config.
|
|
1002
1002
|
// Called per-hook so trinity slot changes take effect without restart.
|
|
1003
1003
|
export const PLACEHOLDER_RE = /^[^/]+\/[a-z-]+-model$/i;
|
|
1004
|
+
// Test-only exports for regression coverage
|
|
1005
|
+
export function _resolveConfiguredModelId(model, configs = []) { return resolveConfiguredModelId(model, configs); }
|
|
1006
|
+
export function _collectConfiguredProviderModelsFromConfig(cfg) { return collectConfiguredProviderModelsFromConfig(cfg); }
|
|
1004
1007
|
export function getTrinitySlotOrder(tiersData = null) {
|
|
1005
1008
|
const configured = Array.isArray(tiersData?.selection?.slot_order)
|
|
1006
1009
|
? tiersData.selection.slot_order
|
package/src/lib/state.js
CHANGED
|
@@ -386,8 +386,8 @@ function roundUsd(v) {
|
|
|
386
386
|
return Math.round((Number(v) || 0) * 10000) / 10000;
|
|
387
387
|
}
|
|
388
388
|
// ── Tier regexes ─────────────────────────────────────────────────────
|
|
389
|
-
const FALLBACK_HIGH = /opus|gemini-.*-pro|deepseek\/deepseek-v4-pro|gpt-5|(^|\/)o[134]($|-|\/)/i;
|
|
390
|
-
const FALLBACK_MID = /deepseek\/deepseek-v4-flash|claude.*sonnet|gemini-.*-flash|gpt-4o(?!-mini)/i;
|
|
389
|
+
const FALLBACK_HIGH = /opus|gemini-.*-pro|deepseek\/deepseek-v4-pro|\bdeepseek-v4-pro\b|gpt-5|(^|\/)o[134]($|-|\/)/i;
|
|
390
|
+
const FALLBACK_MID = /deepseek\/deepseek-v4-flash|\bdeepseek-v4-flash\b|claude.*sonnet|gemini-.*-flash|gpt-4o(?!-mini)/i;
|
|
391
391
|
export function _safeRegex(cfg, fallback, label) {
|
|
392
392
|
if (!cfg)
|
|
393
393
|
return fallback;
|