Use when creating, renaming, or removing start-module YAML config keys, updating wiring to use only new keys, and keeping naming unambiguous.
Manages YAML configuration keys in start modules — creates, renames, and removes keys while updating all related wiring to stay consistent.
REQUIRED: Follow GENERATOR_SKILL_STRUCTURE.md. Variables in VARIABLES.md. Templates in references/templates.md.
{{startModuleDir}}/src/main/resources/*.yml or *.yamlstart-config-schema-guardrails first)start-wiring-config-generator)start module to read only the new keysstart-config-schema-guardrails; this skill applies the change to actual YAML files and related wiring.persimmon.kafka.producer.*persimmon.kafka.consumer.*persimmon.outbox.relay.**-start module, prefer a committed YAML default or application-local.yaml value over an external environment-file prerequisite.dotenv or manually prepared environment files for the final runnable gate.{{startModuleDir}}/src/main/resources/application.yaml{{startModuleDir}}/src/main/resources/application-local.yaml{{startModuleDir}}/src/main/resources/application-example.yaml<active-skill-root>/start-config-schema-guardrails/SKILL.md| Mistake | Why It Happens | Fix |
|---|---|---|
Introducing ambiguous keys like outbox.kafka.topic used by consumer | Naming collision between producer/consumer | Follow start-config-schema-guardrails naming rules |
| Leaving dead/unused keys after renames | Easy to forget cleanup | Remove old keys when no backward compat needed |
| Replacing YAML startup default with env-file requirement | Seems cleaner to externalize | Keep local defaults committed — breaks automated spring-boot:run otherwise |
scaffold-routerstart-config-schema-guardrails, start-wiring-config-generator, adapter-mq-consumer-generatormvn -q clean test minimum, mvn -q clean verify if DB behavior changed)requesting-code-review