1.9 KiB
1.9 KiB
1. Public Jupiter API
- 1.1 Add the checked, documented
JupiterTransactionOutcomeExceptionwith validated structured signature, commitment, and failed/timed-out outcome access. - 1.2 Update Jupiter Swap and Perps public Javadoc and checked-exception declarations through their API call chains.
2. Jupiter Service Confirmation
- 2.1 Add a validated confirmation-timeout overload to
JupiterSwapServiceImpl, retain its two-minute default constructor, and await validated Swap results atCONFIRMEDwithout changing provider validation or submission behavior. - 2.2 Add a validated confirmation-timeout overload to
AnchorIdlJupiterPerpsServiceImpl, retain its two-minute default constructor, and route increase and decrease signatures through one privateCONFIRMEDoutcome-policy helper. - 2.3 Ensure both services preserve structured
FAILEDandTIMED_OUToutcomes, contextualize confirmationIOExceptions as unknown outcomes, propagate interruption directly, and perform no retry or resubmission.
3. Perps Alarm Reporting
- 3.1 Update the increase alarm action to report
FAILEDandTIMED_OUTdistinctly while leaving confirmation ownership in the Perps service. - 3.2 Update the decrease alarm action to report
FAILEDandTIMED_OUTdistinctly while leaving confirmation ownership in the Perps service.
4. Verification
- 4.1 Compile main and test source sets without adding tests or executing live Jupiter/Solana transactions.
- 4.2 Run available relevant existing tests only if their runtime is non-live and practical.
- 4.3 Run strict OpenSpec validation and
git diff --check. - 4.4 Review the complete diff for checked-exception propagation, unchanged provider validations, exact timeout forwarding, direct interruption propagation, no retry/resubmission, no generated-source edits, and no unrelated changes.