The tasks build the agent loop on M2a's client: channel messages and the usage record in proto, four config tables, the tool port and registry with find_tool and call_tool, the baseline and replay, the session store, the turn loop with its limits and the append-only property test, the channel server, loopd serve, bxctl chat, and the device checks including a four-turn conversation with a restart. Checked against a private reference implementation: the gate passes after every task in order, the new suites pass under CPU load, and the reference passes make verify-device on straylight with no cache loss. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
30 lines
1.0 KiB
Makefile
30 lines
1.0 KiB
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_BXCTL=$(CURDIR)/target/debug/bxctl \
|
|
BOXMAKER_UPSTREAM=$(UPSTREAM) \
|
|
cargo test -p loopd --test device --locked -- --ignored --test-threads=1
|
|
@echo "verify-device: ok"
|