Skip to content

Contract Architecture Discussion: size limits & architectural complexity. #98

@rjan90

Description

@rjan90

Problem Statement

The FilecoinWarmStorageService is facing multiple challenges that require architectural discussion:

1. Contract Size Limit

The FilecoinWarmStorageService is currently 25,189 bytes (613 bytes over the 24KB EIP-170 limit) even after custom errors optimization saved 3,226 bytes, and the size continues to grow with new features. Ref: #91

2. Growing Architectural Complexity

Based on discussions in yesterdays Eng-sync, the contract is accumulating responsibilities that suggest a potential need for architectural separation.

And there additional potential upcoming features that might add even more complexity, like the CDN Service allowing retrievers to pay for CDN services, and PoRep backups for example - there was a suggestion to maybe split up contract due to growing responsibilities.

Discussion

I'd like to hear everyone's thoughts and suggestions around potential architectural approaches to address these challenges.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    🐱 Todo

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions