Skip to content

hyperpolymath/obli-transpiler-framework

Repository files navigation

obli-transpiler-framework

A framework for building oblivious program transpilers.

Important

Project Status: Infrastructure Only

This repository currently contains project infrastructure and CI/CD automation only.
The transpiler specification and implementation are forthcoming.

Overview

The obli-transpiler-framework is designed to provide tooling for transforming programs into oblivious variants - programs whose execution paths are independent of secret or private data. This is a foundational technique for:

  • Privacy-preserving computation

  • Cryptographic protocol implementation

  • Side-channel attack mitigation

  • Secure multi-party computation

Current State

Component Status

Infrastructure

Complete - CI/CD, policy enforcement, multi-forge sync

Specification

Pending - will be uploaded shortly

Core Implementation

Not started

Documentation

Minimal - this README and citation guide only

What Exists Now

obli-transpiler-framework/
├── .claude/CLAUDE.md        # Language policy (Hyperpolymath Standard)
├── .github/
│   └── workflows/           # 12 CI/CD workflows
│       ├── codeql.yml           # Security scanning
│       ├── rsr-antipattern.yml  # TypeScript/Go/npm blocking
│       ├── security-policy.yml  # MD5/SHA1/HTTP checks
│       ├── instant-sync.yml     # Multi-forge propagation
│       └── ...
├── docs/
│   └── CITATIONS.adoc       # Academic citation formats
├── justfile                 # Task runner (build/test/lint TODO)
├── LICENSE.txt              # MIT OR AGPL-3.0-or-later
└── README.adoc              # This file

What Does NOT Exist Yet

  • Source code for transpilation logic

  • Language frontend parsers

  • IR (Intermediate Representation) definitions

  • Obliviousness transformation passes

  • Target language backends

  • Test suites

  • Usage examples

Planned Architecture

The following is a placeholder for the planned architecture. Full specification pending.

                    ┌─────────────────────────────────────────┐
                    │        obli-transpiler-framework        │
                    └─────────────────────────────────────────┘
                                        │
        ┌───────────────────────────────┼───────────────────────────────┐
        │                               │                               │
        ▼                               ▼                               ▼
   ┌─────────┐                   ┌─────────────┐                 ┌──────────┐
   │ Frontend│                   │  Core IR &  │                 │ Backend  │
   │ Parsers │                   │ Transforms  │                 │ Emitters │
   └─────────┘                   └─────────────┘                 └──────────┘
        │                               │                               │
   Source Code              Obliviousness Passes               Target Code

Language Policy

This project adheres to the Hyperpolymath Standard for language selection:

Allowed Banned Notes

ReScript

TypeScript

Primary application language

Deno

Node/npm/Bun

Runtime and package management

Rust

Go

Performance-critical code

Gleam

-

Backend services (BEAM/JS)

Guile Scheme

-

Configuration/metadata

See CLAUDE.md for the complete policy.

Development

Prerequisites

Available Tasks

just          # List all available tasks
just build    # Build (TODO)
just test     # Test (TODO)
just fmt      # Format (TODO)
just lint     # Lint (TODO)

Roadmap

See ROADMAP.adoc for the development roadmap.

License

Dual-licensed under your choice of:

  • MIT License - Permissive, maximum flexibility

  • AGPL-3.0-or-later - Copyleft, network service source disclosure

See LICENSE.txt for details.

The project also encourages (non-binding) adherence to the Palimpsest License principles for consent-based digital interaction.

Citation

See docs/CITATIONS.adoc for academic citation formats (BibTeX, Harvard, APA, OSCOLA, MLA).

Contributing

Contributions welcome once the specification is published. Until then, this repository serves as infrastructure scaffolding following Rhodium Standard Repository conventions.

About

Oblivious program transpiler framework

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages