# Public-release gate

Last audited: 25 August 2026

The digital edition is a working owner-only publication rehearsal, not yet a
public release. The HTML reader, dated PDFs, experiment-to-code crosswalk, and
correction workflow are functional. This gate records what still requires a
decision or a manual review. Its machine-readable counterpart is
`release_gate_ledger.json`.

## Current decision

**Status: not public-ready.** A machine check cannot substitute for a rights
opinion, privacy consent, accessibility certification, or independent
scientific validation.

## Gate summary

| Gate | Status | Remaining decision or review |
|---|---|---|
| Durable domain and archive | Partial | The canonical domain is `categorical-ai.sridharmahadevan.com`; choose an independent archival mirror and redirect policy for legacy locations. |
| Rights and licensing | Pending review | Confirm and publish the book-wide license policy. The former COCO asset exception has been removed at source. |
| Visual privacy | Partial review | Sign off all photographic or generated-person imagery. |
| Machine accessibility | Partial | All 217 raster-image elements retain purpose-specific alternatives and all 1,480 routes pass structural checks. Repeat rendered checks for changed representative surfaces. |
| Manual accessibility | Pending | The unsigned packet is bound to owner-only Version 84 and commit `e7c4d02b5f6608e06e86288526f2f419d1a003ff`; test keyboard traversal, screen-reader behavior, native zoom, page-level contrast, reduced motion, mathematics, figures, and PDFs. |
| Corrections | Partial | The moderation contract is published; choose a permanent trilogy-wide or Infinitesimal Creativity tracker. |
| Experiment code | Partial | Fifteen of twenty package destinations are public; curate the five remaining archives. |
| PDF preservation | Partial | The authenticated deployment serves all three artifacts as `application/pdf`; choose an independent archive. |
| Production origin | Partial | The latest owner-only release candidate passes an authenticated custom-domain audit of 99 byte-identical downloads and 120 rendered routes covering all 38 experiment families and all 79 Experiment cards. Its complete local audit covers 1,483 routes. Visual and accessibility review remains required before changing access. |

## Owner decision matrix

These choices cannot be inferred from a successful build. The recommendations
are conservative defaults, not decisions already taken.

| Decision | Recommended default | Gates affected |
|---|---|---|
| Canonical public address | **Decided:** use `https://categorical-ai.sridharmahadevan.com`; retain the Sites origin as a recovery endpoint. | Archive/domain; production origin |
| Independent archive | Deposit every immutable dated edition in Zenodo or an institutional repository and record its persistent identifier. | Archive/domain; PDF preservation |
| Book and source licensing | Preserve the observed per-book notices; publish PDF and HTML; keep source TeX private until publisher, employer, and third-party rights are settled. License code separately. | Rights and licensing |
| Code launch scope | Publish the high-priority Categories and Infinitesimal Creativity companions first; keep the three medium-priority packages as explicit non-downloadable provenance records until their gates pass. | Experiment code |
| Correction tracker | Create one public trilogy-wide editorial repository with edition- and stable-tag-aware issue forms. | Corrections |
| Public-access approval | Keep the rehearsal owner-only until privacy, manual accessibility, and deployed-origin reviews are signed off. | Visual privacy; manual accessibility; production origin |

The machine-readable ledger records alternatives for each choice. Making the
site public, creating repositories, changing licenses, or depositing archival
artifacts remains a separate owner-authorized action.

## Resolved visual rights exception

The 23 August Infinitesimal Creativity edition contained four derivatives of
two COCO photographs. The 24 August manuscript and HTML edition remove those
panels at source and replace them with mathematical tables that explain the
same interval-valued observer, abstention, and active-acquisition decisions.
The current release therefore carries no asset-specific exception in the
machine ledger.

This resolves the attribution, share-alike, and noncommercial conflict for
those four files. It does not replace the still-required manual privacy review
of the remaining photographic or generated-person imagery.

The review is now bounded rather than informal. `RELEASE_ASSET_REVIEW.md`
lists all 217 published raster-asset records with their source references, checksums,
HTML uses, purpose-specific alt text, and explicit rights and privacy decision
fields. Decisions are entered in `release_asset_decisions.json`; no asset is
treated as approved merely because the edition builds successfully.

The checksum-controlled contact-sheet triage now places 199 assets in the
no-visible-person queue, nine in the synthetic-or-robot queue, and four in the
generated-adult queue. It found no visually uncertain record and observed no
visible child. The four generated-adult assets are the first privacy-review
priority; the nine synthetic scenes still require source-term, logo, and
embedded-data review. These observations reduce the review queue but do not
constitute consent, rights clearance, or publication approval.

An internal 13-record priority packet now joins those exact checksums to their
manuscript assets, edition routes, provider chains, contact sheets, experiment
evidence, and asset-specific review questions. Its rights, privacy, and
publication fields remain deliberately unsigned.

## Local code publication queue

| Package | Disposition | Priority | Intended outcome |
|---|---|---|---|
| `categories-gt-archive` | Split release | High | Curated Categories for AGI experiment source and bounded result packets. |
| `kan-do-dcdi-archive` | Merge or snapshot | Medium | A distinct Judo Calculus release within or beside the public sheaf repository. |
| `atlas-csql-archive` | Curate separately | Medium | A small ATLAS/CSQL companion with redistributable sample databases. |
| `deep-url-archive` | Curate separately | Medium | A bounded Deep URL reproducibility companion. |
| `synthetic-creativity-archive` | Dedicated repository | High | Selected DIAL-X code, smoke tests, evidence boundaries, and rights-cleared assets. |

The public BASKET repository has now been verified and removed from this queue.
The experiment crosswalk therefore records fifteen public destinations and
five local publication gaps. The exact book-facing source surface for those
gaps is now frozen in `CODE_COMPANION_RELEASE_SPECS.md`: 352 unique files
totaling 4,328,716 bytes, each with a package-relative path and SHA-256
digest. Each of the five private candidates also embeds a Markdown and JSON
experiment-family index. Those indexes map every dependent family to its
registered chapters and entry points, exact staged source and bounded result
records, stable documentation route, evidence boundary, byte counts, and
SHA-256 digests. The release verifier checks those records against both the
staging tree and the packaged archive. This resolves archive scope and makes
each candidate self-describing, but not the remaining license, dependency, data,
privacy, provenance, smoke-test, and result-packet decisions.

Public GitHub links in the experiment atlas are frozen at full audited commit
hashes rather than moving `main` branches. Representative file links for all
thirteen public code-bearing packages returned HTTP 200 on 24 August 2026.
Every one of the 38 family dossiers also exposes a bounded `Start here` set;
the 148 selected files must resolve to registered code records, carry the same
public-or-staged status as those records, and avoid empty package scaffolding.
This gives the current documentation stable source identities; it does not
turn the five local archives into public releases or prove independent
reproduction.

Private staging packets now preserve all 352 files byte-for-byte and attach
static audits rather than silently normalizing research code. The corrected
scan found no credential-like assignments, all 351 staged Python files parse
without syntax failures, and all five packets contain no absolute user-home
paths. The nine former CLIP cache locations in the Synthetic Creativity source
now resolve through a pinned public model identifier with validated online and
offline overrides. Its `girl` import is a pinned public LINCS dependency; the
six-file local `alfworld_bridge` remains an explicit publication-or-vendoring
decision rather than an ambiguous missing import.

The Categories packet now contains 35 unique source files and fifteen bounded
artifacts. These comprise an executable Chapter 6 consistency-and-gluing
notebook, two exact archived Chapter 8 plots, and twelve CSV/JSON artifacts for
the Chapter 10 and 11 language-model tables. In a fresh Python 3.11 environment,
the Chapter 6 notebook and artifact verifier passed 12 checks, the CPU smoke
test executed the Geometric Transformer, direct and denoising KET heads, and
the mean-field/depth models, and the table verifier passed 87 metadata and
rounded-cell assertions. This establishes executable packet connectivity and
bounded artifact provenance, not an independent training reproduction. The
Chapter 8 trajectories remain explicitly plot-only because their per-step raw
logs were not serialized.

The Judo Calculus packet now carries seven exact CSV artifacts supporting the
chapter's four directed-recovery rows and three calibration rows. Its verifier
passes, including the weak Sachs results. This is a table-provenance audit, not
an independent replication: dataset redistribution remains unresolved and the
archived PISA calibration runner requires a small formatting repair before a
clean rerun.

The Infinitesimal Creativity packet now carries 629 bounded, text-only records
across every one of its 19 documented experiment families and all 229
catalogued run directories. Its deterministic verifier passes after excluding
29 candidate records that contained absolute workstation paths or
credential-shaped assignments. The packet contains no image, video, prompt,
raw model output, dataset, cache, or model-weight artifact. This closes the
result-selection gap for private provenance staging. Its CPU-only smoke
contract also passes in a fresh Python 3.11 environment with NumPy 2.3.5. The
test covers six exact DIAL-core worlds and the CLIC admission/confirmation
split of eighteen worlds each; every registered exact-repair, closure,
preservation, Jacobi, false-extension, abstention, and presentation-invariance
metric passes. This is a bounded connectivity and semantic check, not a rerun
of learned or visual experiments. Publication still requires a license, an
ALFWorld dependency decision, and manual security, privacy, and media review.
The ALFWorld decision is now bounded by a checksummed manifest of the exact six
bridge files (44,646 bytes), a dependency and licensing review, and a verifier
that passes against the local source. The bridge remains deliberately absent
from the packet because no license file or independent repository identity was
observed; the remaining choice is to publish it separately, vendor it under an
explicit compatible license, or exclude the dependent RELIC drivers from the
first public companion.

The ATLAS/CSQL packet has additionally passed a private deterministic smoke run
against a generated five-node/seven-edge synthetic fixture. The fixture shares
the query schema but contains no source-corpus text or derived observations; it
demonstrates execution and expected query structure, not empirical reproduction.

The Deep URL packet now identifies the unique thirty-run family that generates
the book table: ten seeds each for GT, GT+DB, and MLP from the dated
`20260223_105353` run. All thirty raw CSVs and three reports are hash-anchored;
the CPU smoke test passes and the per-run metrics, bootstrap table, and Markdown
report regenerate byte-for-byte. Earlier thirty-run directories are retained as
noncanonical predecessors rather than silently pooled with the reported result.

## Release rule

A public-access change is a separate, deliberate action. Before that action:

1. Resolve or remove every rights exception.
2. Sign off visual privacy and manual accessibility.
3. Decide the domain, archive, correction tracker, and license policy.
4. Publish only curated code and result packets.
5. Rebuild and rerun the manifest and complete route audits.
6. Verify downloads, links, metadata, and MIME types from the deployed origin.
7. Record the deployed source commit and artifact hashes.

The external-link queue is separately bounded in the published
[`MANUAL_EXTERNAL_LINK_REVIEW.md`](MANUAL_EXTERNAL_LINK_REVIEW.md) packet. Automated
publisher refusal is not treated as proof that a DOI is broken, while a real
TLS hostname defect is not hidden inside the same category.

Once a dated PDF is public, it is immutable. A correction creates a new dated
edition and checksum; it never overwrites an earlier release.
