Commit Graph

1 Commits

Author SHA1 Message Date
Tutus Development 86f5e127c0 Add VTS (Value Transfer System) native contract
VTS is programmable money with spending restrictions and automatic tax
accounting, designed to replace GAS as the primary user-facing currency.

Key features:
- NEP-17 compliant token (symbol: VTS, decimals: 8)
- Spending category restrictions (Food, Shelter, Medical, Education, Transport)
- Vendor registration and management
- Restricted VTS can only be spent at matching vendor categories
- Automatic tax withholding via payWage()
- Transaction recording for tax reporting
- Tax summary queries (getTransactions, getIncomeForPeriod, getTaxWithheld,
  getDeductibleExpenses, getTaxSummary)

Files added:
- pkg/core/native/vts.go: Main VTS contract implementation
- pkg/core/state/vts.go: VTS state structures (VTSBalance, Vendor, TaxConfig, etc.)
- pkg/core/native/native_test/vts_test.go: Comprehensive test suite

Files modified:
- pkg/core/native/contract.go: Added IVTS interface and VTS() accessor
- pkg/core/native/nativenames/names.go: Added VTS constant
- pkg/core/native/nativeids/ids.go: Added VTS ID (-14)
- pkg/core/native/nativehashes/hashes.go: Added VTS hash
- pkg/core/native/native_test/management_test.go: Updated test fixture

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-20 02:57:08 +00:00