Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -49,3 +49,4 @@ changelog.sh
\#*\#

.python-version
uv.lock
18 changes: 9 additions & 9 deletions docs/pipeline.rst
Original file line number Diff line number Diff line change
Expand Up @@ -348,11 +348,12 @@ only for those flows::
def my_external_validation(strategy, backend, current_partial=None, **kwargs):
...

Externally resumed partials do not resume immediately when the link is opened in
a different browser session. The first request stores pending resume state in
the current browser session and asks the Strategy to render a local confirmation
response. A later confirmation request from the same browser resumes the
pipeline and replays the original link request data in ``kwargs['request']``.
Externally resumed partials do not resume immediately when a request supplies
the partial token, even in the browser session that created the partial. The
Comment on lines +351 to +352

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Keep the same-session resume qualifier

This overstates the current behavior for allow_external_resume partials: social_core.utils._select_partial_pipeline_token() still treats request_token == session_token as an owned token before considering the external confirmation path, so a link opened in the browser session that created the partial resumes immediately and never renders the confirmation page. Users following this text will expect a confirmation step in same-session email/self-click flows that the library does not provide; keep the “different browser session” qualifier here and in the email-validation paragraph.

Useful? React with 👍 / 👎.

first request stores pending resume state in the current browser session and
asks the Strategy to render a local confirmation response. A later confirmation
request from the same browser resumes the pipeline and replays the original
link request data in ``kwargs['request']``.

The confirmation request must include the parameter configured by
``SOCIAL_AUTH_PARTIAL_PIPELINE_EXTERNAL_RESUME_CONFIRMATION_PARAMETER``. The
Expand Down Expand Up @@ -406,10 +407,9 @@ function should take four arguments ``strategy``, ``backend``, ``code`` and
that can be used to restart a halted flow.

The built-in mail validation step is an externally resumable partial. Opening
the validation link from a different browser session will first show the local
confirmation response provided by the active Strategy. After confirmation, the
pipeline receives the original ``verification_code`` and ``partial_token`` in
``kwargs['request']``.
the validation link will first show the local confirmation response provided by
the active Strategy. After confirmation, the pipeline receives the original
``verification_code`` and ``partial_token`` in ``kwargs['request']``.

``code`` is a model instance used to validate the email address, it
contains three fields:
Expand Down