← WatchCI

Run 1785812354-97969-7791

Projectsmartserve
Statusfailure
Kindpr
Reffeat/vlm
PR115
SHAff4faa936c597f7a6edeb0190ab030875e101d51
Exit8
Finished2026-08-04 11:09:45
Duration627s

Full log

[100%] Building CXX object sdk/CMakeFiles/smartserve_sdk.dir/src/gewu_smartserve_api.cpp.o
[100%] Linking CXX static library libgewu_smartserve.a
[100%] Built target smartserve_sdk
[100%] Building CXX object test/CMakeFiles/smartserve_api_test.dir/api/gewu_smartserve_api_test.cpp.o
[100%] Linking CXX executable smartserve_api_test
[100%] Built target smartserve_api_test
[  2%] Built target smartserve_utils
[ 84%] Built target libcurl_static
[ 94%] Built target smartserve_core
[ 97%] Built target smartserve_llamacpp_plugin
[ 97%] Built target smartserve_engine_cabi
[100%] Built target smartserve_sdk
[  0%] Built target gtest
[  2%] Built target smartserve_utils
[  3%] Built target gtest_main
[ 85%] Built target libcurl_static
[ 94%] Built target smartserve_core
[ 97%] Built target smartserve_llamacpp_plugin
[ 97%] Built target smartserve_engine_cabi
[ 98%] Building CXX object test/CMakeFiles/smartserve_model_runtime_test.dir/integration/model_runtime/smart_serve_runtime_test.cpp.o
[ 98%] Building CXX object test/CMakeFiles/smartserve_model_runtime_test.dir/integration/model_runtime/multi_session_runtime_test.cpp.o
[100%] Linking CXX executable smartserve_model_runtime_test
ld: warning: ignoring duplicate libraries: '../libsmartserve_core.a'
[100%] Built target smartserve_model_runtime_test

✓ Build completed successfully

========================================
Step 7/7: Running Tests
========================================

