@substrat-run/control-plane-api 0.160.0 → 0.162.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.
- package/dist/api.d.ts +8 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +142 -9
- package/dist/api.js.map +1 -1
- package/dist/cf-observability.d.ts.map +1 -1
- package/dist/cf-observability.js +31 -8
- package/dist/cf-observability.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/observability.d.ts +6 -2
- package/dist/observability.d.ts.map +1 -1
- package/dist/observability.js +1 -1
- package/dist/observability.js.map +1 -1
- package/dist/platform-drain.d.ts +26 -2
- package/dist/platform-drain.d.ts.map +1 -1
- package/dist/platform-drain.js +203 -88
- package/dist/platform-drain.js.map +1 -1
- package/dist/platform-wire.d.ts +2 -1
- package/dist/platform-wire.d.ts.map +1 -1
- package/dist/platform-wire.js +23 -3
- package/dist/platform-wire.js.map +1 -1
- package/dist/scope-copy-cleanup.js +1 -1
- package/dist/scope-copy-cleanup.js.map +1 -1
- package/dist/vertical-client.d.ts +58 -2
- package/dist/vertical-client.d.ts.map +1 -1
- package/dist/vertical-client.js +224 -21
- package/dist/vertical-client.js.map +1 -1
- package/dist/wire-readiness.d.ts +149 -0
- package/dist/wire-readiness.d.ts.map +1 -0
- package/dist/wire-readiness.js +250 -0
- package/dist/wire-readiness.js.map +1 -0
- package/dist/wire-settings.d.ts +77 -0
- package/dist/wire-settings.d.ts.map +1 -0
- package/dist/wire-settings.js +155 -0
- package/dist/wire-settings.js.map +1 -0
- package/dist/wire-upload.d.ts +26 -0
- package/dist/wire-upload.d.ts.map +1 -1
- package/dist/wire-upload.js +29 -2
- package/dist/wire-upload.js.map +1 -1
- package/dist/wire-walk.d.ts +161 -0
- package/dist/wire-walk.d.ts.map +1 -0
- package/dist/wire-walk.js +345 -0
- package/dist/wire-walk.js.map +1 -0
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAG9E,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,mFAAmF;IACnF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;0FACsF;IACtF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;sGAEkG;IAClG,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0FAA0F;IAC1F,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0FAA0F;IAC1F,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,uFAAuF;IACvF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;oFACgF;IAChF,GAAG,EAAE,OAAO,CAAC;CACd;AAED,yGAAyG;AACzG,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB;;;;;;;OAOG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,kGAAkG;AAClG,eAAO,MAAM,sBAAsB,+BAA+B,CAAC;AAEnE;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,YAAa,OAAO,KAAG,OAAsD,CAAC;AAE3G;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,MAAM,EAAE,QAAQ,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAChD,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,0FAA0F;IAC1F,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAC1B;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,WAAW,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,YAAI,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAE/H;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,YAAI,SAAS,EAAE,UAAU,EAAE,UAAU,CAAU,CAAC;AAC7E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,cAAc,CAE3D;AACD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;AAE/E;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED,0FAA0F;AAC1F,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,gDAAgD;AAChD,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACrD,6BAA6B;IAC7B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,4DAA4D;AAC5D,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qFAAqF;IACrF,IAAI,EAAE,cAAc,CAAC;IACrB,0FAA0F;IAC1F,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,8EAA8E;IAC9E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;OAIG;IACH,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,+FAA+F;IAC/F,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,oGAAoG;AACpG,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,uGAAuG;IACvG,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,YAAY,EAAE,CA6B1D;AAED,iDAAiD;AACjD,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAElE,0DAA0D;AAC1D,MAAM,WAAW,UAAU;IACzB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACxC,mDAAmD;IACnD,QAAQ,EAAE,eAAe,CAAC;IAC1B,wEAAwE;IACxE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7C;AAED,gCAAgC;AAChC,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,oFAAoF;IACpF,SAAS,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,iDAAiD;AACjD,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,MAAM,WAAW,mBAAmB;IAClC,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,yFAAyF;IACzF,aAAa,CAAC,CAAC,KAAK,EAAE;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,oFAAoF;QACpF,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;QACvD,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,OAAO,0BAA0B,EAAE,iBAAiB,CAAC,CAAC;IAClE,sFAAsF;IACtF,cAAc,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEvE;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,CAAC,KAAK,EAAE;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB;;;;;;WAMG;QACH,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAEhC;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CAAC,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAErJ;;;;;;;;OAQG;IACH,oBAAoB,CAAC,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAEvJ;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,UAAU,CAAC,CAAC,KAAK,EAAE;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;;WAIG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,qFAAqF;QACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,6EAA6E;QAC7E,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAE9B;;;;;;;;;OASG;IACH,iBAAiB,CAAC,CAAC,KAAK,EAAE;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iFAAiF;QACjF,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,kEAAkE;QAClE,OAAO,EAAE,MAAM,CAAC;QAChB,iEAAiE;QACjE,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC1B,oFAAoF;QACpF,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC9B,6EAA6E;QAC7E,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KAC9B,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzB;;;;;;;;OAQG;IACH,mBAAmB,CAAC,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAE9F;;;OAGG;IACH,mBAAmB,CAAC,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,IAAI,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAEhH;;;OAGG;IACH,cAAc,CAAC,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAEzF;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,KAAK,EAAE;QAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExB;;;;;;;OAOG;IACH,cAAc,CAAC,CAAC,KAAK,EAAE;QACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAElC;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;CACvG"}
|
|
1
|
+
{"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAG9E,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,mFAAmF;IACnF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;0FACsF;IACtF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;sGAEkG;IAClG,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0FAA0F;IAC1F,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0FAA0F;IAC1F,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,uFAAuF;IACvF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;oFACgF;IAChF,GAAG,EAAE,OAAO,CAAC;CACd;AAED,yGAAyG;AACzG,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB;;;;;;;OAOG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,uIAAuI;AACvI,eAAO,MAAM,sBAAsB,+BAA+B,CAAC;AAEnE;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,YAAa,OAAO,KAAG,OAAsD,CAAC;AAE3G;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,MAAM,EAAE,QAAQ,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAChD,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,0FAA0F;IAC1F,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAC1B;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,WAAW,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,YAAI,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAE/H;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,YAAI,SAAS,EAAE,UAAU,EAAE,UAAU,CAAU,CAAC;AAC7E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,uDAAuD;AACvD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,cAAc,CAE3D;AACD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;AAE/E;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED,0FAA0F;AAC1F,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,gDAAgD;AAChD,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACrD,6BAA6B;IAC7B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,4DAA4D;AAC5D,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qFAAqF;IACrF,IAAI,EAAE,cAAc,CAAC;IACrB,0FAA0F;IAC1F,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,8EAA8E;IAC9E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;OAIG;IACH,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,+FAA+F;IAC/F,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,oGAAoG;AACpG,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,uGAAuG;IACvG,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,YAAY,EAAE,CA6B1D;AAED,iDAAiD;AACjD,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAElE,0DAA0D;AAC1D,MAAM,WAAW,UAAU;IACzB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACxC,mDAAmD;IACnD,QAAQ,EAAE,eAAe,CAAC;IAC1B,wEAAwE;IACxE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7C;AAED,gCAAgC;AAChC,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,oFAAoF;IACpF,SAAS,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,iDAAiD;AACjD,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,MAAM,WAAW,mBAAmB;IAClC,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,yFAAyF;IACzF,aAAa,CAAC,CAAC,KAAK,EAAE;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,oFAAoF;QACpF,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;QACvD,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,OAAO,0BAA0B,EAAE,iBAAiB,CAAC,CAAC;IAClE,sFAAsF;IACtF,cAAc,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEvE;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,CAAC,KAAK,EAAE;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB;;;;;;WAMG;QACH,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAEhC;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CAAC,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAErJ;;;;;;;;OAQG;IACH,oBAAoB,CAAC,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAEvJ;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,UAAU,CAAC,CAAC,KAAK,EAAE;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;;WAIG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,qFAAqF;QACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,6EAA6E;QAC7E,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExB;;;;;;;;;OASG;IACH,iBAAiB,CAAC,CAAC,KAAK,EAAE;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iFAAiF;QACjF,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,kEAAkE;QAClE,OAAO,EAAE,MAAM,CAAC;QAChB,iEAAiE;QACjE,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC1B,oFAAoF;QACpF,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC9B,6EAA6E;QAC7E,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KAC9B,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzB;;;;;;;;OAQG;IACH,mBAAmB,CAAC,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAE9F;;;OAGG;IACH,mBAAmB,CAAC,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,IAAI,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAEhH;;;OAGG;IACH,cAAc,CAAC,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAEzF;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,KAAK,EAAE;QAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExB;;;;;;;OAOG;IACH,cAAc,CAAC,CAAC,KAAK,EAAE;QACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAElC;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;CACvG"}
|
package/dist/observability.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** On `GET /observability/logs`, present (`1`) when the read behind its body was `incomplete`. */
|
|
1
|
+
/** On `GET /observability/logs` and `GET /observability/tenant-logs`, present (`1`) when the read behind its body was `incomplete`. */
|
|
2
2
|
export const LOGS_INCOMPLETE_HEADER = 'x-substrat-logs-incomplete';
|
|
3
3
|
/**
|
|
4
4
|
* Whether a response's headers say the list behind its body is `incomplete` (#2520): the header
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observability.js","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"AA0FA,
|
|
1
|
+
{"version":3,"file":"observability.js","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"AA0FA,uIAAuI;AACvI,MAAM,CAAC,MAAM,sBAAsB,GAAG,4BAA4B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAgB,EAAW,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,KAAK,GAAG,CAAC;AA8H3G;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAE1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AA+BxC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAE/H;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAU,CAAC;AAG7E,uDAAuD;AACvD,MAAM,UAAU,gBAAgB,CAAC,CAAU;IACzC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC;AAC/E,CAAC;AAiGD,4DAA4D;AAC5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AA4DpC;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;YAAE,SAAS;QAClD,MAAM,CAAC,GAAG,CAA4B,CAAC;QACvC,IACE,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ;YAC7B,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ;YAC7B,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,QAAQ;YAC/B,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;YAC1D,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,QAAQ;YAChC,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ;YACnC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,EAC7B,CAAC;YACD,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;YACnB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAkB;YACpC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC;YACrB,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC;YAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAgCD,iDAAiD;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC"}
|
package/dist/platform-drain.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type ConnectorHandler, type OpsFailureInput, type ScopeHost } from '@substrat-run/kernel';
|
|
2
|
-
import { type PlatformActorId, type PlatformRequest, type PlatformRequestFailure, type PlatformOutcomeEvent, type Scope, type ScopeId, type ScopeLifecycle, type TenantId } from '@substrat-run/contracts';
|
|
1
|
+
import { type ConnectorHandler, type OpsFailureFilter, type OpsFailureInput, type ScopeHost } from '@substrat-run/kernel';
|
|
2
|
+
import { type OpsFailureEntry, type PlatformActorId, type PlatformRequest, type PlatformRequestFailure, type PlatformOutcomeEvent, type Scope, type ScopeId, type ScopeLifecycle, type TenantId } from '@substrat-run/contracts';
|
|
3
3
|
import { type VerticalClient } from './vertical-client.js';
|
|
4
4
|
import type { PatchScriptBindingsFn } from './wfp.js';
|
|
5
5
|
/**
|
|
@@ -61,6 +61,14 @@ export interface PlatformRequestOutcome {
|
|
|
61
61
|
* NULL, which reads as "nobody classified this" rather than a guess nobody made.
|
|
62
62
|
*/
|
|
63
63
|
failure?: PlatformRequestFailure;
|
|
64
|
+
/**
|
|
65
|
+
* #2556: `error` came from beyond the drained scope's own deployment or tenant (another
|
|
66
|
+
* vertical's deployment, a tenant the scope does not belong to), so it is not the scope's to
|
|
67
|
+
* read. This is the sentence the settle journals in its place: what failed, and at which stage.
|
|
68
|
+
* The drain adds the platform's reference, and `error` goes to staff's row under that reference.
|
|
69
|
+
* The journaled attribution keeps its origin and code, not a permission key read from the text.
|
|
70
|
+
*/
|
|
71
|
+
withheld?: string;
|
|
64
72
|
}
|
|
65
73
|
/** Executes one intent kind with platform authority. Registered per `kind` (mirrors connector sweepers). */
|
|
66
74
|
export type PlatformRequestHandler = (ctx: PlatformRequestContext, request: PlatformRequest) => Promise<PlatformRequestOutcome>;
|
|
@@ -107,6 +115,15 @@ export interface PlatformDrainOptions {
|
|
|
107
115
|
* mask the settle it is recording. The drain adds the `actor` upstream.
|
|
108
116
|
*/
|
|
109
117
|
recordFailure?: (entry: Omit<OpsFailureInput, 'actor'>) => void;
|
|
118
|
+
/**
|
|
119
|
+
* #2556: the failure ledger, read once by the reference the intent's previous settle journaled, to
|
|
120
|
+
* confirm staff's row for the same withheld sentence stands (`WITHHELD_REFILE_MS`), so that
|
|
121
|
+
* reference is journaled again and no second row is filed. Without it, every such pass files its
|
|
122
|
+
* own row.
|
|
123
|
+
*/
|
|
124
|
+
listFailures?: (filter: OpsFailureFilter) => Promise<OpsFailureEntry[]>;
|
|
125
|
+
/** The clock `listFailures`' window is read against; injectable for a test. */
|
|
126
|
+
now?: () => Date;
|
|
110
127
|
/** Test override of {@link MAX_PLATFORM_REQUEST_ATTEMPTS}. */
|
|
111
128
|
maxAttempts?: number;
|
|
112
129
|
/**
|
|
@@ -118,6 +135,13 @@ export interface PlatformDrainOptions {
|
|
|
118
135
|
/** #2431: filled with the id of each intent this drain dispatches, for a later drain's `skip`. */
|
|
119
136
|
attempted?: string[];
|
|
120
137
|
}
|
|
138
|
+
/**
|
|
139
|
+
* How long staff's row for a withheld transient failure stands for the same intent (#2556). Every
|
|
140
|
+
* pass of a stuck intent journals the same reference meanwhile, and files nothing: the staff digest
|
|
141
|
+
* mails every row since its watermark, so a row per pass would repeat one stuck intent every quarter
|
|
142
|
+
* hour. A condition that lasts is filed again after this, under a new reference.
|
|
143
|
+
*/
|
|
144
|
+
export declare const WITHHELD_REFILE_MS: number;
|
|
121
145
|
/**
|
|
122
146
|
* Drain one scope's pending platform intents: list them from the vertical, dispatch each to the
|
|
123
147
|
* handler for its `kind`, and settle the outcome back in the vertical. An unknown kind settles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-drain.d.ts","sourceRoot":"","sources":["../src/platform-drain.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"platform-drain.d.ts","sourceRoot":"","sources":["../src/platform-drain.ts"],"names":[],"mappings":"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"}
|
package/dist/platform-drain.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { INERT_SCOPE_REASON, isPrimaryScope, lifecycleRefusal, platformIntentFailureMessage, resolveScopeRecord, ulid, withheldOpsFailure, } from '@substrat-run/kernel';
|
|
1
|
+
import { INERT_SCOPE_REASON, isPrimaryScope, lifecycleRefusal, platformIntentFailureMessage, resolveScopeRecord, ulid, withheldOpsFailure, withheldStaffFailure, } from '@substrat-run/kernel';
|
|
2
2
|
import { isTerminalDispatchFailure } from './provider-error.js';
|
|
3
|
-
import { principalId as principalIdSchema, scopeId as scopeIdSchema, tenantId as tenantIdSchema, provisionSiblingPayload, archiveScopePayload, callsDeclares, peerInvokePayload, undeclaredCallMessage, provisionTenantPayload, setEntitlementsPayload, connectorDispatchPayload, CONNECTOR_DISPATCH_KIND_PREFIX, modelUsageLine, MODEL_USAGE_KIND, SWEEP_RUNS_KIND, isUndecodablePlatformRequest, platformRequestId, createTenantInput, errorCodeOf, sweepRunsPayload, } from '@substrat-run/contracts';
|
|
3
|
+
import { principalId as principalIdSchema, scopeId as scopeIdSchema, tenantId as tenantIdSchema, provisionSiblingPayload, archiveScopePayload, callsDeclares, peerInvokePayload, undeclaredCallMessage, provisionTenantPayload, setEntitlementsPayload, connectorDispatchPayload, CONNECTOR_DISPATCH_KIND_PREFIX, modelUsageLine, MODEL_USAGE_KIND, SWEEP_RUNS_KIND, isUndecodablePlatformRequest, platformRequestId, createTenantInput, errorCodeOf, sweepRunsPayload, neutralUpstreamMarkers, withoutUpstreamReference, } from '@substrat-run/contracts';
|
|
4
4
|
import { ControlPlaneError } from '@substrat-run/control-plane-client';
|
|
5
5
|
import { attributeFailure, terminalFailureNote } from './failure-attribution.js';
|
|
6
6
|
import { connectionGrantsForScope } from './vertical-client.js';
|
|
@@ -38,7 +38,7 @@ export const MAX_PLATFORM_REQUEST_ATTEMPTS = 100;
|
|
|
38
38
|
* deployment among them, so the scope's tenant's row says only what became of the intent, under
|
|
39
39
|
* the platform's reference, and the error is staff's row under the same one (`withheldOpsFailure`).
|
|
40
40
|
*/
|
|
41
|
-
function intentFailure(ctx, kind, stage, outcome, raw, answered) {
|
|
41
|
+
function intentFailure(ctx, kind, stage, outcome, raw, answered, reference) {
|
|
42
42
|
return withheldOpsFailure({
|
|
43
43
|
operation: `intent.${kind}`,
|
|
44
44
|
stage,
|
|
@@ -49,7 +49,74 @@ function intentFailure(ctx, kind, stage, outcome, raw, answered) {
|
|
|
49
49
|
// The attribution the settle journals (#841) rides onto the fleet row too (#1233).
|
|
50
50
|
origin: outcome.failure?.origin ?? null,
|
|
51
51
|
code: outcome.failure?.code ?? null,
|
|
52
|
-
}, raw, answered);
|
|
52
|
+
}, raw, answered, reference);
|
|
53
|
+
}
|
|
54
|
+
/** The stage of staff's row for a withheld failure on a pass that left the intent pending (#2556). */
|
|
55
|
+
const WITHHELD_TRANSIENT_STAGE = 'transient';
|
|
56
|
+
/**
|
|
57
|
+
* How long staff's row for a withheld transient failure stands for the same intent (#2556). Every
|
|
58
|
+
* pass of a stuck intent journals the same reference meanwhile, and files nothing: the staff digest
|
|
59
|
+
* mails every row since its watermark, so a row per pass would repeat one stuck intent every quarter
|
|
60
|
+
* hour. A condition that lasts is filed again after this, under a new reference.
|
|
61
|
+
*/
|
|
62
|
+
export const WITHHELD_REFILE_MS = 24 * 60 * 60_000;
|
|
63
|
+
/** The stage of staff's note that a withheld transient reference could not be looked up (#2556). */
|
|
64
|
+
const WITHHELD_LOOKUP_STAGE = 'transient-lookup';
|
|
65
|
+
/** How a journaled withheld sentence ends: the platform's reference staff's row is filed under. */
|
|
66
|
+
const JOURNALED_REFERENCE = /^(.*) \(reference ([0-9A-HJKMNP-TV-Z]{26})\)$/s;
|
|
67
|
+
/**
|
|
68
|
+
* How staff's row for a withheld transient failure opens: the intent, and the sentence its scope was
|
|
69
|
+
* told. A sentence may quote the payload (a peer call's operation, a tenant slug), so the opening is
|
|
70
|
+
* stored after any upstream marker, which is read from the raw text alone, and neutralised as the
|
|
71
|
+
* row stores it (`withUpstreamReference`), which is also the form the next pass compares.
|
|
72
|
+
*/
|
|
73
|
+
const withheldTransientOpening = (id, withheld) => neutralUpstreamMarkers(platformIntentFailureMessage(id, `pending (${withheld}): `));
|
|
74
|
+
/**
|
|
75
|
+
* The reference a withheld failure on a pass that left the intent pending is journaled under
|
|
76
|
+
* (#2556), keyed on the intent AND the sentence: a handler that gets one step further on a later
|
|
77
|
+
* pass is a different failure, with its own row. The previous settle journaled `<sentence>
|
|
78
|
+
* (reference R)` in the intent's `lastError`; when that sentence is this pass's, R is reused with
|
|
79
|
+
* nothing filed, once one ledger read by R confirms staff's row for this intent and sentence stands
|
|
80
|
+
* in the drained scope within `WITHHELD_REFILE_MS`. Otherwise a new reference is minted and staff's
|
|
81
|
+
* row filed under it, with no tenant, in the drained scope, so a subject erasure of the intent
|
|
82
|
+
* reaches it; the row opens with the sentence (`withheldTransientOpening`), which is what the next
|
|
83
|
+
* pass matches, never the raw text, whose upstream handles vary per call. A ledger that cannot be
|
|
84
|
+
* read files anew, since a second row is the safer error than a reference nothing resolves, and
|
|
85
|
+
* leaves staff a note saying the earlier reference went unconfirmed.
|
|
86
|
+
*/
|
|
87
|
+
async function withheldTransientReference(ctx, kind, id, previousError, withheld, outcome, opts) {
|
|
88
|
+
const operation = `intent.${kind}`;
|
|
89
|
+
const opening = withheldTransientOpening(id, withheld);
|
|
90
|
+
const entry = {
|
|
91
|
+
operation,
|
|
92
|
+
scopeId: ctx.scopeId,
|
|
93
|
+
vertical: ctx.vertical,
|
|
94
|
+
version: ctx.versionId ?? null,
|
|
95
|
+
origin: outcome.failure?.origin ?? null,
|
|
96
|
+
code: outcome.failure?.code ?? null,
|
|
97
|
+
};
|
|
98
|
+
const journaled = JOURNALED_REFERENCE.exec(previousError ?? '');
|
|
99
|
+
const previous = journaled?.[1] === withheld ? journaled[2] : null;
|
|
100
|
+
if (previous !== null && opts?.listFailures) {
|
|
101
|
+
const since = new Date((opts.now?.() ?? new Date()).getTime() - WITHHELD_REFILE_MS).toISOString();
|
|
102
|
+
try {
|
|
103
|
+
const rows = await opts.listFailures({ scopeId: ctx.scopeId, operation, reference: previous, since, limit: 10 });
|
|
104
|
+
const filed = rows.some((r) => r.tenantId === null && r.stage === WITHHELD_TRANSIENT_STAGE && withoutUpstreamReference(r.message).startsWith(opening));
|
|
105
|
+
if (filed)
|
|
106
|
+
return previous;
|
|
107
|
+
}
|
|
108
|
+
catch (e) {
|
|
109
|
+
// Filed anew below; the note is staff's, and names only the reference and the ledger's own error.
|
|
110
|
+
opts.recordFailure?.(withheldStaffFailure({ ...entry, stage: WITHHELD_LOOKUP_STAGE }, platformIntentFailureMessage(id, `pending: reference ${previous} could not be confirmed in the failure ledger, so this pass files anew: ${e instanceof Error ? e.message : String(e)}`), ulid()));
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
const reference = ulid();
|
|
114
|
+
opts?.recordFailure?.(withheldStaffFailure({ ...entry, stage: WITHHELD_TRANSIENT_STAGE }, outcome.error ?? 'unknown', reference, opening));
|
|
115
|
+
return reference;
|
|
116
|
+
}
|
|
117
|
+
/** What a withheld failure's settle journals: its origin and code, never a permission read from the text. */
|
|
118
|
+
function withheldAttribution(failure) {
|
|
119
|
+
return failure ? { ...failure, permission: null } : null;
|
|
53
120
|
}
|
|
54
121
|
/**
|
|
55
122
|
* Drain one scope's pending platform intents: list them from the vertical, dispatch each to the
|
|
@@ -137,18 +204,30 @@ export async function drainScopePlatformRequests(client, ctx, handlers, opts) {
|
|
|
137
204
|
// lands an ops-failure row (#559) so a six-day retry loop is an operator's headline,
|
|
138
205
|
// not a spine-table archaeology find.
|
|
139
206
|
const maxAttempts = opts?.maxAttempts ?? MAX_PLATFORM_REQUEST_ATTEMPTS;
|
|
207
|
+
// #2556: a withheld error is journaled as its sentence under the platform's reference, the
|
|
208
|
+
// reference staff's row is filed under (terminal and give-up: the pair below; a pass that
|
|
209
|
+
// leaves the intent pending: `withheldTransientReference`).
|
|
210
|
+
const withheld = outcome.withheld;
|
|
211
|
+
let journaled = outcome.error ?? null;
|
|
140
212
|
if (outcome.status === 'pending' && attempts + 1 >= maxAttempts) {
|
|
213
|
+
const gaveUp = `gave up after ${attempts + 1} drain attempts`;
|
|
141
214
|
outcome = {
|
|
142
215
|
status: 'failed',
|
|
143
216
|
result: outcome.result,
|
|
144
|
-
error:
|
|
217
|
+
error: `${gaveUp} — last error: ${outcome.error ?? 'unknown'}`,
|
|
145
218
|
// The give-up inherits the last pass's attribution rather than inventing one: what
|
|
146
219
|
// refused a hundred times is what refused on the last attempt.
|
|
147
220
|
failure: outcome.failure,
|
|
221
|
+
...(withheld === undefined ? {} : { withheld }),
|
|
148
222
|
};
|
|
149
|
-
|
|
223
|
+
const reference = ulid();
|
|
224
|
+
journaled = withheld === undefined ? outcome.error : `${gaveUp} — last error: ${withheld} (reference ${reference})`;
|
|
225
|
+
opts?.recordFailure?.(intentFailure(ctx, kind, 'attempt-ceiling', outcome, platformIntentFailureMessage(id, outcome.error ?? 'unknown'), (r) => platformIntentFailureMessage(id, `${gaveUp} (reference ${r})`), reference));
|
|
150
226
|
}
|
|
151
227
|
else if (outcome.status === 'failed' && !inert) {
|
|
228
|
+
const reference = ulid();
|
|
229
|
+
if (withheld !== undefined)
|
|
230
|
+
journaled = `${withheld} (reference ${reference})`;
|
|
152
231
|
// An inert settle (#2005) is expected, not an operator's headline; the settle below
|
|
153
232
|
// still journals its reason and attribution.
|
|
154
233
|
//
|
|
@@ -156,7 +235,11 @@ export async function drainScopePlatformRequests(client, ctx, handlers, opts) {
|
|
|
156
235
|
// over, nobody is coming back to it, and until now its only trace was a `last_error`
|
|
157
236
|
// column in the vertical's own DO. An unknown kind, a refused payload, a provider's 4xx:
|
|
158
237
|
// each is an operator's headline for the same reason a give-up is.
|
|
159
|
-
opts?.recordFailure?.(intentFailure(ctx, kind, 'terminal', outcome, platformIntentFailureMessage(id, `failed: ${outcome.error ?? 'unknown'}`), (
|
|
238
|
+
opts?.recordFailure?.(intentFailure(ctx, kind, 'terminal', outcome, platformIntentFailureMessage(id, `failed: ${outcome.error ?? 'unknown'}`), (r) => platformIntentFailureMessage(id, `failed (reference ${r})`), reference));
|
|
239
|
+
}
|
|
240
|
+
else if (outcome.status === 'pending' && withheld !== undefined) {
|
|
241
|
+
const previousError = isUndecodablePlatformRequest(request) ? null : request.lastError;
|
|
242
|
+
journaled = `${withheld} (reference ${await withheldTransientReference(ctx, kind, id, previousError, withheld, outcome, opts)})`;
|
|
160
243
|
}
|
|
161
244
|
// No special case for a refused row: every row that reaches here has an id the settle
|
|
162
245
|
// route accepts (#1637 left the rest out above), so its settle is refused for the same
|
|
@@ -167,8 +250,8 @@ export async function drainScopePlatformRequests(client, ctx, handlers, opts) {
|
|
|
167
250
|
await client.settlePlatformRequest(ctx.tenantId, ctx.scopeId, id, {
|
|
168
251
|
status,
|
|
169
252
|
result: outcome.result,
|
|
170
|
-
lastError:
|
|
171
|
-
failure: outcome.failure ?? null,
|
|
253
|
+
lastError: journaled,
|
|
254
|
+
failure: withheld === undefined ? (outcome.failure ?? null) : withheldAttribution(outcome.failure),
|
|
172
255
|
...(outcome.event ? { event: outcome.event } : {}),
|
|
173
256
|
});
|
|
174
257
|
report[status]++;
|
|
@@ -313,6 +396,20 @@ export function provisionSiblingHandler(deps) {
|
|
|
313
396
|
}
|
|
314
397
|
/** The attribution of a request refused for its own input: ours, and the input's to fix. */
|
|
315
398
|
const INPUT_REFUSED = { origin: 'platform', code: 'validation_failed', permission: null };
|
|
399
|
+
/**
|
|
400
|
+
* #2556: a throw whose text is not the drained scope's to read (`PlatformRequestOutcome.withheld`),
|
|
401
|
+
* kept pending as the drain's own catch would keep it, attributed as that catch would, and
|
|
402
|
+
* journaled as `sentence`.
|
|
403
|
+
*/
|
|
404
|
+
function withheldThrow(e, sentence, result) {
|
|
405
|
+
return {
|
|
406
|
+
status: 'pending',
|
|
407
|
+
...(result === undefined ? {} : { result }),
|
|
408
|
+
error: e instanceof Error ? e.message : String(e),
|
|
409
|
+
failure: attributeFailure(e),
|
|
410
|
+
withheld: sentence,
|
|
411
|
+
};
|
|
412
|
+
}
|
|
316
413
|
/** A payload that does not parse, settled `failed` at once: it never will parse. */
|
|
317
414
|
function malformedPayload(kind, error) {
|
|
318
415
|
const fields = error.issues.map((i) => `${i.path.join('.')}: ${i.message}`).join('; ');
|
|
@@ -467,17 +564,25 @@ export function peerInvokeHandler(deps) {
|
|
|
467
564
|
if (!client) {
|
|
468
565
|
return { status: 'failed', error: `no deployment serves '${payload.vertical}' in this tenant` };
|
|
469
566
|
}
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
567
|
+
let result;
|
|
568
|
+
try {
|
|
569
|
+
result = await client.verticalInvoke({
|
|
570
|
+
// `tenantSlug`: the directory's, for the tenant this intent was drained in (#2252), so a
|
|
571
|
+
// pinned caller meets a bare `peers` entry at the door (`peerCallerAt`).
|
|
572
|
+
caller: { vertical: ctx.vertical, scope: ctx.scopeId, tenantSlug: tenant.slug },
|
|
573
|
+
tenantId: ctx.tenantId,
|
|
574
|
+
scopeId: resolution.instance.scopeId,
|
|
575
|
+
operation: payload.operation,
|
|
576
|
+
...(payload.input === undefined ? {} : { input: payload.input }),
|
|
577
|
+
// The intent id: a redelivery reaches the recorded response instead of running twice.
|
|
578
|
+
idempotencyKey: request.id,
|
|
579
|
+
});
|
|
580
|
+
}
|
|
581
|
+
catch (e) {
|
|
582
|
+
// #2556: the target's answer is its deployment's text, possibly another builder's code, so
|
|
583
|
+
// the caller's journal says only which call did not complete. Transient, as it always was.
|
|
584
|
+
return withheldThrow(e, `the call to '${payload.vertical}' (operation '${payload.operation}') did not complete at its deployment`);
|
|
585
|
+
}
|
|
481
586
|
return { status: 'done', result: { invoked: payload.operation, result: result ?? null } };
|
|
482
587
|
};
|
|
483
588
|
}
|
|
@@ -582,45 +687,54 @@ export function provisionTenantHandler(deps) {
|
|
|
582
687
|
const message = e instanceof Error ? e.message : String(e);
|
|
583
688
|
// Both adapters fail closed on a slug owned by a DIFFERENT tenant id with this
|
|
584
689
|
// phrasing — a retry can never converge, so settle terminal instead of pending.
|
|
690
|
+
// The text names only the payload's own slug (#2556), so it is journaled as it is.
|
|
585
691
|
if (message.includes('slugs are unique'))
|
|
586
692
|
return { status: 'failed', error: message };
|
|
587
693
|
throw e;
|
|
588
694
|
}
|
|
589
|
-
//
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
// Past the first write, so a throw keeps its old classification (pending, retried): the
|
|
594
|
-
// tenant exists, and a later pass is what finishes it.
|
|
595
|
-
await host.provisionScope(actor, scopeInput);
|
|
596
|
-
const created = await adoptServingForProvisioning(host, actor, await admin.getScopeRecord(actor, tenantId, scopeId));
|
|
597
|
-
const vertical = created ? await deps.resolveVerticalForScope(created) : undefined;
|
|
598
|
-
if (!vertical) {
|
|
599
|
-
return {
|
|
600
|
-
status: 'failed',
|
|
601
|
-
result: { tenantId, scopeId },
|
|
602
|
-
error: `no deployment is bound for vertical '${payload.instance.vertical}'`,
|
|
603
|
-
};
|
|
604
|
-
}
|
|
605
|
-
const entitlements = await admin.listEntitlements(actor, tenantId);
|
|
606
|
-
// #301: a NEW tenant's first install is exactly the minting path — the stores are
|
|
607
|
-
// per (tenant, target vertical), keyed by the PAYLOAD's vertical, not the manager's.
|
|
608
|
-
const tenantStores = await collectTenantStoreHandles({
|
|
609
|
-
host,
|
|
610
|
-
actor,
|
|
611
|
-
slug: payload.instance.vertical,
|
|
612
|
-
tenantId,
|
|
613
|
-
patchBindings: deps.patchScriptBindings,
|
|
614
|
-
});
|
|
615
|
-
// #473: same blob-store minting on the manager-driven provision-tenant path.
|
|
616
|
-
await collectBlobStoreHandles({
|
|
617
|
-
host,
|
|
618
|
-
actor,
|
|
619
|
-
slug: payload.instance.vertical,
|
|
620
|
-
tenantId,
|
|
621
|
-
patchBindings: deps.patchScriptBindings,
|
|
622
|
-
});
|
|
695
|
+
// #2556: from here every write and call concerns the tenant being provisioned and the
|
|
696
|
+
// payload vertical's deployment, neither of them the manager's, so a throw's text is withheld
|
|
697
|
+
// from the manager's journal: it learns the step, and staff read the text under the reference.
|
|
698
|
+
let step = 'granting its entitlements';
|
|
623
699
|
try {
|
|
700
|
+
// Granted BEFORE provisionInstance so the #310 projection carries them on day one.
|
|
701
|
+
for (const grant of payload.entitlements) {
|
|
702
|
+
await admin.grantEntitlement(actor, tenantId, grant.key, { plan: grant.plan });
|
|
703
|
+
}
|
|
704
|
+
// Past the first write, so a throw keeps its old classification (pending, retried): the
|
|
705
|
+
// tenant exists, and a later pass is what finishes it.
|
|
706
|
+
step = 'provisioning its scope';
|
|
707
|
+
await host.provisionScope(actor, scopeInput);
|
|
708
|
+
const created = await adoptServingForProvisioning(host, actor, await admin.getScopeRecord(actor, tenantId, scopeId));
|
|
709
|
+
const vertical = created ? await deps.resolveVerticalForScope(created) : undefined;
|
|
710
|
+
if (!vertical) {
|
|
711
|
+
return {
|
|
712
|
+
status: 'failed',
|
|
713
|
+
result: { tenantId, scopeId },
|
|
714
|
+
error: `no deployment is bound for vertical '${payload.instance.vertical}'`,
|
|
715
|
+
};
|
|
716
|
+
}
|
|
717
|
+
step = 'collecting its stores';
|
|
718
|
+
const entitlements = await admin.listEntitlements(actor, tenantId);
|
|
719
|
+
// #301: a NEW tenant's first install is exactly the minting path — the stores are
|
|
720
|
+
// per (tenant, target vertical), keyed by the PAYLOAD's vertical, not the manager's.
|
|
721
|
+
const tenantStores = await collectTenantStoreHandles({
|
|
722
|
+
host,
|
|
723
|
+
actor,
|
|
724
|
+
slug: payload.instance.vertical,
|
|
725
|
+
tenantId,
|
|
726
|
+
patchBindings: deps.patchScriptBindings,
|
|
727
|
+
});
|
|
728
|
+
// #473: same blob-store minting on the manager-driven provision-tenant path.
|
|
729
|
+
await collectBlobStoreHandles({
|
|
730
|
+
host,
|
|
731
|
+
actor,
|
|
732
|
+
slug: payload.instance.vertical,
|
|
733
|
+
tenantId,
|
|
734
|
+
patchBindings: deps.patchScriptBindings,
|
|
735
|
+
});
|
|
736
|
+
// A refusal from the vertical is transient (`pending`), as is anything else thrown here.
|
|
737
|
+
step = `provisioning its '${payload.instance.vertical}' instance`;
|
|
624
738
|
// #1674: a re-drain reuses the proposed ids, so this can re-seat a wiped, switched-off scope.
|
|
625
739
|
await reconcileThenReassert(admin, actor, { tenantId, scopeId }, (carry) => vertical.provisionInstance({
|
|
626
740
|
tenantId,
|
|
@@ -633,6 +747,7 @@ export function provisionTenantHandler(deps) {
|
|
|
633
747
|
...carry,
|
|
634
748
|
}));
|
|
635
749
|
if (payload.config && Object.keys(payload.config).length) {
|
|
750
|
+
step = `configuring its '${payload.instance.vertical}' instance`;
|
|
636
751
|
try {
|
|
637
752
|
await vertical.configureInstance({
|
|
638
753
|
tenantId,
|
|
@@ -647,14 +762,12 @@ export function provisionTenantHandler(deps) {
|
|
|
647
762
|
throw e;
|
|
648
763
|
}
|
|
649
764
|
}
|
|
765
|
+
step = 'activating its scope';
|
|
766
|
+
await admin.activateScope(actor, tenantId, scopeId);
|
|
650
767
|
}
|
|
651
768
|
catch (e) {
|
|
652
|
-
|
|
653
|
-
return { status: 'pending', result: { tenantId, scopeId }, error: e.message };
|
|
654
|
-
}
|
|
655
|
-
throw e;
|
|
769
|
+
return withheldThrow(e, `provisioning tenant '${payload.tenant.slug}' did not complete while ${step}`, { tenantId, scopeId });
|
|
656
770
|
}
|
|
657
|
-
await admin.activateScope(actor, tenantId, scopeId);
|
|
658
771
|
return { status: 'done', result: { tenantId, scopeId } };
|
|
659
772
|
};
|
|
660
773
|
}
|
|
@@ -727,34 +840,38 @@ export function setEntitlementsHandler(deps) {
|
|
|
727
840
|
if (!scope) {
|
|
728
841
|
return { status: 'failed', error: `unknown scope for tenant: (${tenantId}, ${scopeId})` };
|
|
729
842
|
}
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
843
|
+
// #2556: the writes and the reconcile concern the managed tenant and its scope's deployment,
|
|
844
|
+
// neither of them the manager's, so a throw's text is withheld from the manager's journal.
|
|
845
|
+
let step = 'reconciling its entitlements';
|
|
846
|
+
try {
|
|
847
|
+
const target = new Map(payload.entitlements.map((e) => [e.key, e.plan]));
|
|
848
|
+
for (const key of admitted.declared) {
|
|
849
|
+
if (target.has(key)) {
|
|
850
|
+
await admin.grantEntitlement(actor, tenantId, key, { plan: target.get(key) });
|
|
851
|
+
}
|
|
852
|
+
else {
|
|
853
|
+
await admin.revokeEntitlement(actor, tenantId, key);
|
|
854
|
+
}
|
|
734
855
|
}
|
|
735
|
-
|
|
736
|
-
|
|
856
|
+
const vertical = await deps.resolveVerticalForScope(scope);
|
|
857
|
+
if (!vertical) {
|
|
858
|
+
// Named by the payload's own ids, not by what the managed tenant's scope runs (#2556).
|
|
859
|
+
return { status: 'failed', error: `no deployment is bound for scope ${scopeId} of tenant ${tenantId}` };
|
|
737
860
|
}
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
// drain-side reconcile must not leave a scope unable to seal to a connector it could
|
|
753
|
-
// seal to a moment ago.
|
|
754
|
-
const connectionKeys = scope.vertical
|
|
755
|
-
? await admin.connectionSealingKeys(tenantId, scope.vertical)
|
|
756
|
-
: [];
|
|
757
|
-
try {
|
|
861
|
+
step = 'gathering what its instance is reconciled with';
|
|
862
|
+
const entitlements = await admin.listEntitlements(actor, tenantId);
|
|
863
|
+
const identityLinks = (await admin.listIdentityLinks(actor, tenantId)).map(({ tenantId: _tenantId, ...link }) => link);
|
|
864
|
+
// #592: every reconcile re-delivers the tenant's live connection grants, whoever
|
|
865
|
+
// triggered it — this drain-side reconcile must not silently wipe or omit them.
|
|
866
|
+
const connectionGrants = connectionGrantsForScope(await admin.listConnectionGrants(actor, tenantId), scope.vertical, scopeId);
|
|
867
|
+
// #687: sealing keys ride every reconcile too, for the same reason grants do — a
|
|
868
|
+
// drain-side reconcile must not leave a scope unable to seal to a connector it could
|
|
869
|
+
// seal to a moment ago.
|
|
870
|
+
const connectionKeys = scope.vertical
|
|
871
|
+
? await admin.connectionSealingKeys(tenantId, scope.vertical)
|
|
872
|
+
: [];
|
|
873
|
+
// A refusal from the vertical is transient (`pending`), as is anything else thrown here.
|
|
874
|
+
step = 'reconciling its instance';
|
|
758
875
|
await reconcileThenReassert(admin, actor, { tenantId, scopeId }, (carry) => vertical.reconcileInstance({
|
|
759
876
|
tenantId,
|
|
760
877
|
scopeId,
|
|
@@ -766,9 +883,7 @@ export function setEntitlementsHandler(deps) {
|
|
|
766
883
|
}));
|
|
767
884
|
}
|
|
768
885
|
catch (e) {
|
|
769
|
-
|
|
770
|
-
return { status: 'pending', error: e.message };
|
|
771
|
-
throw e;
|
|
886
|
+
return withheldThrow(e, `setting the entitlements of tenant ${tenantId} did not complete while ${step}`);
|
|
772
887
|
}
|
|
773
888
|
return { status: 'done', result: { tenantId, plan: payload.plan } };
|
|
774
889
|
};
|