39 lines
1.8 KiB
Markdown
39 lines
1.8 KiB
Markdown
Status: done
|
||
|
||
# 09 — FRAUD: Reputation-weighted routing + adaptive audit rate
|
||
|
||
## What to build
|
||
|
||
Wire reputation into route selection and audit sampling. Default network audit budget ≈5% — **not a cap**. New/low-reputation nodes: 20–30% audit rate; veterans: 2–3% floor ≥2%. Tripwires escalate rate without direct punishment.
|
||
|
||
**Code refs:**
|
||
|
||
- `packages/tracker/meshnet_tracker/server.py` — route selection `_select_route`, `_effective_throughput` (~1747, routing helpers)
|
||
- `packages/validator/meshnet_validator/__init__.py` — `sample_rate=0.05`
|
||
- Research: `.scratch/alpha-hardening/research-verifiable-inference.md` §1.1, §6, §8 layers 2–4
|
||
|
||
Audit selection must be unpredictable at request time (tracker RNG after commitment window opens).
|
||
|
||
## Test-first
|
||
|
||
1. Red: uniform 5% sample regardless of reputation — test expects higher rate for low-reputation wallet.
|
||
2. Green: budget balancer keeps fleet-wide average ≈ configured target.
|
||
3. Routing prefers higher reputation among equal throughput candidates.
|
||
|
||
## Acceptance criteria
|
||
|
||
- [ ] Per-wallet audit probability function of reputation (newcomer high, veteran low, floor ≥2%)
|
||
- [ ] Fleet-wide audit budget configurable (~5% default target); over ≥1000 requests with fixed seed, measured fleet audit rate within **±1.0 percentage point** of configured target (e.g. 4.0–6.0% at 5% default)
|
||
- [ ] Route scoring includes reputation multiplier (earnings scale with tenure)
|
||
- [ ] Passive tripwire flags (perplexity/repetition) bump audit rate only
|
||
- [ ] Tests: deterministic seed for sampling distribution checks
|
||
|
||
## ADR links
|
||
|
||
- [ADR-0018](../../docs/adr/0018-fraud-detection-verification-and-reputation.md) §1, §6–7
|
||
- [ADR-0013](../../docs/adr/0013-rolling-stats-smart-routing.md)
|
||
|
||
## Blocked by
|
||
|
||
- `08-fraud-reputation-model-persistence_completed.md`
|