No description
  • Rust 75.9%
  • Idris 11.8%
  • Shell 3.9%
  • Zig 3.1%
  • Scheme 2.2%
  • Other 3.1%
Find a file
2026-04-04 20:33:11 +01:00
.claude chore: update manifest paths to .machine_readable/6a2/ 2026-03-16 14:42:08 +00:00
.github ci: deploy dogfood-gate, add Groove manifest, K9 contracts, CRG tests 2026-04-04 15:24:32 +01:00
.hypatia chore: sync local changes 2026-03-14 12:03:18 +00:00
.machine_readable CRG blitz D→C: comprehensive test coverage for januskey 2026-04-04 02:27:24 +01:00
.well-known chore: deploy UX infrastructure (contractile.just, .well-known, manifest) 2026-03-28 23:57:09 +00:00
benches CRG blitz D→C: comprehensive test coverage for januskey 2026-04-04 02:27:24 +01:00
contractiles chore: add k9 Kennel guard for security invariants 2026-04-04 17:17:07 +01:00
crates CRG blitz D→C: comprehensive test coverage for januskey 2026-04-04 02:27:24 +01:00
docs docs: add M2 estate audit report (2026-04-04) 2026-04-04 18:33:44 +01:00
ffi/zig feat: add Zig FFI implementation + C header + integration tests 2026-03-30 13:12:47 +01:00
generated/idrisiser feat: add idrisiser Idris2 proof wrappers for JanusKey cryptographic core 2026-04-04 17:11:47 +01:00
hooks Fix SPDX headers: AGPL-3.0-or-later → PMPL-1.0-or-later 2026-03-16 00:31:38 +00:00
idrisiser feat: add idrisiser Idris2 proof wrappers for JanusKey cryptographic core 2026-04-04 17:11:47 +01:00
LICENSES Standardise license setup: MPL-2.0 + PMPL-1.0-or-later (REUSE) 2026-03-11 02:56:27 +00:00
src feat: complete Idris2 ABI — Foreign.idr + Proofs.idr 2026-03-30 13:11:02 +01:00
tests feat: blitz — wire all tests, add property-based + regression, fix benchmarks, READINESS.md 2026-04-03 17:10:58 +01:00
.editorconfig Initial commit (converted from SHA-256) 2025-12-11 00:32:00 +00:00
.gitattributes fix(license): SPDX AGPL-3.0 → PMPL-1.0-or-later in dotfiles 2026-03-15 11:24:03 +00:00
.gitignore fix(license): SPDX AGPL-3.0 → PMPL-1.0-or-later in dotfiles 2026-03-15 11:24:03 +00:00
.gitlab-ci.yml Initial commit (converted from SHA-256) 2025-12-11 00:32:00 +00:00
.nojekyll chore: Add RSR policy enforcement workflows 2025-12-12 16:22:31 +00:00
.tool-versions chore: add gitignore, gitattributes, tool-versions 2026-03-28 09:13:33 +00:00
0-AI-MANIFEST.a2ml chore: update manifest paths to .machine_readable/6a2/ 2026-03-16 14:42:08 +00:00
0001-Add-A2ML-and-K9-MIME-types.patch CRG blitz D→C: comprehensive test coverage for januskey 2026-04-04 02:27:24 +01:00
ARCHITECTURE.md docs: add ARCHITECTURE.md — reversibility stack junction point 2026-03-21 14:37:28 +00:00
Cargo.lock feat: blitz — wire all tests, add property-based + regression, fix benchmarks, READINESS.md 2026-04-03 17:10:58 +01:00
Cargo.toml feat: blitz — wire all tests, add property-based + regression, fix benchmarks, READINESS.md 2026-04-03 17:10:58 +01:00
CODE_OF_CONDUCT.md Fix SPDX headers: AGPL-3.0-or-later → PMPL-1.0-or-later 2026-03-16 00:31:38 +00:00
contractile.just chore: deploy UX infrastructure (contractile.just, .well-known, manifest) 2026-03-28 23:57:09 +00:00
CONTRIBUTING.md Replace RSR template placeholders with actual values 2026-03-16 00:20:08 +00:00
draft-hyperpolymath-maa-framework-00.txt Initial commit (converted from SHA-256) 2025-12-11 00:32:00 +00:00
EXPLAINME.adoc docs: substantive CRG C annotation (EXPLAINME.adoc) 2026-04-04 12:00:51 +01:00
flake.nix feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
guix.scm feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
idrisiser.toml feat: add idrisiser Idris2 proof wrappers for JanusKey cryptographic core 2026-04-04 17:11:47 +01:00
Justfile feat(crg): add crg-grade and crg-badge justfile recipes 2026-04-04 20:33:11 +01:00
k9iser.toml chore: add k9iser.toml (Batch 2A) 2026-04-04 16:14:16 +01:00
LICENSE chore: RSR compliance — fix author attribution, replace AGPL with PMPL-1.0-or-later, add SPDX headers to LICENSE 2026-03-14 15:54:37 +00:00
LICENSE.txt chore: commit local changes for sync 2026-01-22 19:13:11 +00:00
llm-warmup-dev.md feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
llm-warmup-user.md feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
MAINTAINERS.adoc chore: sync 2026-02-01 01:43:46 +00:00
Mustfile Fix SPDX headers: AGPL-3.0-or-later → PMPL-1.0-or-later 2026-03-16 00:31:38 +00:00
NOTICE Standardise license setup: MPL-2.0 + PMPL-1.0-or-later (REUSE) 2026-03-11 02:56:27 +00:00
PALIMPSEST.adoc chore: sync 2026-02-01 01:43:46 +00:00
PROOF-NEEDS.md fix: correct 'Provably Reversible' claim — proofs are pending, not done 2026-03-30 09:59:32 +01:00
QUICKSTART-DEV.adoc feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
QUICKSTART-MAINTAINER.adoc feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
QUICKSTART-USER.adoc feat: deploy UX Manifesto infrastructure 2026-03-28 08:27:52 +00:00
READINESS.md feat(crg): add Current Grade badge anchor to READINESS.md 2026-04-04 20:13:32 +01:00
README.adoc fix: correct 'Provably Reversible' claim — proofs are pending, not done 2026-03-30 09:59:32 +01:00
ROADMAP.adoc chore: sync 2026-02-01 01:43:46 +00:00
SECURITY.md fix: resolve OpenSSF Scorecard security issues 2025-12-13 13:33:37 +00:00
setup.sh fix: quote $$ and use printf in setup.sh 2026-03-30 13:16:45 +01:00
stapeln.toml feat: add stapeln.toml container definition 2026-03-29 13:46:22 +01:00
TEST-NEEDS.md ci: deploy dogfood-gate, add Groove manifest, K9 contracts, CRG tests 2026-04-04 15:24:32 +01:00
TESTING-REPORT.adoc chore: sync 2026-02-01 01:43:46 +00:00
TESTING-REPORT.scm chore: sync 2026-02-01 01:43:46 +00:00
TOPOLOGY.md Auto-commit: Sync changes [2026-02-21] 2026-02-21 14:22:43 +00:00

JanusKey

License: PMPL-1.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

Reversible File Operations (formal proofs pending) 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 PMPL-1.0-or-later.

See LICENSE.txt for details.

Contributing

Research

JanusKey is based on research into reversible computing (formal proofs are a target, not yet complete) 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

Architecture

See TOPOLOGY.md for a visual architecture map and completion dashboard.