Test project /Users/linhan/repos/smartserve/build/macos
        Start   1: internal.CabiEngineCreatorTest.RejectsNullGetInterface
  1/211 Test   #1: internal.CabiEngineCreatorTest.RejectsNullGetInterface ...........................................   Passed    0.05 sec
        Start   2: internal.CabiEngineCreatorTest.RejectsVersionMismatch
  2/211 Test   #2: internal.CabiEngineCreatorTest.RejectsVersionMismatch ............................................   Passed    0.05 sec
        Start   3: internal.CabiEngineCreatorTest.RejectsIncompleteFunctionTable
  3/211 Test   #3: internal.CabiEngineCreatorTest.RejectsIncompleteFunctionTable ....................................   Passed    0.04 sec
        Start   4: internal.CabiEngineCreatorTest.RejectsInvalidSessionDependencies
  4/211 Test   #4: internal.CabiEngineCreatorTest.RejectsInvalidSessionDependencies .................................   Passed    0.04 sec
        Start   5: internal.CabiEngineCreatorTest.ExpectsDirectoryIsConfigurable
  5/211 Test   #5: internal.CabiEngineCreatorTest.ExpectsDirectoryIsConfigurable ....................................   Passed    0.02 sec
        Start   6: internal.CabiEngineCreatorTest.CreatesModelAndSessionThroughEngineAbi
  6/211 Test   #6: internal.CabiEngineCreatorTest.CreatesModelAndSessionThroughEngineAbi ............................   Passed    0.02 sec
        Start   7: internal.CabiEngineCreatorTest.SessionEvalAppendsAbiResponseChunks
  7/211 Test   #7: internal.CabiEngineCreatorTest.SessionEvalAppendsAbiResponseChunks ...............................   Passed    0.02 sec
        Start   8: internal.CabiEngineCreatorTest.SessionEvalTreatsAbortFinishReasonAsRequestFailure
  8/211 Test   #8: internal.CabiEngineCreatorTest.SessionEvalTreatsAbortFinishReasonAsRequestFailure ................   Passed    0.05 sec
        Start   9: internal.CabiEngineCreatorTest.SessionEvalKeepsSessionAfterSubmitFailure
  9/211 Test   #9: internal.CabiEngineCreatorTest.SessionEvalKeepsSessionAfterSubmitFailure .........................   Passed    0.04 sec
        Start  10: internal.CabiEngineCreatorTest.SessionEvalTreatsLegacySubmitFailureAsFatal
 10/211 Test  #10: internal.CabiEngineCreatorTest.SessionEvalTreatsLegacySubmitFailureAsFatal .......................   Passed    0.04 sec
        Start  11: internal.CabiEngineCreatorTest.SessionEvalKeepsSessionAfterGetResponseFailure
 11/211 Test  #11: internal.CabiEngineCreatorTest.SessionEvalKeepsSessionAfterGetResponseFailure ....................   Passed    0.04 sec
        Start  12: internal.CabiEngineCreatorTest.SessionEvalTreatsRequestCleanupFailureAsFatal
 12/211 Test  #12: internal.CabiEngineCreatorTest.SessionEvalTreatsRequestCleanupFailureAsFatal .....................   Passed    0.04 sec
        Start  13: internal.CabiEngineCreatorTest.SessionEvalTreatsInvalidSessionAsFatal
 13/211 Test  #13: internal.CabiEngineCreatorTest.SessionEvalTreatsInvalidSessionAsFatal ............................   Passed    0.05 sec
        Start  14: internal.CabiEngineCreatorTest.SessionEvalTreatsInvalidSessionResponseAsFatal
 14/211 Test  #14: internal.CabiEngineCreatorTest.SessionEvalTreatsInvalidSessionResponseAsFatal ....................   Passed    0.05 sec
        Start  15: internal.CabiEngineCreatorTest.SessionEvalUsesFormattedPromptForNonObjectInput
 15/211 Test  #15: internal.CabiEngineCreatorTest.SessionEvalUsesFormattedPromptForNonObjectInput ...................   Passed    0.02 sec
        Start  16: internal.CabiEngineCreatorTest.SessionEvalCancelsBlockedAbiRequest
 16/211 Test  #16: internal.CabiEngineCreatorTest.SessionEvalCancelsBlockedAbiRequest ...............................   Passed    0.02 sec
        Start  17: internal.GewuModelTest.CreateModelRequiresExplicitIdAndModelPath
 17/211 Test  #17: internal.GewuModelTest.CreateModelRequiresExplicitIdAndModelPath .................................   Passed    0.05 sec
        Start  18: internal.GewuModelTest.CreateModelUsesOriginalModelDirectoryWithoutModifyingApiConfig
 18/211 Test  #18: internal.GewuModelTest.CreateModelUsesOriginalModelDirectoryWithoutModifyingApiConfig ............   Passed    0.01 sec
        Start  19: internal.ModelDownloaderTest.SHA256Calculation
 19/211 Test  #19: internal.ModelDownloaderTest.SHA256Calculation ...................................................   Passed    0.02 sec
        Start  20: internal.ModelDownloaderTest.SHA256OfEmptyFile
 20/211 Test  #20: internal.ModelDownloaderTest.SHA256OfEmptyFile ...................................................   Passed    0.02 sec
        Start  21: internal.ModelDownloaderTest.SHA256FileNotFound
 21/211 Test  #21: internal.ModelDownloaderTest.SHA256FileNotFound ..................................................   Passed    0.02 sec
        Start  22: internal.ModelDownloaderTest.VerifyChecksumMatches
 22/211 Test  #22: internal.ModelDownloaderTest.VerifyChecksumMatches ...............................................   Passed    0.02 sec
        Start  23: internal.ModelDownloaderTest.VerifyChecksumAcceptsSha256Prefix
 23/211 Test  #23: internal.ModelDownloaderTest.VerifyChecksumAcceptsSha256Prefix ...................................   Passed    0.02 sec
        Start  24: internal.ModelDownloaderTest.VerifyChecksumMismatch
 24/211 Test  #24: internal.ModelDownloaderTest.VerifyChecksumMismatch ..............................................   Passed    0.05 sec
        Start  25: internal.ModelDownloaderTest.VerifyChecksumFileNotFound
 25/211 Test  #25: internal.ModelDownloaderTest.VerifyChecksumFileNotFound ..........................................   Passed    0.04 sec
        Start  26: internal.ModelDownloaderTest.ModelReadinessChecksumCacheInvalidatesWhenFileChanges
 26/211 Test  #26: internal.ModelDownloaderTest.ModelReadinessChecksumCacheInvalidatesWhenFileChanges ...............   Passed    0.01 sec
        Start  27: internal.ModelDownloaderTest.GetProgressBeforeDownload
 27/211 Test  #27: internal.ModelDownloaderTest.GetProgressBeforeDownload ...........................................   Passed    0.02 sec
        Start  28: internal.ModelDownloaderTest.ChecksumWithSha256Prefix
 28/211 Test  #28: internal.ModelDownloaderTest.ChecksumWithSha256Prefix ............................................   Passed    0.02 sec
        Start  29: internal.ModelDownloaderTest.ModelFileManagerDownloadsMultipleFiles
 29/211 Test  #29: internal.ModelDownloaderTest.ModelFileManagerDownloadsMultipleFiles ..............................   Passed    0.02 sec
        Start  30: internal.ModelDownloaderTest.ModelFileManagerEmitsFinalProgressForAlreadyCompleteFile
 30/211 Test  #30: internal.ModelDownloaderTest.ModelFileManagerEmitsFinalProgressForAlreadyCompleteFile ............   Passed    0.02 sec
        Start  31: internal.ModelDownloaderTest.ModelFileManagerRejectsDestinationOutsideStorageRoot
 31/211 Test  #31: internal.ModelDownloaderTest.ModelFileManagerRejectsDestinationOutsideStorageRoot ................   Passed    0.05 sec
        Start  32: internal.ModelDownloaderTest.ModelFileMetadataRoundTripsAndListsInstalledModels
 32/211 Test  #32: internal.ModelDownloaderTest.ModelFileMetadataRoundTripsAndListsInstalledModels ..................   Passed    0.01 sec
        Start  33: internal.ModelDownloaderTest.ModelFileMetadataRejectsInvalidJsonAndMissingFields
 33/211 Test  #33: internal.ModelDownloaderTest.ModelFileMetadataRejectsInvalidJsonAndMissingFields .................   Passed    0.02 sec
        Start  34: internal.ModelDownloaderTest.ModelFileManagerSingletonAndEmptyInstalledList
 34/211 Test  #34: internal.ModelDownloaderTest.ModelFileManagerSingletonAndEmptyInstalledList ......................   Passed    0.02 sec
        Start  35: internal.ModelDownloaderTest.ModelFileManagerGetInstalledModelInfoReturnsSavedEntry
 35/211 Test  #35: internal.ModelDownloaderTest.ModelFileManagerGetInstalledModelInfoReturnsSavedEntry ..............   Passed    0.02 sec
        Start  36: internal.ModelDownloaderTest.ModelFileManagerRejectsUnsafeMetadataPaths
 36/211 Test  #36: internal.ModelDownloaderTest.ModelFileManagerRejectsUnsafeMetadataPaths ..........................   Passed    0.02 sec
        Start  37: internal.ModelDownloaderTest.ModelFileManagerPauseResumeRequeuesRunningAndPending
 37/211 Test  #37: internal.ModelDownloaderTest.ModelFileManagerPauseResumeRequeuesRunningAndPending ................   Passed    0.05 sec
        Start  38: internal.ModelConfigTest.GetModelConfigPath
 38/211 Test  #38: internal.ModelConfigTest.GetModelConfigPath ......................................................   Passed    0.02 sec
        Start  39: internal.ModelConfigTest.GetModelDir
 39/211 Test  #39: internal.ModelConfigTest.GetModelDir .............................................................   Passed    0.02 sec
        Start  40: internal.ModelConfigTest.LoadFromFile
 40/211 Test  #40: internal.ModelConfigTest.LoadFromFile ............................................................   Passed    0.02 sec
        Start  41: internal.ModelConfigTest.GetAllModelIds
 41/211 Test  #41: internal.ModelConfigTest.GetAllModelIds ..........................................................   Passed    0.02 sec
        Start  42: internal.ModelConfigTest.GetModelConfig
 42/211 Test  #42: internal.ModelConfigTest.GetModelConfig ..........................................................   Passed    0.01 sec
        Start  43: internal.ModelConfigTest.GetModelConfigNotFound
 43/211 Test  #43: internal.ModelConfigTest.GetModelConfigNotFound ..................................................   Passed    0.02 sec
        Start  44: internal.ModelConfigTest.ParseOptionalImageMinTokens
 44/211 Test  #44: internal.ModelConfigTest.ParseOptionalImageMinTokens .............................................   Passed    0.02 sec
        Start  45: internal.ModelConfigTest.RejectInvalidImageMinTokens
 45/211 Test  #45: internal.ModelConfigTest.RejectInvalidImageMinTokens .............................................   Passed    0.05 sec
        Start  46: internal.ModelConfigTest.ParseMultipleModelsPreservesOrder
 46/211 Test  #46: internal.ModelConfigTest.ParseMultipleModelsPreservesOrder .......................................   Passed    0.01 sec
        Start  47: internal.ModelConfigTest.ParseChecksumField
 47/211 Test  #47: internal.ModelConfigTest.ParseChecksumField ......................................................   Passed    0.01 sec
        Start  48: internal.ModelConfigTest.ParseSha256Field
 48/211 Test  #48: internal.ModelConfigTest.ParseSha256Field ........................................................   Passed    0.02 sec
        Start  49: internal.ModelConfigTest.ParseLoraWeightFileField
 49/211 Test  #49: internal.ModelConfigTest.ParseLoraWeightFileField ................................................   Passed    0.01 sec
        Start  50: internal.ModelConfigTest.CapabilityFieldsAreOptionalBooleans
 50/211 Test  #50: internal.ModelConfigTest.CapabilityFieldsAreOptionalBooleans .....................................   Passed    0.04 sec
        Start  51: internal.ModelConfigTest.InvalidJson
 51/211 Test  #51: internal.ModelConfigTest.InvalidJson .............................................................   Passed    0.04 sec
        Start  52: internal.ModelConfigTest.EmptyModelsArray
 52/211 Test  #52: internal.ModelConfigTest.EmptyModelsArray ........................................................   Passed    0.01 sec
        Start  53: internal.ModelConfigTest.MissingModelsArrayRejected
 53/211 Test  #53: internal.ModelConfigTest.MissingModelsArrayRejected ..............................................   Passed    0.05 sec
        Start  54: internal.ModelManagerTest.RegisterAndGetCreatorSuccess
 54/211 Test  #54: internal.ModelManagerTest.RegisterAndGetCreatorSuccess ...........................................   Passed    0.01 sec
        Start  55: internal.ModelManagerTest.RegisterDuplicateCreatorFails
 55/211 Test  #55: internal.ModelManagerTest.RegisterDuplicateCreatorFails ..........................................   Passed    0.01 sec
        Start  56: internal.ModelManagerTest.GetOrCreateModelCachesInstance
 56/211 Test  #56: internal.ModelManagerTest.GetOrCreateModelCachesInstance .........................................   Passed    0.01 sec
        Start  57: internal.ModelManagerTest.GetOrCreateModelReturnsNullWhenCreatorNotRegistered
 57/211 Test  #57: internal.ModelManagerTest.GetOrCreateModelReturnsNullWhenCreatorNotRegistered ....................   Passed    0.05 sec
        Start  58: internal.ModelManagerTest.GetOrCreateModelReturnsNullForInvalidAdapterResConfig
 58/211 Test  #58: internal.ModelManagerTest.GetOrCreateModelReturnsNullForInvalidAdapterResConfig ..................   Passed    0.05 sec
        Start  59: internal.ModelManagerTest.UnregisterRemovesCreator
 59/211 Test  #59: internal.ModelManagerTest.UnregisterRemovesCreator ...............................................   Passed    0.01 sec
        Start  60: internal.ModelManagerTest.UnregisterMissingCreatorFails
 60/211 Test  #60: internal.ModelManagerTest.UnregisterMissingCreatorFails ..........................................   Passed    0.02 sec
        Start  61: internal.ModelManagerTest.RemoveModelReturnsOwnedInstanceAndClearsCache
 61/211 Test  #61: internal.ModelManagerTest.RemoveModelReturnsOwnedInstanceAndClearsCache ..........................   Passed    0.02 sec
        Start  62: internal.OpenAiRequestUtilTest.DetectsOpenAiJson
 62/211 Test  #62: internal.OpenAiRequestUtilTest.DetectsOpenAiJson .................................................   Passed    0.02 sec
        Start  63: internal.OpenAiRequestUtilTest.ParseRoleContentMessages
 63/211 Test  #63: internal.OpenAiRequestUtilTest.ParseRoleContentMessages ..........................................   Passed    0.02 sec
        Start  64: internal.OpenAiRequestUtilTest.ParseIgnoresInvalidEntries
 64/211 Test  #64: internal.OpenAiRequestUtilTest.ParseIgnoresInvalidEntries ........................................   Passed    0.01 sec
        Start  65: internal.OpenAiRequestUtilTest.ParseTextArrayContent
 65/211 Test  #65: internal.OpenAiRequestUtilTest.ParseTextArrayContent .............................................   Passed    0.02 sec
        Start  66: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromTextArrayContent
 66/211 Test  #66: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromTextArrayContent .............................   Passed    0.02 sec
        Start  67: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromMessages
 67/211 Test  #67: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromMessages .....................................   Passed    0.02 sec
        Start  68: internal.OpenAiRequestUtilTest.BuildChatMLPromptAddsAssistantStartForUserTurn
 68/211 Test  #68: internal.OpenAiRequestUtilTest.BuildChatMLPromptAddsAssistantStartForUserTurn ....................   Passed    0.02 sec
        Start  69: internal.OpenAiRequestUtilTest.BuildFlatPromptFromMessages
 69/211 Test  #69: internal.OpenAiRequestUtilTest.BuildFlatPromptFromMessages .......................................   Passed    0.02 sec
        Start  70: internal.OpenAiRequestUtilTest.BuildFlatPromptFallbackForPlainText
 70/211 Test  #70: internal.OpenAiRequestUtilTest.BuildFlatPromptFallbackForPlainText ...............................   Passed    0.02 sec
        Start  71: internal.OpenAiRequestUtilTest.InvalidJsonReturnsEmptyMessages
 71/211 Test  #71: internal.OpenAiRequestUtilTest.InvalidJsonReturnsEmptyMessages ...................................   Passed    0.02 sec
        Start  72: internal.TaskStreamTest.CallbackInvokedWithCorrectChunks
 72/211 Test  #72: internal.TaskStreamTest.CallbackInvokedWithCorrectChunks .........................................   Passed    0.02 sec
        Start  73: internal.TaskStreamTest.CallbackNotInvokedAfterClear
 73/211 Test  #73: internal.TaskStreamTest.CallbackNotInvokedAfterClear .............................................   Passed    0.02 sec
        Start  74: internal.TaskStreamTest.AppendResultWithoutCallbackAccumulatesResult
 74/211 Test  #74: internal.TaskStreamTest.AppendResultWithoutCallbackAccumulatesResult .............................   Passed    0.02 sec
        Start  75: internal.TaskStreamTest.DoneMarksTaskFinished
 75/211 Test  #75: internal.TaskStreamTest.DoneMarksTaskFinished ....................................................   Passed    0.02 sec
        Start  76: internal.TaskStreamTest.CrossThreadWakeupOnDone
 76/211 Test  #76: internal.TaskStreamTest.CrossThreadWakeupOnDone ..................................................   Passed    0.04 sec
        Start  77: internal.TaskStreamTest.CancelMarksDoneAndWakesWaiter
 77/211 Test  #77: internal.TaskStreamTest.CancelMarksDoneAndWakesWaiter ............................................   Passed    0.04 sec
        Start  78: internal.TaskStreamTest.CancelClearsCallbackBlocksFutureAppend
 78/211 Test  #78: internal.TaskStreamTest.CancelClearsCallbackBlocksFutureAppend ...................................   Passed    0.02 sec
        Start  79: internal.TaskStreamTest.CancelIsIdempotentAfterFinished
 79/211 Test  #79: internal.TaskStreamTest.CancelIsIdempotentAfterFinished ..........................................   Passed    0.02 sec
        Start  80: interface.ClientApiTest.MalformedJsonReturnsBadRequest
 80/211 Test  #80: interface.ClientApiTest.MalformedJsonReturnsBadRequest ...........................................   Passed    0.05 sec
        Start  81: interface.ClientApiTest.UnsupportedRequestTypeReturnsBadRequest
 81/211 Test  #81: interface.ClientApiTest.UnsupportedRequestTypeReturnsBadRequest ..................................   Passed    0.02 sec
        Start  82: interface.ClientApiTest.ChatCompletionsRejectsMissingRequiredFields
 82/211 Test  #82: interface.ClientApiTest.ChatCompletionsRejectsMissingRequiredFields ..............................   Passed    0.02 sec
        Start  83: interface.ClientApiTest.ChatCompletionsRejectsInvalidStreamType
 83/211 Test  #83: interface.ClientApiTest.ChatCompletionsRejectsInvalidStreamType ..................................   Passed    0.02 sec
        Start  84: interface.ClientApiTest.ChatCompletionsRejectsNonBooleanEnableLoraBeforeScheduling
 84/211 Test  #84: interface.ClientApiTest.ChatCompletionsRejectsNonBooleanEnableLoraBeforeScheduling ...............   Passed    0.05 sec
        Start  85: interface.ClientApiTest.ChatCompletionsRejectsNonObjectStreamOptions
 85/211 Test  #85: interface.ClientApiTest.ChatCompletionsRejectsNonObjectStreamOptions .............................   Passed    0.01 sec
        Start  86: interface.ClientApiTest.ChatCompletionsRejectsNonBooleanIncludeUsage
 86/211 Test  #86: interface.ClientApiTest.ChatCompletionsRejectsNonBooleanIncludeUsage .............................   Passed    0.02 sec
        Start  87: interface.ClientApiTest.ChatCompletionsRejectsInvalidMessagesBeforeScheduling
 87/211 Test  #87: interface.ClientApiTest.ChatCompletionsRejectsInvalidMessagesBeforeScheduling ....................   Passed    0.02 sec
        Start  88: interface.ClientApiServiceTest.ListModelsReturnsOpenAIListShape
 88/211 Test  #88: interface.ClientApiServiceTest.ListModelsReturnsOpenAIListShape ..................................   Passed    0.05 sec
        Start  89: interface.ClientApiServiceTest.ChatCompletionsRejectsExplicitReasoningForUnsupportedModel
 89/211 Test  #89: interface.ClientApiServiceTest.ChatCompletionsRejectsExplicitReasoningForUnsupportedModel ........   Passed    0.04 sec
        Start  90: interface.ClientApiServiceTest.ListEnginesReturnsArray
 90/211 Test  #90: interface.ClientApiServiceTest.ListEnginesReturnsArray ...........................................   Passed    0.05 sec
        Start  91: interface.ClientApiServiceTest.UnloadMissingModelReturnsNotFound
 91/211 Test  #91: interface.ClientApiServiceTest.UnloadMissingModelReturnsNotFound .................................   Passed    0.05 sec
        Start  92: interface.ClientApiServiceTest.TextOnlyVlmRequestUsesVlmTaskWithChatMLInput
 92/211 Test  #92: interface.ClientApiServiceTest.TextOnlyVlmRequestUsesVlmTaskWithChatMLInput ......................   Passed    0.04 sec
        Start  93: interface.ClientApiServiceTest.ConfigManagerOnlyVlmModelUsesVlmTaskWithChatMLInput
 93/211 Test  #93: interface.ClientApiServiceTest.ConfigManagerOnlyVlmModelUsesVlmTaskWithChatMLInput ...............   Passed    0.04 sec
        Start  94: interface.ClientApiServiceTest.NonVlmImageRequestIsRejected
 94/211 Test  #94: interface.ClientApiServiceTest.NonVlmImageRequestIsRejected ......................................   Passed    0.04 sec
        Start  95: interface.ClientApiServiceTest.PreferredEngineMustMatchModelEngine
 95/211 Test  #95: interface.ClientApiServiceTest.PreferredEngineMustMatchModelEngine ...............................   Passed    0.04 sec
        Start  96: interface.ClientApiServiceTest.CompletedNonStreamResponseContainsActualUsage
 96/211 Test  #96: interface.ClientApiServiceTest.CompletedNonStreamResponseContainsActualUsage .....................   Passed    0.06 sec
        Start  97: interface.ClientApiServiceTest.StreamUsageIsOnlyReturnedInAnExtraFinalChunkWhenRequested
 97/211 Test  #97: interface.ClientApiServiceTest.StreamUsageIsOnlyReturnedInAnExtraFinalChunkWhenRequested .........   Passed    0.04 sec
        Start  98: interface.MessagesFormatTest.ValidateExtraBodyEnableLoraAcceptsBooleanOrMissingValue
 98/211 Test  #98: interface.MessagesFormatTest.ValidateExtraBodyEnableLoraAcceptsBooleanOrMissingValue .............   Passed    0.01 sec
        Start  99: interface.MessagesFormatTest.ValidateExtraBodyEnableLoraRejectsNonBooleanValue
 99/211 Test  #99: interface.MessagesFormatTest.ValidateExtraBodyEnableLoraRejectsNonBooleanValue ...................   Passed    0.05 sec
        Start 100: interface.MessagesFormatTest.ValidateEmptyMessagesArrayRejected
100/211 Test #100: interface.MessagesFormatTest.ValidateEmptyMessagesArrayRejected ..................................   Passed    0.01 sec
        Start 101: interface.MessagesFormatTest.ValidateMessagesNotArrayRejected
101/211 Test #101: interface.MessagesFormatTest.ValidateMessagesNotArrayRejected ....................................   Passed    0.02 sec
        Start 102: interface.MessagesFormatTest.ValidateMissingRoleOrContentRejected
102/211 Test #102: interface.MessagesFormatTest.ValidateMissingRoleOrContentRejected ................................   Passed    0.02 sec
        Start 103: interface.MessagesFormatTest.ValidateEmptyContentRejected
103/211 Test #103: interface.MessagesFormatTest.ValidateEmptyContentRejected ........................................   Passed    0.02 sec
        Start 104: interface.MessagesFormatTest.ValidateEmptyArrayContentRejected
104/211 Test #104: interface.MessagesFormatTest.ValidateEmptyArrayContentRejected ...................................   Passed    0.02 sec
        Start 105: interface.MessagesFormatTest.ValidateContentMustBeStringOrArray
105/211 Test #105: interface.MessagesFormatTest.ValidateContentMustBeStringOrArray ..................................   Passed    0.02 sec
        Start 106: interface.MessagesFormatTest.ValidateAssistantFirstRejected
