Feature flag:
- [project.extra.action_points] enabled (default true) in zensical.toml.
- overrides/main.html exposes it as window.TOA_ACTION_POINTS_ENABLED in
<head>, before extra_javascript loads.
- extra.js bails at the top of the IIFE when the flag is false: no
storage, no nav badges, no heading pills, no confetti, no per-click
work. Checkboxes fall back to Material's read-only tasklist.
Verified inert when disabled (0 badges/pills/canvases, no localStorage,
no JS errors).
Perf:
- In-memory write-through cache for the parsed store: a single toggle
went from 15 localStorage JSON.parse reads to 0.
- updateNavBadges() updates badges in place (reuse span, only write on
change) instead of removing+rebuilding every badge each toggle, which
forced a full Material nav relayout. JS/toggle ~0.37->0.26ms,
layout delta ~0.73->0.63ms.
Legibility:
- Override -webkit-text-fill-color (headings set it; pseudo-elements
inherit it and it beats `color`) to #fff on completed green pills and
nav badges, so the count/checkmark is white on green. h2 text color
itself untouched.
Each section/page completion previously appended a new full-viewport
(100vw x 100vh, z-index 99999) canvas with its own requestAnimationFrame
loop. Completing several sections in a row stacked multiple fullscreen
layers, each independently repainting the whole viewport at 60fps — the
real cause of click-induced slowdown (the change handler itself is ~1ms).
Now: one shared canvas, one rAF loop, particles pooled across completions.
The loop stops and the canvas is removed once no particles remain, so
there is no idle fullscreen compositing layer. Resize keeps it sized.
Verified live: 1 canvas after two back-to-back section completions,
0 canvases after the animation ends, green pills still white-on-green.
- Fix nav badge mis-targeting: scope to .md-nav--primary, skip #anchor
(TOC) links so 'On this page' entries no longer show the page total;
detect active-leaf sections via md-nav__item--nested instead of the
secondary (TOC) nav, so the active page gets its own badge.
- Add build-time totals manifest (main.py -> docs/javascripts/toa-totals.json)
so nav badges show correct totals on first load before a user has
visited each page. Fetched once, browser-cached, zero runtime cost.
Wired into CI before zensical build.
- Exclude fenced code blocks when counting tasks, so the Markdown
reference doc's example checkboxes don't produce a phantom 0/3 badge.
- Force white text (#fff !important) on completed green pills/badges,
incl. badge-inside-complete-link, to beat the nav link's green color.
- Convert prose practice/strategy steps into interactive tasklist items.
- Add action-points PRD under planning/.
[[docs/contributing/index]] → displays as 'Contributing' (not 'docs/contributing/index')
[[docs/strategies/collective-awakening]] → displays as 'Collective Awakening'
Pipe syntax still overrides: [[page|custom text]] uses the custom text.
Images keep raw filename as alt text.
Strips docs/ prefix from Tolaria-generated links, collapses /index suffixes,
removes .md extensions, and produces root-relative URLs (/page/path/) that
work from any page regardless of depth. Images get root-relative asset paths.
- New package _extensions/wikilinks.py: preprocessor that converts
[[Page Name]], [[Page|Text]], [[Page#anchor|Text]], and ![[img]]
to standard Markdown links before parsing
- Skips wiki links inside fenced/inline code blocks
- Slugifies targets: lowercase, spaces→hyphens
- Registered as markdown extension in zensical.toml
- Updated CI workflow to pip install -e . for the _extensions package
- First usage: [[docs/contributing/index]] in markdown.md
- Rewrite index.md with human intro on consciousness, ascension, group origins
- Rename docs/teachings/ → docs/strategies/
- Move Spiritual Hygiene from strategies to practices
- Update all cross-references (teachings→strategies, inter-practice links)
- Update both index pages with new content and card grids
- Add Cusdis comment integration (zensical.toml + overrides partial)
- Add comments:true to homepage frontmatter
- Gitignore codedb.snapshot and old root build artifacts
- Remove tracked old build files (site/ is the new build output)
- Delete all AI-generated PNGs (hero images + infographics)
- Strip <figure> references from 5 pages that had AI hero images
- Strip <figure> references from 4 pages that had AI infographics
- Grounding in Nature now uses nature_bathing.jpg (credit: Adamu)
- Remaining images are Unsplash-sourced only
- Captions now positioned over the image (absolute, bottom-right)
- Semi-transparent white background with subtle blur
- Smaller text (0.68rem), no emojis
- Remove markdown='1' from figure tags so img is direct child
- Merged .page-hero and .page-infographic styles