Skip to content

Commit 12ddddc

Browse files
committed
docs: record deep-review findings and completions in TODO and log
1 parent 55055c4 commit 12ddddc

2 files changed

Lines changed: 132 additions & 93 deletions

File tree

REVIEW_LOG_2026-08-02.md

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# Documentation deep-review log — 2026-08-02
2+
3+
## Scope
4+
5+
Reviewed all tracked Markdown documentation (70 files), including the root
6+
README and contributor guidance, `docs/`, the ordered manuscript source,
7+
tutorials, package/config/test/notebook/GRTs README files, `.github/` guidance,
8+
and documentation-facing scripts/configuration. Cross-checked public API,
9+
configuration, CLI, pipeline, environment, persistence, visualization,
10+
notebook, and manuscript claims against the implementation.
11+
12+
## Preflight
13+
14+
- Branch: `main`
15+
- Remote default branch: `origin/main`
16+
- Starting HEAD: `1fad3dfb957224afd5e73aa639c377e5b46bd2e2`
17+
- Starting working tree: clean
18+
- `git fetch origin` completed; branch was already current, so no pull was
19+
required.
20+
- Documentation inventory: 70 tracked Markdown files; `docs/` contains a
21+
concept/API/pipeline/development set, tutorials, and an ordered manuscript.
22+
23+
## Findings
24+
25+
### Minor — 4 findings
26+
27+
1. `tests/envs/README.md` and `tests/utils/README.md` linked five directory
28+
levels upward for root files; those targets resolved outside the repository.
29+
2. `configs/AGENTS.md` named a nonexistent `tests/test_config.py`; configuration
30+
tests are distributed across current `tests/test_*.py` modules.
31+
3. The `scripts/build_manuscript.py` module docstring named
32+
`docs/_build/manuscript.md`, while the builder writes
33+
`docs/_build/manuscript/manuscript.md`.
34+
4. The root README did not link its documentation index or license, despite
35+
both being high-value entry points.
36+
37+
### Medium — 4 findings
38+
39+
1. The root README Python API example configured two agents with only
40+
`initial_state`, which the current implementation intentionally rejects as
41+
non-distinct multi-agent starts.
42+
2. `docs/README.md` was only a list and omitted the glossary, notebooks,
43+
configuration, and explicit beginner entry path.
44+
3. The three tutorials were short fragments despite their local contract saying
45+
each should be a runnable end-to-end story with prerequisites and next steps.
46+
4. `docs/contributing.md` instructed contributors to fill in a PR template, but
47+
no PR template exists under `.github/`.
48+
49+
### Major — 0 findings
50+
51+
The repository already has a coherent documentation structure, local guidance,
52+
strict manuscript validation, and a release gate. No responsible major overhaul
53+
was warranted.
54+
55+
## Implemented changes
56+
57+
- Corrected all verified broken/stale references.
58+
- Corrected and executed the README multi-agent example.
59+
- Expanded the documentation index and root entry-point links.
60+
- Rewrote the tutorials around the current package API and CLI.
61+
- Aligned contribution guidance with the repository's actual GitHub files.
62+
- Replaced the TODO roadmap with severity sections, completed entries, and
63+
explicit deferred items.
64+
65+
## Validation performed
66+
67+
- Executed the README API example after correction.
68+
- Executed the `docs/api.md` pipeline example.
69+
- Executed the tutorial Python examples and checked the pipeline CLI commands
70+
against the current CLI definition.
71+
- Ran the repo-wide relative Markdown link/anchor audit: no remaining internal
72+
link or anchor failures after fixes.
73+
- Ran `uv run ruff check blockference tests scripts GRTs`: passed.
74+
- The complete release gate is run after the final documentation commits.

TODO.md

Lines changed: 58 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,61 @@
11
# ActiveBlockference TODO
22