106/211 Test #106: interface.MessagesFormatTest.ValidateAssistantFirstRejected ......................................   Passed    0.02 sec
        Start 107: interface.MessagesFormatTest.ValidateRelaxedRoleOrderingAccepted
107/211 Test #107: interface.MessagesFormatTest.ValidateRelaxedRoleOrderingAccepted .................................   Passed    0.02 sec
        Start 108: interface.MessagesFormatTest.ValidateSystemPlacementRulesRejected
108/211 Test #108: interface.MessagesFormatTest.ValidateSystemPlacementRulesRejected ................................   Passed    0.02 sec
        Start 109: interface.MessagesFormatTest.ValidateReasoningContentOnlyOnAssistant
109/211 Test #109: interface.MessagesFormatTest.ValidateReasoningContentOnlyOnAssistant .............................   Passed    0.01 sec
        Start 110: interface.MessagesFormatTest.ValidateAssistantEmptyContentWithReasoningAccepted
110/211 Test #110: interface.MessagesFormatTest.ValidateAssistantEmptyContentWithReasoningAccepted ..................   Passed    0.01 sec
        Start 111: interface.MessagesFormatTest.ValidateReasoningContentMustBeString
111/211 Test #111: interface.MessagesFormatTest.ValidateReasoningContentMustBeString ................................   Passed    0.01 sec
        Start 112: interface.MessagesFormatTest.ValidateReasoningContentWhitespaceOnlyTreatedAsEmpty
