Releases: ActiveInferenceInstitute/GeneralizedNotationNotation
GNN v3.0.0 β Long-Running Orchestration
GNN v3.0.0 β Long-Running Orchestration
GeneralizedNotationNotation v3.0.0 adds safe-by-design long-running orchestration on top of the GNN text language and 25-step processing pipeline. Every new module generates, validates, replays, or plans data only β no live infrastructure is ever mutated (no container is executed, no cluster or device is touched).
Highlights β three orchestration contracts (src/pipeline/)
- Durable observation streams (
durable_streams.py) β content-checksummed file/arrayStreamManifests and replayableExecutionTraces, so an extended run can be observed, paused, and re-derived deterministically before any live sensor or device-backed stream is introduced. Cross-architecture-deterministic checksums, injective stream ids, and trace meaning re-bound to ground truth on verify. - Resumable run sessions (
run_session.py) βRunSessionmanifests with atomic checkpoint/resume, status inspection, and path-escape-safe, idempotent cancellation cleanup, so an extended model-family acceptance run can be interrupted and resumed without corrupting partial state. - Auditable container plans (
container_plan.py) β hardened plan generation (non-root, read-only rootfs, cap-drop ALL, digest-pinned images, resource limits), a staticsecurity_review(privileged / root / unpinned-image / plaintext-secret / sensitive-host-mount / host-namespace / dangerous-capability findings), rollback descriptors, and deterministic plan hashes β without ever touching a real cluster.
Additive live wiring (no change to the 25-step critical path)
session_acceptance.pyβ resumable, checkpoint-after-each model-family acceptance.run_manifest.pyβ emit durableStreamManifests + a replayableExecutionTracefrom a completed run'soutput/(verified on a real run: 105 manifests + a 25-event trace).pipeline_container_plan.pyβ asecurity_review-clean container plan generated from the realinput/config.yaml.- A strict, fail-closed acceptance gate:
scripts/run_v3_orchestration_acceptance.py(--inject-defectexits non-zero). - Three new Model Context Protocol tools (tool total 137 to 140).
Release evidence
The standing release gates were re-run green for all 9 model families: semantic fidelity (run_semantic_fidelity_gate.py), cross-framework reliability (run_cross_framework_reliability.py, GridWorld compared across PyMDP, RxInfer, and ActiveInference.jl), and model-family acceptance (run_model_family_acceptance.py). The orchestration foundation ships without regressing the v2.0.0 reliability surface. The CI matrix is green (ruff format/check, four documentation audits, and mypy src), and the long-standing tool-version drift in the matrix was cleaned up as part of this release.
Documentation, manuscript & visualizations
- README, AGENTS, DOCS, ARCHITECTURE, and the
doc/entry points brought current to v3.0.0; new reference pagedoc/pipeline/v3_orchestration.md. - The auto-injected manuscript gained a "Long-Running Orchestration Contracts" methods section and a new architecture figure; every quantitative value is a token resolved from the live repository.
- Visualizations improved: a clean layered pipeline DAG and a new orchestration-architecture diagram.
Next
v4.0.0 β bounded autonomy and reviewed self-editing workflows, gated behind this orchestration work.
Full details: see CHANGELOG.md and TO-DO.md.
v2.0.0
Added
- Semantic fidelity release gate:
scripts/run_semantic_fidelity_gate.pywritesgnn_semantic_fidelity_ledger_v1artifacts for maintained model families. - Strict semantic contracts: representative fixtures now preserve model identity, variables, edges, dimensions, parameter shapes, equations, time, and ontology mappings across JSON parse/serialize/parse checks.
- Cross-framework reliability release gate:
scripts/run_cross_framework_reliability.pywritesgnn_cross_framework_reliability_ledger_v1artifacts with compatible, required, and unsupported backend statuses. - GridWorld three-backend comparison: GridWorld is profiled for PyMDP, RxInfer, and ActiveInference.jl, including seed, trace length, matrix-shape, and matrix-provenance parity.
Changed
- GridWorld model-family acceptance now requests PyMDP, RxInfer, and ActiveInference.jl for the v2 comparison fixture instead of a PyMDP-only profile.
- Roadmap next target moves to v3.0.0 for durable streams, long-running sessions, and auditable container plans.
Fixed
- JSON serialization now emits equation objects instead of lossy stringified dataclasses, preventing silent semantic round-trip drift.
- Cross-framework reliability no longer certifies aggregate Step 12 success without successful non-skipped execution-detail rows and current simulation payloads for required backends.
v1.9.0
[1.9.0] β 2026-06-12
Added
- Model-family acceptance release gate: manifest-driven all-family strict acceptance for basics, discrete, continuous, hierarchical, multi-agent, precision, structured, gridworld, and scaling-study fixtures.
- Cross-step evidence ledger: release ledger now links Step 3/5/6/11/12/15/16/23 statuses, artifact links, telemetry presence, renderer/execution status, and concrete skip reasons per family.
- Interpretability summaries: per-family summaries now include variable/edge inventories, matrix-shape tables, telemetry presence, optional trace previews, renderer/execution status, and artifact links.
Changed
- Continuous and hierarchical Step 11/12 outcomes are explicit profiled unsupported skips with concrete reasons, not raw render/execute failures accepted by profile math.
- v1.7.0 is retired as a foundation-only track; unfinished runtime-depth ambitions move forward into v2+ reliability and orchestration milestones.
- Current test evidence updated to 2,399 collected tests; final full-suite release evidence is recorded in
TO-DO.md,README.md, and test documentation after the v1.9 release gate rerun.
Fixed
- Removed the model-family acceptance reason-pattern fallback that could reclassify failed renderer/executor steps as unsupported success.
- Hardened strict acceptance so profiled unsupported steps must be skipped before execution and failed Step 11/12 summaries fail closed.
- Prevented cross-framework analysis from reading stale repo-tracked
output/artifacts during isolated/tmpacceptance runs. - Relaxed an environment performance smoke threshold to match other slow module smoke tests and avoid full-suite load false negatives.
Validation
- PR #12 checks passed: Bandit, CodeQL, analyze (python), dependency-review, markdown-audit, security, test (3.11), test (3.12), test (3.13).
- Local full suite:
2381 passed, 17 skipped, 1 xfailedwith Ollama integration tests ignored. - Local collect-only: 2,399 collected tests with Ollama integration tests ignored.
- All-family strict acceptance: passed for 9 manifest families; continuous and hierarchical Step 11/12 are explicit profiled unsupported skips with concrete reasons and no raw failed Step 11/12 counts.
v1.8.0: Developer Kit & Safe Local MCP Orchestration
v1.8.0 β Developer Kit & Safe Local MCP Orchestration
Added
- Template developer kit: packaged template index, package-data template assets,
gnn templates list,gnn templates show NAME, andgnn pull NAME --output-dir ... --dry-run --overwrite. - Template safety contracts: checksum verification, collision handling, symlink/path traversal rejection, unknown-template failures, and installed-wheel smoke coverage outside the repo checkout.
- MCP local HTTP orchestration: bearer-token auth through
GNN_MCP_TOKEN, localhost default binding, explicit insecure local opt-in withGNN_MCP_ALLOW_INSECURE_LOCAL=1, safe-tool filtering, optional rate limiting, and default-denied resource reads unless explicitly allowlisted. - Capability-contract verifier for template package data, MCP auth/resource safety, acceptance-command isolation, roadmap ordering, count drift, and autonomy non-mutation claims.
Changed
TO-DO.mdnow treats v1.8.0 as the developer-kit release and v1.9.0 as the next model-family reliability target.- Developer documentation advertises verified template and MCP commands only, with
/tmpoutput directories in acceptance smokes to avoid trackedoutput/churn. - Current evidence: 2,397 collected tests; latest full local suite evidence with Ollama integration excludes is 2,379 passed, 17 skipped, 1 xfailed.
Fixed
- Removed release-facing false-certification paths around optional framework fallback, stale counts, MCP unauthenticated HTTP, unsafe MCP resource exposure, and template assets that only work from a source checkout.
- Fixed CI-sensitive optional Julia package gating so missing optional backend packages skip instead of failing while preserving failures for real Julia errors.
Validation
- PR #11 checks: 9 passed, 0 failed.
- Local gates:
git diff --check, Ruff check/format, mypy, docs audit, GNN doc patterns, maintained-doc terms, repo terminology, capability contracts, andjust lint. - Acceptance smokes:
gnn templates list,gnn templates show pomdp-gridworld-3x3,gnn pull pomdp-gridworld-3x3 --output-dir /tmp/gnn-pull --dry-run, and token-enabled MCP HTTP tests. - Full local suite:
uv run --extra dev python -m pytest src/tests/ -q --tb=no --ignore=src/tests/llm/test_llm_ollama.py --ignore=src/tests/llm/test_llm_ollama_integration.py-> 2,379 passed, 17 skipped, 1 xfailed.
v1.6.0: Zero-Mock Testing Stabilization & Documentation Hardening
Fixed
- Testing Constraints: Entirely removed dependency on internal
hypothesis.internal.conjecture.optimiserarrays mitigating python 3.13 crashes, transitioning to native parameterized fuzzers. - HTML Assertion Accuracy: Relaxed legacy
test_report_functionalstrings to mathematically accept dynamic semantic UI tags (<html lang="en">instead of<html>).
Added
- Global Documentation Guardrails: Enforced 100% adherence to zero-mock documentation mandates. Provisioned
AGENTS.md,README.md, andSPEC.mdcomponents natively within transient boundaries (output/,.benchmarks/,scripts/) and defined the master environmentSPEC.mdat root. - Type checker visual dashboards: Baseball-card style model summary PNGs (dark neon theme), validity mosaics, issue distribution charts, and type category pie charts generated in
output/5_type_checker_output/visualizations/ - Resource estimation integration:
estimate_file_resources()now delegates toestimation_strategies.pyfor real FLOPS, memory, and complexity scoring instead of naive heuristics - Documentation hub sync: Automated
doc/gnn/modules/[00-24].mdreconciliation fromsrc/*/AGENTS.mdsource-of-truth
Changed
- Zero-Mock Policy Enforcement: Systematically excised all mentions and framework hooks relating to
pytest-mockallowing completely isolated functional testing constraints natively. - Type checker consolidation: Deleted redundant
src/type_checker/checker.py; all logic unified inprocessor.py(GNNTypeChecker) - Test suite alignment:
test_type_checker_overall.pyrewired to target productionprocessor.pyorchestrator (zero-mock) - Deprecated marker removed:
safe_to_failmarker replaced with standardxfailinpyproject.tomlandpytest.ini - Default local LLM: Ollama default tag is
smollm2:135m-instruct-q4_K_S(llm.defaults.DEFAULT_OLLAMA_MODEL); override withOLLAMA_MODELorinput/config.yamlllm.model. - Core dependencies:
openai,ollama,python-dotenv, andaiohttpare installed with the base package (LLM step and OpenRouter/Perplexity providers work withoutuv sync --extra llm).
v1.3.0 β The Pipeline Coherence & Agentic Integration Release
v1.3.0 β The Pipeline Coherence & Agentic Integration Release
This release establishes the Generalized Notation Notation (GNN) repository as a pristine, fully integrated, agent-ready ecosystem. With over 756 documentation files audited, deep MCP integration stabilized, and 100% test passing ratios across 1,522 unit tests and 25 pipeline steps, this update sets a new gold standard for repository coherence.
π Major Highlights
Agent-Ready SKILL.md Capability Framework
- Deployed 28 Anthropic
skillsstandardSKILL.mdfiles covering everysrc/module. - Mapped precise AI capability boundaries, workflow patterns, and key API commands.
- Validated 100% of API references natively against runtime
__all__list exports, securing accuracy for AI-driven multi-agent orchestration.
Pipeline Coherence & Zero Dependencies
- The 25-step GNN Processing Pipeline achieves perfect coherence, producing a 100.0 Health Score via Intelligence Analysis.
- Resolved all structural and integration warnings, specifically remediating asynchronous Model Context Protocol (MCP) registration bugs inside the
llmandapimodules (initialize_llm_moduleandregister_toolsproperly initialized). - The pipeline now runs with 0 errors, 0 failures, and 0 warnings under automated orchestration.
Massive Repo-Wide Documentation Audit
- Audited 756 total
.mddocumentation files. - Validated 5,065 internal reference links, cleanly resolving 124 dead links/legacy artifacts.
- Normalized stale test count claims across 44 files, explicitly confirming 1,522 passing tests.
- Enforced 100% Triad structural completeness (
README,AGENTS,SPEC,SKILL) across all 28 project modules. - Achieved Zero YAML parsing errors, Zero missing required sections, and Zero
TODO/FIXMEgaps in the core documentation hub.
π οΈ Detailed Engineering Fixes
src.api.mcp: Bridged FastAPI backend jobs with MCP wrapper functions, surfacing 5 fully functional API coordination tools over the protocol.src.llm.mcp: Handled coroutine lifecycle within the MCP synchronous initialization space, preventing an unawaited processor loop and achieving robust default context window loading.render/framework mappings: Successfully verified the continuous parsing engine across targeted dynamic modules (rxinfer,activeinference_jl,jax,pymdp,discopy) matching precisely to their theoretical documentation profiles.
Summary Profile
- Tests Passed: 1,522 / 1,522
- Script Pipeline State: 25 Steps Clean (0 Warnings)
- MCP Tools Registered: 100+ over 29 module servers
- Documentation Health: Perfect (0 broken links, completely synced)
This represents the final polished milestone of Phase 7 normalization.
v1.2.0 β Data Accuracy & Documentation Sync
π― Release Highlights
v1.2.0 is a data-integrity release that fixes 5 pipeline bugs and unifies all documentation metadata across 635 files. No new features β only correctness and consistency.
π Pipeline Bug Fixes
Critical
- ActiveInference.jl renderer typo β
POLICY_LENGTHβPOLICY_LENcausedUndefVarErrorin generated Julia scripts (src/render/activeinference_jl/activeinference_renderer.py) - ActiveInference.jl validation ordering β
validation_statusreferenced before definition, causing runtime errors during code generation
Medium
- LLM connection extraction β
extract_connections()insrc/llm/analyzer.pynow correctly parses GNN-specific connection operators (>,-,<) from## Connectionssections, increasing detected connections from 0 to 11
Low
- Website analysis scan β
src/website/generator.pynow scans root-level JSON files in16_analysis_output/, not just theanalysis_results/subdirectory (was reporting 0 analysis results) - Pipeline summary status β Preliminary summary in
src/main.pychanged fromIN_PROGRESStoSUCCESSto accurately reflect completed steps
π Documentation Sync
This release eliminates all metadata inconsistencies across the entire repository:
| Metric | Before (v1.1.4) | After (v1.2.0) |
|---|---|---|
| Test count | Mixed: 1,083 / 1,319 | 1,319 everywhere (35+ files) |
| Version string | Mixed: v1.1.0 / v1.1.4 | v1.2.0 everywhere (40+ files) |
| Dates | Mixed: Feb 9 / Feb 20 / Feb 21 | 2026-02-23 everywhere (50+ files) |
| Execution time | Mixed: 40s / 90s / 120s / 3min | ~5 min (with LLM step) (6 files) |
| Module coverage % | Divergent tables in root vs src | Unified (2 files) |
| Architecture version | 2.2.1 | 2.3.0 |
| Total files changed | β | 635 |
π New: Project Roadmap
Added TO-DO.md with planned milestones:
| Release | Theme |
|---|---|
| v1.2.1 | LLM step performance (profile, batch, cache) |
| v1.3.0 | Testing & CI improvements |
| v1.4.0 | GNN language & parser enhancements |
| v1.5.0 | Website & reporting upgrades |
| v2.0.0 | Multi-model composition, LSP, cloud execution |
β Verification
- Full pipeline: 25/25 steps SUCCESS (299s)
- Test suite: 1,303 passed, 16 skipped, 0 failed (621s)
- Stale references: 0 remaining
- Python version: 3.11+
- Package manager: UV recommended
π¦ Installation
git clone https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation.git
cd GeneralizedNotationNotation
python3 src/1_setup.py --verbose
python3 src/main.py --target-dir input/gnn_files --verboseπ Key Documentation
- README.md β Project overview
- ARCHITECTURE.md β System architecture (v2.3.0)
- SETUP_GUIDE.md β Installation guide
- TO-DO.md β Release roadmap
- doc/gnn/README.md β GNN documentation index
- CONTRIBUTING.md β Contribution guidelines
Full Changelog: v1.1.4...v1.2.0
GNN v1
Version 1 of GNN.