Skip to content

forge-lfs protocol for large file storage #25

@LiranCohen

Description

@LiranCohen

Summary

Design and implement a forge-lfs protocol for storing large binary files in DWN records, providing git-LFS-equivalent functionality.

Context

PLAN.md Section 11.2 describes the approach: a dedicated forge-lfs protocol with $size constraints for binary data. Git LFS pointers in the repo would reference DWN records instead of a centralized LFS server.

Design considerations

  • Protocol with $size constraints to cap individual blob sizes
  • Content-addressable storage (SHA-256 keyed) to enable deduplication
  • Integration with git-LFS client via custom transfer adapter or LFS API shim
  • Bandwidth-friendly: chunked upload/download for large files
  • Access control via the existing role model (repo maintainer/contributor roles)

Dependencies

  • Requires protocol definition (new src/lfs.ts)
  • Requires LFS transfer adapter or API shim
  • May need changes to bundle sync to exclude LFS-tracked files from git bundles

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions