Skip to content

Conversation

Copy link

Copilot AI commented Jan 27, 2026

  • Investigate version differences between 1.0 and 0.3.x
  • Review release notes and changelog
  • Summarize key changes
  • Create MIGRATION.md with upgrade guide from 0.3.x to 1.0.0
  • Address code review feedback

Migration Guide Contents

The new MIGRATION.md file includes:

Breaking Changes Covered

  • Domain classes converted to Java Records
  • Builder pattern changes (static factory methods)
  • JSON library migration (Jackson → Gson)
  • Blocking default changed (true → false)
  • Removed kind discriminator
  • Error classes reworked
  • Push notification config renamed
  • MicroProfile Config dependency removed

New Features Documented

  • Bill of Materials (BOM) usage
  • List Tasks API
  • Pagination support
  • Pluggable HTTP client

Step-by-Step Migration Instructions

  • Code examples for before/after
  • Dependency updates
  • Common migration patterns
Original prompt

1.0 版本对比 0.3x 主要的改动是什么?


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI changed the title [WIP] Compare major changes between version 1.0 and 0.3x docs: Analysis of 1.0 vs 0.3.x version differences Jan 27, 2026
Copilot AI requested a review from yattin January 27, 2026 02:37
@yattin
Copy link
Owner

yattin commented Jan 27, 2026

@copilot 从0.3x 升级的指引

Copilot AI and others added 2 commits January 27, 2026 03:08
Co-authored-by: yattin <3020892+yattin@users.noreply.github.com>
Co-authored-by: yattin <3020892+yattin@users.noreply.github.com>
Copy link
Author

Copilot AI commented Jan 27, 2026

@copilot 从0.3x 升级的指引

已添加 MIGRATION.md 升级指引文档(commit 60e31a3),包含:

Breaking Changes 迁移说明

  • Domain 类转为 Java Records(getter 访问方式变更)
  • Builder 模式改为静态工厂方法
  • Jackson → Gson JSON 库迁移
  • blocking 默认值从 true 改为 false
  • 移除 kind 鉴别器
  • 错误类重构
  • pushNotification 重命名为 pushNotificationConfig
  • 移除 MicroProfile Config 硬依赖

新功能文档

  • BOM 依赖管理
  • List Tasks API 及分页
  • 可插拔 HTTP 客户端

逐步迁移指南:包含 before/after 代码示例。

@yattin
Copy link
Owner

yattin commented Jan 27, 2026

@copilot 如果配置了 push 端点,使用这个SDK作为服务端,是否会自动推送到这个订阅端点?

Copy link
Author

Copilot AI commented Jan 27, 2026

@copilot 如果配置了 push 端点,使用这个SDK作为服务端,是否会自动推送到这个订阅端点?

是的,SDK 服务端会自动推送到配置的端点。

工作机制

  1. 客户端调用 setTaskPushNotificationConfig 配置推送 URL
  2. PushNotificationConfigStore 存储配置(默认为内存存储)
  3. 任务状态变更时,DefaultRequestHandler 自动调用 PushNotificationSender.sendNotification(task)
  4. BasePushNotificationSender 会向所有配置的 URL 发送 HTTP POST 请求(JSON 格式的 Task 对象)

推送时机

  • 流式响应:每次事件发送给客户端后触发
  • 阻塞响应:初始响应返回后触发

自定义实现
可通过 CDI @Alternative 替换默认实现,支持 Kafka、SNS/SQS、WebSocket 等推送方式。

参考代码:

  • BasePushNotificationSender - HTTP 推送实现
  • PushNotificationConfigStore - 配置存储接口

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants