[中] 分析缓存键不含模型与算法版本
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 68/100
Research direction
Start in windows/birdlock/core/analysis.py: read ANALYSIS_VERSION, then follow how Analyzer.fingerprint builds the key consumed by ProxyCache. Decide whether to hash the model weight files into that key or add a release-time check that the constant was bumped; the audit thread suggests either is acceptable. Done looks like swapping weights without touching the version constant causing existing projects to re-analyse instead of serving the old cache, verified by reopening a project and observing a fresh analysis pass.
Written by the indexing model from the issue text.
Description
位置:windows/birdlock/core/analysis.py(ANALYSIS_VERSION;缓存键见 Analyzer.fingerprint / ProxyCache)
现象:缓存键由素材指纹决定,算法/模型更新需要手工提升 ANALYSIS_VERSION。若发布流程没有强制在模型更新时提升版本,升级后会继续复用旧缓存,用户不点「重新识别」就看不到模型改进。
复现:替换模型权重但不改版本常量,打开已有工程观察是否重新分析。
建议:把模型文件 SHA256 或版本写进缓存键;或在发布检查里校验版本提升。
来源:2026-11-15 全仓只读审计,PR #7 未包含此项。 未在 Windows 实机复现,复现路径由代码审计推得。
- Dominant language
- Swift
- Stars
- 2
- Forks
- 2
- Avg merge
- 1h 11m
- Merged PRs (30d)
- 2
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from cyandee/BirdLock
-
Difficulty 2/5 Under an hour Newbie friendliness 62/100
-
Difficulty 1/5 Under an hour Newbie friendliness 80/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 1/5 Under an hour Newbie friendliness 86/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100