feat: MyTask M6-M8 + Sprint 1 M9 — task market UI, social recovery, x402 payment#280
Merged
fanhousanbu merged 6 commits intomasterfrom Apr 7, 2026
Merged
feat: MyTask M6-M8 + Sprint 1 M9 — task market UI, social recovery, x402 payment#280fanhousanbu merged 6 commits intomasterfrom
fanhousanbu merged 6 commits intomasterfrom
Conversation
Integrate MyTask task market into YAA frontend under /tasks route. - Add TaskContext with contract read/write (createTask, acceptTask, submitWork, approveWork, finalizeTask, cancelTask) - Add task list page with All/Open/Mine/Claimed filter tabs and search - Add create task form with ERC-20 approve + createTask two-step flow - Add task detail page with role-based action buttons (Community/Taskor) - Add TaskEscrowV2 ABI and contract config (viem, env-driven chain) - Add task-types.ts (TaskStatus enum, ParsedTask), date-utils.ts - Inject TaskProvider in app layout; add Tasks nav (desktop + mobile) - Upgrade tsconfig target to ES2020 (BigInt literal support)
- Add /recovery page for on-chain social recovery flow (propose + execute) - Update guardian-sign page for QR-based guardian signature - Add social recovery E2E test docs and HTML test pages
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…ipts T01: 积分余额展示 - TaskContext 新增 taskTokenBalance / loadTaskTokenBalance - Dashboard 新增 Task Reward Balance 卡片,实时读取 ERC-20 余额 T02: createTaskWithPermit - TASK_ESCROW_ABI 补充 createTaskWithPermit / ERC20 nonces / name / permit - 创建任务时优先走 EIP-2612 permit(单 tx 无需 approve) - permit 失败自动降级为 approve + createTask T06: linkReceipt 前端 - ABI 补充 linkReceipt / getTaskReceipts - TaskContext 新增 getTaskReceipts / linkReceipt - 任务详情页新增 x402 Receipts 区域:显示已绑定收据,参与方可手动 link
T05 — X402Client integration (lib/x402-client.ts): - postTaskWithX402: POST /tasks → 402 → sign EIP-3009 → retry → receiptId - fetchReceiptDetails: GET /receipts/:id for richer display - Graceful degradation when NEXT_PUBLIC_X402_API_URL not set T06 — Receipt display & auto-link: - create/page.tsx: x402 sign → createTaskWithPermit → auto linkReceipt (3-step) - [taskId]/page.tsx: show payer + timestamp per receipt, fetched from API - task-config.ts: add X402_API_URL, REWARD_TOKEN_NAME/VERSION, isX402Configured()
- Run prettier on all 11 frontend files (task pages, contexts, lib) - Remove unused imports: IsPositive, IsNumberString, EnvConfigService, AnalyzeTransactionDto - Rename catch (error) → catch (_error) in user-nft and user-token services where the error variable was not used (per @typescript-eslint/no-unused-vars)
- Reformat guardian-setup.dto.ts with prettier after import cleanup - Remove unused `data` destructure from useDashboard() call - Remove unused DEFAULT_REWARD_TOKEN_SYMBOL and getStoredAuth imports
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Clean rebase onto master — supersedes #278 and #279. Excludes SDK work already merged via #237/#250/#251/#272.
4 commits, ~6000 additions:
feat(tasks): add MyTask M6-M8 task market UIfeat(recovery): add social recovery UI and guardian-sign pagefeat(tasks): Sprint 1 M9 — ERC-20 balance, EIP-2612 permit, x402 receiptsfeat(tasks): Sprint 1 T05/T06 — x402 payment flow + receipt displayCloses
Supersedes #278 and #279 (both can be closed after this merges)
Test plan
M6-M8 Task market:
/tasks→ Post Task → Approve USDC → CreateSprint 1 x402:
NEXT_PUBLIC_X402_API_URL=http://localhost:3401in.env.localcd MyTask/packages/api-server && pnpm startNEXT_PUBLIC_X402_API_URL→ task still creates (graceful degradation)Social recovery:
/recoverypage: propose + execute social recovery flow