@aastar/sdk 0.14.0 → 0.16.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (656) hide show
  1. package/.eslintrc.cjs +30 -0
  2. package/.gitmodules +9 -0
  3. package/README.md +299 -0
  4. package/aastar-sdk.code-workspace +14 -0
  5. package/abis/BLSAggregator.json +572 -0
  6. package/abis/BLSValidator.json +39 -0
  7. package/abis/DVTValidator.json +383 -0
  8. package/abis/Eip7702Support.json +24 -0
  9. package/abis/EntryPoint.json +1379 -0
  10. package/abis/GToken.json +510 -0
  11. package/abis/GTokenStaking.json +918 -0
  12. package/abis/LegacyAccount.json +625 -0
  13. package/abis/MySBT.json +1547 -0
  14. package/abis/Paymaster.json +1192 -0
  15. package/abis/PaymasterFactory.json +637 -0
  16. package/abis/PaymasterV4_2.json +1193 -0
  17. package/abis/Registry.json +1677 -0
  18. package/abis/ReputationSystem.json +659 -0
  19. package/abis/SenderCreator.json +99 -0
  20. package/abis/Simple7702Account.json +395 -0
  21. package/abis/SimpleAccount.json +625 -0
  22. package/abis/SimpleAccountFactory.json +108 -0
  23. package/abis/SimpleAccountFactoryV08.json +87 -0
  24. package/abis/SimpleAccountV08.json +557 -0
  25. package/abis/SuperPaymaster.json +1568 -0
  26. package/abis/UserOperationLib.json +57 -0
  27. package/abis/aPNTs.json +1160 -0
  28. package/abis/xPNTsFactory.json +715 -0
  29. package/abis/xPNTsToken.json +1160 -0
  30. package/config/networks/README.md +54 -0
  31. package/config/networks/mainnet.env.example +39 -0
  32. package/config/networks/optimism-sepolia.env.example +35 -0
  33. package/config/networks/optimism.env.example +36 -0
  34. package/config/networks/sepolia.env.example +36 -0
  35. package/config.anvil.json +1 -0
  36. package/config.sepolia.json +1 -0
  37. package/config.test.json +27 -0
  38. package/data/experiment_data.csv +36 -0
  39. package/data/industry_baseline_2025-12-23.json +154 -0
  40. package/data/industry_baseline_latest.json +154 -0
  41. package/docs/ABI_Change_Tracking_Workflow.md +41 -0
  42. package/docs/ABI_MAINTENANCE_PLAN.md +132 -0
  43. package/docs/API_REFERENCE.md +956 -0
  44. package/docs/Configuration_Sync.md +47 -0
  45. package/docs/DAO_Mining_Distribution_Plan.md +522 -0
  46. package/docs/DEMO_REFACTOR_PLAN.md +289 -0
  47. package/docs/DOCUMENTATION_PLAN.md +455 -0
  48. package/docs/ENV_SEPOLIA_UPDATE.md +68 -0
  49. package/docs/Faucet_Gasless_Plan.md +56 -0
  50. package/docs/L2_BUSINESS_CLIENTS_PLAN.md +394 -0
  51. package/docs/L4_Manual_Test_CheatSheet.md +215 -0
  52. package/docs/Plan.md +266 -0
  53. package/docs/Regression_Testing_Guide.md +70 -0
  54. package/docs/SDK_ABI_COVERAGE.md +839 -0
  55. package/docs/SDK_COVERAGE_STRATEGY.md +397 -0
  56. package/docs/SDK_Optimization_Evaluation_Plan.md +51 -0
  57. package/docs/SDK_REGRESSION_AND_API_PLAN.md +98 -0
  58. package/docs/SDK_STAGE3_PLAN.md +151 -0
  59. package/docs/SEPOLIA_ENV_REFERENCE.md +51 -0
  60. package/docs/STAGE3.md +191 -0
  61. package/docs/Script_Comparison_Report.md +91 -0
  62. package/docs/Sepolia_Latest_Deployment.md +117 -0
  63. package/docs/TESTER_GUIDE_GASLESS.md +663 -0
  64. package/docs/TEST_COVERAGE_MATRIX.md +72 -0
  65. package/docs/TODO_SDK_COVERAGE.md +55 -0
  66. package/docs/USER_CASE_DESIGN.md +110 -0
  67. package/docs/Verifier_L4_Gasless_Plan.md +454 -0
  68. package/docs/api/@aastar/account.md +235 -0
  69. package/docs/api/@aastar/analytics.md +219 -0
  70. package/docs/api/@aastar/core.md +26830 -0
  71. package/docs/api/@aastar/dapp.md +130 -0
  72. package/docs/api/@aastar/identity.md +482 -0
  73. package/docs/api/@aastar/paymaster.md +1387 -0
  74. package/docs/api/@aastar/sdk/README.md +155 -0
  75. package/docs/api/@aastar/sdk/node.md +4044 -0
  76. package/docs/api/@aastar/tokens.md +1971 -0
  77. package/docs/api/README.md +10 -0
  78. package/docs/changelog.md +99 -0
  79. package/docs/examples/README.md +18 -0
  80. package/docs/examples/community-flow.md +28 -0
  81. package/docs/examples/enduser-flow.md +24 -0
  82. package/docs/examples/index.md +18 -0
  83. package/docs/examples/multi-chain.md +31 -0
  84. package/docs/examples/operator-flow.md +28 -0
  85. package/docs/guide/CLI_GUIDE.md +65 -0
  86. package/docs/guide/DOCUMENTATION_PLAN.md +455 -0
  87. package/docs/guide/Security-solution.md +106 -0
  88. package/docs/guide/TEST_COMMANDS.md +320 -0
  89. package/docs/guide/concepts/account-abstraction.md +95 -0
  90. package/docs/guide/concepts/rainbow-bridge.md +68 -0
  91. package/docs/guide/concepts/reputation.md +95 -0
  92. package/docs/guide/concepts/superpaymaster.md +141 -0
  93. package/docs/guide/getting-started.md +133 -0
  94. package/docs/guide/installation.md +40 -0
  95. package/docs/guide/paper-data-collection.md +69 -0
  96. package/docs/guide/quick-start.md +52 -0
  97. package/docs/guide/task_breakdown.md +121 -0
  98. package/docs/guide/use-cases/community-management.md +141 -0
  99. package/docs/guide/use-cases/gasless-transactions.md +71 -0
  100. package/docs/guide/use-cases/operator-staking.md +84 -0
  101. package/docs/guide/use-cases/yop.md +72 -0
  102. package/docs/old-solution.md +1078 -0
  103. package/docs/paper-data-collection.md +69 -0
  104. package/docs/refactor/2026-01-13-221242-trae-refactor.md +224 -0
  105. package/docs/refactor/2026-01-13-audit-analysis.md +96 -0
  106. package/docs/refactor/2026-01-13-audit-report-v0.16.2.md +76 -0
  107. package/docs/refactor/2026-01-13-audit-report-v0.17.0.md +74 -0
  108. package/docs/refactor/2026-01-13-cursor-refactor.md +511 -0
  109. package/docs/refactor/2026-01-13-refactor-plan.md +88 -0
  110. package/docs/refactor/2026-01-13-refactor-response-plan.md +77 -0
  111. package/docs/refactor/2026-01-13-refactor-review.md +39 -0
  112. package/docs/refactor/2026-01-13-sdk-enhancement-plan.md +120 -0
  113. package/docs/refactor/2026-01-14-audit-response.md +242 -0
  114. package/docs/refactor/2026-01-14-audit-summary.md +133 -0
  115. package/docs/refactor/cursor-2026-01-13-14-00-audit-report.md +267 -0
  116. package/docs/technical_plan.md +510 -0
  117. package/docs/zh/examples/community-flow.md +38 -0
  118. package/docs/zh/examples/complete-workflow.md +10 -0
  119. package/docs/zh/examples/enduser-flow.md +33 -0
  120. package/docs/zh/examples/index.md +18 -0
  121. package/docs/zh/examples/multi-chain.md +46 -0
  122. package/docs/zh/examples/operator-flow.md +37 -0
  123. package/docs/zh/guide/CLI_GUIDE.md +48 -0
  124. package/docs/zh/guide/DOCUMENTATION_PLAN.md +455 -0
  125. package/docs/zh/guide/Plan.md +266 -0
  126. package/docs/zh/guide/SDK_Optimization_Evaluation_Plan.md +51 -0
  127. package/docs/zh/guide/Security-solution.md +106 -0
  128. package/docs/zh/guide/TEST_COMMANDS.md +125 -0
  129. package/docs/zh/guide/TEST_COVERAGE_MATRIX.md +72 -0
  130. package/docs/zh/guide/concepts/account-abstraction.md +95 -0
  131. package/docs/zh/guide/concepts/rainbow-bridge.md +68 -0
  132. package/docs/zh/guide/concepts/reputation.md +95 -0
  133. package/docs/zh/guide/concepts/superpaymaster.md +141 -0
  134. package/docs/zh/guide/getting-started.md +133 -0
  135. package/docs/zh/guide/installation.md +107 -0
  136. package/docs/zh/guide/old-solution.md +1078 -0
  137. package/docs/zh/guide/paper-data-collection.md +69 -0
  138. package/docs/zh/guide/quick-start.md +134 -0
  139. package/docs/zh/guide/sdk-readme.md +253 -0
  140. package/docs/zh/guide/task_breakdown.md +76 -0
  141. package/docs/zh/guide/technical_plan.md +510 -0
  142. package/docs/zh/guide/use-cases/community-management.md +141 -0
  143. package/docs/zh/guide/use-cases/gasless-transactions.md +71 -0
  144. package/docs/zh/guide/use-cases/operator-staking.md +84 -0
  145. package/docs/zh/guide/use-cases/yop.md +72 -0
  146. package/env.template +32 -0
  147. package/examples/l1-api-demo.ts +184 -0
  148. package/examples/l2-clients-demo.ts +138 -0
  149. package/examples/l3-user-onboarding.ts +74 -0
  150. package/examples/prepare-gasless.ts +89 -0
  151. package/examples/sdk-demo/DEVELOPER_GUIDE.md +159 -0
  152. package/examples/sdk-demo/README.md +30 -0
  153. package/examples/sdk-demo/usage.ts +137 -0
  154. package/examples/simple-gasless-demo.ts +80 -0
  155. package/examples/simple-superpaymaster-demo.ts +96 -0
  156. package/ext/aastar-shared-config/.env.example +6 -0
  157. package/ext/aastar-shared-config/.github/workflows/check-secrets.yml +257 -0
  158. package/ext/aastar-shared-config/AGENTS.md +21 -0
  159. package/ext/aastar-shared-config/CHANGELOG.md +99 -0
  160. package/ext/aastar-shared-config/LICENSE +21 -0
  161. package/ext/aastar-shared-config/QUICK_START.md +215 -0
  162. package/ext/aastar-shared-config/README.md +412 -0
  163. package/ext/aastar-shared-config/SHARED_CONFIG_SUMMARY.md +273 -0
  164. package/ext/aastar-shared-config/check-locker-status.mjs +7 -0
  165. package/ext/aastar-shared-config/favicon.ico +0 -0
  166. package/ext/aastar-shared-config/generate-comparison-table.sh +67 -0
  167. package/ext/aastar-shared-config/package.json +46 -0
  168. package/ext/aastar-shared-config/pnpm-lock.yaml +1182 -0
  169. package/ext/aastar-shared-config/src/abis/BLSAggregator.json +1 -0
  170. package/ext/aastar-shared-config/src/abis/DVTValidator.json +1 -0
  171. package/ext/aastar-shared-config/src/abis/GToken.json +1 -0
  172. package/ext/aastar-shared-config/src/abis/GTokenStaking.json +1 -0
  173. package/ext/aastar-shared-config/src/abis/MySBT.json +1 -0
  174. package/ext/aastar-shared-config/src/abis/PaymasterFactory.json +1 -0
  175. package/ext/aastar-shared-config/src/abis/PaymasterV4.json +1098 -0
  176. package/ext/aastar-shared-config/src/abis/Registry.json +1 -0
  177. package/ext/aastar-shared-config/src/abis/SimpleAccount.json +557 -0
  178. package/ext/aastar-shared-config/src/abis/SimpleAccountFactory.json +87 -0
  179. package/ext/aastar-shared-config/src/abis/SuperPaymasterV2.json +1 -0
  180. package/ext/aastar-shared-config/src/abis/index.ts +45 -0
  181. package/ext/aastar-shared-config/src/abis/xPNTsFactory.json +1 -0
  182. package/ext/aastar-shared-config/src/abis/xPNTsToken.json +1 -0
  183. package/ext/aastar-shared-config/src/branding.ts +32 -0
  184. package/ext/aastar-shared-config/src/communities.ts +93 -0
  185. package/ext/aastar-shared-config/src/constants.ts +67 -0
  186. package/ext/aastar-shared-config/src/contract-addresses.ts +95 -0
  187. package/ext/aastar-shared-config/src/contract-versions.ts +374 -0
  188. package/ext/aastar-shared-config/src/contracts.ts +414 -0
  189. package/ext/aastar-shared-config/src/index.ts +14 -0
  190. package/ext/aastar-shared-config/src/networks.ts +117 -0
  191. package/ext/aastar-shared-config/sync-abis.sh +92 -0
  192. package/ext/aastar-shared-config/sync-versions.mjs +150 -0
  193. package/ext/aastar-shared-config/tsconfig.json +18 -0
  194. package/ext/aastar-shared-config/tsup.config.ts +10 -0
  195. package/ext/aastar-shared-config/verify-all.sh +207 -0
  196. package/ext/aastar-shared-config/verify-contracts.sh +85 -0
  197. package/ext/aastar-shared-config/verify-mysbt-v243.mjs +27 -0
  198. package/ext/aastar-shared-config/verify-onchain-versions.mjs +93 -0
  199. package/l4-setup.sh +11 -0
  200. package/lib/SHARED_CONFIG_REFERENCE.md +133 -0
  201. package/lib/shared-config/.env.example +6 -0
  202. package/lib/shared-config/.github/workflows/check-secrets.yml +257 -0
  203. package/lib/shared-config/AGENTS.md +21 -0
  204. package/lib/shared-config/CHANGELOG.md +99 -0
  205. package/lib/shared-config/LICENSE +21 -0
  206. package/lib/shared-config/QUICK_START.md +215 -0
  207. package/lib/shared-config/README.md +412 -0
  208. package/lib/shared-config/SHARED_CONFIG_SUMMARY.md +273 -0
  209. package/lib/shared-config/check-locker-status.mjs +7 -0
  210. package/lib/shared-config/favicon.ico +0 -0
  211. package/lib/shared-config/generate-comparison-table.sh +67 -0
  212. package/lib/shared-config/package.json +46 -0
  213. package/lib/shared-config/pnpm-lock.yaml +1182 -0
  214. package/lib/shared-config/src/abis/BLSAggregator.json +1 -0
  215. package/lib/shared-config/src/abis/DVTValidator.json +1 -0
  216. package/lib/shared-config/src/abis/GToken.json +1 -0
  217. package/lib/shared-config/src/abis/GTokenStaking.json +1 -0
  218. package/lib/shared-config/src/abis/MySBT.json +1 -0
  219. package/lib/shared-config/src/abis/PaymasterFactory.json +1 -0
  220. package/lib/shared-config/src/abis/PaymasterV4.json +1098 -0
  221. package/lib/shared-config/src/abis/Registry.json +1 -0
  222. package/lib/shared-config/src/abis/SimpleAccount.json +557 -0
  223. package/lib/shared-config/src/abis/SimpleAccountFactory.json +87 -0
  224. package/lib/shared-config/src/abis/SuperPaymasterV2.json +1 -0
  225. package/lib/shared-config/src/abis/index.ts +45 -0
  226. package/lib/shared-config/src/abis/xPNTsFactory.json +1 -0
  227. package/lib/shared-config/src/abis/xPNTsToken.json +1 -0
  228. package/lib/shared-config/src/branding.ts +32 -0
  229. package/lib/shared-config/src/communities.ts +93 -0
  230. package/lib/shared-config/src/constants.ts +67 -0
  231. package/lib/shared-config/src/contract-addresses.ts +95 -0
  232. package/lib/shared-config/src/contract-versions.ts +374 -0
  233. package/lib/shared-config/src/contracts.ts +414 -0
  234. package/lib/shared-config/src/index.ts +14 -0
  235. package/lib/shared-config/src/networks.ts +117 -0
  236. package/lib/shared-config/sync-abis.sh +92 -0
  237. package/lib/shared-config/sync-versions.mjs +150 -0
  238. package/lib/shared-config/tsconfig.json +18 -0
  239. package/lib/shared-config/tsup.config.ts +10 -0
  240. package/lib/shared-config/verify-all.sh +207 -0
  241. package/lib/shared-config/verify-contracts.sh +85 -0
  242. package/lib/shared-config/verify-mysbt-v243.mjs +27 -0
  243. package/lib/shared-config/verify-onchain-versions.mjs +93 -0
  244. package/package.json +58 -22
  245. package/packages/account/package.json +23 -0
  246. package/packages/account/src/accounts/simple.test.ts +93 -0
  247. package/packages/account/src/accounts/simple.ts +84 -0
  248. package/packages/account/src/eoa.test.ts +37 -0
  249. package/packages/account/src/eoa.ts +33 -0
  250. package/packages/account/src/index.test.ts +34 -0
  251. package/packages/account/src/index.ts +61 -0
  252. package/packages/account/tsconfig.json +11 -0
  253. package/packages/analytics/package.json +28 -0
  254. package/packages/analytics/src/index.ts +145 -0
  255. package/packages/analytics/tsconfig.json +11 -0
  256. package/packages/core/package.json +32 -0
  257. package/packages/core/scripts/audit-abi-coverage.ts +165 -0
  258. package/packages/core/scripts/debug-regex.ts +36 -0
  259. package/packages/core/src/abis/.abi-hashes.json +26 -0
  260. package/packages/core/src/abis/BLSAggregator.json +686 -0
  261. package/packages/core/src/abis/BLSValidator.json +42 -0
  262. package/packages/core/src/abis/DVTValidator.json +368 -0
  263. package/packages/core/src/abis/Eip7702Support.json +24 -0
  264. package/packages/core/src/abis/EntryPoint.json +1382 -0
  265. package/packages/core/src/abis/GToken.json +513 -0
  266. package/packages/core/src/abis/GTokenStaking.json +949 -0
  267. package/packages/core/src/abis/LegacyAccount.json +625 -0
  268. package/packages/core/src/abis/MySBT.json +1518 -0
  269. package/packages/core/src/abis/Paymaster.json +1143 -0
  270. package/packages/core/src/abis/PaymasterFactory.json +640 -0
  271. package/packages/core/src/abis/Registry.json +1942 -0
  272. package/packages/core/src/abis/ReputationSystem.json +699 -0
  273. package/packages/core/src/abis/SenderCreator.json +99 -0
  274. package/packages/core/src/abis/Simple7702Account.json +395 -0
  275. package/packages/core/src/abis/SimpleAccount.json +560 -0
  276. package/packages/core/src/abis/SimpleAccountFactory.json +111 -0
  277. package/packages/core/src/abis/SimpleAccountFactoryV08.json +87 -0
  278. package/packages/core/src/abis/SimpleAccountV08.json +557 -0
  279. package/packages/core/src/abis/SuperPaymaster.json +1781 -0
  280. package/packages/core/src/abis/UserOperationLib.json +57 -0
  281. package/packages/core/src/abis/abi.config.json +24 -0
  282. package/packages/core/src/abis/index.ts +104 -0
  283. package/packages/core/src/abis/xPNTsFactory.json +718 -0
  284. package/packages/core/src/abis/xPNTsToken.json +1280 -0
  285. package/packages/core/src/actions/StateValidator.test.ts +175 -0
  286. package/packages/core/src/actions/StateValidator.ts +253 -0
  287. package/packages/core/src/actions/account.test.ts +155 -0
  288. package/packages/core/src/actions/account.ts +179 -0
  289. package/packages/core/src/actions/aggregator.test.ts +88 -0
  290. package/packages/core/src/actions/aggregator.ts +41 -0
  291. package/packages/core/src/actions/dvt.test.ts +124 -0
  292. package/packages/core/src/actions/dvt.ts +53 -0
  293. package/packages/core/src/actions/entryPoint.test.ts +176 -0
  294. package/packages/core/src/actions/entryPoint.ts +266 -0
  295. package/packages/core/src/actions/factory.test.ts +250 -0
  296. package/packages/core/src/actions/factory.ts +613 -0
  297. package/packages/core/src/actions/faucet.test.ts +202 -0
  298. package/packages/core/src/actions/faucet.ts +421 -0
  299. package/packages/core/src/actions/gtokenExtended.test.ts +162 -0
  300. package/packages/core/src/actions/gtokenExtended.ts +153 -0
  301. package/packages/core/src/actions/index.ts +18 -0
  302. package/packages/core/src/actions/paymasterV4.test.ts +209 -0
  303. package/packages/core/src/actions/paymasterV4.ts +455 -0
  304. package/packages/core/src/actions/registry.test.ts +443 -0
  305. package/packages/core/src/actions/registry.ts +860 -0
  306. package/packages/core/src/actions/reputation.test.ts +225 -0
  307. package/packages/core/src/actions/reputation.ts +378 -0
  308. package/packages/core/src/actions/sbt.test.ts +322 -0
  309. package/packages/core/src/actions/sbt.ts +681 -0
  310. package/packages/core/src/actions/staking.test.ts +273 -0
  311. package/packages/core/src/actions/staking.ts +421 -0
  312. package/packages/core/src/actions/superPaymaster.test.ts +356 -0
  313. package/packages/core/src/actions/superPaymaster.ts +828 -0
  314. package/packages/core/src/actions/tokens.test.ts +60 -0
  315. package/packages/core/src/actions/tokens.ts +527 -0
  316. package/packages/core/src/actions/validators.test.ts +239 -0
  317. package/packages/core/src/actions/validators.ts +590 -0
  318. package/packages/core/src/branding.ts +32 -0
  319. package/packages/core/src/clients/BaseClient.ts +78 -0
  320. package/packages/core/src/clients/types.ts +69 -0
  321. package/packages/core/src/clients.ts +13 -0
  322. package/packages/core/src/communities.ts +93 -0
  323. package/packages/core/src/config/ContractConfigManager.ts +63 -0
  324. package/packages/core/src/constants.ts +145 -0
  325. package/packages/core/src/contract-addresses.ts +125 -0
  326. package/packages/core/src/contracts.test.ts +58 -0
  327. package/packages/core/src/contracts.ts +414 -0
  328. package/packages/core/src/crypto/blsSigner.ts +124 -0
  329. package/packages/core/src/crypto/index.ts +1 -0
  330. package/packages/core/src/index.ts +22 -0
  331. package/packages/core/src/networks.ts +127 -0
  332. package/packages/core/src/requirementChecker.test.ts +71 -0
  333. package/packages/core/src/requirementChecker.ts +187 -0
  334. package/packages/core/src/roles.test.ts +34 -0
  335. package/packages/core/src/roles.ts +255 -0
  336. package/packages/core/src/utils/validation.test.ts +50 -0
  337. package/packages/core/src/utils/validation.ts +66 -0
  338. package/packages/core/src/utils.ts +23 -0
  339. package/packages/core/tsconfig.json +12 -0
  340. package/packages/core/vitest.config.ts +14 -0
  341. package/packages/dapp/package.json +30 -0
  342. package/packages/dapp/src/index.ts +4 -0
  343. package/packages/dapp/src/ui/components/EvaluationPanel.tsx +40 -0
  344. package/packages/dapp/src/ui/hooks/useCreditScore.ts +44 -0
  345. package/packages/dapp/src/ui/hooks/useSuperPaymaster.ts +31 -0
  346. package/packages/dapp/src/ui/index.ts +22 -0
  347. package/packages/dapp/tsconfig.json +12 -0
  348. package/packages/identity/package.json +25 -0
  349. package/packages/identity/src/index.ts +114 -0
  350. package/packages/identity/src/mysbt.ts +48 -0
  351. package/packages/identity/tsconfig.json +11 -0
  352. package/packages/paymaster/package.json +25 -0
  353. package/packages/paymaster/src/SuperPaymaster/index.ts +168 -0
  354. package/packages/paymaster/src/V4/PaymasterClient.test.ts +114 -0
  355. package/packages/paymaster/src/V4/PaymasterClient.ts +385 -0
  356. package/packages/paymaster/src/V4/PaymasterOperator.test.ts +80 -0
  357. package/packages/paymaster/src/V4/PaymasterOperator.ts +282 -0
  358. package/packages/paymaster/src/V4/PaymasterUtils.test.ts +54 -0
  359. package/packages/paymaster/src/V4/PaymasterUtils.ts +185 -0
  360. package/packages/paymaster/src/V4/SuperPaymasterClient.test.ts +79 -0
  361. package/packages/paymaster/src/V4/SuperPaymasterClient.ts +123 -0
  362. package/packages/paymaster/src/V4/index.ts +4 -0
  363. package/packages/paymaster/src/index.ts +5 -0
  364. package/packages/paymaster/tsconfig.json +11 -0
  365. package/packages/sdk/README.md +150 -0
  366. package/packages/sdk/aastar/package.json +21 -0
  367. package/packages/sdk/aastar/src/index.ts +3 -0
  368. package/packages/sdk/aastar/tsconfig.json +7 -0
  369. package/packages/sdk/coverage_output.txt +393 -0
  370. package/packages/sdk/coverage_output_final.txt +739 -0
  371. package/packages/sdk/coverage_output_final_v2.txt +722 -0
  372. package/packages/sdk/coverage_output_final_v3.txt +722 -0
  373. package/packages/sdk/examples/config.json +1 -0
  374. package/packages/sdk/examples/regression_test.ts +106 -0
  375. package/packages/sdk/package.json +44 -0
  376. package/packages/sdk/src/clients/ExperimentClient.test.ts +65 -0
  377. package/packages/sdk/src/clients/ExperimentClient.ts +80 -0
  378. package/packages/sdk/src/clients/admin.test.ts +98 -0
  379. package/packages/sdk/src/clients/admin.ts +154 -0
  380. package/packages/sdk/src/clients/clients.test.ts +104 -0
  381. package/packages/sdk/src/clients/community.test.ts +118 -0
  382. package/packages/sdk/src/clients/community.ts +337 -0
  383. package/packages/sdk/src/clients/endUser.test.ts +221 -0
  384. package/packages/sdk/src/clients/endUser.ts +551 -0
  385. package/packages/sdk/src/clients/operator.test.ts +162 -0
  386. package/packages/sdk/src/clients/operator.ts +355 -0
  387. package/packages/sdk/src/errors/AAStarError.test.ts +92 -0
  388. package/packages/sdk/src/errors/AAStarError.ts +70 -0
  389. package/packages/sdk/src/errors/decoder.test.ts +107 -0
  390. package/packages/sdk/src/errors/decoder.ts +91 -0
  391. package/packages/sdk/src/index.ts +23 -0
  392. package/packages/sdk/src/node/index.ts +8 -0
  393. package/packages/sdk/src/types/result.ts +29 -0
  394. package/packages/sdk/src/utils/errorHandler.test.ts +102 -0
  395. package/packages/sdk/src/utils/errorHandler.ts +167 -0
  396. package/packages/sdk/src/utils/eventDecoder.test.ts +56 -0
  397. package/packages/sdk/src/utils/eventDecoder.ts +66 -0
  398. package/packages/sdk/src/utils/funding.test.ts +117 -0
  399. package/packages/sdk/src/utils/funding.ts +280 -0
  400. package/packages/sdk/src/utils/keys.test.ts +105 -0
  401. package/packages/sdk/src/utils/keys.ts +174 -0
  402. package/packages/sdk/src/utils/roleData.test.ts +85 -0
  403. package/packages/sdk/src/utils/roleData.ts +140 -0
  404. package/packages/sdk/src/utils/testScenarios.test.ts +79 -0
  405. package/packages/sdk/src/utils/testScenarios.ts +128 -0
  406. package/packages/sdk/src/utils/userOp.test.ts +190 -0
  407. package/packages/sdk/src/utils/userOp.ts +265 -0
  408. package/packages/sdk/tests/scenarios/01_onboard_community.ts +62 -0
  409. package/packages/sdk/tests/scenarios/02_onboard_operator.ts +109 -0
  410. package/packages/sdk/tests/scenarios/03_onboard_user.ts +53 -0
  411. package/packages/sdk/tests/scenarios/04_gasless_tx_flow.ts +68 -0
  412. package/packages/sdk/tests/scenarios/check_entrypoint.ts +19 -0
  413. package/packages/sdk/tests/scenarios/check_initialization.ts +65 -0
  414. package/packages/sdk/tests/scenarios/debug_addresses.ts +26 -0
  415. package/packages/sdk/tests/scenarios/diagnose_scenario4.ts +55 -0
  416. package/packages/sdk/tests/scenarios/setup.ts +33 -0
  417. package/packages/sdk/tests/scenarios/test_entrypoint_nonce.ts +46 -0
  418. package/packages/sdk/tsconfig.json +11 -0
  419. package/packages/tokens/package.json +25 -0
  420. package/packages/tokens/src/index.ts +273 -0
  421. package/packages/tokens/tsconfig.json +11 -0
  422. package/pnpm-workspace.yaml +2 -0
  423. package/run_l4_gasless_regression.sh +79 -0
  424. package/run_sdk_regression.sh +238 -0
  425. package/scripts/00_utils.ts +59 -0
  426. package/scripts/00_verify_phase1.ts +130 -0
  427. package/scripts/01_1_prep_gtoken.ts +81 -0
  428. package/scripts/01_2_register_sbt.ts +88 -0
  429. package/scripts/01_3_prep_tokens_paymaster.ts +102 -0
  430. package/scripts/01_prepare_all.ts +222 -0
  431. package/scripts/02_test_eoa.ts +53 -0
  432. package/scripts/03_test_standard_aa.ts +68 -0
  433. package/scripts/04_0_check_deploy.ts +24 -0
  434. package/scripts/04_1_check_allowance.ts +44 -0
  435. package/scripts/04_2_construct_verify.ts +96 -0
  436. package/scripts/04_3_verify_estimate.ts +66 -0
  437. package/scripts/04_4_verify_pack.ts +74 -0
  438. package/scripts/04_test_paymaster_v4.ts +60 -0
  439. package/scripts/05_1_deposit.ts +48 -0
  440. package/scripts/05_test_superpaymaster.ts +58 -0
  441. package/scripts/06_local_test_v3_admin.ts +163 -0
  442. package/scripts/06_local_test_v3_execution.ts +132 -0
  443. package/scripts/06_local_test_v3_full.ts +490 -0
  444. package/scripts/06_local_test_v3_funding.ts +124 -0
  445. package/scripts/06_local_test_v3_reputation.ts +234 -0
  446. package/scripts/07_local_test_v3_audit.ts +181 -0
  447. package/scripts/08_local_test_registry_lifecycle.ts +382 -0
  448. package/scripts/09_local_test_community_lifecycle.ts +385 -0
  449. package/scripts/09_local_test_community_simple.ts +108 -0
  450. package/scripts/09_scenario_bread_independent.ts +247 -0
  451. package/scripts/10_scenario_super_shared.ts +196 -0
  452. package/scripts/10_test_protocol_admin_full.ts +173 -0
  453. package/scripts/11_scenario_hacker_defense.ts +104 -0
  454. package/scripts/11_test_core_flows_full.ts +157 -0
  455. package/scripts/12_test_slash_mechanism.ts +205 -0
  456. package/scripts/12_test_slash_queries.ts +83 -0
  457. package/scripts/12_test_staking_exit.ts +152 -0
  458. package/scripts/12_test_staking_slash.ts +301 -0
  459. package/scripts/12_test_tier2_slash.ts +139 -0
  460. package/scripts/13_test_sbt_burn_linkage.ts +266 -0
  461. package/scripts/14_test_credit_redesign.ts +266 -0
  462. package/scripts/15_test_bls_full.ts +148 -0
  463. package/scripts/15_test_dvt_bls_full.ts +140 -0
  464. package/scripts/17_test_cross_role_collaboration.ts +95 -0
  465. package/scripts/18_sdk_e2e_verification.ts +67 -0
  466. package/scripts/18_test_dvt_sdk_flow.ts +138 -0
  467. package/scripts/18_test_lifecycle_completion.ts +144 -0
  468. package/scripts/19_sdk_experiment_runner.ts +114 -0
  469. package/scripts/19_sdk_experiment_runner.ts.backup +391 -0
  470. package/scripts/20_sdk_full_capability.ts +93 -0
  471. package/scripts/20_test_superpaymaster_new_apis.ts +193 -0
  472. package/scripts/21_test_paymasterv4_complete.ts +341 -0
  473. package/scripts/22_test_bls_signing.ts +260 -0
  474. package/scripts/23_test_middleware.ts +197 -0
  475. package/scripts/98_edge_reentrancy.ts +85 -0
  476. package/scripts/99_bug_hunting_fast.ts +99 -0
  477. package/scripts/analyze_abi_coverage.ts +169 -0
  478. package/scripts/check-admin.ts +95 -0
  479. package/scripts/check-jason-status.ts +184 -0
  480. package/scripts/check-roles.ts +36 -0
  481. package/scripts/clear-nonce.ts +47 -0
  482. package/scripts/collect_industry_baseline.ts +236 -0
  483. package/scripts/complete-jack-superpaymaster.ts +171 -0
  484. package/scripts/complete_env_config.ts +97 -0
  485. package/scripts/debug-addr.ts +43 -0
  486. package/scripts/debug-community-registration.ts +92 -0
  487. package/scripts/debug-deploy-v4.ts +116 -0
  488. package/scripts/debug-paymaster.ts +127 -0
  489. package/scripts/debug-register-role.ts +101 -0
  490. package/scripts/debug-version.ts +71 -0
  491. package/scripts/debug_account_c.ts +43 -0
  492. package/scripts/debug_bls.ts +58 -0
  493. package/scripts/debug_config_v036.ts +13 -0
  494. package/scripts/debug_contracts.ts +2 -0
  495. package/scripts/debug_env.ts +69 -0
  496. package/scripts/debug_find_paymaster.ts +98 -0
  497. package/scripts/debug_isolated_registration.ts +256 -0
  498. package/scripts/debug_paymaster_config.ts +19 -0
  499. package/scripts/debug_pim_addr.ts +23 -0
  500. package/scripts/debug_pm_status.ts +51 -0
  501. package/scripts/debug_registry.ts +39 -0
  502. package/scripts/debug_registry_setup.ts +129 -0
  503. package/scripts/debug_sanity.ts +32 -0
  504. package/scripts/debug_shared_config.ts +10 -0
  505. package/scripts/debug_token_compat.ts +51 -0
  506. package/scripts/debug_tokens.ts +41 -0
  507. package/scripts/debug_vcheck.ts +33 -0
  508. package/scripts/deploy-sync.ts +104 -0
  509. package/scripts/deploy_and_init_v3.sh +134 -0
  510. package/scripts/deploy_anvil_accounts.ts +144 -0
  511. package/scripts/deploy_paymaster_v4.ts +139 -0
  512. package/scripts/deploy_test_accounts.ts +401 -0
  513. package/scripts/deprecated/check_aa_entrypoint.ts +29 -0
  514. package/scripts/deprecated/check_paymaster_deposits.ts +45 -0
  515. package/scripts/deprecated/debug_aoa_function.ts +28 -0
  516. package/scripts/deprecated/debug_aoa_issue.ts +16 -0
  517. package/scripts/deprecated/debug_pimlico_aa23.ts +40 -0
  518. package/scripts/deprecated/debug_summary.ts +34 -0
  519. package/scripts/deprecated/deploy_v07_aa.ts +99 -0
  520. package/scripts/deprecated/fix_all_issues.ts +61 -0
  521. package/scripts/deprecated/fund_bpnts.ts +52 -0
  522. package/scripts/deprecated/get_factory_addresses.ts +28 -0
  523. package/scripts/deprecated/recheck_pim.ts +34 -0
  524. package/scripts/dev_tools/extract_abis.sh +151 -0
  525. package/scripts/dev_tools/extract_addresses_to_env.sh +67 -0
  526. package/scripts/dev_tools/final_safe_harmonize.py +77 -0
  527. package/scripts/dev_tools/safe_harmonize.py +107 -0
  528. package/scripts/dev_tools/surgical_harmonize.py +83 -0
  529. package/scripts/experiment/stage3/SETUP_GUIDE.md +258 -0
  530. package/scripts/experiment/stage3/archived_scripts/00_token_distribution.ts +78 -0
  531. package/scripts/experiment/stage3/archived_scripts/01_dao_launch.ts +96 -0
  532. package/scripts/experiment/stage3/archived_scripts/01b_bread_launch.ts +112 -0
  533. package/scripts/experiment/stage3/archived_scripts/02_operator_setup.ts +84 -0
  534. package/scripts/experiment/stage3/archived_scripts/02b_operator_b_setup.ts +104 -0
  535. package/scripts/experiment/stage3/archived_scripts/02c_finalize_operators.ts +86 -0
  536. package/scripts/experiment/stage3/archived_scripts/02d_operator_collateral.ts +89 -0
  537. package/scripts/experiment/stage3/archived_scripts/03_user_onboarding.ts +83 -0
  538. package/scripts/experiment/stage3/archived_scripts/03b_deploy_aa_account.ts +61 -0
  539. package/scripts/experiment/stage3/archived_scripts/03c_aa_onboarding.ts +104 -0
  540. package/scripts/experiment/stage3/archived_scripts/03d_mint_points.ts +60 -0
  541. package/scripts/experiment/stage3/archived_scripts/04_benchmarking.ts +100 -0
  542. package/scripts/experiment/stage3/archived_scripts/05_multi_op_setup.ts +149 -0
  543. package/scripts/experiment/stage3/archived_scripts/README.md +58 -0
  544. package/scripts/experiment/stage3/archived_scripts/check_roles.ts +29 -0
  545. package/scripts/experiment/stage3/archived_scripts/decode_error.ts +23 -0
  546. package/scripts/experiment/stage3/archived_scripts/fund_user.ts +51 -0
  547. package/scripts/experiment/stage3/archived_scripts/gen_b_key.ts +3 -0
  548. package/scripts/experiment/stage3/archived_scripts/gen_keys.ts +4 -0
  549. package/scripts/experiment/stage3/archived_scripts/setup.ts +105 -0
  550. package/scripts/experiment/stage3/archived_scripts/test_key.ts +4 -0
  551. package/scripts/experiment/stage3/archived_scripts/verify_state.ts +59 -0
  552. package/scripts/experiment/stage3/refactored/00_token_distribution.ts +46 -0
  553. package/scripts/experiment/stage3/refactored/02_operator_setup.ts +65 -0
  554. package/scripts/experiment/stage3/refactored/03_user_onboarding.ts +68 -0
  555. package/scripts/experiment/stage3/refactored/05_multi_op_setup.ts +63 -0
  556. package/scripts/experiment/stage3/refactored/README.md +71 -0
  557. package/scripts/extract-docs.sh +141 -0
  558. package/scripts/fund-jack.ts +38 -0
  559. package/scripts/generate_env_from_deployment.ts +109 -0
  560. package/scripts/inspect-anni-token.ts +116 -0
  561. package/scripts/inspect-factory.ts +83 -0
  562. package/scripts/l4-paymasterv4-transfer-test.ts +228 -0
  563. package/scripts/l4-setup.ts +453 -0
  564. package/scripts/l4-state.json +80 -0
  565. package/scripts/phase1_verify_contracts.ts +207 -0
  566. package/scripts/pre_test_sync.ts +83 -0
  567. package/scripts/prepare_sepolia_resources.ts +154 -0
  568. package/scripts/publish_all.sh +39 -0
  569. package/scripts/query-jack-token.ts +22 -0
  570. package/scripts/quick_setup.ts +124 -0
  571. package/scripts/quick_setup_account.ts +80 -0
  572. package/scripts/run_automated_experiment.sh +121 -0
  573. package/scripts/run_daily_experiment.ts +70 -0
  574. package/scripts/run_l4_gasless_regression.sh +32 -0
  575. package/scripts/run_sdk_experiment.sh +13 -0
  576. package/scripts/run_sdk_regression-v2.sh +38 -0
  577. package/scripts/sdk_regression_v2.ts +162 -0
  578. package/scripts/security_audit.sh +172 -0
  579. package/scripts/setup-bbq-community.ts +187 -0
  580. package/scripts/setup-dancing-community.ts +223 -0
  581. package/scripts/setup_test_accounts.ts +88 -0
  582. package/scripts/setup_test_environment.ts +147 -0
  583. package/scripts/sync_anvil_config.cjs +44 -0
  584. package/scripts/sync_config_to_env.ts +88 -0
  585. package/scripts/sync_contract_addresses.ts +186 -0
  586. package/scripts/sync_sepolia_config.cjs +90 -0
  587. package/scripts/sync_sepolia_config.mjs +74 -0
  588. package/scripts/test-brown-v4-deploy.ts +90 -0
  589. package/scripts/test-faucet-and-gasless.ts +170 -0
  590. package/scripts/test-jack-gasless.ts +119 -0
  591. package/scripts/test-jack-registration.ts +133 -0
  592. package/scripts/test-jack-superpaymaster-api.ts +112 -0
  593. package/scripts/test-kms-gasless.ts +138 -0
  594. package/scripts/test_groups.ts +138 -0
  595. package/scripts/test_multi_community_anvil.ts +276 -0
  596. package/scripts/test_new_sdk_apis_sepolia.ts +193 -0
  597. package/scripts/test_sdk_join_idempotent.ts +233 -0
  598. package/scripts/test_simple_sepolia.ts +44 -0
  599. package/scripts/update_env_from_config.ts +83 -0
  600. package/scripts/v2_regression/00_validate_env.ts +101 -0
  601. package/scripts/v2_regression/01_setup_and_fund.ts +132 -0
  602. package/scripts/v2_regression/02_operator_onboarding.ts +174 -0
  603. package/scripts/v2_regression/03_community_registry.ts +139 -0
  604. package/scripts/v2_regression/04_enduser_flow.ts +141 -0
  605. package/scripts/v2_regression/05_admin_audit.ts +157 -0
  606. package/scripts/v2_regression/README.md +161 -0
  607. package/scripts/validate_env.ts +112 -0
  608. package/scripts/verify-tx-status.ts +81 -0
  609. package/scripts/verify_onchain_milestone.ts +114 -0
  610. package/scripts/verify_phase1.ts +66 -0
  611. package/scripts/verify_phase2.ts +66 -0
  612. package/sdk_experiment_data.csv +4 -0
  613. package/simple-test-paymaster.sh +2 -0
  614. package/simple-test-superpaymaster.sh +1 -0
  615. package/tests/l1-regression.test.ts +458 -0
  616. package/tests/l4-test-anni-gasless.ts +105 -0
  617. package/tests/l4-test-jason1-gasless.ts +150 -0
  618. package/tests/l4-test-jason2-gasless.ts +174 -0
  619. package/tests/l4-test-pmv4-deposit.ts +111 -0
  620. package/tests/l4-test-pmv4-gasless.ts +166 -0
  621. package/tests/l4-test-pmv4-submit.ts +223 -0
  622. package/tests/regression/README.md +168 -0
  623. package/tests/regression/config.ts +215 -0
  624. package/tests/regression/display-versions.ts +85 -0
  625. package/tests/regression/index.ts +67 -0
  626. package/tests/regression/l1-tests.ts +267 -0
  627. package/tests/regression/l2-tests.ts +171 -0
  628. package/tests/regression/l3-tests.ts +125 -0
  629. package/tests/regression/l4-gasless.ts +897 -0
  630. package/tests/regression/l4-runner.ts +52 -0
  631. package/tests/reports/phase1_contract_verification.md +45 -0
  632. package/tests/utils/contractVerifier.ts +237 -0
  633. package/tests/utils/userOpHelper.ts +194 -0
  634. package/tsconfig.json +41 -0
  635. package/typedoc.json +59 -0
  636. package/vitest.config.ts +16 -0
  637. package/dist/clients/admin.d.ts +0 -12
  638. package/dist/clients/admin.d.ts.map +0 -1
  639. package/dist/clients/admin.js +0 -20
  640. package/dist/clients/admin.js.map +0 -1
  641. package/dist/clients/community.d.ts +0 -12
  642. package/dist/clients/community.d.ts.map +0 -1
  643. package/dist/clients/community.js +0 -18
  644. package/dist/clients/community.js.map +0 -1
  645. package/dist/clients/endUser.d.ts +0 -12
  646. package/dist/clients/endUser.d.ts.map +0 -1
  647. package/dist/clients/endUser.js +0 -20
  648. package/dist/clients/endUser.js.map +0 -1
  649. package/dist/clients/operator.d.ts +0 -18
  650. package/dist/clients/operator.d.ts.map +0 -1
  651. package/dist/clients/operator.js +0 -65
  652. package/dist/clients/operator.js.map +0 -1
  653. package/dist/index.d.ts +0 -11
  654. package/dist/index.d.ts.map +0 -1
  655. package/dist/index.js +0 -12
  656. package/dist/index.js.map +0 -1
package/docs/Plan.md ADDED
@@ -0,0 +1,266 @@
1
+ # AAStar计划
2
+
3
+
4
+ ## V2
5
+
6
+ 好的,完全理解你的思路!MVP阶段聚焦核心功能,快速验证,是非常明智的选择。
7
+
8
+ 根据你的优先级分析:
9
+
10
+ * **最高优先级 (High Priority - H)**:
11
+ 1. 核心账户功能 (二次签名验证 + 整体集成,包括Relay)
12
+ 2. Demo 应用 (页面JS版本 + 简单后端配合,为后续集成COS72做准备)
13
+ * **中等优先级 (Medium Priority - M)**:
14
+ 1. 基础的Gasless功能对接 (SuperPaymaster的初步集成)
15
+ * **低优先级 (Low Priority - L)**:
16
+ 1. SDSS的完全去中心化 (先采用中心化或简化版)
17
+ 2. 完整的SDK化
18
+ 3. 其他高级功能和研究性课题
19
+
20
+ 现在,我们基于这个思路,从你之前的详细任务列表中筛选和重组,形成一个更聚焦的MVP计划表格。
21
+
22
+ ---
23
+
24
+ ## AirAccount MVP 开发计划 (V2)
25
+
26
+ ### 一、最高优先级 (High Priority - H)
27
+
28
+ #### H1. 核心账户功能与集成 (Core Account Functionality & Integration)
29
+ - [ ] **H1.1 账户基础与二次签名验证 (Account Primitives & Dual-Signature Verification)**
30
+ - [ ] H1.1.1 最小版二次签名验证账户的合约实现 (BLS with DVT or simplified approach for MVP, plan EIP-7212 for future)
31
+ - [ ] H1.1.2 账户的注册、生成流程实现
32
+ - [ ] H1.1.3 指纹 (Passkey) 绑定与账户管理 (添加、查询) 的基本API和逻辑
33
+ - [ ] **H1.2 TEE 集成与核心钱包逻辑 (TEE Integration & Core Wallet Logic)**
34
+ - [ ] H1.2.1 AirAccount Relay 在 ARM 平台运行 TEE Wallet (TA) 的核心功能 (私钥安全存储与签名)
35
+ - [ ] H1.2.2 不可信应用 (CA) 与 TEE API 的基础交互逻辑 (用于Demo调用)
36
+ - [ ] H1.2.3 CA 与 TA 的核心交互流程联调 (签名请求与响应)
37
+ - [ ] **H1.3 Relay 与 Bundler 核心功能 (Relay & Bundler Core Functionality)**
38
+ - [ ] H1.3.1 内部 Bundler 的核心实现 (打包UserOperation)
39
+ - [ ] H1.3.2 Relay 的核心实现 (接收CA请求,与TEE交互,与Bundler交互,提交交易)
40
+ - [ ] **H1.4 整体核心流程联调 (Overall Core Flow Integration & Testing)**
41
+ - [ ] H1.4.1 从用户发起操作 (CA) -> Relay -> TEE签名 -> Bundler打包 -> 交易上链 的核心流程联调
42
+ - [ ] H1.4.2 部署与测试环境搭建 (例如,本地测试网,目标硬件初步验证 NXP iMX93)
43
+
44
+ #### H2. Demo 应用与初步用户体验 (Demo Application & Initial UX)
45
+ - [ ] **H2.1 Demo 前端页面 (JS 版本) (Demo Frontend - JS Version)**
46
+ - [ ] H2.1.1 核心账户操作的用户界面 (账户创建、指纹绑定、发起简单交易)
47
+ - [ ] H2.1.2 与后端/Relay交互的API调用实现
48
+ - [ ] H2.1.3 基本的用户反馈和状态显示
49
+ - [ ] **H2.2 Demo 简易后端/模拟服务 (Demo Simplified Backend/Mock Service)**
50
+ - [ ] H2.2.1 (如果需要) 提供必要的后端API支持Demo前端 (例如,用户管理、状态查询的简化版)
51
+ - [ ] H2.2.2 (如果需要) 模拟部分链上交互或TEE行为,以便前端独立开发和测试
52
+ - [ ] **H2.3 Demo 流程验证与用户体验初步打磨 (Demo Flow Validation & Initial UX Refinement)**
53
+ - [ ] H2.3.1 完整演示核心账户创建、绑定、使用流程
54
+ - [ ] H2.3.2 收集初步用户体验反馈,进行界面和流程优化
55
+
56
+ ### 二、中等优先级 (Medium Priority - M)
57
+
58
+ #### M1. 基础 Gasless 功能对接 (Basic Gasless Functionality Integration)
59
+ - [ ] **M1.1 SuperPaymaster 初步集成 (Initial SuperPaymaster Integration)**
60
+ - [ ] M1.1.1 部署或对接一个基础功能的 Paymaster 合约
61
+ - [ ] M1.1.2 实现 AirAccount 账户与该 Paymaster 的交互逻辑 (例如,允许特定ERC20代付)
62
+ - [ ] M1.1.3 在 Demo 应用中集成基础的 Gasless 交易体验 (例如,特定操作免Gas)
63
+ - [ ] **M1.2 Gasless 流程测试与验证 (Gasless Flow Testing & Validation)**
64
+ - [ ] M1.2.1 测试通过 Paymaster 完成 ERC20 代付的流程
65
+ - [ ] M1.2.2 验证 Gasless 交易的正确性和稳定性
66
+
67
+ ---
68
+
69
+ **计划V2说明与思考:**
70
+
71
+ 1. **聚焦核心**: 这个版本严格筛选了任务,确保所有高优先级任务都直接服务于“可用的核心账户”和“能展示核心价值的Demo”。
72
+ 2. **二次签名验证的简化**: 在H1.1.1中提到 "BLS with DVT or simplified approach for MVP",意味着MVP阶段可以考虑一个更易于快速实现的二次签名方案,后续再升级到更复杂的链上验证方案。
73
+ 3. **TEE的核心价值**: H1.2 强调了TEE在私钥安全存储和签名方面的核心作用,这是AirAccount安全性的基石。
74
+ 4. **Relay是枢纽**: H1.3 将Relay和Bundler作为核心集成部分,它们是连接用户、TEE和区块链的关键。
75
+ 5. **Demo驱动**: H2 的目标是快速构建一个能跑通核心流程的Demo,用于验证、展示和收集早期反馈。先有JS版本,后续再考虑集成到COS72。
76
+ 6. **Gasless作为重要加分项**: M1 将基础的Gasless功能作为中等优先级,因为它能显著提升用户体验,是账户抽象的一个重要特性。MVP阶段实现基础对接即可。
77
+ 7. **隐含的任务**:
78
+ * **合约部署与管理**: 部署账户合约、Paymaster合约等。
79
+ * **测试用例编写**: 对核心功能进行单元测试和集成测试。
80
+ * **文档**: 核心API和流程的初步文档。
81
+ 8. **后续迭代**:
82
+ * **低优先级任务**: SDSS的去中心化、完整的SDK、社交恢复、ERC-7702、更多应用协议、AI集成等都放在MVP成功验证之后。
83
+ * **COS72集成**: 在Demo JS版本稳定后,再考虑将其能力集成到更成熟的COS72框架中。
84
+
85
+ 这个V2计划更加精炼,目标更明确,希望能帮助你的团队高效推进MVP的开发。记住,MVP的关键在于“最小”和“可行”,快速迭代,持续优化。
86
+
87
+ --------
88
+ 下面是V1的
89
+
90
+ ------
91
+
92
+ 好的,这是一个非常详细和全面的开发计划!我将根据你提供的架构思考、Research重点和明细开发任务,帮你整理成一个包含checkbox的计划表格。
93
+
94
+ **重要说明:**
95
+
96
+ * **层级与拆解**: 你提到了“表格罗列两层任务足够”,但你提供的明细任务非常细致,很多可以看作是第三层甚至第四层的任务。为了保持表格的可读性,我会尽量将相关的细致任务组织在更大的特性或模块下。
97
+ * **负责人与时间**: 这个表格**不包含**负责人和预计完成时间,这些需要你和你的团队根据实际情况来分配。
98
+ * **依赖关系**: 很多任务之间存在依赖关系,这个表格主要关注任务列表,具体的依赖管理需要在项目管理工具中体现。
99
+ * **动态调整**: 这是一个初步的计划,实际开发过程中肯定会遇到变化,需要灵活调整。
100
+ * **N0-N3**: 我理解这是指不同的部署阶段或节点类型,在相关任务中会体现。
101
+
102
+ **开发计划表格 (Markdown格式)**
103
+
104
+ ---
105
+
106
+ ## AirAccount 开发计划
107
+
108
+ ### 一、基础设施 (Infrastructure)
109
+
110
+ #### 1. 核心账户与签名 (Core Account & Signature)
111
+ - [ ] **1.1 账户基础 (Account Primitives)**
112
+ - [ ] 1.1.1 最小版二次签名验证账户的注册、生成 (BLS with DVT, plan EIP-7212)
113
+ - [ ] 1.1.2 指纹 (Passkey) 绑定与账户管理 (添加、查询)
114
+ - [ ] **1.2 Paymaster 与 Gas 管理 (Paymaster & Gas Management)**
115
+ - [ ] 1.2.1 使用 Paymaster 完成 ERC20 代付
116
+ - [ ] 1.2.2 Gas Card 设计:查询、绑定、ERC20 代扣
117
+ - [ ] **1.3 Bundler 与 Relay (Bundler & Relay)**
118
+ - [ ] 1.3.1 Bundler 实现:从外部依赖过渡到内部 Bundler
119
+ - [ ] 1.3.2 优化:内部 Bundler 与 Paymaster Relay 合并,实现一步提交
120
+ - [ ] **1.4 TEE 集成与硬件钱包交互 (TEE Integration & HW Wallet Interaction)**
121
+ - [ ] 1.4.1 AirAccount Relay 在 ARM 平台运行 TEE Wallet (TA)
122
+ - [ ] 1.4.2 不可信应用 (CA) 开发
123
+ - [ ] 1.4.3 CA 通过 TEE API 调用可信应用 TA (硬件钱包) 的联合调试
124
+ - [ ] **1.5 社交恢复与账户升级 (Social Recovery & Account Upgrade)**
125
+ - [ ] 1.5.1 AirAccount 社交恢复的多签账户设计与实现
126
+ - [ ] 1.5.2 AirAccount 账户升级到社交恢复多签账户的流程
127
+ - [ ] 1.5.3 (可选) ERC-7702 账户集成与多签恢复嵌入
128
+ - [ ] **1.6 整体联调与测试 (Overall Integration & Testing)**
129
+ - [ ] 1.6.1 整体 AirAccount 基础设施联调 (目标平台: NXP iMX93 或更低配置)
130
+
131
+ #### 2. SDSS (Standardized Decentralized Service System) - V0.1
132
+ - [ ] **2.1 核心服务与API (Core Services & API)**
133
+ - [ ] 2.1.1 SDSS ENS (或类似域名服务) 实现
134
+ - [ ] 2.1.2 SDSS API 服务基础框架搭建
135
+ - [ ] 2.1.3 路由注册、发现机制
136
+ - [ ] 2.1.4 API 标准数据提交、更新、缓存、错误处理机制
137
+ - [ ] **2.2 核心提交服务 (Core Submission Service)**
138
+ - [ ] 2.2.1 SDSS Submit 服务基础:一次提交 (Gas Sponsor + Bundler 上链)
139
+
140
+ #### 3. 客户端与工具 (Client & Tools)
141
+ - [ ] **3.1 Tauri 客户端 (Tauri Client)**
142
+ - [ ] 3.1.1 Tauri 客户端多端发布与测试
143
+ - [ ] 3.1.2 Tauri 集成测试:COS72 基础 Web 版本开发与集成
144
+ - [ ] **3.2 SSO 与 SDK (SSO & SDK)**
145
+ - [ ] 3.2.1 SSO (单点登录) 插件/JS/SDK 开发与测试
146
+
147
+ ### 二、框架层 (Framework)
148
+
149
+ #### 4. AAStar SDK 与集成
150
+ - [ ] **4.1 AAStar SDK 开发 (AAStar SDK Development)**
151
+ - [ ] 4.1.1 AAStar SDK Web 版本开发与测试
152
+ - [ ] **4.2 COS72 与 AAStar SDK 集成 (COS72 & AAStar SDK Integration)**
153
+ - [ ] 4.2.1 COS72 与 AAStar SDK 集成测试
154
+
155
+ #### 5. Relay 技术栈演进与集成 (Relay Stack Evolution & Integration)
156
+ - [ ] **5.1 Relay 版本统一 (Relay Version Unification)**
157
+ - [ ] 5.1.1 Go 版本 Relay 与 Rust 版本 Relay 的尝试合并/搬迁
158
+ - [ ] **5.2 Rust Relay 集成 (Rust Relay Integration)**
159
+ - [ ] 5.2.1 Rust 版本 Relay 集成到 COS72 (N0-N3 部署)
160
+
161
+ #### 6. SDSS 服务集成到 COS72 (SDSS Service Integration into COS72)
162
+ - [ ] **6.1 文件服务 SDSS (File Service SDSS)**
163
+ - [ ] 6.1.1 文件服务 SDSS 集成到 COS72
164
+ - [ ] **6.2 Supabase SDSS (Supabase SDSS)**
165
+ - [ ] 6.2.1 Supabase (或类似 BaaS) SDSS 集成到 COS72
166
+ - [ ] **6.3 硬件钱包 SDSS (Hardware Wallet SDSS)**
167
+ - [ ] 6.3.1 硬件钱包 SDSS 集成到 COS72
168
+
169
+ #### 7. COS72 可定制化与发布 (COS72 Customization & Release)
170
+ - [ ] **7.1 可定制化 COS72 (Customizable COS72)**
171
+ - [ ] 7.1.1 COS72 配置化方案设计与实现
172
+ - [ ] 7.1.2 COS72 构建 (Build) 流程优化
173
+ - [ ] 7.1.3 COS72 发布流程建立
174
+
175
+ ### 三、应用层 (Application)
176
+
177
+ #### 8. 核心协议与应用 (Core Protocols & Applications)
178
+ - [ ] **8.1 OpenPNTs (Programmable Non-fungible Tokens)**
179
+ - [ ] 8.1.1 OpenPNTs 协议设计与基础应用开发
180
+ - [ ] 8.1.2 OpenPNTs 集成到 COS72
181
+ - [ ] **8.2 OpenCards**
182
+ - [ ] 8.2.1 OpenCards 协议设计与基础应用开发
183
+ - [ ] 8.2.2 OpenCards 集成到 COS72
184
+ - [ ] **8.3 Uniswap V4 Launchpad (可选/探索)**
185
+ - [ ] 8.3.1 Uniswap V4 Launchpad 功能开发
186
+
187
+ #### 9. PNTs 发行与演示 (PNTs Issuance & Demo)
188
+ - [ ] **9.1 PNTs 发行流程设计 (PNTs Issuance Flow Design)**
189
+ - [ ] 9.1.1 PNTs 发行流程 (线上线下、链上) Demo 设计
190
+ - [ ] **9.2 PNTs 发行流程开发 (PNTs Issuance Flow Development)**
191
+ - [ ] 9.2.1 PNTs 发行流程功能开发
192
+
193
+ #### 10. COS72 版本发布 (COS72 Release)
194
+ - [ ] **10.1 COS72 V0.14 发布**
195
+ - [ ] 10.1.1 实现无侵入使用特性
196
+ - [ ] 10.1.2 实现随时解绑账户特性
197
+ - [ ] 10.1.3 支持用户发行自己的积分和 GasCard
198
+
199
+ #### 11. AAStar 生态应用 (AAStar Ecosystem Applications)
200
+ - [ ] **11.1 AAStar 积分 (aPNTs)**
201
+ - [ ] 11.1.1 AAStar 发行自己的积分 aPNTs (基于 OpenPNTs)
202
+ - [ ] 11.1.2 aPNTs 引入 SDSS,管理积分发行
203
+
204
+ #### 12. Arcadia (探索性项目)
205
+ - [ ] **12.1 Arcadia 设计与 Demo 开发**
206
+ - [ ] 12.1.1 Arcadia 概念讨论与哲学 AI 基础研究
207
+ - [ ] 12.1.2 Arcadia Demo2 开发
208
+
209
+ #### 13. 插件生态 (Plugin Ecosystem)
210
+ - [ ] **13.1 插件规划**
211
+ - [ ] 13.1.1 ~20+ 插件的思考、规划与优先级排序
212
+
213
+ ### 四、AI 集成 (AI Integration) - (探索与研究阶段为主)
214
+
215
+ #### 14. AI 辅助决策与知识库 (AI-Assisted Decision Making & Knowledge Base)
216
+ - [ ] **14.1 人生路径与未来知识库**
217
+ - [ ] 14.1.1 知识库构建与使用场景探索
218
+ - [ ] **14.2 常规选择与决策 AI 辅助**
219
+ - [ ] 14.2.1 AI 辅助模型研究与原型
220
+ - [ ] **14.3 消费决策 AI**
221
+ - [ ] 14.3.1 消费决策 AI 模型研究与原型
222
+
223
+ #### 15. Crypto + AI (Asset3)
224
+ - [ ] **15.1 Asset3 概念与实现探索**
225
+ - [ ] 15.1.1 Crypto 资产与 AI 结合的创新应用探索
226
+
227
+ ### 五、Research 重点 (与开发并行或指导开发)
228
+
229
+ *(这些是研究方向,可能不会直接转化为开发任务,但会影响设计和实现)*
230
+ - [ ] **R1. 签名方案研究**
231
+ - [ ] R1.1 当前签名方案优化与安全性分析 (BLS, EIP-7212 等)
232
+ - [ ] R1.2 后量子密码 (PQC) 签名方案调研与集成可行性分析
233
+ - [ ] **R2. TEE 可信方案研究**
234
+ - [ ] R2.1 TEE 技术栈选择与安全性评估 (e.g., Intel SGX, ARM TrustZone)
235
+ - [ ] R2.2 TEE 证明与远程认证机制研究
236
+ - [ ] **R3. 漏洞与作恶防范研究**
237
+ - [ ] R3.1 硬件层面漏洞分析与防范 (TEE, Secure Element)
238
+ - [ ] R3.2 应用层面安全设计与代码审计方法研究
239
+ - [ ] R3.3 智能合约安全审计与形式化验证方法研究
240
+ - [ ] **R4. 隐私保护技术研究**
241
+ - [ ] R4.1 ZKP (零知识证明) 在账户抽象和 SDSS 中的应用研究
242
+ - [ ] R4.2 匿名地址与隐私交易方案研究
243
+ - [ ] **R5. SDSS V0.1 性能评估**
244
+ - [ ] R5.1 SDSS V0.1 效率、吞吐量、延迟等性能指标测试与分析
245
+ - [ ] **R6. SDSS V0.2 (P2P) 演进研究**
246
+ - [ ] R6.1 SDSS 引入 P2P 网络后的架构变化、性能影响、去中心化程度分析
247
+
248
+ ---
249
+
250
+ **使用建议:**
251
+
252
+ 1. **优先级排序**: 你的任务列表非常庞大。强烈建议根据 MVP (最小可行产品) 原则,对这些任务进行优先级排序。哪些是核心功能,哪些是后续迭代?
253
+ 2. **分配负责人和时间**: 将每个 `- [ ]` 任务分配给具体的负责人,并估算完成时间。
254
+ 3. **工具**: 使用专业的项目管理工具 (如 Jira, Trello, Asana, Notion, ClickUp 等) 来跟踪这些任务、依赖关系和进度。这个 Markdown 表格可以作为初始导入或高级概览。
255
+ 4. **迭代**: 将开发过程划分为多个 Sprint 或迭代,每个迭代有明确的目标。
256
+ 5. **定期同步**: 团队内部需要定期开会同步进度、讨论问题和调整计划。
257
+
258
+ 这个计划表非常宏大,预祝你的项目顺利推进!
259
+
260
+ 分析和思考:
261
+ 当务之急是MVP,因此
262
+ 1. 低优先级:SDSS是去中心化的,可以独立和分离,因此降低优先级,先中心化,再去中心,迁移难度不大
263
+ 2. 低优先级:相对独立的Superpaymaster,Gasless是独立的,可选的,因此中等优先级,完成基础的对接和基础的gasless即可
264
+ 3. 最高优先级:账户是串联所有的基础,目前核心是二次签名验证+整体集成(relay等),非SDK(后面再整合为sdk)
265
+ 4. 考虑demo也是高优先级,因此需要页面和服务器配合,先有页面js版本,再集成到cos72
266
+ 5. 所以计划的第二个版本,只设计高优先级(两个)和中等优先级(1个),请按这个思路筛选,不必那么严苛任务数量
@@ -0,0 +1,70 @@
1
+ # 回归测试脚本使用说明
2
+
3
+ ## 仅使用两个回归脚本
4
+
5
+ ### 1. `run_full_regression.sh` - 完整回归测试
6
+
7
+ **用途**: Anvil本地完整测试套件
8
+
9
+ **包含内容**:
10
+ - Anvil启动与清理
11
+ - 合约部署(DeployV3FullLocal.s.sol)
12
+ - 配置同步
13
+ - 24个测试脚本:
14
+ - ✅ V2回归测试 (6个): 00-05
15
+ - ✅ V3核心测试 (6个): 06-11
16
+ - ✅ 高级功能测试 (12个): 12-23, 98-99
17
+
18
+ **运行方式**:
19
+ ```bash
20
+ # Anvil模式(默认)
21
+ ./run_full_regression.sh
22
+
23
+ # Sepolia模式(跳过部署)
24
+ ./run_full_regression.sh --env sepolia
25
+ ```
26
+
27
+ ---
28
+
29
+ ### 2. `run_sdk_regression.sh` - SDK独立测试
30
+
31
+ **用途**: SDK API层面的独立功能测试
32
+
33
+ **包含内容**:
34
+ - BLS签名测试
35
+ - Middleware测试
36
+ - 不依赖Anvil的纯SDK功能
37
+
38
+ **运行方式**:
39
+ ```bash
40
+ ./run_sdk_regression.sh
41
+ ```
42
+
43
+ ---
44
+
45
+ ## ⚠️ 已删除脚本
46
+
47
+ - ❌ `scripts/run_regression.sh` (冗余,已合并到run_full_regression.sh)
48
+
49
+ ---
50
+
51
+ ## 快速使用指南
52
+
53
+ ### 本地开发验证
54
+ ```bash
55
+ ./run_full_regression.sh
56
+ ```
57
+
58
+ ### Sepolia测试网验证
59
+ ```bash
60
+ ./run_full_regression.sh --env sepolia
61
+ ```
62
+
63
+ ### SDK功能测试
64
+ ```bash
65
+ ./run_sdk_regression.sh
66
+ ```
67
+
68
+ ---
69
+
70
+ **结论**: 只需要这两个脚本即可完成所有回归测试! ✅