# adk-python(2026-02-23~2026-02-27) 포팅/Gap 반영 보고서

## 범위
- 기준: `adk_dart/reports/adk-python/2026-02-23..27.md`
- 목표: 해당 기간 `adk-python` 변경사항을 `adk_dart`에 1:1 반영하고 기능 gap을 제거

## 1:1 포팅 반영 내역
- A2A Executor 인터셉터 프레임워크 추가
  - `before_agent`, `after_event`, `after_agent` 체인 지원
  - 파일: `lib/src/a2a/executor/a2a_agent_executor.dart`
- RemoteA2aAgent request interceptor 추가
  - `before_request`, `after_request` + 파라미터 컨텍스트(`requestMetadata`, `clientCallContext`) 지원
  - 기존 `a2aRequestMetaProvider` 하위호환 유지
  - 파일: `lib/src/agents/remote_a2a_agent.dart`
- Gemini 스키마 변환에서 JSON Schema boolean schema 처리
  - `true/false` 스키마를 안전한 object 스키마로 변환
  - 파일: `lib/src/tools/_gemini_schema_util.dart`
- Bigtable `execute_sql` 파라미터 지원
  - `parameters`, `parameterTypes` 전달 경로 추가
  - 파일: `lib/src/tools/bigtable/client.dart`, `lib/src/tools/bigtable/query_tool.dart`
- OpenAPI path 내 embedded query params 보존
  - path query/fragment를 분리하여 `params`로 병합
  - 파일: `lib/src/tools/openapi_tool/openapi_spec_parser/rest_api_tool.dart`
- A2A TextPart thought metadata 역변환 반영
  - `adk_thought` 메타데이터 -> GenAI Part `thought`
  - 파일: `lib/src/a2a/converters/part_converter.dart`
- LiteLLM OpenAI strict JSON schema enforcement 반영
  - `additionalProperties=false`, `required` 보강, `$ref` sibling 제거
  - OpenAI strict payload(`strict=true`) 구성
  - 파일: `lib/src/models/lite_llm.dart`
- ComputerUse function response 이미지 디코딩 경로 반영
  - tool 응답의 base64 이미지를 inline image part로 추가하고 response map에서 image 제거
  - 파일: `lib/src/flows/llm_flows/functions.dart`
- ServiceAccount ID token 교환 관련 필드 반영
  - `useIdToken`, `audience` 모델/파싱/직렬화 반영
  - exchanger 검증(`useIdToken=true` 시 audience 필요) 추가
  - 파일: `lib/src/auth/auth_credential.dart`, `lib/src/auth/auth_preprocessor.dart`, `lib/src/auth/auth_tool.dart`, `lib/src/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.dart`, `lib/src/tools/openapi_tool/openapi_spec_parser/rest_api_tool.dart`, `lib/src/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.dart`
- PlanReActPlanner 문구 오탈자 수정
  - 파일: `lib/src/planners/plan_re_act_planner.dart`
- BashTool 신규 추가
  - `execute_bash` 도구, prefix 정책 검증, confirmation, timeout 실행
  - 파일: `lib/src/tools/bash_tool.dart`, `lib/adk_dart.dart`

## 기능 동작 gap 재검토 및 반영
- 인터셉터가 실제 런타임 이벤트/요청 파이프라인에 개입하는지 검증 케이스 추가
- Bigtable/RestApiTool/LiteLLM/ComputerUse/Auth 각각의 누락 동작을 테스트로 고정

## 테스트 반영
- 추가/보강 테스트
  - `test/a2a_parity_test.dart`
  - `test/remote_a2a_agent_parity_test.dart`
  - `test/tools_schema_utils_test.dart`
  - `test/bigtable_parity_test.dart`
  - `test/openapi_rest_api_tool_parity_test.dart`
  - `test/models_parity_batch2_test.dart`
  - `test/computer_use_parity_test.dart`
  - `test/openapi_auth_common_parity_test.dart`
  - `test/bash_tool_parity_test.dart` (신규)

## 검증 결과
- 실행 명령:
  - `dart test test/a2a_parity_test.dart test/remote_a2a_agent_parity_test.dart test/openapi_rest_api_tool_parity_test.dart test/models_parity_batch2_test.dart test/bash_tool_parity_test.dart test/computer_use_parity_test.dart test/bigtable_parity_test.dart test/tools_schema_utils_test.dart test/openapi_auth_common_parity_test.dart`
- 결과:
  - 모든 테스트 통과

