Skip to content

feat: standardize amount formatting and precision validation across frontend #151

feat: standardize amount formatting and precision validation across frontend

feat: standardize amount formatting and precision validation across frontend #151

Triggered via pull request April 28, 2026 14:59
Status Failure
Total duration 1m 15s
Artifacts 1

ci.yml

on: pull_request
Frontend CI
53s
Frontend CI
Backend CI
1m 9s
Backend CI
Soroban Contracts CI
39s
Soroban Contracts CI
Fit to window
Zoom out
Zoom in

Annotations

5 errors and 3 warnings
Frontend CI
Process completed with exit code 1.
src/__tests__/components.test.tsx > CancelConfirmModal > shows remaining = deposited - withdrawn: frontend/src/__tests__/components.test.tsx#L126
TestingLibraryElementError: Found multiple elements with the text: /800/ Here are the matching elements: Ignored nodes: comments, script, style <span class="font-semibold text-accent" > 800 USDC </span> Ignored nodes: comments, script, style <div class="mb-6 p-3 rounded-lg bg-red-500/10 border border-red-500/20 text-sm text-red-300" > <strong class="text-red-400" > What happens: </strong> The stream stops immediately. The recipient keeps any already-withdrawn funds. Remaining funds ( 800 USDC ) stay locked in the contract until the recipient withdraws or the admin resolves them. </div> (If this is intentional, then use the `*AllBy*` variant of the query (like `queryAllByText`, `getAllByText`, or `findAllByText`)). Ignored nodes: comments, script, style <body> <div> <div class="fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm" > <div class="glass-card relative w-full max-w-md mx-4 rounded-2xl border border-red-500/30 p-8" > <div class="flex items-start gap-4 mb-6" > <div class="shrink-0 flex h-10 w-10 items-center justify-center rounded-full bg-red-500/15" > <svg class="w-5 h-5 text-red-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" > <path d="M12 9v2m0 4h.01M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </div> <div> <h2 class="text-xl font-bold" > Cancel Stream? </h2> <p class="text-sm text-slate-400 mt-1" > This action is permanent and cannot be undone. </p> </div> <button aria-label="Close" class="ml-auto text-slate-400 hover:text-foreground transition-colors disabled:opacity-50" type="button" > <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24" > <path d="M6 18L18 6M6 6l12 12" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" /> </svg> </button> </div> <div class="mb-6 rounded-lg bg-white/5 border border-glass-border divide-y divide-glass-border text-sm" > <div class="flex justify-between px-4 py-3" > <span class="text-slate-400" > Stream </span> <code class="text-accent font-mono text-xs" > stream-42 </code> </div> <div class="flex justify-between px-4 py-3" > <span class="text-slate-400" > Recipient </span> <code class="font-mono text-xs text-foreground" > GDEF456ABC789GHI012JKL345MNO678PQR901STU234VWX567YZA123BCD </code> </div> <div class="flex justify-between px-4 py-3" > <span class="text-slate-400" > Already withdrawn </span> <span class="font-semibold text-foreground" > 200 USDC </span> </div> <div class="flex justify-between px-4 py-3" > <span class="text-slate-400" > Remaining in stream </span> <span class="font-semibold
src/__tests__/components.test.tsx > LiveCounter > resets to initial when isPaused switches to true: frontend/src/__tests__/components.test.tsx#L49
TestingLibraryElementError: Unable to find an element with the text: 5. This could be because the text is broken up by multiple elements. In this case, you can provide a function for your text matcher to make your matcher more flexible. Ignored nodes: comments, script, style <body> <div> <div style="display: flex; align-items: center; gap: 0.75rem;" > <span style="position: relative; display: inline-flex; width: 0.75rem; height: 0.75rem;" > <span style="position: absolute; border-radius: 999px; background: #ef4444; opacity: 0.5; animation: none;" /> <span style="position: relative; display: inline-flex; width: 0.75rem; height: 0.75rem; border-radius: 999px; background: #ef4444;" /> </span> <p style="margin: 0px; font-size: 0.92rem; color: var(--text-muted);" /> </div> </div> </body> ❯ Object.getElementError ../node_modules/@testing-library/dom/dist/config.js:37:19 ❯ ../node_modules/@testing-library/dom/dist/query-helpers.js:76:38 ❯ ../node_modules/@testing-library/dom/dist/query-helpers.js:52:17 ❯ ../node_modules/@testing-library/dom/dist/query-helpers.js:95:19 ❯ src/__tests__/components.test.tsx:49:19
Backend CI
Process completed with exit code 2.
Backend CI
Object literal may only specify known properties, and 'streamId' does not exist in type '(client: SSEClient) => boolean'.
Soroban Contracts CI
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Frontend CI
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Backend CI
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

Artifacts

Produced during runtime
Name Size Digest
optimized-wasm Expired
17.4 KB
sha256:a4eeb50557454867b209a95d051ebaaea7c96ce99ca26a1df3dcd972e52a34ac