워크스페이스 조정 로직
이 문서는 다양한 이벤트가 데이터베이스 레코드를 어떻게 변경하는지, 그리고 rails와 agentk 간의 통신이 이러한 이벤트를 어떻게 반영하는지 보여줍니다. 두 종류의 워크스페이스 조정 업데이트가 존재합니다: full과 partial.
이 문서는 다양한 이벤트가 데이터베이스 레코드를 어떻게 변경하는지, 그리고 rails와 agentk 간의 통신이 이러한 이벤트를 어떻게 반영하는지 보여줍니다.
두 종류의 워크스페이스 조정 업데이트가 존재합니다: full과 partial.
자세한 내용은 메시지 유형을 참조하십시오.
부분 동기화 시나리오 모델링#
request- 발생하는 이벤트.CURRENT_DB_STATE는 이벤트 발생 전 데이터베이스 상태를 설명합니다.include config_to_apply in workspace_rails_info response?CURRENT_DB_STATE및USER_ACTION이벤트의 경우 해당 없음.-로 표시.AGENT_ACTION이벤트의 경우 -agentk로부터 받은 워크스페이스 정보로 데이터베이스가 업데이트되기 전 데이터베이스 상태를 기준으로,desired_state_updated_at >= responded_to_agent_at조건에 따라 Rails가agentk에config_to_apply정보를 보내야 하는가?
include deployment_resource_version in workspace_rails_info response?- Rails가agentk에deployment_resource_version정보를 보내야 하는가?- 이 필드는 아래 표에서 간결성을 위해 표시하지 않습니다. 아래 시나리오에서는 항상 true로 평가됩니다(agentk 또는 사용자로부터 업데이트 없음 시나리오 제외).
- 평가 규칙:
agentk로부터 워크스페이스에 대한 정보를 받은 경우 - Yes- 워크스페이스에 적용할 설정이
agentk에 전송되는 경우 - Yes - 그 외 - No
desired_state_updated_at,responded_to_agent_at,desired_state,actual_state- 이벤트 발생 후 데이터베이스 상태responded_to_agent_at는 Rails가 워크스페이스에 대한 정보를 에이전트에 응답할 때 항상 현재 타임스탬프로 업데이트됩니다. 정보에는config_to_apply또는deployment_resource_version또는 둘 다 포함될 수 있습니다.
desired: Running / actual: CreationRequested → desired: Running / actual: Running#
사용자가 새 워크스페이스를 요청하여 Running 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 빈 데이터베이스 |
- | ||||
USER_ACTION - 사용자가 새 워크스페이스 요청 |
- | Running | CreationRequested | 05:00 | |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Running | CreationRequested | 05:00 | 05:01 |
AGENT_ACTION - agentk가 Starting으로 보고 |
N | Running | Starting | 05:00 | 05:02 |
AGENT_ACTION - agentk가 Running으로 보고 |
N | Running | Running | 05:00 | 05:03 |
desired: Running / actual: CreationRequested → desired: Running / actual: Failed#
사용자가 새 워크스페이스를 요청하여 Failed 실제 상태가 됩니다 (예: 컨테이너 충돌).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 빈 데이터베이스 |
- | ||||
USER_ACTION - 사용자가 새 워크스페이스 요청 |
- | Running | CreationRequested | 05:00 | |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Running | CreationRequested | 05:00 | 05:01 |
AGENT_ACTION - agentk가 Starting으로 보고 |
N | Running | Starting | 05:00 | 05:02 |
AGENT_ACTION - agentk가 Failing으로 보고 |
N | Running | Failed | 05:00 | 05:03 |
desired: Running / actual: CreationRequested → desired: Running / actual: Error#
사용자가 새 워크스페이스를 요청하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 빈 데이터베이스 |
- | ||||
USER_ACTION - 사용자가 새 워크스페이스 요청 |
- | Running | CreationRequested | 05:00 | |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Running | CreationRequested | 05:00 | 05:01 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Running | Error | 05:00 | 05:02 |
desired: Running / actual: Running → desired: Stopped / actual: Stopped#
사용자가 실행 중인 워크스페이스를 중지하여 Stopped 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Stopped | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Stopping으로 보고 |
N | Stopped | Stopping | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Stopped로 보고 |
N | Stopped | Stopped | 05:02 | 05:05 |
desired: Running / actual: Running → desired: Stopped / actual: Failed#
사용자가 실행 중인 워크스페이스를 중지하여 Failed 실제 상태가 됩니다 (예: 볼륨 마운트 해제 실패로 워크스페이스 중지 불가).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Stopped | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Stopping으로 보고 |
N | Stopped | Stopping | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Failed로 보고 |
N | Stopped | Failed | 05:02 | 05:05 |
desired: Running / actual: Running → desired: Stopped / actual: Error#
사용자가 실행 중인 워크스페이스를 중지하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Stopped | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Stopped | Error | 05:02 | 05:04 |
desired: Running / actual: Running → desired: Terminated / actual: Terminated#
사용자가 실행 중인 워크스페이스를 종료하여 Terminated 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Terminated로 보고 |
N | Terminated | Terminated | 05:02 | 05:04 |
desired: Running / actual: Running → desired: Terminated / actual: Failed#
사용자가 실행 중인 워크스페이스를 종료하여 Failed 실제 상태가 됩니다 (예: 볼륨 마운트 해제 실패로 워크스페이스 종료 불가).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Failed로 보고 |
N | Terminated | Failed | 05:02 | 05:04 |
desired: Running / actual: Running → desired: Terminated / actual: Error#
사용자가 실행 중인 워크스페이스를 종료하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Terminated | Error | 05:02 | 05:04 |
desired: Stopped / actual: Stopped → desired: Running / actual: Running#
사용자가 중지된 워크스페이스를 시작하여 Running 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Stopped 상태 |
- | Stopped | Stopped | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 시작 |
- | Running | Stopped | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Running | Stopped | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Starting으로 보고 |
N | Running | Starting | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Running으로 보고 |
N | Running | Running | 05:02 | 05:05 |
desired: Stopped / actual: Stopped → desired: Running / actual: Failed#
사용자가 중지된 워크스페이스를 시작하여 Failed 실제 상태가 됩니다 (예: 컨테이너 충돌).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Stopped 상태 |
- | Stopped | Stopped | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 시작 |
- | Running | Stopped | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Running | Stopped | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Starting으로 보고 |
N | Running | Starting | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Failed로 보고 |
N | Running | Failed | 05:02 | 05:05 |
desired: Stopped / actual: Stopped → desired: Running / actual: Error#
사용자가 중지된 워크스페이스를 시작하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Stopped 상태 |
- | Stopped | Stopped | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 시작 |
- | Running | Stopped | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Running | Stopped | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Running | Error | 05:02 | 05:04 |
desired: Stopped / actual: Stopped → desired: Terminated / actual: Terminated#
사용자가 중지된 워크스페이스를 종료하여 Terminated 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Stopped 상태 |
- | Stopped | Stopped | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Stopped | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Stopped | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Terminated로 보고 |
N | Terminated | Terminated | 05:02 | 05:04 |
desired: Stopped / actual: Stopped → desired: Terminated / actual: Failed#
사용자가 중지된 워크스페이스를 종료하여 Failed 실제 상태가 됩니다 (예: 볼륨 마운트 해제 실패로 워크스페이스 종료 불가).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Stopped 상태 |
- | Stopped | Stopped | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Stopped | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Stopped | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Failed로 보고 |
N | Terminated | Failed | 05:02 | 05:04 |
desired: Stopped / actual: Stopped → desired: Terminated / actual: Error#
사용자가 중지된 워크스페이스를 종료하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Stopped 상태 |
- | Stopped | Stopped | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Stopped | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Stopped | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Terminated | Error | 05:02 | 05:04 |
desired: Running / actual: Failed → desired: Running / actual: Running#
실패한 워크스페이스가 정상화되어 Running 실제 상태가 됩니다 (예: 컨테이너 충돌 해소).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
AGENT_ACTION - agentk가 Starting으로 보고 |
N | Running | Starting | 05:00 | 05:02 |
AGENT_ACTION - agentk가 Running으로 보고 |
N | Running | Running | 05:00 | 05:03 |
desired: Running / actual: Failed → desired: Stopped / actual: Stopped#
실패한 워크스페이스를 사용자가 중지하여 Stopped 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Stopped | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Stopping으로 보고 |
N | Stopped | Stopping | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Stopped로 보고 |
N | Stopped | Stopped | 05:02 | 05:05 |
desired: Running / actual: Failed → desired: Stopped / actual: Failed#
실패한 워크스페이스를 사용자가 중지하여 Failed 실제 상태가 됩니다 (예: 볼륨 마운트 해제 실패로 워크스페이스 중지 불가).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Stopped | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Failed로 보고 |
N | Stopped | Failed | 05:02 | 05:04 |
desired: Running / actual: Failed → desired: Stopped / actual: Error#
실패한 워크스페이스를 사용자가 중지하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Stopped | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Stopped | Error | 05:02 | 05:04 |
desired: Running / actual: Failed → desired: Terminated / actual: Terminated#
실패한 워크스페이스를 사용자가 종료하여 Terminated 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Terminated로 보고 |
N | Terminated | Terminated | 05:02 | 05:04 |
desired: Running / actual: Failed → desired: Terminated / actual: Failed#
실패한 워크스페이스를 사용자가 종료하여 Failed 실제 상태가 됩니다 (예: 볼륨 마운트 해제 실패로 워크스페이스 종료 불가).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Failed로 보고 |
N | Terminated | Failed | 05:02 | 05:04 |
desired: Running / actual: Failed → desired: Terminated / actual: Error#
실패한 워크스페이스를 사용자가 종료하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Terminated | Error | 05:02 | 05:04 |
desired: Running / actual: Error → desired: Stopped / actual: Error#
오류 상태의 워크스페이스를 사용자가 중지하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
이 전환은 허용되지 않을 수 있습니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Terminated | Error | 05:02 | 05:04 |
desired: Running / actual: Error → desired: Terminated / actual: Error#
오류 상태의 워크스페이스를 사용자가 종료하여 Error 실제 상태가 됩니다 (예: Kubernetes 리소스 적용 실패).
이 전환은 허용되지 않을 수 있습니다. 허용되지 않을 경우 정리되지 않은 상태가 남는지 여부를 추가 평가가 필요합니다. 워크스페이스가 처음부터 생성되지 않은 경우 또는 워크스페이스가 성공적으로 생성되었지만 중지되는 중에 Error 상태로 진입한 경우를 고려하십시오.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Failed 상태 |
- | Running | Failed | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 종료 |
- | Terminated | Failed | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | Terminated | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Error로 보고 |
N | Terminated | Error | 05:02 | 05:04 |
기타 시나리오#
agentk가 워크스페이스를 보고하고 사용자도 워크스페이스의 원하는 상태를 업데이트한 경우#
이 시나리오는 agentk가 워크스페이스를 보고하면서 사용자도 워크스페이스에 대한 작업을 수행한 경우를 보여줍니다. 이는 양쪽(에이전트와 Rails) 모두 새 정보가 있는 경우에도 이 로직이 작동함을 강조합니다.
시나리오 세부 사항:
- 워크스페이스가 이전에 실행 중이었음
- 워크스페이스가 현재 충돌하기 시작함 (Failed 상태)
- 사용자가 워크스페이스가 충돌하기 시작한 것을 인식하지 못한 채 더 이상 필요하지 않아 중지함
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
USER_ACTION - 사용자가 워크스페이스 중지 |
- | Stopped | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk가 Failed로 보고 |
Y | Stopped | Failed | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Stopping으로 보고 |
N | Stopped | Stopping | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Stopped로 보고 |
N | Stopped | Stopped | 05:02 | 05:05 |
워크스페이스 재시작#
사용자가 실행 중인 워크스페이스를 재시작하여 Running 실제 상태가 됩니다.
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
| 사용자가 워크스페이스 재시작 | - | RestartRequested | Running | 05:02 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
Y | RestartRequested | Running | 05:02 | 05:03 |
AGENT_ACTION - agentk가 Stopping으로 보고 |
N | RestartRequested | Stopping | 05:02 | 05:04 |
AGENT_ACTION - agentk가 Stopped로 보고, desired_state가 자동으로 Running으로 변경 |
Y | Running | Stopped | 05:05 | 05:05 |
AGENT_ACTION - agentk가 Starting으로 보고 |
N | Running | Starting | 05:05 | 05:07 |
AGENT_ACTION - agentk가 Running으로 보고 |
N | Running | Running | 05:05 | 05:08 |
agentk 또는 사용자로부터 워크스페이스 업데이트 없음 {#no-update-for-workspace-from-agentk-or-from-user}#
Rails가 이 워크스페이스에 대한 정보를 agentk 응답에 포함하지 않으므로:
include deployment_resource_version in workspace_rails_info response?가N으로 설정responded_to_agent_at가 업데이트되지 않음
request |
include config_to_apply in workspace_rails_info response? |
desired_state |
actual_state |
desired_state_updated_at |
responded_to_agent_at |
|---|---|---|---|---|---|
CURRENT_DB_STATE - 워크스페이스가 Running 상태 |
- | Running | Running | 05:00 | 05:01 |
AGENT_ACTION - agentk 정보 없음 보고 |
N | Running | Running | 05:00 | 05:01 |
Unknown 실제 상태는 언제 발생하고 어떻게 처리해야 하는지 알 수 없어 아직 모델링되지 않았습니다. Unknown은 이상적으로는 절대 발생하지 않아야 하는 안전 장치 상태입니다.
