← WatchCI

Run 1785747263-67277-15933

Projectsmartserve
Statusfailure
Kindpr
Reffix/multi_lora
PR119
SHAed2583a740a098b8c1e9892b6686b7b9669ea988
Exit8
Finished2026-08-03 17:03:30
Duration543s

Full log

[ 97%] Built target smartserve_engine_cabi
[ 97%] Built target smartserve_llamacpp_plugin
[100%] Built target smartserve_sdk
[  2%] Built target smartserve_utils
[ 84%] Built target libcurl_static
[ 94%] Built target smartserve_core
[ 94%] Built target smartserve_mnn_plugin
[ 96%] Built target smartserve_llamacpp_plugin
[ 97%] Built target smartserve_engine_cabi
[ 97%] Building CXX object applications/http_server/CMakeFiles/smartserve_http_server.dir/server_http.cpp.o
[ 98%] Building CXX object applications/http_server/CMakeFiles/smartserve_http_server.dir/server.cpp.o
[100%] Building CXX object applications/http_server/CMakeFiles/smartserve_http_server.dir/__/src/smart_serve_app_init.cpp.o
[100%] Linking CXX executable ../smartserve_http_server
ld: warning: ignoring duplicate libraries: '../../libsmartserve_core.a', '../../libsmartserve_utils.a'
[100%] Built target smartserve_http_server
[  2%] Built target smartserve_utils
[ 84%] Built target libcurl_static
[ 94%] Built target smartserve_core
[ 94%] Built target smartserve_mnn_plugin
[ 96%] Built target smartserve_llamacpp_plugin
[ 97%] Built target smartserve_engine_cabi
[100%] Built target smartserve_sdk
[100%] Building CXX object applications/chatbox_cli/CMakeFiles/smartserve_chatbox_cli.dir/chatbox.cpp.o
[100%] Linking CXX executable ../smartserve_chatbox_cli
[100%] Built target smartserve_chatbox_cli
[  3%] Built target gtest
[  3%] Built target smartserve_utils
[  4%] Built target gtest_main
[ 85%] Built target libcurl_static
[ 95%] Built target smartserve_core
[ 95%] Built target smartserve_mnn_plugin
[ 97%] Built target smartserve_llamacpp_plugin
[ 98%] Built target smartserve_engine_cabi
[100%] Building CXX object test/CMakeFiles/smartserve_model_runtime_test.dir/integration/model_runtime/multi_session_runtime_test.cpp.o
[100%] Building CXX object test/CMakeFiles/smartserve_model_runtime_test.dir/integration/model_runtime/smart_serve_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/202 Test   #1: internal.CabiEngineCreatorTest.RejectsNullGetInterface ...........................................   Passed    0.05 sec
        Start   2: internal.CabiEngineCreatorTest.RejectsVersionMismatch
  2/202 Test   #2: internal.CabiEngineCreatorTest.RejectsVersionMismatch ............................................   Passed    0.05 sec
        Start   3: internal.CabiEngineCreatorTest.RejectsIncompleteFunctionTable
  3/202 Test   #3: internal.CabiEngineCreatorTest.RejectsIncompleteFunctionTable ....................................   Passed    0.05 sec
        Start   4: internal.CabiEngineCreatorTest.RejectsInvalidSessionDependencies
  4/202 Test   #4: internal.CabiEngineCreatorTest.RejectsInvalidSessionDependencies .................................   Passed    0.05 sec
        Start   5: internal.CabiEngineCreatorTest.ExpectsDirectoryIsConfigurable
  5/202 Test   #5: internal.CabiEngineCreatorTest.ExpectsDirectoryIsConfigurable ....................................   Passed    0.02 sec
        Start   6: internal.CabiEngineCreatorTest.CreatesModelAndSessionThroughEngineAbi
  6/202 Test   #6: internal.CabiEngineCreatorTest.CreatesModelAndSessionThroughEngineAbi ............................   Passed    0.02 sec
        Start   7: internal.CabiEngineCreatorTest.SessionEvalAppendsAbiResponseChunks
  7/202 Test   #7: internal.CabiEngineCreatorTest.SessionEvalAppendsAbiResponseChunks ...............................   Passed    0.02 sec
        Start   8: internal.CabiEngineCreatorTest.SessionEvalUsesFormattedPromptForNonObjectInput
  8/202 Test   #8: internal.CabiEngineCreatorTest.SessionEvalUsesFormattedPromptForNonObjectInput ...................   Passed    0.02 sec
        Start   9: internal.CabiEngineCreatorTest.SessionEvalCancelsBlockedAbiRequest
  9/202 Test   #9: internal.CabiEngineCreatorTest.SessionEvalCancelsBlockedAbiRequest ...............................   Passed    0.02 sec
        Start  10: internal.GewuModelTest.CreateModelRequiresExplicitIdAndModelPath
 10/202 Test  #10: internal.GewuModelTest.CreateModelRequiresExplicitIdAndModelPath .................................   Passed    0.05 sec
        Start  11: internal.ModelDownloaderTest.SHA256Calculation
 11/202 Test  #11: internal.ModelDownloaderTest.SHA256Calculation ...................................................   Passed    0.02 sec
        Start  12: internal.ModelDownloaderTest.SHA256OfEmptyFile
 12/202 Test  #12: internal.ModelDownloaderTest.SHA256OfEmptyFile ...................................................   Passed    0.02 sec
        Start  13: internal.ModelDownloaderTest.SHA256FileNotFound
 13/202 Test  #13: internal.ModelDownloaderTest.SHA256FileNotFound ..................................................   Passed    0.02 sec
        Start  14: internal.ModelDownloaderTest.VerifyChecksumMatches
 14/202 Test  #14: internal.ModelDownloaderTest.VerifyChecksumMatches ...............................................   Passed    0.02 sec
        Start  15: internal.ModelDownloaderTest.VerifyChecksumAcceptsSha256Prefix
 15/202 Test  #15: internal.ModelDownloaderTest.VerifyChecksumAcceptsSha256Prefix ...................................   Passed    0.02 sec
        Start  16: internal.ModelDownloaderTest.VerifyChecksumMismatch
 16/202 Test  #16: internal.ModelDownloaderTest.VerifyChecksumMismatch ..............................................   Passed    0.04 sec
        Start  17: internal.ModelDownloaderTest.VerifyChecksumFileNotFound
 17/202 Test  #17: internal.ModelDownloaderTest.VerifyChecksumFileNotFound ..........................................   Passed    0.04 sec
        Start  18: internal.ModelDownloaderTest.GetProgressBeforeDownload
 18/202 Test  #18: internal.ModelDownloaderTest.GetProgressBeforeDownload ...........................................   Passed    0.02 sec
        Start  19: internal.ModelDownloaderTest.ChecksumWithSha256Prefix
 19/202 Test  #19: internal.ModelDownloaderTest.ChecksumWithSha256Prefix ............................................   Passed    0.02 sec
        Start  20: internal.ModelDownloaderTest.ModelFileManagerDownloadsMultipleFiles
 20/202 Test  #20: internal.ModelDownloaderTest.ModelFileManagerDownloadsMultipleFiles ..............................   Passed    0.02 sec
        Start  21: internal.ModelDownloaderTest.ModelFileManagerEmitsFinalProgressForAlreadyCompleteFile
 21/202 Test  #21: internal.ModelDownloaderTest.ModelFileManagerEmitsFinalProgressForAlreadyCompleteFile ............   Passed    0.02 sec
        Start  22: internal.ModelDownloaderTest.ModelFileManagerRejectsDestinationOutsideStorageRoot
 22/202 Test  #22: internal.ModelDownloaderTest.ModelFileManagerRejectsDestinationOutsideStorageRoot ................   Passed    0.04 sec
        Start  23: internal.ModelDownloaderTest.ModelFileMetadataRoundTripsAndListsInstalledModels
 23/202 Test  #23: internal.ModelDownloaderTest.ModelFileMetadataRoundTripsAndListsInstalledModels ..................   Passed    0.02 sec
        Start  24: internal.ModelDownloaderTest.ModelFileMetadataRejectsInvalidJsonAndMissingFields
 24/202 Test  #24: internal.ModelDownloaderTest.ModelFileMetadataRejectsInvalidJsonAndMissingFields .................   Passed    0.02 sec
        Start  25: internal.ModelDownloaderTest.ModelFileManagerSingletonAndEmptyInstalledList
 25/202 Test  #25: internal.ModelDownloaderTest.ModelFileManagerSingletonAndEmptyInstalledList ......................   Passed    0.02 sec
        Start  26: internal.ModelDownloaderTest.ModelFileManagerGetInstalledModelInfoReturnsSavedEntry
 26/202 Test  #26: internal.ModelDownloaderTest.ModelFileManagerGetInstalledModelInfoReturnsSavedEntry ..............   Passed    0.02 sec
        Start  27: internal.ModelDownloaderTest.ModelFileManagerRejectsUnsafeMetadataPaths
 27/202 Test  #27: internal.ModelDownloaderTest.ModelFileManagerRejectsUnsafeMetadataPaths ..........................   Passed    0.02 sec
        Start  28: internal.ModelDownloaderTest.ModelFileManagerPauseResumeRequeuesRunningAndPending
 28/202 Test  #28: internal.ModelDownloaderTest.ModelFileManagerPauseResumeRequeuesRunningAndPending ................   Passed    0.05 sec
        Start  29: internal.ModelConfigTest.GetModelConfigPath
 29/202 Test  #29: internal.ModelConfigTest.GetModelConfigPath ......................................................   Passed    0.02 sec
        Start  30: internal.ModelConfigTest.GetModelDir
 30/202 Test  #30: internal.ModelConfigTest.GetModelDir .............................................................   Passed    0.02 sec
        Start  31: internal.ModelConfigTest.LoadFromFile
 31/202 Test  #31: internal.ModelConfigTest.LoadFromFile ............................................................   Passed    0.02 sec
        Start  32: internal.ModelConfigTest.GetAllModelIds
 32/202 Test  #32: internal.ModelConfigTest.GetAllModelIds ..........................................................   Passed    0.02 sec
        Start  33: internal.ModelConfigTest.GetModelConfig
 33/202 Test  #33: internal.ModelConfigTest.GetModelConfig ..........................................................   Passed    0.02 sec
        Start  34: internal.ModelConfigTest.GetModelConfigNotFound
 34/202 Test  #34: internal.ModelConfigTest.GetModelConfigNotFound ..................................................   Passed    0.02 sec
        Start  35: internal.ModelConfigTest.ParseMultipleModelsPreservesOrder
 35/202 Test  #35: internal.ModelConfigTest.ParseMultipleModelsPreservesOrder .......................................   Passed    0.02 sec
        Start  36: internal.ModelConfigTest.ParseChecksumField
 36/202 Test  #36: internal.ModelConfigTest.ParseChecksumField ......................................................   Passed    0.02 sec
        Start  37: internal.ModelConfigTest.ParseSha256Field
 37/202 Test  #37: internal.ModelConfigTest.ParseSha256Field ........................................................   Passed    0.02 sec
        Start  38: internal.ModelConfigTest.ParseMultipleLoraWeightFiles
 38/202 Test  #38: internal.ModelConfigTest.ParseMultipleLoraWeightFiles ............................................   Passed    0.02 sec
        Start  39: internal.ModelConfigTest.RejectLoraWeightWithoutId
 39/202 Test  #39: internal.ModelConfigTest.RejectLoraWeightWithoutId ...............................................   Passed    0.05 sec
        Start  40: internal.ModelConfigTest.RejectLoraIdWithoutWeightMarker
 40/202 Test  #40: internal.ModelConfigTest.RejectLoraIdWithoutWeightMarker .........................................   Passed    0.05 sec
        Start  41: internal.ModelConfigTest.RejectInvalidLoraWeightType
 41/202 Test  #41: internal.ModelConfigTest.RejectInvalidLoraWeightType .............................................   Passed    0.05 sec
        Start  42: internal.ModelConfigTest.RejectDuplicateLoraId
 42/202 Test  #42: internal.ModelConfigTest.RejectDuplicateLoraId ...................................................   Passed    0.05 sec
        Start  43: internal.ModelConfigTest.RejectMultipleLoraIdsForSameWeightFile
 43/202 Test  #43: internal.ModelConfigTest.RejectMultipleLoraIdsForSameWeightFile ..................................   Passed    0.05 sec
        Start  44: internal.ModelConfigTest.InvalidJson
 44/202 Test  #44: internal.ModelConfigTest.InvalidJson .............................................................   Passed    0.05 sec
        Start  45: internal.ModelConfigTest.EmptyModelsArray
 45/202 Test  #45: internal.ModelConfigTest.EmptyModelsArray ........................................................   Passed    0.02 sec
        Start  46: internal.ModelConfigTest.MissingModelsArrayRejected
 46/202 Test  #46: internal.ModelConfigTest.MissingModelsArrayRejected ..............................................   Passed    0.04 sec
        Start  47: internal.ModelManagerTest.RegisterAndGetCreatorSuccess
 47/202 Test  #47: internal.ModelManagerTest.RegisterAndGetCreatorSuccess ...........................................   Passed    0.02 sec
        Start  48: internal.ModelManagerTest.RegisterDuplicateCreatorFails
 48/202 Test  #48: internal.ModelManagerTest.RegisterDuplicateCreatorFails ..........................................   Passed    0.02 sec
        Start  49: internal.ModelManagerTest.GetOrCreateModelCachesInstance
 49/202 Test  #49: internal.ModelManagerTest.GetOrCreateModelCachesInstance .........................................   Passed    0.02 sec
        Start  50: internal.ModelManagerTest.GetOrCreateModelReturnsNullWhenCreatorNotRegistered
 50/202 Test  #50: internal.ModelManagerTest.GetOrCreateModelReturnsNullWhenCreatorNotRegistered ....................   Passed    0.04 sec
        Start  51: internal.ModelManagerTest.GetOrCreateModelReturnsNullForInvalidAdapterResConfig
 51/202 Test  #51: internal.ModelManagerTest.GetOrCreateModelReturnsNullForInvalidAdapterResConfig ..................   Passed    0.04 sec
        Start  52: internal.ModelManagerTest.UnregisterRemovesCreator
 52/202 Test  #52: internal.ModelManagerTest.UnregisterRemovesCreator ...............................................   Passed    0.02 sec
        Start  53: internal.ModelManagerTest.UnregisterMissingCreatorFails
 53/202 Test  #53: internal.ModelManagerTest.UnregisterMissingCreatorFails ..........................................   Passed    0.02 sec
        Start  54: internal.ModelManagerTest.RemoveModelReturnsOwnedInstanceAndClearsCache
 54/202 Test  #54: internal.ModelManagerTest.RemoveModelReturnsOwnedInstanceAndClearsCache ..........................   Passed    0.02 sec
        Start  55: internal.OpenAiRequestUtilTest.DetectsOpenAiJson
 55/202 Test  #55: internal.OpenAiRequestUtilTest.DetectsOpenAiJson .................................................   Passed    0.02 sec
        Start  56: internal.OpenAiRequestUtilTest.ParseRoleContentMessages
 56/202 Test  #56: internal.OpenAiRequestUtilTest.ParseRoleContentMessages ..........................................   Passed    0.02 sec
        Start  57: internal.OpenAiRequestUtilTest.ParseIgnoresInvalidEntries
 57/202 Test  #57: internal.OpenAiRequestUtilTest.ParseIgnoresInvalidEntries ........................................   Passed    0.02 sec
        Start  58: internal.OpenAiRequestUtilTest.ParseTextArrayContent
 58/202 Test  #58: internal.OpenAiRequestUtilTest.ParseTextArrayContent .............................................   Passed    0.02 sec
        Start  59: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromTextArrayContent
 59/202 Test  #59: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromTextArrayContent .............................   Passed    0.02 sec
        Start  60: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromMessages
 60/202 Test  #60: internal.OpenAiRequestUtilTest.BuildChatMLPromptFromMessages .....................................   Passed    0.02 sec
        Start  61: internal.OpenAiRequestUtilTest.BuildChatMLPromptAddsAssistantStartForUserTurn
 61/202 Test  #61: internal.OpenAiRequestUtilTest.BuildChatMLPromptAddsAssistantStartForUserTurn ....................   Passed    0.02 sec
        Start  62: internal.OpenAiRequestUtilTest.BuildFlatPromptFromMessages
 62/202 Test  #62: internal.OpenAiRequestUtilTest.BuildFlatPromptFromMessages .......................................   Passed    0.02 sec
        Start  63: internal.OpenAiRequestUtilTest.BuildFlatPromptFallbackForPlainText
 63/202 Test  #63: internal.OpenAiRequestUtilTest.BuildFlatPromptFallbackForPlainText ...............................   Passed    0.02 sec
        Start  64: internal.OpenAiRequestUtilTest.InvalidJsonReturnsEmptyMessages
 64/202 Test  #64: internal.OpenAiRequestUtilTest.InvalidJsonReturnsEmptyMessages ...................................   Passed    0.02 sec
        Start  65: internal.TaskStreamTest.CallbackInvokedWithCorrectChunks
 65/202 Test  #65: internal.TaskStreamTest.CallbackInvokedWithCorrectChunks .........................................   Passed    0.02 sec
        Start  66: internal.TaskStreamTest.CallbackNotInvokedAfterClear
 66/202 Test  #66: internal.TaskStreamTest.CallbackNotInvokedAfterClear .............................................   Passed    0.02 sec
        Start  67: internal.TaskStreamTest.AppendResultWithoutCallbackAccumulatesResult
 67/202 Test  #67: internal.TaskStreamTest.AppendResultWithoutCallbackAccumulatesResult .............................   Passed    0.02 sec
        Start  68: internal.TaskStreamTest.DoneMarksTaskFinished
 68/202 Test  #68: internal.TaskStreamTest.DoneMarksTaskFinished ....................................................   Passed    0.02 sec
        Start  69: internal.TaskStreamTest.CrossThreadWakeupOnDone
 69/202 Test  #69: internal.TaskStreamTest.CrossThreadWakeupOnDone ..................................................   Passed    0.04 sec
        Start  70: internal.TaskStreamTest.CancelMarksDoneAndWakesWaiter
 70/202 Test  #70: internal.TaskStreamTest.CancelMarksDoneAndWakesWaiter ............................................   Passed    0.04 sec
        Start  71: internal.TaskStreamTest.CancelClearsCallbackBlocksFutureAppend
 71/202 Test  #71: internal.TaskStreamTest.CancelClearsCallbackBlocksFutureAppend ...................................   Passed    0.02 sec
        Start  72: internal.TaskStreamTest.CancelIsIdempotentAfterFinished
 72/202 Test  #72: internal.TaskStreamTest.CancelIsIdempotentAfterFinished ..........................................   Passed    0.02 sec
        Start  73: interface.ClientApiTest.MalformedJsonReturnsBadRequest
 73/202 Test  #73: interface.ClientApiTest.MalformedJsonReturnsBadRequest ...........................................   Passed    0.05 sec
        Start  74: interface.ClientApiTest.UnsupportedRequestTypeReturnsBadRequest
 74/202 Test  #74: interface.ClientApiTest.UnsupportedRequestTypeReturnsBadRequest ..................................   Passed    0.02 sec
        Start  75: interface.ClientApiTest.ChatCompletionsRejectsMissingRequiredFields
 75/202 Test  #75: interface.ClientApiTest.ChatCompletionsRejectsMissingRequiredFields ..............................   Passed    0.02 sec
        Start  76: interface.ClientApiTest.ChatCompletionsRejectsInvalidStreamType
 76/202 Test  #76: interface.ClientApiTest.ChatCompletionsRejectsInvalidStreamType ..................................   Passed    0.02 sec
        Start  77: interface.ClientApiTest.ChatCompletionsRejectsInvalidLoraIdBeforeScheduling
 77/202 Test  #77: interface.ClientApiTest.ChatCompletionsRejectsInvalidLoraIdBeforeScheduling ......................   Passed    0.04 sec
        Start  78: interface.ClientApiTest.ChatCompletionsRejectsLegacyEnableLoraBeforeScheduling
 78/202 Test  #78: interface.ClientApiTest.ChatCompletionsRejectsLegacyEnableLoraBeforeScheduling ...................   Passed    0.02 sec
        Start  79: interface.ClientApiTest.ChatCompletionsRejectsInvalidMessagesBeforeScheduling
 79/202 Test  #79: interface.ClientApiTest.ChatCompletionsRejectsInvalidMessagesBeforeScheduling ....................   Passed    0.02 sec
        Start  80: interface.ClientApiServiceTest.ListModelsReturnsOpenAIListShape
 80/202 Test  #80: interface.ClientApiServiceTest.ListModelsReturnsOpenAIListShape ..................................   Passed    0.04 sec
        Start  81: interface.ClientApiServiceTest.ListEnginesReturnsArray
 81/202 Test  #81: interface.ClientApiServiceTest.ListEnginesReturnsArray ...........................................   Passed    0.05 sec
        Start  82: interface.ClientApiServiceTest.UnloadMissingModelReturnsNotFound
 82/202 Test  #82: interface.ClientApiServiceTest.UnloadMissingModelReturnsNotFound .................................   Passed    0.04 sec
        Start  83: interface.ClientApiServiceTest.TextOnlyVlmRequestUsesVlmTaskWithChatMLInput
 83/202 Test  #83: interface.ClientApiServiceTest.TextOnlyVlmRequestUsesVlmTaskWithChatMLInput ......................   Passed    0.04 sec
        Start  84: interface.ClientApiServiceTest.ConfigManagerOnlyVlmModelUsesVlmTaskWithChatMLInput
 84/202 Test  #84: interface.ClientApiServiceTest.ConfigManagerOnlyVlmModelUsesVlmTaskWithChatMLInput ...............   Passed    0.05 sec
        Start  85: interface.ClientApiServiceTest.NonVlmImageRequestIsRejected
 85/202 Test  #85: interface.ClientApiServiceTest.NonVlmImageRequestIsRejected ......................................   Passed    0.04 sec
        Start  86: interface.ClientApiServiceTest.LoraSelectionSequenceIsNormalizedAndForwarded
 86/202 Test  #86: interface.ClientApiServiceTest.LoraSelectionSequenceIsNormalizedAndForwarded .....................   Passed    0.04 sec
        Start  87: interface.ClientApiServiceTest.UnknownLoraIdIsRejectedBeforeScheduling
 87/202 Test  #87: interface.ClientApiServiceTest.UnknownLoraIdIsRejectedBeforeScheduling ...........................   Passed    0.05 sec
        Start  88: interface.ClientApiServiceTest.PreferredEngineMustMatchModelEngine
 88/202 Test  #88: interface.ClientApiServiceTest.PreferredEngineMustMatchModelEngine ...............................   Passed    0.05 sec
        Start  89: interface.MessagesFormatTest.ParseExtraBodyLoraIdAcceptsStringOrMissingValue
 89/202 Test  #89: interface.MessagesFormatTest.ParseExtraBodyLoraIdAcceptsStringOrMissingValue .....................   Passed    0.02 sec
        Start  90: interface.MessagesFormatTest.ParseExtraBodyLoraIdRejectsInvalidValues
 90/202 Test  #90: interface.MessagesFormatTest.ParseExtraBodyLoraIdRejectsInvalidValues ............................   Passed    0.05 sec
        Start  91: interface.MessagesFormatTest.ParseExtraBodyLoraIdRejectsLegacyEnableLora
 91/202 Test  #91: interface.MessagesFormatTest.ParseExtraBodyLoraIdRejectsLegacyEnableLora .........................   Passed    0.02 sec
        Start  92: interface.MessagesFormatTest.ValidateEmptyMessagesArrayRejected
 92/202 Test  #92: interface.MessagesFormatTest.ValidateEmptyMessagesArrayRejected ..................................   Passed    0.02 sec
        Start  93: interface.MessagesFormatTest.ValidateMessagesNotArrayRejected
 93/202 Test  #93: interface.MessagesFormatTest.ValidateMessagesNotArrayRejected ....................................   Passed    0.02 sec
        Start  94: interface.MessagesFormatTest.ValidateMissingRoleOrContentRejected
 94/202 Test  #94: interface.MessagesFormatTest.ValidateMissingRoleOrContentRejected ................................   Passed    0.02 sec
        Start  95: interface.MessagesFormatTest.ValidateEmptyContentRejected
 95/202 Test  #95: interface.MessagesFormatTest.ValidateEmptyContentRejected ........................................   Passed    0.02 sec
        Start  96: interface.MessagesFormatTest.ValidateEmptyArrayContentRejected
 96/202 Test  #96: interface.MessagesFormatTest.ValidateEmptyArrayContentRejected ...................................   Passed    0.02 sec
        Start  97: interface.MessagesFormatTest.ValidateContentMustBeStringOrArray
 97/202 Test  #97: interface.MessagesFormatTest.ValidateContentMustBeStringOrArray ..................................   Passed    0.02 sec
        Start  98: interface.MessagesFormatTest.ValidateAssistantFirstRejected
 98/202 Test  #98: interface.MessagesFormatTest.ValidateAssistantFirstRejected ......................................   Passed    0.02 sec
        Start  99: interface.MessagesFormatTest.ValidateRelaxedRoleOrderingAccepted
 99/202 Test  #99: interface.MessagesFormatTest.ValidateRelaxedRoleOrderingAccepted .................................   Passed    0.02 sec
        Start 100: interface.MessagesFormatTest.ValidateSystemPlacementRulesRejected
100/202 Test #100: interface.MessagesFormatTest.ValidateSystemPlacementRulesRejected ................................   Passed    0.02 sec
        Start 101: interface.MessagesFormatTest.ValidateReasoningContentOnlyOnAssistant
101/202 Test #101: interface.MessagesFormatTest.ValidateReasoningContentOnlyOnAssistant .............................   Passed    0.02 sec
        Start 102: interface.MessagesFormatTest.ValidateAssistantEmptyContentWithReasoningAccepted
102/202 Test #102: interface.MessagesFormatTest.ValidateAssistantEmptyContentWithReasoningAccepted ..................   Passed    0.02 sec
        Start 103: interface.MessagesFormatTest.ValidateReasoningContentMustBeString
103/202 Test #103: interface.MessagesFormatTest.ValidateReasoningContentMustBeString ................................   Passed    0.02 sec
        Start 104: interface.MessagesFormatTest.ValidateReasoningContentWhitespaceOnlyTreatedAsEmpty
104/202 Test #104: interface.MessagesFormatTest.ValidateReasoningContentWhitespaceOnlyTreatedAsEmpty ................   Passed    0.02 sec
        Start 105: interface.MessagesFormatTest.ValidateImageOnlyContentAccepted
105/202 Test #105: interface.MessagesFormatTest.ValidateImageOnlyContentAccepted ....................................   Passed    0.02 sec
        Start 106: interface.MessagesFormatTest.ValidateInvalidImageUrlRejected
106/202 Test #106: interface.MessagesFormatTest.ValidateInvalidImageUrlRejected .....................................   Passed    0.02 sec
        Start 107: interface.MessagesFormatTest.ValidateImageUrlWithoutUrlFieldRejected
107/202 Test #107: interface.MessagesFormatTest.ValidateImageUrlWithoutUrlFieldRejected .............................   Passed    0.02 sec
        Start 108: interface.MessagesFormatTest.ValidateDataImageWithoutBase64MarkerRejected
108/202 Test #108: interface.MessagesFormatTest.ValidateDataImageWithoutBase64MarkerRejected ........................   Passed    0.02 sec
        Start 109: interface.MessagesFormatTest.ValidateDataImageEmptyBase64PayloadRejected
109/202 Test #109: interface.MessagesFormatTest.ValidateDataImageEmptyBase64PayloadRejected .........................   Passed    0.02 sec
        Start 110: interface.MessagesFormatTest.ValidateImageUrlFieldNotObjectRejected
110/202 Test #110: interface.MessagesFormatTest.ValidateImageUrlFieldNotObjectRejected ..............................   Passed    0.02 sec
        Start 111: interface.MessagesFormatTest.ValidateUnsupportedContentTypeRejected
111/202 Test #111: interface.MessagesFormatTest.ValidateUnsupportedContentTypeRejected ..............................   Passed    0.02 sec
        Start 112: interface.MessagesFormatTest.ValidateContentPartFieldTypesRejected
112/202 Test #112: interface.MessagesFormatTest.ValidateContentPartFieldTypesRejected ...............................   Passed    0.02 sec
        Start 113: interface.MessagesFormatTest.ValidateContentArrayNonObjectElementRejected
113/202 Test #113: interface.MessagesFormatTest.ValidateContentArrayNonObjectElementRejected ........................   Passed    0.02 sec
        Start 114: interface.MessagesFormatTest.ValidateImageUrlBoundaryValuesRejected
114/202 Test #114: interface.MessagesFormatTest.ValidateImageUrlBoundaryValuesRejected ..............................   Passed    0.02 sec
        Start 115: interface.MessagesFormatTest.ValidateTextFieldMissingNullObjectRejected
115/202 Test #115: interface.MessagesFormatTest.ValidateTextFieldMissingNullObjectRejected ..........................   Passed    0.02 sec
        Start 116: interface.MessagesFormatTest.ValidateContentArrayOnlyEmptyTextRejected
116/202 Test #116: interface.MessagesFormatTest.ValidateContentArrayOnlyEmptyTextRejected ...........................   Passed    0.02 sec
        Start 117: interface.MessagesFormatTest.ValidateContentArrayEmptyTextWithImageAccepted
117/202 Test #117: interface.MessagesFormatTest.ValidateContentArrayEmptyTextWithImageAccepted ......................   Passed    0.02 sec
        Start 118: interface.MessagesFormatTest.FormatThreeRoundsPlainText
