Skip to content

Conversation

JadeCara
Copy link
Contributor

Closes []

Description Of Changes

Current Problem (Without Fix)

Privacy request gets stuck in requires_input status and has to wait for theTask graph to eventually time out to see the error message.

Proposed Fix

Added the requires input status to the request runner check.
Normal queue checkers pick up the request again with the manual task is complete, so the request can proceed normally.
If there are still other errors, they'll be handled by the normal error handling flow.

When they pick up a request that was previously stuck:

  • First Check: They'll see the manual task is now complete (because we just completed it)
  • Normal Flow: The request continues through the normal task execution
  • Error Handling: If there are still other issues, they'll be caught and handled properly

Some Different Scenarios
Scenario 1: Manual Task Was the Only Issue

  • status in awaiting input
  • Queue checker picks it up
  • Request completes successfully (no more errors)
    ✅ Problem solved

Scenario 2: There Are Still Other Errors

  • status in awaiting input
  • Queue checker picks it up
  • Other errors are encountered and handled normally
  • Request might go back to requires_input or error status as appropriate
    ✅ Proper error handling restored

Scenario 3: Manual Task Wasn't Actually Complete

  • Status in awaiting input
  • Queue checker picks it up
  • _run_request detects incomplete manual task
  • Raises AwaitingAsyncTaskCallback again
  • Request goes back to requires_input status
    ✅ Self-correcting behavior

Code Changes

  • Added a small update to how access tasks are handled for erasures.
  • Updated the request runner to look at awaiting input statuses
  • added some tests

Steps to Confirm

  1. Add the data/dataset/postgres_example_test_dataset.yml
  2. Run fidesplus pointed at this branch.
  3. stop the postgres container.
  4. Create an Access DSR - verify it errors correctly
  5. Create and Erasure DSR - verify it errors correctly.
Screenshot 2025-08-18 at 10 33 22 AM Screenshot 2025-08-18 at 10 33 14 AM Screenshot 2025-08-18 at 10 32 27 AM 6. Turn back on the postgres container 7. Re rerun the DSRs 8. Verify they both run as expected.

Pre-Merge Checklist

  • Issue requirements met
  • All CI pipelines succeeded
  • CHANGELOG.md updated
    • Add a db-migration This indicates that a change includes a database migration label to the entry if your change includes a DB migration
    • Add a high-risk This issue suggests changes that have a high-probability of breaking existing code label to the entry if your change includes a high-risk change (i.e. potential for performance impact or unexpected regression) that should be flagged
    • Updates unreleased work already in Changelog, no new entry necessary
  • Followup issues:
    • Followup issues created
    • No followup issues
  • Database migrations:
    • Ensure that your downrev is up to date with the latest revision on main
    • Ensure that your downgrade() migration is correct and works
      • If a downgrade migration is not possible for this change, please call this out in the PR description!
    • No migrations
  • Documentation:
    • Documentation complete, PR opened in fidesdocs
    • Documentation issue created in fidesdocs
    • If there are any new client scopes created as part of the pull request, remember to update public-facing documentation that references our scope registry
    • No documentation updates required

Copy link

vercel bot commented Aug 18, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
fides-plus-nightly Ready Ready Preview Comment Aug 19, 2025 6:27pm
1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
fides-privacy-center Ignored Ignored Aug 19, 2025 6:27pm

@JadeCara JadeCara changed the title updated Updated the privacy request service to also check for awaitng input status Aug 18, 2025
@JadeCara JadeCara marked this pull request as ready for review August 18, 2025 19:26
Copy link

codecov bot commented Aug 19, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 87.61%. Comparing base (2fd61ba) to head (fcc43a0).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #6471   +/-   ##
=======================================
  Coverage   87.61%   87.61%           
=======================================
  Files         459      459           
  Lines       29491    29494    +3     
  Branches     3279     3280    +1     
=======================================
+ Hits        25838    25841    +3     
  Misses       2948     2948           
  Partials      705      705           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment @cursor review or bugbot run to trigger another review on this PR

@JadeCara JadeCara merged commit 5a6c9fd into main Aug 19, 2025
46 checks passed
@JadeCara JadeCara deleted the update_dsr_processing_to_include_awaiting_input branch August 19, 2025 20:25
Copy link

cypress bot commented Aug 19, 2025

fides    Run #13251

Run Properties:  status check passed Passed #13251  •  git commit 5a6c9fd6d1: Updated the privacy request service to also check for awaitng input status (#647...
Project fides
Branch Review main
Run status status check passed Passed #13251
Run duration 00m 49s
Commit git commit 5a6c9fd6d1: Updated the privacy request service to also check for awaitng input status (#647...
Committer JadeWibbels
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 5
View all changes introduced in this branch ↗︎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants