Skip to content

feat(statics): add testToken (SOL) to BitGoJS statics#9326

Draft
bitgo-ai-agent-dev[bot] wants to merge 1 commit into
masterfrom
feat/SCAAS-10508-sdk-token-add
Draft

feat(statics): add testToken (SOL) to BitGoJS statics#9326
bitgo-ai-agent-dev[bot] wants to merge 1 commit into
masterfrom
feat/SCAAS-10508-sdk-token-add

Conversation

@bitgo-ai-agent-dev

Copy link
Copy Markdown

What

  • Add tsol:testtoken and sol:testtoken entries to the UnderlyingAsset enum in modules/statics/src/base.ts
  • Add tsolToken() entry for the on-chain SPL token in modules/statics/src/coins/solTokens.ts (UUID fcb25a47, mint So111...112, 9 decimals, standard Token Program)
  • Add ofcsolToken() entry for the OFC coin in modules/statics/src/coins/ofcCoins.ts (UUID 4b17b883, name ofc:sol:testtoken, 9 decimals)

Why

  • Required to onboard testToken (SOL) across the BitGo ecosystem as part of the token onboarding workflow validation (SCAAS-10507). This is a dry-run/test token used to validate the Linear ticket execution route; the contract address is the well-known Wrapped SOL mint reused as a placeholder — not a real deployment.

Decision log

  1. sol:testtoken added alongside tsol:testtoken: The OFC factory ofcsolToken() references an UnderlyingAsset['sol:...'] key (mainnet-style), matching the pattern of ofcsol:bilssol:bils and ofcsol:tshvontestingsol:tshvontesting. Since this test-only token had no mainnet entry, sol:testtoken was added per ticket instructions (step 3 note).

  2. ofcsolToken used (not tofcsolToken): The ticket explicitly prescribes ofcsolToken with name ofc:sol:testtoken. While some existing test OFC SOL tokens use tofcsolToken with ofctsol: prefix (e.g. ttkb), there is also a precedent for ofcsolToken with test/staging tokens that live on the SOL mainnet chain config (e.g. ofcsol:tshvontesting). Followed the ticket's explicit instruction.

  3. OFC name ofc:sol:testtoken vs conventional ofcsol:testtoken: The ticket explicitly prescribes ofc:sol:testtoken. This deviates from the ofcsol: prefix convention used by other entries. Followed the ticket as-written since this is a dry-run; flagging in open questions below.

Test plan

  • TypeScript compilation passes (npx tsc --noEmit) with no errors
  • Only three files modified: base.ts, solTokens.ts, ofcCoins.ts
  • Only additions — no existing entries modified or removed

Open questions

  1. OFC name format: The ticket prescribes ofc:sol:testtoken but the existing convention for ofcsolToken() entries uses ofcsol:<token> (e.g. ofcsol:bils). Should this use ofcsol:testtoken instead? The name.replace(/^ofc/, '') suffix derivation in ofc.ts:394 would produce :SOL:TESTTOKEN with a leading colon for the prescribed name. This appears to be a ticket authoring issue — please confirm the intended name before merging.

Ticket: SCAAS-10508

Add testToken as a test-only SOL token to @bitgo/statics, including
the UnderlyingAsset enum entries, on-chain SPL token factory, and
OFC factory.

Changes:
- modules/statics/src/base.ts: add `tsol:testtoken` (test on-chain)
  and `sol:testtoken` (mainnet-style key for OFC reference) to the
  UnderlyingAsset enum
- modules/statics/src/coins/solTokens.ts: add tsolToken entry with
  UUID fcb25a47, mint So111...(Wrapped SOL placeholder), 9 decimals
- modules/statics/src/coins/ofcCoins.ts: add ofcsolToken entry with
  UUID 4b17b883, name ofc:sol:testtoken, 9 decimals

This is a dry-run/test token to validate the Linear ticket workflow.
The contract address is the well-known Wrapped SOL mint reused as a
placeholder — not a real deployment.

Ticket: SCAAS-10508
Session-Id: 1f2f5086-425e-4b36-98e8-d4f6db085910
Task-Id: 02c1b714-0b9e-4965-9550-a1054a116828
@linear-code

linear-code Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

SCAAS-10508

@bitgo-ai-agent-dev

Copy link
Copy Markdown
Author

@claude please review this PR

@bitgo-ai-agent-dev
bitgo-ai-agent-dev Bot force-pushed the feat/SCAAS-10508-sdk-token-add branch from 52322ae to 81fdd32 Compare July 22, 2026 11:53
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