feat(research): B2B customer discovery placeholders + fix TS/CI errors#38
Conversation
…ceprotocol#24 - Add Dispute interface to src/blockchain/types.ts - Add useSubmitEvidence? to BlockchainHooks interface - Fix implicit any on voters.find() callback in DisputeCard.tsx - Add 5 research placeholders: lumenswap, workchain, stellartrade, ultrade, stellar-disbursement-platform Closes sliceprotocol#24
📝 WalkthroughWalkthroughAdds five Spanish-language product discovery research documents for Stellar ecosystem products (Lumenswap, Stellar Disbursement Platform, StellarTrade, Ultrade, WorkChain) under ChangesProduct Discovery Research Documents
Dispute Type Definitions and Hook Contract
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related issues
Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
src/blockchain/types.tsOops! Something went wrong! :( ESLint: 9.39.2 TypeError: Converting circular structure to JSON ... [truncated 453 characters] ... c/dist/eslintrc.cjs:3261:25) src/components/disputes/DisputeCard.tsxOops! Something went wrong! :( ESLint: 9.39.2 TypeError: Converting circular structure to JSON ... [truncated 453 characters] ... c/dist/eslintrc.cjs:3261:25) Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
src/blockchain/types.ts (1)
175-178: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winTighten the
disputeIdparameter type.The
disputeIdparameter is typed asany, but theDispute.idfield isstring | bigint. For consistency and type safety, consider typing it asstring | bigintto match the interface definition on line 76.♻️ Proposed fix
useSubmitEvidence?: () => { - submitEvidence: (disputeId: any, metaHash: string) => Promise<boolean>; + submitEvidence: (disputeId: string | bigint, metaHash: string) => Promise<boolean>; isSubmitting: boolean; };🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/blockchain/types.ts` around lines 175 - 178, In the useSubmitEvidence hook type definition, change the disputeId parameter type in the submitEvidence function from any to string | bigint to match the Dispute.id field type for consistency and improved type safety.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@src/blockchain/types.ts`:
- Around line 175-178: In the useSubmitEvidence hook type definition, change the
disputeId parameter type in the submitEvidence function from any to string |
bigint to match the Dispute.id field type for consistency and improved type
safety.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: edb774a1-2f3b-42ec-9d6c-ec17f6c5f451
📒 Files selected for processing (7)
research/lumenswap.mdresearch/stellar-disbursement-platform.mdresearch/stellartrade.mdresearch/ultrade.mdresearch/workchain.mdsrc/blockchain/types.tssrc/components/disputes/DisputeCard.tsx
|
have fix the issue but still show pr expected |
|
Hey @Ebenezer199914 — we just closed your other PR #35 as well. Please read this carefully before doing anything else. Issues with this PR:
What needs to happen:
Keep this as a draft until you have real responses. We'll review it once there's actual discovery data in the files. |
📝 Summary
Draft PR for issue #24 — [Product Discovery] Customer Discovery B2B — 5 Stellar Ecosystem Products.
Adds 5 research placeholder files reserving the products for discovery, and fixes all TypeScript/CI errors that were blocking the CI pipeline.
🔗 Related Issues
Closes #24
🔄 Changes Made
TypeScript / CI fixes:
Disputeinterface tosrc/blockchain/types.ts(was missing, causing 2 import errors)useSubmitEvidence?to theBlockchainHooksinterface (mock plugin and hooks proxy were referencing it)anyon thevoters.find()callback inDisputeCard.tsxResearch placeholders (5 products claimed):
research/lumenswap.md— Stellar DEX / P2P token tradingresearch/workchain.md— Stellar freelance marketplace with escrowresearch/stellartrade.md— Stellar P2P asset marketplaceresearch/ultrade.md— OTC/institutional DEX on Stellarresearch/stellar-disbursement-platform.md— NGO/grant disbursement platformAll 5 products are active in the Stellar ecosystem, have real users, and meet ≥2 criteria from the issue (P2P value exchange, escrow-based fund release, strangers as parties, bad-faith incentives).
🧪 Testing
✅ Testing Checklist
tsc --noEmit— 0 errors (was 5 before)pnpm lint— exits 0, 7 pre-existing warnings (unchanged frommain)None — changes are additive only (new interface fields are optional, new research markdown files).
🚀 Next Steps & Improvements
💬 Comments
Products were selected based on active user bases, Stellar ecosystem presence, and clear P2P dispute risk profiles as defined in the issue criteria.
Summary by CodeRabbit
Documentation
New Features
Refactor