π§ Coldkeep v1.10.2 β Validation & Security Hardening #51
franchoy
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Coldkeep v1.10.2 β Validation & Security Hardening
Release Type
Stabilization / security hardening release.
Summary
Coldkeep v1.10.2 is the second release in the v1.10 Reliability Freeze, CI Hardening & Correctness Burn-down train.
This release hardens Coldkeepβs validation and security posture around filesystem boundaries, stored paths, restore destinations, symlink-sensitive writes, temporary-file cleanup, environment/config parsing, PostgreSQL DSN construction, Go/toolchain CVE exposure, and security-sensitive script arguments.
This release does not add product features. It does not start engine extraction. It does not change the default database backend. It does not introduce daemon/API/UI work, packed-storage redesign, GC reachability changes, or broad restore/recovery rewrites.
Highlights
Security and Validation Improvements
Path Safety
v1.10.2 adds shared path-safety primitives and applies them across security-sensitive boundaries.
Covered behavior includes rejection of:
..,Valid nested relative paths remain supported where appropriate.
Container Filename Trust Boundary
Container filenames are now validated before being joined with trusted filesystem roots.
Rejected filename classes include:
Stored / Snapshot Path Traversal Rejection
Stored and snapshot logical paths are validated as safe relative paths.
This prevents unsafe stored metadata from representing paths that escape intended boundaries during later operations.
Restore Destination Safety
Restore target construction now verifies output paths remain inside the selected restore destination root before writing.
Unsafe restore paths fail deterministically before filesystem writes.
Symlink-Sensitive Restore Write Safety
Restore writes now reject unsafe symlink participation at restore boundaries.
This prevents lexically safe paths from escaping the destination root through symlinked parent directories or symlinked final targets.
Temp / Rename / Cleanup Safety
Restore temp cleanup now includes ownership/scope guards so cleanup only removes restore-owned temporary artifacts in the destination parent directory.
This reduces risk from unsafe cleanup paths and partial write states.
Environment / Config Parsing
Environment-derived configuration is now parsed more strictly and deterministically.
Hardened behavior includes:
PostgreSQL DSN / Options Construction
PostgreSQL DSN construction is now centralized and validated.
This hardens:
sslmodeallowlist validation,SQLite/local non-PostgreSQL behavior remains unaffected.
Go / Toolchain CVE Remediation
Phase 9 remediated Go/toolchain CVE exposure.
Before remediation:
After remediation:
govulncheck ./...reported no vulnerabilities found.Script Argument Validation
Security-sensitive scripts now validate path-like, identifier-like, and executable-like arguments before filesystem or shell operations.
Hardened behavior includes rejection of:
..,Invalid script inputs exit with code
1and deterministic diagnostic errors.Fixed / Covered Remediation Areas
v1.10.2 covered the validation/security hardening rows tracked in the v1.10.2 release inventory, including:
Known covered matrix rows include:
CK-110-M083β temp / rename / cleanup safety.CK-110-M013β environment parsing hardening.CK-110-M012β PostgreSQL DSN / options construction.CK-110-M009β Go/toolchain CVE remediation.CK-110-M043β security-sensitive script argument validation.Validation
Implementation Phase Validation
Across the v1.10.2 implementation phases, validation included:
gofmton changed Go files,govulncheck ./...,go vet ./...,go test ./...,go test -race ./....Mandatory Pre-Release Checklist
Mandatory pre-release execution completed green under the approved v1.10.2 constraints.
Executed checklist sections:
Approved adaptation:
Skipped by instruction:
Gate outcomes:
golangci-lintpassed,go vetpassed,aes-gcm, including smoke,Pull Request Validation
The pull request completed with:
main.Compatibility Notes
This release intentionally makes unsafe or malformed inputs fail earlier and more strictly.
Scripts, automation, test fixtures, or manual workflows that relied on malformed values, unsafe path shapes, unescaped PostgreSQL DSN components, unsafe script arguments, or silent env/config fallback behavior may need adjustment.
Expected valid usage remains supported.
Documentation and Tracking
v1.10.2 added or updated release tracking documentation for:
Out of Scope
The following work is intentionally deferred to later v1.10.x releases:
Release-Train Context
v1.10.2 belongs to the v1.10 stabilization train, whose purpose is to turn the v1.9 functionally complete system into a trust-complete baseline before engine extraction begins in v1.11.
The v1.10 train remains fixes-only: correctness, validation, recovery safety, scanner triage, CI improvement, and regression hardening only.
This discussion was created from the release π§ Coldkeep v1.10.2 β Validation & Security Hardening.
All reactions