[FR]: Testing agent should handle AppFunctionUriGrant results and pass returned images to the model
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Start with AgentOrchestrator.handleLlmResponse around line 301 and trace how function results are converted into chat content; compare the existing imageUri handling with AppFunctionUriGrant. Then inspect GeminiProviderImpl to see how the next model turn is built. Done means granted image URIs reach Gemini as image input and the returned image is handled in chat as described.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
A function can return an image the standard way, as an AppFunctionUriGrant (a content URI plus FLAG_GRANT_READ_URI_PERMISSION). The Testing Agent doesn't recognize this:
- Not shown:
AgentOrchestrator.handleLlmResponse(around line 301) only picks up images from a result field namedimageUri, the agent's own convention fromgenerateImage(see #12). A standardAppFunctionUriGrantresult is passed to the model as plain text, and no image appears in the chat. - Not seen by the model: even with
imageUri, the image is only attached to the chat message for the user.GeminiProviderImplnever sends image content to the model, so a function's returned image never reaches the LLM.
Why it matters
Visual apps rely on returning renders so the agent can check its own work. For example, a design app can expose renderDesign(): AppFunctionUriGrant and instruct the agent to render after changes and correct what it sees. With the Testing Agent, the model works blind, so this loop can't be tested at all, even though it is exactly the kind of flow a system agent would need to support.
Suggested behavior
- Recognize
AppFunctionUriGrant(or any result whose URI points to animage/*type) as an image result, alongside theimageUriconvention. - Read it through the granted permission and attach it to the next model turn as image input (Gemini
inline_data), so the model can see it. - Optionally show it inline in the chat, as #12 did for
imageUri.
Environment
- Testing Agent at a3a2a89 (main, Oct 23, 2026)
- androidx.appfunctions 1.0.0-beta01
- Android 17 (API 37) emulator
Related: #12 (inline image URIs in the chat), #62.
- Ngôn ngữ chính
- Kotlin
- Star
- 210
- Fork
- 45
- Merge trung bình
- 12 giờ 24 phút
- Pull request đã merge (30 ngày)
- 3
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của android/appfunctions
-
documentation
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
android/appfunctions#66 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
android/appfunctions#62 ·
-
Độ khó 4/5 1-2 ngày Mức phù hợp với người mới 55/100
android/appfunctions#64 ·
-
Clarify production invocation, Android Auto support, and Android 16 fallback in AppFunctions docsĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
android/appfunctions#51 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
android/appfunctions#50 · 1 bình luận ·
Tất cả issue của android/appfunctions
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
tiann/hapi#2253 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 4 ngày
-
[Request] 多闪Đang mởrequest-adaption
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 75/100
BetterAndroid/android-notification-icon-project#814 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
yunfie-twitter/Palleria#474 ·
Maintainer thường phản hồi trong vòng 1 ngày