<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lectio.git/docs/superpowers/specs, branch v0.45.0</title>
<subtitle>offline Catholic daily readings and liturgical calendar in Go, with CLI, TUI and web clients</subtitle>
<id>https://git.labunix.xyz/lectio.git/atom?h=v0.45.0</id>
<link rel='self' href='https://git.labunix.xyz/lectio.git/atom?h=v0.45.0'/>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/'/>
<updated>2026-07-27T20:00:30Z</updated>
<entry>
<title>docs: design spec for OF readings (Sundays + solemnities)</title>
<updated>2026-07-27T20:00:30Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T20:00:30Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=9fb2aadc1d9b96cd05b1b1d9f54a7ee955e1815a'/>
<id>urn:sha1:9fb2aadc1d9b96cd05b1b1d9f54a7ee955e1815a</id>
<content type='text'>
Offline OF Sunday/solemnity lectionary keyed by &lt;computed-slug&gt;-&lt;SundayCycle&gt;,
generated once from niedziela over 2025-2027 (covers A/B/C), citations
normalized English-canonical via ToEnglishRef, rendered from public-domain
corpora (Polish-&gt;Latin fallback, EF pattern). Extends caldata.Readings with an
OF branch; flows into -L + the API. Weekdays/sanctoral deferred. Verified
SundayCycle is populated on non-Sunday solemnities.
</content>
</entry>
<entry>
<title>docs: design spec for calendar API (JSON + iCal), security-first</title>
<updated>2026-07-27T19:18:47Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T19:18:47Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=512e6681418c354fea02761440e701c0f7ade693'/>
<id>urn:sha1:512e6681418c354fea02761440e701c0f7ade693</id>
<content type='text'>
Two surfaces, one engine: CLI --format json|ical (offline/pipeable) + thin
lectio-web /api/calendar.json + /calendar.ics endpoints. Pure internal/calfeed
renderer. Identity + reading citations (no full text). Security section:
range-cap DoS control (1830d web), RFC-5545 iCal injection escaping (custom
calendar names are untrusted), strict input validation, nosniff content types,
no file/layer injection over HTTP, GET-only.
</content>
</entry>
<entry>
<title>docs: record autoselect metadata flag in national-bibles spec+plan</title>
<updated>2026-07-27T18:20:34Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T18:20:34Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=399f0d428050ee104f16e8d4a289b65a4a68eb13'/>
<id>urn:sha1:399f0d428050ee104f16e8d4a289b65a4a68eb13</id>
<content type='text'>
</content>
</entry>
<entry>
<title>docs: tighten national-bibles spec (defer psalm_system application)</title>
<updated>2026-07-27T18:01:50Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T18:01:50Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=0dd76139abf2e9a0f1ec362424d68ba8ae5d8c8f'/>
<id>urn:sha1:0dd76139abf2e9a0f1ec362424d68ba8ae5d8c8f</id>
<content type='text'>
psalm_system becomes stored+validated metadata only; per-corpus psalm
numbering application is deferred to the future psalm-readings work (offline
lectionary has no psalm parts yet, so wiring now would be dead code). Testing
updated for reading_lang + the deferred psalter.
</content>
</entry>
<entry>
<title>docs: add reading_lang field to national-bibles spec</title>
<updated>2026-07-27T18:00:04Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T18:00:04Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=0e82fa3e5544ac6c534acc297491a87a361ccd97'/>
<id>urn:sha1:0e82fa3e5544ac6c534acc297491a87a361ccd97</id>
<content type='text'>
reading_lang (any language code) drives corpus auto-selection; empty follows
ui_language. Resolver: reading_version &gt; reading_lang match &gt; ui_language match
&gt; Latin vul. traditional_lang dropped from selection entirely (scraper-only).
</content>
</entry>
<entry>
<title>docs: design spec for user-addable national Bible corpora</title>
<updated>2026-07-27T17:49:06Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T17:49:06Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=abf3210282cccc7ed28dc1f6b081a60cf000d388'/>
<id>urn:sha1:abf3210282cccc7ed28dc1f6b081a60cf000d388</id>
<content type='text'>
A corpus = &lt;code&gt;.tsv (6-col verse text) + &lt;code&gt;.ini (metadata) pair,
serving both compile-in (glob go:embed + Makefile validate/embed) and
runtime drop-in (~/.config/lectio/corpora/, overrides built-ins). Offline
reading selection becomes config-driven (reading_version &gt; lang-auto &gt; Latin
fallback); traditional_lang stays deprecated/scraper-only. Adds
lectio --corpus-check validator with a coverage report vs the Latin vul.
</content>
</entry>
<entry>
<title>docs: design for the EF (1962) computed calendar engine</title>
<updated>2026-07-27T11:49:55Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T11:49:55Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=d23ab8402f8f0beb07b3df9f3cfeaa70448cb9fc'/>
<id>urn:sha1:d23ab8402f8f0beb07b3df9f3cfeaa70448cb9fc</id>
<content type='text'>
Form-aware single engine (sel.Form 'old' -&gt; EF): shared Computus/merge/INI/
result + custom layers; new temporalEF (1962 seasons incl. Time after
Pentecost, Septuagesima, octaves), precedenceEF (1960 rubrics, I-IV class),
embedded 1962 sanctoral. Rank int enum -&gt; unified string token. Validated vs
the missalemeum per-date API. EF day-identity now; propers later.
</content>
</entry>
<entry>
<title>docs: design for self-contained OF liturgical calendar engine (sub-project #1)</title>
<updated>2026-07-27T10:00:28Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-27T10:00:28Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=3a46ec31b4b20fe58f1b24f0bb5b47af67ae99fa'/>
<id>urn:sha1:3a46ec31b4b20fe58f1b24f0bb5b47af67ae99fa</id>
<content type='text'>
Offline, pure-Go, stdlib-only engine computing the Ordinary Form liturgical
day (season/rank/colour/observed + inline propers) from Computus + embedded
General Roman Calendar + Universal Norms precedence, replacing the scrape.
Locks the epic's formats (INI config + INI-section celebration records,
TSV corpora, JSON/iCal API) and six-layer architecture; 25-50yr longevity
mandate. Part of the self-contained-calendar epic.
</content>
</entry>
<entry>
<title>web: rename theme camedules -&gt; camaldolese</title>
<updated>2026-07-23T12:43:17Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-07-23T12:43:17Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=66a17fda33e44e9022d6724f850323f754715259'/>
<id>urn:sha1:66a17fda33e44e9022d6724f850323f754715259</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Addendum B themes: religious orders + liturgical seasons, colour-only, user-extensible</title>
<updated>2026-07-23T12:04:40Z</updated>
<author>
<name>Łukasz</name>
<email>lukasz@arcofasiagroup.com</email>
</author>
<published>2026-07-23T12:04:40Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/lectio.git/commit/?id=f03bffb446403c775cc92dbbb966dca4b4ea9ebd'/>
<id>urn:sha1:f03bffb446403c775cc92dbbb966dca4b4ea9ebd</id>
<content type='text'>
Replace dev-palette themes with original ascetic sets: religious orders
(desert_fathers, benedictines, franciscans, memento_mori, camedules) and
liturgical seasons (advent, nativity, lent, easter, pentecost, ordinary),
plus transfiguration (default). Colour-only, no gimmicks (base.css owns
all layout/type). Users can drop *.css in ~/.config/lectio/themes/;
web_theme accepts any, serve-time fallback. docs/THEMES.md documents the
role classes.
</content>
</entry>
</feed>
