Source tree reorganization: - Move StarForth v3 engine to v3/ (src/, include/, Makefile) - Move kernel to kernel/ (src/, include/, linker/, Makefile) - Create v4/ skeleton for F18-ISA golden model (DECOMPOSITION.md, JUSTIFICATION.md) - Move FABRIC-0..4.md to docs/fabric/ - Move ONTOLOGY.md and ROADMAP.md to docs/ Board infrastructure: - Add boards/ser5/, boards/raspi/, boards/milkv/, boards/zynq7020/ - Each board has board.mk (ISA, CPU flags, boot recipe) and README.md - Root Makefile becomes thin dispatcher: boot_image, all, clean, docs take TARGET - make boot_image TARGET=SER5|RASPI|MILKV builds one GPT/MBR image per board - ZYNQ7020 target exists but stops with clear error (ARMv7 port not built yet) - scripts/mkdiskimage.sh builds disk images for all boards Docs pipeline: - docs/book/ with LaTeX master (main.tex) and Makefile - pandoc converts Markdown to LaTeX at build time - Two Lua filters: table-widths.lua (wide tables wrap), code-breaks.lua (inline code breaks) - make docs builds single PDF (754 pages, 0 missing characters) - make docs TARGET=<board> adds board appendix - build/docs/<book|board>/meta.tex stamps git commit into PDF Bug fixes: - 42 include paths that only worked by accident now use correct relative paths - clang-18 hardcode replaced with configurable CC variable (fixed aarch64 build) - Pi 5: kernel_2712.img linked at 0x80000, .bss zeroed, memory reserved - Doxyfile, .clang-tidy, README.md, Kconfig paths updated Verified: - Hosted v3 build passes 1012 tests, 0 failures - SER5 image boots in QEMU (OVMF), POST passes, K exact (65536 = Q48_ONE) - Milk-V image boots in QEMU (OpenSBI + U-Boot + bootefi), POST passes - make clean TARGET=<board> removes only that board and its ISA objects - make all builds all boards, hosted v3, and docs in one run Co-authored-by: Junie <junie@jetbrains.com>
.claude/
Project-level configuration and instructions for Claude Code (claude.ai/code) when working in this repository.
CLAUDE.md— the authoritative reference for how an AI agent should work in this codebase: hard rules (branch discipline, never work onmasterwithout permission, never stash without permission, report bugs rather than fixing them unprompted), build commands for both the hosted VM and the LithosAnanke kernel, architecture summaries, and pointers into the rest of the documentation tree.docs/CLAUDE.mdis an older, hosted-only snapshot kept for historical reference — this file supersedes it.TRIPOD.md— architectural constraints for the Tripod: the three-VM fleet (Hera the governor, Hermes the messenger, Artemis the memory/ storage owner) that LithosAnanke boots. Defines each VM's contract and what NOT to put in each one (e.g. no storage logic in Hermes, no event routing in Artemis).HERMES.md— Hermes VM architecture: the message-routing VM. Read in full before touching any Hermes-related code.ARTEMIS.md— Artemis VM architecture: the block-storage/persistence VM, including its free-map allocator. Read in full before touching any Artemis-related code.settings.json— Claude Code session/tooling configuration for this repository.
All four .md files here are binding constraints, not suggestions — they
are read in full before any work on the subsystem they cover, per this
project's own stated policy.