112/211 Test #112: interface.MessagesFormatTest.ValidateReasoningContentWhitespaceOnlyTreatedAsEmpty ................   Passed    0.02 sec
        Start 113: interface.MessagesFormatTest.ValidateImageOnlyContentAccepted
113/211 Test #113: interface.MessagesFormatTest.ValidateImageOnlyContentAccepted ....................................   Passed    0.02 sec
        Start 114: interface.MessagesFormatTest.ValidateInvalidImageUrlRejected
114/211 Test #114: interface.MessagesFormatTest.ValidateInvalidImageUrlRejected .....................................   Passed    0.01 sec
        Start 115: interface.MessagesFormatTest.ValidateImageUrlWithoutUrlFieldRejected
115/211 Test #115: interface.MessagesFormatTest.ValidateImageUrlWithoutUrlFieldRejected .............................   Passed    0.02 sec
        Start 116: interface.MessagesFormatTest.ValidateDataImageWithoutBase64MarkerRejected
116/211 Test #116: interface.MessagesFormatTest.ValidateDataImageWithoutBase64MarkerRejected ........................   Passed    0.02 sec
        Start 117: interface.MessagesFormatTest.ValidateDataImageEmptyBase64PayloadRejected
117/211 Test #117: interface.MessagesFormatTest.ValidateDataImageEmptyBase64PayloadRejected .........................   Passed    0.02 sec
        Start 118: interface.MessagesFormatTest.ValidateImageUrlFieldNotObjectRejected
118/211 Test #118: interface.MessagesFormatTest.ValidateImageUrlFieldNotObjectRejected ..............................   Passed    0.02 sec
        Start 119: interface.MessagesFormatTest.ValidateUnsupportedContentTypeRejected
119/211 Test #119: interface.MessagesFormatTest.ValidateUnsupportedContentTypeRejected ..............................   Passed    0.02 sec
        Start 120: interface.MessagesFormatTest.ValidateContentPartFieldTypesRejected
120/211 Test #120: interface.MessagesFormatTest.ValidateContentPartFieldTypesRejected ...............................   Passed    0.02 sec
        Start 121: interface.MessagesFormatTest.ValidateContentArrayNonObjectElementRejected
121/211 Test #121: interface.MessagesFormatTest.ValidateContentArrayNonObjectElementRejected ........................   Passed    0.02 sec
        Start 122: interface.MessagesFormatTest.ValidateImageUrlBoundaryValuesRejected
122/211 Test #122: interface.MessagesFormatTest.ValidateImageUrlBoundaryValuesRejected ..............................   Passed    0.01 sec
        Start 123: interface.MessagesFormatTest.ValidateTextFieldMissingNullObjectRejected
123/211 Test #123: interface.MessagesFormatTest.ValidateTextFieldMissingNullObjectRejected ..........................   Passed    0.01 sec
        Start 124: interface.MessagesFormatTest.ValidateContentArrayOnlyEmptyTextRejected
124/211 Test #124: interface.MessagesFormatTest.ValidateContentArrayOnlyEmptyTextRejected ...........................   Passed    0.01 sec
        Start 125: interface.MessagesFormatTest.ValidateContentArrayEmptyTextWithImageAccepted
125/211 Test #125: interface.MessagesFormatTest.ValidateContentArrayEmptyTextWithImageAccepted ......................   Passed    0.01 sec
        Start 126: interface.MessagesFormatTest.FormatThreeRoundsPlainText
126/211 Test #126: interface.MessagesFormatTest.FormatThreeRoundsPlainText ..........................................   Passed    0.01 sec
        Start 127: interface.MessagesFormatTest.FormatSystemMessageChatMLStructure
127/211 Test #127: interface.MessagesFormatTest.FormatSystemMessageChatMLStructure ..................................   Passed    0.01 sec
        Start 128: interface.MessagesFormatTest.FormatContentWithSpecialCharacters
128/211 Test #128: interface.MessagesFormatTest.FormatContentWithSpecialCharacters ..................................   Passed    0.01 sec
        Start 129: interface.MessagesFormatTest.FormatRejectsInvalidMessagesDirectly
129/211 Test #129: interface.MessagesFormatTest.FormatRejectsInvalidMessagesDirectly ................................   Passed    0.04 sec
        Start 130: interface.MessagesFormatTest.FormatMessagesNotArrayRejected
130/211 Test #130: interface.MessagesFormatTest.FormatMessagesNotArrayRejected ......................................   Passed    0.01 sec
        Start 131: interface.MessagesFormatTest.FormatMultiTurnTwoImagesOrderMatchesPlaceholders
131/211 Test #131: interface.MessagesFormatTest.FormatMultiTurnTwoImagesOrderMatchesPlaceholders ....................   Passed    0.02 sec
        Start 132: interface.MessagesFormatTest.FormatMixedTextAndMultipleImagesInSingleTurn
132/211 Test #132: interface.MessagesFormatTest.FormatMixedTextAndMultipleImagesInSingleTurn ........................   Passed    0.02 sec
        Start 133: interface.MessagesFormatTest.FormatValidBase64ImagePopulatesBuffers
133/211 Test #133: interface.MessagesFormatTest.FormatValidBase64ImagePopulatesBuffers ..............................   Passed    0.02 sec
        Start 134: interface.MessagesFormatTest.FormatInvalidBase64DataUrlRejected
134/211 Test #134: interface.MessagesFormatTest.FormatInvalidBase64DataUrlRejected ..................................   Passed    0.04 sec
        Start 135: interface.MessagesFormatTest.FormatAssistantReasoningContentInjectedToChatML
135/211 Test #135: interface.MessagesFormatTest.FormatAssistantReasoningContentInjectedToChatML .....................   Passed    0.01 sec
        Start 136: interface.MessagesFormatTest.FormatAssistantReasoningOnlyNoContent
136/211 Test #136: interface.MessagesFormatTest.FormatAssistantReasoningOnlyNoContent ...............................   Passed    0.02 sec
        Start 137: interface.MessagesFormatTest.FormatQwenThinkingDisabledAppendsEmptyBlock
