rfd: add freshness, inspired-by metadata and KaTeX #9
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "rfd/tree-and-relevance"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Add two new YAML metadata fields to RFD documents: - inspired-by: Array of RFD numbers that inspired this one (freshness forward links) - freshness: Content relevance with values "fresh", "stale", or "rotten" The inspired-by field can be a single number or an array: inspired-by: 1 inspired-by: [1, 2, 10] Freshness values: freshness: fresh # current, actively maintained freshness: stale # aging, needs review freshness: rotten # obsolete Implementation: - Two-pass pandoc build using Lua filters (collect_inspired.lua and render_metadata.lua) to extract and render metadata - Type-safe validation: invalid values (non-positive integers for inspired-by, invalid freshness values) are handled gracefully: * Invalid inspired-by values cause the entire field to be treated as absent (no backlinks generated) * Invalid freshness values display as light-gray badges - Deduplicates inspired-by array values - Broken links are intentionally created (e.g., referencing non-existent RFDs) with semantic color coding for freshness Files changed: - build.osh: Add pass 1 loop and use render_metadata.lua in pass 2 - collect_inspired.lua: New pass 1 filter to collect inspiration pairs - render_metadata.lua: New pass 2 filter to render metadata - templates/rfd.html: Add freshness, inspired, inspired-by rows - static/styles.css: Add freshness badge and link styles - template.md: Add commented field documentationmain.js now calls initSearch('search-input', 'search-output') so the search box on individual RFD pages actually triggers Stork search. Previously only landing.js called initSearch, so search only worked on the index page.