chore(i18n): purge dead sys_webhook_delivery bundle block + roll out bundle-ownership guards#3502
Merged
Merged
Conversation
…bundle-ownership guards - Remove the stale sys_webhook_delivery translation block from the four plugin-webhooks i18n bundles (object removed in ADR-0018 M3 → sys_http_delivery); surgical, the sys_webhook block is untouched. - Fix three stale sys_webhook_delivery doc comments (platform-objects integration/index.ts + setup.app.ts, plugin-webhooks sys-webhook.object.ts). - Add the bundle-ownership guard test (#2834 5 / ADR-0029 D8) to the 8 packages that own i18n bundles, so a stray object block in a generated bundle fails the build instead of dying silently on the next `os i18n extract`. - Fix a live-object omission the guard caught: re-add SysCapability to plugin-security's extract config (it had curated translations in the bundles but had been dropped from the config), preserving the strings instead of deleting them. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
📓 Docs Drift CheckThis PR changes 7 package(s): 21 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Purges the dead
sys_webhook_deliveryi18n block and hardens every i18n-bundle package against the same class of bug.sys_webhook_deliverywas removed when webhook delivery moved to@objectstack/service-messaging(sys_http_delivery, ADR-0018 M3), but a full translation block for it lingered in the plugin-webhooks bundles — and nothing was stopping the nextos i18n extractfrom silently dropping it (and, elsewhere, curated strings) on other packages too.Changes
Cleanup
sys_webhook_deliveryblock from the 4 plugin-webhooks locale bundles (en/zh-CN/ja-JP/es-ES) — surgical,sys_webhookuntouched (−444 lines).sys_webhook_deliverydoc comments (platform-objectsintegration/index.ts+setup.app.ts, plugin-webhookssys-webhook.object.ts).Guard rollout
bundle-ownershiptest guard (ADR-0057 data lifecycle follow-ups: retire per-plugin sweepers, dev telemetry datasource + db:clean, Studio surface, PG rotation (tracking) #2834 ⑤ / ADR-0029 D8) — previously only in platform-objects — to the 8 packages that own i18n bundles (plugin-webhooks/audit/approvals/security/sharing + service-messaging/realtime/storage). A generated bundle carrying an object its extract config doesn't own now fails the build instead of silently losing curated translations on the nextos i18n extract.Live-object fix the new guard caught⚠️ reviewer note
sys_capability— a live, registered object (defined, exported, inmanifest.ts, tested) with curated zh-CN/ja-JP/es-ES translations — but its extract config had dropped it. This is the guard comment's case (a) "config gained an object → add it here", not case (b) "delete the leftover". SoSysCapabilitywas re-added to the extract config to preserve the strings, rather than deleted. (Deleting would have destroyed live-object translations — the exact loss this guard prevents.)Verification
OWNEDset at a bogus value → both assertions failed with clear, actionable messages → reverted.Notes
fixedgroup → onepatchchangeset bumps them together.sys_user_position/sys_audience_binding_suggestionand plugin-approvalssys_approval_approver/sys_approval_tokenare intentionally not translated (absent from both config and bundles — consistent), noted in the respective test comments.🤖 Generated with Claude Code