Skip to content

feat: align with TAIP renames (Escrow→Lock, Exchange→RFQ) + transactionValue#4

Merged
pelle merged 2 commits intomainfrom
feat/taip-renames-and-transaction-value
May 5, 2026
Merged

feat: align with TAIP renames (Escrow→Lock, Exchange→RFQ) + transactionValue#4
pelle merged 2 commits intomainfrom
feat/taip-renames-and-transaction-value

Conversation

@pelle
Copy link
Copy Markdown
Contributor

@pelle pelle commented May 5, 2026

Summary

Brings the Go library and CLI in line with recent TAIPs spec changes. No backwards-compatibility shims — constants, types, constructors, file names, and CLI subcommands are renamed in place.

  • TAIP-17 — Escrow → Lock. Renames the message type from Escrow to Lock (lock + capture mirrors auth/capture in card payments). The composable escrow workflow and EscrowAgent role name are preserved; only the message identifier changed.
    • TypeEscrowTypeLock, EscrowBodyLockBody, NewEscrowMessageNewLockMessage
    • escrow.go/escrow_test.golock.go/lock_test.go
    • tap message escrowtap message lock
  • TAIP-18 — Exchange → RFQ (Request for Quote). Standard industry term for this pattern.
    • TypeExchangeTypeRFQ, ExchangeBodyRFQBody, NewExchangeMessageNewRFQMessage
    • exchange.go/exchange_test.gorfq.go/rfq_test.go
    • tap message exchangetap message rfq
  • TAIP-3 — transactionValue. Adds optional TransactionValue (amount, currency) to TransferBody so receiving agents can determine fiat value for Travel Rule threshold evaluation when the asset isn't widely traded.

README.md, CLAUDE.md, doc.go, and CHANGELOG.md updated to match.

Test plan

  • go fmt ./... clean
  • go vet ./... clean
  • golangci-lint run ./... — 0 issues
  • go test ./... — library + CLI suites pass
  • Lock test vector loads from TAIPs/test-vectors/lock/valid-lock.json
  • transactionValue round-trips through ParseBody and stays absent (omitempty) when not set
  • Downstream consumers update imports (no compatibility layer provided)

🤖 Generated with Claude Code

pelle and others added 2 commits May 4, 2026 20:30
…nsactionValue

Updates the library and CLI to match TAIPs spec changes:

- TAIP-17: Rename Escrow message type to Lock. The composable escrow
  workflow and EscrowAgent role name are preserved; only the message
  identifier changed (lock + capture mirrors auth/capture in card payments).
- TAIP-18: Rename Exchange message type to RFQ (Request for Quote).
- TAIP-3: Add optional TransactionValue (amount, currency) for fiat
  equivalent value, used for Travel Rule threshold determination when
  an asset is not widely traded.

No backwards-compatibility shims; constants, types, constructors, file
names, and the `tap message <type>` CLI subcommand are all renamed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
govulncheck flagged 8 fixed-in-1.26.1/1.26.2 vulns in crypto/x509,
os, and net/url reachable from cmd/tap.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@pelle pelle merged commit f514f95 into main May 5, 2026
3 checks passed
@pelle pelle mentioned this pull request May 5, 2026
2 tasks
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