Skip to content

feat: add releasedAt and publishedAt date fields - #1232

Merged
steebchen merged 1 commit into
mainfrom
add-model-date-fields
Nov 24, 2025
Merged

steebchen merged 1 commit into
mainfrom
add-model-date-fields

Conversation

@steebchen

@steebchen steebchen commented Nov 24, 2025

Copy link
Copy Markdown
Member

Summary

Add release and publication date tracking for all 151 AI models. Each model now includes releasedAt (provider release date) and publishedAt (llmgateway publication date) fields for better model timeline tracking.

Test plan

  • Run pnpm build to verify TypeScript compilation
  • Check model definitions load correctly with new date fields
  • Verify all 151 models have both date fields populated

🤖 Generated with Claude Code

Summary by CodeRabbit

New Features

  • Enhanced model metadata with release and publish dates across all supported AI providers (OpenAI, Anthropic, Google, DeepSeek, Meta, Mistral, and others). Users can now view when each model was released and published to make more informed model selections.

✏️ Tip: You can customize this high-level summary in your review settings.

Add release and publication date tracking for all 151 AI models. Each
model now includes releasedAt (provider release date) and publishedAt
(llmgateway publication date) fields for better model timeline tracking.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 24, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

The PR adds two optional date properties (releasedAt and publishedAt) to the ModelDefinition interface and populates these timestamps across model definitions from 15+ providers including Anthropic, OpenAI, Meta, Mistral, DeepSeek, Google, and others.

Changes

Cohort / File(s) Summary
Interface Definition
packages/models/src/models.ts
Added two optional properties to ModelDefinition: releasedAt?: Date and publishedAt?: Date with provider documentation comments.
Provider Models
packages/models/src/models/alibaba.ts, anthropic.ts, deepseek.ts, google.ts, llmgateway.ts, meta.ts, minimax.ts, mistral.ts, moonshot.ts, nousresearch.ts, openai.ts, perplexity.ts, routeway.ts, xai.ts, zai.ts
Populated releasedAt and publishedAt Date fields across all model entries in respective ModelsArray exports, with each model assigned specific release and publication timestamps.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

Areas of attention:

  • Verify that all date values are accurate and correspond to actual model release/publication timelines
  • Confirm that all model entries have been consistently updated with both fields where applicable
  • Spot-check a few provider files to ensure date formatting consistency (all using new Date("YYYY-MM-DD"))

Possibly related PRs

Suggested reviewers

  • smakosh

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: adding releasedAt and publishedAt date fields across the model definitions. It is concise, specific, and directly reflects the core modification.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch add-model-date-fields

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
packages/models/src/models/deepseek.ts (1)

82-87: Fix the year mismatch in the description.

The description states "May 2028 version" but the dates are set to May 2025 (2025-05-28). The description should read "May 2025 version" to match the actual date.