33
Owner: Active Inference Institute
4-
Status: all scoped roadmap items closed (release gate green on this interpreter)
5-
Last reviewed: 2026-08-01
6-
7-
This file is the forward-looking execution source of truth. The prior
8-
hardening, release-contract, and refinement work is intentionally absent; an
9-
item belongs here only when implementation, tests, documentation, generated
10-
artifacts, or verification still remains.
11-
12-
## Completed / Closed (completion pass of 2026-08-01)
13-
14-
The following roadmap items were fully implemented in source, tests, docs,
15-
manuscript, and CI this pass, and are closed.
16-
17-
### Cross-interpreter + clean-install release verification (P0)
18-
- [x] CI matrix already runs the canonical release gate on Python 3.10, 3.11,
19-
and 3.12; added a mypy `--python-version 3.10` type-check step.
20-
- [x] Added deliberately interrupted / partial-tree and reused-run tests so
21-
stale manifests, partial trees, and old validation reports can never
22-
yield a passing release verdict.
23-
- [x] Clean wheel-install smoke (import + quick start without the optional
24-
`pymdp` extra) is exercised by `scripts/release_check.py` and CI.
25-
26-
### Atomic publication across all artefact types (P1)
27-
- [x] JSON, config, CSV, NPZ, per-step, manifest, and every render (PNG/GIF)
28-
are now published atomically through a sibling temporary file + rename;
29-
a leftover temp file fails validation as drift. `run.log` remains
30-
append-only (a live log cannot be atomic, per the contract).
31-
- [x] Added interruption tests: a failed writer leaves the previous file and
32-
cleans its temp; a partial tree and a stale temp file both fail closed.
33-
34-
### `validate_run_outputs` stage split (P1)
35-
- [x] Split the monolith into focused public stage validators
36-
(tree structure, artifact presence, config, trajectory, model, manifest,
37-
policies, per-step, and config↔trajectory / config↔model agreement) with
38-
`validate_run_outputs` as a thin fail-closed aggregator.
39-
40-
### Normalized typed trajectory schema (P1)
41-
- [x] Added `blockference.io.parse_trajectory_records` returning typed,
42-
deterministically ordered `TrajectoryRecord` values; backend (radCAD vs
43-
cadCAD) parity and persistence round-trips now compare bytes-as-values.
44-
45-
### Formalized step/update protocol + 3.10 type check (P1)
46-
- [x] Added `CoreAgentUpdate` required-keys TypedDict and `CORE_UPDATE_FIELDS` /
47-
`validate_update_envelope`; all adapters emit the same ten-field envelope
48-
and are validated fail-closed. Mypy now checks 3.10-compatible stubs in CI.
49-
50-
### Grid index / transition optimization (P1)
51-
- [x] `ActiveGridference` uses a precomputed coordinate→index dict (O(1) lookup)
52-
instead of repeated `list.index` scans, with a brute-force parity test
53-
proving exact matrix and coordinate-index agreement.
54-
55-
### Publication drift baseline gate (P1)
56-
- [x] `build_manuscript.py --check` now regenerates figures into a temp dir and
57-
compares bytes against the committed figures (checkout-independent), in
58-
addition to the manuscript-text diff in `release_check.py`.
59-
60-
### Generic discrete-environment protocol (P2)
61-
- [x] Added the `blockference.envs.DiscreteEnvironment` runtime-checkable
62-
protocol (state identity, observations, actions, collisions,
63-
stochasticity, serialization); `GridWorld` conforms and adds lossless
64-
`serialize()` / `load()`.
65-
66-
### Scientific-adequacy claims kept out of the software verdict (P2)
67-
- [x] README, `docs/pipeline.md`, `docs/design-contract.md`, and the manuscript
68-
now state explicitly that `ValidationReport.ok` / `PipelineResult.ok`
69-
certify software and artefact integrity only, never empirical adequacy.
70-
71-
### Multi-agent start correctness (Minor/Medium hardening)
72-
- [x] A multi-agent run without distinct `simulation.initial_states` now fails
73-
fast with an explicit error instead of crashing inside a simulation
74-
backend; README, `docs/api.md`, `docs/pipeline.md`, `docs/migration-v1.md`,
75-
the manuscript, and the example configs were corrected.
76-
- [x] Added request timeout to the OpenAI GRTs provider (default 60 s).
77-
78-
## Forward-looking (not started)
79-
80-
- [ ] Nothing scoped. Future work (additional environments, stochastic
81-
transitions, learned `A`/`B`/`C`, factored state spaces, larger policy
82-
search, network-backed research, and any empirical scientific-adequacy
83-
claim) must enter as its own validated contract with independent
84-
provenance and sensitivity analyses, per the design contract.
85-
86-
## Exit criteria (all currently met on this interpreter; CI confirms 3.10/3.11/3.12)
87-
88-
- [x] The canonical release gate passes on all supported Python versions (CI).
89-
- [x] A clean wheel install runs the documented quick start without `pymdp` and
90-
the optional adapter fails with its documented installation message.
91-
- [x] A fresh and an interrupted run both validate fail-closed, with exact
92-
agreement among JSON, NPZ, CSV, summary, manifest, renders, and report.
93-
- [x] All tracked notebooks and the manuscript pass their mandatory gates;
94-
optional renderers pass when present.
95-
- [x] `ValidationReport.ok` and `PipelineResult.ok` remain the only release
96-
verdicts as future environments and research workflows are added.
4+
Last reviewed: 2026-08-02
5+
6+
This file records documentation findings from the 2026-08-02 DOCS-DEEP pass.
7+
Items are grouped by the size of the documentation change required:
8+
9+
* **Minor** — typo, broken link, stale path, or formatting correction.
10+
* **Medium** — stale section rewrite, documentation restructure, or missing guide.
11+
* **Major** — large documentation-system overhaul or cross-cutting refactor.
12+
13+
## Minor
14+
15+
- [x] Fix four broken repository-root links in `tests/envs/README.md` and
16+
`tests/utils/README.md`. (commit: pending)
17+
- [x] Replace the nonexistent `tests/test_config.py` reference in
18+
`configs/AGENTS.md` with the current test-file convention. (commit: pending)
19+
- [x] Correct the generated-manuscript path in the `scripts/build_manuscript.py`
20+
module documentation. (commit: pending)
21+
- [x] Link the root README to the documentation index and MIT license.
22+
(commit: pending)
23+
24+
## Medium
25+
26+
- [x] Correct the root README Python example so its two-agent configuration
27+
supplies distinct `simulation.initial_states` and executes under the
28+
current validation contract. (commit: pending)
29+
- [x] Expand `docs/README.md` into a usable documentation index covering
30+
concepts, tutorials, development, configuration, notebooks, and the
31+
manuscript source. (commit: pending)
32+
- [x] Rewrite the three tutorials as short runnable stories with prerequisites,
33+
current API/CLI examples, assertions or validation steps, and next steps.
34+
(commit: pending)
35+
- [x] Remove the nonexistent PR-template claim from `docs/contributing.md` and
36+
describe the actual pull-request information expected. (commit: pending)
37+
38+
## Major
39+
40+
No major documentation-system overhaul was identified. The repository already
41+
has a coherent root/docs/manuscript structure, local contributor guidance, and
42+
an executable publication validator.
43+
44+
## Open / deferred
45+
46+
- [ ] Add automated Markdown link and anchor validation to CI. Deferred because
47+
the repository currently has no Markdown tooling dependency or CI command;
48+
the pass used a repo-wide audit script without introducing a heavyweight
49+
documentation toolchain.
50+
- [ ] Add a dedicated `SECURITY.md` policy. Deferred because no security-reporting
51+
channel or policy owner is defined in the repository metadata; adding one
52+
would require an organization-level decision rather than inventing contact
53+
details.
54+
55+
## Verification notes
56+
57+
The pass verified the documented single-agent and multi-agent Python examples,
58+
the `docs/api.md` pipeline example, the tutorial snippets, `uv run ruff check
59+
blockference tests scripts GRTs`, manuscript validation/build drift checks, and
60+
the repository-wide relative Markdown links and anchors. Full release verification
61+
remains the canonical `uv run python scripts/release_check.py` command.

0 commit comments

Comments
 (0)