{
  "_meta": {
    "comment": "Scenario 02: CPS volatile content inside cached prefix. Covers the CPS half of the TOK/CPS category. Tests that the humanizer explains cache-prefix-stability in user-facing language."
  },
  "findingId": "CA-CPS-001",
  "scannerInput": {
    "id": "CA-CPS-001",
    "scanner": "CPS",
    "severity": "medium",
    "title": "Volatile content inside cached prefix breaks reuse",
    "description": "Volatile pattern matched at .claude/CLAUDE.md:42 (timestamp). Lines 31-150 form the cache prefix.",
    "file": ".claude/CLAUDE.md",
    "line": 42,
    "evidence": "Pattern: timestamp; window: 31-150",
    "recommendation": "Move volatile content (timestamps, session state) below line 150 or to a separate file.",
    "category": null,
    "autoFixable": false
  },
  "expectedHumanized": {
    "titlePattern": "Content that changes between turns sits in the part Claude tries to reuse",
    "descriptionPattern": "fresh read every time|slows responses",
    "recommendationPattern": "Move the changing content|150 lines"
  },
  "groundTruth": {
    "what": "Content that changes between turns is inside the part of the file Claude tries to reuse.",
    "why": "Claude saves space by reusing the start of your instructions across turns. When that area changes, every turn re-reads the whole start, which slows responses.",
    "whatNext": "Move the changing content (timestamps, session notes) below the first 150 lines, or out of the file entirely."
  }
}
