Skip to content

🧊 Coldkeep v1.10.10 — Cross-Platform Validation

Choose a tag to compare

@franchoy franchoy released this 27 May 17:56
· 511 commits to main since this release
6607829

Coldkeep v1.10.10 — Cross-Platform Validation

Summary

Coldkeep v1.10.10 adds conservative cross-platform validation for path handling, restore determinism, metadata policy, script portability boundaries, and GitHub Actions OS matrix coverage.

This release improves confidence across Linux, macOS, and Windows where feasible, while explicitly avoiding unsupported platform claims.

The goal of v1.10.10 is not to claim full Windows or macOS production support. The goal is to make platform-sensitive behavior explicit, tested where feasible, and documented honestly where behavior remains platform-dependent.

Highlights

  • Added a cross-platform support contract.
  • Added path normalization and path-safety tests.
  • Added restore determinism tests for platform-sensitive destination paths.
  • Added metadata policy coverage for symlinks, permissions, timestamps, and case sensitivity.
  • Added a focused GitHub Actions OS matrix for Ubuntu, macOS, and Windows.
  • Added script portability audit and support boundaries.
  • Preserved the existing Linux quality gate behavior.
  • Avoided full Windows/macOS production support claims.

What changed

Cross-platform support contract

v1.10.10 defines the support and claim boundary for Linux, macOS, and Windows.

The release explicitly avoids unsupported claims such as:

  • full Windows production support;
  • full macOS production support;
  • POSIX permission equivalence on Windows;
  • timestamp identity across all platforms and filesystems;
  • universal case-sensitive filesystem behavior;
  • Windows-native shell script support.

Path normalization and path safety coverage

This release adds tests for platform-sensitive path forms, including:

  • relative paths;
  • dot segments;
  • repeated separators;
  • parent traversal;
  • Windows-looking backslash paths;
  • Windows drive-looking paths;
  • mixed separators.

These tests document host filepath semantics without pretending Linux CI proves native Windows behavior.

Restore determinism coverage

v1.10.10 adds restore-focused tests for platform-sensitive destination paths and byte-identical restore output.

The tests validate:

  • nested destination paths;
  • dot-segment destination paths;
  • repeated separator destination paths;
  • parent traversal guardrails;
  • byte-identical restore output across several payload forms.

Metadata platform policy

This release documents Coldkeep's policy for platform-sensitive filesystem metadata:

  • symlinks;
  • permissions;
  • timestamps;
  • case sensitivity;
  • host filesystem metadata semantics.

The policy documents what Coldkeep may claim and what it must not claim until platform-specific CI proves stronger behavior.

GitHub Actions OS matrix

v1.10.10 adds a focused cross-platform CI job for:

  • ubuntu-latest;
  • macos-latest;
  • windows-latest.

The matrix validates targeted path safety, metadata policy, and restore determinism surfaces.

The existing Linux quality job remains preserved.

Script portability audit

This release adds a script portability audit documenting:

  • script inventory;
  • shell assumptions;
  • Linux/POSIX-oriented behavior;
  • Git Bash/WSL boundary;
  • Windows-native limitations;
  • macOS GNU/BSD tool portability risks.

Validation

Local validation passed before PR:

go test ./internal/pathsafe/... -count=1
go test ./internal/storage -run "RestoreCrossPlatform|RestoreSeam" -count=1
go test ./internal/pathsafe -run "Path|CrossPlatform|MetadataPolicy|CaseSensitivity|Timestamp|Permission|Symlink" -count=1 -v
go test ./internal/storage -run "RestoreCrossPlatform" -count=1 -v
go test ./internal/pathsafe -count=1
go test ./internal/storage -count=1
go test ./...
go test -race ./...
go vet ./...

Pull request CI passed after fixes for multi-OS validation and Codacy findings.

The post-merge main CI execution should be used as the final release confirmation before tagging and publishing the GitHub release.

Compatibility

No migration required.

v1.10.10 does not change:

  • repository format;
  • container format;
  • storage format;
  • CLI behavior;
  • runtime defaults;
  • scripts;
  • dependencies.

Platform support boundary

v1.10.10 validates selected cross-platform surfaces.

It does not claim:

  • full Windows production support;
  • full macOS production support;
  • Windows-native shell script compatibility;
  • POSIX permission equivalence on Windows;
  • timestamp identity across all platforms/filesystems;
  • universal case-sensitive filesystem behavior;
  • complete metadata equivalence across platforms.

Explicit non-goals

v1.10.10 does not add:

  • engine extraction;
  • catalog abstraction;
  • database backend changes;
  • cloud/NAS/network behavior;
  • installers;
  • GUI work;
  • benchmark script portability;
  • PowerShell release scripts;
  • platform-specific runtime hacks.

Recommended upgrade note

This is a validation and release-hardening update.

Existing repositories do not require migration.