118/202 Test #118: interface.MessagesFormatTest.FormatThreeRoundsPlainText ..........................................   Passed    0.02 sec
        Start 119: interface.MessagesFormatTest.FormatSystemMessageChatMLStructure
119/202 Test #119: interface.MessagesFormatTest.FormatSystemMessageChatMLStructure ..................................   Passed    0.02 sec
        Start 120: interface.MessagesFormatTest.FormatContentWithSpecialCharacters
120/202 Test #120: interface.MessagesFormatTest.FormatContentWithSpecialCharacters ..................................   Passed    0.02 sec
        Start 121: interface.MessagesFormatTest.FormatRejectsInvalidMessagesDirectly
121/202 Test #121: interface.MessagesFormatTest.FormatRejectsInvalidMessagesDirectly ................................   Passed    0.04 sec
        Start 122: interface.MessagesFormatTest.FormatMessagesNotArrayRejected
122/202 Test #122: interface.MessagesFormatTest.FormatMessagesNotArrayRejected ......................................   Passed    0.02 sec
        Start 123: interface.MessagesFormatTest.FormatMultiTurnTwoImagesOrderMatchesPlaceholders
123/202 Test #123: interface.MessagesFormatTest.FormatMultiTurnTwoImagesOrderMatchesPlaceholders ....................   Passed    0.02 sec
        Start 124: interface.MessagesFormatTest.FormatMixedTextAndMultipleImagesInSingleTurn
124/202 Test #124: interface.MessagesFormatTest.FormatMixedTextAndMultipleImagesInSingleTurn ........................   Passed    0.02 sec
        Start 125: interface.MessagesFormatTest.FormatValidBase64ImagePopulatesBuffers
125/202 Test #125: interface.MessagesFormatTest.FormatValidBase64ImagePopulatesBuffers ..............................   Passed    0.02 sec
        Start 126: interface.MessagesFormatTest.FormatInvalidBase64DataUrlRejected
126/202 Test #126: interface.MessagesFormatTest.FormatInvalidBase64DataUrlRejected ..................................   Passed    0.04 sec
        Start 127: interface.MessagesFormatTest.FormatAssistantReasoningContentInjectedToChatML
127/202 Test #127: interface.MessagesFormatTest.FormatAssistantReasoningContentInjectedToChatML .....................   Passed    0.02 sec
        Start 128: interface.MessagesFormatTest.FormatAssistantReasoningOnlyNoContent
128/202 Test #128: interface.MessagesFormatTest.FormatAssistantReasoningOnlyNoContent ...............................   Passed    0.02 sec
        Start 129: interface.MessagesFormatTest.FormatQwenThinkingDisabledAppendsEmptyBlock
