IAgreementFactory
Title: IAgreementFactory
Authors: David Dada <daveproxy80@gmail.com> (https://github.com/dadadave80), Vendored minimal subset of SEAL Safe Harbor's registry contracts
(https://github.com/security-alliance/safe-harbor). Upstream license: MIT.
Minimal vendored interface for the SEAL Safe Harbor AgreementFactory (registry v3.0.0),
used by SafeHarborAdopter to deploy an Agreement holding the protocol's terms.
The factory CREATE2-deploys an Agreement (Ownable, mutable) owned by owner. The deployed
factory + chain-validator addresses are chain-specific and supplied by the deployer.
Functions
create
Deploys an Agreement holding details, owned by owner.
function create(AgreementDetails memory details, address chainValidator, address owner, bytes32 salt)
external
returns (address agreementAddress);Parameters
| Name | Type | Description |
|---|---|---|
| details | AgreementDetails | The agreement details (recovery addresses, accounts, bounty terms). |
| chainValidator | address | The SEAL ChainValidator contract for this chain. |
| owner | address | The owner of the new agreement (may update its terms). |
| salt | bytes32 | A caller-provided salt for CREATE2 uniqueness. |
Returns
| Name | Type | Description |
|---|---|---|
| agreementAddress | address | The address of the newly deployed agreement. |