Feat/docs audit consistency #174
ci.yml
on: pull_request
Clarinet Check
2s
Post-Condition Audit
5s
Contract Tests
0s
Frontend Build
Annotations
21 errors and 7 warnings
|
Clarinet Check
Unable to resolve action hirosystems/clarinet-actions, repository not found
|
|
Frontend Lint:
frontend/src/context/ThemeContext.jsx#L3
Fast refresh only works when a file only exports components. Move your React context(s) to a separate file
|
|
Frontend Lint:
frontend/src/context/ResilienceContext.jsx#L92
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
|
|
Frontend Lint:
frontend/src/components/ui/toast.jsx#L76
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
|
|
Frontend Lint:
frontend/src/components/ui/animated-hero.jsx#L2
'motion' is defined but never used. Allowed unused vars must match /^[A-Z_]/u
|
|
Frontend Lint:
frontend/src/components/TipHistory.jsx#L1
'useMemo' is defined but never used. Allowed unused vars must match /^[A-Z_]/u
|
|
Frontend Lint:
frontend/src/components/BatchTip.jsx#L14
'formatAddress' is defined but never used. Allowed unused vars must match /^[A-Z_]/u
|
|
Frontend Lint:
frontend/src/components/BatchTip.jsx#L14
'formatSTX' is defined but never used. Allowed unused vars must match /^[A-Z_]/u
|
|
Frontend Lint:
frontend/src/components/AdminDashboard.jsx#L381
'blockHeight' is defined but never used
|
|
Frontend Lint:
frontend/src/components/AdminDashboard.jsx#L360
'Icon' is defined but never used
|
|
Frontend Lint:
frontend/src/components/AdminDashboard.jsx#L7
'timelockProgress' is defined but never used. Allowed unused vars must match /^[A-Z_]/u
|
|
src/lib/resilience.test.js > Resilience Monitoring Utilities > getDiagnosticReport > includes cache statistics:
frontend/src/lib/resilience.test.js#L105
TypeError: actual value must be number or bigint, received "object"
❯ src/lib/resilience.test.js:105:36
|
|
src/lib/resilience.test.js > Resilience Monitoring Utilities > Event logging > logs resilience events when debug enabled:
frontend/src/lib/resilience.test.js#L75
AssertionError: expected "log" to be called with arguments: [ StringContaining{…}, …(1) ]
Received:
1st log call:
[
- StringContaining "Resilience:cache:INFO",
- ObjectContaining {
- "data": "test",
- },
+ "[Resilience] Debug mode enabled",
]
Number of calls: 1
❯ src/lib/resilience.test.js:75:26
|
|
src/lib/persistentCache.test.js > Persistent Cache > clearCacheEntry > returns false for non-existent entries:
frontend/src/lib/persistentCache.test.js#L118
AssertionError: expected true to be false // Object.is equality
- Expected
+ Received
- false
+ true
❯ src/lib/persistentCache.test.js:118:46
|
|
src/lib/eventCursorManager.test.js > Event Cursor Manager > filterEventsAfterCursor > deduplicates by matching all cursor properties:
frontend/src/lib/eventCursorManager.test.js#L97
AssertionError: expected [ { txId: 'tx-1-dup', …(2) }, …(2) ] to have a length of 2 but got 3
- Expected
+ Received
- 2
+ 3
❯ src/lib/eventCursorManager.test.js:97:22
|
|
src/lib/cachedApiClient.test.js > Cached API Client > Error handling > handles timeout gracefully:
frontend/src/lib/cachedApiClient.test.js#L150
Error: Test timed out in 10000ms.
If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout".
❯ src/lib/cachedApiClient.test.js:150:7
|
|
src/lib/cacheInvalidationManager.test.js > Cache Invalidation Manager > invalidateByPattern > invalidates entries matching pattern:
frontend/src/lib/cacheInvalidationManager.test.js#L26
AssertionError: expected { data: 'extended' } to be null
- Expected:
null
+ Received:
{
"data": "extended",
}
❯ src/lib/cacheInvalidationManager.test.js:26:53
|
|
src/hooks/useCachedData.test.js > useCachedData Hook > respects TTL option:
frontend/src/hooks/useCachedData.test.js#L166
Error: Test timed out in 10000ms.
If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout".
❯ src/hooks/useCachedData.test.js:166:5
|
|
src/hooks/useCachedData.test.js > useCachedData Hook > clears cache on demand:
frontend/src/hooks/useCachedData.test.js#L146
Error: Test timed out in 10000ms.
If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout".
❯ src/hooks/useCachedData.test.js:146:5
|
|
src/hooks/useCachedData.test.js > useCachedData Hook > provides metadata for cached data:
frontend/src/hooks/useCachedData.test.js#L121
Error: Test timed out in 10000ms.
If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout".
❯ src/hooks/useCachedData.test.js:121:5
|
|
Unhandled error:
frontend/src/components/LazyErrorBoundary.jsx#L25
TypeError: __vite_ssr_import_2__.analytics.trackError is not a function
❯ LazyErrorBoundary.componentDidCatch src/components/LazyErrorBoundary.jsx:25:15
❯ Object.react_stack_bottom_frame node_modules/react-dom/cjs/react-dom-client.development.js:25959:20
❯ LazyErrorBoundary.inst.componentDidCatch.update.callback node_modules/react-dom/cjs/react-dom-client.development.js:9504:11
❯ callCallback node_modules/react-dom/cjs/react-dom-client.development.js:7423:16
❯ commitCallbacks node_modules/react-dom/cjs/react-dom-client.development.js:7443:11
❯ runWithFiberInDEV node_modules/react-dom/cjs/react-dom-client.development.js:874:13
❯ commitClassCallbacks node_modules/react-dom/cjs/react-dom-client.development.js:13377:11
❯ commitLayoutEffectOnFiber node_modules/react-dom/cjs/react-dom-client.development.js:14026:25
❯ recursivelyTraverseLayoutEffects node_modules/react-dom/cjs/react-dom-client.development.js:15159:11
❯ commitLayoutEffectOnFiber node_modules/react-dom/cjs/react-dom-client.development.js:14065:11
This error originated in "src/test/routing.test.jsx" test file. It doesn't mean the error was thrown inside the file itself, but while it was running.
The latest test that might've caused the error is "renders RecentTips at /feed". It might mean one of the following:
- The error was thrown, while Vitest was running this test.
- If the error occurred after the test had been completed, this was the last documented test before it was thrown.
|
|
Post-Condition Audit
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 will be forced to run with Node.js 24 by default starting June 2nd, 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 Lint
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. 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 Lint:
frontend/src/hooks/usePaginatedEvents.js#L93
React Hook useEffect has a missing dependency: 'loadPage'. Either include it or remove the dependency array
|
|
Frontend Lint:
frontend/src/hooks/useCachedData.js#L106
React Hook useEffect has a missing dependency: 'loadData'. Either include it or remove the dependency array
|
|
Frontend Lint:
frontend/src/hooks/useCachedData.js#L103
The ref value 'timeoutIdRef.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'timeoutIdRef.current' to a variable inside the effect, and use that variable in the cleanup function
|
|
Frontend Lint:
frontend/src/components/ProfileManager.jsx#L47
React Hook useEffect has a missing dependency: 'fetchProfile'. Either include it or remove the dependency array
|
|
Frontend Tests
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. 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/
|