129/202 Test #129: interface.MessagesFormatTest.FormatQwenThinkingDisabledAppendsEmptyBlock .........................   Passed    0.02 sec
        Start 130: interface.MessagesFormatTest.FormatQwen3BaseThinkingEnabledNoOpenTag
130/202 Test #130: interface.MessagesFormatTest.FormatQwen3BaseThinkingEnabledNoOpenTag .............................   Passed    0.02 sec
        Start 131: interface.MessagesFormatTest.FormatQwen35ThinkingEnabledAppendsOpenTag
131/202 Test #131: interface.MessagesFormatTest.FormatQwen35ThinkingEnabledAppendsOpenTag ...........................   Passed    0.02 sec
        Start 132: interface.MessagesFormatTest.FormatQwen35ThinkingDisabledAppendsEmptyBlock
132/202 Test #132: interface.MessagesFormatTest.FormatQwen35ThinkingDisabledAppendsEmptyBlock .......................   Passed    0.02 sec
        Start 133: interface.MessagesFormatTest.FormatNonQwen3ModelNoThinkingSuffix
133/202 Test #133: interface.MessagesFormatTest.FormatNonQwen3ModelNoThinkingSuffix .................................   Passed    0.02 sec
        Start 134: interface.MessagesFormatTest.FormatQwenEndsWithAssistantNoThinkingSuffix
134/202 Test #134: interface.MessagesFormatTest.FormatQwenEndsWithAssistantNoThinkingSuffix .........................   Passed    0.02 sec
        Start 135: interface.MessagesFormatTest.FormatQwenEndsWithAssistantReasoningDoesNotAppendGenerationSuffix
135/202 Test #135: interface.MessagesFormatTest.FormatQwenEndsWithAssistantReasoningDoesNotAppendGenerationSuffix ...   Passed    0.02 sec
        Start 136: interface.MessagesFormatTest.ParseThinkingDefaultWhenOmitted
136/202 Test #136: interface.MessagesFormatTest.ParseThinkingDefaultWhenOmitted .....................................   Passed    0.02 sec
        Start 137: interface.MessagesFormatTest.ParseThinkingDisabled
137/202 Test #137: interface.MessagesFormatTest.ParseThinkingDisabled ...............................................   Passed    0.02 sec
        Start 138: interface.MessagesFormatTest.ParseThinkingEnabled
138/202 Test #138: interface.MessagesFormatTest.ParseThinkingEnabled ................................................   Passed    0.02 sec
        Start 139: interface.MessagesFormatTest.ParseTopLevelEnableThinkingFalse
139/202 Test #139: interface.MessagesFormatTest.ParseTopLevelEnableThinkingFalse ....................................   Passed    0.02 sec
        Start 140: interface.MessagesFormatTest.ParseTopLevelEnableThinkingTrue
140/202 Test #140: interface.MessagesFormatTest.ParseTopLevelEnableThinkingTrue .....................................   Passed    0.02 sec
        Start 141: interface.MessagesFormatTest.ParseExtraBodyEnableThinkingAlone
141/202 Test #141: interface.MessagesFormatTest.ParseExtraBodyEnableThinkingAlone ...................................   Passed    0.02 sec
        Start 142: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistent
142/202 Test #142: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistent ...................................   Passed    0.02 sec
        Start 143: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistentDisabled
143/202 Test #143: interface.MessagesFormatTest.ParseThinkingAllSourcesConsistentDisabled ...........................   Passed    0.02 sec
        Start 144: interface.MessagesFormatTest.ParseThinkingNonBooleanRejected
144/202 Test #144: interface.MessagesFormatTest.ParseThinkingNonBooleanRejected .....................................   Passed    0.02 sec
        Start 145: interface.MessagesFormatTest.ParseThinkingTypeMissingOrNotStringRejected
145/202 Test #145: interface.MessagesFormatTest.ParseThinkingTypeMissingOrNotStringRejected .........................   Passed    0.02 sec
        Start 146: interface.MessagesFormatTest.ParseThinkingConflictRejected
146/202 Test #146: interface.MessagesFormatTest.ParseThinkingConflictRejected .......................................   Passed    0.02 sec
        Start 147: interface.MessagesFormatTest.ParseReasoningFormatDefaultsToAuto
147/202 Test #147: interface.MessagesFormatTest.ParseReasoningFormatDefaultsToAuto ..................................   Passed    0.02 sec
        Start 148: interface.MessagesFormatTest.ParseReasoningFormatExplicitModes
148/202 Test #148: interface.MessagesFormatTest.ParseReasoningFormatExplicitModes ...................................   Passed    0.02 sec
        Start 149: interface.MessagesFormatTest.ResolveThinkingStyleFromModelsJson
149/202 Test #149: interface.MessagesFormatTest.ResolveThinkingStyleFromModelsJson ..................................   Passed    0.02 sec
        Start 150: interface.MessagesFormatTest.ResolveThinkingStyleQwen3DotXFromJson
150/202 Test #150: interface.MessagesFormatTest.ResolveThinkingStyleQwen3DotXFromJson ...............................   Passed    0.02 sec
        Start 151: interface.MessagesFormatTest.ResolveThinkingStyleUnregisteredModelReturnsNone
151/202 Test #151: interface.MessagesFormatTest.ResolveThinkingStyleUnregisteredModelReturnsNone ....................   Passed    0.02 sec
        Start 152: interface.MessagesFormatTest.ResolveThinkingStyleReturnsNoneForBadConfig
152/202 Test #152: interface.MessagesFormatTest.ResolveThinkingStyleReturnsNoneForBadConfig .........................   Passed    0.04 sec
        Start 153: interface.ToolCallRequestTest.ToolsNotArrayRejected
153/202 Test #153: interface.ToolCallRequestTest.ToolsNotArrayRejected ..............................................   Passed    0.02 sec
        Start 154: interface.ToolCallRequestTest.ToolsObjectRejected
154/202 Test #154: interface.ToolCallRequestTest.ToolsObjectRejected ................................................   Passed    0.02 sec
        Start 155: interface.ToolCallRequestTest.ToolChoiceNumberRejected
155/202 Test #155: interface.ToolCallRequestTest.ToolChoiceNumberRejected ...........................................   Passed    0.02 sec
        Start 156: interface.ToolCallRequestTest.InvalidToolChoiceObjectRejected
156/202 Test #156: interface.ToolCallRequestTest.InvalidToolChoiceObjectRejected ....................................   Passed    0.02 sec
        Start 157: interface.ToolCallRequestTest.ToolChoiceArrayRejected
157/202 Test #157: interface.ToolCallRequestTest.ToolChoiceArrayRejected ............................................   Passed    0.02 sec
        Start 158: interface.ToolCallForwardTest.ToolsAndToolChoiceForwardsAsToolCallTask
158/202 Test #158: interface.ToolCallForwardTest.ToolsAndToolChoiceForwardsAsToolCallTask ...........................   Passed    0.04 sec
        Start 159: interface.ToolCallForwardTest.ToolChoiceDefaultsToAutoWhenOmitted
159/202 Test #159: interface.ToolCallForwardTest.ToolChoiceDefaultsToAutoWhenOmitted ................................   Passed    0.04 sec
        Start 160: interface.ToolCallForwardTest.ToolChoiceAutoForwardsAsToolCallTask
160/202 Test #160: interface.ToolCallForwardTest.ToolChoiceAutoForwardsAsToolCallTask ...............................   Passed    0.04 sec
        Start 161: interface.ToolCallForwardTest.ToolChoiceFunctionObjectForwardsAsToolCallTask
161/202 Test #161: interface.ToolCallForwardTest.ToolChoiceFunctionObjectForwardsAsToolCallTask .....................   Passed    0.04 sec
        Start 162: interface.ToolCallForwardTest.EmptyToolsArrayDoesNotForwardAsToolCall
162/202 Test #162: interface.ToolCallForwardTest.EmptyToolsArrayDoesNotForwardAsToolCall ............................   Passed    0.04 sec
        Start 163: interface.ToolCallForwardTest.MissingToolsDoesNotForwardAsToolCall
163/202 Test #163: interface.ToolCallForwardTest.MissingToolsDoesNotForwardAsToolCall ...............................   Passed    0.05 sec
        Start 164: interface.ToolCallForwardTest.ToolChoiceWithoutToolsDoesNotForwardAsToolCall
164/202 Test #164: interface.ToolCallForwardTest.ToolChoiceWithoutToolsDoesNotForwardAsToolCall .....................   Passed    0.05 sec
        Start 165: api.GewuSmartServeApiTest.NullArgumentsReturnInvalidArgument
165/202 Test #165: api.GewuSmartServeApiTest.NullArgumentsReturnInvalidArgument .....................................   Passed    0.02 sec
        Start 166: api.GewuSmartServeApiTest.InitializeFinalizeAreIdempotent
166/202 Test #166: api.GewuSmartServeApiTest.InitializeFinalizeAreIdempotent ........................................   Passed    0.59 sec
        Start 167: api.GewuSmartServeApiTest.CACertificatePathRoundTrips
167/202 Test #167: api.GewuSmartServeApiTest.CACertificatePathRoundTrips ............................................   Passed    0.05 sec
        Start 168: api.GewuSmartServeApiTest.InvalidJsonIsRejectedBeforeServiceInitialization
168/202 Test #168: api.GewuSmartServeApiTest.InvalidJsonIsRejectedBeforeServiceInitialization .......................   Passed    0.03 sec
        Start 169: api.GewuSmartServeApiTest.VersionAndListEnginesReturnValidData
169/202 Test #169: api.GewuSmartServeApiTest.VersionAndListEnginesReturnValidData ...................................   Passed    0.58 sec
        Start 170: api.GewuSmartServeApiTest.ChatCompletionsRejectsMalformedOrIncompleteRequests
170/202 Test #170: api.GewuSmartServeApiTest.ChatCompletionsRejectsMalformedOrIncompleteRequests ....................   Passed    0.62 sec
        Start 171: api.GewuSmartServeApiTest.ConfigJsonValidation
171/202 Test #171: api.GewuSmartServeApiTest.ConfigJsonValidation ...................................................   Passed    0.04 sec
        Start 172: api.GewuSmartServeApiTest.ConfigJsonCopiesInputBuffer
172/202 Test #172: api.GewuSmartServeApiTest.ConfigJsonCopiesInputBuffer ............................................   Passed    0.59 sec
        Start 173: api.GewuSmartServeApiTest.SetModelsConfigPathLoadsConfigFile
173/202 Test #173: api.GewuSmartServeApiTest.SetModelsConfigPathLoadsConfigFile .....................................   Passed    0.62 sec
        Start 174: api.GewuSmartServeApiTest.ListModelsUsesGewuOwnerAndOpenAIShape
174/202 Test #174: api.GewuSmartServeApiTest.ListModelsUsesGewuOwnerAndOpenAIShape ..................................   Passed    0.61 sec
        Start 175: api.GewuSmartServeApiTest.GetModelInfoAndDownloadInvalidModel
175/202 Test #175: api.GewuSmartServeApiTest.GetModelInfoAndDownloadInvalidModel ....................................   Passed    0.63 sec
        Start 176: api.GewuSmartServeApiTest.ListModelsReturnsValidShapeAndErrorStringIsThreadSafe
176/202 Test #176: api.GewuSmartServeApiTest.ListModelsReturnsValidShapeAndErrorStringIsThreadSafe ..................   Passed    0.62 sec
        Start 177: api.GewuSmartServeApiTest.RegisterEngineCanBeUnregistered
177/202 Test #177: api.GewuSmartServeApiTest.RegisterEngineCanBeUnregistered ........................................   Passed    0.62 sec
        Start 178: api.GewuSmartServeApiTest.BuiltInEngineCannotBeExternallyRegisteredOrUnregistered
178/202 Test #178: api.GewuSmartServeApiTest.BuiltInEngineCannotBeExternallyRegisteredOrUnregistered ................   Passed    0.60 sec
        Start 179: api.GewuSmartServeApiTest.AppleFoundationModelCanBeRegisteredAfterInitializeAndServeChat
179/202 Test #179: api.GewuSmartServeApiTest.AppleFoundationModelCanBeRegisteredAfterInitializeAndServeChat .........   Passed    0.62 sec
        Start 180: api.GewuSmartServeApiTest.SmartServeApiRegistersSystemEngineAndServesChat
180/202 Test #180: api.GewuSmartServeApiTest.SmartServeApiRegistersSystemEngineAndServesChat ........................   Passed    0.63 sec
        Start 181: api.GewuSmartServeApiTest.AppleFoundationModelHandlesConcurrentRequests
181/202 Test #181: api.GewuSmartServeApiTest.AppleFoundationModelHandlesConcurrentRequests ..........................   Passed    0.61 sec
        Start 182: api.GewuSmartServeApiTest.AppleFoundationModelStreamingReturnsChunksAndEof
182/202 Test #182: api.GewuSmartServeApiTest.AppleFoundationModelStreamingReturnsChunksAndEof .......................   Passed    0.60 sec
        Start 183: api.GewuSmartServeApiTest.CancelActiveRequestReturnsCancelledOnGetResponse
