Skip to content

Commit

Permalink
Add Paris support (#28)
Browse files Browse the repository at this point in the history
* Using ?version for mempool endpoints to avoid renaming endorsement -> attestation

* DalPublishCommitment added
  • Loading branch information
dmirgaleev authored May 3, 2024
1 parent 67c0dcc commit 1b7daef
Show file tree
Hide file tree
Showing 9 changed files with 52 additions and 5 deletions.
2 changes: 1 addition & 1 deletion node/chain_api.go
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ func (api *Chain) LevelsSavepoint(ctx context.Context) (Savepoint, error) {

// PendingOperations -
func (api *Chain) PendingOperations(ctx context.Context) (MempoolResponse, error) {
req, err := newGetRequest(api.baseURL, fmt.Sprintf("chains/%s/mempool/pending_operations", api.chainID), nil)
req, err := newGetRequest(api.baseURL, fmt.Sprintf("chains/%s/mempool/pending_operations?version=1", api.chainID), nil)
if err != nil {
return MempoolResponse{}, err
}
Expand Down
2 changes: 1 addition & 1 deletion node/chain_data.go
Original file line number Diff line number Diff line change
Expand Up @@ -142,5 +142,5 @@ func IsManager(kind string) bool {
kind == KindSrAddMessages || kind == KindSrCement || kind == KindSrExecute ||
kind == KindSrOriginate || kind == KindSrPublish || kind == KindSrRecoverBond ||
kind == KindSrRefute || kind == KindSrTimeout || kind == KindIncreasePaidStorage ||
kind == KindDrainDelegate || kind == KindUpdateConsensusKey
kind == KindDrainDelegate || kind == KindUpdateConsensusKey || kind == KindDalPublishCommitment
}
1 change: 1 addition & 0 deletions node/consts.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ const (
KindSrRecoverBond = "smart_rollup_recover_bond"
KindSrTimeout = "smart_rollup_timeout"
KindSrCement = "smart_rollup_cement"
KindDalPublishCommitment = "dal_publish_commitment"
)

const (
Expand Down
2 changes: 1 addition & 1 deletion node/monitor.go
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ func (monitor *Monitor) pollingMempool(ctx context.Context, filter string) {
filter = filterApplied
}

url := fmt.Sprintf("/chains/main/mempool/monitor_operations?%s", filter)
url := fmt.Sprintf("chains/main/mempool/monitor_operations?version=0&%s", filter)

ticker := time.NewTicker(time.Second)
defer ticker.Stop()
Expand Down
22 changes: 21 additions & 1 deletion node/operations.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ type OperationConstraint interface {
TxRollupRemoveCommitment | TxRollupSubmitBatch | UpdateConsensusKey |
DrainDelegate | SmartRollupAddMessage | SmartRollupCement | SmartRollupExecute |
SmartRollupOriginate | SmartRollupPublish | SmartRollupRecoverBond |
SmartRollupRefute | SmartRollupTimeout
SmartRollupRefute | SmartRollupTimeout | DalPublishCommitment
}

// OperationGroup -
Expand Down Expand Up @@ -116,6 +116,8 @@ func (op *Operation) UnmarshalJSON(data []byte) error {
err = parseOperation[SmartRollupRefute](data, op)
case KindSrTimeout:
err = parseOperation[SmartRollupTimeout](data, op)
case KindDalPublishCommitment:
err = parseOperation[DalPublishCommitment](data, op)

}
return err
Expand Down Expand Up @@ -777,6 +779,24 @@ type SmartRollupTimeout struct {
Metadata *ManagerOperationMetadata `json:"metadata,omitempty"`
}

// DalPublishCommitment -
type DalPublishCommitment struct {
Kind string `json:"kind"`
Source string `json:"source"`
Fee string `json:"fee"`
Counter string `json:"counter"`
GasLimit string `json:"gas_limit"`
StorageLimit string `json:"storage_limit"`
SlotHeader SlotHeader `json:"slot_header"`
Metadata *ManagerOperationMetadata `json:"metadata,omitempty"`
}

type SlotHeader struct {
SlotIndex int `json:"slot_index"`
Commitment string `json:"commitment"`
CommitmentProof string `json:"commitment_proof"`
}

// Stakers -
type Stakers struct {
Alice string `json:"alice"`
Expand Down
6 changes: 6 additions & 0 deletions tzkt/api/operations.go
Original file line number Diff line number Diff line change
Expand Up @@ -257,3 +257,9 @@ func (tzkt *API) GetSmartRollupRefute(ctx context.Context, filters map[string]st
err = tzkt.json(ctx, "/v1/operations/sr_refute", filters, false, &operations)
return
}

// GetDalPublishCommitment -
func (tzkt *API) GetDalPublishCommitment(ctx context.Context, filters map[string]string) (operations []data.DalPublishCommitment, err error) {
err = tzkt.json(ctx, "/v1/operations/dal_publish_commitment", filters, false, &operations)
return
}
1 change: 1 addition & 0 deletions tzkt/data/consts.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ const (
KindSrPublish = "sr_publish"
KindSrRecoverBond = "sr_recover_bond"
KindSrRefute = "sr_refute"
KindDalPublishCommitment = "dal_publish_commitment"
)

// urls
Expand Down
19 changes: 18 additions & 1 deletion tzkt/data/operations.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ type OperationConstraint interface {
TxRollupReturnBond | TxRollupSubmitBatch | NonceRevelation | DoubleBaking | DoubleEndorsing | SetDepositsLimit |
DoublePreendorsing | Baking | RevelationPenalty | EndorsingReward | VdfRevelation | IncreasePaidStorage |
DrainDelegate | UpdateConsensusKey | SmartRollupAddMessage | SmartRollupCement | SmartRollupExecute |
SmartRollupOriginate | SmartRollupPublish | SmartRollupRefute | SmartRollupRecoverBond
SmartRollupOriginate | SmartRollupPublish | SmartRollupRefute | SmartRollupRecoverBond | DalPublishCommitment
}

// Operation -
Expand Down Expand Up @@ -865,3 +865,20 @@ type SrGameInfo struct {
OpponentReward uint64 `json:"opponentReward"`
OpponentLoss uint64 `json:"opponentLoss"`
}

type DalPublishCommitment struct {
Type string `json:"type"`
ID uint64 `json:"id"`
Level uint64 `json:"level"`
Timestamp string `json:"timestamp"`
Hash string `json:"hash"`
Sender *Address `json:"sender"`
Counter uint64 `json:"counter"`
GasLimit uint64 `json:"gasLimit"`
GasUsed uint64 `json:"gasUsed"`
StorageLimit uint64 `json:"storageLimit"`
BakerFee uint64 `json:"bakerFee"`
Slot int `json:"slot"`
Commitment string `json:"commitment"`
Status string `json:"status"`
}
2 changes: 2 additions & 0 deletions tzkt/events/tzkt.go
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,8 @@ func parseOperations(data []byte) (any, error) {
result = append(result, &tzktData.SmartRollupRecoverBond{})
case tzktData.KindSrRefute:
result = append(result, &tzktData.SmartRollupRefute{})
case tzktData.KindDalPublishCommitment:
result = append(result, &tzktData.DalPublishCommitment{})
default:
result = append(result, make(map[string]interface{}))
}
Expand Down

0 comments on commit 1b7daef

Please sign in to comment.