Package as a recipe¶
Briefing, not authority. (R) rule at linked source · (O) dated upstream fact · (P) procedure · (C) open work · (G) not established.
WHAT THIS MEANS IN DRUPAL¶
A recipe is declarative composition: install modules, import other recipes, create config, apply config actions. It is not a module (R) how-we-build §4.
OWNER¶
- Composition and package sets: recipes; capability: modules (R) standard "Module = capability, recipe = composition".
- Procedure: Recipe factory playbook.
PREREQUISITES¶
- (P) The capability works on a clean site as configuration.
- (P) Every module the config depends on is known.
DO THIS¶
- (P) Small and composable; higher recipes compose lower ones (R) how-we-build §5.
- (P)
install:matches everydependencies.modulein the config; nothing extra (R) standard "Module = capability". - (P) Config actions for idempotent changes; Composer type
drupal-recipe. - (P) Apply on a fresh site; prove import, not just success output (R) standard §17.
WATCH FOR¶
- A module shipping config for modules it does not declare makes
drush enfatal (R) standard "Module = capability". - Hierarchy: Site Template > Domain Recipe > Foundation Recipe; foundation never grows AI/ECA/Tool logic (R) standard §10 platform stack.
DO NOT¶
- PHP,
.moduleor hooks inside a recipe Recipe factory playbook §4. - A module that only ships config (R) Rule I.
- One giant recipe (R) how-we-build §5.
- Add Composer deps to satisfy an unused
install:line (R) standard "Module = capability".
OWNERSHIP / CAN-SHOULD-MAY¶
- CAN:
drush recipe, core recipe command. - SHOULD: recipes live under
blueflyio/agent-platform/drupal/recipes/(R) standard §10 platform stack. - MAY: consumers apply canonical recipes; never fork them (C) mba-eaxsj.
DO NOT REDISCOVER¶
- Recipes over modules (R) Rule I. Composition authority is the recipe layer factory convergence.
CONFLICTS¶
| ID | A | B | Resolution |
|---|---|---|---|
| C-RECIPE-NAMESPACE | recipe_amcs uses blueflyio/NAME |
recipe_blucity uses bluefly/NAME |
Open per standard §10 platform stack: needs a decision. |
GO DEEPER¶
Anchored sources: frontmatter authority_sources. Expires last_verified + 30d.