Repository navigation
fix(issuing): deserialize mid_limit card controls and complete control responses - #689
Conversation
🟢 Risk Classification: LOWApproval route: AI Auto-Approval Classification reasons
Operational gates
Files analysed: 11 wall-e 2026.06.19-02 · policy |
🔬 Debug — why this classification?Each reason code emitted by the classifier, its source clause in the AI in SDLC Control Framework, and what it means.
Kinds:
See issue #3 for the proposal to formalise this map as Appendix A of the standards doc. wall-e 2026.06.19-02 · debug |
There was a problem hiding this comment.
✅ Auto-approved — this PR meets all Low-risk criteria.
All checks passed, no unresolved comments, and the change classification is:
no_low_class_matchedprod_source_modified2.2.6_logical_extension:All changes are non-destructive additions (registering an already-existing MidCardControlResponse subtype, adding new response fields isEditable and amountRemaining as read-only, and adding Javadoc) that extend existing serialization/deserialization paths without introducing new endpoints, external integrations, persisted data, auth changes, or background processes.
wall-e 2026.06.19-02 · policy 6b4ce2b3b45a…
…it controls Register the mid_limit subtype so CardControlResponse can deserialize mid controls returned by create, get, list and update. Add is_editable to the control response and the response-only amount_remaining to VelocityLimit, which is never sent on requests. Document every field and the control client methods, and add serialization tests for each subtype.
d0aaa7b to
3976509
Compare
🟢 Risk Classification: LOWApproval route: AI Auto-Approval Classification reasons
Operational gates
Files analysed: 11 wall-e 2026.06.19-02 · policy |
🔬 Debug — why this classification?Each reason code emitted by the classifier, its source clause in the AI in SDLC Control Framework, and what it means.
Kinds:
See issue #3 for the proposal to formalise this map as Appendix A of the standards doc. wall-e 2026.06.19-02 · debug |
|



Summary
Fixes and completes the issuing card control responses against the API reference. A
mid_limitcontrol could not be deserialized intoCardControlResponse, because only the velocity and mcc subtypes were registered. The response now also exposesis_editableand the velocity limit'samount_remaining.Changes
GsonSerializer: registersMidCardControlResponseformid_limit, next to the velocity and mcc subtypesCardControlResponse: addsisEditable; Javadoc on every fieldVelocityLimit: addsamountRemaining(Long), read-only and outside the builder, so it is filled from responses and never sent on requestsVelocityCardControlResponse,MccCardControlResponse,MidCardControlResponse,MccLimit,MidLimit,VelocityWindow: Javadoc completedIssuingClient: Javadoc on the card control methodsCardControlResponseSerializationTest(new): each subtype from the API reference example throughCardControlResponse, full roundtrip,mid_limitregression, list response with all three subtypes,amount_remainingabsent on requestsAPI Reference
PUT /issuing/controls/{controlId}(update-control-response and its velocity, mcc and mid subtypes)GET /issuing/controls/{controlId},GET /issuing/controls,POST /issuing/controls(same response types)Breaking changes
None.
README
No change needed.