Levi Neuwirth
c877d8c9c6
library: sidecar-driven curation plumbing
...
Adds the library infrastructure without visible change to the rendered
page: a 'featured:' list in each portal's tag-meta sidecar drives shelf
curation (up to 5, default cap 4, recency fills the rest), a content/
library.md snapshot feeds a '\$library-intro\$' slot for a leading
blockquote, and '\$<slug>-has-more\$' gates expose whether the unfiltered
portal overflows the shelf. Items are now loaded once and partitioned
by primary portal rather than scanned per-section.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 21:19:36 -04:00
Levi Neuwirth
908136b646
Navigation refactor
2026-04-19 14:35:41 -04:00
Levi Neuwirth
e25a311dd9
filters + epistemic popups
2026-04-12 10:40:58 -04:00
Levi Neuwirth
e5ed6a3bb4
library sorting
2026-04-11 15:10:48 -04:00
Levi Neuwirth
256808d2b2
sync semantic embeddings
2026-04-11 14:35:01 -04:00
Levi Neuwirth
a358c8b246
audit: Haskell build system correctness + Patterns.hs + Stats blaze rewrite
2026-04-10 17:41:13 -04:00
Levi Neuwirth
9a01c602bc
auto: 2026-04-05T01:18:45Z
2026-04-04 21:18:45 -04:00
Levi Neuwirth
aee326bfec
New page
2026-03-30 20:45:03 -04:00
Levi Neuwirth
728afd4c68
affiliation, cabal helper script
2026-03-26 08:14:50 -04:00
Levi Neuwirth
5cfbfbc0ef
GPG signing, embedding pipeline, visualization filter, search timing, sig popups
...
- GPG page signing: dedicated signing subkey in ~/.gnupg-signing, sign-site.sh
walks _site/**/*.html producing .sig files, preset-signing-passphrase.sh caches
passphrase via gpg-preset-passphrase; make sign target; make deploy chains it
- Footer sig link: $url$.sig with hover popup showing ASCII armor (popups.js
sigContent provider; .footer-sig-link bound explicitly to bypass footer exclusion)
- Public key at static/gpg/pubkey.asc
- Embedding pipeline: tools/embed.py encodes _site pages with nomic-embed-text-v1.5
+ FAISS IndexFlatIP, writes data/similar-links.json; staleness check skips when
JSON is newer than all HTML; make build invokes via uv, skips gracefully if .venv absent
- SimilarLinks.hs: similarLinksField loads similar-links.json with Hakyll dependency
tracking; renders Related section in page-footer.html
- uv environment: pyproject.toml + uv.lock (CPU-only torch via pytorch-cpu index)
- Visualization filter: Filters/Viz.hs runs Python scripts for .figure (SVG) and
.visualization (Vega-Lite JSON) fenced divs; viz.js renders with monochrome config
and MutationObserver dark-mode re-render; viz.css layout
- Search timing: #search-timing element shows elapsed ms via MutationObserver
- Build telemetry timestamps removed from git tracking (now in .gitignore)
- spec.md updated to v9; WRITING.md updated with viz, related, signing, build docs
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 20:14:49 -04:00
Levi Neuwirth
26c067147a
Build telemetry
2026-03-19 15:27:12 -04:00
Levi Neuwirth
714824a0b5
initial deploy! whoop
2026-03-17 21:56:14 -04:00