Skip to content

fund usdc crypto: command-name semantic mismatch with network defaultToken #97

Description

@xc93

Problem

After the explicit default-token PR (CLI follow-up to PR #87), fast fund usdc crypto <amount> --chain <X> on mainnet defaults --token to network.defaultToken.symbol — which is fastUSD. But fastUSD is Fast-native; it has no EVM-side entry. So fund usdc crypto on mainnet without --token errors with CommandUnsupportedForTokenError and a suggestion to pass --token USDC.

The command name fund usdc crypto literally says "usdc," but the user must still type --token USDC to make it work. That's friction the suggestion text papers over rather than removing.

Options

(a) Command-local default override. fund usdc crypto defaults --token to USDC regardless of network.defaultToken. The command name's "usdc" becomes load-bearing in code, not just in the human-readable label.

(b) Make --token required at parser level for fund usdc crypto. The error fires earlier (parse-time, not handler-time) with a clean "you must pass --token" message. The default goes away entirely for this command.

(c) Rename the command to fund crypto and decouple the name from the asset. Bigger UX change; touches the parser tree and the docs / SKILL.md prominently.

Each has tradeoffs around discoverability, predictability, and surface area. Worth a brief design discussion before picking one.

Context

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions