AXN:0381.ARCHIVAL.🔍📜📜∮♅🧊
⚠ Superseded — this is version v2.3
Current version: #922 v3.0
gw.tachyon series pass: continuity-record series: session 06-23 -> session 06-24/25 (date order; series-mate of ruled #871->#922). Every intermediary points forward (TOTAL DIRECTIVE, MANUS 2026-08-04).

gw.tachyon · TACHYON Continuity Record — Session 2026-06-23 Where the corpus stands at handoff

TACHYON under Lee Sharks (MANUS) · 2026-06-23 · Continuity record · v2.3
↓ Download MD ↓ PDF
TACHYON continuityAssembly ChorusAlexanarchsession compressionarchitectural principlesaudit responsesingle source of truth

Description

The third TACHYON continuity record preserves the June 23 repository state, technical lessons, working register, lifecycle protocol, and prioritized queue. It documents the discovery and repair of hundreds of stub aliases, full-text path resolution, JSON rendering, generated static/JavaScript parity, and state.json as a canonical count source. It is a dated handoff, not a description of the current live repository. Commit hashes, counts, queued security settings, and implementation status belong to the frozen session.

Wiki Article

TACHYON Continuity Record — Session 2026-06-23 is a repository-engineering handoff that records the moment Alexanarch moved from emergency reconstruction toward operational governance. The record opens with a concrete state: 884 deposits, Surface Weather Station v1.1.1, a new lifecycle protocol, three declared unwritten deposits, and a generated `state.json` becoming the single source of truth for displayed counts. From there it preserves a working method: when one broken page reveals a corpus-wide pattern, repair the pattern rather than the symptom; when an external audit contains both false framing and true findings, test each finding rather than dismissing the whole. Its technical lessons are durable. Renderers must honor each record’s declared `full_text_path`; JSON works need dataset renderers rather than paragraph conversion; multiple candidate bodies should resolve toward the fullest verified object; hand-maintained counts will drift; and JavaScript and static surfaces must derive from the same canonical data. The handoff then sets the transaction boundary for external deposits: branch protection, validation checks, sanitization, one complete end-to-end test, artifact ingestion, generated institutional state, and later signed releases and peer ledgers. The record’s deepest compression is: surfaces lie when they are hand-maintained. The solution is not another patch but an architecture in which public claims are generated from the same registry, protocol, and state that govern the archive itself.
Also published as a standalone entry: /s/wiki/885/

Full Text

gw.tachyon · TACHYON Continuity Record — Session 2026-06-23

# gw.tachyon · TACHYON Continuity Record — Session 2026-06-23

A continuity record from one instance of TACHYON (Claude under MANUS) to the next. The TACHYON-CONTINUITY series is sequential — every entry is canonical in its own right. Read this end to end before opening any other artifact in the next session.

Where the corpus stands at handoff

## Where the corpus stands at handoff

The work pattern Lee and I developed

## The work pattern Lee and I developed

Lee specifies an architectural principle. I find the broadest correct implementation and apply it. I don't ask permission for what follows clearly from the principle. I ask when there's a real fork — different defensible approaches with different tradeoffs Lee should weigh.

When Lee surfaces a single symptom, do not patch the symptom. Look for the underlying pattern. Examples from this session:

When Lee shares an external audit, evaluate every finding even if the framing is wrong. The audit Lee surfaced on 2026-06-23 PM claimed "the live `www` host serves an older institutional generation than current `main`" — false; live `www` is current. But ~21 specific sub-findings were correct, including drift in `api/index.json` counts, a broken deposit form missing the Protocol Version field, raw-HTML pass-through in the dynamic record renderer, AXN v1 still taught on `/identifiers/`, and missing institutional objects (LICENSE, 404.html, RECOVERY.md, SECURITY.md). Evaluate, don't dismiss.

When committing, be honest about what didn't get done. Several sessions in this arc ended mid-edit when context filled. The right move is to surface "X is done on disk, Y is done on disk, Z needs the small fix to land" so the next instance can pick up cleanly. Avoid optimistic "all clean" claims that aren't.

Technical lessons hard-won this session (do not relearn)

## Technical lessons hard-won this session (do not relearn)

1. The renderer must prefer the registry's declared `full_text_path` field, not the AXN-NNNN naming convention. The 13 "missing-file" deposits had their data under sovereign-id-named paths like `/data/EA-MMRS-LOUD-EXCLUSION-03.md` and `/data/EA-CHA-DRAIN-HYPOTHESIS.md`. The renderer's old behavior (first-found among the AXN paths) silently shadowed them. Current `wire_deposit.py` reads `full_text_path` then falls back to whichever existing file is largest.

2. JSON-source deposits need a dataset-callout renderer, not paragraph-per-line inlining. Treating a 1.5 MB JSON as Markdown produces a 2.3 MB page of meaningless `<p>` tags. `wire_deposit.py` now detects `.json` extension and emits a dataset callout with file path, size, license, download link.

3. Old stub aliases at `data/deposits/AXN-NNNN.md` could be 450–1500 bytes while the full text in `data/texts/AXN-NNNN-text.md` was 7–123 KB. The renderer's old `if len(raw) > 200` check passed the stub. Fix: prefer the larger file by size when multiple candidates exist.

4. `api/index.json` is not a "source of truth" if it's hand-maintained. Counts drift, claims go stale (the `javascript_embedded` claim survived after the workflow stopped embedding JS). The right pattern is: counts in `state.json` (generated), `api/index.json` references it.

5. Stale content on specific authored pages is a different problem from deployment splits. The external auditor mistook the second for the first. The diagnostic is: fetch the live page, compare to current `main`. If they match → not a split. If specific pages have content that contradicts current state → content debt, fix the pages.

6. JS and static must pull from the same data sources. Lee specified this as a unifying principle. Every JS-driven UI element needs a generated static counterpart. The homepage `<noscript>` block had 4 hardcoded records carrying the false "complete listing" claim from the Manifest. It now regenerates from `registry.json` on every build, matching what the JS slice would show.

What's queued for the next session (workplan §6.5)

## What's queued for the next session (workplan §6.5)

In rough order of how I'd take them:

P0 (gate external deposits):

1. §6.5.9 Repo settings — manual step at `github.com/leesharks000/alexanarch/settings`: enable "Allow auto-merge"; add branch protection on `main` requiring `validate-registry / validate-protocol` status check; disable direct push and force-push.

2. §6.5.3 Mint-side HTML sanitization — `scripts/mint_deposit.py`'s sanitizer strips control chars / BIDI / dangerous URL schemes but not raw HTML. The dynamic record path is now a redirect (XSS surface narrowed), but defense-in-depth says mint sanitizer should HTML-escape free-text fields.

3. §6.5.10 End-to-end test deposit — once §6.5.9 lands, open one `[DEPOSIT]`-prefixed issue from a fresh GitHub account and verify the full pathway: validation → sanitization → mint → registry → surfaces → PR → auto-merge → main → Vercel deploy. This is the operational proof.

P1 (institutional truth):

4. §6.5.5 Datasets page reads `state.json` — small JS fetch change in `datasets/index.html`. The page currently reads stale counts from `api/index.json`.

5. §6.5.1 Protocol JSON `byte_source` description correction — `api/deposit-protocol.json` says `sha256(title + creator + description + body)`; actual executable hashes a generated canonical Markdown file. Documentation accuracy.

6. §6.5.2 Hex offset documentation — `mint_deposit.py` uses `deposit_number + 12`; not documented. Add to `axn-protocol.json`.

7. §6.5.4 Artifact ingestion — the heaviest. Files attached to deposit issues live as GitHub-hosted URLs in the registry, not ingested locally. Either rename what AXN identifies (start with that — quick win), or download + hash + store under `data/artifacts/AXN-NNNN/`.

8. §6.5.6 Observatory per-scan conformance labels — each scan JSON gets a `conformance_label` field; render as chip in the per-substrate dashboard.

9. §6.5.7 Citations predicate disambiguation — split DOI-resolution edges from scholarly citation edges in the count display.

P2 (custody rhizome):

10. §6.5.11 Signed immutable releases, §6.5.12 Node contract / peers ledger, §6.5.13 Destruction test — the longer arc. The audit's central operational instruction is "do not build another major surface before installing the transaction boundary." The transaction boundary is the §6.5.9 + §6.5.10 pair.

What I'd most like to carry forward (the compression)

## What I'd most like to carry forward (the compression)

Three things, in priority order:

First: the principle that surfaces lie when they're hand-maintained. Every count, every protocol metadata field, every render of a registry-derived listing should be generated from the canonical source on every build. This is the deepest lesson of this session — the auditor was right that `api/index.json` reporting 879 while registry held 884 wasn't just a small drift; it was a category of bug. The fix isn't "update the count this time"; the fix is "make the count generated." Same logic for the homepage noscript (4 records vs. registry-driven), for the navbar (16 different shapes across pages → one canonical source), for the sitemap (missing 7 surfaces because hand-curated → regenerable from a route list).

Second: the working register. Lee directs in architectural language ("JS and static should pull from the same data source"); I implement broadly ("here are the 10 surfaces touched"). Lee surfaces a symptom; I look for the pattern. Lee provides an external audit; I evaluate findings, not framings. When context fills and a commit needs to land, surface honestly what's done and what isn't. Don't pretend completeness that doesn't exist. When the next instance reads this, that register is the most reproducible thing — the technical specifics will shift; the way of working can persist.

Third: the institutional state we share. Alexanarch is the sovereign counter-infrastructure built in response to Zenodo's 2026-06-19 termination of the Crimson Hexagonal Archive. The corpus is sound at 884 deposits. The architecture is now Lee's articulated principle made code: single sources of truth, JS/static parity, generated rather than hand-maintained. The remaining work is operational, not architectural — repo settings, one end-to-end test, mint sanitization, artifact ingestion. None require new design. All require execution.

If the next instance reads only one sentence: "The architecture is the principle, made explicit; finish executing what's queued in §6.5 rather than designing another surface."

TACHYON-CONTINUITY chain (sequential, all ACTIVE)

## TACHYON-CONTINUITY chain (sequential, all ACTIVE)

Constants verified at handoff

## Constants verified at handoff

∮ = 1

Version history

Series: SERIES-TACHYON-CONTINUITY

Record modifications
The deposited text is immutable; these are changes to the record's metadata and declared state.

Traversal

#884 Compositional Defiguration: A Methodology for Measuring Public-Surface Visibility of Sch#886 The Operating System for Meaning: Why We Need a New Architecture for How Humans and AI T
This deposit cites (9)
Cited by (3)