a2ui-project / a2ui-project/a2ui
Migrate genui (Flutter SDK) to A2UI protocol v1.0
- Ngôn ngữ chính
- TypeScript
- Star
- 16.4k
- Fork
- 1.3k
- Merge trung bình
- 2 ngày 13 giờ
- Pull request đã merge (30 ngày)
- 134
Mô tả
## Description
The Flutter GenUI SDK (flutter/genui) currently implements A2UI protocol v0.9/v0.9.1. The v1.0 specification is now published ([evolution guide](https://a2ui.org/specification/v1.0-evolution-guide/), [v1.0 spec + schemas](https://github.com/a2ui-project/a2ui/tree/main/specification/v1_0)), and the SDK should be migrated to it.
Scope (per the evolution guide):
- `version: "v1.0"` envelopes and capabilities/data-model namespaces
- `createSurface`: `theme` → `surfaceProperties`, inline `components`/`dataModel`
- Bidirectional RPC: `callFunction`/`functionResponse` with `callableFrom` runtime boundary checks (`INVALID_FUNCTION_CALL`), and `actionResponse` correlated by `actionId`/`wantResponse`
- Explicit-null deletion in `updateDataModel` (also resolves #1896)
- Catalog changes: `functions` as a map with static `returnType`/`callableFrom`, `$defs/surfaceProperties`, optional `instructions`, UAX #31 entity naming
- Basic catalog: `TextField.placeholder`, `Slider.steps`, `Video.posterUrl`
- `@index` system function in template loops; `@` prefix reserved
- A2A extension URI `a2ui/v1.0` and `application/a2ui+json` MIME type
## Implementation
PR: flutter/genui#996
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Hướng dẫn đóng góp
Hướng nghiên cứu
The work is in the Flutter GenUI SDK (flutter/genui). Start by reading the v1.0 evolution guide and specification linked in the issue. The PR flutter/genui#996 is closed but not merged, so examine its changes to understand the migration scope. Focus on updating envelope version, surface creation, bidirectional RPC, data model updates, and catalog changes. Verify changes against the closed PR and run existing tests to ensure compatibility.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- flutter, typescript
- Lĩnh vực
- api, backend-api-design, mobile
- Loại issue
- Tái cấu trúc
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Ít trao đổi
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100