malt

package module
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2026 License: MIT Imports: 11 Imported by: 0

README

MALT

Go CI

MALT is a general, arc-granularity graph data-authentication system.

MALT keeps payload bytes in ordinary content-addressed storage (CAS) and uses vector-commitment (VC) backends to authenticate typed relations. Applications read and verify trusted root + typed query -> result without treating a Merkle-DAG block chain as the application proof path.

This repository is the MALT core specification implementation. It owns the verifier-facing semantics, ProofList behavior, root/query/result contracts, wire formats, reference runtime, and core benchmark/evaluation framework. The managed product gateway lives outside this repository.

Documentation · Architecture · Concepts · Threat Model · Compatibility · Evaluation · MIPs · v0.0.5 Release · Roadmap · Security · Contributing

MALT targets data whose relationships can be normalized into graph-shaped objects and arcs. Example workloads include verifiable local-first files, persistent agent memory, mutable manifests, and tamper-evident audit trails over Filecoin, IPFS, S3, local CAS, or another object store. UnixFS is the current first-party application model/profile built on the core; it is not part of the authentication kernel. Within UnixFS, flat and hierarchical are materialization layouts.

MALT authenticates arcs through list/map semantics, typed roots, VC proofs, and verifier-facing ProofLists. Immutable payload bytes keep ordinary CIDs. The daemon, gateway, cache, ArcTable, and other materialized indexes are untrusted execution state rather than correctness authorities.

MALT also makes verifiable reads work over ordinary HTTP(S): content routes can return the application result in the response body and carry proof evidence in X-Malt-ProofList, so clients verify root + path -> result without trusting the gateway or downloading the Merkle-DAG traversal chain.

For background on hashes, Merkle trees, Merkle DAGs, and MALT's data authentication model, see Data authentication background.

Status: Experimental reference implementation. Runnable end to end, not production-ready.

Why This Exists

Traditional Merkle-DAG traversal authenticates structure by embedding child links in parent blocks. That implicit arc couples payload serialization, relation authentication, and traversal/proof material at block granularity. A local relation change can therefore force rootward object rewrites.

MALT separates payload storage, arc authentication, and execution/access:

  • immutable payload content can remain ordinary CAS data
  • typed arcs are committed and proved by VC backends under independent roots
  • ArcTable, indexes, caches, daemons, and gateways may accelerate execution without entering the verifier trust boundary
  • list/map semantics define typed read and write operations
  • flat root + path lookups return dedicated, fixed-size ProofList evidence for each semantic lookup
  • content reads can return normal HTTP bodies plus X-Malt-ProofList headers
  • clients verify root + path -> result without trusting gateways, caches, or materialized indexes
  • clients submit canonical segment arrays without discovering how each root groups those segments into authenticated arcs
  • operation-specific resolve and primitive-read results carry ProofList evidence across gateway, executor, and SDK boundaries
  • local structure updates advance structure roots without rewriting unrelated payload objects

The claim is not that updates are free. MALT replaces Merkle-DAG object-chain proofs and implicit ancestor-rewrite cost with explicit, verifiable arc maintenance whose performance remains backend- and workload-dependent.

Repository Boundary

This repository owns:

  • MALT core semantics and verifier-facing contracts
  • root CID, ProofList, and wire-format documentation
  • reference CLI, execution backend, HTTP server, and local/mock CAS surfaces
  • component benchmarks, conformance tests, and end-to-end evaluation harnesses
  • implementation-bound MIPs and evaluator schemas

This repository does not own production managed-gateway behavior:

  • tenant isolation, identity providers, API keys, or authorization policy
  • root publication, latest-head, freshness, or multi-writer product policy
  • S3/Filecoin/IPFS production backend orchestration
  • quota, billing, pinning, garbage collection, abuse control, or operations

Those deployment and product concerns belong in the separate DeWebProtocol/gateway repository or private deployment overlays.

Current Architecture

flowchart TB
  client["Client: CLI / Web / SDK"] --> gateway["Gateway / execution API"]
  client --> localverify["sdk/verifier + portable auth kernel"]
  gateway --> executor["Untrusted executor"]
  executor --> semantics["Map / list proof and mutation execution"]
  executor --> arctable["ArcTable / KV / caches"]
  gateway --> cas["Immutable payload backend"]
  localverify --> decision["Accept relative to client-selected root"]
  core["MALT core contracts"] --> client
  core --> executor

The engine may produce a candidate result and proof, but only portable verification establishes correctness. ArcTable is reusable materialization, not a trust root. Payloads remain immutable CAS objects.

Current Status

MALT is an experimental reference implementation. It is runnable end to end, but its public APIs, ProofList schemas, wire formats, and deployment policies may change. It is not production-ready.

Current in-tree capabilities:

  • root-centric malt CLI for local reference-executor lifecycle, add, resolve, and local verification
  • reference/evaluation HTTP surface for explicit-root HTTP reads and writes
  • HTTP-native content reads for file bytes, directory JSON, and byte ranges, with proof evidence carried in X-Malt-ProofList
  • fixed-size proof material for flat root + path semantic lookups
  • UnixFS application model plus separate client planner and reference-runtime adapter over map/list semantics and CAS-backed immutable payloads
  • stateless commitment backends for semantic proof primitives
  • ArcTable-backed structure materialization with overwrite and versioned modes
  • malt-eval workloads for read queries, write traces, CAS models, proof overhead, and storage overhead

Current experimental boundaries:

  • no managed global head publication service
  • no multi-writer merge or freshness protocol
  • no tenant, quota, pinning, or garbage-collection policy
  • no production managed gateway or hosted service semantics
  • no stable public API compatibility guarantee yet
  • large-file byte-range response bodies must be bound to authenticated segment CIDs with sdk/unixfs.VerifyRangeBody after local ProofList verification

The v0.0.5 source release adds operation-specific malt.resolve/v0alpha1 and malt.read/v0alpha1 contracts, separates trusted client verification from untrusted resolve/read/apply execution, and splits the UnixFS application into model, client-SDK, and reference-runtime packages. The malt.artifact/v0alpha2 profile released by v0.0.4 remains frozen compatibility behavior. Integrators should pin the exact release and reject unknown profiles:

go get github.com/dewebprotocol/malt@v0.0.5

See the release notes, the artifact contract, and the GitHub Release.

New integrations use the operation-specific resolve/read contracts rather than extending the generic artifact union. Payload selection is an explicit @payload segment. See Resolve and read contracts.

Use Cases

Verifiable Agent Memory

Agents can update named memory, artifacts, checkpoints, and audit records while clients verify that resolved objects belong to an accepted structure root.

Local-First Files And Directories

Applications can model files and directories using authenticated map/list semantics while retaining immutable content-addressed payload blocks.

Mutable Manifests And Audit Trails

MALT can authenticate evolving manifests, registries, and ordered records without embedding every mutable relationship into payload object identity.

MALT is storage-backend independent. Filecoin, IPFS, S3, and local CAS systems provide payload storage; MALT provides authenticated mutable structure, resolution, and verification above those payload objects. MALT is not a replacement for Filecoin, IPFS, Kubo, S3, or a general-purpose object store.

Quick Start

Prerequisites:

  • Go 1.25.7 or newer
  • Git

Build the local binaries and optional browser verifier:

mkdir -p bin
go build -buildvcs=false -o bin/malt ./cmd/malt
go build -buildvcs=false -o bin/cas ./cmd/cas
go build -buildvcs=false -o bin/malt-eval ./cmd/eval/malt-eval
scripts/build-verifier-wasm.sh dist/verifier

Initialize the local runtime. The default configuration expects an external CAS at 127.0.0.1:4318 and a reference-executor API at 127.0.0.1:4317. For local development without a real IPFS node, start the standalone mock CAS server first:

bin/cas start

Then initialize and start the local reference executor. The retained malt start/status/stop spelling manages that backend process; it is not a client verification daemon:

bin/malt init --non-interactive
bin/malt start
bin/malt status

Add a file, resolve it, and verify the returned ProofList:

printf 'hello malt\n' >/tmp/malt-hello.txt
ROOT=$(bin/malt add /tmp/malt-hello.txt | awk '/Result root:/ {print $3}')
bin/malt resolve "$ROOT" malt-hello.txt >/tmp/malt-resolve.json
bin/malt verify --root "$ROOT" --query "malt-hello.txt" --prooflist /tmp/malt-resolve.json

This example stores file bytes through the configured local CAS, produces a MALT structure root, resolves a path relative to that root, and verifies the returned target and ProofList locally against the trusted root. malt verify does not call the reference executor.

Stop the managed reference executor when finished:

bin/malt stop

Developer Workflow

Run the full Go validation suite from the repository root:

go test ./...
go vet ./...

Inspect the command surfaces:

bin/malt --help
bin/malt-eval --help
bin/malt-eval schema

Run the local smoke evaluation plan:

bin/malt-eval run --plan examples/eval-smoke-plan.json --run-id smoke

The evaluator writes disposable workspace state under output/<run_id> and durable result artifacts under result/<run_id>. Those directories are ignored by git.

Core Model

MALT's current implementation is easiest to read through these layers:

Layer Role
Portable auth kernel Canonical arcs, typed roots, VC verification, and ProofList validation
Root malt facade ResolveRequest/ResolveResult, typed primitive read values, portable mutation aliases, and VerifyResolve/VerifyRead
Portable mutation contract Namespace-free mutation/delta/receipt values under mutation/
Semantic layer Abstract map/list arc read and mutation semantics
Execution package execution.Executor proof generation, mutation application, and operational scope; untrusted for correctness
ArcTable Optional namespace-scoped materialization outside the trust boundary
Application model Domain schema above typed arcs and immutable payloads; UnixFS is one model/profile

The verifier-facing shape is:

execution.Executor.Resolve(ResolveRequest{Root, Segments}) -> ResolveResult{Target, ProofList}
VerifyResolve(request, result) -> valid / invalid

execution.Executor.Read(ReadRequest{Root, Query}) -> ReadResult{Target, Segments, ProofList}
VerifyRead(request, result) -> valid / invalid

execution.Executor.Apply(semantic mutation with base root) -> result root + write receipt

list describes stable-indexed child references. map describes authenticated key-to-target relations. @payload is a reserved standard coordinate but is optional for generic maps; the UnixFS model requires it. Client adapters translate source-domain data into segments, typed queries, and semantic mutations without defining core semantics.

graph is not a separate semantic owner or node-interface hierarchy. In the current runtime it is a small composition boundary that wires resolver and writer ports over the list/map semantic APIs. Resolver traversal belongs to graph/resolver; mutation application belongs to graph/writer.

For a deeper implementation walkthrough, see ARCHITECTURE.md.

Repository Layout

cmd/malt/                      CLI/client and reference-executor lifecycle commands
cmd/malt-verifier-wasm/        browser-local portable verifier entrypoint
cmd/eval/                      malt-eval workloads, schemas, and helpers
api/http/                      reference transport request/response DTOs
auth/                          portable arc, commitment, proof, semantics, and verifier kernel
core.go, verify.go             module-root typed MALT verification facade
mutation/                      portable mutation and receipt contracts
execution/                     untrusted prover/mutation executor composition
graph/                         resolver and writer port definitions/adapters
model/unixfs/                  UnixFS model/profile, formats, and mutation plans
sdk/unixfs/                    client staging, materialization planning, and body verification
runtime/unixfs/                optional in-process UnixFS execution/content adapter
runtime/                       node, runtime graph composition, ArcTable, metrics
reference/executor/            all-in-one local reference execution backend
sdk/client/                    Go reference-executor transport client
sdk/verifier/                  local resolve/read and legacy artifact verifier
server/                        reference executor and evaluation HTTP server
storage/                       CAS and KV storage libraries
wire/maltcid/                  MALT map/list root CID codecs
docs/                          implementation docs: policy, evaluation, specs, and MIPs
examples/                      small runnable plans and examples

Evaluation

MALT's evaluator focuses on the core performance questions behind the project:

  • whether path lookup remains practical as logical depth grows
  • whether flat authenticated lookup scales with key count
  • whether real update traces avoid Merkle-DAG-style structural rewrite amplification

See docs/evaluation.md for the current benchmark suites and commands. Detailed paper tables and figure interpretation live in the research documents workspace.

Roadmap

The near-term roadmap is focused on stabilizing proof schemas, evaluator outputs, and the UnixFS application boundary before claiming production readiness. See ROADMAP.md.

Contributing

Contributions are welcome. Start with CONTRIBUTING.md, keep changes small, and include focused tests for behavior changes.

Please report security issues through the private process in SECURITY.md, not through public issues.

License

MALT is released under the MIT License.

Documentation

Overview

Package malt exposes the application-neutral MALT core facade.

The facade is intentionally small. Client/application adapters translate domain operations into typed map/list queries and semantic mutations, while runtime state placement, ArcTable namespaces, HTTP transport, and payload CAS access remain outside the caller-visible contract.

Index

Constants

View Source
const PathSeparator = "/"

PathSeparator is the canonical textual separator for MALT segment paths. Transports may carry segments without using this textual projection.

Variables

View Source
var (
	// ErrInvalidQuery is returned when a typed query is incomplete or malformed.
	ErrInvalidQuery = errors.New("invalid MALT query")
	// ErrQueryNotFound is returned when a query has no authenticated target.
	ErrQueryNotFound = errors.New("MALT query target not found")
	// ErrVerifierRejected is returned when proof verification returns false.
	ErrVerifierRejected = errors.New("MALT verifier rejected read result")
)

Functions

func IsQueryNotFound

func IsQueryNotFound(err error) bool

IsQueryNotFound reports whether err represents an unauthenticated or absent query target.

func VerifyRead

func VerifyRead(ctx context.Context, req ReadRequest, result ReadResult, verifier ProofVerifier) error

VerifyRead validates the complete verifier-facing read contract.

func VerifyResolve added in v0.0.5

func VerifyResolve(ctx context.Context, req ResolveRequest, result ResolveResult, verifier ProofVerifier) error

VerifyResolve validates a complete path-resolution result against the caller-selected root and segment sequence. ProofList is evidence for the result, not the source of the caller's trust inputs.

Types

type Mutation

type Mutation = mutation.SemanticMutation

Mutation is the portable semantic mutation contract. Runtime state placement and publication policy are deliberately absent.

type ProofVerifier

type ProofVerifier interface {
	VerifyProofList(context.Context, prooflist.ProofList) (bool, error)
}

ProofVerifier is the portable verifier surface consumed by clients. An implementation must not require ArcTable, CAS, server, or executor state.

type Query

type Query struct {
	Kind  QueryKind
	Key   arcset.Path
	Index uint64
	Start uint64
	End   *uint64
}

Query is a single typed arc query. Multi-step application traversal is composed by clients/application adapters from these primitive operations.

func ListIndexQuery

func ListIndexQuery(index uint64) Query

ListIndexQuery creates a stable-indexed list query.

func ListRangeQuery

func ListRangeQuery(start uint64, end *uint64) (Query, error)

ListRangeQuery creates a measured-list range query over [start, end). A nil end means the authenticated total size.

func MapKeyQuery

func MapKeyQuery(rawKey string) (Query, error)

MapKeyQuery creates an exact keyed-map query.

func (Query) String

func (q Query) String() string

String returns the current v0alpha1 query label used in ProofList evidence.

func (Query) Validate

func (q Query) Validate() error

Validate checks the typed query contract.

type QueryKind

type QueryKind string

QueryKind identifies one application-neutral semantic query.

const (
	// QueryMapKey authenticates one keyed map relation.
	QueryMapKey QueryKind = "map_key"
	// QueryListIndex authenticates one stable list index.
	QueryListIndex QueryKind = "list_index"
	// QueryListRange authenticates one measured-list byte range.
	QueryListRange QueryKind = "list_range"
)

type ReadRequest

type ReadRequest struct {
	Root  cid.Cid
	Query Query
}

ReadRequest binds a typed query to a caller-supplied trusted root.

type ReadResult

type ReadResult struct {
	Target    cid.Cid
	Segments  []cid.Cid
	ProofList prooflist.ProofList
}

ReadResult is the verifier-facing result of one typed query. Target is the authenticated relation target. Segments is populated only for measured-list ranges and remains ordered as authenticated by ProofList.

type Reader

type Reader interface {
	Read(context.Context, ReadRequest) (ReadResult, error)
}

Reader is the application-neutral root-relative read port.

type ResolveRequest added in v0.0.5

type ResolveRequest struct {
	Root     cid.Cid
	Segments []string
}

ResolveRequest binds one canonical segment path to a caller-supplied trusted root. Applications append reserved coordinates such as @payload explicitly; an empty segment sequence always denotes root identity.

func (ResolveRequest) Validate added in v0.0.5

func (r ResolveRequest) Validate() error

Validate checks the transport-neutral resolution request.

type ResolveResult added in v0.0.5

type ResolveResult struct {
	Target    cid.Cid
	ProofList prooflist.ProofList
}

ResolveResult is the authenticated target plus the ordered evidence for one complete segment-path derivation.

type Resolver added in v0.0.5

type Resolver interface {
	Resolve(context.Context, ResolveRequest) (ResolveResult, error)
}

Resolver is the application-neutral path-resolution port. Implementations execute against untrusted runtime state; clients call VerifyResolve before accepting the returned target.

type SegmentPath added in v0.0.4

type SegmentPath struct {
	// contains filtered or unexported fields
}

SegmentPath is an immutable application-neutral sequence of MALT path segments. Applications and transports decide how their own path syntax maps to segments; MALT owns the canonical segment-to-arc projection.

func NewSegmentPath added in v0.0.4

func NewSegmentPath(segments []string) (SegmentPath, error)

NewSegmentPath validates and clones a segment sequence. Segments are non-empty UTF-8 strings and must not contain the canonical separator.

func ParseSegmentPath added in v0.0.4

func ParseSegmentPath(raw string) (SegmentPath, error)

ParseSegmentPath parses the canonical textual projection used by the reference slash-path adapters. The empty string denotes the root path.

func (SegmentPath) Consume added in v0.0.4

func (p SegmentPath) Consume(prefix SegmentPath) (SegmentPath, bool)

Consume removes a segment-aligned prefix.

func (SegmentPath) Empty added in v0.0.4

func (p SegmentPath) Empty() bool

Empty reports whether the path denotes the caller-supplied root.

func (SegmentPath) HasPrefix added in v0.0.4

func (p SegmentPath) HasPrefix(prefix SegmentPath) bool

HasPrefix reports whether prefix is a segment-aligned prefix of p.

func (SegmentPath) Segments added in v0.0.4

func (p SegmentPath) Segments() []string

Segments returns a cloned segment slice.

func (SegmentPath) String added in v0.0.4

func (p SegmentPath) String() string

String returns the canonical textual projection.

type WriteResult

type WriteResult = mutation.WriteReceipt

WriteResult is the current v0alpha1 result-root receipt.

Directories

Path Synopsis
api
http
Locked path stat/content HTTP semantics.
Locked path stat/content HTTP semantics.
Package artifact implements the frozen malt.artifact/v0alpha2 compatibility profile published by MALT v0.0.4.
Package artifact implements the frozen malt.artifact/v0alpha2 compatibility profile published by MALT v0.0.4.
auth
arcset
Package arcset defines interfaces for arc set views.
Package arcset defines interfaces for arc set views.
commitment
Package commitment defines cryptographic commitment interfaces.
Package commitment defines cryptographic commitment interfaces.
commitment/ipa
Package ipa provides an IPA (Inner Product Argument) commitment backend.
Package ipa provides an IPA (Inner Product Argument) commitment backend.
commitment/kzg
Package kzg provides a KZG polynomial commitment backend.
Package kzg provides a KZG polynomial commitment backend.
proof/evidence
Package evidence defines the Evidence interface and its implementations.
Package evidence defines the Evidence interface and its implementations.
proof/prooflist
Package prooflist defines the verifier-facing read proof transcript shape.
Package prooflist defines the verifier-facing read proof transcript shape.
semantic
Package structure defines the public structural semantics layer for MALT.
Package structure defines the public structural semantics layer for MALT.
semantic/list
Package list defines the public stable-indexed list semantic for MALT.
Package list defines the public stable-indexed list semantic for MALT.
semantic/mapping
Package mapping defines the public keyed-map semantic for MALT.
Package mapping defines the public keyed-map semantic for MALT.
verifier
Package verifier contains verifier-critical helpers for ProofList evidence.
Package verifier contains verifier-critical helpers for ProofList evidence.
cmd
cas command
Command cas starts a standalone mock CAS HTTP server.
Command cas starts a standalone mock CAS HTTP server.
eval/command
Package command assembles the unified MALT evaluation CLI.
Package command assembles the unified MALT evaluation CLI.
eval/helper/adapters/hamt
Package hamt configures the IPLD UnixFS HAMT baseline adapter.
Package hamt configures the IPLD UnixFS HAMT baseline adapter.
eval/helper/adapters/maltflat
Package maltflat replays Git mutations into a flat MALT path-to-blob map.
Package maltflat replays Git mutations into a flat MALT path-to-blob map.
eval/helper/adapters/merkledag
Package merkledag replays Git snapshots into IPLD UnixFS Merkle DAGs.
Package merkledag replays Git snapshots into IPLD UnixFS Merkle DAGs.
eval/helper/evalcas
Package evalcas provides eval-specific CAS instances with precise, jitter-free latency.
Package evalcas provides eval-specific CAS instances with precise, jitter-free latency.
eval/helper/evalmetrics
Package evalmetrics provides daemon evaluation metrics commands.
Package evalmetrics provides daemon evaluation metrics commands.
eval/helper/evalread
Package evalread provides the read-latency evaluation command.
Package evalread provides the read-latency evaluation command.
eval/helper/evalrun
Package evalrun provides evaluation plan runner commands.
Package evalrun provides evaluation plan runner commands.
eval/helper/evalschema
Package evalschema exposes evaluator JSON schemas through the CLI.
Package evalschema exposes evaluator JSON schemas through the CLI.
eval/helper/evalsuites
Package evalsuites assembles the suite registry used by malt-eval run.
Package evalsuites assembles the suite registry used by malt-eval run.
eval/helper/evalsummary
Package evalsummary provides the evaluation summary command.
Package evalsummary provides the evaluation summary command.
eval/helper/evalwrite
Package evalwrite provides the Git trace write-amplification evaluation command.
Package evalwrite provides the Git trace write-amplification evaluation command.
eval/helper/git
Package git extracts deterministic commit-mutation traces from Git repos.
Package git extracts deterministic commit-mutation traces from Git repos.
eval/helper/replay
Package replay defines write-amplification replay contracts and JSONL output.
Package replay defines write-amplification replay contracts and JSONL output.
eval/helper/store
Package store provides per-system evaluation storage and write accounting.
Package store provides per-system evaluation storage and write accounting.
eval/internal/baseline/indexedmap
Package indexedmap implements the canonical-path ordered baseline map semantic for eval comparison.
Package indexedmap implements the canonical-path ordered baseline map semantic for eval comparison.
eval/internal/compat/hamt
Package hamt implements the Step interface for HAMT (Hash Array Mapped Trie).
Package hamt implements the Step interface for HAMT (Hash Array Mapped Trie).
eval/internal/compat/implicit
Package implicit implements the Step interface for Merkle-DAG traversal.
Package implicit implements the Step interface for Merkle-DAG traversal.
eval/internal/compat/implicit/codec
Package codec defines the IPLD codec interface for parsing blocks and extracting links.
Package codec defines the IPLD codec interface for parsing blocks and extracting links.
eval/internal/compat/implicit/dagcbor
Package dagcbor implements the dag-cbor IPLD codec.
Package dagcbor implements the dag-cbor IPLD codec.
eval/internal/compat/implicit/dagjson
Package dagjson implements the dag-json IPLD codec.
Package dagjson implements the dag-json IPLD codec.
eval/internal/compat/implicit/dagpb
Package dagpb implements the dag-pb (Protocol Buffers) IPLD codec.
Package dagpb implements the dag-pb (Protocol Buffers) IPLD codec.
eval/internal/eval/readbench
Package readbench provides read benchmark runners for MALT and IPLD UnixFS baselines.
Package readbench provides read benchmark runners for MALT and IPLD UnixFS baselines.
eval/internal/eval/suites/casmodel
Package casmodel measures the local CAS mock under fixed latency models.
Package casmodel measures the local CAS mock under fixed latency models.
eval/internal/eval/suites/configjson
Package configjson decodes evaluation suite config JSON consistently.
Package configjson decodes evaluation suite config JSON consistently.
eval/internal/eval/suites/flatindexcardinality
Package flatindexcardinality runs flat full-path index benchmarks across MALT flat authenticated arcs and IPFS/Boxo HAMT keyed by complete logical paths.
Package flatindexcardinality runs flat full-path index benchmarks across MALT flat authenticated arcs and IPFS/Boxo HAMT keyed by complete logical paths.
eval/internal/eval/suites/proofoverhead
Package proofoverhead measures local commit/prove/verify costs for semantic structures.
Package proofoverhead measures local commit/prove/verify costs for semantic structures.
eval/internal/eval/suites/readdepthsweep
Package readdepthsweep measures resolve latency across different directory depths.
Package readdepthsweep measures resolve latency across different directory depths.
eval/internal/eval/suites/readlatencysweep
Package readlatencysweep measures resolve latency across different CAS latency values.
Package readlatencysweep measures resolve latency across different CAS latency values.
eval/internal/eval/suites/readmatrix
Package readmatrix runs fair resolve-path benchmarks across flat MALT, UnixFS Merkle DAG, UnixFS HAMT directories, and flat full-path HAMT using one shared logical source dataset.
Package readmatrix runs fair resolve-path benchmarks across flat MALT, UnixFS Merkle DAG, UnixFS HAMT directories, and flat full-path HAMT using one shared logical source dataset.
eval/internal/eval/suites/readquery
Package readquery adapts the read benchmark runner to the evaluation framework.
Package readquery adapts the read benchmark runner to the evaluation framework.
eval/internal/eval/suites/storageoverhead
Package storageoverhead measures persisted and logical storage overhead.
Package storageoverhead measures persisted and logical storage overhead.
eval/internal/eval/suites/writetrace
Package writetrace runs Git write-trace replay as an eval framework suite.
Package writetrace runs Git write-trace replay as an eval framework suite.
eval/internal/eval/summary
Package summary converts framework raw result envelopes into figure CSVs.
Package summary converts framework raw result envelopes into figure CSVs.
eval/malt-eval command
Package main provides the unified MALT evaluation CLI.
Package main provides the unified MALT evaluation CLI.
eval/schemas
Package schemas embeds the evaluator JSON schemas for installed binaries.
Package schemas embeds the evaluator JSON schemas for installed binaries.
internal/merkledagimport
Package merkledagimport imports local UnixFS data into an IPFS-style Merkle DAG.
Package merkledagimport imports local UnixFS data into an IPFS-style Merkle DAG.
malt command
Package main provides the primary MALT CLI.
Package main provides the primary MALT CLI.
Package config provides configuration loading and persistence for MALT.
Package config provides configuration loading and persistence for MALT.
Package daemon manages the operating-system lifecycle of the local reference executor process.
Package daemon manages the operating-system lifecycle of the local reference executor process.
Package execution composes untrusted map/list provers and mutation appliers.
Package execution composes untrusted map/list provers and mutation appliers.
querypath
Package querypath implements locked path canonicalization for stat and content APIs.
Package querypath implements locked path canonicalization for stat and content APIs.
resolver
Package resolver implements the MALT explicit-arc resolution loop with prefix consumption.
Package resolver implements the MALT explicit-arc resolution loop with prefix consumption.
resolver/step
Package step defines the Step interface for single-step resolution.
Package step defines the Step interface for single-step resolution.
resolver/step/explicit
Package explicit implements the Step interface for MALT explicit arcs.
Package explicit implements the Step interface for MALT explicit arcs.
verifier
Package verifier preserves the graph-runtime verifier constructor while delegating proof checks to the portable authentication kernel.
Package verifier preserves the graph-runtime verifier constructor while delegating proof checks to the portable authentication kernel.
writer
Package writer implements graph semantic mutations.
Package writer implements graph semantic mutations.
Package logger provides a structured logging interface for MALT.
Package logger provides a structured logging interface for MALT.
model
unixfs
Package unixfs defines the MALT UnixFS application model/profile.
Package unixfs defines the MALT UnixFS application model/profile.
unixfs/internal/format
Package format defines UnixFS application-model format constants.
Package format defines UnixFS application-model format constants.
unixfs/internal/manifest
Package manifest implements the locked directory manifest JSON used by the UnixFS application model.
Package manifest implements the locked directory manifest JSON used by the UnixFS application model.
Package mutation defines the application-neutral MALT mutation and receipt contracts.
Package mutation defines the application-neutral MALT mutation and receipt contracts.
Package protocol defines the versioned, transport-neutral serialized MALT resolve and read contracts.
Package protocol defines the versioned, transport-neutral serialized MALT resolve and read contracts.
reference
executor
Package executor hosts the all-in-one reference MALT execution backend.
Package executor hosts the all-in-one reference MALT execution backend.
runtime
arctable
Package arctable defines the Explicit Arc Table interface and implementations.
Package arctable defines the Explicit Arc Table interface and implementations.
arctable/bloom
Package bloom provides Bloom Filter implementations for ArcTable.
Package bloom provides Bloom Filter implementations for ArcTable.
arctable/overwrite
Package overwrite provides an ArcTable implementation with overwrite semantics.
Package overwrite provides an ArcTable implementation with overwrite semantics.
arctable/versioned
Package versioned provides a versioned ArcTable implementation using a KVStore.
Package versioned provides a versioned ArcTable implementation using a KVStore.
graph
Package runtimegraph provides concrete graph lifecycle management for MALT.
Package runtimegraph provides concrete graph lifecycle management for MALT.
node
Package node provides the application-level API for MALT.
Package node provides the application-level API for MALT.
semantic/list/tree
Package tree implements the stable-indexed list semantic using a tree-shaped fixed-slot layout.
Package tree implements the stable-indexed list semantic using a tree-shaped fixed-slot layout.
semantic/mapping/radix
Package radix implements a digest-keyed radix-map semantic above the primitive index commitment backends.
Package radix implements a digest-keyed radix-map semantic above the primitive index commitment backends.
unixfs
Package unixfs implements the reference execution adapter for the MALT UnixFS application model on top of map and list structural semantics.
Package unixfs implements the reference execution adapter for the MALT UnixFS application model on top of map and list structural semantics.
sdk
client
Package client provides a thin HTTP client for the MALT reference executor.
Package client provides a thin HTTP client for the MALT reference executor.
unixfs
Package unixfs provides client-side UnixFS planning and verification helpers.
Package unixfs provides client-side UnixFS planning and verification helpers.
verifier
Package verifier provides the client-side MALT verification facade.
Package verifier provides the client-side MALT verification facade.
Package server provides the MALT reference-executor HTTP API.
Package server provides the MALT reference-executor HTTP API.
storage
cas
Package cas provides Content Addressable Storage clients.
Package cas provides Content Addressable Storage clients.
cas/ipfs
Package ipfs provides a CAS client that communicates with a local IPFS daemon via its API, supporting both read and write operations.
Package ipfs provides a CAS client that communicates with a local IPFS daemon via its API, supporting both read and write operations.
cas/mock
Package mock provides a mock CAS implementation for testing.
Package mock provides a mock CAS implementation for testing.
kv
Package kvstore defines a key-value store interface for MALT.
Package kvstore defines a key-value store interface for MALT.
kv/badger
Package badger provides a BadgerDB implementation of kvstore.KVStore.
Package badger provides a BadgerDB implementation of kvstore.KVStore.
kv/fs
Package fs provides a filesystem-based implementation of kvstore.KVStore.
Package fs provides a filesystem-based implementation of kvstore.KVStore.
kv/memory
Package memory provides an in-memory implementation of kvstore.KVStore.
Package memory provides an in-memory implementation of kvstore.KVStore.
kv/prefix
Package prefix provides a KVStore view that transparently prefixes keys.
Package prefix provides a KVStore view that transparently prefixes keys.
wire
maltcid
Package maltcid defines MALT-specific multicodec constants and CID utilities.
Package maltcid defines MALT-specific multicodec constants and CID utilities.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL