mirror of
https://github.com/azaion/gps-denied-desktop.git
synced 2026-04-22 22:06:36 +00:00
1.9 KiB
1.9 KiB
Acceptance Test: AC-6 - User Input Recovery
Summary
Validate Acceptance Criterion 6: "In case of being absolutely incapable of determining the system to determine next, second next, and third next images GPS, by any means (these 20% of the route), then it should ask the user for input for the next image."
Linked Acceptance Criteria
AC-6: User input requested after 3 consecutive failures
Test Steps
Step 1: Simulate Triple Failure
- Action: Process flight where L1, L2, L3 all fail for AD000003, AD000004, AD000005
- Expected Result: After 3rd consecutive failure, system requests user input via SSE event
Step 2: User Receives Notification
- Action: SSE client receives "user_input_required" event
- Expected Result: Event includes image needing fix (AD000005), top-3 satellite tiles for reference
Step 3: User Provides GPS Fix
- Action: User submits GPS for AD000005: POST /flights/{flightId}/user-fix
- Payload:
{"frame_id": 5, "uav_pixel": [3126, 2084], "satellite_gps": {"lat": 48.273997, "lon": 37.379828}} - Expected Result: Fix accepted, processing resumes, SSE event "user_fix_applied" sent
Step 4: System Incorporates Fix
- Action: Factor graph adds user fix as high-confidence GPS anchor
- Expected Result: Trajectory refined incorporating user input
Step 5: Processing Continues
- Action: System processes AD000006 and beyond
- Expected Result: Processing continues normally
Success Criteria
- User input requested after 3 consecutive failures (not before)
- User notified via SSE with relevant info
- User fix incorporated with high confidence
- Processing resumes automatically
- Allows up to 20% of route to need user input (12 out of 60 images)
Pass/Fail Criteria
Passes If: User input mechanism works, threshold correct (3 failures), processing resumes Fails If: User input not requested, or system cannot incorporate user fixes