Apply this diff to correct the description:

 	{
 		id: "deepseek-r1-0528",
-		name: "DeepSeek R1 (0528)",
-		description: "May 2028 version of DeepSeek R1 reasoning model.",
+		name: "DeepSeek R1 (0528)",
+		description: "May 2025 version of DeepSeek R1 reasoning model.",
 		family: "deepseek",
 		releasedAt: new Date("2025-05-28"),
 		publishedAt: new Date("2025-05-28"),
🧹 Nitpick comments (2)
packages/models/src/models.ts (1)

213-220: New ModelDefinition date fields are well-integrated; consider future enforcement

releasedAt / publishedAt fit cleanly with the existing metadata and Date-typed fields. Once you're confident all models are backfilled and new entries should always carry dates, consider dropping the ? to make these required so future omissions are caught at compile time.

packages/models/src/models/routeway.ts (1)

10-11: Shared 2025‑01‑01 release/publish date for all Routeway models—intentional?

Structurally the new fields are fine, but every Routeway model reuses new Date("2025-01-01") for both releasedAt and publishedAt, despite wrapping different base model families. If this date represents “Routeway free-tier launch” rather than each base model’s provider release, that’s OK—just ensure this matches how you intend to interpret releasedAt (provider release vs. Routeway integration) and adjust documentation or values if needed.

Also applies to: 35-36, 60-61, 85-86, 110-111, 135-136, 160-161, 185-186, 210-211

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5a94e12 and 6d85f7d.

📒 Files selected for processing (16)
  • packages/models/src/models.ts (1 hunks)
  • packages/models/src/models/alibaba.ts (29 hunks)
  • packages/models/src/models/anthropic.ts (15 hunks)
  • packages/models/src/models/deepseek.ts (5 hunks)
  • packages/models/src/models/google.ts (27 hunks)
  • packages/models/src/models/llmgateway.ts (2 hunks)
  • packages/models/src/models/meta.ts (10 hunks)
  • packages/models/src/models/minimax.ts (1 hunks)
  • packages/models/src/models/mistral.ts (4 hunks)
  • packages/models/src/models/moonshot.ts (2 hunks)
  • packages/models/src/models/nousresearch.ts (1 hunks)
  • packages/models/src/models/openai.ts (22 hunks)
  • packages/models/src/models/perplexity.ts (3 hunks)
  • packages/models/src/models/routeway.ts (9 hunks)
  • packages/models/src/models/xai.ts (13 hunks)
  • packages/models/src/models/zai.ts (8 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
  • GitHub Check: build / run
  • GitHub Check: lint / run
  • GitHub Check: e2e-shards (4)
  • GitHub Check: e2e-shards (5)
  • GitHub Check: e2e-shards (1)
  • GitHub Check: e2e-shards (3)
  • GitHub Check: e2e-shards (2)
  • GitHub Check: autofix
🔇 Additional comments (13)
packages/models/src/models/moonshot.ts (1)

9-10: Moonshot Kimi K2 date metadata looks consistent; double-check the exact release day

The added releasedAt / publishedAt fields are correctly shaped and placed. Given the modelName suffix kimi-k2-0711-preview, it might be worth confirming that new Date("2025-07-10") is the intended date and not off by a day.

Also applies to: 87-88

packages/models/src/models/perplexity.ts (1)

9-10: Perplexity Sonar date metadata is consistent and correctly wired

All three Sonar models now include releasedAt / publishedAt with the same date, which matches the pattern of a shared family launch and aligns with the updated ModelDefinition. No issues from a typing or structural perspective.

Also applies to: 34-35, 59-60

packages/models/src/models/minimax.ts (1)

9-10: MiniMax M2 date fields are added correctly

releasedAt / publishedAt are added in the expected place and match the ModelDefinition shape. No further changes needed here.

packages/models/src/models/nousresearch.ts (1)

9-10: Hermes 3 date metadata is coherent with existing lifecycle fields

The new releasedAt / publishedAt values are consistent with the existing deactivatedAt (release before deactivation) and correctly conform to ModelDefinition. Looks good.

packages/models/src/models/google.ts (1)

10-11: Google model release/publish dates are structurally and chronologically consistent

Across the Gemini/Gemma entries, the new releasedAt / publishedAt fields line up with the preview/GA naming and with any existing deactivatedAt values (release before deactivation). Placement and typing are consistent with ModelDefinition, and nothing in the lifecycle metadata stands out as contradictory within this file.

Also applies to: 80-81, 154-155, 228-229, 272-273, 316-317, 360-361, 405-406, 447-448, 490-491, 562-563, 606-607, 651-652, 695-696, 739-740, 783-784, 827-828, 871-872, 911-912, 951-952, 975-976, 999-1000, 1023-1024, 1047-1048, 1071-1072, 1096-1097, 1119-1120

packages/models/src/models/xai.ts (1)

9-10: Date fields successfully added to all xAI models.

The releasedAt and publishedAt fields are consistently applied across all 13 Grok model variants with proper Date object formatting.

Also applies to: 33-34, 56-57, 82-83, 107-108, 133-134, 159-160, 184-185, 208-209, 233-234, 258-259, 282-283, 306-307

packages/models/src/models/llmgateway.ts (1)

9-10: Date fields added to internal routing models.

Both llmgateway models use "2024-01-01" as the release and publication date, which is appropriate for internal routing abstractions.

Also applies to: 38-39

packages/models/src/models/openai.ts (1)

10-11: Date fields successfully added to all OpenAI models.

The temporal metadata is consistently applied across all 22 models with proper formatting. Historical dates align with known model releases (e.g., GPT-4 on 2023-03-14, GPT-3.5 Turbo on 2022-11-30).

Also applies to: 50-51, 99-100, 142-143, 181-182, 220-221, 263-264, 307-308, 351-352, 394-395, 437-438, 478-479, 519-520, 559-560, 599-600, 689-690, 778-779, 867-868, 900-901, 935-936, 964-965, 993-994

packages/models/src/models/zai.ts (1)

9-10: Date fields added to all GLM models.

All 8 Zhipu AI model entries now include properly formatted releasedAt and publishedAt timestamps.

Also applies to: 34-35, 60-61, 85-86, 111-112, 137-138, 161-162, 201-202

packages/models/src/models/deepseek.ts (1)

10-11: Date fields properly added to other DeepSeek models.

The remaining DeepSeek model entries have correctly formatted temporal metadata.

Also applies to: 48-49, 138-139, 163-164

packages/models/src/models/mistral.ts (1)

9-10: Date fields added to all Mistral models.

All 4 Mistral model entries now include consistent temporal metadata with proper Date formatting.

Also applies to: 32-33, 55-56, 79-80

packages/models/src/models/meta.ts (1)

9-10: Date fields successfully added to all Meta/Llama models.

All 10 model entries have properly formatted releasedAt and publishedAt fields with dates that align with the Llama model release timeline.

Also applies to: 73-74, 96-97, 120-121, 143-144, 166-167, 189-190, 236-237, 260-261, 285-286

packages/models/src/models/alibaba.ts (1)

9-10: Date fields successfully added to all Qwen/Alibaba models.

All 32 model entries now include properly formatted temporal metadata. Multiple models share common release dates (e.g., 2024-09-09, 2025-04-30), which aligns with batch release patterns.

Also applies to: 32-33, 55-56, 78-79, 101-102, 124-125, 147-148, 170-171, 194-195, 218-219, 242-243, 267-268, 291-292, 314-315, 338-339, 361-362, 385-386, 409-410, 433-434, 456-457, 479-480, 502-503, 525-526, 549-550, 572-573, 595-596, 620-621, 643-644, 670-671

Comment on lines +10 to +11
releasedAt: new Date("2025-02-19"),
publishedAt: new Date("2025-02-19"),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Reconsider the identical releasedAt and publishedAt values.

Every model entry has releasedAt === publishedAt, which contradicts the PR description stating that releasedAt tracks the provider's release date while publishedAt tracks when llmgateway published the model definition. For a model catalog, these dates would typically differ—models are usually added to the catalog some time after the provider releases them.

Having identical values for both fields makes publishedAt redundant and reduces the value of tracking publication timelines separately.

Consider either:

  1. Setting publishedAt to the actual date when each model was added to the llmgateway catalog
  2. If the actual publication dates aren't known, using releasedAt only and removing publishedAt until accurate data is available
  3. Documenting if same-day publication is genuinely the case for all 16 models

Also applies to: 52-53, 90-91, 132-133, 171-172, 195-196, 253-254, 310-311, 334-335, 391-392, 448-449, 473-474, 497-498, 533-534, 558-559


⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

Verify the accuracy of model release dates.

Several models have release dates that should be verified for accuracy, including future releases beyond my knowledge cutoff (March 2025):

  • Claude 3.7 Sonnet: 2025-02-19
  • Claude Sonnet 4: 2025-05-14
  • Claude Sonnet 4.5: 2025-09-29
  • Claude Haiku 4.5: 2025-09-29
  • Claude Opus 4: 2025-05-14
  • Claude Opus 4.1: 2025-08-05

Inaccurate dates would mislead users about model availability timelines.

Please verify these dates against official Anthropic announcements:

Also applies to: 195-196, 253-254, 310-311, 334-335, 391-392


🌐 Web query:

What are the official release dates for Claude 3.7 Sonnet, Claude Sonnet 4, Claude Sonnet 4.5, Claude Haiku 4.5, Claude Opus 4, and Claude Opus 4.1 from Anthropic?

💡 Result:

  • Claude 3.7 Sonnet — February 24, 2025. [1]
  • Claude Sonnet 4 — May 22, 2025. [1]
  • Claude Sonnet 4.5 — September 29, 2025. [2]
  • Claude Haiku 4.5 — October 15, 2025. [3]
  • Claude Opus 4 — May 22, 2025. [4]
  • Claude Opus 4.1 — August 5, 2025. [5]

Sources:
[1] Anthropic — Claude Sonnet page (announcements). (anthropic.com)
[2] Anthropic — Introducing Claude Sonnet 4.5 (news). (anthropic.com)
[3] Anthropic — Claude Haiku 4.5 page. (anthropic.com)
[4] Anthropic — Claude Opus page (announcements). (anthropic.com)
[5] Anthropic — Claude Opus 4.1 announcement. (anthropic.com)

Citations:


Update model release dates to match official Anthropic announcements.

The following release dates are inaccurate and should be corrected:

  • Claude 3.7 Sonnet: change 2025-02-19 to 2025-02-24 (official: February 24, 2025)
  • Claude Sonnet 4: change 2025-05-14 to 2025-05-22 (official: May 22, 2025)
  • Claude Haiku 4.5: change 2025-09-29 to 2025-10-15 (official: October 15, 2025)
  • Claude Opus 4: change 2025-05-14 to 2025-05-22 (official: May 22, 2025)

Claude Sonnet 4.5 (2025-09-29) and Claude Opus 4.1 (2025-08-05) are correct.

Lines affected: 10-11, 195-196, 253-254, 310-311, 334-335, 391-392

🤖 Prompt for AI Agents
In packages/models/src/models/anthropic.ts around lines 10-11, 195-196, 253-254,
310-311, 334-335, and 391-392, several model release/published Date(...) values
are incorrect; update them to match Anthropic's official announcements: change
Claude 3.7 Sonnet entries from 2025-02-19 to new Date("2025-02-24"), change
Claude Sonnet 4 and Claude Opus 4 entries from 2025-05-14 to new
Date("2025-05-22"), and change Claude Haiku 4.5 entries from 2025-09-29 to new
Date("2025-10-15"); leave Claude Sonnet 4.5 (2025-09-29) and Claude Opus 4.1
(2025-08-05) as-is.

@steebchen
steebchen added this pull request to the merge queue Nov 24, 2025
Merged via the queue into main with commit 6639d99 Nov 24, 2025
13 of 14 checks passed
@steebchen
steebchen deleted the add-model-date-fields branch November 24, 2025 12:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant