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
2 changes: 1 addition & 1 deletion .agent_rules/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,4 +90,4 @@ uv pip install -e . # Install deps

---

**Pipeline Version**: 1.6.0 | **Steps**: 25 | **Tests**: 2,250 passed, 7 skipped, 1 xpassed with Ollama integration excludes on 2026-05-20 | **MCP Tools**: 133
**Pipeline Version**: 1.8.0 | **Steps**: 25 | **Tests**: latest recorded full suite with Ollama integration excludes: 2,379 passed, 17 skipped, 1 xfailed; collect-only inventory is 2,397 tests | **MCP Tools**: verify with `src/tests/mcp/test_mcp_audit.py`
6 changes: 3 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ graph TD

- **Docs audit**: `uv run --extra dev python doc/development/docs_audit.py --strict --check-anchors --no-write` reports no broken links, anchor gaps, or AGENTS/README coverage gaps.
- **GNN doc patterns**: `uv run --extra dev python scripts/check_gnn_doc_patterns.py --strict` reports no banned GNN documentation patterns.
- **Tests**: command of record is `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`; current collect-only inventory (2026-06-09) is 171 test files and 2,296 collected tests with the same Ollama ignores. Latest recorded full suite with the same excludes passed on 2026-06-09: 2,281 passed, 14 skipped, 1 xfailed in 744.50s. Re-enable `src/tests/llm/test_llm_ollama*.py` when `ollama` is available.
- **Tests**: command of record is `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`; current collect-only inventory (2026-06-12) is 184 test files and 2,397 collected tests with the same Ollama ignores. Latest recorded full suite evidence with the same excludes is 2,379 passed, 17 skipped, 1 xfailed. Re-enable `src/tests/llm/test_llm_ollama*.py` when `ollama` is available.
- **LLM Default Model**: `smollm2:135m-instruct-q4_K_S` via Ollama (`llm.defaults.DEFAULT_OLLAMA_MODEL`; override with `OLLAMA_MODEL` / `input/config.yaml`).
- **Renderer inventory**: PyMDP, RxInfer, JAX, NumPyro, Stan, PyTorch, ActiveInference.jl, and DisCoPy have maintained render paths; run focused backend tests before publishing operational pass counts.
- **Visual Accessibility**: All pipeline steps now include enhanced visual indicators and progress tracking.
Expand Down Expand Up @@ -514,7 +514,7 @@ Each module provides specialized agent capabilities for different aspects of Act

---

**Last Updated**: 2026-06-09
**Pipeline Version**: 1.6.0
**Last Updated**: 2026-06-12
**Pipeline Version**: 1.8.0
**Total Steps**: 25 (0-24)
**Status**: Maintained
14 changes: 7 additions & 7 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

This guide details the architecture of the Generalized Notation Notation (GNN) system. It complements `DOCS.md` and `doc/pipeline/README.md` with an implementation-oriented perspective for developers.

**Last Updated**: 2026-05-08
**Version**: 1.6.0
**Last Updated**: 2026-06-11
**Version**: 1.8.0
**Status**: Maintained
**Pipeline Steps**: 25 (0-24)

Expand All @@ -20,10 +20,10 @@ This guide details the architecture of the Generalized Notation Notation (GNN) s
### Quality Assurance Principles

- **Real Implementation Testing**: All tests use real code paths and actual data dependencies
- **Comprehensive Coverage**: >95% test coverage with performance and integration validation
- **Comprehensive Coverage**: Use current CI/local test output for exact coverage and pass counts
- **Real Data Processing**: Tests and examples use explicit, runnable data
- **Performance Standards**: Sub-30-minute execution time, <2GB memory usage for standard workloads
- **Error Rate Targets**: <1% critical failure rate, >99% step completion success rate
- **Performance Standards**: Publish performance and memory figures only from current measured runs
- **Error Rate Targets**: Publish failure-rate claims only from current measured runs

### Agent Architecture Principles

Expand Down Expand Up @@ -323,8 +323,8 @@ Each agent implements comprehensive performance monitoring:

---

**Architecture Version**: 1.6.0
**Last Updated**: 2026-05-08
**Architecture Version**: 1.8.0
**Last Updated**: 2026-06-11
**Status**: ✅ Production Ready
**Compliance**: Thin orchestrator pattern
**Latest Validation**: See current test and pipeline runs
29 changes: 18 additions & 11 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,27 @@ Format follows [Keep a Changelog](https://keepachangelog.com/) and [Semantic Ver

## [Unreleased]

No unreleased changes yet.

---

## [1.8.0] — 2026-06-12

### Added
- **Developer tooling**: `justfile` (21 recipes), `.pre-commit-config.yaml` (Ruff, file hygiene hooks), `.devcontainer/` (Python 3.11 + uv + just for GitHub Codespaces)
- **NumPyro/Stan E2E tests**: 15-test suite (`test_render_numpyro_stan.py`) validating render success, Python compilation, AST parsing, import correctness, type mapping, and empty-input handling
- **Renderer health verification**: All 8/8 backends confirmed operational (PyMDP, RxInfer, JAX, NumPyro, Stan, PyTorch, ActiveInference.jl, DisCoPy)
- **Template developer kit**: packaged template index, package-data template assets, `gnn templates list`, `gnn templates show NAME`, and `gnn 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 with `GNN_MCP_ALLOW_INSECURE_LOCAL=1`, safe-tool filtering, optional rate limiting, and default-denied resource reads unless explicitly allowlisted.
- **Capability-contract verifier**: release-facing checks for template package data, MCP auth/resource safety, acceptance-command isolation, roadmap ordering, count drift, and autonomy non-mutation claims.
- **Roadmap foundations**: contract fixtures for v1.7 multi-agent/rendering/UI/audio/Three.js surfaces and v1.9 model-family acceptance/interpretability ledgers without marking those future release items complete.

### Changed
- Test suite expanded to 2,200 passed, 70 skipped (from 1,906/30)
- Documentation version synchronized to 1.6.0 across 35 files (resolved v1.3.0/v1.5.0 drift)
- TO-DO.md rewritten with verified completed items and restructured roadmap
- Pre-commit detect-secrets hook removed (not in project deps; CI uses GitGuardian)
- Current test evidence updated to 2,397 collected tests and latest full local suite evidence of 2,379 passed, 17 skipped, 1 xfailed with the documented Ollama integration excludes.
- `TO-DO.md` now treats v1.8.0 as the developer-kit release and v1.9.0 as the next model-family reliability target.
- Developer documentation now advertises verified template and MCP commands only, with `/tmp` output directories in acceptance smokes to avoid tracked `output/` churn.
- Pre-commit/dev tooling remains scoped to Ruff, file hygiene, and `just`/devcontainer ergonomics; dedicated secret scanning is not claimed.

### Fixed
- 4 broken Mermaid diagram blocks in `doc/gnn/modules/` (00_template, 01_setup, 11_render, 21_mcp)
- Stale line-count claims for orchestrator scripts (11_render.py, 12_execute.py, main.py)
- Root `AGENTS.md` version (1.5.0 → 1.6.0) and `README.md` feature attribution (v1.5.0 → v1.6.0)
- 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.

---

Expand Down Expand Up @@ -123,7 +129,8 @@ Format follows [Keep a Changelog](https://keepachangelog.com/) and [Semantic Ver
- pytest test suite with comprehensive coverage
- MCP tool registration framework

[Unreleased]: https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation/compare/v1.6.0...HEAD
[Unreleased]: https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation/compare/v1.8.0...HEAD
[1.8.0]: https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation/compare/v1.6.0...v1.8.0
[1.6.0]: https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation/compare/v1.3.0...v1.6.0
[1.3.0]: https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation/compare/v1.2.0...v1.3.0
[1.2.0]: https://github.com/ActiveInferenceInstitute/GeneralizedNotationNotation/compare/v1.1.0...v1.2.0
Expand Down
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ authors:
# This entry acknowledges all contributors. Individual contributors can be listed above if desired.

title: "GeneralizedNotationNotation (GNN)"
version: 1.6.0 # Current stable release
date-released: 2026-04-15
version: 1.8.0 # Current stable release
date-released: 2026-06-12

abstract: |
Generalized Notation Notation (GNN) is a text-based language designed to standardize the representation and communication of Active Inference generative models. It aims to enhance clarity, reproducibility, and interoperability in the field of Active Inference and cognitive modeling. GNN provides a structured way to describe complex models, making them human-readable and machine-parsable. It supports a "Triple Play" approach: text-based models, graphical model visualizations, and a blueprint for executable cognitive models.
Expand Down
5 changes: 4 additions & 1 deletion DOCS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Generalized Notation Notation (GNN) — Comprehensive Documentation

**Last Updated**: 2026-05-08
**Last Updated**: 2026-06-11

This document provides a complete, machine-parsable and human-accessible overview of GNN: the what, why, and how. It consolidates architecture, pipeline, data flows, artifacts, and integration points with multiple Mermaid diagrams.

Expand All @@ -15,6 +15,9 @@ This document provides a complete, machine-parsable and human-accessible overvie
- Consistent, reproducible model specification and sharing
- Interoperability across ecosystems (PyMDP, RxInfer.jl, ActiveInference.jl, JAX, PyTorch, NumPyro)
- Traceable artifact lineage and rigorous validation
- Capability-contract checks for roadmap-visible CLI, GUI, MCP, renderer, visualization, and measured-count claims
- Developer-kit surfaces for maintained templates (`gnn templates list`, `gnn templates show`, `gnn pull`) and safe local MCP HTTP orchestration
- Model-family acceptance ledgers for broader fixture reliability and interpretability evidence

## High-Level Concept Map

Expand Down
11 changes: 6 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# GeneralizedNotationNotation (GNN)

**Last Updated**: 2026-06-09
**Last Updated**: 2026-06-12

<div align="center">

Expand Down Expand Up @@ -48,11 +48,12 @@
### 📚 Initial Publication

**Smékal, J., & Friedman, D. A. (2023)**. *Generalized Notation Notation for Active Inference Models*. Active Inference Journal.
**Last Updated**: 2026-06-09
**Version**: 1.6.0
**Last Updated**: 2026-06-12
**Version**: 1.8.0
**Status**: ✅ Production Ready (Active Inference Institute)
**Test Suite Inventory (measured 2026-06-09)**: 171 `test_*.py` files under `src/tests/`; `uv run --extra dev python -m pytest --collect-only src/tests/ -q --tb=no --ignore=src/tests/llm/test_llm_ollama.py --ignore=src/tests/llm/test_llm_ollama_integration.py` collected 2,296 tests. Latest recorded full suite with the same Ollama integration excludes passed on 2026-06-09: 2,281 passed, 14 skipped, 1 xfailed in 744.50s.
**Features (v1.6.0)**: Neurosymbolic LLM Context Injection, D3 Execution Dashboards, NumPyro/Stan Renderers, structured PyMDP 1.0 POMDP execution, PyMDP Scaling Study, MCP Full Module Exposure.
**Test Suite Inventory (measured 2026-06-12)**: 184 `test_*.py` files under `src/tests/`; `uv run --extra dev python -m pytest --collect-only src/tests/ -q --tb=no --ignore=src/tests/llm/test_llm_ollama.py --ignore=src/tests/llm/test_llm_ollama_integration.py` collected 2,397 tests. Latest recorded full suite evidence with the same Ollama integration excludes is 2,379 passed, 17 skipped, 1 xfailed.
**Features (v1.8.0)**: maintained template CLI (`gnn templates list`, `gnn templates show`, `gnn pull`), packaged template assets with checksum/collision handling, authenticated local MCP HTTP orchestration, pre-commit/devcontainer tooling, structured PyMDP 1.0 POMDP execution, PyMDP Scaling Study, and MCP Full Module Exposure.
**Roadmap foundations (unreleased)**: model-family acceptance/interpretability ledgers for v1.9.0 reliability work.
📖 **DOI:** [10.5281/zenodo.7803328](https://doi.org/10.5281/zenodo.7803328)
📁 **Archive:** [zenodo.org/records/7803328](https://zenodo.org/records/7803328)

Expand Down
Loading
Loading