137/211 Test #137: interface.MessagesFormatTest.FormatQwenThinkingDisabledAppendsEmptyBlock .........................   Passed    0.02 sec
        Start 138: interface.MessagesFormatTest.FormatQwen3BaseThinkingEnabledNoOpenTag
138/211 Test #138: interface.MessagesFormatTest.FormatQwen3BaseThinkingEnabledNoOpenTag .............................   Passed    0.02 sec
        Start 139: interface.MessagesFormatTest.FormatQwen35ThinkingEnabledAppendsOpenTag
139/211 Test #139: interface.MessagesFormatTest.FormatQwen35ThinkingEnabledAppendsOpenTag ...........................   Passed    0.01 sec
        Start 140: interface.MessagesFormatTest.FormatQwen35ThinkingDisabledAppendsEmptyBlock
140/211 Test #140: interface.MessagesFormatTest.FormatQwen35ThinkingDisabledAppendsEmptyBlock .......................   Passed    0.01 sec
        Start 141: interface.MessagesFormatTest.FormatNonQwen3ModelNoThinkingSuffix
141/211 Test #141: interface.MessagesFormatTest.FormatNonQwen3ModelNoThinkingSuffix .................................   Passed    0.01 sec
        Start 142: interface.MessagesFormatTest.FormatQwenEndsWithAssistantNoThinkingSuffix
142/211 Test #142: interface.MessagesFormatTest.FormatQwenEndsWithAssistantNoThinkingSuffix .........................   Passed    0.02 sec
        Start 143: interface.MessagesFormatTest.FormatQwenEndsWithAssistantReasoningDoesNotAppendGenerationSuffix
143/211 Test #143: interface.MessagesFormatTest.FormatQwenEndsWithAssistantReasoningDoesNotAppendGenerationSuffix ...   Passed    0.01 sec
        Start 144: interface.MessagesFormatTest.ParseThinkingDefaultWhenOmitted
144/211 Test #144: interface.MessagesFormatTest.ParseThinkingDefaultWhenOmitted .....................................   Passed    0.02 sec
        Start 145: interface.MessagesFormatTest.ParseThinkingDisabled
145/211 Test #145: interface.MessagesFormatTest.ParseThinkingDisabled ...............................................   Passed    0.02 sec
        Start 146: interface.MessagesFormatTest.ParseThinkingEnabled
146/211 Test #146: interface.MessagesFormatTest.ParseThinkingEnabled ................................................   Passed    0.01 sec
        Start 147: interface.MessagesFormatTest.ParseTopLevelEnableThinkingFalse
147/211 Test #147: interface.MessagesFormatTest.ParseTopLevelEnableThinkingFalse ....................................   Passed    0.01 sec
        Start 148: interface.MessagesFormatTest.ParseTopLevelEnableThinkingTrue
148/211 Test #148: interface.MessagesFormatTest.ParseTopLevelEnableThinkingTrue .....................................   Passed    0.01 sec
        Start 149: interface.MessagesFormatTest.ParseExtraBodyEnableThinkingAlone
149/211 Test #149: interface.MessagesFormatTest.ParseExtraBodyEnableThinkingAlone ...................................   Passed    0.01 sec
        Start 150: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistent
150/211 Test #150: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistent ...................................   Passed    0.02 sec
        Start 151: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistentDisabled
151/211 Test #151: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistentDisabled ...........................   Passed    0.01 sec
        Start 152: interface.MessagesFormatTest.ParseThinkingNonBooleanRejected
152/211 Test #152: interface.MessagesFormatTest.ParseThinkingNonBooleanRejected .....................................   Passed    0.02 sec
        Start 153: interface.MessagesFormatTest.ParseThinkingTypeMissingOrNotStringRejected
153/211 Test #153: interface.MessagesFormatTest.ParseThinkingTypeMissingOrNotStringRejected .........................   Passed    0.02 sec
        Start 154: interface.MessagesFormatTest.ParseThinkingConflictRejected
154/211 Test #154: interface.MessagesFormatTest.ParseThinkingConflictRejected .......................................   Passed    0.02 sec
        Start 155: interface.MessagesFormatTest.ParseReasoningFormatDefaultsToAuto
155/211 Test #155: interface.MessagesFormatTest.ParseReasoningFormatDefaultsToAuto ..................................   Passed    0.01 sec
        Start 156: interface.MessagesFormatTest.ParseReasoningFormatExplicitModes
156/211 Test #156: interface.MessagesFormatTest.ParseReasoningFormatExplicitModes ...................................   Passed    0.01 sec
        Start 157: interface.MessagesFormatTest.ResolveThinkingStyleFromModelsJson
157/211 Test #157: interface.MessagesFormatTest.ResolveThinkingStyleFromModelsJson ..................................   Passed    0.02 sec
        Start 158: interface.MessagesFormatTest.ResolveThinkingStyleQwen3DotXFromJson
158/211 Test #158: interface.MessagesFormatTest.ResolveThinkingStyleQwen3DotXFromJson ...............................   Passed    0.01 sec
        Start 159: interface.MessagesFormatTest.ResolveThinkingStyleUnregisteredModelReturnsNone
159/211 Test #159: interface.MessagesFormatTest.ResolveThinkingStyleUnregisteredModelReturnsNone ....................   Passed    0.02 sec
        Start 160: interface.MessagesFormatTest.ResolveThinkingStyleReturnsNoneForBadConfig
160/211 Test #160: interface.MessagesFormatTest.ResolveThinkingStyleReturnsNoneForBadConfig .........................   Passed    0.02 sec
        Start 161: interface.ToolCallRequestTest.ToolsNotArrayRejected
161/211 Test #161: interface.ToolCallRequestTest.ToolsNotArrayRejected ..............................................   Passed    0.02 sec
        Start 162: interface.ToolCallRequestTest.ToolsObjectRejected
162/211 Test #162: interface.ToolCallRequestTest.ToolsObjectRejected ................................................   Passed    0.01 sec
        Start 163: interface.ToolCallRequestTest.ToolChoiceNumberRejected
163/211 Test #163: interface.ToolCallRequestTest.ToolChoiceNumberRejected ...........................................   Passed    0.01 sec
        Start 164: interface.ToolCallRequestTest.InvalidToolChoiceObjectRejected
164/211 Test #164: interface.ToolCallRequestTest.InvalidToolChoiceObjectRejected ....................................   Passed    0.02 sec
        Start 165: interface.ToolCallRequestTest.ToolChoiceArrayRejected
165/211 Test #165: interface.ToolCallRequestTest.ToolChoiceArrayRejected ............................................   Passed    0.01 sec
        Start 166: interface.ToolCallForwardTest.ToolsAndToolChoiceForwardsAsToolCallTask
166/211 Test #166: interface.ToolCallForwardTest.ToolsAndToolChoiceForwardsAsToolCallTask ...........................   Passed    0.05 sec
        Start 167: interface.ToolCallForwardTest.ToolChoiceDefaultsToAutoWhenOmitted
