You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(sync): fold re-keyed upstream duplicates into their existing id (#124)
* fix(sync): fold re-keyed upstream duplicates into their existing id
LiteLLM started listing Mistral Medium 3.5 under a second key that
differs only by punctuation (a dot instead of a dash). mergeCatalog
treated it as a brand-new model, and its id collided with the already-
published one once both were turned into a URL slug -- crashing
check-pages and failing every Sync pricing run on main since.
Reconcile any freshly-matched feed id that isn't already published
against the slug of ids we do publish, and fold it into the existing
id instead of minting a second, colliding one.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* docs: update published test counts for the new regression test
The new pipeline.test.ts case bumps this package to 434 tests and the
published total to 997 -- update the README badge, the README docs
table, and docs/TESTING.md's total and per-file row to match, per
check:test-badge.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* chore(mobile): align Expo SDK patch dependencies
expo, expo-constants and expo-font had drifted a patch version behind
what the installed Expo SDK 57 expects, tripping expo-doctor in the
mobile verify job -- unrelated to this branch's pricing-sync fix, but
failing on main regardless. `expo install --fix` resolves it; all 21
expo-doctor checks, the mobile test suite (115/115), and the iOS/
Android/web export all pass afterward.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
|`scripts/lib/pipeline.test.ts`|62| The whole pipeline against fixtures: the trust ladder, both sanity thresholds, cold start, stale retention, flag-once semantics — including a standing flag whose _figures_ drift, which is what re-opened a pull request every morning — full-field diffing, coverage versus a price move versus a source correction, the content hash, changelog rendering. |
50
+
|`scripts/lib/pipeline.test.ts`|63| The whole pipeline against fixtures: the trust ladder, both sanity thresholds, cold start, stale retention, flag-once semantics — including a standing flag whose _figures_ drift, which is what re-opened a pull request every morning — full-field diffing, coverage versus a price move versus a source correction, the content hash, changelog rendering. |
51
51
|`scripts/lib/readme-badges.test.ts`| 3 | The daily catalog sync updates both badge URLs and accessible alt text, leaves unrelated prose untouched, and fails closed if a README redesign removes or duplicates a derived claim. |
52
52
|`src/lib/contrast.test.ts`| 49 | Every accent × theme × canvas combination against every surface it can appear on, plus the status colours on their own soft fills — the pairing the accent matrix does not reach. |
53
53
|`src/lib/engine/cost.test.ts`| 44 | Compounding history, per-turn long-context tiers, cache reads and writes, promotional windows, reasoning multipliers, margins, break-even, and the scenarios that cannot physically run. |
0 commit comments