Add CLIENT_CORE.md, and run event-model and client-core in run-tests.sh
CLIENT_CORE.md is the map for the crate: what holds what against the Kotlin it replaces, how many tests were ported per file (85 total, test-for-test where the Kotlin had JVM tests), what api.rs and transcript_fold.rs cover versus don't yet, and the two things left deliberately undone with reasons (TranscriptUnits.kt's Compose-specific flatten, and event_model::Event's missing Unknown catch-all). run-tests.sh now loops event-model, client-core and server rather than only server, so the new crates' tests run from the same one command AGENTS.md already points at. Note for whoever merges this into rustify: this worktree branched before RUST.md existed there, so I could not apply the requested edit to its "Where things stand" bullet without an add/add conflict against concurrent work on that file. Suggested wording is in this commit's message on the orchestrator side -- apply directly to rustify's RUST.md: mark item 1 of the Recommendation and the "Not started: client-core" bullet as done, pointing at client-core/ and CLIENT_CORE.md, dated 2026-09-04. Co-Authored-By: Claude Sonnet <noreply@anthropic.com>
This commit is contained in:
1 parent
237886c11e
commit
0a2f4fa1fe
2 files changed
+145
-8
No files matched your search
+15
-8
@@ -1,11 +1,18 @@
|
||||
#!/bin/sh
|
||||
# Runs this repo's tests. Extra arguments are forwarded to `cargo test`,
|
||||
# e.g. `./run-tests.sh transcript` to run just the transcript tests.
|
||||
# Runs this repo's tests. Extra arguments are forwarded to each `cargo test`,
|
||||
# e.g. `./run-tests.sh transcript` to run just the transcript tests in all
|
||||
# three crates.
|
||||
#
|
||||
# Only `server/` has tests: it holds all the logic worth testing (event
|
||||
# normalization, transcript cursors, config persistence, token auth), while
|
||||
# the Android app is UI over its HTTP API. Verifying the app means running
|
||||
# it -- see AGENTS.md.
|
||||
# server/ holds the backend's own logic (event normalization, transcript
|
||||
# cursors, config persistence, token auth); event-model is the wire shape
|
||||
# server/ and client-core share; client-core is the app's pure logic held
|
||||
# once instead of twice (see CLIENT_CORE.md) -- the syntax highlighter, the
|
||||
# ANSI parser, the transcript cache and fold, the REST and SSE clients. It
|
||||
# is not wired into the Android app yet (RUST.md), which still carries its
|
||||
# own Kotlin copies and has no tests of its own to run here; verifying it
|
||||
# means running it -- see AGENTS.md.
|
||||
set -eu
|
||||
cd "$(dirname "$0")/server"
|
||||
exec cargo test "$@"
|
||||
cd "$(dirname "$0")"
|
||||
for crate in event-model client-core server; do
|
||||
(cd "$crate" && cargo test "$@")
|
||||
done
|
||||
Reference in new issue
Block a user