What evaluating a stored definition needs of a codebase (configValue): its store, layout, definitions and cache modules. (An interface, not the codebase itself, so the codebase can ask for its roles without the two being hashed as one.)
A stored definition's value (any version of it, by hash), evaluated once per hash; functions in it are dropped. A hash fixes the value, so it's kept in the codebase: later commands don't evaluate it again.