app.gainforest.wallet.splitsVault

LEGACY — superseded by app.gainforest.wallet.primary; existing records are still read and are migrated to the primary collection on their next write. An organization's shared donation wallet: a Splits SmartVault (ERC-4337 passkey multisig) whose address is derived deterministically with CREATE2 from the organization DID and the founding signer set. Because owner, signers, threshold, and the salt scheme are all recorded here, anyone can recompute SmartVaultFactory.getAddress(...) and verify that `address` really belongs to this organization — the derivation is the proof; no signature is needed. Fixed rkey `self`: one canonical wallet per organization. While no code exists at the address the signer set may still change (the address is re-derived); once the vault is deployed on-chain this record is frozen and signer changes happen on-chain.

Details · record, key literal:self
Kindrecord
Record keyliteral:self
Authoritywallet.gainforest.app
Indexed

Record

record · key literal:self

Properties

address

requiredstring

Predicted deterministic vault address (0x…, 20 bytes).

chainId

requiredinteger

EVM chain id the donation flow settles on (the address is identical on every chain where the factory is deployed).

createdAt

requiredstring · datetime

factory

requiredstring

SmartVaultFactory address the prediction was made against.

name

string

Plain-language wallet label.

  • maxLength: 800
  • maxGraphemes: 80

owner

requiredstring

The vault's Ownable superuser slot. Always the zero address: only the signer set controls the vault.

saltScheme

requiredstring

Versioned salt derivation label; the CREATE2 salt is keccak256(saltScheme + ':' + organization DID).

signers

requiredarray

Founding signer set, in derivation order — a CREATE2 input.

  • minLength: 1
itemsref
Reference

threshold

requiredinteger

Number of signer approvals required per operation.

  • minimum: 1

#passkeySigner

object

Properties

addedAt

requiredstring · datetime

credentialId

requiredstring

WebAuthn credential id (base64url) so the member's browser can find the passkey again.

kind

requiredstring
  • enum: passkey

label

string

Plain-language signer label.

  • maxLength: 800
  • maxGraphemes: 80

memberDid

requiredstring · did

DID of the organization member this passkey belongs to.

publicKeyX

requiredstring

32-byte hex, secp256r1 public key X coordinate (SmartVault Signer slot1).

publicKeyY

requiredstring

32-byte hex, secp256r1 public key Y coordinate (SmartVault Signer slot2).

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • An account's canonical donation wallet (personal profile or organization): a Splits SmartVault (ERC-4337 passkey multisig) whose address is derived deterministically with CREATE2 from the account DID and the founding signer set. Because owner, signers, threshold, and the salt scheme are all recorded here, anyone can recompute SmartVaultFactory.getAddress(...) and verify that `address` really belongs to this account — the derivation is the proof; no signature is needed. Fixed rkey `self`: one can