@adcp/sdk 7.7.0 → 7.8.0

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.
Files changed (73) hide show
  1. package/dist/lib/errors/index.d.ts +54 -0
  2. package/dist/lib/errors/index.d.ts.map +1 -1
  3. package/dist/lib/errors/index.js +132 -1
  4. package/dist/lib/errors/index.js.map +1 -1
  5. package/dist/lib/index.d.ts +4 -2
  6. package/dist/lib/index.d.ts.map +1 -1
  7. package/dist/lib/index.js +38 -9
  8. package/dist/lib/index.js.map +1 -1
  9. package/dist/lib/media-buy/available-actions.d.ts +60 -0
  10. package/dist/lib/media-buy/available-actions.d.ts.map +1 -0
  11. package/dist/lib/media-buy/available-actions.js +112 -0
  12. package/dist/lib/media-buy/available-actions.js.map +1 -0
  13. package/dist/lib/media-buy/index.d.ts +9 -0
  14. package/dist/lib/media-buy/index.d.ts.map +1 -0
  15. package/dist/lib/media-buy/index.js +36 -0
  16. package/dist/lib/media-buy/index.js.map +1 -0
  17. package/dist/lib/media-buy/preflight.d.ts +118 -0
  18. package/dist/lib/media-buy/preflight.d.ts.map +1 -0
  19. package/dist/lib/media-buy/preflight.js +376 -0
  20. package/dist/lib/media-buy/preflight.js.map +1 -0
  21. package/dist/lib/media-buy/types.d.ts +113 -0
  22. package/dist/lib/media-buy/types.d.ts.map +1 -0
  23. package/dist/lib/media-buy/types.js +25 -0
  24. package/dist/lib/media-buy/types.js.map +1 -0
  25. package/dist/lib/media-buy/update-fields.generated.d.ts +14 -0
  26. package/dist/lib/media-buy/update-fields.generated.d.ts.map +1 -0
  27. package/dist/lib/media-buy/update-fields.generated.js +137 -0
  28. package/dist/lib/media-buy/update-fields.generated.js.map +1 -0
  29. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  30. package/dist/lib/server/decisioning/account.d.ts +27 -0
  31. package/dist/lib/server/decisioning/account.d.ts.map +1 -1
  32. package/dist/lib/server/decisioning/account.js.map +1 -1
  33. package/dist/lib/server/decisioning/context.d.ts +65 -0
  34. package/dist/lib/server/decisioning/context.d.ts.map +1 -1
  35. package/dist/lib/server/decisioning/runtime/from-platform.js +59 -58
  36. package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
  37. package/dist/lib/server/decisioning/runtime/to-context.d.ts +1 -1
  38. package/dist/lib/server/decisioning/runtime/to-context.d.ts.map +1 -1
  39. package/dist/lib/server/decisioning/runtime/to-context.js +2 -1
  40. package/dist/lib/server/decisioning/runtime/to-context.js.map +1 -1
  41. package/dist/lib/signing/jwks-helpers.d.ts +8 -1
  42. package/dist/lib/signing/jwks-helpers.d.ts.map +1 -1
  43. package/dist/lib/signing/jwks-helpers.js.map +1 -1
  44. package/dist/lib/signing/signer.d.ts +22 -1
  45. package/dist/lib/signing/signer.d.ts.map +1 -1
  46. package/dist/lib/signing/signer.js +5 -16
  47. package/dist/lib/signing/signer.js.map +1 -1
  48. package/dist/lib/signing/testing.d.ts +4 -3
  49. package/dist/lib/signing/testing.d.ts.map +1 -1
  50. package/dist/lib/signing/testing.js +6 -1
  51. package/dist/lib/signing/testing.js.map +1 -1
  52. package/dist/lib/testing/storyboard/agent-routing.d.ts +20 -3
  53. package/dist/lib/testing/storyboard/agent-routing.d.ts.map +1 -1
  54. package/dist/lib/testing/storyboard/agent-routing.js +60 -10
  55. package/dist/lib/testing/storyboard/agent-routing.js.map +1 -1
  56. package/dist/lib/testing/storyboard/default-invariants.js +111 -59
  57. package/dist/lib/testing/storyboard/default-invariants.js.map +1 -1
  58. package/dist/lib/testing/storyboard/request-signing/grader.d.ts +24 -10
  59. package/dist/lib/testing/storyboard/request-signing/grader.d.ts.map +1 -1
  60. package/dist/lib/testing/storyboard/request-signing/grader.js +123 -29
  61. package/dist/lib/testing/storyboard/request-signing/grader.js.map +1 -1
  62. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  63. package/dist/lib/testing/storyboard/runner.js +13 -0
  64. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  65. package/dist/lib/testing/storyboard/types.d.ts +85 -2
  66. package/dist/lib/testing/storyboard/types.d.ts.map +1 -1
  67. package/dist/lib/testing/storyboard/types.js.map +1 -1
  68. package/dist/lib/testing/storyboard/validations.d.ts.map +1 -1
  69. package/dist/lib/testing/storyboard/validations.js +41 -22
  70. package/dist/lib/testing/storyboard/validations.js.map +1 -1
  71. package/dist/lib/version.d.ts +3 -3
  72. package/dist/lib/version.js +3 -3
  73. package/package.json +1 -1
@@ -15,18 +15,6 @@ const content_digest_1 = require("./content-digest");
15
15
  const errors_1 = require("./errors");
16
16
  const types_1 = require("./types");
17
17
  const webhook_verifier_1 = require("./webhook-verifier");
18
- /**
19
- * Step-8-equivalent purpose-binding gate on the signer side. The verifier
20
- * already enforces `jwk.adcp_use === expected` at step 8 (see verifier.ts
21
- * for request signing; webhook-verifier.ts for webhooks). Replicating the
22
- * check on the signer side prevents the more common operator footgun:
23
- * passing a wrong-purpose key into the helper, producing a wire-conformant
24
- * signature that the downstream verifier then rejects, surfacing the
25
- * misconfiguration at the wrong end of the connection.
26
- *
27
- * Errors emit the same code the verifier uses for that direction so log
28
- * scrapers across signer / verifier see consistent vocabulary.
29
- */
30
18
  function assertKeyPurpose(key, expected) {
31
19
  throwIfPurposeMismatch(key.keyid, key.privateKey.adcp_use, expected);
32
20
  }
@@ -60,11 +48,12 @@ function throwIfPurposeMismatch(keyid, actual, expected) {
60
48
  case 'response-signing':
61
49
  throw new errors_1.ResponseSignatureError('response_signature_key_purpose_invalid', 8, message);
62
50
  default: {
63
- // Compile-time exhaustiveness: a future `AdcpUse` widening must add
64
- // a case arm here. Trips `tsc --noEmit` if the union grows without
65
- // an explicit gate decision for the new member.
51
+ // Compile-time exhaustiveness: a future widening of `Rfc9421AdcpUse`
52
+ // (typically because `AdcpUse` grew an RFC-9421 member) must add a
53
+ // case arm here. Trips `tsc --noEmit` if the union grows without an
54
+ // explicit gate decision for the new member.
66
55
  const _exhaustive = expected;
67
- throw new Error(`unreachable: unhandled AdcpUse '${_exhaustive}'`);
56
+ throw new Error(`unreachable: unhandled Rfc9421AdcpUse '${_exhaustive}'`);
68
57
  }
69
58
  }
