Files
LithosAnanke/scripts
Claude 9700a7b404 fix: gpt_read checks every entry, and says when there are more than max (#180)
gpt_read() stopped at max used entries (16 for the identity code, 4 in the
mint): a disk whose StarshipOS partitions came after the first max read as
having none, and the entries after max were never range-checked.

Now every entry is checked and every used one counted; a good table with more
used entries than max is GPT_MANY (the first max in parts), and the identity
code says "GPT: a USB drive has more than 16 partitions -- not used". Other
callers treat anything but GPT_OK as before.

Tested first, seen to fail: qemu_session.py gpt_many -- a data stick with its
two partitions as entries 17 and 18 after 16 others, and the same with an entry
19 past the usable range: both "not this system's stick" before (silently cut,
entry 19 never checked; logs/20261112-162236). After: "more than 16
partitions" and "a damaged partition table" (logs/20261112-162921).
Regressions: gpt_bad_entries, gpt_foreign PASS. gpt_zuse FAILS, on a stale
expectation unrelated to this change -- an identity-only GPT drive with no
system stick has been held silently as a possible real Zuse since #92 Task 4;
its log is kept here. The gpt_many images are made before the boot: a first
version made them after, failed in sgdisk and left its QEMU running, stopped
by hand (logs/20261112-162003).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017RzZgrf7V7Zk2iczBXDRbm
2026-11-12 16:41:00 +00:00
..

scripts/

Utility scripts for building, profiling, DoE experiments, and documentation.

DoE / experiment scripts

Script Purpose
run_doe.sh Run a standard DoE experiment
run_factorial_doe.sh 2^7 factorial DoE
run_factorial_doe_with_heartbeat.sh Factorial DoE with heartbeat metrics
run_nested_doe.sh Nested DoE design
run_ablation_study.sh Physics loop ablation
run_optimization_doe.sh Optimization-focused DoE
run_quick_doe_test.sh Quick smoke-check DoE (1 rep)
extract_doe.sh Extract CSV rows from QEMU serial logs

Build / profile scripts

Script Purpose
perf-profile.sh Linux perf profiling harness
perf-profile_control.sh Control run for perf comparison
rundisk.sh Boot a disk image in QEMU
qemu_screenshot.sh Capture QEMU serial output

Phase 8 / identity testing scripts

Script Purpose
bleach_zuse_img.sh Reset disk/zuse.img back to pristine/unminted (blank) state, for repeatable first-boot mint-flow testing

FORTH capsule scripts

Script Purpose
4th-apply-init.sh Apply init.4th patches to capsule set
4th-update-init.sh Update init.4th across capsule variants

Documentation scripts

Script Purpose
asciidoc-to-latex.sh Convert AsciiDoc to LaTeX
convert-markdown-to-asciidoc.sh Markdown → AsciiDoc
doxygen-xml-to-asciidoc.py Doxygen XML → AsciiDoc
generate-doxygen-appendix.sh Build Doxygen API appendix
build_patent_structure.sh Scaffold patent document structure
setup-ide-integration.sh Configure IDE integration
analyze_heartbeat_stability.R R analysis of heartbeat stability data
analyze_opp2_regression.py Python regression analysis
gen_pe_reloc.py PE relocation table generator (see also tools/)
remove_loop_conditionals.sh Remove loop conditional guards

See also