MCP: harden report-cache signature beyond mtime+size #40
Labels
No labels
area:ci
area:docs
area:engineering
area:framework-fp
area:test-coverage
dogfood:fn
dogfood:fp
dogfood:friction
dogfood:tp
phase:b
phase:c
severity:critical
severity:high
severity:low
severity:medium
source:deepseek-v4-pro
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
pdurlej/fallow-py#40
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Source
Triaged from DeepSeek v4 Pro audit via #35.
Problem
The MCP report cache uses a signature based on file metadata such as
mtimeand size. That is fast, but can miss changes on filesystems with coarse timestamp resolution or when content changes preserve size. This is not currently proven as a user-facing bug, but it is plausible cache hardening for a long-running MCP server.This is related to, but distinct from, #9 / B6 (
REPORT_CACHEbounded + thread-safe). #9 addresses cache lifecycle/concurrency. This issue addresses cache invalidation correctness.Target behavior
Decide and implement one of:
Acceptance criteria
.pyfallow.toml/pyproject.tomlconfig changes in the cache invalidation story or document why they are out of scope.Out of scope