Found in review of #351.
edgezero-adapter-cloudflare (lib.rs:67-80) carries a derivation loop byte-identical to the Fastly adapter's runtime_env_keys: same (CONFIG, KV, SECRETS) iteration, same to_ascii_uppercase, same __NAME-always / __KEY-for-config-only rule. The rule is now written down in three places and unit-tested in one (the Fastly adapter, since #351).
Natural home is core, e.g. EnvConfig::store_keys(stores: StoresMetadata) -> Vec<String>, with each adapter concatenating its own fixed keys. One test then covers both adapters and cross-adapter drift becomes impossible.
Found in review of #351.
edgezero-adapter-cloudflare(lib.rs:67-80) carries a derivation loop byte-identical to the Fastly adapter'sruntime_env_keys: same(CONFIG, KV, SECRETS)iteration, sameto_ascii_uppercase, same __NAME-always / __KEY-for-config-only rule. The rule is now written down in three places and unit-tested in one (the Fastly adapter, since #351).Natural home is core, e.g.
EnvConfig::store_keys(stores: StoresMetadata) -> Vec<String>, with each adapter concatenating its own fixed keys. One test then covers both adapters and cross-adapter drift becomes impossible.