Skip to content

chore(deps): Update spring#292

Open
renovate[bot] wants to merge 1 commit into
developfrom
renovate/spring
Open

chore(deps): Update spring#292
renovate[bot] wants to merge 1 commit into
developfrom
renovate/spring

Conversation

@renovate

@renovate renovate Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
org.springframework.ai:spring-ai-bom 1.1.21.1.8 age confidence
org.springframework.boot 3.5.83.5.16 age confidence
org.springframework.boot:spring-boot-dependencies (source) 3.5.83.5.16 age confidence

Release Notes

spring-projects/spring-ai (org.springframework.ai:spring-ai-bom)

v1.1.8: Spring AI 1.1.8

🐞 Bug Fixes

  • Add missing values to ZhiPuAiApi.ChatCompletionFinishReason #​5532

📔 Documentation

  • Add a rate-limit metadata section to anthropic-chat.adoc #​6175

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​demo-zexuan and @​sobychacko

v1.1.7: Spring AI 1.1.7

⭐ New Features

  • Ollama doesnt work in a graalvm native image #​6064

🐞 Bug Fixes

  • OpenAiChatModel streaming drops chunks due to internal switchMap when using buffered concatMap #​6122
  • RedisVectorStore#doDelete only deletes the 10 first messages #​6066

v1.1.6: Spring AI 1.1.6

Spring AI 1.1.6 Release Notes

🎯 Highlights

This release includes 1 new features, 5 bug fixes, 2 documentation improvements, 5 other improvements.

⏪ Breaking Changes

  • Chat memory advisors now require an explicit conversation ID to be supplied. This is a behavioral change that affects how chat memory is scoped and managed. Applications relying on implicit conversation IDs must be updated to supply an explicit ID. 13cde41

⚠️ Upgrading Notes

  • PromptChatMemoryAdvisor is now deprecated and chat memory advisors require an explicit conversation ID. Update your code to: (1) replace PromptChatMemoryAdvisor with the recommended alternative, and (2) ensure an explicit conversation ID is supplied when using any chat memory advisor. 917f62e

⭐ New Features

  • MCP auto-configuration now includes the missing @​ConditionalOnMissingBean check, allowing users to provide their own bean definitions and override the auto-configured MCP beans as expected in Spring Boot auto-configuration patterns. d4025e5

🪲 Bug Fixes

  • Fixed an issue where the MilvusVectorStore's doDelete method incorrectly escaped strings in the ID list, which could cause deletion operations to fail or behave unexpectedly. 20206a4
  • Fixed the ChatClientAdvisorTests test suite to supply an explicit conversation ID, aligning tests with the new requirement for explicit conversation IDs in chat memory advisors. 704e5c6
  • Fixed the MistralAiChatModelObservationIT integration test to ensure observation functionality works correctly with the MistralAI chat model provider. a89145d
  • Corrects an issue where configured options were not being properly included in MistralAI API requests, ensuring all user-defined settings are correctly passed through. 7bcf32a
  • Resolves a regression in how AssistantMessage.ToolCall.id is handled when using the Ollama integration, restoring correct tool call identification behavior. bb9d65e

📓 Documentation

  • Corrected typographical errors in the MCP (Model Context Protocol) documentation for improved readability and accuracy. a1ad7f2
  • Fixed broken xref anchors in the documentation to restore proper cross-reference navigation between documentation sections. f03c104

🔨 Dependency Upgrades

  • Updated MCP SDK from version 0.17.0 to 0.18.2 and MCP annotations from 0.8.0 to 0.9.0, bringing in the latest MCP protocol improvements and bug fixes. #​5961

🔩 Build Updates

  • Updated the project build to use JDK 17.0.19, ensuring compatibility and incorporating the latest Java 17 patch release for the build environment. 27281e6
  • Reorganizes the project structure by relocating Spring AI starter modules to a dedicated starters/ directory for better maintainability and clarity. 22f8676

🙏 Contributors

Thanks to all contributors who made this release possible:

v1.1.5: Spring AI 1.1.5

Spring AI 1.1.5 Release Notes

🎯 Highlights

This release includes 9 bug fixes, 3 documentation improvements, 11 other improvements.

⚠️ Upgrading Notes

  • The Pixtral 12B model has been removed and Pixtral Large is deprecated. Update your model configuration to use the currently recommended Pixtral models to avoid issues in future releases. 447d2a4

📢 Noteworthy

  • The Pixtral 12B model has been removed and the Pixtral Large model is now deprecated. Integration tests have been updated to use the recommended replacement models. Users relying on these models should migrate to the recommended alternatives. 447d2a4

🪲 Bug Fixes

  • Fixed the CosmosDB vector store's doDelete method to properly parameterize queries, preventing potential SQL injection vulnerabilities and improving correctness. 6039e57
  • Fixed an issue where conversationId was not correctly applied in the VectorStoreChatMemoryAdvisor filter, which could cause incorrect memory retrieval across conversations. 3cccfdf
  • Corrected key handling in the vector store filter expression converter to ensure filter expressions are properly evaluated. 01386e2
  • Resolved test non-determinism in the BedrockConverse streaming token usage tests, improving test reliability. 4747a3c
  • Corrected the test class naming to properly apply the integration test suffix, ensuring proper test categorization and execution. #​5853
  • Corrected string parsing logic for the toolChoice field in OpenAiSdkChatModel to ensure proper handling of tool choice configurations. aeb33b0 via #​5735
  • Fixed an issue where the extra_body parameter was incorrectly included in outgoing OpenAI API requests, which could cause unexpected behavior. 4c0120c
  • Resolved issues with Javadoc generation and configuration to ensure API documentation is correctly produced. 0a71804
  • Corrected the test bypass condition so integration tests are properly skipped when required API keys are not configured in the environment. bc26dc1

📓 Documentation

  • Updated the README to include a note about CPU architecture requirements or compatibility information. a21e988
  • Added documentation explaining how MCP servers can re-publish tools from MCP clients, clarifying the tool propagation model in multi-server setups. #​5778
  • Improved documentation to clarify the intended usage and behavior of the extra_body parameter in OpenAI API requests. 3d4d75b

🔨 Dependency Upgrades

  • Updated the Spring Boot dependency to version 3.5.14, incorporating the latest bug fixes and improvements from the Spring Boot team. eb4c9a5
  • Updated the Spring Boot dependency to version 3.5.13 as an intermediate upgrade. 9b902f8
  • Updated document parsing dependencies: Apache Tika upgraded to 3.3.0, jsoup to 1.22.1, and Apache PDFBox to 3.0.7 for improved document processing capabilities and bug fixes. f25fc52

🔩 Build Updates

  • Updated GitHub Actions workflow dependencies to their latest versions to improve CI/CD reliability and security. 9b70b38
  • Changed the PR check workflow to use mvn package instead of mvn test for more efficient pull request validation. 7d2e455
  • Integration tests are now skipped in the CI pipeline to improve build performance, and the release notes generation workflow has been removed. #​5688
  • The project has been bumped to the next development version 1.1.5-SNAPSHOT following the release. 400dc42

🔐 Security

  • Hardened the default cache directory used for transformer models to prevent unauthorized access or tampering with cached model files. aac6b80
  • Fixed a potential denial-of-service vulnerability where a malformed PDF could cause excessive memory allocation during document parsing. b61ac6a

🙏 Contributors

Thanks to all contributors who made this release possible:

v1.1.4: Spring AI 1.1.4

Spring AI 1.1.4 Release Notes

🎯 Highlights

This release includes 1 new feature, 11 bug fixes, 1 other improvement.

⭐ New Features

  • Added capability to dynamically disable Structured Output Native functionality at runtime, providing more flexibility in configuration and usage scenarios. 45a1607

🪲 Bug Fixes

  • Resolved issues with Oracle and PgVector vector store integration tests to improve test reliability 56fa3ee
  • Corrected issue where extraBody parameter was being lost when toolDefinitions were provided in chat requests d886961
  • Improved stability of Bedrock converse integration tests by addressing flaky test scenarios fac5647
  • Updated Google GenAI embedding model to use current API and fixed flaky function call tests 6c82800
  • Resolved issues in Google GenAI text embedding model observation integration tests 650a343
  • Enhanced error handling and reliability when fetching media resources in Bedrock proxy chat model a7d3223
  • Improved filter evaluation logic in SimpleVectorStore for better performance and maintainability 04742fb
  • Resolved issue where multi-block system messages were not being properly cached in Anthropic prompt caching implementation 11bd45e
  • Corrected handling of string values for TAG and TEXT filter types in Redis filter expression converter 707e990
  • Improved key handling in Neo4j vector store filter expression converter for more accurate filtering 3a46c7d
  • Resolved issues with identifier parsing logic in FilterExpressionTextParser to ensure correct filter expression handling. 7275cba

