Pre-e2e audit fixes for NSA index-topk sharing (index_topk_pattern): - Validate the pattern at init: F/S charset only, must start with F (layer 0 has nothing to share from), and length must equal num_hidden_layers — a short pattern previously crashed deep in pool init with an obscure per-layer ValueError, a long one silently ignored tail characters. Warn when a pattern shadows a configured index_topk_freq (pattern takes precedence silently otherwise). - Fail fast when a shared (S) layer receives prev_topk_indices=None: both gated indexer call sites previously fell through to omitting topk_indices entirely, running sparse attention without indices and silently corrupting output if threading were ever dropped. - Reject pipeline parallelism with index-topk sharing (same rationale as the existing TBO guard): topk indices are not threaded across PP-stage boundaries, and each stage's loop resets them to None. - Gate the CP shared-KV index prefetcher on the next layer having an index-cache slot: prefetching an S layer's nonexistent buffer tripped the inactive-layer fail-fast and disabled the prefetcher for the entire run on the first F->S transition. - Log the resolved active index layer plan at pool init so an e2e run can confirm IndexCache is actually on. Tests: pattern validation cases incl. the GLM-5 reference 78-char pattern, next_skip == skip-of-next invariant; existing 'C' pattern test updated to upstream 'F' charset. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Registered Tests
Tests under this directory are auto-discovered by run_suite.py via CI registration decorators.
Where Should I Put My New Test?
No server / engine launch required
| What you're testing | Directory | Requires |
|---|---|---|
| Component logic in isolation (cache, scheduler, config, parser, etc.) | unit/<module>/ |
CPU or GPU |
| CUDA kernel correctness | kernels/ |
GPU |
Server / engine launch required (E2E)
| What you're testing | Directory | Requires |
|---|---|---|
| Model inference correctness | models/, 4-gpu-models/, 8-gpu-models/ |
GPU |
| Feature-specific (OpenAI API, LoRA, speculative, distributed, VLM, etc.) | openai_server/, lora/, spec/, distributed/, ... |
GPU |
| Benchmarks (performance, accuracy, stress) | benchmark/ |
GPU |
| Platform-specific | amd/, ascend/ |
Vendor GPU |
See unit/README.md for unit test conventions.