Skip to content

Provably reversible file operations through maximal principle reduction - data loss architecturally impossible

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.txt
Notifications You must be signed in to change notification settings

hyperpolymath/januskey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

JanusKey

MPL-2.0 Palimpsest

Jonathan D.A. Jewell <jonathan.jewell@gmail.com> :toc: macro :icons: font :source-highlighter: rouge :experimental: :url-github: https://github.com/hyperpolymath/januskey :url-gitlab: https://gitlab.com/hyperpolymath/januskey :url-bitbucket: https://bitbucket.org/hyperpolymath/januskey :url-codeberg: https://codeberg.org/hyperpolymath/januskey

Provably Reversible File Operations Through Maximal Principle Reduction

RSR Certified

Overview

JanusKey is a file operation utility suite that achieves complete reversibility through architectural design rather than logging or backups. Unlike traditional backup systems that restore from external state, JanusKey operations carry sufficient information for perfect inversion—making data loss architecturally impossible.

Key Features

  • 100% Reversible - Every operation can be undone, always

  • Instant Rollback - Undo changes in milliseconds

  • Data Loss Impossible - Not "unlikely"—architecturally impossible

  • Complete Audit Trail - Every change tracked automatically

  • Transaction Support - Group operations, commit/rollback together

  • Content-Addressed Storage - SHA256 hashing with deduplication

Quick Start

# Build from source (requires Rust)
cd src/januskey
cargo build --release

# Initialize JanusKey in your project
jk init

# Delete files (reversible)
jk delete *.log

# Undo the delete
jk undo

# Transactions for batch operations
jk begin
jk delete temp*.txt
jk modify "s/DEBUG/INFO/g" config.yaml
jk preview   # Review changes
jk commit    # Or: jk rollback

Commands

Command Description

jk init

Initialize JanusKey in current directory

jk delete <files>

Delete files (reversible)

jk modify <pattern> <files>

Modify files with sed-like syntax

jk move <src> <dst>

Move/rename files

jk copy <src> <dst>

Copy files

jk undo [--count N]

Undo last operation(s)

jk begin [name]

Start a transaction

jk commit

Commit current transaction

jk rollback

Rollback current transaction

jk preview

Preview pending changes

jk history

Show operation history

jk status

Show current status

Architecture

JanusKey implements Maximal Principle Reduction (MPR), a security methodology where vulnerability elimination occurs by construction rather than verification.

+----------------------------+
|       JanusKey CLI         |  <-- jk delete, jk modify, jk move
+----------------------------+
|      Operation Layer       |  <-- Generates inverse metadata
+----------------------------+
|    Transaction Manager     |  <-- Groups ops, commit/rollback
+----------------------------+
|      Metadata Store        |  <-- Append-only operation log
+----------------------------+
| Content-Addressed Storage  |  <-- SHA256, deduplication
+----------------------------+

Reversibility Guarantee

Every operation stores sufficient metadata for perfect inversion:

  • Delete: Stores full content + metadata for restoration

  • Modify: Stores original content hash for rollback

  • Move: Stores original path for unmove

  • Copy: Destination path for deletion

Installation

From Source (Rust)

# Clone the repository
git clone {url-github}
cd januskey/src/januskey

# Build release binary
cargo build --release

# Install to PATH
cargo install --path .

Mirrors

Platform URL

GitHub (primary)

{url-github}

GitLab

{url-gitlab}

Bitbucket

{url-bitbucket}

Codeberg

{url-codeberg}

License

Licensed under MIT OR AGPL-3.0-or-later.

See LICENSE.txt for details.

Contributing

Research

JanusKey is based on research into provably reversible computing and Maximal Principle Reduction. See the white paper in docs/ for formal proofs and theoretical foundations.

Metadata

  • Domain: software-development

  • Framework: RSR (Rhodium Standard Repository)

  • Language: Rust

  • Dublin Core: .well-known/dc.xml

Sponsor this project

Packages

No packages published

Contributors 3

  •  
  •  
  •