(Slight termonology nit: a "proxy record" is conceptually a set of disparate named data elements - like a record - which you access from an "item", "effect", "skill", etc using the same syntax as you access the fields of a record object. Therefore, I would call "timescast" an "item proxy field" or something.)
public int get_timescast()
return SkillDatabase.getCasts( (int) this.contentLong );
That map is not cleared when you log in a new character without restarting KoLmafia.
private static final Map<Integer, Integer> castsById = new HashMap<Integer, Integer>();
public int get_turns_spent()
return AdventureSpentDatabase.getTurns( (KoLAdventure) this.content );
Supposedly, that structure is serialized into "USERNAME_turns.ser" in LogoutManager and deserialized in LoginManager.
private static Map<String, Integer> TURNS = new TreeMap<String, Integer>();
In other words, it is certainly intended to persist across logins.
Both of the reported behaviors seem like bugs, but they are actually not "related". I suggest you move the second one into its own bug report.