Classification Notice for Config Copy Drift
A working configuration copied into a second service has been reclassified from shortcut to original source.
CLASSIFICATION NOTICE Subject: Config Copy Drift, instances SVCB-env and SVCC-env Classification level: Stable, origin-obscured Date of original copy: Approximately 14 months prior Current status: Neither service's configuration can confirm which values were decisions
What is being classified:
A developer, working under a deadline, copied the production configuration of Service A into the new Service B. The logic was sound: Service A was working, Service B had similar requirements, and the copy took four minutes.
The copy is now the configuration for two additional services.
Why classification is necessary:
The original configuration has changed eleven times since the copy was made. Seven of those changes were propagated to Service B. Four were not. The four that were not propagated were not propagated because nobody checked whether they needed to be propagated.
The timeout value in Service A is currently 15000. In Service B it is 30000. In Service C it is 30000. Nobody set 30000 as the correct value for Service B or Service C. It arrived there through the copy. It has remained because changing it would require a decision about what the correct value is, and nobody is certain.
Governing rule:
A copied configuration becomes the authoritative configuration for the service it was copied into. The moment this occurs is retroactive: it occurred when someone first deployed Service B and chose not to verify each value independently. That moment has passed.
What cannot now be recovered:
The intention behind fourteen of the sixty-two values in the current config. This includes: the connection pool size, the retry strategy maximum, the socket timeout, and one environment variable whose name suggests it was temporary but which has never been removed.
Instructions for future maintainers:
Each value in the configuration should be treated as intentional until proven otherwise. The proof in most cases will be difficult to obtain. This difficulty is not a flag. It is the configuration.
No correction is required at this time. A correction would require knowing which values to correct. Owning the correction would require knowing which values were ever decisions, and nobody who made those decisions is still on the team.
Classification complete.