PRJ-BIBLIOTHECA — Scope Creep & Backlog
Scope Creep & Backlog
SC-001: GitHub Actions Hub Deployment
| Field | Value |
|---|---|
Added |
2026-04-12 |
Trigger |
Cloudflare Pages 20-min build timeout with domus-scripture enabled (~6,800 pages). Build takes ~19 min on Cloudflare vs ~2 min locally. Cloudflare shared runners are ~8x slower. |
Scope |
Replace Cloudflare’s built-in builder with GitHub Actions + |
Priority |
P1 — blocks scripture from appearing on docs.domusdigitalis.dev |
Status |
Not started |
Approach:
-
Create
.github/workflows/deploy.ymlin domus-docs -
Workflow triggers on push to domus-docs main branch
-
Workflow also triggers via
repository_dispatchfrom spoke repos (so spoke pushes deploy automatically) -
Steps: checkout → npm install →
./build.sh→wrangler pages deploy build/site --project-name=domus-docs -
Secrets needed in GitHub:
CLOUDFLARE_API_TOKEN,CLOUDFLARE_ACCOUNT_ID -
Disable Cloudflare Pages Git integration (prevent double builds)
-
Re-enable scripture in hub playbook (step 1m)
Why not alternatives:
-
Split scripture into smaller components — adds architectural complexity, doesn’t solve the underlying Cloudflare constraint. Future spokes (classics with 10,288 sonnets) would hit the same wall.
-
Nav flattening — reduces build time marginally but nav resolution isn’t the bottleneck. Page count is.
-
Keep scripture local-only — defeats the multi-site aggregation purpose of Antora.
Evidence:
Without scripture: 3 min 39s → success (Cloudflare) With scripture: 18 min 59s → failure (Cloudflare 20-min timeout) Local hub build: 2 min 15s → all spokes including scripture
SC-002: Spoke Push Auto-Deploy
| Field | Value |
|---|---|
Added |
2026-04-12 |
Trigger |
Pushing to a spoke repo (e.g., domus-captures) does not trigger the hub rebuild. Content updates don’t appear on docs.domusdigitalis.dev until domus-docs itself is pushed. |
Scope |
Add |
Priority |
P2 — dependent on SC-001 (GitHub Actions deployment) |
Status |
Not started — blocked by SC-001 |
SC-003: Custom UI Bundle in scaffold-spoke.sh
| Field | Value |
|---|---|
Added |
2026-04-12 |
Trigger |
Standalone spoke builds use default Antora UI instead of Domus Catppuccin bundle. Discovered when opening domus-scripture locally. |
Scope |
Update |
Priority |
P3 — cosmetic, only affects local standalone builds |
Status |
Not started — workaround: step 1i |
SC-004: Hebrew Terminal Rendering (Kitty + Nikkud)
| Field | Value |
|---|---|
Added |
2026-04-12 |
Trigger |
Hebrew text (WLC with nikkud/cantillation) renders as raw codepoints in Kitty terminal. JetBrainsMono Nerd Font Mono lacks full Hebrew combining mark coverage (U+0590-U+05FF). |
Scope |
Configure Kitty |
Priority |
P3 — cosmetic, only affects terminal trilingual reading. AsciiDoc pages render correctly in browser. |
Status |
Not started |
Execution:
Check if a Hebrew font is already installed:
fc-list :lang=he | head -5
Install a Hebrew font with nikkud support:
sudo pacman -S noto-fonts-extra
# Provides Noto Sans Hebrew — full nikkud + cantillation coverage
Add symbol_map to Kitty config:
# Add to ~/.config/kitty/kitty.conf after font_family line
# U+0590-U+05FF = Hebrew block (consonants, nikkud, cantillation)
# U+FB1D-U+FB4F = Hebrew presentation forms (ligatures)
# Hebrew Unicode support (WLC Tanakh with nikkud + cantillation)
symbol_map U+0590-U+05FF,U+FB1D-U+FB4F Noto Sans Hebrew
Load scripture corpus path variables (if not already in ~/.config/shell/aliases.sh):
export RV="$HOME/atelier/_bibliotheca/Principia/02_Assets/DIS-SPANISH/La_Reina_Valera"
export WLC="$HOME/atelier/_bibliotheca/Principia/02_Assets/DIS-HEBREW/Tanakh"
export KJV="$HOME/atelier/_bibliotheca/Principia/02_Assets/LRN-LITERATURE/sacred/kjv-bible"
Add these to ~/.config/shell/aliases.sh under a SCRIPTURE & LANGUAGE section so they persist across sessions. Without them, $KJV, $RV, $WLC resolve to empty strings and grep fails with "No such file or directory".
|
Verify rendering:
printf "בְּרֵאשִׁ֖ית בָּרָ֣א אֱלֹהִ֑ים\n"
If nikkud renders on the consonants (not as raw <05b0> codepoints), it works.
Load scripture corpus path variables (if not already in ~/.config/shell/aliases.sh):
export RV="$HOME/atelier/_bibliotheca/Principia/02_Assets/DIS-SPANISH/La_Reina_Valera"
export WLC="$HOME/atelier/_bibliotheca/Principia/02_Assets/DIS-HEBREW/Tanakh"
export KJV="$HOME/atelier/_bibliotheca/Principia/02_Assets/LRN-LITERATURE/sacred/kjv-bible"
Add these to ~/.config/shell/aliases.sh under a SCRIPTURE & LANGUAGE section so they persist across sessions. Without them, $KJV, $RV, $WLC resolve to empty strings and grep fails with "No such file or directory".
|
Verify trilingual paste:
paste <(grep 'Genesis 1:1 ' "$KJV/kjv_complete.txt") \
<(grep 'Génesis 1:1 ' "$RV/biblia_rv1909_completa.txt") \
<(grep 'בְּרֵאשִׁית 1:1 ' "$WLC/tanakh_completa.txt")
After adding symbol_map, open a new Kitty window or reload config. Old shell history may still display Hebrew as raw codepoints — type commands fresh instead of recalling from history.
|