Files
kyleandClaude Fable 5.1 76ccc251cd Add M2a plan: thirteen tasks, tests, fake server and recordings
The tasks build the inference path: emsha-backed SHA-256, inferproxy,
config, a hand-written HTTP and SSE client, request building, delta
assembly, the chat state machine, the thinking cap, the slot gate with
retry, the startup self-test and on-device verification.

Everything the tasks copy in was checked against a private reference
implementation: the gate passes after each task in order, the timing
tests pass repeatedly under CPU load, and the reference passes the
self-test and all four device checks on straylight. Expected results
for the recorded streams were derived by a separate script.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-17 13:34:11 -07:00

29 lines
992 B
Makefile

# Boxmaker gate. `make gate` must pass before any work is called done. It needs no network.
.PHONY: gate audit verify-device
gate:
cargo fmt --all --check
cargo clippy --workspace --all-targets --locked --offline -- -D warnings
cargo test --workspace --locked --offline
cargo deny --offline check bans licenses sources
sh scripts/check-lines.sh
sh scripts/check-crate-deps.sh
sh scripts/check-dep-docs.sh
sh scripts/test-gate-scripts.sh
@echo "gate: ok"
# Fetches the RustSec advisory database. Listed in docs/egress.md.
audit:
cargo deny check advisories
# Checks that need straylight. They go through a private inferproxy to the real server.
# Override the server with: make verify-device UPSTREAM=host:port
UPSTREAM ?= straylight:11434
verify-device:
cargo build --workspace --locked
BOXMAKER_INFERPROXY=$(CURDIR)/target/debug/inferproxy BOXMAKER_UPSTREAM=$(UPSTREAM) \
cargo test -p loopd --test device --locked -- --ignored --test-threads=1
@echo "verify-device: ok"