Use when deciding configuration naming conventions, schema rules, or YAML key namespace assignments for outbox/inbox/workflow/kafka/scheduler.
Defines naming conventions and schema rules for YAML configuration keys, ensuring producer/consumer/workflow namespaces stay unambiguous and local startup remains reproducible.
REQUIRED: Variables in VARIABLES.md. Templates in references/templates.md.
start-yaml-config-generator for file changes)start-wiring-config-generator)application-local.yaml):
persimmon.outbox.topicpersimmon.outbox.kafka.producer.*persimmon.outbox.kafka.consumer.*persimmon.outbox.producer.topicpersimmon.outbox.consumer.topicoutbox.kafka.topic when the value is used by a consumer.start module application*.yml*-start Spring Boot modules, keys needed for local startup should resolve from that module's committed application.yaml / application-local.yaml values.spring-boot:run gate.{{startModuleDir}}/src/main/resources/application.yaml{{startModuleDir}}/src/main/resources/application-local.yaml| Mistake | Why It Happens | Fix |
|---|---|---|
Using ambiguous key names like outbox.kafka.topic for consumer config | Producer/consumer share namespace | Always qualify with producer/consumer prefix |
| Requiring external env files for local startup | Seems cleaner to externalize secrets | Keep defaults in committed YAML — breaks reproducibility otherwise |
| Not separating producer vs consumer within feature namespace | Appears simpler to share keys | Follow the baseline pattern — leads to confusion later |
scaffold-router, start-yaml-config-generator, start-wiring-config-generatorstart-yaml-config-generator