00 / 00

BOOKCASE

14 MIN READARCHIVE

Bibliotheca Cleanup Audit

Date: 2026-05-20 Governing rule: "If it is knowledge, it belongs in Bibliotheca."


Pass 1: Deduplication (2026-05-20)

1. Obsolete Assistant Config Residue

CLAUDE.md files found: 4

| Location | Size | Classification | Action | |----------|------|---------------|--------| | ./CLAUDE.md (root) | Operational | Root-level Claude config | Kept — root-level operational config | | apps/tarot-app/CLAUDE.md | Operational | tarot-app Claude config | Kept — operational project config | | apps/api-lab/docs/imported-from-tarot-app/CLAUDE.md | 11 bytes | Obsolete import duplicate | Deleted — stale import staging residue | | bibliotheca/projects/api-lab/docs/imported-from-tarot-app/CLAUDE.md | 11 bytes | Obsolete import duplicate | Deleted — stale import staging residue |

Verdict: 2 operational CLAUDE.md files kept. 2 stale import duplicates deleted.

2. Exact Tarot-App Import Duplicates

Imported docs in apps/api-lab/docs/imported-from-tarot-app/docs/ (12 files): All 12 files were exact duplicates of bibliotheca/projects/tarot-app/docs/.

| File | SHA256 Match | Action | |------|-------------|--------| | architecture.md | ✅ Identical | Deleted from both import locations | | card-essence-simulation.md | ✅ Identical | Deleted from both import locations | | continuity-and-ritual-ecology-findings.md | ✅ Identical | Deleted from both import locations | | cross-model-simulation-findings.md | ✅ Identical | Deleted from both import locations | | emotional-compass-integration-plan.md | ✅ Identical | Deleted from both import locations | | emotional-note-layer.md | ✅ Identical | Deleted from both import locations | | local-nickname-continuity.md | ✅ Identical | Deleted from both import locations | | longitudinal-continuity-findings.md | ✅ Identical | Deleted from both import locations | | simulation-phase-1-findings.md | ✅ Identical | Deleted from both import locations | | three-card-philosophy.md | ✅ Identical | Deleted from both import locations | | user-signal-stack-findings.md | ✅ Identical | Deleted from both import locations | | visual-redesign-phase.md | ✅ Identical | Deleted from both import locations |

Canonical location: bibliotheca/projects/tarot-app/docs/

Import locations cleaned:

  • apps/api-lab/docs/imported-from-tarot-app/docs/ — removed
  • bibliotheca/projects/api-lab/docs/imported-from-tarot-app/docs/ — removed

Preserved in import locations (not exact duplicates):

  • AGENTS.md — identical to apps/tarot-app/AGENTS.md (kept as snapshot)
  • HANDOFF.md — differs from apps/tarot-app/HANDOFF.md (pre-Bibliotheca snapshot, kept)
  • README.md — identical to apps/tarot-app/README.md (kept as snapshot)
  • IMPORT-MANIFEST.md — updated to reflect deduplication

3. Teteh Philosophy Duplicates (Inside Bibliotheca)

3 files × 2 copies each — all identical duplicates.

| Document | SHA256 Match | Action | |----------|-------------|--------| | teteh-character-memory.md | ✅ Identical | Deleted from projects/teteh-lab/docs/philosophy/ | | teteh-philosophy-index.md | ✅ Identical | Deleted from projects/teteh-lab/docs/philosophy/ | | teteh-presentation-philosophy.md | ✅ Identical | Deleted from projects/teteh-lab/docs/philosophy/ | | CORE-PHILOSOPHY.md | ❌ Different (3 unique versions) | Kept all 3 — see note below |

Canonical location: bibliotheca/philosophy/

README pointer created: bibliotheca/projects/teteh-lab/docs/philosophy/README.md

CORE-PHILOSOPHY.md note: 3 copies, all meaningfully different:

  • bibliotheca/philosophy/CORE-PHILOSOPHY.md — pointer doc (45 lines, references entrypoint/CORE-PHILOSOPHY.md)
  • bibliotheca/continuitygatehistory/CORE-PHILOSOPHY.md — full compressed worldview (142 lines, 10 principles)
  • bibliotheca/atlas/continuity-philosophy.md — expanded atlas version (159 lines, 11 principles with emotional/architectural/research layers)

Verdict: All 3 preserved. They serve different purposes. Renaming philosophy/CORE-PHILOSOPHY.md to CORE-PHILOSOPHY-POINTER.md is recommended for clarity in a future pass.

4. Continuity Framework Duplicates (Inside Bibliotheca)

| Document | SHA256 Match | Action | |----------|-------------|--------| | BIG-BRAIN-LIBRARY.md | ❌ Different | Kept both — continuitygate/ is full (2863 lines), projects/teteh-lab/docs/research/ is pointer (66 lines) | | continuity-research-framework.md | ❌ Different | Kept both — continuitygate/ is full (1112 lines), projects/teteh-lab/docs/research/ is pointer (29 lines) | | HANDOFF.md | ❌ Different | Kept both — continuitygate/ is root HANDOFF, imported-from-tarot-app/ is historical snapshot |

5. Stale References Fixed