70
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src/lib/signing/signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src/lib/signing/signer.ts"],"names":[],"mappings":";;AA8GS,sDAAqB;AA4D9B,0DAkCC;AAYD,4DAMC;AAED,kCAKC;AA0BD,0DA2BC;AASD,kCAKC;AA6ED,4DAuCC;AASD,8DAMC;AA0BD,oCASC;AA9cD,mCAA0F;AAC1F,iDAOwB;AACxB,qDAAwD;AACxD,qCAAgG;AAEhG,mCAQiB;AACjB,yDAAuF;AA0CvF,SAAS,gBAAgB,CAAC,GAAc,EAAE,QAAwB;IAChE,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,qBAAqB,CAC5B,QAAgE,EAChE,QAAwB;IAExB,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO;IAC3C,sBAAsB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa,EAAE,MAA0B,EAAE,QAAwB;IACjG,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO;IAChC,MAAM,OAAO,GACX,gBAAgB,KAAK,kBAAkB,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,GAAG;QAC5F,4BAA4B,QAAQ,6BAA6B,QAAQ,QAAQ;QACjF,6BAA6B,QAAQ,+DAA+D,CAAC;IACvG,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,iBAAiB;YACpB,MAAM,IAAI,8BAAqB,CAAC,uCAAuC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACvF,KAAK,iBAAiB;YACpB,MAAM,IAAI,8BAAqB,CAAC,uCAAuC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACvF,KAAK,kBAAkB;YACrB,MAAM,IAAI,+BAAsB,CAAC,wCAAwC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACzF,OAAO,CAAC,CAAC,CAAC;YACR,qEAAqE;YACrE,mEAAmE;YACnE,oEAAoE;YACpE,6CAA6C;YAC7C,MAAM,WAAW,GAAU,QAAQ,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,WAAW,GAAG,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;AACH,CAAC;AAgDD;;;;;;;;;;;;;GAaG;AACH,SAAgB,uBAAuB,CACrC,OAAoB,EACpB,QAA2B,EAC3B,UAA8B,EAAE;IAEhC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,GAAG,EAAE,oCAA4B,CAAC,CAAC;IAC3F,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEhD,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,KAAK,IAAI,IAAI,OAAO,CAAC;IACnE,MAAM,OAAO,GAA2B,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/E,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAA,qCAAoB,EAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,GAAG,4BAAoB,CAAC,CAAC;IAC7C,IAAI,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7C,IAAI,WAAW;QAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAoB;QAC9B,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG,GAAG,aAAa;QAC5B,KAAK;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,GAAG,EAAE,2BAAmB;KACzB,CAAC;IAEF,MAAM,iBAAiB,GAAgB,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC;IAC/D,MAAM,IAAI,GAAG,IAAA,iCAAkB,EAAC,UAAU,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,wBAAwB,CAAC,QAAkC,EAAE,SAAqB;IAChG,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC5D,OAAO,CAAC,iBAAiB,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,IAAA,oCAAqB,EAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;IAChH,OAAO,CAAC,WAAW,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,KAAK,MAAM,GAAG,CAAC;IACvD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC5E,CAAC;AAED,SAAgB,WAAW,CAAC,OAAoB,EAAE,GAAc,EAAE,UAA8B,EAAE;IAChG,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/F,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5E,OAAO,wBAAwB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC;AAeD;;;;;;;;;;GAUG;AACH,SAAgB,uBAAuB,CACrC,OAAoB,EACpB,QAA2B,EAC3B,UAA8B,EAAE;IAEhC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,GAAG,EAAE,oCAA4B,CAAC,CAAC;IAC3F,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;IAEtC,MAAM,OAAO,GAA2B,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/E,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAA,qCAAoB,EAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAErE,MAAM,UAAU,GAAG,CAAC,GAAG,+CAA4B,CAAC,CAAC;IACrD,MAAM,MAAM,GAAoB;QAC9B,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG,GAAG,aAAa;QAC5B,KAAK;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,sCAAmB;KACxC,CAAC;IAEF,MAAM,iBAAiB,GAAgB,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC;IAC/D,MAAM,IAAI,GAAG,IAAA,iCAAkB,EAAC,UAAU,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEvE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,OAAoB,EAAE,GAAc,EAAE,UAA8B,EAAE;IAChG,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/F,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5E,OAAO,wBAAwB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC;AAgED;;;;;;;;;;;;GAYG;AACH,SAAgB,wBAAwB,CACtC,QAAsB,EACtB,QAA2B,EAC3B,UAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,GAAG,EAAE,oCAA4B,CAAC,CAAC;IAC3F,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,kBAAkB,IAAI,IAAI,CAAC,IAAI,OAAO,CAAC;IAEpE,MAAM,OAAO,GAA2B,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;IAChF,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAA,qCAAoB,EAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,GAAG,qCAA6B,CAAC,CAAC;IACtD,IAAI,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7C,IAAI,WAAW;QAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnD,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAoB;QAC9B,OAAO,EAAE,GAAG;QACZ,OAAO,EAAE,GAAG,GAAG,aAAa;QAC5B,KAAK;QACL,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,4BAAoB;KACzC,CAAC;IAEF,MAAM,kBAAkB,GAAiB,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC;IAClE,MAAM,IAAI,GAAG,IAAA,yCAA0B,EAAC,UAAU,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAEhF,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC/E,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,yBAAyB,CAAC,QAAmC,EAAE,SAAqB;IAClG,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC5D,OAAO,CAAC,iBAAiB,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,IAAA,oCAAqB,EAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;IAChH,OAAO,CAAC,WAAW,CAAC,GAAG,GAAG,QAAQ,CAAC,KAAK,KAAK,MAAM,GAAG,CAAC;IACvD,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AACrG,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,YAAY,CAC1B,QAAsB,EACtB,GAAc,EACd,UAA+B,EAAE;IAEjC,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,wBAAwB,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;IACjG,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5E,OAAO,yBAAyB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAc,EAAE,IAAY;IACpD,MAAM,UAAU,GAAG,IAAA,yBAAgB,EAAC;QAClC,GAAG,EAAE,GAAG,CAAC,UAAwB;QACjC,MAAM,EAAE,KAAK;KACd,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,UAAU,CAAC,IAAA,aAAQ,EAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,IAAA,aAAQ,EAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;AAClG,CAAC;AAED,SAAS,cAAc,CAAC,OAAsD;IAC5E,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS;QAC9B,wEAAwE;QACxE,4EAA4E;QAC5E,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CAAC,UAAkB;IACzC,OAAO,IAAA,oBAAW,EAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAChH,CAAC"}
@@ -80,9 +80,10 @@ export interface MintEphemeralEd25519KeyOptions {
80
80
  */
81
81
  kid?: string;
82
82
  /**
83
- * AdCP purpose binding tagged on both JWKs.
84
- * - `'webhook-signing'` (default) outbound webhook callbacks.
85
- * - `'request-signing'` — buyer-to-seller signed requests (AdCP step 8).
83
+ * AdCP purpose binding tagged on both JWKs. Accepts every member of
84
+ * {@link AdcpUse}see that type for the canonical list (currently
85
+ * `'webhook-signing'`, `'request-signing'`, `'response-signing'`,
86
+ * `'governance-signing'`). Defaults to `'webhook-signing'`.
86
87
  *
87
88
  * For production request-signing keys use `pemToAdcpJwk()` or a KMS-backed
88
89
  * `SigningProvider` instead.
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../src/lib/signing/testing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,gCAAgC,CAAC;AAOxE,MAAM,WAAW,8BAA8B;IAC7C,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,SAAS,EAAE,WAAW,CAAC;IACvB,4CAA4C;IAC5C,UAAU,EAAE,cAAc,CAAC;IAC3B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,uBAAwB,YAAW,eAAe;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiB;gBAEhC,OAAO,EAAE,8BAA8B;IAoC7C,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAQrD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,GAAG,eAAe,CAMnE;AAED,MAAM,WAAW,mBAAmB;IAClC,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,SAAS,EAAE,WAAW,CAAC;IACvB,kFAAkF;IAClF,SAAS,EAAE,cAAc,CAAC;IAC1B;;;;OAIG;IACH,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC7C;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAoCjH"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../src/lib/signing/testing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,gCAAgC,CAAC;AAYxE,MAAM,WAAW,8BAA8B;IAC7C,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,SAAS,EAAE,WAAW,CAAC;IACvB,4CAA4C;IAC5C,UAAU,EAAE,cAAc,CAAC;IAC3B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,uBAAwB,YAAW,eAAe;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiB;gBAEhC,OAAO,EAAE,8BAA8B;IAoC7C,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAQrD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,GAAG,eAAe,CAMnE;AAED,MAAM,WAAW,mBAAmB;IAClC,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ;;;;OAIG;IACH,SAAS,EAAE,WAAW,CAAC;IACvB,kFAAkF;IAClF,SAAS,EAAE,cAAc,CAAC;IAC1B;;;;OAIG;IACH,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC7C;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAoCjH"}
@@ -44,7 +44,12 @@ const node_crypto_1 = require("node:crypto");
44
44
  * production-time guard.
45
45
  */
46
46
  exports.ALLOW_IN_MEMORY_SIGNER_ENV = 'ADCP_ALLOW_IN_MEMORY_SIGNER';
47
- const ADCP_USE_VALUES = new Set(['request-signing', 'webhook-signing', 'response-signing']);
47
+ const ADCP_USE_VALUES = new Set([
48
+ 'request-signing',
49
+ 'webhook-signing',
50
+ 'response-signing',
51
+ 'governance-signing',
52
+ ]);
48
53
  function isAdcpUse(value) {
49
54
  return typeof value === 'string' && ADCP_USE_VALUES.has(value);
50
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../../src/lib/signing/testing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../../src/lib/signing/testing.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,15 @@ export interface AgentRoutingContext {
53
53
  protocolIndex: Map<AdcpProtocol, string[]>;
54
54
  /** Resolved (key → URL) for echo on the storyboard result. */
55
55
  agentMap: Record<string, string>;
56
+ /**
57
+ * Agents whose discovery failed when `discovery_resilient: true` was set.
58
+ * Empty in the default (hard-failure) mode — if any agent failed and
59
+ * resilient mode is off, `buildRoutingContext` throws `DiscoveryFailure`
60
+ * instead of returning. The runner echoes this list onto
61
+ * `StoryboardResult.discovery_failures` so operators see the topology
62
+ * breakage even when the storyboard otherwise completes.
63
+ */
64
+ discoveryFailures: DiscoveryFailure[];
56
65
  }
57
66
  export declare class RoutingError extends Error {
58
67
  readonly task: string;
@@ -69,10 +78,18 @@ export declare class DiscoveryFailure extends Error {
69
78
  * Discover every agent in the map in parallel and build the routing index.
70
79
  *
71
80
  * Failure modes:
72
- * - any agent's discovery fails → `DiscoveryFailure` (caller surfaces as
73
- * a hard storyboard failure, never a per-step skip)
81
+ * - default (`options.discovery_resilient !== true`): any agent's
82
+ * discovery failure throw `DiscoveryFailure` (caller surfaces as a
83
+ * hard storyboard failure, never a per-step skip). Correct for
84
+ * production multi-tenant flows where every tenant is load-bearing.
85
+ * - resilient (`options.discovery_resilient === true`, #1367): failed
86
+ * agents are excluded from `profiles` + `protocolIndex` and reported
87
+ * on `AgentRoutingContext.discoveryFailures`. Per-step routing then
88
+ * surfaces failures only for storyboards that actually need the
89
+ * broken tenant — unrelated storyboards complete normally.
74
90
  * - protocol claimed by 2+ agents AND ≥1 storyboard step that needs it
75
- * lacks `step.agent` → `RoutingError` (conflict)
91
+ * lacks `step.agent` → `RoutingError` (conflict). Independent of
92
+ * resilient mode.
76
93
  */
77
94
  export declare function buildRoutingContext(storyboard: Storyboard, options: StoryboardRunOptions): Promise<AgentRoutingContext>;
78
95
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"agent-routing.d.ts","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/agent-routing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAc,UAAU,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAwE5F,MAAM,WAAW,mBAAmB;IAClC,iEAAiE;IACjE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjC,qEAAqE;IACrE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpC,+CAA+C;IAC/C,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3C,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,qBAAa,YAAa,SAAQ,KAAK;aAGnB,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,MAAM;gBAF5B,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM;CAK/B;AAED,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,QAAQ,EAAE,MAAM;aAChB,GAAG,EAAE,MAAM;aACX,UAAU,EAAE,MAAM;gBAHlC,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM;CAKrC;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAkD9B;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAClC,mBAAmB,CAUrB;AAwFD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,oBAAoB,EAC7B,GAAG,EAAE,mBAAmB,GACvB,MAAM,CA0CR"}
1
+ {"version":3,"file":"agent-routing.d.ts","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/agent-routing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAc,UAAU,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAwE5F,MAAM,WAAW,mBAAmB;IAClC,iEAAiE;IACjE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjC,qEAAqE;IACrE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpC,+CAA+C;IAC/C,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3C,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;;;OAOG;IACH,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAED,qBAAa,YAAa,SAAQ,KAAK;aAGnB,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,MAAM;gBAF5B,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM;CAK/B;AAED,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,QAAQ,EAAE,MAAM;aAChB,GAAG,EAAE,MAAM;aACX,UAAU,EAAE,MAAM;gBAHlC,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM;CAKrC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAmE9B;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAClC,mBAAmB,CAUrB;AAwFD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,oBAAoB,EAC7B,GAAG,EAAE,mBAAmB,GACvB,MAAM,CAkER"}
@@ -101,14 +101,23 @@ exports.DiscoveryFailure = DiscoveryFailure;
101
101
  * Discover every agent in the map in parallel and build the routing index.
102
102
  *
103
103
  * Failure modes:
104
- * - any agent's discovery fails → `DiscoveryFailure` (caller surfaces as
105
- * a hard storyboard failure, never a per-step skip)
104
+ * - default (`options.discovery_resilient !== true`): any agent's
105
+ * discovery failure throw `DiscoveryFailure` (caller surfaces as a
106
+ * hard storyboard failure, never a per-step skip). Correct for
107
+ * production multi-tenant flows where every tenant is load-bearing.
108
+ * - resilient (`options.discovery_resilient === true`, #1367): failed
109
+ * agents are excluded from `profiles` + `protocolIndex` and reported
110
+ * on `AgentRoutingContext.discoveryFailures`. Per-step routing then
111
+ * surfaces failures only for storyboards that actually need the
112
+ * broken tenant — unrelated storyboards complete normally.
106
113
  * - protocol claimed by 2+ agents AND ≥1 storyboard step that needs it
107
- * lacks `step.agent` → `RoutingError` (conflict)
114
+ * lacks `step.agent` → `RoutingError` (conflict). Independent of
115
+ * resilient mode.
108
116
  */
109
117
  async function buildRoutingContext(storyboard, options) {
110
118
  const agents = options.agents;
111
119
  const entries = Object.entries(agents);
120
+ const resilient = options.discovery_resilient === true;
112
121
  const clients = new Map();
113
122
  const agentMap = {};
114
123
  for (const [key, entry] of entries) {
@@ -118,6 +127,7 @@ async function buildRoutingContext(storyboard, options) {
118
127
  }
119
128
  // Parallel discovery — one tenant's slowness does not block another.
120
129
  const profiles = new Map();
130
+ const discoveryFailures = [];
121
131
  const discoveryResults = await Promise.all(entries.map(async ([key, entry]) => {
122
132
  const perAgentOptions = buildAgentOptions(entry, options);
123
133
  try {
@@ -138,14 +148,35 @@ async function buildRoutingContext(storyboard, options) {
138
148
  }));
139
149
  for (const r of discoveryResults) {
140
150
  if (!r.profile || r.step.passed === false) {
141
- const detail = scrubAuthSecrets(r.step.error ?? 'Discovery returned no profile.');
142
- throw new DiscoveryFailure(`Discovery failed for agent "${r.key}" (${agents[r.key].url}): ${detail}`, r.key, agents[r.key].url, detail);
151
+ // Bound the attacker-influenced upstream string. A malicious agent
152
+ // could return an arbitrarily large error body during the discovery
153
+ // probe; the unbounded string would flow into
154
+ // `StoryboardResult.discovery_failures[].error` where downstream
155
+ // dashboards / LLM contexts ingest it. 512 chars is enough for a
156
+ // human to read the failure and grep logs for more.
157
+ const rawDetail = scrubAuthSecrets(r.step.error ?? 'Discovery returned no profile.');
158
+ const detail = rawDetail.length > 512 ? `${rawDetail.slice(0, 512)} …(truncated)` : rawDetail;
159
+ // Default mode appends a signposted escape hatch so CI operators
160
+ // discover the resilient flag without grep'ing the JSDoc. Suppressed
161
+ // in resilient mode (the operator already opted in) so the hint
162
+ // doesn't appear in every per-agent failure attached to the result.
163
+ const baseMessage = `Discovery failed for agent "${r.key}" (${agents[r.key].url}): ${detail}`;
164
+ const message = resilient
165
+ ? baseMessage
166
+ : `${baseMessage}\n\nIf this is hello-cluster / exploratory CI and you want unrelated storyboards to complete despite this failure, ` +
167
+ `set \`StoryboardRunOptions.discovery_resilient: true\`. Do NOT set it in production — a topology with a broken tenant ` +
168
+ `is a hard misconfiguration there.`;
169
+ const failure = new DiscoveryFailure(message, r.key, agents[r.key].url, detail);
170
+ if (!resilient)
171
+ throw failure;
172
+ discoveryFailures.push(failure);
173
+ continue;
143
174
  }
144
175
  profiles.set(r.key, r.profile);
145
176
  }
146
177
  const protocolIndex = buildProtocolIndex(profiles);
147
178
  detectMultiClaimConflicts(storyboard, protocolIndex);
148
- return { clients, profiles, protocolIndex, agentMap };
179
+ return { clients, profiles, protocolIndex, agentMap, discoveryFailures };
149
180
  }
150
181
  /**
151
182
  * Test seam: build a routing context from pre-baked profiles instead of
@@ -163,7 +194,7 @@ function buildRoutingContextFromProfiles(storyboard, options, profiles) {
163
194
  const protocolIndex = buildProtocolIndex(profiles);
164
195
  detectMultiClaimConflicts(storyboard, protocolIndex);
165
196
  // Empty client map — callers that only test routing shouldn't dispatch.
166
- return { clients: new Map(), profiles, protocolIndex, agentMap };
197
+ return { clients: new Map(), profiles, protocolIndex, agentMap, discoveryFailures: [] };
167
198
  }
168
199
  /**
169
200
  * Reverse-index `AgentProfile.supported_protocols` so routing can pick an
@@ -256,7 +287,20 @@ function primaryProtocolFor(task) {
256
287
  */
257
288
  function resolveAgentForStep(step, options, ctx) {
258
289
  if (step.agent !== undefined) {
259
- // Already validated at runStoryboard entry; trust here.
290
+ // If the override targets an agent whose discovery failed under
291
+ // resilient mode, surface that explicitly rather than handing
292
+ // dispatch a transport client to a broken tenant (which would
293
+ // otherwise fail at the wire layer with a misleading transport
294
+ // error). Only meaningful when `discoveryFailures` is non-empty;
295
+ // under default (hard-failure) mode `buildRoutingContext` throws
296
+ // before we reach this branch.
297
+ const failed = ctx.discoveryFailures.find(f => f.agentKey === step.agent);
298
+ if (failed) {
299
+ throw new RoutingError(`Step "${step.id}" targets agent "${step.agent}" via \`step.agent\` override, ` +
300
+ `but that agent's discovery failed: ${failed.underlying} ` +
301
+ `(${failed.url}). Either remove the override, fix the agent, or ` +
302
+ `route the step to a healthy agent.`, step.task, `agent "${step.agent}" failed discovery`);
303
+ }
260
304
  return step.agent;
261
305
  }
262
306
  const protocol = primaryProtocolFor(step.task);
@@ -275,10 +319,16 @@ function resolveAgentForStep(step, options, ctx) {
275
319
  // Zero candidates — no agent in the map claims this protocol.
276
320
  if (options.default_agent)
277
321
  return options.default_agent;
322
+ // Under `discovery_resilient`, an agent that was supposed to claim
323
+ // this protocol may have been excluded by a failed probe. Suffix the
324
+ // error so the operator sees the connection without correlating logs.
325
+ const failedHint = ctx.discoveryFailures.length > 0
326
+ ? ` Discovery failed for: ${ctx.discoveryFailures.map(f => `${f.agentKey} (${f.url})`).join(', ')}.`
327
+ : '';
278
328
  throw new RoutingError(`No agent in the map claims protocol "${protocol}" required by tool ` +
279
329
  `"${step.task}" (step "${step.id}"). Available agents: ` +
280
- `${[...ctx.profiles.keys()].join(', ')}. Add an agent that supports ` +
281
- `${protocol}, or set \`default_agent\` to fall back.`, step.task, `protocol ${protocol} unclaimed`);
330
+ `${[...ctx.profiles.keys()].join(', ') || '(none — every agent failed discovery)'}.${failedHint} ` +
331
+ `Add an agent that supports ${protocol}, or set \`default_agent\` to fall back.`, step.task, `protocol ${protocol} unclaimed`);
282
332
  }
283
333
  // Tool not in TASK_FEATURE_MAP (e.g., sync_creatives, comply_test_controller,
284
334
  // get_adcp_capabilities post-discovery, future tasks).
@@ -1 +1 @@
1
- {"version":3,"file":"agent-routing.js","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/agent-routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-routing.js","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/agent-routing.ts"],"names":[],"mappings":"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"}
@@ -937,13 +937,19 @@ const NON_TERMINAL_MEDIA_BUY_STATUSES = new Set([
937
937
  * Resource families the inverse rule does NOT yet grade — the buy-side
938
938
  * reference shape for these in `media_buy.packages` isn't stable in the
939
939
  * cached schema, so we can't reliably tell which buys reference which
940
- * resources. Tracked in adcontextprotocol/adcp#2860. Listed here so the
941
- * onEnd summary can emit a runtime "partial inverse coverage" signal when
942
- * the run actually observed offline resources in one of these families —
943
- * making the deferral visible to storyboard authors and reviewers rather
944
- * than burying it in PR prose and JSDoc.
940
+ * resources. Listed here so the onEnd summary can emit a runtime
941
+ * "partial inverse coverage" signal when the run actually observed
942
+ * offline resources in one of these families — making the deferral
943
+ * visible to storyboard authors and reviewers rather than burying it in
944
+ * PR prose and JSDoc.
945
+ *
946
+ * `audience` is graded — the buy-side reference lives at
947
+ * `packages[*].targeting_overlay.audience_include[]` and is extracted in
948
+ * `readBuySnapshot`. `catalog_item` and `event_source` are deferred: a
949
+ * buy doesn't reference catalog_items or event_sources by stable id in
950
+ * the cached schema, so the runner can't traverse buy → resource.
945
951
  */
946
- const INVERSE_DEFERRED_FAMILIES = new Set(['audience', 'catalog_item', 'event_source']);
952
+ const INVERSE_DEFERRED_FAMILIES = new Set(['catalog_item', 'event_source']);
947
953
  const IMPAIRMENT_STATE_KEY = 'impairmentCoherence';
948
954
  function getImpairmentState(ctx) {
949
955
  // onStart populates the namespaced slot; the cast is safe because no other
@@ -996,20 +1002,18 @@ registerOnce('impairment.coherence', {
996
1002
  state.offlineObservationsByFamily.set(ob.resource_type, (state.offlineObservationsByFamily.get(ob.resource_type) ?? 0) + 1);
997
1003
  // Issue #1806: surface deferred inverse-rule coverage at the
998
1004
  // transition step. When a resource family the runner can't yet
999
- // reverse-traverse (`audience` / `catalog_item` / `event_source`)
1000
- // enters an offline state for the first time in this run, emit a
1005
+ // reverse-traverse (`catalog_item` / `event_source`) enters an
1006
+ // offline state for the first time in this run, emit a
1001
1007
  // `not_applicable` step-level result so reviewers see the gap in
1002
1008
  // run output instead of having to read PR prose. One emission per
1003
1009
  // (resource_type, resource_id) per run — re-syncs of an already
1004
- // offline resource don't re-fire.
1005
- if (!wasOffline &&
1006
- (ob.resource_type === 'audience' ||
1007
- ob.resource_type === 'catalog_item' ||
1008
- ob.resource_type === 'event_source')) {
1010
+ // offline resource don't re-fire. Only catalog_item and event_source
1011
+ // surface here; audience is graded via the inverse rule using refs
1012
+ // from packages[*].targeting_overlay.audience_include[].
1013
+ if (!wasOffline && (ob.resource_type === 'catalog_item' || ob.resource_type === 'event_source')) {
1009
1014
  const message = `inverse-rule coverage for ${ob.resource_type} ${ob.resource_id} ` +
1010
1015
  `(status="${ob.status}", step "${stepResult.step_id}") is deferred — ` +
1011
- `buy → resource traversal not yet implemented for this family. ` +
1012
- `Tracked in adcontextprotocol/adcp#2860.`;
1016
+ `buy → resource traversal not yet implemented for this family.`;
1013
1017
  deferredCoverageResults.push({
1014
1018
  passed: true,
1015
1019
  status: 'not_applicable',
@@ -1111,46 +1115,52 @@ registerOnce('impairment.coherence', {
1111
1115
  },
1112
1116
  });
1113
1117
  }
1114
- // Inverse check (creative only). For each creative_id the buy
1115
- // references via packages[].creative_assignments[].creative_id, if
1116
- // the runner has it in the offline set AND the buy is non-terminal
1117
- // AND the impairments[] list doesn't mention it, the seller failed
1118
- // to propagate the resource state into the buy. Audience / catalog /
1119
- // event-source inverse coverage is intentionally deferred: their
1120
- // buy-side reference shape isn't yet stable enough in the cached
1121
- // schema to extract without ambiguity. Tracked in adcp#2860.
1118
+ // Inverse check. For each resource the buy references — creatives
1119
+ // via `packages[].creative_assignments[].creative_id`, audiences via
1120
+ // `packages[].targeting_overlay.audience_include[]` if the runner
1121
+ // has it in the offline set AND the buy is non-terminal AND the
1122
+ // impairments[] list doesn't mention it, the seller failed to
1123
+ // propagate the resource state into the buy. `catalog_item` and
1124
+ // `event_source` inverse coverage is still deferred: their buy-side
1125
+ // reference shape isn't yet stable enough in the cached schema to
1126
+ // extract without ambiguity.
1122
1127
  if (isTerminal)
1123
1128
  continue;
1124
- const impairedCreativeIds = new Set(snap.impairments.filter(e => e.resource_type === 'creative').map(e => e.resource_id));
1125
- for (const creativeId of snap.referencedCreativeIds) {
1126
- const key = `creative:${creativeId}`;
1127
- const offline = state.offlineResources.get(key);
1128
- if (!offline)
1129
- continue;
1130
- if (impairedCreativeIds.has(creativeId))
1131
- continue;
1132
- const message = `media_buy ${snap.media_buy_id} (status="${snap.status ?? 'unknown'}") references creative ` +
1133
- `${creativeId} which is offline (status="${offline.status}", step "${offline.stepId}"), ` +
1134
- `but impairments[] does not list it. Spec: any offline resource referenced by a ` +
1135
- `non-terminal buy MUST appear in impairments[] (adcp#2859).`;
1136
- results.push({
1137
- passed: false,
1138
- description,
1139
- step_id: stepResult.step_id,
1140
- error: message,
1141
- hint: {
1142
- kind: 'impairment_coherence_violation',
1143
- violation: 'inverse',
1144
- message,
1145
- media_buy_id: snap.media_buy_id,
1146
- buy_step_id: snap.stepId,
1147
- resource_type: 'creative',
1148
- resource_id: creativeId,
1149
- resource_status: offline.status,
1150
- resource_step_id: offline.stepId,
1151
- impairments_count: snap.impairments.length,
1152
- },
1153
- });
1129
+ for (const [resourceType, referencedIds] of [
1130
+ ['creative', snap.referencedCreativeIds],
1131
+ ['audience', snap.referencedAudienceIds],
1132
+ ]) {
1133
+ const impairedIds = new Set(snap.impairments.filter(e => e.resource_type === resourceType).map(e => e.resource_id));
1134
+ for (const resourceId of referencedIds) {
1135
+ const key = `${resourceType}:${resourceId}`;
1136
+ const offline = state.offlineResources.get(key);
1137
+ if (!offline)
1138
+ continue;
1139
+ if (impairedIds.has(resourceId))
1140
+ continue;
1141
+ const message = `media_buy ${snap.media_buy_id} (status="${snap.status ?? 'unknown'}") references ${resourceType} ` +
1142
+ `${resourceId} which is offline (status="${offline.status}", step "${offline.stepId}"), ` +
1143
+ `but impairments[] does not list it. Spec: any offline resource referenced by a ` +
1144
+ `non-terminal buy MUST appear in impairments[] (adcp#2859).`;
1145
+ results.push({
1146
+ passed: false,
1147
+ description,
1148
+ step_id: stepResult.step_id,
1149
+ error: message,
1150
+ hint: {
1151
+ kind: 'impairment_coherence_violation',
1152
+ violation: 'inverse',
1153
+ message,
1154
+ media_buy_id: snap.media_buy_id,
1155
+ buy_step_id: snap.stepId,
1156
+ resource_type: resourceType,
1157
+ resource_id: resourceId,
1158
+ resource_status: offline.status,
1159
+ resource_step_id: offline.stepId,
1160
+ impairments_count: snap.impairments.length,
1161
+ },
1162
+ });
1163
+ }
1154
1164
  }
1155
1165
  }
1156
1166
  if (results.length === 0) {
@@ -1191,8 +1201,8 @@ registerOnce('impairment.coherence', {
1191
1201
  results.push({
1192
1202
  passed: true,
1193
1203
  description: 'inverse coverage gap: offline resources observed for families the runner does not yet grade ' +
1194
- 'on the inverse rule (creative is graded; audience/catalog_item/event_source are forward-only). ' +
1195
- `Observed: ${summary}. Tracked in adcontextprotocol/adcp#2860.`,
1204
+ 'on the inverse rule (creative and audience are graded; catalog_item and event_source are forward-only). ' +
1205
+ `Observed: ${summary}.`,
1196
1206
  observation_count: 0,
1197
1207
  });
1198
1208
  }
@@ -1272,9 +1282,15 @@ function extractImpairmentObservations(task, body) {
1272
1282
  * Extract every media-buy snapshot present on a step response. Walks
1273
1283
  * `create_media_buy` / `update_media_buy` (top-level buy object) and
1274
1284
  * `get_media_buys` (`media_buys[]` array). Returns each snapshot's
1275
- * impairments[], health, status, and the set of `creative_id`s the buy
1276
- * references through `packages[].creative_assignments[]` used by the
1277
- * inverse rule.
1285
+ * impairments[], health, status, the set of `creative_id`s the buy
1286
+ * references through `packages[].creative_assignments[]`, and the set of
1287
+ * `audience_id`s referenced through `packages[].targeting_overlay.audience_include[]`.
1288
+ * Both reference sets feed the inverse rule. `audience_exclude` is not
1289
+ * collected as a hard dependency for the inverse rule: an offline exclude
1290
+ * does not prevent the buy from serving, so it isn't a "buy can't function"
1291
+ * signal. Note this is a serviceability framing, not a safety framing —
1292
+ * an offline exclude can still silently break the suppression promise,
1293
+ * which is a separate (forward-looking) signal class.
1278
1294
  */
1279
1295
  function extractBuySnapshots(task, body, stepId) {
1280
1296
  const out = [];
@@ -1311,9 +1327,18 @@ function readBuySnapshot(record, stepId) {
1311
1327
  impairments.push({ resource_type, resource_id });
1312
1328
  }
1313
1329
  const referencedCreativeIds = new Set();
1330
+ const referencedAudienceIds = new Set();
1314
1331
  for (const pkg of asArray(record.packages)) {
1315
1332
  if (!isObject(pkg))
1316
1333
  continue;
1334
+ // Creative refs appear in two shapes on the wire:
1335
+ // - `core/package.json` → `creative_assignments[].creative_id` (used on
1336
+ // create_media_buy request/response, update_media_buy)
1337
+ // - `get-media-buys-response.json` → `creative_approvals[].creative_id`
1338
+ // (the snapshot shape — `creative_approvals` carries per-assignment
1339
+ // approval_status alongside the id)
1340
+ // Walk both — sellers conformant to either schema surface the references
1341
+ // we need for the inverse rule.
1317
1342
  for (const ca of asArray(pkg.creative_assignments)) {
1318
1343
  if (!isObject(ca))
1319
1344
  continue;
@@ -1321,7 +1346,34 @@ function readBuySnapshot(record, stepId) {
1321
1346
  if (cid)
1322
1347
  referencedCreativeIds.add(cid);
1323
1348
  }
1349
+ for (const ca of asArray(pkg.creative_approvals)) {
1350
+ if (!isObject(ca))
1351
+ continue;
1352
+ const cid = asString(ca.creative_id);
1353
+ if (cid)
1354
+ referencedCreativeIds.add(cid);
1355
+ }
1356
+ // Audience refs: only `audience_include` counts as a hard dependency
1357
+ // for the inverse rule. `audience_exclude` is omitted on serviceability
1358
+ // grounds — a suspended exclude doesn't keep the buy from serving — not
1359
+ // on safety grounds. An offline exclude can still silently break the
1360
+ // suppression promise; that's a separate signal class (see extractBuySnapshots).
1361
+ const overlay = isObject(pkg.targeting_overlay) ? pkg.targeting_overlay : undefined;
1362
+ if (overlay) {
1363
+ for (const aid of asArray(overlay.audience_include)) {
1364
+ if (typeof aid === 'string' && aid.length > 0)
1365
+ referencedAudienceIds.add(aid);
1366
+ }
1367
+ }
1324
1368
  }
1325
- return { media_buy_id, status, health, impairments, referencedCreativeIds, stepId };
1369
+ return {
1370
+ media_buy_id,
1371
+ status,
1372
+ health,
1373
+ impairments,
1374
+ referencedCreativeIds,
1375
+ referencedAudienceIds,
1376
+ stepId,
1377
+ };
1326
1378
  }
1327
1379
  //# sourceMappingURL=default-invariants.js.map