fix(key): type & annotations should be immutable