docs(prefetch): update rename design spec

This commit is contained in:
Edison Jwa
2026-06-02 13:34:19 +09:00
parent d19501ec66
commit 1fc0aaeabb
@@ -4,7 +4,7 @@ Date: 2026-05-28
## Goal
Move server-resolution prefetch policy out of `chanora_core` into a focused Rust crate named `chanora_server_prefetch`, without changing connection behavior, Flutter APIs, or protocol dialing semantics.
Move server-resolution prefetch policy out of `chanora_core` into a focused Rust crate named `chanora_prefetch`, without changing connection behavior, Flutter APIs, or protocol dialing semantics.
## Non-Goals
@@ -16,7 +16,7 @@ Move server-resolution prefetch policy out of `chanora_core` into a focused Rust
## Architecture
Add a workspace member at `crates/chanora_server_prefetch`.
Add a workspace member at `crates/chanora_prefetch`.
Responsibilities:
@@ -84,7 +84,7 @@ The Flutter bridge keeps calling the same core API, `prefetch_server_resolution(
## Testing
Move cache-policy tests from `chanora_core` into `chanora_server_prefetch`:
Move cache-policy tests from `chanora_core` into `chanora_prefetch`:
- fresh exact match returns the socket address.
- stale entries are ignored.
@@ -100,7 +100,7 @@ Keep core tests for connection trust-boundary behavior:
Run at minimum:
- `cargo test -p chanora_server_prefetch --lib`
- `cargo test -p chanora_prefetch --lib`
- `cargo test -p chanora_core --lib`
- `cargo test -p chanora_protocol --lib`
@@ -110,7 +110,7 @@ For final confidence, rerun the Android server connect smoke path that verifies
- Workspace builds with the new crate member.
- `chanora_core` no longer owns the prefetch cache implementation.
- `chanora_server_prefetch` owns prefetch normalization, TTL, generation, storage, and resolver-backed warming.
- `chanora_prefetch` owns prefetch normalization, TTL, generation, storage, and resolver-backed warming.
- Public Flutter and Rust protocol behavior is unchanged.
- Existing server connect and reconnect safety tests pass.
- Android connect still reaches the connected server UI and does not get stuck in `Connecting` or `Synchronizing`.