Skip to content

chore(release): sync develop into master#3137

Merged
drewstone merged 2 commits intomasterfrom
develop
Mar 3, 2026
Merged

chore(release): sync develop into master#3137
drewstone merged 2 commits intomasterfrom
develop

Conversation

@drewstone
Copy link
Contributor

@drewstone drewstone commented Mar 3, 2026

Summary

  • sync latest validated changes from develop into master
  • includes recent config/docs canonicalization and prior v2 protocol/dApp integration work already merged into develop

Notes

  • default branch remains develop
  • this repo currently has master (no main branch)

drewstone and others added 2 commits March 3, 2026 13:12
Co-authored-by: vutuanlinh2k2 <69841784+vutuanlinh2k2@users.noreply.github.com>
Co-authored-by: vutuanlinh2k2 <vutuanlinh2002@gmail.com>
@drewstone drewstone requested a review from AtelyPham as a code owner March 3, 2026 20:21
@claude
Copy link

claude bot commented Mar 3, 2026

Claude finished @drewstone's task —— View job


Code Review Complete ✅

This PR syncs develop into master with 824k additions and 41k deletions across 100 files.

Review Summary

High-Quality Implementation:

  • ✅ Comprehensive test coverage for all new hooks
  • ✅ Strong TypeScript typing throughout
  • ✅ Proper error boundaries and validation
  • ✅ Clean separation of concerns in transaction handling
  • ✅ Following established patterns from CLAUDE.md

Key Issues Found

🚨 Critical Issues

1. Silent Error Handling (apps/tangle-cloud/src/data/services/useServiceApproveTx.ts:92-96)

try {
  contracts = getContractsByChainId(chainId);
} catch {
  contracts = null; // ❌ Swallows configuration errors
}

Impact: Configuration issues could be masked, leading to runtime failures
Fix: Add error logging: catch (error) { console.error('Contract config error:', error); contracts = null; }

2. Silent Input Clamping (apps/tangle-cloud/src/data/services/useServiceApproveTx.ts:126-129)

const stakingPercent = Math.min(100, Math.max(0, simpleParams.stakingPercent ?? 0));

Impact: Invalid user inputs are silently corrected without feedback
Fix: Validate inputs first and provide user feedback for invalid values

⚠️ Security & Performance Issues

3. Potential XSS in Dynamic Content (apps/tangle-cloud/src/components/TxHistoryNotifier.tsx:119)

const ? SUCCESS_MESSAGES[tx.name] : undefined;

Impact: If tx.name comes from user input, could be unsafe
Fix: Ensure tx.name is sanitized or use allowlist validation

4. Memory Leak Risk (apps/tangle-cloud/src/components/TxHistoryNotifier.tsx:43-55)

const lastNotifiedStatusByHash = useRef<Map<string, HistoryTx['status']>>(new Map());

Impact: Map grows indefinitely with transaction hashes
Fix: Implement cleanup for old transactions or size limit

💡 Code Quality Improvements

5. Missing DEFAULT_TNT_MIN_EXPOSURE_BPS (apps/tangle-cloud/src/data/services/useServiceSecurityRequirements.ts:20)

const DEFAULT_TNT_MIN_EXPOSURE_BPS = 1000; // 10%

But in useServiceRequestSecurityRequirements.ts, it's fetched dynamically. Consider consistency.

6. Hardcoded Team Addresses (apps/leaderboard/src/features/leaderboard/queries/leaderboardQuery.ts:7-9)

const TEAM_ACCOUNTS = [
  '0x0000000000000000000000000000000000000000', // Placeholder
];

Fix: Move to environment configuration

Positive Highlights

  1. Excellent Test Coverage: All new hooks have comprehensive unit tests with proper mocking
  2. Type Safety: Strong TypeScript usage with proper interfaces and type guards
  3. Error Handling: Generally good error boundaries (except noted issues)
  4. Code Organization: Clean modular structure following repository conventions
  5. Documentation: Good JSDoc comments and inline documentation
  6. Performance: Proper use of React hooks like useMemo and useCallback

Overall Assessment

This is a well-structured release with high-quality code that follows established patterns. The critical issues are localized and fixable. The codebase demonstrates good engineering practices with comprehensive testing and proper TypeScript usage.

Recommendation:Approve with minor fixes

The identified issues should be addressed but don't block the release. Consider creating follow-up tickets for the critical items.

@netlify
Copy link

netlify bot commented Mar 3, 2026

Deploy Preview for tangle-cloud ready!

Name Link
🔨 Latest commit 0af5700
🔍 Latest deploy log https://app.netlify.com/projects/tangle-cloud/deploys/69a742e53b140f00089011a7
😎 Deploy Preview https://deploy-preview-3137--tangle-cloud.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link

netlify bot commented Mar 3, 2026

Deploy Preview for tangle-dapp ready!

Name Link
🔨 Latest commit 0af5700
🔍 Latest deploy log https://app.netlify.com/projects/tangle-dapp/deploys/69a742e52a8e070008c387e3
😎 Deploy Preview https://deploy-preview-3137--tangle-dapp.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link

netlify bot commented Mar 3, 2026

Deploy Preview for tangle-leaderboard ready!

Name Link
🔨 Latest commit 0af5700
🔍 Latest deploy log https://app.netlify.com/projects/tangle-leaderboard/deploys/69a742e55491c20008513f58
😎 Deploy Preview https://deploy-preview-3137--tangle-leaderboard.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@drewstone drewstone merged commit 0631d34 into master Mar 3, 2026
32 of 34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant