From be6776a883ea443d35607d57701230f0f1d38fec Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Wed, 6 Mar 2024 19:20:18 +1100 Subject: [PATCH 01/12] FIP-0083: add piece information to claim event --- FIPS/fip-0083.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 10b6c156..5b989a59 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -104,6 +104,8 @@ The event payload is defined as: | Index Key + Value | “id” | (int) | | Index Key + Value | “client” | (int) | | Index Key + Value | “provider” | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | #### Claim Updated This event is emitted when the term of an existing allocation is extended by the client. From a5a7bec0b1ad15e841882ad80ce164742750a9df Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Fri, 15 Mar 2024 16:51:29 +1100 Subject: [PATCH 02/12] FIP-0083: fix formatting, consistent quoting --- FIPS/fip-0083.md | 167 +++++++++++++++++++++++------------------------ 1 file changed, 82 insertions(+), 85 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 5b989a59..0a8b0274 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -12,7 +12,7 @@ created: 2023-11-27 # FIP-0083: Add built-in Actor events in the Verified Registry, Miner and Market Actors ## Simple Summary -This FIP defines and proposes the implementation of a meaningful subset of fire-and-forget externally observable events that will be emitted by the built-in Verified Registry, Storage Market and Storage Miner Actors. These enable external agents (henceforth referred to as *“clients”*) to observe and track a specific subset of on-chain datacap allocation/claims, deal lifecycle and sector lifecycle state transitions. +This FIP defines and proposes the implementation of a meaningful subset of fire-and-forget externally observable events that will be emitted by the built-in Verified Registry, Storage Market and Storage Miner Actors. These enable external agents (henceforth referred to as *"clients"*) to observe and track a specific subset of on-chain datacap allocation/claims, deal lifecycle and sector lifecycle state transitions. While this FIP explicitly delineates the implementation of events tied to specific transitions, it does not encompass the full spectrum of potential built-in actor events. The introduction and integration of additional built-in actor events will be addressed in subsequent FIPs. @@ -38,9 +38,9 @@ Filecoin network observability tools, block explorers, SP monitoring dashboards, _Please see [FIP-0049](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0049.md) for a detailed explanation of the FVM event schema and the possible values each field_ in the event schema can take. The interpretation of the flags field in each event entry is as follows: - 1. {"flags": "0x03”} ⇒ Index both key and value of the event entry - 2. {"flags": "0x02”} ⇒ Index only the value of the event entry - 3. {"flags": "0x01”} ⇒ Index only the key of the event entry + 1. {"flags": "0x03"} ⇒ Index both key and value of the event entry + 2. {"flags": "0x02"} ⇒ Index only the value of the event entry + 3. {"flags": "0x01"} ⇒ Index only the key of the event entry @@ -59,11 +59,11 @@ This event is emitted when the balance of a verifier is updated in the Verified The event payload is defined as: -| flags | key | value | -|----------------------| --- |--------------------------------------| -| Index Key + Value | “$type” | “verifier-balance” (string) | -| Index Key + Value | “verifier” | (int) | -| Index Key | “balance” | (bigint) | +| flags | key | value | +| -------------------- | ---------- | ----------------------------------- | +| Index Key + Value | "$type" | "verifier-balance" (string) | +| Index Key + Value | "verifier" | (int) | +| Index Key | "balance" | (bigint) | _The "bigint" CBOR encoding format used for the "balance" field is the same as is used for encoding bigints on the Filecoin chain: a byte array representing a big-endian unsigned integer, compatible with the Golang `big.Int` byte representation, with a `0x00` (positive) or `0x01` (negative) prefix; with a zero-length array representing a value of `0`._ @@ -72,25 +72,24 @@ This event is emitted when a verified client allocates datacap to a specific dat The event payload is defined as: -| flags | key | value | -| --- | --- |-------------------------| -| Index Key + Value | “$type” | “allocation” (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | “client” | (int) | -| Index Key + Value | “provider” | (int) | +| flags | key | value | +| ----------------- | ---------- | ----------------------- | +| Index Key + Value | "$type" | "allocation" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | #### Datacap Allocation Removed This event is emitted when a datacap allocation that is past its expiration epoch is removed. The event payload is defined as: -| flags | key | value | -| --- | --- |-------------------------------| -| Index Key + Value | “$type” | “allocation-removed” (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | “client” | (int) | -| Index Key + Value | “provider” | (int) | - +| flags | key | value | +| ----------------- | ---------- | ----------------------------- | +| Index Key + Value | "$type" | "allocation-removed" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | #### Allocation Claimed @@ -98,38 +97,36 @@ This event is emitted when a client allocation is claimed by a storage provider The event payload is defined as: -| flags | key | value | -| --- | --- |-----------------------| -| Index Key + Value | “$type” | “claim” (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | “client” | (int) | -| Index Key + Value | “provider” | (int) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | +| flags | key | value | +| ----------------- | ---------- | ----------------------- | +| Index Key + Value | "$type" | "claim" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | #### Claim Updated This event is emitted when the term of an existing allocation is extended by the client. The event payload is defined as: -| flags | key | value | -| --- | --- |--------------------------| -| Index Key + Value | “$type” | “claim-updated” (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | “client” | (int) | -| Index Key + Value | “provider” | (int) | +| flags | key | value | +| ----------------- | ---------- | ------------------------ | +| Index Key + Value | "$type" | "claim-updated" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | #### Claim Removed This event is emitted when an expired claim is removed by the Verified Registry Actor. The event payload is defined as: -| flags | key | value | -| --- | --- |--------------------------| -| Index Key + Value | “$type” | “claim-removed” (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | “client” | (int) | -| Index Key + Value | “provider” | (int) | +| flags | key | value | +| ----------------- | ---------- | ------------------------ | +| Index Key + Value | "$type" | "claim-removed" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | ### Market Actor Events The Market Actor emits the following deal lifecycle events: @@ -139,11 +136,11 @@ This event is emitted for each new deal that is successfully published by a stor The event payload is defined as: -| flags | key | value | -| --- | --- |-----------------------------------| -| Index Key + Value | “$type” | "deal-published" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | +| flags | key | value | +| ----------------- | ---------- | --------------------------------- | +| Index Key + Value | "$type" | "deal-published" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | | Index Key + Value | "provider" | (int) | #### Deal Activated @@ -151,11 +148,11 @@ The deal activation event is emitted for each deal that is successfully activate The event payload is defined as: -| flags | key | value | -| --- | --- |---------------------------| -| Index Key + Value | “$type” | "deal-activated" (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | "client" | (int) | +| flags | key | value | +| ----------------- | ---------- | --------------------------------- | +| Index Key + Value | "$type" | "deal-activated" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | | Index Key + Value | "provider" | (int) | #### Deal Terminated @@ -169,11 +166,11 @@ as terminated by the `OnMinerSectorsTerminate` method. The event payload is defined as: -| flags | key | value | -| --- | --- |----------------------------| -| Index Key + Value | “$type” | "deal-terminated" (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | "client" | (int) | +| flags | key | value | +| ----------------- | ---------- | --------------------------------- | +| Index Key + Value | "$type" | "deal-terminated" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | | Index Key + Value | "provider" | (int) | #### Deal Completed Successfully @@ -186,11 +183,11 @@ This applies to new deals made post landing FIP-0074. For deals made before FIP- The event payload is defined as: -| flags | key | value | -| --- | --- |---------------------------| -| Index Key + Value | “$type” | "deal-completed" (string) | -| Index Key + Value | “id” | (int) | -| Index Key + Value | "client" | (int) | +| flags | key | value | +| ----------------- | ---------- | --------------------------------- | +| Index Key + Value | "$type" | "deal-completed" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | | Index Key + Value | "provider" | (int) | ### Miner Actor Events @@ -201,23 +198,23 @@ The sector pre-committed event is emitted for each new sector that is successful The event payload is defined as: -| flags | key | value | -| --- | --- |--------------------------------| -| Index Key + Value | “$type" | "sector-precommitted" (string) | -| Index Key + Value | “sector” | (int) | +| flags | key | value | +| ----------------- | -------- | ------------------------------ | +| Index Key + Value | "$type" | "sector-precommitted" (string) | +| Index Key + Value | "sector" | (int) | #### Sector Activated This event is emitted for each pre-committed sector that is successfully activated by a storage provider. For now, sector activation corresponds 1:1 with prove-committing a sector but this can change in the future. The event payload is defined as: -| flags | key | value | -|-------------------|----------------|--------------------------------------------------------------| -| Index Key + Value | “$type" | "sector-activated" (string) | -| Index Key + Value | “sector” | (int) | -| Index Key + Value | “unsealed-cid” | (nullable cid) (null means sector has no data) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | +| flags | key | value | +| ----------------- | -------------- | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-activated" (string) | +| Index Key + Value | "sector" | (int) | +| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | - Note that `piece-cid` and `piece-size` is included for each piece in the sector. @@ -226,13 +223,13 @@ This event is emitted for each CC sector that is updated to contained actual sea The event payload is defined as: -| flags | key | value | -|-------------------|----------------|--------------------------------------------------------------| -| Index Key + Value | “$type" | "sector-updated" (string) | -| Index Key + Value | “sector” | (int) | -| Index Key + Value | “unsealed-cid” | (nullable cid) (null means sector has no data) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | +| flags | key | value | +| ----------------- | -------------- | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-updated" (string) | +| Index Key + Value | "sector" | (int) | +| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | - Note that `piece-cid` and `piece-size` is included for each piece in the updated sector. @@ -241,10 +238,10 @@ The sector termination event is emitted for each sector that is marked as termin The event payload is defined as: -| flags | key | value | -| --- | --- |------------------------------| -| Index Key + Value | “$type" | "sector-terminated" (string) | -| Index Key + Value | “sector” | (int) | +| flags | key | value | +| ----------------- | -------- | ---------------------------- | +| Index Key + Value | "$type" | "sector-terminated" (string) | +| Index Key + Value | "sector" | (int) | ### Changing the Market Actor `BatchActivateDealsResult` type The legacy (pre [FIP-0076](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0076.md)) sector activation and @@ -298,7 +295,7 @@ in and then query the chain state with the corresponding allocation/claim ID to ### Market Actor Events Once a deal is published, clients have access to the `dealId` of the deal. All Market Actor events except -for the “deal published” event have the `dealId` in their payload, which clients can use to filter for events +for the "deal published" event have the `dealId` in their payload, which clients can use to filter for events they are interested in and then query the chain state for more information. All Market Actor events have the client and provider Actor IDs in the event payload. This enables users From d4d89f617e22f678d431545e9da5fa0dd81ee247 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Fri, 15 Mar 2024 17:36:50 +1100 Subject: [PATCH 03/12] FIP-0083: focus only on DDO concerns, remove extraneous additions --- FIPS/fip-0083.md | 232 ++++++++++++++++++++++++++++------------------- 1 file changed, 138 insertions(+), 94 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 0a8b0274..5ff68385 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -42,8 +42,6 @@ Filecoin network observability tools, block explorers, SP monitoring dashboards, 2. {"flags": "0x02"} ⇒ Index only the value of the event entry 3. {"flags": "0x01"} ⇒ Index only the key of the event entry - - _All values in the event payloads defined below are encoded with CBOR and so the codec field for each event_ entry will be set to 0x51.  The codec field is left empty in the payloads defined below only for the sake of brevity. @@ -52,6 +50,11 @@ Filecoin network observability tools, block explorers, SP monitoring dashboards, The FVM currently only supports event values encoded with the `raw` encoding. This FIP adds support for CBOR encoding (0x51), and built-in actor event values will be encoded with CBOR. +_Note that the "bigint" CBOR encoding format used below for token amount fields is the same as is +used for encoding bigints on the Filecoin chain: a byte array representing a big-endian unsigned +integer, compatible with the Golang `big.Int` byte representation, with a `0x00` (positive) or +`0x01` (negative) prefix; with a zero-length array representing a value of `0`._ + ### Verified Registry Actor Events #### Verifier Balance Updated @@ -59,74 +62,106 @@ This event is emitted when the balance of a verifier is updated in the Verified The event payload is defined as: -| flags | key | value | -| -------------------- | ---------- | ----------------------------------- | -| Index Key + Value | "$type" | "verifier-balance" (string) | -| Index Key + Value | "verifier" | (int) | -| Index Key | "balance" | (bigint) | +| flags | key | value | +| -------------------- | --------------- | -------------------------------------------- | +| Index Key + Value | "$type" | "verifier-balance" (string) | +| Index Key + Value | "verifier" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key | "prev-balance" | (bigint) | +| Index Key | "balance" | (bigint) | -_The "bigint" CBOR encoding format used for the "balance" field is the same as is used for encoding bigints on the Filecoin chain: a byte array representing a big-endian unsigned integer, compatible with the Golang `big.Int` byte representation, with a `0x00` (positive) or `0x01` (negative) prefix; with a zero-length array representing a value of `0`._ +* `client` will not be present for `AddVerifier` and `RemoveVerifier` methods but will be for the `AddVerifiedClient` method and indicates the actor ID of the receiver of the datacap. +* `prev-balance` will be zero for the `AddVerifier` method. +* `balance` will be zero for the `RemoveVerifier` method. #### Datacap Allocated This event is emitted when a verified client allocates datacap to a specific data piece and storage provider. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | ----------------------- | -| Index Key + Value | "$type" | "allocation" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | +| flags | key | value | +| ----------------- | ------------ | ------------------------ | +| Index Key + Value | "$type" | "allocation" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key | "term-min" | (int) | +| Index Key | "term-max" | (int) | +| Index Key + Value | "expiration" | (int) | #### Datacap Allocation Removed This event is emitted when a datacap allocation that is past its expiration epoch is removed. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | ----------------------------- | -| Index Key + Value | "$type" | "allocation-removed" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | - - -#### Allocation Claimed +| flags | key | value | +| ----------------- | ------------ | ----------------------------- | +| Index Key + Value | "$type" | "allocation-removed" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key | "term-min" | (int) | +| Index Key | "term-max" | (int) | +| Index Key + Value | "expiration" | (int) | + +#### Datacap Allocation Claimed This event is emitted when a client allocation is claimed by a storage provider after the corresponding verified data is provably committed to the chain. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | ----------------------- | -| Index Key + Value | "$type" | "claim" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | - -#### Claim Updated +| flags | key | value | +| ----------------- | ------------ | ------------------------ | +| Index Key + Value | "$type" | "claim" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "sector" | (int) | +| Index Key | "term-min" | (int) | +| Index Key | "term-max" | (int) | +| Index Key + Value | "expiration" | (int) | + +#### Datacap Claim Updated This event is emitted when the term of an existing allocation is extended by the client. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | ------------------------ | -| Index Key + Value | "$type" | "claim-updated" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | - -#### Claim Removed +| flags | key | value | +| ----------------- | --------------- | ----------------------------- | +| Index Key + Value | "$type" | "claim-updated" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "sector" | (int) | +| Index Key | "term-min" | (int) | +| Index Key | "term-max" | (int) | +| Index Key | "prev-term-max" | (int) | +| Index Key + Value | "expiration" | (int) | + +#### Datacap Claim Removed This event is emitted when an expired claim is removed by the Verified Registry Actor. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | ------------------------ | -| Index Key + Value | "$type" | "claim-removed" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | +| flags | key | value | +| ----------------- | ------------ | ------------------------ | +| Index Key + Value | "$type" | "claim-removed" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "sector" | (int) | +| Index Key | "term-min" | (int) | +| Index Key | "term-max" | (int) | +| Index Key + Value | "expiration" | (int) | ### Market Actor Events The Market Actor emits the following deal lifecycle events: @@ -136,42 +171,43 @@ This event is emitted for each new deal that is successfully published by a stor The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | --------------------------------- | -| Index Key + Value | "$type" | "deal-published" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | +| flags | key | value | +| ----------------- | --------------------- | ---------------------------------- | +| Index Key + Value | "$type" | "deal-published" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | #### Deal Activated The deal activation event is emitted for each deal that is successfully activated. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | --------------------------------- | -| Index Key + Value | "$type" | "deal-activated" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | +| flags | key | value | +| ----------------- | --------------------- | ---------------------------------- | +| Index Key + Value | "$type" | "deal-activated" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | #### Deal Terminated [FIP-0074](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0074.md) ensures that terminated deals are processed immediately in the `OnMinerSectorsTerminate` method rather than being submitted for deferred processing to the market actor cron job. That change will make this event available to clients. - The deal termination event is emitted by the market actor cron job when it processes deals that were marked as terminated by the `OnMinerSectorsTerminate` method. The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | --------------------------------- | -| Index Key + Value | "$type" | "deal-terminated" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | +| flags | key | value | +| ----------------- | --------------------- | --------------------------------- | +| Index Key + Value | "$type" | "deal-terminated" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | + +* `end-epoch` is the nominal end epoch of the deal per the deal proposal, not the termination epoch. #### Deal Completed Successfully This event is emitted when a deal is marked as successfully complete by the Market Actor cron job. @@ -183,12 +219,12 @@ This applies to new deals made post landing FIP-0074. For deals made before FIP- The event payload is defined as: -| flags | key | value | -| ----------------- | ---------- | --------------------------------- | -| Index Key + Value | "$type" | "deal-completed" (string) | -| Index Key + Value | "id" | (int) | -| Index Key + Value | "client" | (int) | -| Index Key + Value | "provider" | (int) | +| flags | key | value | +| ----------------- | --------------------- | --------------------------------- | +| Index Key + Value | "$type" | "deal-completed" (string) | +| Index Key + Value | "id" | (int) | +| Index Key + Value | "client" | (int) | +| Index Key + Value | "provider" | (int) | ### Miner Actor Events The Miner Actor emits the following sector lifecycle events: @@ -198,50 +234,58 @@ The sector pre-committed event is emitted for each new sector that is successful The event payload is defined as: -| flags | key | value | -| ----------------- | -------- | ------------------------------ | -| Index Key + Value | "$type" | "sector-precommitted" (string) | -| Index Key + Value | "sector" | (int) | +| flags | key | value | +| ----------------- | ------------------ | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-precommitted" (string) | +| Index Key + Value | "sector" | (int) | + +* `deal` is included for each deal in the sector, i.e. it may appear zero or more times in the event payload. #### Sector Activated This event is emitted for each pre-committed sector that is successfully activated by a storage provider. For now, sector activation corresponds 1:1 with prove-committing a sector but this can change in the future. The event payload is defined as: -| flags | key | value | -| ----------------- | -------------- | ------------------------------------------------------------- | -| Index Key + Value | "$type" | "sector-activated" (string) | -| Index Key + Value | "sector" | (int) | -| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | +| flags | key | value | +| ----------------- | ------------------ | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-activated" (string) | +| Index Key + Value | "sector" | (int) | +| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | +| Index Key + Value | "expiration-epoch" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "claim" | (cid) | -- Note that `piece-cid` and `piece-size` is included for each piece in the sector. +* `piece-cid` and `piece-size` is included for each piece in the sector, i.e. they may appear zero or more times in the event payload but always as a pair. +* `claim` will accompany the `piece-cid` and `piece-size` pair for each piece in the sector where datacap is allocated to the piece via the verified registry actor. A matching `claim` event will be emitted by the verified registry actor for each `claim` in the `sector-activated` event payload. #### Sector Updated This event is emitted for each CC sector that is updated to contained actual sealed data. The event payload is defined as: -| flags | key | value | -| ----------------- | -------------- | ------------------------------------------------------------- | -| Index Key + Value | "$type" | "sector-updated" (string) | -| Index Key + Value | "sector" | (int) | -| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | +| flags | key | value | +| ----------------- | ------------------ | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-updated" (string) | +| Index Key + Value | "sector" | (int) | +| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | +| Index Key + Value | "expiration-epoch" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "claim" | (cid) | -- Note that `piece-cid` and `piece-size` is included for each piece in the updated sector. +* `piece-cid` and `piece-size` is included for each piece in the sector, i.e. they may appear zero or more times in the event payload but always as a pair. +* `claim` will accompany the `piece-cid` and `piece-size` pair for each piece in the sector where datacap is allocated to the piece via the verified registry actor. A matching `claim` event will be emitted by the verified registry actor for each `claim` in the `sector-updated` event payload. #### Sector Terminated The sector termination event is emitted for each sector that is marked as terminated by a storage provider. The event payload is defined as: -| flags | key | value | -| ----------------- | -------- | ---------------------------- | -| Index Key + Value | "$type" | "sector-terminated" (string) | -| Index Key + Value | "sector" | (int) | +| flags | key | value | +| ----------------- | --------- | ---------------------------- | +| Index Key + Value | "$type" | "sector-terminated" (string) | +| Index Key + Value | "sector" | (int) | ### Changing the Market Actor `BatchActivateDealsResult` type The legacy (pre [FIP-0076](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0076.md)) sector activation and From 9798fdf344ee14bb106a768dc435155245eae531 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Mon, 18 Mar 2024 20:17:01 +1100 Subject: [PATCH 04/12] FIP-0083: adjust according to feedback --- FIPS/fip-0083.md | 52 +++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 5ff68385..8d5d61a2 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -66,11 +66,11 @@ The event payload is defined as: | -------------------- | --------------- | -------------------------------------------- | | Index Key + Value | "$type" | "verifier-balance" (string) | | Index Key + Value | "verifier" | (int) | -| Index Key + Value | "client" | (int) | +| Index Key + Value | "client" | (nullable int) | | Index Key | "prev-balance" | (bigint) | | Index Key | "balance" | (bigint) | -* `client` will not be present for `AddVerifier` and `RemoveVerifier` methods but will be for the `AddVerifiedClient` method and indicates the actor ID of the receiver of the datacap. +* `client` will be `null` for `AddVerifier` and `RemoveVerifier` methods but will be an int for the `AddVerifiedClient` method and indicates the actor ID of the receiver of the datacap. * `prev-balance` will be zero for the `AddVerifier` method. * `balance` will be zero for the `RemoveVerifier` method. @@ -89,7 +89,7 @@ The event payload is defined as: | Index Key | "piece-size" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key + Value | "expiration" | (int) | +| Index Key | "expiration" | (int) | #### Datacap Allocation Removed This event is emitted when a datacap allocation that is past its expiration epoch is removed. @@ -106,7 +106,7 @@ The event payload is defined as: | Index Key | "piece-size" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key + Value | "expiration" | (int) | +| Index Key | "expiration" | (int) | #### Datacap Allocation Claimed This event is emitted when a client allocation is claimed by a storage provider after the corresponding verified data is provably committed to the chain. @@ -124,7 +124,7 @@ The event payload is defined as: | Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key + Value | "expiration" | (int) | +| Index Key | "expiration" | (int) | #### Datacap Claim Updated This event is emitted when the term of an existing allocation is extended by the client. @@ -143,7 +143,7 @@ The event payload is defined as: | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | | Index Key | "prev-term-max" | (int) | -| Index Key + Value | "expiration" | (int) | +| Index Key | "expiration" | (int) | #### Datacap Claim Removed This event is emitted when an expired claim is removed by the Verified Registry Actor. @@ -161,7 +161,7 @@ The event payload is defined as: | Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key + Value | "expiration" | (int) | +| Index Key | "expiration" | (int) | ### Market Actor Events The Market Actor emits the following deal lifecycle events: @@ -207,8 +207,6 @@ The event payload is defined as: | Index Key + Value | "client" | (int) | | Index Key + Value | "provider" | (int) | -* `end-epoch` is the nominal end epoch of the deal per the deal proposal, not the termination epoch. - #### Deal Completed Successfully This event is emitted when a deal is marked as successfully complete by the Market Actor cron job. The cron job will deem a deal to be successfully completed if it is past it’s end epoch without being slashed. @@ -246,15 +244,15 @@ This event is emitted for each pre-committed sector that is successfully activat The event payload is defined as: -| flags | key | value | -| ----------------- | ------------------ | ------------------------------------------------------------- | -| Index Key + Value | "$type" | "sector-activated" (string) | -| Index Key + Value | "sector" | (int) | -| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key + Value | "expiration-epoch" | (int) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | -| Index Key + Value | "claim" | (cid) | +| flags | key | value | +| ----------------- | -------------- | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-activated" (string) | +| Index Key + Value | "sector" | (int) | +| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | +| Index Key | "expiration" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "claim" | (cid) | * `piece-cid` and `piece-size` is included for each piece in the sector, i.e. they may appear zero or more times in the event payload but always as a pair. * `claim` will accompany the `piece-cid` and `piece-size` pair for each piece in the sector where datacap is allocated to the piece via the verified registry actor. A matching `claim` event will be emitted by the verified registry actor for each `claim` in the `sector-activated` event payload. @@ -264,15 +262,15 @@ This event is emitted for each CC sector that is updated to contained actual sea The event payload is defined as: -| flags | key | value | -| ----------------- | ------------------ | ------------------------------------------------------------- | -| Index Key + Value | "$type" | "sector-updated" (string) | -| Index Key + Value | "sector" | (int) | -| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key + Value | "expiration-epoch" | (int) | -| Index Key + Value | "piece-cid" | (cid) | -| Index Key | "piece-size" | (int) | -| Index Key + Value | "claim" | (cid) | +| flags | key | value | +| ----------------- | -------------- | ------------------------------------------------------------- | +| Index Key + Value | "$type" | "sector-updated" (string) | +| Index Key + Value | "sector" | (int) | +| Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | +| Index Key | "expiration" | (int) | +| Index Key + Value | "piece-cid" | (cid) | +| Index Key | "piece-size" | (int) | +| Index Key + Value | "claim" | (cid) | * `piece-cid` and `piece-size` is included for each piece in the sector, i.e. they may appear zero or more times in the event payload but always as a pair. * `claim` will accompany the `piece-cid` and `piece-size` pair for each piece in the sector where datacap is allocated to the piece via the verified registry actor. A matching `claim` event will be emitted by the verified registry actor for each `claim` in the `sector-updated` event payload. From 431788943d1262e63a9375ad9a04454f135912e9 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Tue, 19 Mar 2024 14:02:35 +1100 Subject: [PATCH 05/12] FIP-0083: adjust from feedback * Remove notes from verifier-balance * Remove expiration from claim* * Remove stray comment --- FIPS/fip-0083.md | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 8d5d61a2..06aa9ce5 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -62,17 +62,13 @@ This event is emitted when the balance of a verifier is updated in the Verified The event payload is defined as: -| flags | key | value | -| -------------------- | --------------- | -------------------------------------------- | -| Index Key + Value | "$type" | "verifier-balance" (string) | -| Index Key + Value | "verifier" | (int) | -| Index Key + Value | "client" | (nullable int) | -| Index Key | "prev-balance" | (bigint) | -| Index Key | "balance" | (bigint) | - -* `client` will be `null` for `AddVerifier` and `RemoveVerifier` methods but will be an int for the `AddVerifiedClient` method and indicates the actor ID of the receiver of the datacap. -* `prev-balance` will be zero for the `AddVerifier` method. -* `balance` will be zero for the `RemoveVerifier` method. +| flags | key | value | +| -------------------- | --------------- | ---------------------------------------------------------------------------------- | +| Index Key + Value | "$type" | "verifier-balance" (string) | +| Index Key + Value | "verifier" | (int) | +| Index Key + Value | "client" | (nullable int) (non-null means datacap sent to a client) | +| Index Key | "prev-balance" | (bigint) | +| Index Key | "balance" | (bigint) | #### Datacap Allocated This event is emitted when a verified client allocates datacap to a specific data piece and storage provider. @@ -124,10 +120,9 @@ The event payload is defined as: | Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key | "expiration" | (int) | #### Datacap Claim Updated -This event is emitted when the term of an existing allocation is extended by the client. +This event is emitted when the term of an existing allocation is extended. The event payload is defined as: @@ -143,7 +138,6 @@ The event payload is defined as: | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | | Index Key | "prev-term-max" | (int) | -| Index Key | "expiration" | (int) | #### Datacap Claim Removed This event is emitted when an expired claim is removed by the Verified Registry Actor. @@ -161,7 +155,6 @@ The event payload is defined as: | Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key | "expiration" | (int) | ### Market Actor Events The Market Actor emits the following deal lifecycle events: @@ -237,8 +230,6 @@ The event payload is defined as: | Index Key + Value | "$type" | "sector-precommitted" (string) | | Index Key + Value | "sector" | (int) | -* `deal` is included for each deal in the sector, i.e. it may appear zero or more times in the event payload. - #### Sector Activated This event is emitted for each pre-committed sector that is successfully activated by a storage provider. For now, sector activation corresponds 1:1 with prove-committing a sector but this can change in the future. @@ -267,7 +258,7 @@ The event payload is defined as: | Index Key + Value | "$type" | "sector-updated" (string) | | Index Key + Value | "sector" | (int) | | Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key | "expiration" | (int) | +| Index Key | "expiration" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | | Index Key + Value | "claim" | (cid) | From f2c80563a35f17b7cfa66b46fb98afb1fb12ce6a Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Tue, 19 Mar 2024 18:51:57 +1100 Subject: [PATCH 06/12] FIP-0083: adjust from feedback * Remove "claim" from sector-* events, non-trivial to gather and is available in reverse from the claim event. --- FIPS/fip-0083.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 06aa9ce5..e7d71760 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -243,10 +243,8 @@ The event payload is defined as: | Index Key | "expiration" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | -| Index Key + Value | "claim" | (cid) | * `piece-cid` and `piece-size` is included for each piece in the sector, i.e. they may appear zero or more times in the event payload but always as a pair. -* `claim` will accompany the `piece-cid` and `piece-size` pair for each piece in the sector where datacap is allocated to the piece via the verified registry actor. A matching `claim` event will be emitted by the verified registry actor for each `claim` in the `sector-activated` event payload. #### Sector Updated This event is emitted for each CC sector that is updated to contained actual sealed data. @@ -261,10 +259,8 @@ The event payload is defined as: | Index Key | "expiration" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | -| Index Key + Value | "claim" | (cid) | * `piece-cid` and `piece-size` is included for each piece in the sector, i.e. they may appear zero or more times in the event payload but always as a pair. -* `claim` will accompany the `piece-cid` and `piece-size` pair for each piece in the sector where datacap is allocated to the piece via the verified registry actor. A matching `claim` event will be emitted by the verified registry actor for each `claim` in the `sector-updated` event payload. #### Sector Terminated The sector termination event is emitted for each sector that is marked as terminated by a storage provider. From 9f0220a2539b58a953feac8936b7e17d31921c18 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Tue, 19 Mar 2024 19:02:45 +1100 Subject: [PATCH 07/12] FIP-0083: adjust from feedback * Remove prev-* fields due to objections --- FIPS/fip-0083.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index e7d71760..ccae7e33 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -67,7 +67,6 @@ The event payload is defined as: | Index Key + Value | "$type" | "verifier-balance" (string) | | Index Key + Value | "verifier" | (int) | | Index Key + Value | "client" | (nullable int) (non-null means datacap sent to a client) | -| Index Key | "prev-balance" | (bigint) | | Index Key | "balance" | (bigint) | #### Datacap Allocated @@ -137,7 +136,6 @@ The event payload is defined as: | Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | -| Index Key | "prev-term-max" | (int) | #### Datacap Claim Removed This event is emitted when an expired claim is removed by the Verified Registry Actor. From 7fb47969567b038eac88aa20c1942d8533925208 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Tue, 19 Mar 2024 19:13:32 +1100 Subject: [PATCH 08/12] FIP-0083: adjust from feedback * remove expiration from sector-* events --- FIPS/fip-0083.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index ccae7e33..ceef3a9a 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -238,7 +238,6 @@ The event payload is defined as: | Index Key + Value | "$type" | "sector-activated" (string) | | Index Key + Value | "sector" | (int) | | Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key | "expiration" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | @@ -254,7 +253,6 @@ The event payload is defined as: | Index Key + Value | "$type" | "sector-updated" (string) | | Index Key + Value | "sector" | (int) | | Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | -| Index Key | "expiration" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | From 5b85d00ce2e9f10cdbaee8769a176ca5f77df6a6 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Wed, 20 Mar 2024 14:01:27 +1100 Subject: [PATCH 09/12] FIP-0083: adjust from feedback * Remove "client" from verifier-balance event, for consideration separately --- FIPS/fip-0083.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index ceef3a9a..853b4428 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -62,12 +62,11 @@ This event is emitted when the balance of a verifier is updated in the Verified The event payload is defined as: -| flags | key | value | -| -------------------- | --------------- | ---------------------------------------------------------------------------------- | -| Index Key + Value | "$type" | "verifier-balance" (string) | -| Index Key + Value | "verifier" | (int) | -| Index Key + Value | "client" | (nullable int) (non-null means datacap sent to a client) | -| Index Key | "balance" | (bigint) | +| flags | key | value | +| -------------------- | --------------- | ----------------------------------- | +| Index Key + Value | "$type" | "verifier-balance" (string) | +| Index Key + Value | "verifier" | (int) | +| Index Key | "balance" | (bigint) | #### Datacap Allocated This event is emitted when a verified client allocates datacap to a specific data piece and storage provider. From c9ac67c956ec61c40e647cd899a4d09ce33e4eaa Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Wed, 20 Mar 2024 15:42:57 +1100 Subject: [PATCH 10/12] FIP-0083: adjust from impl move "sector" to the end of claim events to match implementation --- FIPS/fip-0083.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 853b4428..05b30eef 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -115,9 +115,9 @@ The event payload is defined as: | Index Key + Value | "provider" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | -| Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | +| Index Key + Value | "sector" | (int) | #### Datacap Claim Updated This event is emitted when the term of an existing allocation is extended. @@ -132,9 +132,9 @@ The event payload is defined as: | Index Key + Value | "provider" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | -| Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | +| Index Key + Value | "sector" | (int) | #### Datacap Claim Removed This event is emitted when an expired claim is removed by the Verified Registry Actor. @@ -149,9 +149,9 @@ The event payload is defined as: | Index Key + Value | "provider" | (int) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | -| Index Key + Value | "sector" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | +| Index Key + Value | "sector" | (int) | ### Market Actor Events The Market Actor emits the following deal lifecycle events: From 5e2176f36c9e3fe504215657fa1c4aa4ea73060b Mon Sep 17 00:00:00 2001 From: Alex North <445306+anorth@users.noreply.github.com> Date: Thu, 21 Mar 2024 09:21:49 +1300 Subject: [PATCH 11/12] Fix typos --- FIPS/fip-0083.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 05b30eef..5789a37d 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -225,7 +225,7 @@ The event payload is defined as: | flags | key | value | | ----------------- | ------------------ | ------------------------------------------------------------- | | Index Key + Value | "$type" | "sector-precommitted" (string) | -| Index Key + Value | "sector" | (int) | +| Index Key + Value | "sector" | (int) | #### Sector Activated This event is emitted for each pre-committed sector that is successfully activated by a storage provider. For now, sector activation corresponds 1:1 with prove-committing a sector but this can change in the future. @@ -235,7 +235,7 @@ The event payload is defined as: | flags | key | value | | ----------------- | -------------- | ------------------------------------------------------------- | | Index Key + Value | "$type" | "sector-activated" (string) | -| Index Key + Value | "sector" | (int) | +| Index Key + Value | "sector" | (int) | | Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | @@ -250,7 +250,7 @@ The event payload is defined as: | flags | key | value | | ----------------- | -------------- | ------------------------------------------------------------- | | Index Key + Value | "$type" | "sector-updated" (string) | -| Index Key + Value | "sector" | (int) | +| Index Key + Value | "sector" | (int) | | Index Key + Value | "unsealed-cid" | (nullable cid) (null means sector has no data) | | Index Key + Value | "piece-cid" | (cid) | | Index Key | "piece-size" | (int) | @@ -265,7 +265,7 @@ The event payload is defined as: | flags | key | value | | ----------------- | --------- | ---------------------------- | | Index Key + Value | "$type" | "sector-terminated" (string) | -| Index Key + Value | "sector" | (int) | +| Index Key + Value | "sector" | (int) | ### Changing the Market Actor `BatchActivateDealsResult` type The legacy (pre [FIP-0076](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0076.md)) sector activation and From 0986a7bf43ed3101bf73bd2a289ae689d8882dee Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Thu, 21 Mar 2024 10:49:50 +1100 Subject: [PATCH 12/12] FIP-0083: add "term-start" to claim events --- FIPS/fip-0083.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/FIPS/fip-0083.md b/FIPS/fip-0083.md index 5789a37d..71ce5615 100644 --- a/FIPS/fip-0083.md +++ b/FIPS/fip-0083.md @@ -117,6 +117,7 @@ The event payload is defined as: | Index Key | "piece-size" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | +| Index Key | "term-start" | (int) | | Index Key + Value | "sector" | (int) | #### Datacap Claim Updated @@ -134,6 +135,7 @@ The event payload is defined as: | Index Key | "piece-size" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | +| Index Key | "term-start" | (int) | | Index Key + Value | "sector" | (int) | #### Datacap Claim Removed @@ -151,6 +153,7 @@ The event payload is defined as: | Index Key | "piece-size" | (int) | | Index Key | "term-min" | (int) | | Index Key | "term-max" | (int) | +| Index Key | "term-start" | (int) | | Index Key + Value | "sector" | (int) | ### Market Actor Events