*** Settings *** Documentation E2E integration tests for plan persistence: full lifecycle, ... restart persistence, and concurrent CLI access patterns. ... Covers subtask 5 of A5.tests. Resource ${CURDIR}/common.resource Suite Setup Setup Test Environment Suite Teardown Cleanup Test Environment *** Variables *** ${HELPER_SCRIPT} robot/helper_plan_persistence_e2e.py *** Test Cases *** Plan Full Lifecycle Persistence [Documentation] Create action, create plan, transition through all phases, ... reach applied terminal state, and verify persistence at each step. [Tags] database plan lifecycle persistence ${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} full-lifecycle cwd=${WORKSPACE} timeout=120s on_timeout=kill Should Be Equal As Integers ${result.rc} 0 Should Contain ${result.stdout} full-lifecycle-ok Plan Restart Persistence [Documentation] Create a plan, close the database, reopen it, and verify ... all plan fields survive the reconnection. [Tags] database plan restart persistence ${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} restart-persistence cwd=${WORKSPACE} timeout=120s on_timeout=kill Should Be Equal As Integers ${result.rc} 0 Should Contain ${result.stdout} restart-persistence-ok Plan Concurrent Session Access [Documentation] Open two independent sessions against the same database ... and verify that plans created in one session are visible ... in the other after commit. [Tags] database plan concurrent persistence ${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} concurrent-access cwd=${WORKSPACE} timeout=120s on_timeout=kill Should Be Equal As Integers ${result.rc} 0 Should Contain ${result.stdout} concurrent-access-ok Action CRUD Persistence E2E [Documentation] Create, read, update, and delete an action via repository, ... verifying persistence at each step. [Tags] database action crud persistence ${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} action-crud cwd=${WORKSPACE} timeout=120s on_timeout=kill Should Be Equal As Integers ${result.rc} 0 Should Contain ${result.stdout} action-crud-ok Plan Tree Hierarchy Persistence E2E [Documentation] Create a parent plan and child plan, verify hierarchy ... links are persisted correctly including root_plan_id. [Tags] database plan hierarchy persistence ${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} plan-tree cwd=${WORKSPACE} timeout=120s on_timeout=kill Should Be Equal As Integers ${result.rc} 0 Should Contain ${result.stdout} plan-tree-ok