Bounce feedback to the prefilled Google form instead of posting it - #3395
Draft
enf0rc3 wants to merge 2 commits into
Draft
Bounce feedback to the prefilled Google form instead of posting it#3395enf0rc3 wants to merge 2 commits into
enf0rc3 wants to merge 2 commits into
Conversation
|
Pull request environment is available at https://stoctodocspr3395.z22.web.core.windows.net. You can view the ephemeral environment status in Octopus Deploy. This environment will be automatically deprovisioned when the pull request is closed, or after 7 days of inactivity. |
Send becomes a link to the form's viewform URL with the page, rating and comment prefilled. The reader submits on Google's side, so nothing on our page can be made to submit anything. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The form marks the field required, so a reader who leaves it blank is stopped on Google's page. The label now says so before they get there. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
enf0rc3
force-pushed
the
wl/feedback-redirect-to-form
branch
from
August 20, 2026 02:23
c157511 to
06bf4e9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Back-pocket alternative to #3393. Keeps the sidebar UI and stops the page submitting anything at all.
Send stops being a form post and becomes an
<a>to the form's ownviewformURL, with the fields prefilled. The reader presses submit on Google's side, so nothing on our page can be made to submit — which is what protected us before #3324, since scanners scope to the target domain and don't follow off-site links.What it does
hrefcarriesusp=pp_urlplus the page, the rating and the comment, rebuilt as the reader votes and types.setExternalLinkAttributes()already addstarget="_blank"andrel="noopener"to any off-site link, so the reader keeps their place in the docs. That's better than the old button, which navigated away.Verified against the live form
I loaded a prefilled URL in a browser and checked all three fields land (viewing only, nothing submitted):
Deploy with Kustomize - https://octopus.com/docs/kubernetes/steps/kustomize5selected on the 1–5 scalenpx playwright test tests/feedback.spec.ts— 8 passing, including one that asserts no request reachesdocs.google.comhowever the widget is worked.Worth knowing before choosing between this and #3393
Both models require a comment. The form marks "Please tell us what we did well, or what we could improve" as required. So under this PR a reader who clicks a thumb still has to type something on Google's page before their rating counts. That is almost certainly what kept the old flow's volume low, and it means the two approaches converge for the reader: no comment, no feedback.
If we want vote-only feedback in either model, the form field has to be made optional first. That's a Forms settings change, not a code one.
The remaining cost here is friction. Every response now needs a page load on another domain and a second click to submit. #3393 keeps the submission inline and pays for it with a filter that is targeted at the scanner's current behaviour.
Draft on purpose — this is the fallback if the required-comment approach in #3393 stops working, or if we decide we want the structural guarantee now rather than later.
🤖 Generated with Claude Code