mfer/TODO.md

1.6 KiB

TODO for 1.0 Release

High Priority

  • Fix panic in log.go - internal/log/log.go:141 has a panic("unable to get logger") that should return an error or handle gracefully instead.

  • Clean up FIXMEs in manifest.go - Multiple FIXMEs need attention:

    • Line 67: Validate input paths exist before processing
    • Line 77: Add validation for filesystem input
    • Line 163: Avoid redundant stat calls
    • Line 182: Add context support for cancellation
  • Fix WriteToFile overwrite behavior - mfer/output.go:9 has FIXME to refuse overwriting without -f flag.

  • Consolidate legacy manifest code - mfer/manifest.go has old scanning code (Scan(), addFile()) that duplicates the new internal/scanner + mfer/builder.go pattern. Remove duplication.

Medium Priority

  • Add unit tests for internal/checker - Currently has no test files; only tested indirectly via CLI tests.

  • Add unit tests for internal/scanner - Currently has no test files.

  • Add context cancellation to legacy code - The old manifest.Scan() doesn't support context cancellation; the new scanner does.

  • Validate input paths before scanning - Should fail fast with a clear error if paths don't exist.

  • Add resume support for fetch - Allow resuming partial downloads using HTTP Range requests and existing temp files.

Lower Priority

  • Add manifest signature support - Implement signing and verification using signify or similar.

  • Improve error messages - Ensure all error messages are clear and actionable.