feat: implement atomic file writing and recovery utilities

- Introduced atomic write functionality for JSON files to ensure data integrity during writes.
- Added recovery mechanisms to read JSON files with fallback options for corrupted or missing files.
- Enhanced existing services to utilize atomic write and recovery features for improved reliability.
- Updated tests to cover new atomic writing and recovery scenarios, ensuring robust error handling and data consistency.
This commit is contained in:
Shirone
2026-01-17 00:50:51 +01:00
parent cc9f7d48c8
commit 8661f33c6d
8 changed files with 1251 additions and 118 deletions

View File

@@ -53,6 +53,20 @@ export {
// File system utilities
export { mkdirSafe, existsSafe } from './fs-utils.js';
// Atomic file operations
export {
atomicWriteJson,
readJsonFile,
updateJsonAtomically,
readJsonWithRecovery,
rotateBackups,
logRecoveryWarning,
DEFAULT_BACKUP_COUNT,
type AtomicWriteOptions,
type ReadJsonRecoveryResult,
type ReadJsonRecoveryOptions,
} from './atomic-writer.js';
// Path utilities
export { normalizePath, pathsEqual } from './path-utils.js';