🔩 Build Updates

  • Corrected issues in the documentation upload GitHub Actions workflow to ensure proper documentation deployment. f4984b5

🙏 Contributors

Thanks to all contributors who made this release possible:

v1.1.3: Spring AI 1.1.3 Release

Spring AI 1.1.3 Release Notes

🎯 Highlights

This release includes 19 new features, 31 bug fixes, 23 documentation improvements, 25 other improvements.

📢 Noteworthy

  • All deprecated Anthropic model names have been replaced with active model identifiers throughout the codebase and integration tests to maintain compatibility with Anthropic's API. 54f35dc

⭐ New Features

  • Neo4j vector store now allows customization of the filter expression converter via the builder pattern, providing more flexibility for custom query filtering logic. 82bc777
  • Introduces builder pattern for more flexible and readable construction of OpenAiSdkChatModel instances 982bc1e
  • Adds support for custom embedding dimensions via '/embedding/embedding-model-dimensions.properties' configuration file for OpenAiEmbeddingModel a5359c7
  • ToolCallAdvisor now supports streaming responses, enabling real-time function calling interactions 21dac8d
  • SimpleVectorStore now supports filtering when deleting entries, providing more granular control over vector data management 7752ef8
  • Added support for Anthropic Claude Skills API with unified API design and helper classes for skill integration #​5299
  • Added dimensions parameter support for Ollama embedding models, allowing control over embedding vector size #​2713
  • Enabled customization of JSON schema generation for structured outputs and function calling 4a8bdd7
  • Mistral AI chat model now supports structured outputs using JSON schema validation, enabling type-safe responses with automatic conversion 76587fe
  • New convenience method for easily retrieving system messages from Prompt objects a78d2e8
  • Added Mcp*ServerCustomizer interfaces and fixed MCP auto-configuration to work properly in non-web environments #​5261
  • OllamaChatOptions now implements StructuredOutputChatOptions, enabling structured JSON output handling with comprehensive unit and integration tests a6ce0f6
  • Added support for simple JSON format option in Ollama chat interactions 7b23ee2
  • Enhanced model provider detection logic for Microsoft Foundry integration d4db917
  • Chat memory advisors now support ToolResponseMessage, enabling better handling of tool responses in conversation history f74b04a
  • Added support for dynamically augmenting tool schemas at runtime, enabling more flexible tool configuration and customization 6d310cc
  • Added conversationHistoryEnabled option to ToolCallAdvisor, allowing users to control whether conversation history is included when making tool calls 4197b81
  • Added support for configurable field names in Azure Vector Store, allowing users to work with existing Azure AI Search indexes that use custom field names instead of hardcoded defaults (content, embedding, metadata) 706f23e
  • Added support for custom punctuation marks in TokenTextSplitter, enabling more flexible text splitting for various languages and use cases c0e279a

