mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-02 17:31:39 +00:00
* 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>
330 lines
8.3 KiB
YAML
330 lines
8.3 KiB
YAML
# yaml-language-server: $schema=https://goreleaser.com/static/schema-pro.json
|
|
---
|
|
version: 2
|
|
dist: dist/snrd
|
|
|
|
project_name: snrd
|
|
|
|
before:
|
|
hooks:
|
|
- go mod download
|
|
|
|
builds:
|
|
# Darwin AMD64 Build
|
|
- id: snrd-darwin-amd64
|
|
main: ./cmd/snrd
|
|
binary: snrd
|
|
mod_timestamp: "{{ .CommitTimestamp }}"
|
|
env:
|
|
- CGO_ENABLED=1
|
|
- CC=o64-clang
|
|
- CXX=o64-clang++
|
|
- CGO_LDFLAGS=-lm
|
|
goos:
|
|
- darwin
|
|
goarch:
|
|
- amd64
|
|
flags:
|
|
- -mod=readonly
|
|
- -trimpath
|
|
ldflags:
|
|
- -X github.com/cosmos/cosmos-sdk/version.Name=sonr
|
|
- -X github.com/cosmos/cosmos-sdk/version.AppName=snrd
|
|
- -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}}
|
|
- -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
|
|
- -X "github.com/cosmos/cosmos-sdk/version.BuildTags=netgo,ledger"
|
|
- -s -w
|
|
tags:
|
|
- netgo
|
|
- ledger
|
|
|
|
# Darwin ARM64 Build
|
|
- id: snrd-darwin-arm64
|
|
main: ./cmd/snrd
|
|
binary: snrd
|
|
mod_timestamp: "{{ .CommitTimestamp }}"
|
|
env:
|
|
- CGO_ENABLED=1
|
|
- CC=oa64-clang
|
|
- CXX=oa64-clang++
|
|
- CGO_LDFLAGS=-lm
|
|
goos:
|
|
- darwin
|
|
goarch:
|
|
- arm64
|
|
flags:
|
|
- -mod=readonly
|
|
- -trimpath
|
|
ldflags:
|
|
- -X github.com/cosmos/cosmos-sdk/version.Name=sonr
|
|
- -X github.com/cosmos/cosmos-sdk/version.AppName=snrd
|
|
- -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}}
|
|
- -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
|
|
- -X "github.com/cosmos/cosmos-sdk/version.BuildTags=netgo,ledger"
|
|
- -s -w
|
|
tags:
|
|
- netgo
|
|
- ledger
|
|
|
|
# Linux AMD64 Build
|
|
- id: snrd-linux-amd64
|
|
main: ./cmd/snrd
|
|
binary: snrd
|
|
mod_timestamp: "{{ .CommitTimestamp }}"
|
|
env:
|
|
- CGO_ENABLED=1
|
|
- CC=x86_64-linux-gnu-gcc
|
|
- CXX=x86_64-linux-gnu-g++
|
|
- CGO_LDFLAGS=-lm
|
|
goos:
|
|
- linux
|
|
goarch:
|
|
- amd64
|
|
goamd64:
|
|
- v1
|
|
flags:
|
|
- -mod=readonly
|
|
- -trimpath
|
|
ldflags:
|
|
- -X github.com/cosmos/cosmos-sdk/version.Name=sonr
|
|
- -X github.com/cosmos/cosmos-sdk/version.AppName=snrd
|
|
- -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}}
|
|
- -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
|
|
- -X "github.com/cosmos/cosmos-sdk/version.BuildTags=netgo,ledger"
|
|
- -s -w
|
|
tags:
|
|
- netgo
|
|
- ledger
|
|
|
|
# Linux ARM64 Build
|
|
- id: snrd-linux-arm64
|
|
main: ./cmd/snrd
|
|
binary: snrd
|
|
mod_timestamp: "{{ .CommitTimestamp }}"
|
|
env:
|
|
- CGO_ENABLED=1
|
|
- CC=aarch64-linux-gnu-gcc
|
|
- CXX=aarch64-linux-gnu-g++
|
|
- CGO_LDFLAGS=-lm
|
|
goos:
|
|
- linux
|
|
goarch:
|
|
- arm64
|
|
flags:
|
|
- -mod=readonly
|
|
- -trimpath
|
|
ldflags:
|
|
- -X github.com/cosmos/cosmos-sdk/version.Name=sonr
|
|
- -X github.com/cosmos/cosmos-sdk/version.AppName=snrd
|
|
- -X github.com/cosmos/cosmos-sdk/version.Version={{.Version}}
|
|
- -X github.com/cosmos/cosmos-sdk/version.Commit={{.Commit}}
|
|
- -X "github.com/cosmos/cosmos-sdk/version.BuildTags=netgo,ledger"
|
|
- -s -w
|
|
tags:
|
|
- netgo
|
|
- ledger
|
|
|
|
aur_sources:
|
|
- name: snrd
|
|
disable: true
|
|
homepage: "https://sonr.io"
|
|
description: "Sonr blockchain daemon - decentralized identity and data storage network"
|
|
maintainers:
|
|
- "Sonr <support@sonr.io>"
|
|
license: "GPL-3.0"
|
|
private_key: "{{ .Env.AUR_KEY }}"
|
|
git_url: "ssh://[email protected]/snrd.git"
|
|
skip_upload: auto
|
|
provides:
|
|
- snrd
|
|
conflicts:
|
|
- snrd-bin
|
|
depends:
|
|
- glibc
|
|
makedepends:
|
|
- go
|
|
- git
|
|
- make
|
|
commit_msg_template: "Update to {{ .Tag }}"
|
|
commit_author:
|
|
name: goreleaserbot
|
|
email: "prad@sonr.io"
|
|
prepare: |-
|
|
cd "${pkgname}_${pkgver}"
|
|
go mod download
|
|
build: |-
|
|
cd "${pkgname}_${pkgver}"
|
|
export CGO_ENABLED=1
|
|
export CGO_CPPFLAGS="${CPPFLAGS}"
|
|
export CGO_CFLAGS="${CFLAGS}"
|
|
export CGO_CXXFLAGS="${CXXFLAGS}"
|
|
export CGO_LDFLAGS="${LDFLAGS}"
|
|
export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
|
|
go build \
|
|
-ldflags="-w -s -buildid='' -linkmode=external \
|
|
-X github.com/cosmos/cosmos-sdk/version.Name=sonr \
|
|
-X github.com/cosmos/cosmos-sdk/version.AppName=snrd \
|
|
-X github.com/cosmos/cosmos-sdk/version.Version=${pkgver} \
|
|
-X 'github.com/cosmos/cosmos-sdk/version.BuildTags=netgo,ledger'" \
|
|
-tags "netgo,ledger" \
|
|
-o snrd ./cmd/snrd
|
|
chmod +x ./snrd
|
|
package: |-
|
|
cd "${pkgname}_${pkgver}"
|
|
|
|
# bin
|
|
install -Dm755 "./snrd" "${pkgdir}/usr/bin/snrd"
|
|
|
|
# license
|
|
if [ -f "./LICENSE" ]; then
|
|
install -Dm644 "./LICENSE" "${pkgdir}/usr/share/licenses/snrd/LICENSE"
|
|
fi
|
|
|
|
# readme
|
|
if [ -f "./README.md" ]; then
|
|
install -Dm644 "./README.md" "${pkgdir}/usr/share/doc/snrd/README.md"
|
|
fi
|
|
|
|
# config directory
|
|
install -dm755 "${pkgdir}/etc/snrd"
|
|
install -dm755 "${pkgdir}/var/lib/snrd"
|
|
backup:
|
|
- /etc/snrd/config.toml
|
|
- /etc/snrd/app.toml
|
|
|
|
nix:
|
|
- name: snrd
|
|
ids:
|
|
- snrd
|
|
homepage: "https://sonr.io"
|
|
description: "Sonr blockchain daemon - decentralized identity network"
|
|
license: "gpl3"
|
|
path: pkgs/snrd/default.nix
|
|
commit_msg_template: "snrd: {{ .Tag }}"
|
|
dependencies:
|
|
- stdenv
|
|
- glibc
|
|
extra_install: |-
|
|
wrapProgram $out/bin/snrd --prefix PATH : ${lib.makeBinPath [ glibc stdenv.cc.cc.lib ]}
|
|
repository:
|
|
owner: sonr-io
|
|
name: nur
|
|
branch: main
|
|
token: "{{ .Env.GITHUB_TOKEN }}"
|
|
|
|
archives:
|
|
- id: snrd
|
|
ids:
|
|
- snrd-linux-amd64
|
|
- snrd-linux-arm64
|
|
- snrd-darwin-amd64
|
|
- snrd-darwin-arm64
|
|
name_template: >-
|
|
snrd_{{ .Os }}_{{- if eq .Arch "amd64" }}x86_64 {{- else if eq .Arch "386" }}i386 {{- else }}{{ .Arch }}{{ end }}
|
|
formats: ["tar.gz"]
|
|
files:
|
|
- src: README*
|
|
wrap_in_directory: false
|
|
|
|
homebrew_casks:
|
|
- name: snrd
|
|
ids:
|
|
- snrd
|
|
homepage: "https://sonr.io"
|
|
description: "Sonr blockchain daemon - decentralized identity and data storage network"
|
|
commit_msg_template: "Brew cask update for {{ .ProjectName }} version {{ .Tag }}"
|
|
directory: Casks
|
|
repository:
|
|
owner: sonr-io
|
|
name: homebrew-tap
|
|
branch: main
|
|
token: "{{ .Env.GITHUB_TOKEN }}"
|
|
commit_author:
|
|
name: goreleaserbot
|
|
email: "prad@sonr.io"
|
|
hooks:
|
|
post:
|
|
install: |
|
|
if OS.mac?
|
|
system_command "/usr/bin/xattr", args: ["-dr", "com.apple.quarantine", "#{staged_path}/snrd"]
|
|
end
|
|
|
|
nfpms:
|
|
- id: snrd
|
|
package_name: snrd
|
|
ids:
|
|
- snrd-linux-amd64
|
|
- snrd-linux-arm64
|
|
file_name_template: "snrd_{{ .Os }}_{{ .Arch }}{{ .ConventionalExtension }}"
|
|
vendor: Sonr
|
|
homepage: "https://sonr.io"
|
|
maintainer: "Sonr <support@sonr.io>"
|
|
description: "Sonr is a decentralized, permissionless, and censorship-resistant identity network."
|
|
license: "GPL-3.0"
|
|
formats:
|
|
- rpm
|
|
- deb
|
|
- apk
|
|
- archlinux
|
|
contents:
|
|
- src: README*
|
|
dst: /usr/share/doc/snrd
|
|
bindir: /usr/bin
|
|
section: net
|
|
priority: optional
|
|
|
|
blobs:
|
|
- provider: s3
|
|
endpoint: https://eb37925850388bca807b7fab964c12bb.r2.cloudflarestorage.com
|
|
bucket: releases
|
|
region: auto
|
|
directory: "snrd/{{ .Tag }}"
|
|
ids:
|
|
- snrd
|
|
|
|
release:
|
|
disable: false
|
|
github:
|
|
owner: sonr-io
|
|
name: sonr
|
|
name_template: "{{ .Tag }}"
|
|
draft: false
|
|
replace_existing_draft: false # Don't replace drafts
|
|
replace_existing_artifacts: false # Append, don't replace
|
|
mode: append # Explicitly set to append mode
|
|
|
|
checksum:
|
|
name_template: "snrd_checksums.txt"
|
|
|
|
npms:
|
|
- name: "@sonr.io/snrd"
|
|
ids:
|
|
- snrd
|
|
description: "Sonr blockchain daemon - decentralized identity and data storage network"
|
|
homepage: "https://sonr.io"
|
|
license: "GPL-3.0"
|
|
author: "Sonr <support@sonr.io>"
|
|
repository: "https://github.com/sonr-io/sonr"
|
|
bugs: "https://github.com/sonr-io/sonr/issues"
|
|
keywords:
|
|
- blockchain
|
|
- cosmos
|
|
- did
|
|
- identity
|
|
- web3
|
|
- sonr
|
|
access: public
|
|
format: tar.gz
|
|
|
|
snapshot:
|
|
version_template: "{{ .Branch }}-{{ .ShortCommit }}-dev"
|
|
|
|
# Changelog configuration
|
|
changelog:
|
|
sort: asc
|
|
filters:
|
|
exclude:
|
|
- "^docs:"
|
|
- "^test:"
|
|
- "^chore:"
|