ONE QUESTION AT A TIME.

천천히 생각하고, 분명하게.

TODAY’S QUESTION20 / 1500
AI 에이전트난이도 중하5분 답변 목표 · 보강본

원격 에이전트가 작업 ID를 반환한 뒤 입력을 기다리거나 연결이 끊깁니다. A2A의 메시지·작업·산출물은 어떻게 추적하나요?

잠깐, 답변을 보기 전에
먼저 내 말로 설명해 볼까요?

답변과 점검 포인트 펼치기답변 접기
01

구두 답변

정의를 외우기보다, 원리와 조건을 연결해 설명해 보세요.

메시지는 상호작용 내용이고, task는 서버가 관리하는 작업 수명이며, artifact는 그 작업이 만든 결과물입니다. 진행 메시지를 받았다고 작업이 끝난 것은 아니고 결과 조각이 왔다고 최종 산출물이 확정된 것도 아닙니다. 서버가 발급한 작업 ID를 기준으로 상태와 결과를 추적하고, 사용자 대기와 실제 실행 수명을 분리하겠습니다.

상태 전이를 명시적으로 처리합니다

확인한 A2A 1.0 명세는 접수·실행·완료·실패·취소·거절과 입력·인증 대기 같은 상태를 구분합니다. 완료·실패·취소·거절처럼 종료된 task를 새 메시지로 임의 재개할 수 있다고 가정하지 않습니다. 추가 입력 대기는 실제 사용자 응답이 필요한지, 인증 절차가 필요한지 나누고 해당 작업과 입력의 상관관계를 유지합니다. 에이전트가 스스로 사용자의 승인을 만들어 상태를 진행시키면 안 됩니다.

실시간 스트리밍이 지원되면 상태 변화와 artifact 갱신을 받을 수 있지만 알림 연결이 작업 자체는 아닙니다. 재구독에서 현재 작업 스냅샷을 받고 이후 갱신을 적용하는 계약을 확인합니다. 모든 과거 메시지의 영구 보존이나 이벤트 재생이 자동 제공된다고 가정하지 않고, 클라이언트는 필요한 작업 ID·확인한 결과·미완료 상태를 별도로 기록합니다. polling이나 webhook 지원도 Agent Card와 실제 구현에서 확인합니다.

결과 확정과 취소의 한계

여러 조각으로 온 산출물은 ID와 추가·교체 의미를 따라 결합합니다. 같은 내용을 두 번 수신해도 중복 문단이나 중복 실행이 생기지 않게 하고, 마지막 결과를 실제 저장된 상태와 대조합니다. task 완료는 상대의 처리 종료 선언이므로 보고서의 근거·형식·권한 준수는 요청자가 다시 평가해야 합니다. 부분 결과를 사용자에게 보여 줄 때도 미완료임을 표시합니다.

취소 요청은 지원 여부와 현재 상태에 따라 거절되거나 늦게 반영될 수 있습니다. 이미 발송된 메일이나 결제는 task를 cancelled로 표시해도 되돌아가지 않습니다. 재시도 전에 작업 조회로 기존 실행을 확인하고 논리 요청 중복을 통제합니다. 인증된 사용자만 자신의 task와 artifact를 읽고 취소할 수 있게 하며, webhook 주소 검증과 이벤트 인증도 별도로 둡니다. 테스트는 응답 유실·재구독·중복 이벤트·입력 대기 중 재시작·종료된 작업의 재호출을 포함해 상태가 모호한 채 성공으로 보고되지 않는지 확인하겠습니다.

실행 사례로 확인합니다

사용자가 입력 대기 task에 응답할 때 task ID를 잘못 연결하면 다른 조사 작업에 답을 적용할 수 있습니다. UI와 실행기는 작업의 목표·요청한 필드·현재 상태를 함께 보여 주고 사용자의 응답을 해당 상태 전이에만 적용합니다. 같은 응답이 네트워크 재시도로 두 번 도착해도 새 행동을 중복 실행하지 않게 합니다. webhook을 쓰면 수신 이벤트를 검증한 뒤 권위 상태를 다시 조회하는 구조를 사용할 수 있으며 이벤트 순서와 중복 계약을 실제 버전에서 확인합니다. 일부 이벤트를 받았다는 이유만으로 모든 artifact 조각을 받았다고 가정하지 않고 최종 결과의 완전성을 별도로 검사하겠습니다.

02

득점 포인트

이해가 드러나는 지점을 확인해 보세요.

  • message·task·artifact를 상호작용·수명·결과로 구분한다.
  • 종료 상태와 입력 대기, 스트림 연결과 작업 실행을 나눈다.
  • 재구독·중복 결과·인가·취소 한계를 실제 계약으로 검증한다.
03

감점 포인트

놓치기 쉬운 조건과 오해를 짚어 보세요.

  • 스트림 종료가 task 완료나 취소를 뜻한다고 한다.
  • 모든 메시지와 이벤트가 무한 재생된다고 가정한다.
  • 종료된 작업을 아무 메시지로나 다시 실행한다.
04

더 파고들 거리

하나 더 질문하며 이해의 범위를 넓혀 보세요.

  • 원격 task 취소 뒤 외부 메일이 이미 발송됐다면 어떤 상태를 보고하나요?
  • task ID와 산출물 조각을 재시작 뒤 어떻게 연결하나요?
  • 상대의 completed 상태 외에 최종 결과의 성공을 무엇으로 검증하나요?

득점·감점 포인트는 학습용 자기 점검 기준이며, 특정 회사의 실제 채점표가 아닙니다.

원리부터 공부하고 싶다면

답변을 보충하는 개념·예제·슈도코드를 읽어 보세요.

← 전체 질문 보기