From bd16872d21fa9cd49d534ed0965941f34d766c1b Mon Sep 17 00:00:00 2001 From: James Kebinger Date: Fri, 19 Sep 2025 16:36:17 -0500 Subject: [PATCH 1/2] Update URL transformations for new hostname patterns MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Support both old (belt/suspenders) and new (primary/secondary) hostname patterns for telemetry and stream URL transformations: - Update telemetry destination transformation in Options to handle primary/secondary - Update SSE stream URL transformation to handle primary/secondary - Maintain backward compatibility with belt/suspenders hostnames 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- lib/reforge/options.rb | 8 ++++---- lib/reforge/sse_config_client.rb | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/reforge/options.rb b/lib/reforge/options.rb index 31b5650..3b4eb39 100644 --- a/lib/reforge/options.rb +++ b/lib/reforge/options.rb @@ -43,8 +43,8 @@ module DATASOURCES DEFAULT_MAX_EVAL_SUMMARIES = 100_000 DEFAULT_SOURCES = [ - "https://belt.prefab.cloud", - "https://suspenders.prefab.cloud", + "https://primary.reforge.com", + "https://secondary.reforge.com", ].freeze private def init( @@ -116,9 +116,9 @@ module DATASOURCES @config_sources = @sources @telemetry_destination = @sources.select do |source| - source.start_with?('https://') && (source.include?("belt") || source.include?("suspenders")) + source.start_with?('https://') && (source.include?("primary") || source.include?("secondary") || source.include?("belt") || source.include?("suspenders")) end.map do |source| - source.sub(/(belt|suspenders)\./, 'telemetry.') + source.sub(/(primary|secondary)\./, 'telemetry.').sub(/(belt|suspenders)\./, 'telemetry.') end[0] if reforge_api_url diff --git a/lib/reforge/sse_config_client.rb b/lib/reforge/sse_config_client.rb index b667e31..f1f1df9 100644 --- a/lib/reforge/sse_config_client.rb +++ b/lib/reforge/sse_config_client.rb @@ -106,7 +106,7 @@ def source @source_index = 0 end - return @prefab_options.sse_sources[@source_index].sub(/(belt|suspenders)\./, 'stream.') + return @prefab_options.sse_sources[@source_index].sub(/(primary|secondary)\./, 'stream.').sub(/(belt|suspenders)\./, 'stream.') end end end From ed9bfaf452a78877a7394c7e9a647f1acc2d5dbc Mon Sep 17 00:00:00 2001 From: James Kebinger Date: Fri, 19 Sep 2025 16:40:12 -0500 Subject: [PATCH 2/2] Update test hostnames to new goatsofreforge.com domains MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update integration and SSE client tests to use the new hostname patterns: - Replace belt/suspenders.staging-prefab.cloud with primary/secondary.goatsofreforge.com - Update api.staging-prefab.cloud to api.goatsofreforge.com - Ensure test expectations match new URL transformation logic 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- test/integration_test.rb | 4 ++-- test/test_sse_config_client.rb | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/integration_test.rb b/test/integration_test.rb index 1882cca..f35b2ec 100644 --- a/test/integration_test.rb +++ b/test/integration_test.rb @@ -136,8 +136,8 @@ def base_client_options prefab_datasources: Reforge::Options::DATASOURCES::ALL, sdk_key: ENV['REFORGE_INTEGRATION_TEST_SDK_KEY'], sources: [ - 'https://belt.staging-prefab.cloud', - 'https://suspenders.staging-prefab.cloud', + 'https://primary.goatsofreforge.com', + 'https://secondary.goatsofreforge.com', ], global_context: @global_context || {}, }.merge(@client_overrides)) diff --git a/test/test_sse_config_client.rb b/test/test_sse_config_client.rb index 049000c..08ea401 100644 --- a/test/test_sse_config_client.rb +++ b/test/test_sse_config_client.rb @@ -7,7 +7,7 @@ class TestSSEConfigClient < Minitest::Test def test_client sources = [ - 'https://belt.staging-prefab.cloud/' + 'https://primary.goatsofreforge.com' ] options = Reforge::Options.new(sources: sources, sdk_key: ENV.fetch('REFORGE_INTEGRATION_TEST_SDK_KEY', nil)) @@ -17,7 +17,7 @@ def test_client client = Reforge::SSEConfigClient.new(options, config_loader) assert_equal 4, client.headers['Last-Event-ID'] - assert_equal "https://stream.staging-prefab.cloud", client.source + assert_equal "https://stream.goatsofreforge.com", client.source result = nil @@ -37,7 +37,7 @@ def test_client def test_failing_over sources = [ 'https://does.not.exist.staging-prefab.cloud/', - 'https://api.staging-prefab.cloud/' + 'https://api.goatsofreforge.com/' ] prefab_options = Reforge::Options.new(sources: sources, sdk_key: ENV.fetch('REFORGE_INTEGRATION_TEST_SDK_KEY', nil))