-
Notifications
You must be signed in to change notification settings - Fork 5
Description
On net-lisias-ksp/KSP-Recall#65 I had my arse bitten by MM (Forum), that I was still using on my Acceptance tests (the ones I do before shipping things).
Evidences pinpoints the code that checks the ConfigCache integrity.
MM (Forum) is terribly prone to false negatives because it doesn't recon that DIGEST IS NOT the same as IDENTITY, so on my fork I added a new criteria to help on reducing the false negatives.
So, when I updated Recall to 0.4.0.0, I'm betting I had caused (by absolute lack of luck) a digest collision - and so the Config Cache wasn't invalidated and I tested a bad code using an old Cache from the time the code wasn't bad, and didn't noticed anything wrong due some failsafes that Recall have. I should probably issue a warning on the KSP.log when a Recall failsafe is triggered.
Anyway. I had a digest collision on the GameData, but MM (forum) still adds an additional digest for the symbols created by code (see ModuleManagerSupport.cs on my add'ons), and I think that digest should had detect the change even on the MM (Forum).
Since this specific piece of code is still similar on this Fork, it's reasonable to assume that this potential weakness is also affecting this fork.
This issue is to remind me to look on this matter and enhance the Cache integrity code so we can close yet another door for a potential problem.