# v76 Anti-Chase Impact Reporting

Use this pattern after integrating anti-chase/retest gates into a paper-only trading strategy and restarting the paper supervisor.

## Problem

A new anti-chase filter can be technically active but invisible in aggregate lifecycle PnL until enough fresh post-filter entries/exits accumulate. Without explicit impact reporting, future sessions may either over-credit the filter too early or miss that it has not blocked anything yet.

## Pattern

1. Keep the filter pure and journal exact blocker strings, e.g. `anti_chase_overextended_no_retest`, `anti_chase_no_retest_reclaim`, `anti_chase_buying_above_local_high`, `anti_chase_spread_too_wide`, `anti_chase_crowded_positive_funding`.
2. Mark new lifecycle entries with a structured flag such as `extra.strict_anti_chase=true` so later analysis can separate old and new entry generations.
3. Add a read-only impact summary to the daily report:
   - total and recent signals
   - lifecycle entries opened
   - anti-chase blocked count, total and recent
   - blocker counts by reason
   - first anti-chase block timestamp
   - post-filter lifecycle exits
   - post-filter net PnL and win rate
   - post-filter exits by reason
   - `live=nein` / live disabled
4. Use statuses that prevent false confidence:
   - `armed_no_anti_chase_blocks_seen_yet` when the filter is active but has not blocked anything
   - `collecting` while post-filter sample is small
   - `enough_post_filter_sample` only after a meaningful post-filter closed-exit sample, e.g. >=30 exits
5. Restart only paper-only supervisors after code changes and verify exact env flags (`CTB_PAPER_TRADING=true`, `CTB_DRY_RUN=false`, strategy ID in process env). Do not restart or enable live paths.

## Interpretation guidance

- If `blocked_total=0`, say the filter is armed but not yet proven.
- If old lifecycle positions are still closing, do not attribute their PnL to the new filter.
- If post-filter exits are below sample threshold, report hypotheses only.
- If post-filter PnL remains negative, continue paper-only and move to Market Snapshot/Confluence or stricter timing filters rather than live promotion.

## User-facing report style

Keep updates compact to avoid clipped messages:

```text
✅ Gebaut:
🧪 Verifiziert:
📊 Aktueller Stand:
🚫 Live:
➡️ Nächster Schritt:
```

Avoid long raw JSON/process dumps unless the user asks for implementation detail.