183/202 Test #183: api.GewuSmartServeApiTest.CancelActiveRequestReturnsCancelledOnGetResponse .......................   Passed    0.62 sec
        Start 184: api.GewuSmartServeApiTest.CancelCompletedRequestReturnsOk
184/202 Test #184: api.GewuSmartServeApiTest.CancelCompletedRequestReturnsOk ........................................   Passed    0.62 sec
        Start 185: api.GewuSmartServeApiTest.StreamingRequestCanBeCancelledAfterFirstChunk
185/202 Test #185: api.GewuSmartServeApiTest.StreamingRequestCanBeCancelledAfterFirstChunk ..........................   Passed    0.62 sec
        Start 186: api.GewuSmartServeApiTest.DeleteAndUnloadReturnBusyWhileInferenceIsActive
186/202 Test #186: api.GewuSmartServeApiTest.DeleteAndUnloadReturnBusyWhileInferenceIsActive ........................   Passed    0.62 sec
        Start 187: api.GewuSmartServeApiTest.AppleFoundationModelLoadsFromConfigPathAfterInitializeAndRegister
187/202 Test #187: api.GewuSmartServeApiTest.AppleFoundationModelLoadsFromConfigPathAfterInitializeAndRegister ......   Passed    0.60 sec
        Start 188: api.GewuSmartServeApiTest.MultiFileDownloadReportsInstalledFileProgressProportionally
188/202 Test #188: api.GewuSmartServeApiTest.MultiFileDownloadReportsInstalledFileProgressProportionally ............   Passed    0.61 sec
        Start 189: api.GewuSmartServeApiTest.SingleFileDownloadUsesNameInsideModelPathDirectory
189/202 Test #189: api.GewuSmartServeApiTest.SingleFileDownloadUsesNameInsideModelPathDirectory .....................   Passed    0.62 sec
        Start 190: api.GewuSmartServeApiTest.SingleFileDirectoryPathIsNotReportedDownloaded
190/202 Test #190: api.GewuSmartServeApiTest.SingleFileDirectoryPathIsNotReportedDownloaded .........................   Passed    0.61 sec
        Start 191: api.GewuSmartServeApiTest.DownloadRejectsPathTraversalInModelAndFilePaths
191/202 Test #191: api.GewuSmartServeApiTest.DownloadRejectsPathTraversalInModelAndFilePaths ........................   Passed    0.61 sec
        Start 192: api.GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory
192/202 Test #192: api.GewuSmartServeApiTest.ServiceLoadModelsUsesSingleFileNameInsideModelPathDirectory ............   Passed    0.62 sec
        Start 193: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsDirectoryForSingleFileModel
193/202 Test #193: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsDirectoryForSingleFileModel ....................   Passed    0.62 sec
        Start 194: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsEscapedConfiguredPaths
194/202 Test #194: api.GewuSmartServeApiTest.ServiceLoadModelsRejectsEscapedConfiguredPaths .........................   Passed    0.61 sec
        Start 195: api.GewuSmartServeApiTest.DownloadPersistsMetadataAndDeleteCleansIt
195/202 Test #195: api.GewuSmartServeApiTest.DownloadPersistsMetadataAndDeleteCleansIt ..............................   Passed    0.60 sec
        Start 196: api.GewuSmartServeApiTest.PauseDownloadCancelsAndNextDownloadResumes
196/202 Test #196: api.GewuSmartServeApiTest.PauseDownloadCancelsAndNextDownloadResumes .............................   Passed    0.63 sec
        Start 197: api.GewuSmartServeApiTest.ErrorStringCoversPublicErrorCodes
197/202 Test #197: api.GewuSmartServeApiTest.ErrorStringCoversPublicErrorCodes ......................................   Passed    0.05 sec
        Start 198: model_runtime.MultiSessionTest.MultiSessionAndSingleSessionMultiTask
198/202 Test #198: model_runtime.MultiSessionTest.MultiSessionAndSingleSessionMultiTask .............................   Passed   31.86 sec
        Start 199: model_runtime.MultiSessionTest.RuntimeCancelThenImmediateNewRequest
199/202 Test #199: model_runtime.MultiSessionTest.RuntimeCancelThenImmediateNewRequest ..............................   Passed    1.62 sec
        Start 200: model_runtime.SmartServeTest.SmartServeLLMInterfaceTest
200/202 Test #200: model_runtime.SmartServeTest.SmartServeLLMInterfaceTest ..........................................   Passed    1.61 sec
        Start 201: model_runtime.SmartServeTest.SmartServeMnnLoraInterfaceTest
201/202 Test #201: model_runtime.SmartServeTest.SmartServeMnnLoraInterfaceTest ......................................***Failed    0.62 sec
Running main() from /Users/linhan/repos/smartserve/third-party/googletest/googletest/src/gtest_main.cc
Note: Google Test filter = SmartServeTest.SmartServeMnnLoraInterfaceTest
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from SmartServeTest
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.008 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-03 17:03:29.068 [ WARN][SmartServe][Service] applefm engine not registered, skipping model: applefm
2026-08-03 17:03:29.068 [ WARN][SmartServe][Service] gewu engine not registered, skipping model: qwen2.5-0.5b-q4-gewu
2026-08-03 17:03:29.068 [ WARN][SmartServe][Service] Model directory not found, skipping: qwen3-0.6b-mnn (/Users/linhan/.cache/models/qwen3-0.6b-mnn)
2026-08-03 17:03:29.068 [ WARN][SmartServe][Service] Model directory not found, skipping: qwen3-0.6b-mnn-lora (/Users/linhan/.cache/models/qwen3-0.6b-mnn-lora)
[ RUN      ] SmartServeTest.SmartServeMnnLoraInterfaceTest
/Users/linhan/repos/smartserve/test/integration/model_runtime/smart_serve_runtime_test.cpp:392: Failure
Failed
MNN LoRA runtime test is required, but qwen3-0.6b-mnn-lora is not registered

[  FAILED  ] SmartServeTest.SmartServeMnnLoraInterfaceTest (0 ms)
[----------] 1 test from SmartServeTest (0 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (68 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] SmartServeTest.SmartServeMnnLoraInterfaceTest

 1 FAILED TEST

        Start 202: model_runtime.SmartServeTest.SmartServeVLMInterfaceTest
202/202 Test #202: model_runtime.SmartServeTest.SmartServeVLMInterfaceTest ..........................................   Passed    1.13 sec

99% tests passed, 1 tests failed out of 202

Total Test time (real) =  58.26 sec

The following tests FAILED:
	201 - model_runtime.SmartServeTest.SmartServeMnnLoraInterfaceTest (Failed)
Errors while running CTest
=== finished status=failure exit=8 duration=543s timeout_sec=900 attempts=2 ===