@drawbridge/drawbridge-agents 0.1.36 → 0.1.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -48,6 +48,15 @@ skill) so it stops living only in tribal memory.
48
48
  `ads-republishing.<connectionId>`). Never unique-index `coalesce` (superseding requires the
49
49
  second insert to land), and writes that set `key` need the writer-side E11000 handler or a
50
50
  replayed event logs a false error.
51
+ - **Adding an email/SMS vendor is a two-repo change** (api ↔ sync). A connection is deliverable
52
+ only if sync implements a sender for its slug — `lib/email.js` (`{ mailchimp, sendgrid }`) and
53
+ `lib/sms.js` (`{ twilio }`), which `queue/notification.js` reads **directly** as its guard and
54
+ org-scoped lookup; never re-list the slugs as literals, or the guard drifts from the senders
55
+ that exist. Adding a vendor to drawbridge-api `lib/connections.js` with `group : 'email'`/`'sms'`
56
+ makes it selectable throughout api and app-web, but with no sync sender every send is
57
+ cancelled, not delivered — merchant sees a workflow that ran and no message. The miss is
58
+ detectable, not silent: `notification.reason = 'connection-slug-mismatch'` plus an
59
+ Error-instance `logger.error` (a string never reaches Sentry Issues — see `sentry-sdk.md`).
51
60
  - Schema-gated fields ship **api-first, booted**: a sibling writer setting a field new to a
52
61
  drawbridge-api `$jsonSchema` (validators are strict + `additionalProperties: false`) must not
53
62
  go live until the api has **booted** with the schema change on that environment — creating the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drawbridge/drawbridge-agents",
3
- "version": "0.1.36",
3
+ "version": "0.1.37",
4
4
  "description": "Shared agent-instruction content (rules, code style, conventions) for the drawbridge-* monorepo.",
5
5
  "license": "UNLICENSED",
6
6
  "publishConfig": {