🪲 Bug Fixes

  • Fixed and improved the FilterExpressionConverter for vector store operations, enhancing query filtering capabilities 5b67238
  • Replaced disabled Azure OpenAI image model with the latest available version 9578d34
  • Corrected the prefixAssistantMessage implementation in DeepSeekAssistantMessage 321314b
  • Resolved an issue where token counts were not properly tracked for the first document when starting a new batch, ensuring accurate token usage reporting. cbc1432
  • Document names are now properly sanitized to meet AWS Bedrock Converse API naming requirements, preventing API rejection errors. 924478b
  • Ensures CosmosDB chat memory auto-configuration is applied first, resolving bean dependency and initialization order issues. 55a819b
  • Resolved issues with Anthropic integration tests by updating to current model names. cc47474
  • Adds ambiguity check and improves Google GenAI authentication logic to prevent configuration conflicts 29ca4a6
  • Resolves issue where MetadataMode configuration was not being applied correctly when processing embeddings in batch mode 6fa8730
  • Corrects filter expression grouping logic in OpenSearch vector store integration to ensure accurate query results 03be3bb
  • Resolves issue where Bedrock cache metrics were not being properly included in the Usage object for monitoring and observability fc7d55d
  • Corrected the filter expression syntax for IN and NOT IN operators in Elasticsearch integration d287c39
  • Fixed message ordering issue in MongoChatMemoryRepository to ensure correct conversation history retrieval 52a5c76
  • Fixed ToolCallAdvisor to correctly preserve system messages when memory is disabled de32dd2
  • Corrected the observation provider usage for Google Generative AI embedding model to ensure proper metrics and tracing #​5227
  • Improved error handling in ChromaApi to properly catch and process exceptions f7ed9d1
  • Modified tool descriptions to help models provide geographical coordinates correctly and polished integration test classes cf55714
  • Corrected the chatClientEntityWithStructuredOutput integration test for Mistral AI 43479ac
  • Resolved string parsing issue in grammar processing fe5c3f9
  • Fixed missing Redis chat memory repository artifacts in Spring AI BOM b2cfd5e
  • Improved integration test stability by handling token count variations across different Ollama model versions f4f8d75
  • Switched Anthropic integration tests to use active model for improved test reliability 98e24eb
  • Fixed issue where Neo4jVectorStore doAdd method was ignoring session configuration 99127f6
  • General improvements and updates to Neo4jVectorStore implementation 3293a20
  • Resolved issues with Antora documentation build process 820ef7e
  • Fixed ChromaApi HTTP server/client exception message verification to properly handle error conditions 330a35c
  • Corrected typo in error message for collection existence checks #​5080
  • Updated TransformersEmbeddingModel to use raw URL for improved compatibility 0f95508
  • Resolved checkstyle execution issues in the build process 5634944
  • Addressed multiple build system issues to improve build stability b75af37
  • Fixed various errors reported by ErrorProne across the codebase to improve code quality and prevent potential bugs ad11820

📓 Documentation

  • Enhanced Javadoc to clarify supported content types for requests (string or list of media content) and responses (string only) 18a661b
  • Adds documentation explaining Java code formatting requirements and setup for contributors 60a8c76
  • Enhances documentation and test coverage for Bedrock cache metrics feature while ensuring backward compatibility 3191835
  • Corrected API reference error in user guide documentation 01ca552
  • Corrected typo in documentation #​5327
  • Added documentation for message ordering behavior in MongoChatMemoryRepository 4899e8f
  • Added dependency information to ETL pipeline documentation for easier integration 77b80f3
  • Fixed typos in code comments in commons module d3e3f6b
  • Improved documentation for Prompt functionality 72e59a4
  • Added documentation for using native structured output conversion with Mistral AI cff1cc4
  • Corrected various typos throughout the documentation d30fc15
  • Corrected step numbering in RetrievalAugmentationAdvisor documentation #​5160
  • New documentation guide covering LLM as a Judge pattern and implementation strategies 05f44e5
  • New documentation guide explaining dynamic tool discovery capabilities and usage patterns 13a7e4a
  • Corrected typos in Gemini model provider documentation 8ee553b
  • Removed redundant /v1 suffix from OpenAI base-url examples in documentation for clarity 3f9f53d
  • Added comprehensive reference documentation for Anthropic custom skills integration 23ac6ae
  • Fixed syntax error in chat options builder example code #​4915
  • Corrected broken documentation link in TokenCountBatchingStrategy Javadoc #​5083
  • Updated broken documentation link in MilvusFilterExpressionConverter Javadoc #​5028
  • Added Maven Central badge to project README for better visibility bc06e4d
  • Added documentation for Azure Vector Store custom field names feature 2e7c327
  • Added documentation for custom punctuation mark support in TokenTextSplitter 7abe9a0

🔨 Dependency Upgrades

  • Updated dependencies for vector store components to latest versions 6f12ac9
  • Updated GemFire vector store Docker image version used in integration tests a802b72
  • Upgraded Spring Boot dependency to version 3.5.11, bringing the latest bug fixes and improvements from the Spring Boot ecosystem. fceafa7
  • Updates the OpenAI Java SDK dependency to version 4.17.0 for latest features and fixes f331633
  • Updated Azure SDK dependencies to latest versions for improved security and stability db3a997
  • Updated Google GenAI SDK with support for thinking levels specific to Gemini 3 Pro and Flash models 0c07a6d
  • Updated the list of available Mistral AI chat models to include latest model offerings 2c6be59
  • Updated OpenAI Java SDK dependency to version 4.13.0 bd62378
  • Upgraded Google Generative AI SDK dependency to version 1.30.0 cf34a25

