You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 7293048
Browse filesBrowse the repository at this point in the historyBrowse files
fix(plugin-email): keep the published sweep signature; the plugin calls an internal effective sweep
The effective-template boot sweep moves to a module-internal
bootstrapEffectiveEmailTemplates, which EmailServicePlugin's boot wiring
calls with the protocol and tenancy services. The exported
bootstrapDeclaredEmailTemplates keeps its published four-parameter
signature and delegates with no sources, reading the registry as before.
The package entry exports no new symbol: EffectiveEmailTemplateSources is
no longer re-exported. One sweep body, two entry points.
Claude-Session: https://claude.ai/code/session_011K3zqE8Pv1Evw5hc8tZCnN
Co-authored-by: Claude <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: .changeset/21785-email-template-overlay-survives-boot.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ An email template edited through `PUT /api/v1/meta/email_template/:name` (the St
7
7
Clause-②: no
8
8
9
9
- The cause: on a deployment with a Default Organization the admin's save is an org-scoped overlay, and boot hydration keeps org-scoped overlays out of the registry the sweep read. An env-wide overlay was already kept.
10
-
-`bootstrapDeclaredEmailTemplates`now projects the effective template, the layered list `protocol.getMetaItems` serves, read in `tenancy.defaultOrgId()`'s organization. That is the Default Organization under the `single` posture, and env-wide (no organization) whenever a walled posture is requested. A host without a `protocol` service reads the registry as before.
10
+
-`EmailServicePlugin`'s boot sweep now projects the effective template: the layered list `protocol.getMetaItems` serves, read in the organization `tenancy.defaultOrgId()` names. That is the Default Organization under the `single` posture. A host without a `protocol` service reads the registry as before.
11
11
- A failed effective read projects nothing for that boot, so the rows keep their last projection. It does not fall back to the package wording.
12
12
- Seed-not-clobber is unchanged. A row an admin created (`managed_by: 'admin'`) or edited through the data API (`customized: true`) is still never overwritten.
13
-
-`bootstrapDeclaredEmailTemplates`takes an optional fifth argument, `{ protocol, tenancy }` (`EffectiveEmailTemplateSources`, now exported). Existing callers are unaffected.
13
+
-The published API is unchanged. The exported `bootstrapDeclaredEmailTemplates`keeps its signature and still reads the registry, so a caller outside the plugin sees the same behaviour as before.
0 commit comments