State the SCA proof rule in prose on login-complete and trust-confirm - #1073
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KYyhvyVNjMMDrKJqFriCE7
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
|
The latest updates on your projects. Learn more about Vercel for GitHub. 3 Skipped Deployments
|
|
|
| completed, the `endUserIpAddress` the login is being performed from, and, for | ||
| `SMS_OTP`, the `challengeId` returned by the login start. | ||
| `SMS_OTP`, the `challengeId` returned by the login start. Provide exactly one |
There was a problem hiding this comment.
Stale lint suppressions remain
Removing these anyOf branches leaves six obsolete exceptions for ScaLoginCompleteRequest and BeneficiaryTrustConfirmRequest, along with their explanatory comment, in .redocly.lint-ignore.yaml. Please remove those entries with this schema change so the lint configuration continues to describe real, intentional exceptions instead of accumulating dead suppressions.
Knowledge Base Used: Contract validation workflows
Prompt To Fix With AI
This is a comment left during a code review.
Path: openapi/components/schemas/sca/ScaLoginCompleteRequest.yaml
Line: 6-7
Comment:
**Stale lint suppressions remain**
Removing these `anyOf` branches leaves six obsolete exceptions for `ScaLoginCompleteRequest` and `BeneficiaryTrustConfirmRequest`, along with their explanatory comment, in `.redocly.lint-ignore.yaml`. Please remove those entries with this schema change so the lint configuration continues to describe real, intentional exceptions instead of accumulating dead suppressions.
**Knowledge Base Used:** [Contract validation workflows](https://app.greptile.com/lightspark/-/custom-context/knowledge-base/lightsparkdev/grid-api/-/docs/contract-validation-workflows.md)
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
ScaLoginCompleteRequestandBeneficiaryTrustConfirmRequestexpressed the proof rule as a top-levelanyOfofrequiredlists. That causes two problems:anyOfmeans at least one, so a body with bothcodeandpasskeyAssertionpasses. The server requires exactly one, withoriginalongside a passkey.from_dictthat drops every field.This PR removes the
anyOfand states the rule in each description, the wayScaAuthorizationalready does for the same fields. The server enforces the rule either way, so validation is unchanged for callers.make buildandmake lintpass with 0 errors.🤖 Generated with Claude Code
https://claude.ai/code/session_01KYyhvyVNjMMDrKJqFriCE7
Generated by Claude Code