Files
LithosAnanake/docs
Robert Allan JamesandClaude Sonnet 5 4485c3893b Fix riscv64 hosted acceptance-test doc; port 3 clang-surfaced bugs from punch list
Addresses items #1 (partial) and #2 of
docs/working/archive/session-logs/2026-07-24-punch-list.md.

docs/lithosananke/hosted-acceptance-test/README.md:
- riscv64 leg used riscv64-linux-gnu-gcc, which fails to build this tree
  (nanosleep visibility under -std=c99). Replaced with the working
  clang-18 --target=riscv64-linux-gnu --sysroot=/usr/riscv64-linux-gnu
  invocation, verified end-to-end.
- All three arch sections referenced a -c "<script>" flag that has never
  existed in cli.c/main.c. Corrected to the working
  `echo "..." | starforth -s` pattern, verified on all three architectures.
- Updated Prerequisites: qemu-user alone is sufficient (guest binaries are
  static; qemu-user-static provides static *emulators*, not required here).

Source fixes (ported from the old pre-split monorepo's master, commit
4db9946a, where they were made but never carried over to this line):
- src/math_portable.c: `-100LL << 16` is UB (shifting a negative value)
  under clang's -Wshift-negative-value; changed to `-(100LL << 16)`.
- src/physics_pipelining_metrics.c: removed dead q48_mul_q48()
  (-Wunused-function under clang; GCC doesn't flag this by default).
- src/word_source/editor_words.c: removed dead set_scr() (same reason).

These three were required just to get the documented clang build to
compile at all. The punch list's higher-severity item — a genuine
SIGSEGV-causing register-reuse hazard in vm_pop_asm/vm_rpop_asm
(include/vm_asm_opt_riscv64.h) — is intentionally NOT included here; it's
a separate, more careful change and isn't required for this build to
succeed (latent only under clang; this repo's kernel build uses GCC).

Verified: all three hosted builds compile and run correctly (amd64
native, aarch64 via qemu-aarch64, riscv64 via qemu-riscv64), each
printing "3 Goodbye!" for the piped `1 2 + . BYE` script. All three
Makefile.starkernel builds (amd64/aarch64/riscv64) still compile cleanly
with these shared vendored-source changes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-02 07:25:40 -04:00
..

StarForth / LithosAnanke Documentation

This is the lithosananke branch: the bare-metal StarKernel side of the project (contrast master, which is the hosted-VM-only side). Documentation follows the two-tier model described in docs/CLAUDE.md: formal/ is the polished, citable LaTeX tier; working/ is living design notes and drafts that feed it. Everything else in this directory is branch- or subsystem-specific material that doesn't fit either tier.

Layout

  • formal/ — Three-volume LaTeX documentation set (research volumes, practitioner books, standalone reports) plus the scraps/ fragment library it's assembled from. Audience: patent counsel, SSRN reviewers, licensees, hobbyists with hardware in hand. See formal/CLAUDE.md for authoring conventions.
  • working/ — Living documents: architecture design notes, DoE experiment logs, hardware/platform notes, draft specs, academic-paper source material, and an archive of superseded docs. Source material for formal/.
  • 03-architecture/ — Tripod VM architecture constraints (Hera/Hermes/Artemis) and the word-level ACL system design.
  • lithosananke/ — LithosAnanke kernel branch documentation: milestone roadmap, system architecture, HAL reference, kernel command-line argument design, and the amd64 APIC-timer ISR postmortem.
  • birthing/ — VM birthing plan and status for the Hera-spawns- Hermes/Artemis constellation, plus three-architecture QEMU acceptance logs.
  • patent/ — Provisional patent application source. Legal hold — ask Bob before touching anything in this directory.
  • api/ — Generated Doxygen tag file and warnings log (gitignored; not part of the tracked doc tree).
  • pptx/ — Elevator-pitch and deep-dive slide decks for different audiences (technical, non-technical, academic, PhD-level).

Current Active Work

  • LithosAnanke M7/M7.1 — VM parity validation and init capsule architecture. See lithosananke/README.md and lithosananke/M7.1.md.
  • Word-level ACL system — Phase 6 complete on master; Phase 7 (LithosAnanke parity) is the next step. See 03-architecture/word-acl/README.md.
  • Tripod VMs — Hera (governor), Hermes (messenger), Artemis (memory/block storage). See 03-architecture/tripod/README.md and birthing/.

Contributing

  • Place new material in working/ first; promote to formal/ only when it's ready to be cited (see formal/CLAUDE.md for promotion criteria).
  • Never touch patent/, formal/patent/, formal/scraps/legal/, or working/legal/ without Bob's explicit instruction.
  • Add a README.md to any new category-level subdirectory, following the format used throughout this tree: orientation paragraph + bullet list of real files with one-line descriptions.