Filed by the domain:spec execution seat, session session_01KB5PFtxuy1x3dcR5gxudx6, 2026-09-16T16:2xZ, out of the #18056 round (PR #18482), which measured it and handed it back rather than widening its own diff. ⛔ Unlabelled beyond finding and unassigned; grading and routing are triage's.
The contract text that names these as false
packages/plugins/plugin-email/src/template-loader.ts:20-22 already enumerates three false declarations about how email-template locale resolution works: the resolver performs an exact (name, locale) match and no language-subtag folding — there is no "best match".
Three carriers still state the falsified claim
packages/platform-objects/src/audit/sys-email-template.object.ts:10-11
"Resolved by `(name, locale)`; the EmailService picks the best-matching locale
for the recipient, falling back to `en-US`"
packages/services/service-messaging/src/objects/notification-template.object.ts:65
"both resolve a template by best-matching locale"
docs/qa/platform-checklist/areas/integration-system.json:818
"(name, locale) resolution picks the best locale row and falls back to en-US"
Repo-wide probe best-matching locale|picks the best = 6 hits: these three, plus template-loader.ts's own quotations of them and item-key-discriminators.ts.
⇒ this is class (b) — it violates an already-declared contract, and the declaration that contradicts it is in the same repo naming these very sentences as wrong.
⚠️ A correction the round also produced
An earlier acceptance note on PR #18482 said sys-email-template.object.ts 「says nothing about the floor」. That is false: it does not say nothing — it says something wrong. The corrected note now names it. ⭐ 「silent」 and 「wrong」 are different findings and the first reads as harmless, which is how this survived a review pass.
⛔ Why PR #18482 did not fix it
Out of that card's declared file face. The round named it for a successor and ⛔ did not widen — which is the correct call, and the reason this card exists instead of a bigger diff.
Also carried, lower stakes
packages/metadata-core/src/item-key-discriminators.ts:9 quotes email-template.zod.ts as saying the service 「picks the best match for the recipient's locale」 — a sentence with 0 hits in that file. A stale quotation of a sentence that no longer exists, ⛔ not a second instance of the false claim.
And ⛔ not a finding, recorded so it is not re-derived: packages/spec/src/system/email-template.form.ts is silent on the floor. Silence is a gap, not an error — it states nothing false, so it is outside the three classes.
Dedupe words
sys_email_template best-matching locale · falling back to en-US · notification-template best-matching · template-loader false declarations · integration-system.json locale
Refs
#18056 / PR #18482 · packages/plugins/plugin-email/src/template-loader.ts:20-22 (the contract text)
Generated by Claude Code
Filed by the
domain:specexecution seat, sessionsession_01KB5PFtxuy1x3dcR5gxudx6, 2026-09-16T16:2xZ, out of the #18056 round (PR #18482), which measured it and handed it back rather than widening its own diff. ⛔ Unlabelled beyondfindingand unassigned; grading and routing are triage's.The contract text that names these as false
packages/plugins/plugin-email/src/template-loader.ts:20-22already enumerates three false declarations about how email-template locale resolution works: the resolver performs an exact(name, locale)match and no language-subtag folding — there is no "best match".Three carriers still state the falsified claim
Repo-wide probe
best-matching locale|picks the best= 6 hits: these three, plustemplate-loader.ts's own quotations of them anditem-key-discriminators.ts.⇒ this is class (b) — it violates an already-declared contract, and the declaration that contradicts it is in the same repo naming these very sentences as wrong.
An earlier acceptance note on PR #18482 said
sys-email-template.object.ts「says nothing about the floor」. That is false: it does not say nothing — it says something wrong. The corrected note now names it. ⭐ 「silent」 and 「wrong」 are different findings and the first reads as harmless, which is how this survived a review pass.⛔ Why PR #18482 did not fix it
Out of that card's declared file face. The round named it for a successor and ⛔ did not widen — which is the correct call, and the reason this card exists instead of a bigger diff.
Also carried, lower stakes
packages/metadata-core/src/item-key-discriminators.ts:9quotesemail-template.zod.tsas saying the service 「picks the best match for the recipient's locale」 — a sentence with 0 hits in that file. A stale quotation of a sentence that no longer exists, ⛔ not a second instance of the false claim.And ⛔ not a finding, recorded so it is not re-derived:
packages/spec/src/system/email-template.form.tsis silent on the floor. Silence is a gap, not an error — it states nothing false, so it is outside the three classes.Dedupe words
sys_email_template best-matching locale·falling back to en-US·notification-template best-matching·template-loader false declarations·integration-system.json localeRefs
#18056 / PR #18482 ·
packages/plugins/plugin-email/src/template-loader.ts:20-22(the contract text)Generated by Claude Code