🔩 Build Updates

  • Removed AnthropicApiLegacyToolIT integration test that is no longer needed d793364
  • Updated checkstyle rules to accommodate new copyright header pattern dbcf55d
  • Updated copyright headers across non-Java files to maintain licensing consistency 5a56c7e
  • Standardized copyright headers across the codebase to use '2023-present' format for better maintenance. 5d778f0
  • Updates integration tests for Google GenAI chat auto-configuration 73fe1de
  • Simplified backport automation by using the official spring-io backport bot action #​5389
  • Reorganized build structure by moving antlr4 grammar and swagger files out of resources directory 08a4c28
  • Requalified OllamaEmbeddingOptionsTests as integration test for proper test categorization 47dd6a8
  • Moved test to IT test classification for proper test categorization #​5208
  • Corrected Checkstyle plugin configuration for code quality checks 2338b25
  • Consolidated multiple CI workflows into a single unified workflow for improved maintainability d31dc3e
  • Integrated Maven Build Cache plugin to improve build performance 36d9d7f
  • Optimized Maven Build Cache configuration for better caching efficiency 0edeaef
  • Cleaned up ambiguous test from ChatClientToolsWithGenericArgumentTypesIT 5cbc3c6
  • Updated BedrockRuntimeHints and OpenAIRuntimeHints for improved GraalVM native image compatibility 9c0c053, 612da95

🙏 Contributors

Thanks to all contributors who made this release possible:

spring-projects/spring-boot (org.springframework.boot:spring-boot-dependencies)

v3.5.16

v3.5.15

Compare Source

v3.5.14

🐞 Bug Fixes
  • ApplicationPidFileWriter does not handle symlinks correctly #​50173
  • RandomValuePropertySource is not suitable for secrets #​50172
  • Cassandra auto-configuration misconfigures CqlSessionBuilder #​50171
  • ApplicationTemp does not handle symlinks correctly #​50170
  • Remote DevTools performs comparison incorrectly #​50169
  • spring.rabbitmq.ssl.verify-hostname is applied inconsistently #​50168
  • EnversRevisionRepositoriesRegistrar should reuse @EnableEnversRepositories rather than configuring the JPA counterpart #​50035
  • Annotations like @Ssl don't work on @Bean methods when using @ServiceConnection #​50033
  • Whole number values are ignored when configuring min and max expected values and SLO boundaries for a distribution summary meter #​50021
  • WebFlux Cloud Foundry links endpoint includes query string from received request in resolved links #​50008
  • 500 response from env endpoint when supplied pattern is invalid #​49942
  • HTTP method is lost when configuring excludes in EndpointRequest #​49885
  • Docker Compose support doesn't work with apache/artemis image #​49865
  • Honor HttpMethod for reactive additional endpoint paths #​49864
  • Docker Compose support doesn't work with apache/activemq image #​49863
  • Imports on a containing test class are ignored when a nested class has imports #​49860
📔 Documentation
  • Link to the observability section of the Lettuce documentation is broken #​50092
  • Javadoc for StaticResourceLocation.FAVICON doesn't describe icons location #​50083
  • MySamlRelyingPartyConfiguration is missing a Kotlin sample #​50023
  • Incorrect default value for management.httpexchanges.recording.include in configuration metadata #​50010
  • Link to the Kubernetes documentation when discussing startup probes #​50007
  • Update docs to encourage Java fundamentals for beginners that prefer to learn that way #​49895
  • Clarify that configuration property default values are not available through the Environment #​49835
🔨 Dependency Upgrades
❤️ Contributors

Thank you to all the contributors who worked on this release:

@​MohammedGhallab, @​dlwldnjs1009, @​edwardsre, @​kodama-kcc, @​kwondh5217, @​quaff, @​refeccd, and @​scordio

v3.5.13

⚠️ Attention Required
  • Jackson has been upgraded to 2.21.2 in response to the Jackson team ending support for Jackson 2.19.x and 2.20.x. #​49365
