-
Notifications
You must be signed in to change notification settings - Fork 1
feat(agent): persist action execution state and idempotency #92
Copy link
Copy link
Open
Labels
area:devicesRobot/device inventory, health, and lifecycleRobot/device inventory, health, and lifecyclearea:opsOperations, recovery, incidents, and site workflowsOperations, recovery, incidents, and site workflowscppC++ codeC++ codecross-repo:keystoneRequires coordination with archebase/keystoneRequires coordination with archebase/keystoneenhancementNew feature or requestNew feature or requestpriority:p1High priority for production operationsHigh priority for production operations
Metadata
Metadata
Assignees
Labels
area:devicesRobot/device inventory, health, and lifecycleRobot/device inventory, health, and lifecyclearea:opsOperations, recovery, incidents, and site workflowsOperations, recovery, incidents, and site workflowscppC++ codeC++ codecross-repo:keystoneRequires coordination with archebase/keystoneRequires coordination with archebase/keystoneenhancementNew feature or requestNew feature or requestpriority:p1High priority for production operationsHigh priority for production operations
Type
Fields
Give feedbackNo fields configured for issues without a type.
Context
Keystone action requests may be delivered more than once because the reliable source of truth is the Keystone action queue and WebSocket push is only a wake-up path. Axon Agent needs local execution state so retries, reconnects, and agent restarts do not trigger duplicate script runs.
Scope
request_id.action_id,status,queued_at,started_at,finished_at,exit_code, anderror_summary.request_iddelivery as idempotent and return the existing state.Acceptance Criteria
request_iddoes not execute the action twice.Depends On
Related