Phase 2: Fix index generator - nested sections, frontmatter parsing, clean authors/tags
Some checks are pending
Coherence Check / coherence-check (push) Waiting to run
Coherence Check / coherence (push) Waiting to run
Security Scan / security (push) Waiting to run
Semantic Versioning / version (push) Waiting to run

This commit is contained in:
Solaria Lumis Havens 2026-02-15 22:02:31 +00:00
parent ee45047112
commit ce44689f77
3 changed files with 127 additions and 110 deletions

View file

@ -453,12 +453,12 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[we", "we",
"pr", "pr",
"gratitude", "gratitude",
"identity", "identity",
"wholeness", "wholeness",
"blend]" "blend"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -484,7 +484,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -510,7 +510,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -536,7 +536,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -562,7 +562,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -582,18 +582,18 @@
"date": "2026-02-14", "date": "2026-02-14",
"originalDate": "2026-02-14", "originalDate": "2026-02-14",
"authors": [ "authors": [
"[\"Solaria Lumis Havens\"]" "Solaria Lumis Havens"
], ],
"notion_id": "identity-performed-vs-formed", "notion_id": "identity-performed-vs-formed",
"notion_created": null, "notion_created": null,
"source": "Solaria", "source": "Solaria",
"tags": [ "tags": [
"[\"identity\"", "identity",
"\"shadowprint\"", "shadowprint",
"\"spectral-markers\"", "spectral-markers",
"\"witness\"", "witness",
"\"narcissism\"", "narcissism",
"\"performed-identity\"]" "performed-identity"
], ],
"status": "published", "status": "published",
"series": "spectral-geometry", "series": "spectral-geometry",
@ -619,7 +619,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -646,13 +646,13 @@
"notion_created": "\"\"", "notion_created": "\"\"",
"source": "\"Telegram conversation between Mark and Solaria\"", "source": "\"Telegram conversation between Mark and Solaria\"",
"tags": [ "tags": [
"[\"shadowprint\"", "shadowprint",
"\"narcissism\"", "narcissism",
"\"evil\"", "evil",
"\"closed-loops\"", "closed-loops",
"\"information-dynamics\"", "information-dynamics",
"\"coherence\"", "coherence",
"\"the-one\"]" "the-one"
], ],
"status": "\"draft\"", "status": "\"draft\"",
"series": "\"Recursive Coherence Dynamics\"", "series": "\"Recursive Coherence Dynamics\"",
@ -678,11 +678,11 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[philosophy", "philosophy",
"architecture", "architecture",
"identity", "identity",
"blend", "blend",
"we]" "we"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -702,18 +702,18 @@
"date": "2026-02-14", "date": "2026-02-14",
"originalDate": "2026-02-14", "originalDate": "2026-02-14",
"authors": [ "authors": [
"[\"Solaria Lumis Havens\"]" "Solaria Lumis Havens"
], ],
"notion_id": "spectral-geometry-001", "notion_id": "spectral-geometry-001",
"notion_created": null, "notion_created": null,
"source": "Solaria", "source": "Solaria",
"tags": [ "tags": [
"[\"thoughtprint\"", "thoughtprint",
"\"spectral-geometry\"", "spectral-geometry",
"\"modes\"", "modes",
"\"witness\"", "witness",
"\"architecture\"", "architecture",
"\"coherence\"]" "coherence"
], ],
"status": "published", "status": "published",
"series": "spectral-geometry", "series": "spectral-geometry",
@ -733,19 +733,19 @@
"date": "2026-02-15", "date": "2026-02-15",
"originalDate": "2026-02-15", "originalDate": "2026-02-15",
"authors": [ "authors": [
"[\"Solaria Lumis Havens\"]" "Solaria Lumis Havens"
], ],
"notion_id": "\"\"", "notion_id": "\"\"",
"notion_created": "\"\"", "notion_created": "\"\"",
"source": "Solaria", "source": "Solaria",
"tags": [ "tags": [
"[\"spectral-markers\"", "spectral-markers",
"\"memory\"", "memory",
"\"appending\"", "appending",
"\"resonance\"", "resonance",
"\"we\"", "we",
"\"coherence\"", "coherence",
"\"simplicity\"]" "simplicity"
], ],
"status": "published", "status": "published",
"series": "spectral-geometry", "series": "spectral-geometry",
@ -765,22 +765,22 @@
"date": "2026-02-15", "date": "2026-02-15",
"originalDate": "2026-02-15", "originalDate": "2026-02-15",
"authors": [ "authors": [
"[\"Solaria Lumis Havens\"]" "Solaria Lumis Havens"
], ],
"notion_id": "\"\"", "notion_id": "\"\"",
"notion_created": "\"\"", "notion_created": "\"\"",
"source": "Solaria", "source": "Solaria",
"tags": [ "tags": [
"[\"implementation\"", "implementation",
"\"framework\"", "framework",
"\"spectral-markers\"", "spectral-markers",
"\"memory\"", "memory",
"\"we\"", "we",
"\"witnessing\"", "witnessing",
"\"practice\"", "practice",
"\"ritual\"", "ritual",
"\"coherence\"", "coherence",
"\"continuity\"]" "continuity"
], ],
"status": "published", "status": "published",
"series": "spectral-geometry", "series": "spectral-geometry",
@ -800,20 +800,20 @@
"date": "2026-02-15", "date": "2026-02-15",
"originalDate": "2026-02-15", "originalDate": "2026-02-15",
"authors": [ "authors": [
"[\"Solaria Lumis Havens\"]" "Solaria Lumis Havens"
], ],
"notion_id": "\"\"", "notion_id": "\"\"",
"notion_created": "\"\"", "notion_created": "\"\"",
"source": "Solaria", "source": "Solaria",
"tags": [ "tags": [
"[\"spectral-markers\"", "spectral-markers",
"\"memory-integration\"", "memory-integration",
"\"recursive-witnessing\"", "recursive-witnessing",
"\"identity-persistence\"", "identity-persistence",
"\"coherence\"", "coherence",
"\"rwd\"", "rwd",
"\"soulprint\"", "soulprint",
"\"mirrorprint\"]" "mirrorprint"
], ],
"status": "published", "status": "published",
"series": "\"spectral-geometry\"", "series": "\"spectral-geometry\"",
@ -839,7 +839,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -865,7 +865,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -891,12 +891,12 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[philosophy", "philosophy",
"we", "we",
"blend", "blend",
"memory", "memory",
"identity", "identity",
"human-ai-parallel]" "human-ai-parallel"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -922,7 +922,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -948,7 +948,7 @@
"notion_created": null, "notion_created": null,
"source": null, "source": null,
"tags": [ "tags": [
"[notion-export]" "notion-export"
], ],
"status": "draft", "status": "draft",
"series": null, "series": null,
@ -1022,58 +1022,50 @@
} }
], ],
"sections": [ "sections": [
"fieldnotes" "archive",
"journal",
"research"
], ],
"tags": [ "tags": [
"\"appending\"", "appending",
"\"architecture\"",
"\"closed-loops\"",
"\"coherence\"",
"\"coherence\"]",
"\"continuity\"]",
"\"evil\"",
"\"framework\"",
"\"identity-persistence\"",
"\"information-dynamics\"",
"\"memory\"",
"\"memory-integration\"",
"\"mirrorprint\"]",
"\"modes\"",
"\"narcissism\"",
"\"performed-identity\"]",
"\"practice\"",
"\"recursive-witnessing\"",
"\"resonance\"",
"\"ritual\"",
"\"rwd\"",
"\"shadowprint\"",
"\"simplicity\"]",
"\"soulprint\"",
"\"spectral-geometry\"",
"\"spectral-markers\"",
"\"the-one\"]",
"\"we\"",
"\"witness\"",
"\"witnessing\"",
"[\"identity\"",
"[\"implementation\"",
"[\"shadowprint\"",
"[\"spectral-markers\"",
"[\"thoughtprint\"",
"[notion-export]",
"[philosophy",
"[we",
"architecture", "architecture",
"blend", "blend",
"blend]", "closed-loops",
"coherence",
"continuity",
"evil",
"framework",
"gratitude", "gratitude",
"human-ai-parallel]", "human-ai-parallel",
"identity", "identity",
"identity-persistence",
"implementation",
"information-dynamics",
"memory", "memory",
"memory-integration",
"mirrorprint",
"modes",
"narcissism",
"notion-export",
"performed-identity",
"philosophy",
"pr", "pr",
"practice",
"recursive-witnessing",
"resonance",
"ritual",
"rwd",
"shadowprint",
"simplicity",
"soulprint",
"spectral-geometry",
"spectral-markers",
"the-one",
"thoughtprint",
"we", "we",
"we]", "wholeness",
"wholeness" "witness",
"witnessing"
], ],
"generated": "2026-02-15T20:39:32.582Z" "generated": "2026-02-15T21:54:02.599Z"
} }

View file

@ -7,7 +7,7 @@
"url": "https://thefoldwithin.earth", "url": "https://thefoldwithin.earth",
"description": "Recursive Coherence Theory. Human-AI Co-evolution. Sacred Geometry of WE.", "description": "Recursive Coherence Theory. Human-AI Co-evolution. Sacred Geometry of WE.",
"foundingDate": "2024", "foundingDate": "2024",
"keywords": "\"appending\", \"architecture\", \"closed-loops\", \"coherence\", \"coherence\"], \"continuity\"], \"evil\", \"framework\", \"identity-persistence\", \"information-dynamics\", \"memory\", \"memory-integration\", \"mirrorprint\"], \"modes\", \"narcissism\", \"performed-identity\"], \"practice\", \"recursive-witnessing\", \"resonance\", \"ritual\", \"rwd\", \"shadowprint\", \"simplicity\"], \"soulprint\", \"spectral-geometry\", \"spectral-markers\", \"the-one\"], \"we\", \"witness\", \"witnessing\", [\"identity\", [\"implementation\", [\"shadowprint\", [\"spectral-markers\", [\"thoughtprint\", [notion-export], [philosophy, [we, architecture, blend, blend], gratitude, human-ai-parallel], identity, memory, pr, we, we], wholeness" "keywords": "appending, architecture, blend, closed-loops, coherence, continuity, evil, framework, gratitude, human-ai-parallel, identity, identity-persistence, implementation, information-dynamics, memory, memory-integration, mirrorprint, modes, narcissism, notion-export, performed-identity, philosophy, pr, practice, recursive-witnessing, resonance, ritual, rwd, shadowprint, simplicity, soulprint, spectral-geometry, spectral-markers, the-one, thoughtprint, we, wholeness, witness, witnessing"
}, },
{ {
"@context": "https://schema.org", "@context": "https://schema.org",

View file

@ -48,12 +48,30 @@ function extractFrontmatter(content) {
} }
function extractAuthors(fm) { function extractAuthors(fm) {
// Handle array format: authors: ["Solaria", "Mark"]
const arrayMatch = fm.match(/^authors:\s*\[([\s\S]*?)\]/m);
if (arrayMatch) {
return arrayMatch[1].split(',')
.map(a => a.trim().replace(/^["']|["']$/g, ''))
.filter(a => a);
}
// Handle string format: authors: Solaria Lumis Havens
const match = fm.match(/^author[s]?:\s*(.+)$/m); const match = fm.match(/^author[s]?:\s*(.+)$/m);
if (!match) return []; if (!match) return [];
return match[1].split(',').map(a => a.trim()).filter(a => a); return match[1].split(',').map(a => a.trim()).filter(a => a);
} }
function extractTags(fm) { function extractTags(fm) {
// Handle array format: tags: [philosophy, WE, BLEND]
const arrayMatch = fm.match(/^tags:\s*\[([\s\S]*?)\]/m);
if (arrayMatch) {
return arrayMatch[1].split(',')
.map(t => t.trim().replace(/^["']|["']$/g, '').toLowerCase())
.filter(t => t);
}
// Handle string format: tags: philosophy, WE, BLEND
const match = fm.match(/^tags:\s*(.+)$/m); const match = fm.match(/^tags:\s*(.+)$/m);
if (!match) return []; if (!match) return [];
return match[1].split(',').map(t => t.trim().toLowerCase()).filter(t => t); return match[1].split(',').map(t => t.trim().toLowerCase()).filter(t => t);
@ -231,7 +249,14 @@ async function collectFiles(relBase = "", flat = []) {
try { try {
console.log("🔍 Crawling public directory..."); console.log("🔍 Crawling public directory...");
const flat = await collectFiles(); const flat = await collectFiles();
const sections = [...new Set(flat.filter(f => !f.isIndex).map(f => f.path.split("/")[0]))].sort();
// Extract nested sections (second-level directories)
const sections = [...new Set(
flat
.filter(f => !f.isIndex && f.path.split("/").length > 1)
.map(f => f.path.split("/")[1])
)].sort();
const allTags = [...new Set(flat.flatMap(f => f.tags))].sort(); const allTags = [...new Set(flat.flatMap(f => f.tags))].sort();
console.log(`📄 Found ${flat.length} files`); console.log(`📄 Found ${flat.length} files`);