Description
The Stellar-address regex /^G[A-Z2-7]{55}$/ is now independently defined in three places: src/utils/validate.ts (as STELLAR_ADDRESS_RE, dead code per a companion issue), src/utils/validation.ts (also as STELLAR_ADDRESS_RE, the one actually used internally), and src/schemas.ts (also as a module-local STELLAR_ADDRESS_RE, backing StellarAddressSchema, alongside its own separately-defined CONTRACT_ID_RE). All three copies happen to be byte-identical today, but nothing enforces that — a future change to the address format (e.g. supporting muxed M... accounts) would need to be applied in three unrelated files to stay consistent, and it's easy to miss one.
Component
SDK
Difficulty
🟢 Easy
Tasks
Acceptance Criteria
Estimated Time
<1 day
Description
The Stellar-address regex
/^G[A-Z2-7]{55}$/is now independently defined in three places:src/utils/validate.ts(asSTELLAR_ADDRESS_RE, dead code per a companion issue),src/utils/validation.ts(also asSTELLAR_ADDRESS_RE, the one actually used internally), andsrc/schemas.ts(also as a module-localSTELLAR_ADDRESS_RE, backingStellarAddressSchema, alongside its own separately-definedCONTRACT_ID_RE). All three copies happen to be byte-identical today, but nothing enforces that — a future change to the address format (e.g. supporting muxedM...accounts) would need to be applied in three unrelated files to stay consistent, and it's easy to miss one.Component
SDK
Difficulty
🟢 Easy
Tasks
STELLAR_ADDRESS_RE/CONTRACT_ID_REfrom a single module (likelyutils/validation.ts, onceutils/validate.tsis removed per the companion issue)src/schemas.tsinstead of redefining itStellarAddressSchemaandisValidStellarAddressagree on the same inputsAcceptance Criteria
Estimated Time
<1 day