🐞 Bug Fixes
  • WebSocket messaging's task executors are only auto-configured and stompWebSocketHandlerMapping is only forced to be eager when using Jackson #​49750
  • Metadata annotation processor ignores method-level @NestedConfigurationProperty when using constructor binding #​49734
  • Override of property in external 'application.properties' or 'application.yaml' is ignored #​49724
  • Some sliced tests that import TransactionAutoConfiguration do not import TransactionManagerCustomizationAutoConfiguration #​49716
  • NativeImageResourceProvider does not find Flyway migration scripts in subdirectories #​49661
  • @GraphQlTest does not include @ControllerAdvice #​49660
📔 Documentation
  • Fix incorrect indefinite articles in Javadoc #​49723
  • Add some more Kotlin examples and trivial style fixes #​49710
🔨 Dependency Upgrades
❤️ Contributors

Thank you to all the contributors who worked on this release:

@​Joowon-Seo, @​deejay1, @​dlwldnjs1009, and @​ljrmorgan

v3.5.12

🐞 Bug Fixes
  • EndpointRequest request matcher for health groups is too complex #​49648
  • "/cloudfoundryapplication" web path is not limited to Actuator #​49645
  • RSocket exposes duplicate endpoint for websocket setups #​49592
  • Fix EndpointRequest.toLinks() when base-path is '/' #​49591
  • SpringBootContextLoader mentions class that no longer exists in message for classes or locations assertion #​49518
  • "spring.main.cloud-platform=none" does not disable cloud features #​49478
  • Using @AutoConfigureWebTestClient prevents separate configuration of spring.test.webtestclient.timeout from taking effect #​49340
  • Ordering of 'spring.config.import' is inconsistent when defined in environment or system properties #​49324
  • RouterFunctions descriptions in Actuator do not support nesting #​49289
  • Maven plugin does not set '-parameters' option when processing AOT code #​49268
  • SSL support with Docker Compose does not work as documented #​49210
  • Docker fails when a 'tcp://' address ends with a slash (for example 'tcp://docker:2375/') #​49055
📔 Documentation
  • List all supported colors when describing color-coded log output #​49561
  • Clarify that running is the only supported input state when triggering a Quartz job through the Actuator endpoint #​49506
  • Tutorial in the reference guide has outdated instructions #​49411
  • Javadoc of JettyHttpClientBuilder refers to the wrong type #​49364
  • Example spring-devtools.properties file is shown in the wrong format #​49357
  • Mention using org.springframework.boot.aot Gradle plugin directly for AOT processing with

Note

PR body was truncated to here.


Configuration

📅 Schedule: (in timezone Asia/Seoul)

  • Branch creation
    • "before 10am on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@claude

claude Bot commented Jun 21, 2026

Copy link
Copy Markdown

Claude finished @renovate[bot]'s task in 1m 59s —— View job


🤖 Claude 의존성 영향도 분석

진행 중

  • PR 컨텍스트 파악
  • gradle/libs.versions.toml 변경 확인
  • lockfile diff 확인 (주요 transitive 의존성)
  • q-asker 코드 내 Spring AI / Spring Boot 사용처 분석
  • 영향도 판단 및 보고서 작성

📦 변경점 요약

라이브러리 이전 버전 새 버전 종류
org.springframework.ai:spring-ai-bom 1.1.2 1.1.8 patch
org.springframework.boot 3.5.8 3.5.16 patch

Spring AI 1.1.2 → 1.1.8 핵심 변경 내용:

  • 1.1.6 ⚠️ Breaking Change: Chat memory advisors가 명시적 conversation ID를 요구하도록 변경, PromptChatMemoryAdvisor deprecated (q-asker는 미사용 → 해당 없음)
  • 1.1.8 의존 Spring Boot를 3.5.15로 내부 업그레이드, MCP SDK 0.17.00.18.3
  • Google GenAI SDK (google-genai): 1.28.01.37.0 (Spring AI가 내부적으로 사용하는 Gemini 통신 SDK 대폭 업그레이드)

Spring Boot 3.5.8 → 3.5.16 핵심 변경 내용:

  • 모두 patch 업데이트, breaking change 없음
  • 보안 패치 다수 포함

주요 transitive 의존성 변화 (lockfile 기준):

라이브러리 이전 이후
Spring Framework 6.2.14 / 6.2.17 (버전 혼재) 6.2.19 (단일 버전으로 통일)
Spring Security 6.5.7 6.5.11
Spring Data JPA 3.5.6 3.5.13
Hibernate ORM 6.6.36.Final 6.6.53.Final
Tomcat Embed 10.1.49 / 10.1.53 (혼재) 10.1.55
Micrometer 1.15.6 / 1.15.10 (혼재) 1.15.12
Jackson 2.19.4 / 2.21.2 (혼재) 2.21.4 (단일 버전으로 통일)
Logback 1.5.21 / 1.5.32 (혼재) 1.5.34
MySQL Connector 9.5.0 9.7.0
google-genai SDK 1.28.0 1.37.0
MCP SDK 0.17.0 0.18.3 (mcp-core 신규 아티팩트 추가)
Caffeine 3.2.3 3.2.4

참고: 이전에는 Spring AI BOM(1.1.2)이 compileClasspath에 Jackson 2.19.4를 강제하고 runtime에는 2.21.2가 들어오는 버전 혼재 상태였음. 이 PR 이후 2.21.4로 통일되어 오히려 더 안정적인 상태로 개선됨.


🎯 Q-Asker 영향도: 🟡 MEDIUM

Spring AI 사용처 (modules/quiz-ai/impl 전용):

  • GeminiChatService.javaChatModel, Prompt, GoogleGenAiChatOptions, GoogleGenAiThinkingLevel, GoogleGenAiUsage를 직접 사용하여 Gemini API 호출 및 응답 파싱
  • GeminiMetricsRecorder.javaUsage 인터페이스로 token count 추출 후 Prometheus 메트릭 기록
  • GeminiClientConfig.javaGoogleGenAiConnectionProperties로 Vertex AI 클라이언트 빈 생성
  • EssayGradingServiceImpl.java, EssayQuizOrchestrator.java, BlankQuizOrchestrator.java, MultipleQuizOrchestrator.java, OXQuizOrchestrator.java — 퀴즈 생성 오케스트레이터에서 Spring AI 인터페이스 사용
  • GeminiResponseSchema.java, GeminiEssayResponseSchema.java — 응답 스키마 정의

Spring Boot 사용처:

  • 전 모듈 공통 기반 프레임워크. 직접 사용하는 클래스 열거 불필요.

예상 영향:

  • ChatModel, GoogleGenAiChatOptions, GoogleGenAiUsage, GoogleGenAiThinkingLevel 등 우리가 직접 사용하는 Spring AI API는 1.1.3~1.1.8 release notes에서 변경 이력 없음 → 코드 수정 불필요
  • Breaking Change인 Chat Memory Advisor 변경(1.1.6)은 q-asker 코드에서 PromptChatMemoryAdvisor 미사용 → 해당 없음
  • 주의: google-genai SDK가 1.28.01.37.0으로 대폭 상승. Spring AI가 추상화 레이어로 감싸고 있으나, Gemini API 통신 동작 변화 가능성 있음. 특히 캐시 콘텐츠 처리, thinking token 카운팅(getCachedContentTokenCount, getThoughtsTokenCount) 동작 확인 필요
  • Hibernate 6.6.366.6.53 (17 patch 건너뜀): 대용량 패치, JPA 엔티티 동작 안정성 확인 권장

✅ 권장 액션

  • CI 결과 green 확인
  • 로컬 ./gradlew test 실행으로 JUnit 테스트 통과 확인
  • Gemini 캐시 토큰 카운팅 메트릭(gemini.tokens.cached) 및 thinking 토큰 메트릭 정상 기록 여부 확인 (GeminiChatService, GeminiMetricsRecorder)
  • (선택) 실제 PDF 업로드 후 퀴즈 생성 시나리오 E2E 동작 확인

📋 참고

  • Release Notes: PR 본문 참조
  • 분석 모델: claude-sonnet-4-6

@renovate renovate Bot force-pushed the renovate/spring branch 6 times, most recently from debcb8a to 3002544 Compare June 29, 2026 16:08
@renovate renovate Bot force-pushed the renovate/spring branch from 3002544 to 60c7c7c Compare June 29, 2026 16:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants