calimero-network / core

Calimero 2.0
https://calimero-network.github.io/
Other
39 stars 2 forks source link

App installation on client side #477

Closed MatejVukosav closed 2 weeks ago

MatejVukosav commented 1 month ago

Instead of the node making assumptions on the application registry and contract (currently fetching from NEAR testnet on a pre-defined contract calimero-package-manager.testnet), the new design of application install from #461 allows the node to consume and store streams of arbitrary data.

The new model for app installation should be:

Notable changes in client:

Blocked on #461

frdomovic commented 1 month ago

cc @miraclx

sequenceDiagram
    title App Installation Workflow

    participant Client
    participant Package Manager Contract
    participant Node
    participant IPFS

    Client->>Package Manager Contract: Retrieve IPFS URL for application
    Package Manager Contract->>Client: Application IPFS URL
    Client->>Node: Open stream for blob upload
    Node->>Node: Opening stream
    Client->>IPFS: Request blob
    IPFS-->>Client: Blob response stream
    Client->>Node: Pipe blob response stream to node
    Node-->>Client: Blob ID
    Client->>Node: Create application record (BlobID & metadata)
    Node-->>Client: ApplicationID == BlobID
    Client->>Node: Create contexts using ApplicationID
frdomovic commented 1 month ago

Taking 2 PR's closed into the consideration, is there still something pending from your side or should we close this issue ? @miraclx

frdomovic commented 2 weeks ago

All PR's for this merged. last pr