Skip to content

fix: [SDK-5576] merge the test-send consent and message questions into one - #79

Merged
sherwinski merged 2 commits into
sherwin/sdk-5575from
sherwin/sdk-5576
Oct 22, 2026
Merged

sherwinski merged 2 commits into
sherwin/sdk-5575from
sherwin/sdk-5576

Conversation

@sherwinski

@sherwinski sherwinski commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

One Line Summary

The verify skill asks one structured question before the test push, with 3 options that cover both the consent and the message.

Motivation

Step 4 of the Verify skill asked "send?" and "which message?" as 2 questions in one tool call. One question with 3 options gives the same information with one answer, which is less interruptive to the user's plugin experience.

Affected code

  • skills/setup/SKILL.md
  • skills/credentials/SKILL.md
  • skills/verify/SKILL.md
  • scripts/
  • references/

@abdulraqeeb33 abdulraqeeb33 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One change before merge, inline. The rest reads well: the decline maps to the existing verify.sent fail deferred, and three options fit the Codex limit.

Comment thread skills/verify/SKILL.md
- Send my own message
- Do not send

The default body is `Congrats on successfully setting up the OneSignal SDK`. Text typed through the host's free-text field is the body; if the user picks the second option, ask once for the body only. "Do not send" is the decline: report `verify.sent fail deferred` (the checkpoint block below) and skip the send. Use the answer as the notification body (`<BODY>` below). The send happens from this session via the MCP or the REST API — never from code inside the user's app.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Both hosts add a free-text "Other" to this question (§14), and this line makes typed text the body. With the yes/no question gone, anything typed there now sends: "wait, is this the prod app?" goes out as the push. §14a needs an explicit yes for a send. Suggest: treat typed text as a proposed body, quote it back, and send only after one confirm. A question or unclear text is not a yes.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

It's a good callout but not sure if it's worth adjusting on right now without any data to support it. Users currently have an escape hatch via "Do not send" so I'm hesitant to add more user input prompts when feedback so far has asked for fewer.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Fair on prompt count. The fix doesn't need a new prompt on the paths this PR designs: per bf4df2e an option and free text are exclusive, so typed text only arrives when none of the three was picked, which is the case with no yes. "Do not send" doesn't catch that user, since they never pick it. Suggest replacing "Text typed through the host's free-text field is the body" with "Typed text is not a yes: answer it, then ask again." That costs a prompt only for someone who skips the options.

@abdulraqeeb33 abdulraqeeb33 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Approving so this isn't blocked on me. The free-text note in the thread stands as a suggestion; your call.

…o one

The verify skill asked 2 questions before the test push: "send?" and
"which message?". Testers counted the answers. Step 4 now asks one
structured question whose 3 options cover both decisions: send the
default message, send a typed message, or do not send. The question
still names the subscription id and the App ID and includes the
Focus/Do Not Disturb check, so the consent gate from safety contract
§14 does not change. "Do not send" maps to `verify.sent fail deferred`
as before.
…e label

A listed option and the host's free-text field are exclusive in both
hosts, so a label that asks for both at once cannot be followed. The
option is "Send my own message", and picking it leads to the body ask.
@sherwinski
sherwinski merged commit 9432d3b into main Oct 22, 2026
10 checks passed
@sherwinski
sherwinski deleted the sherwin/sdk-5576 branch October 22, 2026 20:52
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