Extracted from ../entities/recipe.md.


Locked in v0.2:

  • Recipe name uniqueness — ✅ workspace-wide. No namespacing by Categorization.
  • Input Parameter / Resource reference scope — ✅ Worksheet Resources inside a Recipe can reference Resources from Internal and External Price Books only. Project-Specific Price Books are excluded (a Recipe is reusable across Estimates/Projects; Project-Specific rates would tie it to one project).
  • Recipe versioning / in-place updates — ✅ Allowed. Same pattern as Resources: edit in Library → existing Worksheet Recipe usages don’t auto-sync; divergence flagged by Anomaly Review; estimator explicitly pushes updates through (BR-041, BR-042, BR-043).
  • Nested Recipe depth cap — ✅ 3 levels deep maximum. Rationale: Recipes nest inside Items (which can be nested 5 levels under Headings), so deep recipe trees become unreviewable. 3 is a pragmatic cap.
  • Recipe Library access control — ✅ Workspace-wide, visible to all Users. Edit / delete permissions per roles-permissions.md (Estimators can use, Lead Estimators + Admin can edit/delete).
  • Recipe asset storage — ✅ Embedded in the Recipe (PDFs, images, Excel — live with the Recipe definition). When a Recipe is used in an Item’s Worksheet, the assets are snapshotted along with the Worksheet Recipe (snapshot semantics — BR-041).
  • Cross-workspace Recipe reuse — ✅ Recipes are usable anywhere — no workspace boundary restriction. Company standards can be reused across projects / tenants day one.

🟡 Working:

  • Promotion workflow — exact UI flow for promoting an Item’s Worksheet to a Recipe (wizard, inline, multi-step?). Deferred to Beta UI design.
  • Input Parameter defaults — should the system auto-suggest default values from the host Estimate’s context (e.g., “Number of Trips” defaults to the Item’s quantity)?

🔴 Open:

  • (none currently)