Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# Changelog

## 0.3.0a0 — unreleased

- Add bounded binary views and an identity-keyed shared store for transition, pair,
tabular, trace, graph, and composite diagnostic snapshots.
- Add an explicit MNEL-side Forge lifecycle surface: verifier registry and declarations,
preconditions, bounded probe requests, diagnostic-only witnesses, reference verifiers,
registered mutations, independent comparison, health/quarantine, coverage, learned
observation events, and omitted-question candidates.
- Add a deterministic `mnel forge-reference` study path and lifecycle schema. This is a
local diagnostic reference surface, not an implementation of external Forge authority.

## 0.2.0a0 — unreleased

- Add backend-neutral CPU, full-CUDA, and sequential CPU offload placement policy with
Expand Down
22 changes: 20 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,15 @@ experience, negative memory, causal attribution, transfer-gated principles, reus
strategies, and append-only candidate lineage rather than relying exclusively on
conventional neural-weight training.

> **Current status:** functional `0.2.0a0` iteration. The repository now includes a
> **Current status:** functional `0.3.0a0` iteration. The repository now includes a
> backend-neutral accelerator placement policy, optional Torch/Accelerate adapter,
> process-local persistent Rust host, reusable identity-bound snapshots, bounded and
> normalized diagnostic results, failure quarantine, an executable Rust HMM baseline,
> deterministic runtime measurements, and bounded investigator context/workspace
> contracts, an executable local-harness/worktree path, and a validated Rust v1 dynamic
> provider loader. It still does not provide process isolation,
> provider loader, and an executable bounded Forge-oriented diagnostic lifecycle with
> compact snapshot views, a verifier registry, reference probes, witnesses, mutations,
> comparison, health, coverage, and omitted-question candidates. It still does not provide process isolation,
> unattended model execution, distributed scheduling, protected final custody, formal
> MNCS/MNCDS conformance, or automatic RAVEL promotion.

Expand Down Expand Up @@ -104,6 +106,14 @@ copy their authority or silently create substitute implementations.
integration through the existing provider host;
- initial immutable transition, tabular, and pair diagnostic snapshot producers with
compact binary payloads and dependency-bound content identities;
- bounded transition, pair, tabular, trace, graph, and composite snapshot views backed by
one identity-keyed immutable snapshot store;
- explicit diagnostic verifier declarations and registry matching, bounded preconditions,
proposal-bound probe requests, diagnostic-only witnesses, and deterministic reference
transition/tabular/pair/trace/graph verifiers;
- registered-only mutation operators, independent witness comparison, verifier health and
quarantine state, coverage records, learned-provider observation normalization, and
proposal-only omitted-question candidates;
- deterministic reference workflow, JSON schemas, mutation-oriented tests, and CI.

## Install
Expand Down Expand Up @@ -170,6 +180,14 @@ The demo preregisters a bounded experiment, records an observation, evaluates ha
gates, attributes the intervention, and creates a provisional principle proposal. It
does not call a model or modify RAVEL.

Run the bounded 0.3 diagnostic lifecycle, including snapshot production, two independent
reference witnesses, a mutation, comparison, health/coverage records, and a next-question
candidate:

```bash
mnel forge-reference --workspace build/forge-reference
```

Verify and summarize the resulting ledger:

```bash
Expand Down
16 changes: 16 additions & 0 deletions docs/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,22 @@ sequential CPU offload. The latter keeps weights in system RAM and temporarily e
modules on CUDA; it does not reload a provider for each query. Placement decisions are
resource-accounted and diagnostic, never evaluator decisions.

### Bounded Forge-oriented diagnostic lifecycle

The executable local lifecycle is deliberately split into independent records:

```text
identified snapshot -> compatible verifier -> precondition report -> bounded probe
-> diagnostic witness -> optional registered mutation -> independent comparison
-> health/coverage -> proposal-only omitted-question candidate
```

`src/mnel/snapshots.py` provides compact immutable views shared by deterministic
verifiers and learned providers. `src/mnel/forge_lifecycle.py` provides the explicit
registry and reference execution surface. Witnesses characterize observations; they
contain no evaluator verdict field. Health describes execution reliability, not truth,
and comparisons preserve disagreement rather than voting it away.

### Probe plane

Forge supplies small, identity-bearing questions and witnesses. The stable interface is
Expand Down
10 changes: 10 additions & 0 deletions docs/INTEGRATIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,16 @@ subject identities, expected witness type, resource budget, mutation prohibition
provider identity. Large prose scans should be decomposed into bounded witnesses where
possible.

MNEL now includes a small local reference surface in `mnel.forge_lifecycle`. It is used
for deterministic tests and the `mnel forge-reference` command: it provides explicit
verifier declarations, bounded snapshot views, preconditions, witnesses, registered
mutations, independent comparison, health, and coverage. It is an adapter/test surface,
not a substitute Forge implementation and does not claim MNCS/MNCDS conformance.

The external `mncs-forge-mcp` checkout is optional. The MNEL adapter contract is
identity-bound and provider-neutral; no developer-local Forge path is a runtime
dependency, and no hidden network or model service is invoked by the reference study.

## MNCS Fabric

Fabric distributes identified experiment bundles, captures node capabilities, and
Expand Down
9 changes: 7 additions & 2 deletions docs/LEARNED_PROVIDER_RUNTIME.md
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,8 @@ and a production accelerator backend remain future work. The C ABI v1 remains un

## Snapshot transport

The initial Python snapshot producers construct bounded transition, pair, or tabular
snapshots once. Each immutable payload is binary-friendly and carries producer, source,
The initial Python snapshot producers construct bounded transition, pair, tabular, trace,
graph, or composite snapshots once. Each immutable payload is binary-friendly and carries producer, source,
dependency, feature-extractor, schema, and payload identities. Compatible deterministic
probes and learned providers can consume the same payload boundary; changing a material
dependency changes the content identity and prevents silent reuse. Forge or another
Expand All @@ -158,6 +158,11 @@ compact binary bytes with explicit schema and feature-extractor identities. Any
change to source, dependency, extractor, normalization, toolchain, or environment
invalidates reuse unless the dependency envelope proves the snapshot unaffected.

The shared `SnapshotStore` exposes validated immutable views to compatible consumers, so
the same identified payload can be reused by a deterministic micro-verifier and a
learned provider without reparsing ad hoc JSON. Composite snapshots reference component
identities rather than duplicating their payloads.

## Native-language exceptions

A non-Rust provider may enter `native-trusted` only when its manifest includes:
Expand Down
18 changes: 9 additions & 9 deletions docs/ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,18 @@

## 0.3 — Forge experiment lifecycle

- micro-verifier registry;
- probe preconditions and witness schemas;
- counterfactual and mutation probe support;
- independent-probe comparison;
- verifier health and coverage records;
- skeptic-driven omitted-question discovery;
- **Started:** identity-bound transition, tabular, and pair diagnostic snapshots with
- **Implemented:** explicit micro-verifier registry and identity-bound declarations;
- **Implemented:** probe preconditions, proposal-bound requests, and diagnostic-only witness schemas;
- **Implemented:** bounded counterfactual and registered mutation probe support;
- **Implemented:** independent-probe comparison preserving agreement, disagreement, and incomplete coverage;
- **Implemented:** verifier health, quarantine, and coverage records;
- **Started:** deterministic skeptic-driven omitted-question candidate discovery;
- **Implemented:** identity-bound transition, tabular, pair, trace, graph, and composite diagnostic snapshots with
immutable compact binary payloads, producer/source/dependency/extractor identities, and
deterministic content identities suitable for deterministic probes and learned
micro-providers;
- compact binary snapshot views shared across compatible providers;
- learned observations normalized as diagnostic events without verifier status.
- **Implemented:** compact binary snapshot views shared across compatible providers;
- **Implemented:** learned observations normalized as diagnostic events without verifier status.

## 0.4 — verified distillation and learned-provider studies

Expand Down
8 changes: 8 additions & 0 deletions docs/THREAT_MODEL.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,14 @@ dependency, extractor, producer, schema, and payload identities in the content i
material dependency changes therefore invalidate reuse rather than silently transferring
stale diagnostic context.

The 0.3 diagnostic lifecycle fails closed on malformed snapshot bytes, incompatible
verifiers, unavailable preconditions, malformed verifier output, budget exhaustion, and
repeated verifier errors. A verifier may be quarantined for runtime reliability without
being treated as truthful. Mutation operators are a fixed registered set; arbitrary
callbacks and in-place authoritative snapshot mutation are not accepted. Learned
provider observations and verifier witnesses remain distinct diagnostic records, and
neither can authorize conformance or promotion.

### Apparent independence

Multiple local machines run the same operator-controlled stack. This is replication,
Expand Down
5 changes: 3 additions & 2 deletions schemas/mnel-diagnostic-snapshot.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@
"title": "MNEL identity-bound diagnostic snapshot metadata",
"type": "object",
"additionalProperties": false,
"required": ["schema", "snapshot_type", "schema_version", "producer_identity", "source_identity", "dependency_identity", "feature_extractor_identity", "payload_identity", "payload_bytes", "snapshot_identity", "authority", "semantics"],
"required": ["schema", "snapshot_type", "schema_version", "schema_identity", "producer_identity", "source_identity", "dependency_identity", "feature_extractor_identity", "payload_identity", "payload_bytes", "snapshot_identity", "authority", "semantics"],
"properties": {
"schema": {"const": "mnel-diagnostic-snapshot/0.3"},
"snapshot_type": {"enum": ["transition", "pair", "tabular"]},
"snapshot_type": {"enum": ["transition", "pair", "tabular", "trace", "graph", "composite"]},
"schema_version": {"type": "integer", "minimum": 1},
"schema_identity": {"type": "string", "minLength": 1},
"producer_identity": {"type": "string", "minLength": 1},
"source_identity": {"type": "string", "minLength": 1},
"dependency_identity": {"type": "string", "minLength": 1},
Expand Down
Loading
Loading