167/211 Test #167: interface.ToolCallForwardTest.ToolChoiceDefaultsToAutoWhenOmitted ................................   Passed    0.05 sec
        Start 168: interface.ToolCallForwardTest.ToolChoiceAutoForwardsAsToolCallTask
168/211 Test #168: interface.ToolCallForwardTest.ToolChoiceAutoForwardsAsToolCallTask ...............................   Passed    0.04 sec
        Start 169: interface.ToolCallForwardTest.ToolChoiceFunctionObjectForwardsAsToolCallTask
169/211 Test #169: interface.ToolCallForwardTest.ToolChoiceFunctionObjectForwardsAsToolCallTask .....................   Passed    0.04 sec
        Start 170: interface.ToolCallForwardTest.EmptyToolsArrayDoesNotForwardAsToolCall
170/211 Test #170: interface.ToolCallForwardTest.EmptyToolsArrayDoesNotForwardAsToolCall ............................   Passed    0.04 sec
        Start 171: interface.ToolCallForwardTest.MissingToolsDoesNotForwardAsToolCall
171/211 Test #171: interface.ToolCallForwardTest.MissingToolsDoesNotForwardAsToolCall ...............................   Passed    0.05 sec
        Start 172: interface.ToolCallForwardTest.ToolChoiceWithoutToolsDoesNotForwardAsToolCall
172/211 Test #172: interface.ToolCallForwardTest.ToolChoiceWithoutToolsDoesNotForwardAsToolCall .....................   Passed    0.05 sec
        Start 173: api.GewuSmartServeApiTest.NullArgumentsReturnInvalidArgument
173/211 Test #173: api.GewuSmartServeApiTest.NullArgumentsReturnInvalidArgument .....................................   Passed    0.01 sec
        Start 174: api.GewuSmartServeApiTest.InitializeFinalizeAreIdempotent
174/211 Test #174: api.GewuSmartServeApiTest.InitializeFinalizeAreIdempotent ........................................   Passed    0.57 sec
        Start 175: api.GewuSmartServeApiTest.CACertificatePathRoundTrips
175/211 Test #175: api.GewuSmartServeApiTest.CACertificatePathRoundTrips ............................................   Passed    0.04 sec
        Start 176: api.GewuSmartServeApiTest.InvalidJsonIsRejectedBeforeServiceInitialization
176/211 Test #176: api.GewuSmartServeApiTest.InvalidJsonIsRejectedBeforeServiceInitialization .......................   Passed    0.03 sec
        Start 177: api.GewuSmartServeApiTest.VersionAndListEnginesReturnValidData
177/211 Test #177: api.GewuSmartServeApiTest.VersionAndListEnginesReturnValidData ...................................   Passed    0.58 sec
        Start 178: api.GewuSmartServeApiTest.ChatCompletionsRejectsMalformedOrIncompleteRequests
178/211 Test #178: api.GewuSmartServeApiTest.ChatCompletionsRejectsMalformedOrIncompleteRequests ....................   Passed    0.62 sec
        Start 179: api.GewuSmartServeApiTest.ConfigJsonValidation
179/211 Test #179: api.GewuSmartServeApiTest.ConfigJsonValidation ...................................................   Passed    0.05 sec
        Start 180: api.GewuSmartServeApiTest.ConfigJsonCopiesInputBuffer
180/211 Test #180: api.GewuSmartServeApiTest.ConfigJsonCopiesInputBuffer ............................................   Passed    0.59 sec
        Start 181: api.GewuSmartServeApiTest.SetModelsConfigPathLoadsConfigFile
181/211 Test #181: api.GewuSmartServeApiTest.SetModelsConfigPathLoadsConfigFile .....................................   Passed    0.62 sec
        Start 182: api.GewuSmartServeApiTest.ListModelsUsesGewuOwnerAndOpenAIShape
182/211 Test #182: api.GewuSmartServeApiTest.ListModelsUsesGewuOwnerAndOpenAIShape ..................................   Passed    0.62 sec
        Start 183: api.GewuSmartServeApiTest.GetModelInfoAndDownloadInvalidModel
183/211 Test #183: api.GewuSmartServeApiTest.GetModelInfoAndDownloadInvalidModel ....................................   Passed    0.62 sec
        Start 184: api.GewuSmartServeApiTest.ListModelsReturnsValidShapeAndErrorStringIsThreadSafe
184/211 Test #184: api.GewuSmartServeApiTest.ListModelsReturnsValidShapeAndErrorStringIsThreadSafe ..................   Passed    0.62 sec
        Start 185: api.GewuSmartServeApiTest.RegisterEngineCanBeUnregistered
185/211 Test #185: api.GewuSmartServeApiTest.RegisterEngineCanBeUnregistered ........................................   Passed    0.62 sec
        Start 186: api.GewuSmartServeApiTest.BuiltInEngineCannotBeExternallyRegisteredOrUnregistered
186/211 Test #186: api.GewuSmartServeApiTest.BuiltInEngineCannotBeExternallyRegisteredOrUnregistered ................   Passed    0.62 sec
        Start 187: api.GewuSmartServeApiTest.AppleFoundationModelCanBeRegisteredAfterInitializeAndServeChat
187/211 Test #187: api.GewuSmartServeApiTest.AppleFoundationModelCanBeRegisteredAfterInitializeAndServeChat .........   Passed    0.62 sec
        Start 188: api.GewuSmartServeApiTest.SmartServeApiRegistersSystemEngineAndServesChat
188/211 Test #188: api.GewuSmartServeApiTest.SmartServeApiRegistersSystemEngineAndServesChat ........................   Passed    0.62 sec
        Start 189: api.GewuSmartServeApiTest.AppleFoundationModelHandlesConcurrentRequests
189/211 Test #189: api.GewuSmartServeApiTest.AppleFoundationModelHandlesConcurrentRequests ..........................   Passed    0.62 sec
        Start 190: api.GewuSmartServeApiTest.AppleFoundationModelStreamingReturnsChunksAndEof
190/211 Test #190: api.GewuSmartServeApiTest.AppleFoundationModelStreamingReturnsChunksAndEof .......................   Passed    0.62 sec
        Start 191: api.GewuSmartServeApiTest.CancelActiveRequestReturnsCancelledOnGetResponse
191/211 Test #191: api.GewuSmartServeApiTest.CancelActiveRequestReturnsCancelledOnGetResponse .......................   Passed    0.62 sec
        Start 192: api.GewuSmartServeApiTest.CancelCompletedRequestReturnsOk
192/211 Test #192: api.GewuSmartServeApiTest.CancelCompletedRequestReturnsOk ........................................   Passed    0.62 sec
        Start 193: api.GewuSmartServeApiTest.StreamingRequestCanBeCancelledAfterFirstChunk
193/211 Test #193: api.GewuSmartServeApiTest.StreamingRequestCanBeCancelledAfterFirstChunk ..........................   Passed    0.62 sec
        Start 194: api.GewuSmartServeApiTest.DeleteAndUnloadReturnBusyWhileInferenceIsActive
194/211 Test #194: api.GewuSmartServeApiTest.DeleteAndUnloadReturnBusyWhileInferenceIsActive ........................   Passed    0.62 sec
        Start 195: api.GewuSmartServeApiTest.AppleFoundationModelLoadsFromConfigPathAfterInitializeAndRegister
195/211 Test #195: api.GewuSmartServeApiTest.AppleFoundationModelLoadsFromConfigPathAfterInitializeAndRegister ......   Passed    0.62 sec
        Start 196: api.GewuSmartServeApiTest.MultiFileDownloadReportsInstalledFileProgressProportionally
196/211 Test #196: api.GewuSmartServeApiTest.MultiFileDownloadReportsInstalledFileProgressProportionally ............   Passed    0.62 sec
        Start 197: api.GewuSmartServeApiTest.SingleFileDownloadUsesNameInsideModelPathDirectory
197/211 Test #197: api.GewuSmartServeApiTest.SingleFileDownloadUsesNameInsideModelPathDirectory .....................   Passed    0.62 sec
        Start 198: api.GewuSmartServeApiTest.SingleFileDirectoryPathIsNotReportedDownloaded
198/211 Test #198: api.GewuSmartServeApiTest.SingleFileDirectoryPathIsNotReportedDownloaded .........................   Passed    0.62 sec
        Start 199: api.GewuSmartServeApiTest.MultiFileModelRequiresValidChecksumsToBeDownloaded
199/211 Test #199: api.GewuSmartServeApiTest.MultiFileModelRequiresValidChecksumsToBeDownloaded .....................   Passed    0.62 sec
        Start 200: api.GewuSmartServeApiTest.DownloadRejectsPathTraversalInModelAndFilePaths
200/211 Test #200: api.GewuSmartServeApiTest.DownloadRejectsPathTraversalInModelAndFilePaths ........................   Passed    0.62 sec
        Start 201: api.GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory
201/211 Test #201: api.GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory ............***Timeout 120.06 sec
Running main() from /Users/linhan/repos/smartserve/third-party/googletest/googletest/src/gtest_main.cc
Note: Google Test filter = GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from GewuSmartServeApiTest
[ RUN      ] GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.007 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name:   MTL0 (Apple M4 Pro)
ggml_metal_device_init: GPU family: MTLGPUFamilyApple9  (1009)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal4  (5002)
ggml_metal_device_init: simdgroup reduction   = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory    = true
ggml_metal_device_init: has bfloat            = true
ggml_metal_device_init: has tensor            = false
ggml_metal_device_init: use residency sets    = true
ggml_metal_device_init: use shared buffers    = true
ggml_metal_device_init: recommendedMaxWorkingSetSize  = 19069.67 MB
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] applefm engine not registered, skipping model: applefm
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] gewu engine not registered, skipping model: qwen2.5-0.5b-q4-gewu
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] mnn engine not registered, skipping model: qwen3.5-0.8b-mnn
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] mnn engine not registered, skipping model: qwen3-0.6b-mnn
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] Model file not found, skipping: qwen3-0.6b-gguf (/var/folders/70/p5lhbxd505j8tnl4nkn1lp800000gn/T/gewu_smartserve_service_single_file/models/Qwen3-0.6B-Q8_0.gguf)
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] Model directory not found, skipping: qwen3.5-0.8b-gguf (/var/folders/70/p5lhbxd505j8tnl4nkn1lp800000gn/T/gewu_smartserve_service_single_file/models/qwen3.5-0.8b-gguf)
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] Model file not found, skipping: qwen3-8b-gguf (/var/folders/70/p5lhbxd505j8tnl4nkn1lp800000gn/T/gewu_smartserve_service_single_file/models/Qwen3-8B-Q4_K_M.gguf)
2026-08-04 11:07:04.603 [ WARN][SmartServe][Service] mnn engine not registered, skipping model: qwen3-0.6b-mnn-lora
2026-08-04 11:07:04.603 [ WARN][SmartServe][SmartServeAppInit] No models loaded from config
2026-08-04 11:07:04.604 [ WARN][SmartServe][Service] single-file-path-engine engine not registered, skipping model: single-file-service-model
2026-08-04 11:07:04.604 [ WARN][SmartServe][Service] single-file-path-engine engine not registered, skipping model: single-file-service-model

        Start 202: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsDirectoryForSingleFileModel
202/211 Test #202: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsDirectoryForSingleFileModel ....................   Passed    0.60 sec
        Start 203: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsEscapedConfiguredPaths
203/211 Test #203: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsEscapedConfiguredPaths .........................   Passed    0.62 sec
        Start 204: api.GewuSmartServeApiTest.DownloadPersistsMetadataAndDeleteCleansIt
204/211 Test #204: api.GewuSmartServeApiTest.DownloadPersistsMetadataAndDeleteCleansIt ..............................   Passed    0.62 sec
        Start 205: api.GewuSmartServeApiTest.PauseDownloadCancelsAndNextDownloadResumes
205/211 Test #205: api.GewuSmartServeApiTest.PauseDownloadCancelsAndNextDownloadResumes .............................   Passed    0.63 sec
        Start 206: api.GewuSmartServeApiTest.ErrorStringCoversPublicErrorCodes
206/211 Test #206: api.GewuSmartServeApiTest.ErrorStringCoversPublicErrorCodes ......................................   Passed    0.04 sec
        Start 207: model_runtime.MultiSessionTest.MultiSessionAndSingleSessionMultiTask
207/211 Test #207: model_runtime.MultiSessionTest.MultiSessionAndSingleSessionMultiTask .............................   Passed   34.41 sec
        Start 208: model_runtime.MultiSessionTest.RuntimeCancelThenImmediateNewRequest
208/211 Test #208: model_runtime.MultiSessionTest.RuntimeCancelThenImmediateNewRequest ..............................   Passed    1.12 sec
        Start 209: model_runtime.SmartServeTest.SmartServeLLMInterfaceTest
209/211 Test #209: model_runtime.SmartServeTest.SmartServeLLMInterfaceTest ..........................................   Passed    1.63 sec
        Start 210: model_runtime.SmartServeTest.SmartServeMnnLoraInterfaceTest
210/211 Test #210: model_runtime.SmartServeTest.SmartServeMnnLoraInterfaceTest ......................................***Not Run (Disabled)   0.00 sec
        Start 211: model_runtime.SmartServeTest.SmartServeVLMInterfaceTest
211/211 Test #211: model_runtime.SmartServeTest.SmartServeVLMInterfaceTest ..........................................   Passed    1.12 sec

99% tests passed, 1 tests failed out of 210

Total Test time (real) = 179.80 sec

The following tests did not run:
	210 - model_runtime.SmartServeTest.SmartServeMnnLoraInterfaceTest (Disabled)

The following tests FAILED:
	201 - api.GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory (Timeout)
Errors while running CTest
=== finished status=failure exit=8 duration=627s timeout_sec=900 attempts=2 ===