* feat: Add Enclave Usage Examples
* feat(es/ucan): Add comprehensive integration tests
- Create integration.test.ts with full UCAN token lifecycle testing
- Cover end-to-end token creation, parsing, and validation
- Test capability attenuation and delegation chains
- Validate multi-algorithm support and timestamp scenarios
- Implement error recovery and performance test scenarios
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
* No commit suggestions generated
* No commit suggestions generated
* chore: Remove migrated components and add migration documentation
Removed all code and references for components that have been moved to separate repositories:
**Moved to sonr-io/hway:**
- bridge/ - HTTP service with OAuth2/OIDC/WebAuthn handlers
- cmd/hway/ - Highway service binary
- internal/migrations/ - PostgreSQL schema migrations
**Moved to sonr-io/motr:**
- cmd/motr/ - Motor worker service (WASM vault operations)
- cmd/vault/ - Vault CLI tool
- crypto/ - Comprehensive cryptographic library
- packages/ - TypeScript SDK packages (es, sdk, ui, com, pkl)
- web/auth/ - Authentication web application
- web/dash/ - Dashboard web application
**Updated Configuration:**
- Makefile: Removed build/test/release targets for moved components
- CLAUDE.md: Simplified to focus on core blockchain components
- devbox.json: Removed scripts for moved services
- docker-compose.yml: Removed hway, postgres, redis, auth, dash services
- .github/scopes.yml: Removed CI scopes for migrated components
- .goreleaser.yml: Updated release configuration
**Added Migration Documentation:**
- MIGRATE_HWAY.md: Comprehensive Highway service architecture and migration guide
- MIGRATE_MOTR.md: Comprehensive Motor/Worker/Vault architecture and migration guide
These migration documents provide complete context for setting up the new repositories including architecture diagrams, component breakdowns, API documentation, and migration checklists.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* No commit suggestions generated
* chore: Remove contracts references and documentation
Removed all references to the contracts directory that was migrated to a separate repository.
**Changes:**
- .gitignore: Removed contract-specific ignore patterns for DAO and wSNR contracts
- .gitignore: Removed hway and motr binary references (already migrated)
- .rgignore: Removed contracts, chains, and crypto directory references
- docs/reference/contracts/: Removed DAO.mdx and wSNR.mdx documentation files
This completes the cleanup of migrated components from the repository.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* docs: add crypto library migration documentation
Added comprehensive migration documentation for the crypto library that was
moved to sonr-io/crypto repository. This documentation provides complete context
for understanding the cryptographic primitives and protocols used throughout
the Sonr ecosystem.
## Key Documentation Added
### MIGRATE_CRYPTO.md
Complete documentation of the crypto library covering:
**Core Cryptographic Primitives**
- Elliptic curve implementations (Ed25519, Secp256k1, P-256, BLS12-381, Pallas/Vesta)
- Native curve arithmetic with optimized field operations
- Pairing-friendly curves for BLS signatures
**Multi-Party Computation (MPC)**
- MPC enclave for vault key generation and management
- Threshold cryptography (TECDSA, TED25519 with FROST protocol)
- Distributed Key Generation (DKG) via Gennaro and FROST protocols
- Secret sharing schemes (Shamir, Feldman VSS, Pedersen VSS)
**Digital Signature Schemes**
- BLS signatures with aggregation support
- BBS+ signatures for selective disclosure
- Schnorr signatures (standard and Mina/NEM variants)
- ECDSA with deterministic nonce generation
**Zero-Knowledge Proofs**
- Bulletproofs for range proofs
- Inner Product Arguments (IPA)
- Batch verification support
**Advanced Cryptographic Protocols**
- Cryptographic accumulators for set membership proofs
- Paillier homomorphic encryption
- Oblivious Transfer (OT) protocols
- Verifiable Random Functions (VRF)
**Key Management & Identity**
- DID key management with multi-chain support
- Multi-algorithm public key handling
- Wallet address derivation (Bitcoin, Ethereum, Cosmos, Solana, etc.)
**UCAN Integration**
- User-Controlled Authorization Networks
- Capability delegation and attenuation
- JWT-based capability tokens
- MPC-enabled UCAN signing
**Security Utilities**
- AEAD encryption (AES-GCM, AES-SIV)
- Argon2 key derivation
- ECIES encryption
- Secure memory handling
### MIGRATE_MOTR.md Updates
Updated Motor migration documentation to clarify that the crypto library
is now a separate external dependency at github.com/sonr-io/crypto v1.0.1
## Repository Context
The crypto library has been successfully migrated to its own repository
and is published as a Go module. It serves as the foundational cryptographic
layer for:
- Sonr blockchain (snrd) - DID signatures, vault operations
- Highway service (hway) - UCAN token signing, WebAuthn
- Motor/Worker (motr) - MPC vault operations, threshold signatures
## Integration Impact
All Sonr ecosystem components now depend on the external crypto library:
```go
require github.com/sonr-io/crypto v1.0.1
```
The migration enables independent versioning and maintenance of cryptographic
primitives while maintaining security and compatibility across the ecosystem.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* No commit suggestions generated
* No commit suggestions generated
* No commit suggestions generated
---------
Co-authored-by: Claude <noreply@anthropic.com>
* refactor: rename project from onsonr/sonr to sonr-io/snrd (#1249)
* refactor: rename project from onsonr/sonr to sonr-io/snrd
* refactor: update package paths to use sonr-io org
---------
Co-authored-by: Prad N <prad@didao.xyz>
* feat: introduce devbox for consistent development environment
* feat: integrate Doppler for secrets management
* feat: streamline release process with Devbox
* <no value>
* bump: version 0.6.3 → 0.6.4
* feat: enable commit-less version bumping
* bump: version 0.6.4 → 0.6.5
* feat: streamline release process and update project metadata
* feat: streamline build process and configuration
* feat: streamline build process by removing release target
* bump: version 0.6.5 → 0.6.6
* feat: upgrade to go 1.24 and align binary name
* bump: version 0.6.6 → 0.6.7
* feat: streamline release process and update project metadata
* bump: version 0.6.3 → 0.6.4
* feat: streamline development and release processes
* feat: streamline development and release processes
* refactor: streamline release process with Taskfile
* feat: enhance goreleaser output with title for better UX
* feat: consolidate release notes
* bump: version 0.6.3 → 0.6.4
* feat: streamline release process with improved automation
* feat: streamline development and release workflow
* bump: version 0.6.3 → 0.6.4
* feat: streamline release process with Taskfile and conventional commits
* bump: version 0.6.4 → 0.6.5
* feat: enhance Docker image publishing with piped credentials
* chore: remove outdated changelog entries
* bump: version 0.6.3 → 0.6.4
* feat: improve release process with interactive feedback
* feat: enhance release process with real-time version feedback
* bump: version 0.6.4 → 0.6.5
* feat: enhance release process with dynamic version display and streamlined automation
* bump: version 0.6.3 → 0.6.4
* refactor: streamline release process by removing redundant version display
* bump: version 0.6.4 → 0.6.5
* refactor: streamline release process and simplify dev environment
* bump: version 0.6.3 → 0.6.4
* ci: simplify PR checks by removing redundant release validation
* refactor: consolidate release workflows for improved maintainability
* ci: enhance release workflow for automated version publishing
---------
Co-authored-by: Prad N <prad@didao.xyz>
- **refactor: refactor DID module types and move to controller package**
- **refactor: move controller creation and resolution logic to keeper**
- **refactor: update imports to reflect controller package move**
- **refactor: update protobuf definitions for DID module**
- **docs: update proto README to reflect changes**
- **refactor: move hway to gateway, update node modules, and refactor
pkl generation**
- **build: update pkl-gen task to use new pkl file paths**
- **refactor: refactor DWN WASM build and deployment process**
- **refactor: refactor DID controller implementation to use
account-based storage**
- **refactor: move DID controller interface to base file and update
implementation**
- **chore: migrate to google protobuf**
- **feat: Add v0.52.0 Interfaces for Acc Abstraction**
- **refactor: replace public_key with public_key_hex in Assertion
message**
- **refactor: remove unused PubKey, JSONWebKey, and RawKey message types
and related code**
- **docs: remove discord badge from README**
- **fix: ensure go version is up-to-date**
- **<no value>**
- **refactor: update import paths for blocks to components**
- **feat: add Hero component template**
- **fix: update footer logo to svg**
- **feat: add Query/Sign and Query/Verify RPC methods**
- **refactor: rename Keyshares to KsVal in did/v1/state.proto**
* refactor: move database, navigator scripts to state package
* feat: add Schema config for dwn
* test: add unit tests for InitializeDatabase
* feat: use templated index.html for the DWN frontend
* feat: introduce templ generation for templ
* chore(deps): update devbox.json to use latest packages
* chore: update devbox to use bun
* feat: introduce dwn config generation
* feat: add motr.mjs for vault management
* refactor: move front end from to (alert)
* feat: implement devbox integration and devbox-based process management
* feat: embed motr.mjs script for offline demo
* refactor: embed motr.mjs data in embed.go
* chore: update workflows to use actions/checkout@v4
* refactor: move process-compose.yaml to deploy directory
* refactor: remove unnecessary JSON conversion
* feat: add new supported attestation formats to genesis
* feat: refactor keyType to keytype enum
* refactor: remove unused imports and code
* refactor: update main.go to use src package
* refactor: move web-related structs from to
* refactor: move client middleware package to root
* refactor: remove unused IndexedDB dependency
* feat: update worker implementation to use
* feat: add Caddyfile and Caddy configuration for vault service
* refactor(config): move keyshare and address to Motr config
* fix: validate service origin in AllocateVault
* chore: remove IndexedDB configuration
* feat: add support for IPNS-based vault access
* refactor: update model proto
* feat: add status field to Controller
* feat: add Verification.Kind field to state protobuf to support different verification types
* fix: remove QueryService and QueryResolve RPCs from query.proto
* feat(did): remove account types
* feat: Refactor Property to Proof in zkprop.go
* feat: add ZKP proof mechanism for verifications
* fix: return bool and error from pinInitialVault
* feat: implement KeyshareSet for managing user and validator keyshares
* feat: Update Credential type in protobuf
* feat: update credential schema with sign count
* feat: migrate and modules to middleware
* refactor: rename vault module to ORM
* chore(dwn): add service worker registration to index template
* feat: integrate service worker for offline functionality
* refactor(did): use DIDNamespace enum for verification method in proto reflection
* refactor: update protobuf definitions to support Keyshare
* feat: expose did keeper in app keepers
* Add Motr Web App
* refactor: rename motr/handlers/discovery.go to motr/handlers/openid.go
* refactor: move session related code to middleware
* feat: add database operations for managing assets, chains, and credentials
* feat: add htmx support for UI updates
* refactor: extract common helper scripts
* chore: remove unused storage GUI components
* refactor: Move frontend rendering to dedicated handlers
* refactor: rename to
* refactor: move alert implementation to templ
* feat: add alert component with icon, title, and message
* feat: add new RequestHeaders struct to store request headers
* Feature/create home view (#9)
* refactor: move view logic to new htmx handler
* refactor: remove unnecessary dependencies
* refactor: remove unused dependencies
* feat(devbox): integrate air for local development
* feat: implement openid connect discovery document
* refactor: rename to
* refactor(did): update service handling to support DNS discovery
* feat: add support for user and validator keyshares
* refactor: move keyshare signing logic to signer
* refactor: move constants to genesis.proto
* feat: add ipfs_active flag to genesis state
* feat: add IPFS connection initialization to keeper
* feat: add testnet process-compose
* refactor: rename sonr-testnet docker image to sonr-runner
* refactor: update docker-vm-release workflow to use 'latest' tag
* feat: add permission to workflows
* feat: add new service chain execution
* feat: add abstract vault class to pkl
* feat: use jetpackio/devbox image for runner
* feat: introduce dwn for local service worker
* refactor: remove unnecessary dockerfile layers
* refactor(deploy): Update Dockerfile to copy go.mod and go.sum from the parent directory
* build: move Dockerfile to root directory
* build: Add Dockerfile for deployment
* feat: Update Dockerfile to work with Go project in parent directory
* build: Update docker-compose.yaml to use relative paths
* feat: Update docker-compose to work with new image and parent git directory
* refactor: remove unnecessary test script
* <no value>
* feat: add test_node script for running node tests
* feat: add IPFS cluster to testnet
* feat: add docker image for sonr-runner
* fix: typo in export path
* feat(did): Add Localhost Registration Enabled Genesis Option
* feat: add support for Sqlite DB in vault
* feat: improve vault model JSON serialization
* feat: support querying HTMX endpoint for DID
* feat: Add primary key, unique, default, not null, auto increment, and foreign key field types
* feat: Add PublicKey model in pkl/vault.pkl
* feat: add frontend server
* refactor: move dwn.wasm to vfs directory
* feat(frontend): remove frontend server implementation
* feat: Add a frontend server and web auth protocol
* feat: implement new key types for MPC and ZK proofs
* fix: Update enum types and DefaultKeyInfos
* fix: correct typo in KeyAlgorithm enum
* feat(did): add attestation format validation
* feat: Add x/did/builder/extractor.go
* feat: Update JWK parsing in x/did/builder/extractor.go
* feat: Use github.com/onsonr/sonr/x/did/types package
* feat: Extract and format public keys from WebAuthn credentials
* feat: Introduce a new `mapToJWK` function to convert a map to a `types.JWK` struct
* feat: add support for extracting JWK public keys
* feat: remove VerificationMethod struct
* refactor: extract public key extraction logic
* feat: add helper functions to map COSECurveID to JWK curve names
* feat: pin initial vault
* feat: add enums.pulsar.go file for PermissionScope enum
* refactor: remove PERMISSION_SCOPE_IDENTIFIERS_ENS enum value
* feat: Add MsgRegisterService to handle service registration
The commit message for these changes would be:
feat: Add MsgRegisterService to handle service registration
This commit adds a new message type `MsgRegisterService` to the DID module's transaction proto file. This message allows users to register a new service with a given permission scope and origin URI. The domain must have a valid TXT record containing the public key.
The changes include:
- Adding the `MsgRegisterService` message type with fields for authority, origin URI, and scopes
- Adding the `MsgRegisterServiceResponse` message type to handle the response
- Updating the Msg service to include a new `RegisterService` RPC method
- Implementing the `RegisterService` method in the keeper
This feature allows users to register new services on the DID chain, which is an important part of the overall DID functionality.
* (no commit message provided)
* fix: Add ProveWitness and SyncVault RPCs
The commit message should be:
feat: Add ProveWitness and SyncVault RPCs
This change adds two new RPCs to the DID module:
1. ProveWitness: An operation to prove the controller has a valid property using ZK Accumulators.
2. SyncVault: Synchronizes the controller with the Vault Motr DWN WASM Wallet.
These new RPCs allow for more advanced DID management functionality.
* fix: Remove unused `Meta` message from `genesis.proto`
* refactor: Simplify the types and properties to keep a consistent structure for the blockchain
* (no commit message provided)
* {}
* feat: add Equal methods for AssetInfo and ChainInfo types
The commit message should be:
feat: Add ProveWitness and SyncVault RPCs
This change adds two new RPCs to the DID module:
1. ProveWitness: An operation to prove the controller has a valid property using ZK Accumulators.
2. SyncVault: Synchronizes the controller with the Vault Motr DWN WASM Wallet.
These new RPCs allow for more advanced DID management functionality.
The commit message for these changes would be:
feat: Add MsgRegisterService to handle service registration
This commit adds a new message type `MsgRegisterService` to the DID module's transaction proto file. This message allows users to register a new service with a given permission scope and origin URI. The domain must have a valid TXT record containing the public key.
The changes include:
- Adding the `MsgRegisterService` message type with fields for authority, origin URI, and scopes
- Adding the `MsgRegisterServiceResponse` message type to handle the response
- Updating the Msg service to include a new `RegisterService` RPC method
- Implementing the `RegisterService` method in the keeper
This feature allows users to register new services on the DID chain, which is an important part of the overall DID functionality.