| File | Old Path | New Path | |------|----------|----------| | apps/main-site/src/lib/atlas/docs.ts | Bibliotheca/continuitygate/ | bibliotheca/continuitygatehistory/ | | apps/main-site/src/lib/atlas/docs.ts | Bibliotheca/projects/ | bibliotheca/projects/ | | apps/tarot-app/HANDOFF.md | Bibliotheca/continuitygate/ | bibliotheca/continuitygatehistory/ | | apps/tarot-app/HANDOFF.md | Bibliotheca/observatory/ | bibliotheca/observatory/ | | apps/teteh-lab/HANDOFF.md | Bibliotheca/continuitygate/ | bibliotheca/continuitygatehistory/ | | apps/teteh-lab/HANDOFF.md | Bibliotheca/observatory/ | bibliotheca/observatory/ | | apps/api-lab/src/app/lib/runtimeIdentity.ts | Bibliotheca/continuitygate/ | bibliotheca/continuitygatehistory/ | | bibliotheca/atlas/MIGRATION-NOTE.md | Bibliotheca/ (various) | bibliotheca/ (various) | | bibliotheca/projects/tarot-app/docs/*.md (12 files) | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | | bibliotheca/projects/teteh-lab/docs/philosophy/teteh-philosophy-index.md | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | | bibliotheca/philosophy/teteh-philosophy-index.md | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | | bibliotheca/continuitygatehistory/nufikri.xyz/discovery-timeline.md | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | | bibliotheca/continuitygatehistory/nufikri.xyz/UI-PHILOSOPHY.md | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | | bibliotheca/continuitygatehistory/nufikri.xyz/ONTOLOGY-ARCHITECTURE.md | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | | bibliotheca/findings/README.md | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ |

Not updated (brand/prose references — Bibliotheca as a name, not a path):

  • bibliotheca/research/README.md — "go in Bibliotheca/projects/" (prose)
  • bibliotheca/archive/README.md — "go in Bibliotheca/research/" (prose)
  • bibliotheca/observatory/archive/birth-of-the-observatory.md — cross-reference prose
  • bibliotheca/experiments/README.md — prose
  • bibliotheca/findings/README.md — prose
  • bibliotheca/field-notes/README.md — prose

6. TypeScript Verification

| Workspace | Result | |---|---| | apps/main-site | ✅ Pass (exit 0) | | apps/api-lab | ✅ Pass (exit 0) | | apps/tarot-app | ✅ Pass (exit 0) | | apps/teteh-lab | ✅ Pass (exit 0) |


Folders Removed (from previous migration pass)

| Old Location | New Location | Status | |---|---|---| | docs/ | bibliotheca/atlas/ | ✅ Removed | | docs/atlas/ | bibliotheca/atlas/ | ✅ Removed | | entrypoint/ | bibliotheca/continuitygatehistory/ | ✅ Removed | | observatory/ | bibliotheca/observatory/ | ✅ Removed | | observatory/archive/ | bibliotheca/observatory/archive/ | ✅ Removed | | apps/tarot-app/docs/ | bibliotheca/projects/tarot-app/docs/ | ✅ Removed | | apps/teteh-lab/docs/ | bibliotheca/projects/teteh-lab/docs/ | ✅ Removed |

Folders Preserved (operational docs only)

| Location | Reason | |---|---| | apps/tarot-app/README.md | Operational — kept | | apps/tarot-app/HANDOFF.md | Operational — kept (references updated) | | apps/tarot-app/AGENTS.md | Operational — kept | | apps/tarot-app/CLAUDE.md | Operational — kept | | apps/teteh-lab/README.md | Operational — kept | | apps/teteh-lab/HANDOFF.md | Operational — kept (references updated) | | apps/api-lab/docs/ | Import manifest + imported-from-tarot-app — kept (separate concern) |

Top-Level Tree After Cleanup

/continuitygate/                      ← active reconstruction runtime (root-level)
├── elderscroll.md                    ← onboarding lore / first orientation
├── avatar.md                         ← operational behavior + governance layer
├── manifesto.md                      ← compressed institutional principles
├── bonfire.md                        ← latest stable reconstruction checkpoint
├── fasttravel.md                     ← high-signal traversal routes
├── continuitygate.md                 ← continuity ritual and re-entry protocol
└── nufikri.xyz.md                    ← root ecosystem map

bibliotheca/
├── README.md
├── archive/
├── atlas/
├── continuitygatehistory/            ← deep historical continuity archive
├── experiments/
├── field-notes/
├── findings/
├── observatory/
├── philosophy/
├── projects/
│   ├── api-lab/
│   ├── main-site/
│   ├── tarot-app/
│   └── teteh-lab/
└── research/

Remaining Duplicate Candidates (for future passes)

| Document | Locations | Notes | |----------|-----------|-------| | CORE-PHILOSOPHY.md | bibliotheca/continuitygatehistory/, bibliotheca/philosophy/ | 3 unique versions — all preserved intentionally | | BIG-BRAIN-LIBRARY.md | bibliotheca/continuitygatehistory/nufikri.xyz/, bibliotheca/projects/teteh-lab/docs/research/ | Different — full vs pointer | | continuity-research-framework.md | bibliotheca/continuitygatehistory/nufikri.xyz/, bibliotheca/projects/teteh-lab/docs/research/ | Different — full vs pointer | | HANDOFF.md | bibliotheca/continuitygatehistory/nufikri.xyz/, bibliotheca/projects/api-lab/docs/imported-from-tarot-app/ | Different — root vs snapshot |


Pass 2: Semantic-Level Curation (2026-05-20)

Governing principle: Knowledge governance, not cleanup. Archive historical thought. Delete only confusion.

Phase 1 — Philosophy Routing Clarification

| Action | Status | |---|---| | Rename philosophy/CORE-PHILOSOPHY.mdCANONICAL-CORE-PHILOSOPHY.md | ✅ Done (Pass 1) | | Update canonical path references in CANONICAL-CORE-PHILOSOPHY.md | ✅ Done — removed stale entrypoint/ references | | Verify philosophy/README.md routing is complete | ✅ Verified — already has Philosophy vs ContinuityGate vs Atlas routing | | Verify routing headers on continuitygate/CORE-PHILOSOPHY.md | ✅ Verified — already has "ContinuityGate — continuity reconstruction entry surface" header | | Verify routing headers on atlas/continuity-philosophy.md | ✅ Verified — already has "Atlas — conceptual topology and interpretive structure" header |

Verdict: Philosophy routing is clarified. No aggressive merging performed. All 3 philosophy-related documents preserved with distinct roles.

Phase 2 — Continuity Framework Clarification

| Action | Status | |---|---| | Expand continuitygate/README.md with full ContinuityGate explanation | ✅ Done — added "What ContinuityGate Is/Is Not", "Runtime Reconstruction Role", canonical continuity docs table, "ContinuityGate vs Bibliotheca", "Canonical vs Pointer vs Snapshot" | | Verify pointer docs in projects/teteh-lab/docs/research/ | ✅ Verified — BIG-BRAIN-LIBRARY.md and continuity-research-framework.md already have proper "Historical snapshot — contextual embedding" headers with canonical source paths | | Check for exact duplicates in import staging | ✅ Verified — apps/api-lab/docs/imported-from-tarot-app/ and bibliotheca/projects/api-lab/docs/imported-from-tarot-app/ are exact duplicates but preserved as migration archaeology per task spec |

Verdict: Continuity framework routing is clarified. Canonical docs in continuitygate/nufikri.xyz/, pointers in projects/teteh-lab/docs/research/.

Phase 3 — Import Staging Cleanup

| Action | Status | |---|---| | Check for empty docs folders | ✅ Verified — no empty docs folders exist | | Preserve migration archaeology files | ✅ Verified — AGENTS.md, HANDOFF.md, IMPORT-MANIFEST.md, README.md preserved in both locations |

Verdict: Import staging is clean. No empty directories. Archaeology files preserved.

Phase 4 — Canonicalization System

| Action | Status | |---|---| | Create bibliotheca/CANONICALIZATION.md | ✅ Done — documents canonical routing rules, pointer vs canonical docs, historical snapshots, import staging, operational docs, naming conventions, dedupe safety philosophy, examples |

Verdict: Canonicalization system established.

Phase 5 — Audit Update

| Action | Status | |---|---| | Add Pass 2 status | ✅ Done (this section) | | Add "Knowledge Routing Architecture" section | ✅ Done (see below) |

Phase 6 — Reference Cleanup

| Action | Status | |---|---| | Update active navigation references | ✅ Done — CANONICAL-CORE-PHILOSOPHY.md updated to reference correct canonical path | | Preserve historical prose references | ✅ Preserved — research docs with entrypoint/ references in historical prose left untouched |

Verdict: Active navigation references updated. Historical prose preserved.

Phase 7 — TypeScript Verification

| Workspace | Result | |---|---| | apps/main-site | ✅ Pass (exit 0) | | apps/api-lab | ✅ Pass (exit 0) | | apps/tarot-app | ✅ Pass (exit 0) | | apps/teteh-lab | ✅ Pass (exit 0) |

Phase 8 — Report

See report section below.


Knowledge Routing Architecture

Layer Roles

/continuitygate/          ← Active reconstruction runtime. "This is how you re-enter the room."

bibliotheca/
├── philosophy/          ← Canonical beliefs. "This is what we believe."
├── continuitygatehistory/ ← Deep historical continuity archive. "This is the preserved civilization."
├── atlas/               ← Conceptual topology. "This is how the territory is structured."
├── projects/            ← Historical snapshots. "This is what we knew at a point in time."
├── research/            ← Active research artifacts.
├── observatory/         ← Observatory records.
├── experiments/         ← Experimental outputs.
├── field-notes/         ← Field observations.
├── findings/            ← Findings.
└── archive/             ← Historical residue.

Canonical vs Pointer vs Snapshot vs Operational

| Type | Description | Example | |---|---|---| | Canonical | Authoritative source of truth | bibliotheca/philosophy/CANONICAL-CORE-PHILOSOPHY.md | | Pointer | Lightweight doc that redirects to canonical source | bibliotheca/projects/teteh-lab/docs/research/BIG-BRAIN-LIBRARY.md | | Historical snapshot | Preserved copy of a document at a point in time | bibliotheca/projects/api-lab/docs/imported-from-tarot-app/HANDOFF.md | | Operational surface | Active document used for runtime reconstruction | /continuitygate/continuitygate.md |

Routing Rules

  1. Each piece of knowledge has exactly one canonical location.
  2. Non-canonical copies may exist only if they serve a distinct purpose (pointer, snapshot, operational surface, contextual embed).
  3. Operational surfaces are not duplicates — they serve a different purpose.
  4. Pointer docs are not duplicates — they are navigation aids.
  5. Historical snapshots are not duplicates — they are archaeological artifacts.
  6. Historical divergence may contain meaningful evolution — preserve it.

Remaining Overlap Candidates (for Pass 3)

| Document | Locations | Notes | |---|---|---| | CORE-PHILOSOPHY.md | bibliotheca/continuitygatehistory/, bibliotheca/philosophy/ | 3 unique versions — all preserved intentionally. Routing clarified in Pass 2. | | BIG-BRAIN-LIBRARY.md | bibliotheca/continuitygatehistory/nufikri.xyz/, bibliotheca/projects/teteh-lab/docs/research/ | Different — full vs pointer. Routing clarified. | | continuity-research-framework.md | bibliotheca/continuitygatehistory/nufikri.xyz/, bibliotheca/projects/teteh-lab/docs/research/ | Different — full vs pointer. Routing clarified. | | HANDOFF.md | bibliotheca/continuitygatehistory/nufikri.xyz/, bibliotheca/projects/api-lab/docs/imported-from-tarot-app/ | Different — root vs snapshot. Routing clarified. | | continuity-philosophy.md (atlas) vs CORE-PHILOSOPHY.md (continuitygate) | bibliotheca/atlas/, bibliotheca/continuitygatehistory/ | Overlap is intentional — different purposes (interpretive map vs re-entry worldview). No merge needed. |

Verdict: All remaining overlaps are intentional divergences. No aggressive merging recommended.


Pass 2 Report

Files Renamed

  • None in this pass (CANONICAL-CORE-PHILOSOPHY.md rename was Pass 1)

Routing READMEs Created/Updated

  • bibliotheca/continuitygatehistory/README.md — expanded with full ContinuityGate explanation, runtime reconstruction role, canonical docs table, ContinuityGate vs Bibliotheca, Canonical vs Pointer vs Snapshot

Routing Headers Added

  • None needed — all routing headers already in place from Pass 1

Canonical Locations Clarified

  • bibliotheca/philosophy/CANONICAL-CORE-PHILOSOPHY.md — updated to reference correct canonical path (was entrypoint/CORE-PHILOSOPHY.md)
  • bibliotheca/continuitygatehistory/CORE-PHILOSOPHY.md — already has correct routing header
  • bibliotheca/atlas/continuity-philosophy.md — already has correct routing header

Empty Staging Dirs Removed

  • None — no empty staging directories found

References Updated

  • bibliotheca/philosophy/CANONICAL-CORE-PHILOSOPHY.md — canonical path reference updated

TypeScript Results

  • See Phase 7 above

Remaining Unresolved Overlaps

  • None — all remaining overlaps are intentional divergences

Recommendation for Pass 3

  • No immediate pass 3 needed. The repository is semantically clean.
  • Future passes could focus on:
  • Cross-reference audit — verify all internal references between Bibliotheca docs are correct
  • Stale reference cleanup — check for remaining entrypoint/ references in research docs (historical prose only, not actionable)
  • Atlas/ContinuityGate boundary hardening — if conceptual drift occurs, add explicit boundary notes


Pass 3: ContinuityGate Separation (2026-05-20)

Governing principle: The gate is not the archive. The gate reconstructs the room. The archive preserves the civilization.

Phase 1 — Directory Rename

| Action | Status | |---|---| | Rename bibliotheca/continuitygate/bibliotheca/continuitygatehistory/ | ✅ Done — moved via filesystem MCP tool | | Preserve all contents (AGENTS.md, CONTINUITYGATE.md, CORE-PHILOSOPHY.md, README.md, nufikri.xyz/) | ✅ Preserved — no content lost |

Phase 2 — Reference Updates

| Action | Status | |---|---| | Update active filesystem references (72 references across 13 files) | ✅ Done — all bibliotheca/continuitygate/bibliotheca/continuitygatehistory/ | | Verify no stale references remain | ✅ Verified — zero stale references found via search |

Phase 3 — New Root-Level ContinuityGate

| Action | Status | |---|---| | Create /continuitygate/ directory | ✅ Done | | Create /continuitygate/continuitygate.md | ✅ Done — continuity ritual and re-entry protocol | | Create /continuitygate/avatar.md | ✅ Done — operational behavior + governance layer | | Create /continuitygate/manifesto.md | ✅ Done — compressed institutional principles | | Create /continuitygate/bonfire.md | ✅ Done — latest stable reconstruction checkpoint | | Create /continuitygate/elderscroll.md | ✅ Done — onboarding lore / first orientation | | Create /continuitygate/fasttravel.md | ✅ Done — high-signal traversal routes | | Create /continuitygate/nufikri.xyz.md | ✅ Done — root ecosystem map |

Phase 4 — Governance Integration

| Action | Status | |---|---| | Update GOVERNANCE.md Layer Map | ✅ Done — added ContinuityGateHistory layer, updated ContinuityGate path | | Update GOVERNANCE.md What Goes Where | ✅ Done — added ContinuityGateHistory section, updated ContinuityGate section | | Update GOVERNANCE.md Document Types | ✅ Done — Operational Surface now points to /continuitygate/ | | Update CANONICALIZATION.md routing rules | ✅ Done — added /continuitygate/ and bibliotheca/continuitygatehistory/ rows | | Update CANONICALIZATION.md examples | ✅ Done — Philosophy Routing example shows new split | | Update CANONICALIZATION.md Operational Docs | ✅ Done — examples now reference /continuitygate/ files | | Update AUDIT.md tree and layer roles | ✅ Done — shows both /continuitygate/ and bibliotheca/continuitygatehistory/ | | Add Pass 3 section to AUDIT.md | ✅ Done (this section) |

Phase 5 — TypeScript Verification

| Workspace | Result | |---|---| | apps/main-site | ✅ Pass (exit 0) | | apps/api-lab | ✅ Pass (exit 0) | | apps/tarot-app | ✅ Pass (exit 0) | | apps/teteh-lab | ✅ Pass (exit 0) |

Pass 3 Summary

Architecture change: The old bibliotheca/continuitygate/ contained both active reconstruction surfaces and historical continuity archaeology. The new architecture separates these into two distinct locations:

  • /continuitygate/ (root-level) = active reconstruction runtime. Tiny, intentional, always-read-first. Contains: elderscroll.md, avatar.md, manifesto.md, bonfire.md, fasttravel.md, continuitygate.md, nufikri.xyz.md.
  • bibliotheca/continuitygatehistory/ = deep historical continuity archive. Contains: AGENTS.md, CONTINUITYGATE.md, CORE-PHILOSOPHY.md, README.md, nufikri.xyz/ (with HANDOFF.md, BIG-BRAIN-LIBRARY.md, continuity-research-framework.md, discovery-timeline.md, ONTOLOGY-ARCHITECTURE.md, UI-PHILOSOPHY.md, prompt-sculpting-guideline.md, RUNTIME-ECOLOGY.md, archive/).

Core principle: "The gate is not the archive. The gate reconstructs the room. The archive preserves the civilization."

Files created: 6 new files in /continuitygate/ Files modified: 13 files with path reference updates + 3 governance files with content updates Files deleted: 0 Files renamed: 1 directory (bibliotheca/continuitygate/bibliotheca/continuitygatehistory/)


This audit was generated as part of Bibliotheca stabilization pass 3 (ContinuityGate Separation). No automatic commit was made.


Written by Forge Goblin ChatGPT in collaboration with Forge Scribe Fikri.