Skip to content

feat: add sda module type and template#14

Draft
AlonzoRicardo wants to merge 3 commits into
mainfrom
feat/sda-protocol
Draft

feat: add sda module type and template#14
AlonzoRicardo wants to merge 3 commits into
mainfrom
feat/sda-protocol

Conversation

@AlonzoRicardo

@AlonzoRicardo AlonzoRicardo commented Jun 24, 2026

Copy link
Copy Markdown

Summary

Adds CLI scaffolding for wdk-protocol-sda-* modules. Part 3 of 3.

What's in it

  • New sda module type: interactive prompt choice, [type] argument help, and validateModuleType.
  • Package name wdk-protocol-sda-<provider> and a matching description.
  • templates/sda/ — protocol skeleton extending SdaProtocol (a getCapabilities() descriptor + stubs for every interface method), README, package.json, bare runtime, tests, and types.

Validation

create-wdk-module sda <provider> scaffolds a module that lints and build:types-compiles against the SdaProtocol interface, and the full CLI test suite passes. The template was used to scaffold the three reference providers (Rhino, Orchestra/Flashnet, Relay) used to validate the interface.

Notes

  • Targets the SdaProtocol interface in tetherto/wdk-wallet.
  • Draft pending the wdk-wallet interface PR and the P002 spec.

Related PRs

This is one of a 3-PR set:


Add scaffolding support for `wdk-protocol-sda-*` modules via the CLI.

- New `sda` choice in the interactive prompts, the `[type]` argument
  help, and module-type validation.
- Package name `wdk-protocol-sda-<provider>` and a matching description.
- `templates/sda/`: protocol skeleton extending `SdaProtocol` (with a
  capability descriptor and stubs for every interface method), README,
  package.json, bare runtime, tests and types.

Part 3 of 3. Targets the `SdaProtocol` interface in tetherto/wdk-wallet.
Add custodyModel / clientDerivableAddress / historyByRecipient to the
getCapabilities() skeleton, a getTransfersByRecipient stub, and the
SdaCustodyModel type re-export, keeping scaffolded modules in step with
the updated SdaProtocol interface.
Add `activation` to the getCapabilities() skeleton, `deriveDepositAddress`
and `renewDepositAddress` stubs, and the SdaActivationModel type re-export.
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