Deterministic environment engine for immutable Linux systems
Find a file
Marco Allegretti f535020600 feat: karapace-core — engine orchestration, lifecycle state machine, drift control
- Engine: init → resolve → lock → build → enter/exec → freeze → archive → destroy
- Cached store_root_str avoiding repeated to_string_lossy() allocations
- WAL-protected build, enter, exec, destroy, commit, restore, GC operations
- Overlay drift detection: diff/commit/export via upper_dir scanning
- Deterministic snapshot commit with composite identity hashing
- Atomic restore via staging directory swap
- StoreLock: compile-time enforcement via type parameter on gc()
- Signal handler: SIGINT/SIGTERM graceful shutdown with AtomicBool
- Push/pull delegation to karapace-remote backend
- Crash recovery: stale .running marker cleanup on Engine::new()
- Integration tests, E2E tests, crash injection tests, ENOSPC simulation
- Criterion benchmarks: build, rebuild, commit, restore, GC, verify
2026-02-22 18:37:02 +01:00
crates feat: karapace-core — engine orchestration, lifecycle state machine, drift control 2026-02-22 18:37:02 +01:00
.gitignore chore: project skeleton — workspace root, license (EUPL-1.2), deny config 2026-02-22 18:36:03 +01:00
Cargo.lock chore: project skeleton — workspace root, license (EUPL-1.2), deny config 2026-02-22 18:36:03 +01:00
Cargo.toml chore: project skeleton — workspace root, license (EUPL-1.2), deny config 2026-02-22 18:36:03 +01:00
deny.toml chore: project skeleton — workspace root, license (EUPL-1.2), deny config 2026-02-22 18:36:03 +01:00
LICENSE chore: project skeleton — workspace root, license (EUPL-1.2), deny config 2026-02-22 18:36:03 +01:00