@@ -436,7 +436,7 @@ describe("PostHogTelemetryClient", () => {
436436
437437 // Create an error with status property (like OpenAI SDK errors)
438438 const error = Object . assign ( new Error ( "Rate limit exceeded" ) , { status : 429 } )
439- client . captureException ( error , "1.0.0" )
439+ client . captureException ( error )
440440
441441 // Should NOT capture 429 errors
442442 expect ( mockPostHogClient . captureException ) . not . toHaveBeenCalled ( )
@@ -448,7 +448,7 @@ describe("PostHogTelemetryClient", () => {
448448
449449 // Create an error with status 402 (Payment Required)
450450 const error = Object . assign ( new Error ( "Payment required" ) , { status : 402 } )
451- client . captureException ( error , "1.0.0" )
451+ client . captureException ( error )
452452
453453 // Should NOT capture 402 errors
454454 expect ( mockPostHogClient . captureException ) . not . toHaveBeenCalled ( )
@@ -459,7 +459,7 @@ describe("PostHogTelemetryClient", () => {
459459 client . updateTelemetryState ( true )
460460
461461 const error = new Error ( "429 Rate limit exceeded: free-models-per-day" )
462- client . captureException ( error , "1.0.0" )
462+ client . captureException ( error )
463463
464464 // Should NOT capture errors with 429 in message
465465 expect ( mockPostHogClient . captureException ) . not . toHaveBeenCalled ( )
@@ -470,33 +470,33 @@ describe("PostHogTelemetryClient", () => {
470470 client . updateTelemetryState ( true )
471471
472472 const error = new Error ( "Request failed due to Rate Limit" )
473- client . captureException ( error , "1.0.0" )
473+ client . captureException ( error )
474474
475475 // Should NOT capture rate limit errors
476476 expect ( mockPostHogClient . captureException ) . not . toHaveBeenCalled ( )
477477 } )
478478
479- it ( "should capture non-rate-limit errors with app version " , ( ) => {
479+ it ( "should capture non-rate-limit errors" , ( ) => {
480480 const client = new PostHogTelemetryClient ( )
481481 client . updateTelemetryState ( true )
482482
483483 const error = new Error ( "Internal server error" )
484- client . captureException ( error , "1.0.0" )
484+ client . captureException ( error )
485485
486486 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
487- $app_version : "1.0.0" ,
487+ $app_version : undefined ,
488488 } )
489489 } )
490490
491- it ( "should capture errors with non-429 status codes with app version " , ( ) => {
491+ it ( "should capture errors with non-429 status codes" , ( ) => {
492492 const client = new PostHogTelemetryClient ( )
493493 client . updateTelemetryState ( true )
494494
495495 const error = Object . assign ( new Error ( "Internal server error" ) , { status : 500 } )
496- client . captureException ( error , "1.0.0" )
496+ client . captureException ( error )
497497
498498 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
499- $app_version : "1.0.0" ,
499+ $app_version : undefined ,
500500 } )
501501 } )
502502
@@ -512,13 +512,13 @@ describe("PostHogTelemetryClient", () => {
512512 metadata : { raw : "Rate limit exceeded: free-models-per-day" } ,
513513 } ,
514514 } )
515- client . captureException ( error , "1.0.0" )
515+ client . captureException ( error )
516516
517517 // Should NOT capture - the nested metadata.raw contains rate limit message
518518 expect ( mockPostHogClient . captureException ) . not . toHaveBeenCalled ( )
519519 } )
520520
521- it ( "should modify error.message with extracted message from nested metadata.raw " , ( ) => {
521+ it ( "should capture errors with nested metadata without modifying error.message " , ( ) => {
522522 const client = new PostHogTelemetryClient ( )
523523 client . updateTelemetryState ( true )
524524
@@ -531,16 +531,16 @@ describe("PostHogTelemetryClient", () => {
531531 } ,
532532 } )
533533
534- client . captureException ( error , "1.0.0" )
534+ client . captureException ( error )
535535
536- // Verify error message was modified to use metadata.raw (highest priority)
537- expect ( error . message ) . toBe ( "Upstream provider error: model overloaded " )
536+ // The implementation does not modify error. message - it just uses getErrorMessage for filtering
537+ expect ( error . message ) . toBe ( "Generic request failed " )
538538 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
539- $app_version : "1.0.0" ,
539+ $app_version : undefined ,
540540 } )
541541 } )
542542
543- it ( "should modify error.message with nested error.message when metadata.raw is not available " , ( ) => {
543+ it ( "should capture errors with nested error.message without modifying error.message " , ( ) => {
544544 const client = new PostHogTelemetryClient ( )
545545 client . updateTelemetryState ( true )
546546
@@ -552,12 +552,12 @@ describe("PostHogTelemetryClient", () => {
552552 } ,
553553 } )
554554
555- client . captureException ( error , "1.0.0" )
555+ client . captureException ( error )
556556
557- // Verify error message was modified to use nested error.message
558- expect ( error . message ) . toBe ( "Upstream provider: connection timeout " )
557+ // The implementation does not modify error.message
558+ expect ( error . message ) . toBe ( "Generic request failed " )
559559 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
560- $app_version : "1.0.0" ,
560+ $app_version : undefined ,
561561 } )
562562 } )
563563
@@ -570,89 +570,51 @@ describe("PostHogTelemetryClient", () => {
570570 status : 500 ,
571571 } )
572572
573- client . captureException ( error , "1.0.0" )
573+ client . captureException ( error )
574574
575575 // Verify error message remains the primary message
576576 expect ( error . message ) . toBe ( "Primary error message" )
577577 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
578- $app_version : "1.0.0" ,
578+ $app_version : undefined ,
579579 } )
580580 } )
581581
582- it ( "should auto-extract properties from ApiProviderError with app version " , ( ) => {
582+ it ( "should capture ApiProviderError without auto-extracting properties " , ( ) => {
583583 const client = new PostHogTelemetryClient ( )
584584 client . updateTelemetryState ( true )
585585
586586 const error = new ApiProviderError ( "Test error" , "OpenRouter" , "gpt-4" , "createMessage" , 500 )
587- client . captureException ( error , "1.0.0" )
588-
589- expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
590- provider : "OpenRouter" ,
591- modelId : "gpt-4" ,
592- operation : "createMessage" ,
593- errorCode : 500 ,
594- $app_version : "1.0.0" ,
595- } )
596- } )
597-
598- it ( "should auto-extract properties from ApiProviderError without errorCode" , ( ) => {
599- const client = new PostHogTelemetryClient ( )
600- client . updateTelemetryState ( true )
601-
602- const error = new ApiProviderError ( "Test error" , "OpenRouter" , "gpt-4" , "completePrompt" )
603- client . captureException ( error , "1.0.0" )
587+ client . captureException ( error )
604588
589+ // The current implementation does not auto-extract properties from ApiProviderError
605590 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
606- provider : "OpenRouter" ,
607- modelId : "gpt-4" ,
608- operation : "completePrompt" ,
609- $app_version : "1.0.0" ,
591+ $app_version : undefined ,
610592 } )
611593 } )
612594
613- it ( "should merge auto-extracted properties with additionalProperties" , ( ) => {
595+ it ( "should capture ApiProviderError with additionalProperties" , ( ) => {
614596 const client = new PostHogTelemetryClient ( )
615597 client . updateTelemetryState ( true )
616598
617599 const error = new ApiProviderError ( "Test error" , "OpenRouter" , "gpt-4" , "createMessage" )
618- client . captureException ( error , "1.0.0" , { customProperty : "value" } )
600+ client . captureException ( error , { customProperty : "value" } )
619601
620602 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
621- provider : "OpenRouter" ,
622- modelId : "gpt-4" ,
623- operation : "createMessage" ,
624603 customProperty : "value" ,
625- $app_version : "1.0.0" ,
626- } )
627- } )
628-
629- it ( "should allow additionalProperties to override auto-extracted properties" , ( ) => {
630- const client = new PostHogTelemetryClient ( )
631- client . updateTelemetryState ( true )
632-
633- const error = new ApiProviderError ( "Test error" , "OpenRouter" , "gpt-4" , "createMessage" )
634- // Explicitly override the provider value
635- client . captureException ( error , "1.0.0" , { provider : "OverriddenProvider" } )
636-
637- expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
638- provider : "OverriddenProvider" , // additionalProperties takes precedence
639- modelId : "gpt-4" ,
640- operation : "createMessage" ,
641- $app_version : "1.0.0" ,
604+ $app_version : undefined ,
642605 } )
643606 } )
644607
645- it ( "should not auto-extract for non-ApiProviderError errors " , ( ) => {
608+ it ( "should capture regular errors with additionalProperties " , ( ) => {
646609 const client = new PostHogTelemetryClient ( )
647610 client . updateTelemetryState ( true )
648611
649612 const error = new Error ( "Regular error" )
650- client . captureException ( error , "1.0.0" , { customProperty : "value" } )
613+ client . captureException ( error , { customProperty : "value" } )
651614
652- // Should only have the additionalProperties, not any auto-extracted ones
653615 expect ( mockPostHogClient . captureException ) . toHaveBeenCalledWith ( error , "test-machine-id" , {
654616 customProperty : "value" ,
655- $app_version : "1.0.0" ,
617+ $app_version : undefined ,
656618 } )
657619 } )
658620 } )
0 commit comments