Skip to content

Add compliance context to transactions - #823

Merged
jklein24 merged 1 commit into
mainfrom
08-12-AT-6319-incoming-compliance-context
Aug 14, 2026
Merged

Add compliance context to transactions#823
jklein24 merged 1 commit into
mainfrom
08-12-AT-6319-incoming-compliance-context

Conversation

@jklein24

@jklein24jklein24 commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add an optional pendingReason field to all transactions.
  • Add provider-neutral reasons for required customer action and compliance review.
  • Add COMPLIANCE_REJECTED to incoming transaction failure reasons.
  • Reconcile with feat!: granular counterparty payout failure reasons #689’s granular outgoing payout failure reasons, retaining its complete enum and descriptions.

Test plan

  • make build
  • make lint-openapi (0 errors)

Original PR: #822

@ls-boltls-boltBot added the bolt label Aug 12, 2026
@vercel

vercelBot commented Aug 12, 2026

Copy link
Copy Markdown

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

2 Skipped Deployments
ProjectDeploymentActionsUpdated (UTC)
grid-flow-builderIgnoredIgnoredPreviewAug 13, 2026 9:11pm
grid-wallet-demoIgnoredIgnoredPreviewAug 13, 2026 9:11pm

Request Review

@lightspark-botGraphite App

Copy link
Copy Markdown

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions

github-actionsBot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

✱ Stainless preview builds for grid

This PR will update the grid SDKs with the following commit messages.

cli

feat: Add compliance context to transactions

go

feat: Add compliance context to transactions

kotlin

feat: Add compliance context to transactions

openapi

feat(api): add pendingReason field and COMPLIANCE_REJECTED enum to transactions

php

feat: Add compliance context to transactions

python

feat: Add compliance context to transactions

ruby

feat: Add compliance context to transactions

typescript

feat: Add compliance context to transactions
⚠️grid-openapistudio · code

Your SDK build had at least one "warning" diagnostic.
generate ⚠️

grid-rubystudio · code

Your SDK build had at least one "note" diagnostic.
generate ✅build ✅lint ✅test ✅

⚠️grid-gostudio · code

Your SDK build had a failure in the lint CI job, which is a regression from the base state.
generate ✅build ✅lint ❗test ❗

go get github.com/stainless-sdks/grid-go@c9ad213594940df9c9bb58ec790e656d10df8607
⚠️grid-kotlinstudio · code

Your SDK build had a failure in the test CI job, which is a regression from the base state.
generate ⚠️build ✅lint ✅test ❗

grid-typescriptstudio · conflict

Your SDK build had at least one note diagnostic.

⚠️grid-pythonstudio · code

Your SDK build had a failure in the lint CI job, which is a regression from the base state.
generate ✅build ✅lint ❗test ❗

pip install https://pkg.stainless.com/s/grid-python/318c27b2595b8cd496375c8e0fc878d1c0a444af/grid-0.0.1-py3-none-any.whl
grid-phpstudio · code

Your SDK build had at least one "note" diagnostic.
generate ✅lint ✅test ✅

⚠️grid-clistudio · code

Your SDK build had a failure in the test CI job, which is a regression from the base state.
generate ⚠️build ⏭️lint ⏭️test ❗


This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push.
If you push custom code to the preview branch, re-run this workflow to update the comment.
Last updated: 2026-08-14 15:52:39 UTC

@greptile-apps

greptile-appsBot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

 ⚡ .-=========-.
/_\ | GRID API | /\
(___) | METAL MODE | ( )
| | '====|======' \/
__| |__ __| |__ _||_
/_______\ /_______\ /____\

Raise the compliance gates—let the transaction schemas thunder.

This PR extends transaction metadata with optional pending-context and new compliance-rejection failure reasons.

  • Adds provider-neutral pending-reason enum values for customer action and compliance review.
  • Adds COMPLIANCE_REJECTED to incoming and outgoing failure-reason schemas.
  • Regenerates the root and Mintlify OpenAPI bundles.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

FilenameOverview
openapi/components/schemas/transactions/TransactionPendingReason.yamlAdds the shared enum describing customer-action and compliance-review pending reasons.
openapi/components/schemas/transactions/Transaction.yamlAdds the optional pendingReason property to the shared transaction schema.
openapi/components/schemas/transactions/IncomingTransactionFailureReason.yamlAdds COMPLIANCE_REJECTED for incoming transactions.
openapi/components/schemas/transactions/OutgoingTransactionFailureReason.yamlAdds COMPLIANCE_REJECTED for outgoing transactions.
openapi.yamlRegenerates the bundled OpenAPI contract from the modular source.
mintlify/openapi.yamlSynchronizes Mintlify’s generated OpenAPI bundle.

Reviews (2): Last reviewed commit: "docs(openapi): clarify pending reason sc..." | Re-trigger Greptile

Comment threadopenapi/components/schemas/transactions/TransactionPendingReason.yaml Outdated
@ls-bolt

ls-boltBot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

@greptile review

Co-Authored-By: jklein24 <jklein24@users.noreply.github.com>
@ls-bolt
ls-boltBotforce-pushed the 08-12-AT-6319-incoming-compliance-context branch from 0920c58 to 91de3c2CompareAugust 13, 2026 21:11
@ls-bolt

ls-boltBot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Rebased onto current main after #689 merged and reconciled the overlap. #823 now keeps #689’s full granular outgoing failure-reason enum and descriptions, while adding only the shared pendingReason contract and the incoming COMPLIANCE_REJECTED value. make build is reproducible and make lint-openapi reports 0 errors.

- MISSING_MANDATORY_PAYEE_DATA
- QUOTE_EXPIRED
- QUOTE_EXECUTION_FAILED
- COMPLIANCE_REJECTED

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.

i think jason just added this so might need a rebase, rest lgtm

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.

Rebased onto current main with #689 included and reconciled the overlap. #823 now preserves #689’s complete outgoing failure-reason contract and only adds the incoming COMPLIANCE_REJECTED value plus shared pending context. make build is reproducible and make lint-openapi reports 0 errors.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

Looks like he did for Outgoing, but this is Incoming.

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.

Correct — #689 owns the outgoing contract, while this PR still needs COMPLIANCE_REJECTED on incoming deposits. The rebased diff now reflects exactly that split.

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.

Rebased and resolved — the current diff now preserves #689’s complete outgoing contract and keeps only the incoming compliance rejection plus shared pending context from this PR.

@jklein24
jklein24 requested a review from shreyavAugust 13, 2026 22:52
@jklein24
jklein24 merged commit a2b3e84 into mainAug 14, 2026
10 checks passed
@jklein24
jklein24 deleted the 08-12-AT-6319-incoming-compliance-context branch August 14, 2026 15:46
mohamedwane pushed a commit that referenced this pull request Aug 14, 2026
Upstream #823 added COMPLIANCE_REJECTED to IncomingTransactionFailureReason;
this branch adds COLLECTION_FAILED. Both are additive enum members — the
merged description explains each. Bundles regenerated via lint:openapi
(0 errors).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DLYJSn6VRoZeLV15wcuZHy
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@jklein24@lightspark-bot@shreyav