{ "_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." } }