BitlaForge v0.1.3 — First AUR release. Forge suite complete.
With this release, the complete KognogOS Forge suite — grubForge, alacrittyForge, nogForge, and BitlaForge — is now installable on Arch via a single yay -S <name>. The Forge thesis (visible, careful, well-documented human + AI collaboration on real end-user software) now has four AUR-published demonstrations.
No code-feature changes vs. v0.1.2 — pure release machinery + packaging, plus the two v0.1.2 hotfixes folded forward.
What v0.1.3 ships
📦 First AUR submission
yay -S bitlaforgePulls from AUR, builds, runs the check() headless mount smoke, installs. optdepends prompts for one of the three minerd providers — cpuminer (pooler's original, recommended), cpuminer-multi, or cpuminer-opt. (minerd is itself AUR-only so it can't be a hard depends=; runtime detection handles the missing case with a Dashboard banner + install guidance.)
📜 Release machinery
testing/RELEASE-CHECKLIST.md— pre-dogfood snapshot recipe, async-worker audit, the_rendershadowing audit (BitlaForge-specific footgun caught twice in earlier cycles), version sync gate, co-author credit gate, full release-day flow.testing/20260529 - Test Matrix for BitlaForge v0-1-3.md— covers the full v0.1.0 → v0.1.3 surface in 8 sections (install + nav + persistence + Setup + mining lifecycle + Stratum worker name + niceness behaviour validation + regression/packaging).bitlaforge.1man page — full keybindings, safety section, dependency listing, files, authors with co-developer credit.
🛡 PKGBUILD discipline
- Hardened
check()runs the headless mount smoke under Textual'srun_test()— catches CSS-parse andon_mountfailures at build time, not just import breaks. PYTHONDONTWRITEBYTECODE=1+ defensive__pycache__cleanup so we never ship the.pycinstall-conflict class that bit grubForge v1.0.2.- Co-developer line preserved in PKGBUILD header.
🔧 v0.1.2 hotfixes folded forward
Two post-release fixes from the v0.1.2 dogfood are now in the first tagged release that contains them:
cfe1010— Dashboard minerd CPU display reads "N / total cores (P%)" instead of "1590%".e3e3091— Hashrate parser accepts integer kh/s (not just decimals), aggregates per-thread rates into the rig total, and auto-scales to Mh/s / Gh/s.
Verified
- All RELEASE-CHECKLIST audit gates green (worker pattern,
_rendershadowing, version triple-sync). - Headless mount smoke clean on Python 3.14 + Textual 8.2.7.
- Real-hardware mining (cpuminer on AMD Ryzen 7 7700 against solo.ckpool.org) — 159.15 Mh/s aggregate across 16 threads, Dashboard fields populating live, niceness=19 visibly yielding under load.
What's next
- v0.1.4 — quality / robustness: wallet format validation, pool reachability probe with a "Test connection" action, persistent log archive across launches, per-session lifetime totals.
- v0.2.0 — visual identity: hashrate sparkline under the value, system load sparkline on Setup, per-thread mini-bars, optional
textual-plotexttime-series charts (btop-style).
Co-developed by Javier (@jetomev) and Claude (Anthropic). Fourth tool in the KognogOS Forge suite — public projects demonstrating AI as a serious software collaborator.