Glossary alignment — demon (devil) replaced with the established ozadnji
proces (background process) per okrajsave.md glossary. Full sweep across
all sl/ wiki and guide files (61 replacements in 18 files).
demon→ozadnji proces (nominative, 15 instances)
demona→ozadnjega procesa (genitive, 42 instances)
demonom→ozadnjim procesom (instrumental, 1 instance)
demonov→ozadnjih procesov, demonovem/demonovim rephrased (3 instances)
krajevni→lokalni (7 instances across 4 files)
oprema→vprega (agent harness context, 3 instances)
vrata→preverjanje (quality gate context, 1 instance)
Positive framing — each former "pitfall" is now a prescriptive step:
1. Quote all YAML frontmatter values
2. Declare content-path constants inside getStaticPaths()
3. Create explicit routes for SL content
4. Clean the dist cache before every build
5. Resolve content paths with path.resolve("src/content")
6. Extract markdown H1 as a title fallback
7. Placeholder TLS cert for first deploy (reference)
Every step follows Why → What → Result. No "broken/failed/symptom/cause"
language. An agent reading this gets a recipe, not a post-mortem.
The agent harness page describes THREE agents: pi (fallback), zot (default),
and Colibri (supervisor). Title updated in both EN and SL.
Also: H1 extraction fallback for pages without YAML frontmatter —
content.match(/^#\s+(.+)$/m)?.[1] so pages with only markdown H1 still
get a proper <title> tag instead of the slug.
Skills were copied flat (.agent/*/SKILL.md) instead of nested
(.agent/skills/*/SKILL.md). The ISO import script
(import-colibri-skills.sh) expects the nested structure.
Now matches clawdie-ai canonical layout. 52 SKILL.md files verify.
Three hiccups from the wiki.clawdie.si deployment (26.jun.2026):
1. Placeholder cert — nginx refuses to start when ssl_certificate files
dont exist yet. Create a temporary self-signed cert first, then
acme.sh --issue overwrites it with the real cert.
2. ACME challenge location ordering — nginx matches location blocks in
order. .well-known/acme-challenge/ MUST come before the
location / { return 301 https://... } redirect, otherwise ACME
validation returns 301 instead of the challenge file.
3. acme.sh --key-file + --fullchain-file — these flags write directly
to the nginx SSL paths, replacing the placeholder. The cert paths
must match between nginx config and acme.sh invocation.
New "Adding a new public static HTTPS site — full flow" section covers
the complete pattern: DNS first → placeholder cert → vhost with ordered
locations → real cert → content deploy → renewal.
Two new troubleshooting entries: BIO_new_file() failed (missing cert),
ACME challenge 404/301 (location ordering or missing directory).
- Remove 'sl' from EXCLUDE — Slovenian wiki pages now served
- Locale-aware link resolver: ./page.md → /sl/page/ in sl/ context
- Language switcher in nav bar (English ↔ Slovenščina)
- Slovenian index at /sl/ with translated prose
- lang attribute dynamic per locale
- Matches docs.clawdie.si Starlight pattern: /<lang>/<page>/
Match the lean SL style: one terse sentence, no legacy narration.
"clawdie provisions the host service. Jail, DB, CMS, and Git
provisioning are not yet in the installer."