instar 1.3.1211 → 1.3.1213
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/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +12 -0
- package/dist/commands/server.js.map +1 -1
- package/dist/core/BetweenWindowAdmissionGate.d.ts +2 -0
- package/dist/core/BetweenWindowAdmissionGate.d.ts.map +1 -1
- package/dist/core/BetweenWindowAdmissionGate.js +2 -0
- package/dist/core/BetweenWindowAdmissionGate.js.map +1 -1
- package/dist/core/PeerEndpointRecorder.d.ts +30 -0
- package/dist/core/PeerEndpointRecorder.d.ts.map +1 -1
- package/dist/core/PeerEndpointRecorder.js +53 -3
- package/dist/core/PeerEndpointRecorder.js.map +1 -1
- package/dist/core/WindowLifecycleObligationLedger.d.ts +382 -0
- package/dist/core/WindowLifecycleObligationLedger.d.ts.map +1 -0
- package/dist/core/WindowLifecycleObligationLedger.js +734 -0
- package/dist/core/WindowLifecycleObligationLedger.js.map +1 -0
- package/dist/core/WriteDomainRegistry.d.ts.map +1 -1
- package/dist/core/WriteDomainRegistry.js +7 -0
- package/dist/core/WriteDomainRegistry.js.map +1 -1
- package/dist/data/standards-guard-index.json +1 -1
- package/dist/data/standards-guard-index.meta.json +2 -2
- package/dist/data/standards-registry.meta.json +1 -1
- package/dist/monitoring/SessionWatchdog.d.ts +29 -0
- package/dist/monitoring/SessionWatchdog.d.ts.map +1 -1
- package/dist/monitoring/SessionWatchdog.js +52 -0
- package/dist/monitoring/SessionWatchdog.js.map +1 -1
- package/dist/server/AgentServer.d.ts +5 -0
- package/dist/server/AgentServer.d.ts.map +1 -1
- package/dist/server/AgentServer.js +22 -0
- package/dist/server/AgentServer.js.map +1 -1
- package/dist/server/CapabilityIndex.d.ts.map +1 -1
- package/dist/server/CapabilityIndex.js +25 -0
- package/dist/server/CapabilityIndex.js.map +1 -1
- package/dist/server/routes.d.ts +5 -0
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +806 -1
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +47 -47
- package/src/data/standards-guard-index.json +1 -1
- package/src/data/standards-guard-index.meta.json +2 -2
- package/src/data/standards-registry.meta.json +1 -1
- package/upgrades/1.3.1212.md +28 -0
- package/upgrades/1.3.1213.md +45 -0
- package/upgrades/side-effects/mesh-endpoint-degradation-retention.md +106 -0
- package/upgrades/side-effects/window-lifecycle-obligation-ledger.md +94 -0
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export declare const BETWEEN_WINDOW_OBSERVER_TOPIC_ID = 43003;
|
|
2
|
+
/** Versioned native contract consumed by the Echo W28 lifecycle adapter. */
|
|
3
|
+
export declare const BETWEEN_WINDOW_ADMISSION_CONTRACT_VERSION: "76bc93c3d+";
|
|
2
4
|
export interface CorpusSide {
|
|
3
5
|
observer: string;
|
|
4
6
|
source: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BetweenWindowAdmissionGate.d.ts","sourceRoot":"","sources":["../../src/core/BetweenWindowAdmissionGate.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gCAAgC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"BetweenWindowAdmissionGate.d.ts","sourceRoot":"","sources":["../../src/core/BetweenWindowAdmissionGate.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gCAAgC,QAAQ,CAAC;AACtD,4EAA4E;AAC5E,eAAO,MAAM,yCAAyC,EAAG,YAAqB,CAAC;AAE/E,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,UAAU,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EACA,uBAAuB,GACvB,kBAAkB,GAClB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,GACvB,0BAA0B,GAC1B,4BAA4B,GAC5B,sCAAsC,GACtC,oCAAoC,GACpC,uBAAuB,GACvB,oCAAoC,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,OAAO,EAAE;QACP,sBAAsB,EAAE,MAAM,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,gBAAgB,EAAE,cAAc,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,qCAAqC;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AA8CD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG;IAC/E,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB,CAgDA;AAqSD,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,qCAAqC,GAAG,eAAe,CAmE9G;AAED,wBAAgB,qCAAqC,IAAI,cAAc,EAAE,CAMxE"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import fs from 'node:fs';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
export const BETWEEN_WINDOW_OBSERVER_TOPIC_ID = 43003;
|
|
4
|
+
/** Versioned native contract consumed by the Echo W28 lifecycle adapter. */
|
|
5
|
+
export const BETWEEN_WINDOW_ADMISSION_CONTRACT_VERSION = '76bc93c3d+';
|
|
4
6
|
const REQUIRED_MISMATCHES = [
|
|
5
7
|
{
|
|
6
8
|
scope: 'pathway',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BetweenWindowAdmissionGate.js","sourceRoot":"","sources":["../../src/core/BetweenWindowAdmissionGate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,gCAAgC,GAAG,KAAK,CAAC;AAyDtD,MAAM,mBAAmB,GAAqB;IAC5C;QACE,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;QAC5F,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;KACrF;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;QAC5F,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;KACrF;CACF,CAAC;AACF,MAAM,kBAAkB,GAAG,CAAC,YAAY,EAAE,YAAY,CAAU,CAAC;AAEjE,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,OAAO,CAAC,KAA8B;IAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC;IAC5C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED,SAAS,WAAW,CAAC,KAA8B;IACjD,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC;IAChD,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED,SAAS,GAAG,CAAC,OAAe,EAAE,SAAiB;IAC7C,OAAO,GAAG,OAAO,IAAI,SAAS,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAgB,EAAE,YAAqB;IAK5E,MAAM,SAAS,GAAG,YAAY;QAC5B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QAC5B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;IAElD,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE,SAAS;YACf,QAAQ;YACR,KAAK,EAAE;gBACL,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,2CAA2C,SAAS,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aACrH;SACF,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAC3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,SAAS;YAChC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;gBAAE,SAAS;YACrC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;gBACpC,OAAO;gBACP,SAAS;gBACT,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;aACzD,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,QAAQ;gBACR,KAAK,EAAE;oBACL,IAAI,EAAE,kBAAkB;oBACxB,IAAI,EAAE,cAAc,GAAG,GAAG,CAAC,EAAE;oBAC7B,OAAO,EAAE,0DAA0D,GAAG,GAAG,CAAC,EAAE;iBAC7E;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,YAAY,CACnB,MAAwB,EACxB,GAA4B,EAC5B,KAAa,EACb,SAAiB;IAEjB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC1G,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,GAAG,SAAS,cAAc;SACpC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAwB,EACxB,KAAiC,EACjC,OAAe,EACf,SAAiB,EACjB,SAAiB,EACjB,OAA+B,sBAAsB;IAErD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI;YACJ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,WAAW,SAAS,yBAAyB,OAAO,wBAAwB;SACtF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAAwB,EACxB,KAAiC,EACjC,GAAY,EACZ,cAAsB,EACtB,SAAiB,EACjB,OAA+B,sBAAsB;IAErD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAS,+BAA+B,EAAE,CAAC,CAAC;QACtH,OAAO;IACT,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACzB,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC;YACjD,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,YAAY,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC,CAAC;gBACjJ,OAAO;YACT,CAAC;YACD,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YACrF,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,2EAA2E,EAAE,CAAC,CAAC;IACpK,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,0BAA0B,CACjC,MAAwB,EACxB,UAAmB,EACnB,KAAiC,EACjC,GAAW;IAEX,MAAM,IAAI,GAAG,uBAAuB,GAAG,EAAE,CAAC;IAC1C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,gCAAgC,CAAC;IACxE,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,OAAO,KAAK,gCAAgC,EAAE,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,GAAG,IAAI,UAAU,EAAE,OAAO,EAAE,4CAA4C,gCAAgC,EAAE,EAAE,CAAC,CAAC;IAClK,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,YAAY,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC,CAAC;IAC7H,CAAC;SAAM,CAAC;QACN,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;IAC/E,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IACxG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,0BAA0B;YAChC,IAAI,EAAE,GAAG,IAAI,WAAW;YACxB,OAAO,EAAE,yDAAyD;SACnE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;IACtF,IAAI,YAAY,KAAK,cAAc,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,GAAG,IAAI,eAAe;YAC5B,OAAO,EAAE,6DAA6D;SACvE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,IAAI,kBAAkB,CAAC,CAAC;IACpG,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,iBAAiB,CAAC,CAAC;IACjG,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,WAAW,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACrF,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,GAAG,IAAI,qBAAqB,CAAC,CAAC;IAC7G,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,iBAAiB,CAAC,CAAC;IACjG,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE,GAAG,IAAI,yBAAyB,CAAC,CAAC;IACnH,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACrF,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACrF,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,mBAAmB,CAAC,CAAC;IAEvG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACvH,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,uBAAuB,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;IACvI,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,GAAG,IAAI,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1I,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,sBAAsB,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC,CAAC;IACpI,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IAC7H,MAAM,iBAAiB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,IAAI,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClG,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,WAAW,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC,CAAC;IACvH,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1G,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,aAAa,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC,CAAC;IACxI,CAAC;IACD,IAAI,SAAS,IAAI,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACvF,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,2FAA2F;SACrG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,GAAG,IAAI,aAAa;YAC1B,OAAO,EAAE,+CAA+C;SACzD,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;IACzH,CAAC;IAED,IAAI,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,gBAAgB,CAAC,wBAAwB,CAAC;QAC5D,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,kDAAkD,EAAE,OAAO,EAAE,0CAA0C,EAAE,CAAC,CAAC;QACvK,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,oCAAoC,EAAE,OAAO,EAAE,iDAAiD,EAAE,CAAC,CAAC;QAChK,CAAC;QACD,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACzI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,CAAC;YAC/E,IAAI,GAAG,CAAC,WAAW,KAAK,OAAO,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,oCAAoC;oBAC1C,IAAI,EAAE,GAAG,IAAI,gCAAgC,MAAM,EAAE;oBACrD,OAAO,EAAE,2CAA2C;iBACrD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,wBAAwB,CAAC,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,gCAAgC,EAAE,GAAG,IAAI,mBAAmB,CAAC,CAAC;IAExH,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,qBAAqB,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAChI,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnC,wBAAwB,CACtB,MAAM,EACN,KAAK,EACL,UAAU,CAAC,gBAAgB,EAC3B,gCAAgC,EAChC,GAAG,IAAI,8BAA8B,EACrC,sCAAsC,CACvC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAwB,EACxB,IAAa,EACb,KAAiC;IAEjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,kEAAkE,EAAE,CAAC,CAAC;QAChK,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,8BAA8B,GAAG,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,CAAC;YAC7G,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,IAAI,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,+CAA+C,EAAE,CAAC,CAAC;QACvH,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,YAAY,EAAE,uBAAuB,CAAC,CAAC;QACxG,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC;QACpD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACpF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,UAAU,EAAE,OAAO,EAAE,wDAAwD,EAAE,CAAC,CAAC;QAC7I,CAAC;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,8BAA8B,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,QAAQ,yCAAyC,EAAE,CAAC,CAAC;QAChK,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAwB;IACjD,OAAO;QACL,QAAQ,CAAC,KAAK;QACd,QAAQ,CAAC,SAAS,CAAC,MAAM;QACzB,QAAQ,CAAC,SAAS,CAAC,QAAQ;QAC3B,QAAQ,CAAC,SAAS,CAAC,OAAO;QAC1B,QAAQ,CAAC,SAAS,CAAC,MAAM;QACzB,QAAQ,CAAC,SAAS,CAAC,QAAQ;QAC3B,QAAQ,CAAC,SAAS,CAAC,OAAO;KAC3B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACzG,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC;IACzB,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC;IACzB,IACE,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC5B,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC;QAC1B,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC7B,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,CAAC;QAC5B,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC5B,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC;QAC1B,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC7B,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,CAAC,EAC5B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;QACnG,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;KACpG,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B,EAAE,MAAwB;IAC5E,MAAM,GAAG,GAAG,GAAG,CAAC,qBAAqB,IAAI,GAAG,CAAC,gBAAgB,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACzB,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,oCAAoC;gBAC1C,IAAI,EAAE,yBAAyB,GAAG,EAAE;gBACpC,OAAO,EAAE,0EAA0E;aACpF,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,OAA8C;IAC3F,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,IAAI,KAAK,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yCAAyC,EAAE,CAAC,CAAC;QACpH,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM;YACN,OAAO,EAAE;gBACP,sBAAsB,EAAE,gCAAgC;gBACxD,mBAAmB,EAAE,CAAC;gBACtB,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;aACnC;YACD,gBAAgB,EAAE,EAAE;SACrB,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,oDAAoD,EAAE,CAAC,CAAC;IAC7I,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;YAC3C,MAAM,QAAQ,GAAG,0BAA0B,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAClF,IAAI,QAAQ;gBAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,gBAAgB,IAAI,kBAAkB,EAAE,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,0BAA0B;oBAChC,IAAI,EAAE,uBAAuB,gBAAgB,EAAE;oBAC/C,OAAO,EAAE,4BAA4B,gBAAgB,cAAc;iBACpE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,0BAA0B,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE1F,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAClE,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,oCAAoC;gBAC1C,IAAI,EAAE,yBAAyB,QAAQ,CAAC,KAAK,EAAE;gBAC/C,OAAO,EAAE,0CAA0C,QAAQ,CAAC,KAAK,EAAE;aACpE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC7B,MAAM;QACN,OAAO,EAAE;YACP,sBAAsB,EAAE,gCAAgC;YACxD,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACxF,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAChI,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;SACnC;QACD,gBAAgB,EAAE,kBAAkB;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC;IACnD,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE;QAC7B,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
1
|
+
{"version":3,"file":"BetweenWindowAdmissionGate.js","sourceRoot":"","sources":["../../src/core/BetweenWindowAdmissionGate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,gCAAgC,GAAG,KAAK,CAAC;AACtD,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yCAAyC,GAAG,YAAqB,CAAC;AAyD/E,MAAM,mBAAmB,GAAqB;IAC5C;QACE,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;QAC5F,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;KACrF;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;QAC5F,SAAS,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;KACrF;CACF,CAAC;AACF,MAAM,kBAAkB,GAAG,CAAC,YAAY,EAAE,YAAY,CAAU,CAAC;AAEjE,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,OAAO,CAAC,KAA8B;IAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC;IAC5C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED,SAAS,WAAW,CAAC,KAA8B;IACjD,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC;IAChD,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED,SAAS,GAAG,CAAC,OAAe,EAAE,SAAiB;IAC7C,OAAO,GAAG,OAAO,IAAI,SAAS,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAgB,EAAE,YAAqB;IAK5E,MAAM,SAAS,GAAG,YAAY;QAC5B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QAC5B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;IAElD,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE,SAAS;YACf,QAAQ;YACR,KAAK,EAAE;gBACL,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,2CAA2C,SAAS,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aACrH;SACF,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAC3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,SAAS;YAChC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;gBAAE,SAAS;YACrC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;gBACpC,OAAO;gBACP,SAAS;gBACT,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;aACzD,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,QAAQ;gBACR,KAAK,EAAE;oBACL,IAAI,EAAE,kBAAkB;oBACxB,IAAI,EAAE,cAAc,GAAG,GAAG,CAAC,EAAE;oBAC7B,OAAO,EAAE,0DAA0D,GAAG,GAAG,CAAC,EAAE;iBAC7E;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,YAAY,CACnB,MAAwB,EACxB,GAA4B,EAC5B,KAAa,EACb,SAAiB;IAEjB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC1G,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,GAAG,SAAS,cAAc;SACpC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAwB,EACxB,KAAiC,EACjC,OAAe,EACf,SAAiB,EACjB,SAAiB,EACjB,OAA+B,sBAAsB;IAErD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI;YACJ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,WAAW,SAAS,yBAAyB,OAAO,wBAAwB;SACtF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAAwB,EACxB,KAAiC,EACjC,GAAY,EACZ,cAAsB,EACtB,SAAiB,EACjB,OAA+B,sBAAsB;IAErD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAS,+BAA+B,EAAE,CAAC,CAAC;QACtH,OAAO;IACT,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACzB,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC;YACjD,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,YAAY,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC,CAAC;gBACjJ,OAAO;YACT,CAAC;YACD,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YACrF,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,2EAA2E,EAAE,CAAC,CAAC;IACpK,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,0BAA0B,CACjC,MAAwB,EACxB,UAAmB,EACnB,KAAiC,EACjC,GAAW;IAEX,MAAM,IAAI,GAAG,uBAAuB,GAAG,EAAE,CAAC;IAC1C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,gCAAgC,CAAC;IACxE,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,OAAO,KAAK,gCAAgC,EAAE,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,GAAG,IAAI,UAAU,EAAE,OAAO,EAAE,4CAA4C,gCAAgC,EAAE,EAAE,CAAC,CAAC;IAClK,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,YAAY,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC,CAAC;IAC7H,CAAC;SAAM,CAAC;QACN,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,YAAY,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;IAC/E,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IACxG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,0BAA0B;YAChC,IAAI,EAAE,GAAG,IAAI,WAAW;YACxB,OAAO,EAAE,yDAAyD;SACnE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;IACtF,IAAI,YAAY,KAAK,cAAc,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,GAAG,IAAI,eAAe;YAC5B,OAAO,EAAE,6DAA6D;SACvE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,IAAI,kBAAkB,CAAC,CAAC;IACpG,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,iBAAiB,CAAC,CAAC;IACjG,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,WAAW,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACrF,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,GAAG,IAAI,qBAAqB,CAAC,CAAC;IAC7G,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,iBAAiB,CAAC,CAAC;IACjG,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE,GAAG,IAAI,yBAAyB,CAAC,CAAC;IACnH,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACrF,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IACrF,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,IAAI,mBAAmB,CAAC,CAAC;IAEvG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACvH,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,uBAAuB,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;IACvI,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,GAAG,IAAI,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1I,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,sBAAsB,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC,CAAC;IACpI,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IAC7H,MAAM,iBAAiB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,IAAI,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClG,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,WAAW,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC,CAAC;IACvH,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1G,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,aAAa,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC,CAAC;IACxI,CAAC;IACD,IAAI,SAAS,IAAI,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACvF,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,2FAA2F;SACrG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,GAAG,IAAI,aAAa;YAC1B,OAAO,EAAE,+CAA+C;SACzD,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,SAAS,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;IACzH,CAAC;IAED,IAAI,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,gBAAgB,CAAC,wBAAwB,CAAC;QAC5D,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,kDAAkD,EAAE,OAAO,EAAE,0CAA0C,EAAE,CAAC,CAAC;QACvK,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,oCAAoC,EAAE,OAAO,EAAE,iDAAiD,EAAE,CAAC,CAAC;QAChK,CAAC;QACD,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACzI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,CAAC;YAC/E,IAAI,GAAG,CAAC,WAAW,KAAK,OAAO,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,oCAAoC;oBAC1C,IAAI,EAAE,GAAG,IAAI,gCAAgC,MAAM,EAAE;oBACrD,OAAO,EAAE,2CAA2C;iBACrD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,wBAAwB,CAAC,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,gCAAgC,EAAE,GAAG,IAAI,mBAAmB,CAAC,CAAC;IAExH,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,qBAAqB,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAChI,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnC,wBAAwB,CACtB,MAAM,EACN,KAAK,EACL,UAAU,CAAC,gBAAgB,EAC3B,gCAAgC,EAChC,GAAG,IAAI,8BAA8B,EACrC,sCAAsC,CACvC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAwB,EACxB,IAAa,EACb,KAAiC;IAEjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,kEAAkE,EAAE,CAAC,CAAC;QAChK,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,8BAA8B,GAAG,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,CAAC;YAC7G,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,IAAI,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,+CAA+C,EAAE,CAAC,CAAC;QACvH,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,YAAY,EAAE,uBAAuB,CAAC,CAAC;QACxG,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC;QACpD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACpF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG,IAAI,UAAU,EAAE,OAAO,EAAE,wDAAwD,EAAE,CAAC,CAAC;QAC7I,CAAC;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,8BAA8B,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,QAAQ,yCAAyC,EAAE,CAAC,CAAC;QAChK,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAwB;IACjD,OAAO;QACL,QAAQ,CAAC,KAAK;QACd,QAAQ,CAAC,SAAS,CAAC,MAAM;QACzB,QAAQ,CAAC,SAAS,CAAC,QAAQ;QAC3B,QAAQ,CAAC,SAAS,CAAC,OAAO;QAC1B,QAAQ,CAAC,SAAS,CAAC,MAAM;QACzB,QAAQ,CAAC,SAAS,CAAC,QAAQ;QAC3B,QAAQ,CAAC,SAAS,CAAC,OAAO;KAC3B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACzG,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC;IACzB,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC;IACzB,IACE,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC5B,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC;QAC1B,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC7B,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,CAAC;QAC5B,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC5B,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC;QAC1B,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC;QAC7B,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,CAAC,EAC5B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;QACnG,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;KACpG,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B,EAAE,MAAwB;IAC5E,MAAM,GAAG,GAAG,GAAG,CAAC,qBAAqB,IAAI,GAAG,CAAC,gBAAgB,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACzB,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,oCAAoC;gBAC1C,IAAI,EAAE,yBAAyB,GAAG,EAAE;gBACpC,OAAO,EAAE,0EAA0E;aACpF,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,OAA8C;IAC3F,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,IAAI,KAAK,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yCAAyC,EAAE,CAAC,CAAC;QACpH,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,MAAM;YACN,OAAO,EAAE;gBACP,sBAAsB,EAAE,gCAAgC;gBACxD,mBAAmB,EAAE,CAAC;gBACtB,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;aACnC;YACD,gBAAgB,EAAE,EAAE;SACrB,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,oDAAoD,EAAE,CAAC,CAAC;IAC7I,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;YAC3C,MAAM,QAAQ,GAAG,0BAA0B,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAClF,IAAI,QAAQ;gBAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,gBAAgB,IAAI,kBAAkB,EAAE,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,0BAA0B;oBAChC,IAAI,EAAE,uBAAuB,gBAAgB,EAAE;oBAC/C,OAAO,EAAE,4BAA4B,gBAAgB,cAAc;iBACpE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,0BAA0B,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE1F,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAClE,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,oCAAoC;gBAC1C,IAAI,EAAE,yBAAyB,QAAQ,CAAC,KAAK,EAAE;gBAC/C,OAAO,EAAE,0CAA0C,QAAQ,CAAC,KAAK,EAAE;aACpE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC7B,MAAM;QACN,OAAO,EAAE;YACP,sBAAsB,EAAE,gCAAgC;YACxD,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACxF,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAChI,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;SACnC;QACD,gBAAgB,EAAE,kBAAkB;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC;IACnD,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE;QAC7B,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -14,6 +14,16 @@
|
|
|
14
14
|
* 1. meshTransport gate — a no-op when `multiMachine.meshTransport` is off.
|
|
15
15
|
* 2. Absence is a no-op, NEVER a wipe — undefined/null/`[]`/fully-invalid leaves the
|
|
16
16
|
* peer's prior ropes intact (a silent or un-upgraded sender must not erase them).
|
|
17
|
+
* 2b. Degradation does not discard a PROVEN rope — a non-empty advertisement that
|
|
18
|
+
* OMITS a kind whose local health record says it is currently alive RETAINS that
|
|
19
|
+
* kind instead of replacing it away. Invariant 2 guarded the empty case only, so a
|
|
20
|
+
* peer that can no longer SEE its own best address (an agent inside a NAT'd VM —
|
|
21
|
+
* the 2026-08-29 WSL machine, whose only visible NIC was an unreachable virtual
|
|
22
|
+
* one) replaced a demonstrably-working tailscale rope with a dead-on-arrival lan
|
|
23
|
+
* one, and the mesh lost its only route to that machine. Evidence beats assertion:
|
|
24
|
+
* a rope carrying traffic is not dropped because an announcement forgot it. A rope
|
|
25
|
+
* the health record calls dead (or has never dialed) is still dropped, so a
|
|
26
|
+
* genuinely-retired endpoint does not linger forever.
|
|
17
27
|
* 3. Synchronous per-kind validation BEFORE storage (defense-in-depth, not authority).
|
|
18
28
|
* 4. Idempotent — skip the write (and its `lastSeen` bump + registry-dirty mark) when
|
|
19
29
|
* the normalized set is unchanged, preventing ~720 no-op rewrites/day on a stable
|
|
@@ -29,6 +39,13 @@ export interface PeerEndpointRecorderDeps {
|
|
|
29
39
|
updateMachineEndpoints: (machineId: string, endpoints: MeshEndpoint[]) => void;
|
|
30
40
|
/** Live read: false ⇒ recording is a strict no-op (the lease handling is unchanged). */
|
|
31
41
|
meshTransportEnabled: () => boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Invariant 2b evidence source: is (peer, kind) CURRENTLY alive in this machine's own
|
|
44
|
+
* rope-health record? Only a `true` retains an omitted kind — `false` (dead) and
|
|
45
|
+
* `undefined` (never dialed, no evidence) both fall through to replace semantics.
|
|
46
|
+
* Optional so a caller that wires no health source keeps the pre-2b behaviour exactly.
|
|
47
|
+
*/
|
|
48
|
+
isEndpointAlive?: (machineId: string, kind: MeshEndpoint['kind']) => boolean | undefined;
|
|
32
49
|
logger?: (msg: string) => void;
|
|
33
50
|
}
|
|
34
51
|
export declare class PeerEndpointRecorder {
|
|
@@ -45,5 +62,18 @@ export declare class PeerEndpointRecorder {
|
|
|
45
62
|
* responder). Never pass a self-asserted body field — that is the load-bearing binding.
|
|
46
63
|
*/
|
|
47
64
|
record(peerMachineId: string, raw: unknown): boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Invariant 2b — merge an omitted-but-PROVEN kind back into the advertised set.
|
|
67
|
+
*
|
|
68
|
+
* `advertised` wins for every kind it names (a peer re-advertising a kind with a NEW
|
|
69
|
+
* url is still an upgrade, and must land). A kind present in `current` but absent from
|
|
70
|
+
* `advertised` is retained ONLY when `isEndpointAlive` positively says it is alive; a
|
|
71
|
+
* dead rope, an unknown rope, and a caller with no health source all fall through to
|
|
72
|
+
* plain replace semantics.
|
|
73
|
+
*
|
|
74
|
+
* Pure over its inputs (no I/O, no throw) so the retain decision is unit-testable
|
|
75
|
+
* without a registry or a resolver.
|
|
76
|
+
*/
|
|
77
|
+
private retainProvenOmitted;
|
|
48
78
|
}
|
|
49
79
|
//# sourceMappingURL=PeerEndpointRecorder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeerEndpointRecorder.d.ts","sourceRoot":"","sources":["../../src/core/PeerEndpointRecorder.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PeerEndpointRecorder.d.ts","sourceRoot":"","sources":["../../src/core/PeerEndpointRecorder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,MAAM,WAAW,wBAAwB;IACvC,qFAAqF;IACrF,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,YAAY,EAAE,GAAG,SAAS,CAAC;IACpE,4FAA4F;IAC5F,sBAAsB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IAC/E,wFAAwF;IACxF,oBAAoB,EAAE,MAAM,OAAO,CAAC;IACpC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,OAAO,GAAG,SAAS,CAAC;IACzF,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,CAAC,CAA2B;gBAEjC,IAAI,EAAE,wBAAwB;IAI1C,OAAO,CAAC,GAAG;IAIX;;;;;;;;OAQG;IACH,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO;IAsBpD;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,mBAAmB;CA8B5B"}
|
|
@@ -14,6 +14,16 @@
|
|
|
14
14
|
* 1. meshTransport gate — a no-op when `multiMachine.meshTransport` is off.
|
|
15
15
|
* 2. Absence is a no-op, NEVER a wipe — undefined/null/`[]`/fully-invalid leaves the
|
|
16
16
|
* peer's prior ropes intact (a silent or un-upgraded sender must not erase them).
|
|
17
|
+
* 2b. Degradation does not discard a PROVEN rope — a non-empty advertisement that
|
|
18
|
+
* OMITS a kind whose local health record says it is currently alive RETAINS that
|
|
19
|
+
* kind instead of replacing it away. Invariant 2 guarded the empty case only, so a
|
|
20
|
+
* peer that can no longer SEE its own best address (an agent inside a NAT'd VM —
|
|
21
|
+
* the 2026-08-29 WSL machine, whose only visible NIC was an unreachable virtual
|
|
22
|
+
* one) replaced a demonstrably-working tailscale rope with a dead-on-arrival lan
|
|
23
|
+
* one, and the mesh lost its only route to that machine. Evidence beats assertion:
|
|
24
|
+
* a rope carrying traffic is not dropped because an announcement forgot it. A rope
|
|
25
|
+
* the health record calls dead (or has never dialed) is still dropped, so a
|
|
26
|
+
* genuinely-retired endpoint does not linger forever.
|
|
17
27
|
* 3. Synchronous per-kind validation BEFORE storage (defense-in-depth, not authority).
|
|
18
28
|
* 4. Idempotent — skip the write (and its `lastSeen` bump + registry-dirty mark) when
|
|
19
29
|
* the normalized set is unchanged, preventing ~720 no-op rewrites/day on a stable
|
|
@@ -51,10 +61,11 @@ export class PeerEndpointRecorder {
|
|
|
51
61
|
return false; // empty/fully-invalid → no-op, never a wipe
|
|
52
62
|
try {
|
|
53
63
|
const current = this.d.getPeerEndpoints(peerMachineId);
|
|
54
|
-
|
|
64
|
+
const next = this.retainProvenOmitted(peerMachineId, current, validated);
|
|
65
|
+
if (meshEndpointsEqual(current, next))
|
|
55
66
|
return false; // idempotent — skip the write
|
|
56
|
-
this.d.updateMachineEndpoints(peerMachineId,
|
|
57
|
-
this.log(`recorded ${
|
|
67
|
+
this.d.updateMachineEndpoints(peerMachineId, next);
|
|
68
|
+
this.log(`recorded ${next.length} endpoint(s) for ${peerMachineId} [${next.map((e) => e.kind).join(',')}]`);
|
|
58
69
|
return true;
|
|
59
70
|
}
|
|
60
71
|
catch (err) {
|
|
@@ -65,5 +76,44 @@ export class PeerEndpointRecorder {
|
|
|
65
76
|
return false;
|
|
66
77
|
}
|
|
67
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Invariant 2b — merge an omitted-but-PROVEN kind back into the advertised set.
|
|
81
|
+
*
|
|
82
|
+
* `advertised` wins for every kind it names (a peer re-advertising a kind with a NEW
|
|
83
|
+
* url is still an upgrade, and must land). A kind present in `current` but absent from
|
|
84
|
+
* `advertised` is retained ONLY when `isEndpointAlive` positively says it is alive; a
|
|
85
|
+
* dead rope, an unknown rope, and a caller with no health source all fall through to
|
|
86
|
+
* plain replace semantics.
|
|
87
|
+
*
|
|
88
|
+
* Pure over its inputs (no I/O, no throw) so the retain decision is unit-testable
|
|
89
|
+
* without a registry or a resolver.
|
|
90
|
+
*/
|
|
91
|
+
retainProvenOmitted(peerMachineId, current, advertised) {
|
|
92
|
+
const alive = this.d.isEndpointAlive;
|
|
93
|
+
if (!alive || !current || current.length === 0)
|
|
94
|
+
return advertised;
|
|
95
|
+
const advertisedKinds = new Set(advertised.map((e) => e.kind));
|
|
96
|
+
const retained = [];
|
|
97
|
+
for (const ep of current) {
|
|
98
|
+
if (advertisedKinds.has(ep.kind))
|
|
99
|
+
continue;
|
|
100
|
+
let verdict;
|
|
101
|
+
try {
|
|
102
|
+
verdict = alive(peerMachineId, ep.kind);
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
// @silent-fallback-ok: an unreadable health source is NO evidence, which is the
|
|
106
|
+
// same as "never dialed" — fall through to replace. Never retains on an error.
|
|
107
|
+
verdict = undefined;
|
|
108
|
+
}
|
|
109
|
+
if (verdict === true)
|
|
110
|
+
retained.push(ep);
|
|
111
|
+
}
|
|
112
|
+
if (retained.length > 0) {
|
|
113
|
+
this.log(`retained ${retained.length} proven endpoint(s) for ${peerMachineId} omitted by its advertisement `
|
|
114
|
+
+ `[${retained.map((e) => e.kind).join(',')}] — health says alive`);
|
|
115
|
+
}
|
|
116
|
+
return [...advertised, ...retained];
|
|
117
|
+
}
|
|
68
118
|
}
|
|
69
119
|
//# sourceMappingURL=PeerEndpointRecorder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PeerEndpointRecorder.js","sourceRoot":"","sources":["../../src/core/PeerEndpointRecorder.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PeerEndpointRecorder.js","sourceRoot":"","sources":["../../src/core/PeerEndpointRecorder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
export declare const WINDOW_LEDGER_AGENT: "echo";
|
|
2
|
+
export declare const WINDOW_LEDGER_SCOPE: "echo-window-lifecycle";
|
|
3
|
+
export declare const WINDOW_LEDGER_VERSION = 1;
|
|
4
|
+
export declare const NATIVE_ADMISSION_COMPATIBILITY: string;
|
|
5
|
+
export type LifecyclePhase = 'pre-start' | 'start' | 'continuous' | 'cadence' | 'mid' | 'close' | 'post-live';
|
|
6
|
+
export type ObligationStatus = 'pending' | 'satisfied' | 'failed' | 'blocked' | 'expired' | 'unknown' | 'open-unexecuted' | 'waived-for-debt' | 'waived-for-phase-transition';
|
|
7
|
+
export type ExecutorClass = 'pending-executable' | 'completed-one-shot' | 'future-phase';
|
|
8
|
+
export type EvidenceAuthority = 'native-local-store-presence' | 'content-bound-store-row' | 'live-requeried-message' | 'replicated-export' | 'verified-operator-approval' | 'runtime-registry-proof' | 'deterministic-replay';
|
|
9
|
+
export type LifecycleState = 'idle' | 'pre_start_gate' | 'start_blocked' | 'active_start' | 'active_mid_due' | 'active_mid_blocked' | 'active_mid_satisfied' | 'close_due' | 'close_blocked' | 'delivered_pending_post_live' | 'closed_clean' | 'closed_with_operator_waiver' | 'rolled_back';
|
|
10
|
+
export interface SourceSpan {
|
|
11
|
+
source: string;
|
|
12
|
+
hash: string;
|
|
13
|
+
byteStart: number;
|
|
14
|
+
byteEnd: number;
|
|
15
|
+
lineStart: number;
|
|
16
|
+
lineEnd: number;
|
|
17
|
+
}
|
|
18
|
+
export interface EvidenceRecord {
|
|
19
|
+
authority: EvidenceAuthority;
|
|
20
|
+
agentId: string;
|
|
21
|
+
scope: string;
|
|
22
|
+
windowId: string;
|
|
23
|
+
obligationId: string;
|
|
24
|
+
sourceHashes: string[];
|
|
25
|
+
producer: string;
|
|
26
|
+
timestamp: string;
|
|
27
|
+
nonce: string;
|
|
28
|
+
canonicalPayloadHash: string;
|
|
29
|
+
verifierPassed: boolean;
|
|
30
|
+
verifiedPayload?: string;
|
|
31
|
+
nativeCoordinates?: {
|
|
32
|
+
topicId?: number;
|
|
33
|
+
messageId?: number;
|
|
34
|
+
storePath?: string;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export interface ExecutorBinding {
|
|
38
|
+
class?: ExecutorClass;
|
|
39
|
+
kind: string;
|
|
40
|
+
executorId: string;
|
|
41
|
+
owner: string;
|
|
42
|
+
registryCoordinates: string;
|
|
43
|
+
enabled: boolean;
|
|
44
|
+
dryRun: boolean;
|
|
45
|
+
running?: boolean;
|
|
46
|
+
heartbeatAt?: string;
|
|
47
|
+
heartbeatMaxAgeMs?: number;
|
|
48
|
+
nextAttemptAt?: string;
|
|
49
|
+
eligibilityAt?: string;
|
|
50
|
+
triggerEnabled?: boolean;
|
|
51
|
+
durableTriggerState?: boolean;
|
|
52
|
+
deliversOutput?: boolean;
|
|
53
|
+
sinkReachable?: boolean;
|
|
54
|
+
suppressionActive?: boolean;
|
|
55
|
+
needsClientDriver?: boolean;
|
|
56
|
+
driverPresent?: boolean;
|
|
57
|
+
driverMatches?: boolean;
|
|
58
|
+
}
|
|
59
|
+
export interface Obligation {
|
|
60
|
+
id: string;
|
|
61
|
+
agentId: string;
|
|
62
|
+
scope: string;
|
|
63
|
+
windowId: string;
|
|
64
|
+
sourceSpans: SourceSpan[];
|
|
65
|
+
statement: string;
|
|
66
|
+
phase: LifecyclePhase;
|
|
67
|
+
coreDuty: boolean;
|
|
68
|
+
waiverPolicy: 'non-waivable' | 'debt-only' | 'phase-transition';
|
|
69
|
+
responsibleRole: string;
|
|
70
|
+
deadline: {
|
|
71
|
+
dueAt: string;
|
|
72
|
+
graceMs: number;
|
|
73
|
+
};
|
|
74
|
+
predicate: {
|
|
75
|
+
recurring?: boolean;
|
|
76
|
+
requiredAuthority?: EvidenceAuthority;
|
|
77
|
+
expected?: Record<string, string>;
|
|
78
|
+
};
|
|
79
|
+
evidencePolicy: {
|
|
80
|
+
requiredAuthority: EvidenceAuthority;
|
|
81
|
+
};
|
|
82
|
+
executorBinding: ExecutorBinding;
|
|
83
|
+
failureAction: string;
|
|
84
|
+
status: ObligationStatus;
|
|
85
|
+
evidence: EvidenceRecord[];
|
|
86
|
+
eligibleAt?: string;
|
|
87
|
+
lastEvaluatedAt: string | null;
|
|
88
|
+
}
|
|
89
|
+
export interface FailureRemediation {
|
|
90
|
+
obligationId: string;
|
|
91
|
+
action: string;
|
|
92
|
+
blockPhase: boolean;
|
|
93
|
+
blockNewScope: boolean;
|
|
94
|
+
blockSend: boolean;
|
|
95
|
+
blockCompletion: boolean;
|
|
96
|
+
observerTopicId?: number;
|
|
97
|
+
debtRequired: boolean;
|
|
98
|
+
repostRequired: boolean;
|
|
99
|
+
correctionRequired: boolean;
|
|
100
|
+
scopeReviewRequired: boolean;
|
|
101
|
+
}
|
|
102
|
+
export interface SourceAstNode {
|
|
103
|
+
kind: 'heading' | 'list-item' | 'paragraph';
|
|
104
|
+
text: string;
|
|
105
|
+
span: SourceSpan;
|
|
106
|
+
operative: boolean;
|
|
107
|
+
}
|
|
108
|
+
export interface CompiledSources {
|
|
109
|
+
hashes: Record<string, string>;
|
|
110
|
+
byteLengths: Record<string, number>;
|
|
111
|
+
obligations: Obligation[];
|
|
112
|
+
operativeLines: SourceSpan[];
|
|
113
|
+
ast?: SourceAstNode[];
|
|
114
|
+
facts?: Record<string, string[]>;
|
|
115
|
+
challenges?: Record<string, string>;
|
|
116
|
+
}
|
|
117
|
+
export interface LedgerDocument {
|
|
118
|
+
version: 1;
|
|
119
|
+
lifecycleRunId: string;
|
|
120
|
+
agentId: 'echo';
|
|
121
|
+
scope: 'echo-window-lifecycle';
|
|
122
|
+
windowId: string;
|
|
123
|
+
state: LifecycleState;
|
|
124
|
+
sourceHashes: Record<string, string>;
|
|
125
|
+
compiledObligationIds: string[];
|
|
126
|
+
obligations: Obligation[];
|
|
127
|
+
usedNonces: string[];
|
|
128
|
+
nativeEvaluations: NativeEvaluationRecord[];
|
|
129
|
+
surfacedIssues?: string[];
|
|
130
|
+
requiredRemediations?: FailureRemediation[];
|
|
131
|
+
admissionEvaluatedAt?: string;
|
|
132
|
+
admission?: {
|
|
133
|
+
admitted: true;
|
|
134
|
+
evaluatedAt: string;
|
|
135
|
+
snapshotDigest: string;
|
|
136
|
+
};
|
|
137
|
+
waivers?: Waiver[];
|
|
138
|
+
rollback?: {
|
|
139
|
+
at: string;
|
|
140
|
+
reason: string;
|
|
141
|
+
operatorEvidence: EvidenceRecord;
|
|
142
|
+
operatorPrincipalId: string;
|
|
143
|
+
windowId: string;
|
|
144
|
+
scope: 'echo-window-lifecycle';
|
|
145
|
+
enforcementDisabled: true;
|
|
146
|
+
auditReadOnly: true;
|
|
147
|
+
manualRitualRequired: true;
|
|
148
|
+
reenabledAt?: string;
|
|
149
|
+
faultFixedEvidence?: string;
|
|
150
|
+
dryRunSuitePassed?: true;
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
export interface NativeEvaluationRecord {
|
|
154
|
+
agentId: 'echo';
|
|
155
|
+
scope: 'echo-window-lifecycle';
|
|
156
|
+
windowId: string;
|
|
157
|
+
inputHash: string;
|
|
158
|
+
inputBytes: string;
|
|
159
|
+
storePath: string;
|
|
160
|
+
storeHash: string;
|
|
161
|
+
storeBytesLength: number;
|
|
162
|
+
evaluatorVersion: string;
|
|
163
|
+
output: unknown;
|
|
164
|
+
evaluatedAt: string;
|
|
165
|
+
nonce: string;
|
|
166
|
+
mapping: Record<string, string>;
|
|
167
|
+
}
|
|
168
|
+
export interface RuntimeExecutorSnapshot {
|
|
169
|
+
executorId: string;
|
|
170
|
+
owner: string;
|
|
171
|
+
kind: string;
|
|
172
|
+
registryCoordinates: string;
|
|
173
|
+
enabled: boolean;
|
|
174
|
+
dryRun: boolean;
|
|
175
|
+
running: boolean;
|
|
176
|
+
heartbeatAt?: string;
|
|
177
|
+
nextAttemptAt?: string;
|
|
178
|
+
deliversOutput?: boolean;
|
|
179
|
+
sinkReachable?: boolean;
|
|
180
|
+
suppressionActive?: boolean;
|
|
181
|
+
needsClientDriver?: boolean;
|
|
182
|
+
driverPresent?: boolean;
|
|
183
|
+
driverMatches?: boolean;
|
|
184
|
+
triggerEnabled?: boolean;
|
|
185
|
+
durableTriggerState?: boolean;
|
|
186
|
+
eligibilityAt?: string;
|
|
187
|
+
assignedAt?: string;
|
|
188
|
+
completedAt?: string;
|
|
189
|
+
completionDigest?: string;
|
|
190
|
+
deliveryMessageId?: string;
|
|
191
|
+
deliveryTopicId?: number;
|
|
192
|
+
}
|
|
193
|
+
export interface WindowRuntimeRegistry {
|
|
194
|
+
resolve(executorId: string, obligationId: string): RuntimeExecutorSnapshot | null;
|
|
195
|
+
}
|
|
196
|
+
export interface LiveMessageRow {
|
|
197
|
+
messageId: number;
|
|
198
|
+
topicId: number;
|
|
199
|
+
text: string;
|
|
200
|
+
fromUser: boolean;
|
|
201
|
+
timestamp: string;
|
|
202
|
+
verifiedOperator?: boolean;
|
|
203
|
+
senderUid?: string;
|
|
204
|
+
sessionName?: string | null;
|
|
205
|
+
provenance?: string;
|
|
206
|
+
authorship?: string;
|
|
207
|
+
}
|
|
208
|
+
export interface WindowEvidenceAuthority {
|
|
209
|
+
requery(record: EvidenceRecord): EvidenceRecord | null;
|
|
210
|
+
}
|
|
211
|
+
interface DutyDefinition {
|
|
212
|
+
id: string;
|
|
213
|
+
phase: LifecyclePhase;
|
|
214
|
+
sourcePattern: RegExp;
|
|
215
|
+
sourcePatterns?: RegExp[];
|
|
216
|
+
sample: string;
|
|
217
|
+
role: string;
|
|
218
|
+
authority: EvidenceAuthority;
|
|
219
|
+
core: boolean;
|
|
220
|
+
failure: string;
|
|
221
|
+
recurring?: boolean;
|
|
222
|
+
waiverPolicy?: Obligation['waiverPolicy'];
|
|
223
|
+
}
|
|
224
|
+
export declare const REQUIRED_WINDOW_DUTIES: readonly DutyDefinition[];
|
|
225
|
+
export declare function minimumWindowDutyFixture(): string;
|
|
226
|
+
export declare function assertEchoScope(agentId: string, scope: string): void;
|
|
227
|
+
export declare function compileWindowSources(input: {
|
|
228
|
+
agentId: string;
|
|
229
|
+
scope: string;
|
|
230
|
+
windowId: string;
|
|
231
|
+
tenetsPath: string;
|
|
232
|
+
charterPath: string;
|
|
233
|
+
now?: string;
|
|
234
|
+
requireMinimumCatalog?: boolean;
|
|
235
|
+
}): CompiledSources;
|
|
236
|
+
export declare function verifyCompilationCoverage(compiled: CompiledSources): {
|
|
237
|
+
ok: boolean;
|
|
238
|
+
issues: string[];
|
|
239
|
+
};
|
|
240
|
+
export declare function classifyExecutor(obligation: Obligation, now?: string): ExecutorClass;
|
|
241
|
+
export declare function evaluateExecutor(obligation: Obligation, now?: string): {
|
|
242
|
+
ok: boolean;
|
|
243
|
+
class: ExecutorClass;
|
|
244
|
+
issues: string[];
|
|
245
|
+
};
|
|
246
|
+
/** A verified transport proves provenance, not meaning. Semantic duties require
|
|
247
|
+
* a canonical, instance-bound proof envelope emitted by their named authority. */
|
|
248
|
+
export declare function predicateSatisfied(obligation: Obligation, evidence: EvidenceRecord): boolean;
|
|
249
|
+
/** Re-queries the production registry and replaces every caller-supplied runtime
|
|
250
|
+
* fact. The request may name an executor id; it cannot assert its liveness. */
|
|
251
|
+
export declare function bindRuntimeAuthority(obligation: Obligation, registry: WindowRuntimeRegistry): Obligation;
|
|
252
|
+
/** Re-queries evidence and drops vanished/unbound records. Authority labels in
|
|
253
|
+
* ledger JSON never survive unless the verifier independently earns them. */
|
|
254
|
+
export declare function bindEvidenceAuthority(obligation: Obligation, authority: WindowEvidenceAuthority): Obligation;
|
|
255
|
+
export declare function evaluateFromAuthorities(obligations: Obligation[], runtime: WindowRuntimeRegistry, evidence: WindowEvidenceAuthority, now?: string): {
|
|
256
|
+
admitted: boolean;
|
|
257
|
+
obligations: Obligation[];
|
|
258
|
+
issues: string[];
|
|
259
|
+
};
|
|
260
|
+
/** Production local-store verifier. Local rows earn only content-bound-store-row;
|
|
261
|
+
* live authority requires the supplied live re-query seam and verified actor. */
|
|
262
|
+
export declare class ProductionMessageEvidenceAuthority implements WindowEvidenceAuthority {
|
|
263
|
+
private readonly storePath;
|
|
264
|
+
private readonly liveRequery?;
|
|
265
|
+
constructor(storePath: string, liveRequery?: ((topicId: number, messageId: number) => LiveMessageRow | null) | undefined);
|
|
266
|
+
requery(record: EvidenceRecord): EvidenceRecord | null;
|
|
267
|
+
}
|
|
268
|
+
export declare class ProductionRuntimeRegistry implements WindowRuntimeRegistry {
|
|
269
|
+
private readonly snapshot;
|
|
270
|
+
constructor(snapshot: () => RuntimeExecutorSnapshot[]);
|
|
271
|
+
resolve(executorId: string, obligationId: string): RuntimeExecutorSnapshot | null;
|
|
272
|
+
}
|
|
273
|
+
export declare function evaluateObligations(obligations: Obligation[], now?: string): {
|
|
274
|
+
admitted: boolean;
|
|
275
|
+
obligations: Obligation[];
|
|
276
|
+
issues: string[];
|
|
277
|
+
};
|
|
278
|
+
export declare function transitionFuturePhase(obligation: Obligation, now: string): Obligation;
|
|
279
|
+
export declare function materializeCadenceInstances(ledger: LedgerDocument, through: string): LedgerDocument;
|
|
280
|
+
export declare function evaluateLifecycleTick(ledger: LedgerDocument, runtime: WindowRuntimeRegistry, evidence: WindowEvidenceAuthority, now?: string): {
|
|
281
|
+
ledger: LedgerDocument;
|
|
282
|
+
issues: string[];
|
|
283
|
+
};
|
|
284
|
+
export interface ClosureAuthority {
|
|
285
|
+
now?: string;
|
|
286
|
+
requeryWaiverApproval?: (waiver: Waiver) => boolean;
|
|
287
|
+
}
|
|
288
|
+
export declare function evaluateClosure(ledger: LedgerDocument, _callerExpectedIds?: string[], authority?: ClosureAuthority): {
|
|
289
|
+
state: LifecycleState;
|
|
290
|
+
issues: string[];
|
|
291
|
+
};
|
|
292
|
+
export interface Waiver {
|
|
293
|
+
id: string;
|
|
294
|
+
obligationIds: string[];
|
|
295
|
+
reason: string;
|
|
296
|
+
agentId: string;
|
|
297
|
+
scope: string;
|
|
298
|
+
windowId: string;
|
|
299
|
+
phase: LifecyclePhase;
|
|
300
|
+
permit: 'debt-only' | 'phase-transition';
|
|
301
|
+
expiresAt: string;
|
|
302
|
+
nonce: string;
|
|
303
|
+
nonTransferable: true;
|
|
304
|
+
createdAt: string;
|
|
305
|
+
digest: string;
|
|
306
|
+
operatorPrincipalId?: string;
|
|
307
|
+
approvedDigest?: string;
|
|
308
|
+
approvedAt?: string;
|
|
309
|
+
approvalCoordinates?: {
|
|
310
|
+
topicId: number;
|
|
311
|
+
messageId: number;
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
export declare function waiverDigest(waiver: Omit<Waiver, 'digest' | 'operatorPrincipalId' | 'approvedDigest' | 'approvedAt' | 'approvalCoordinates'>): string;
|
|
315
|
+
export interface RollbackRequest {
|
|
316
|
+
agentId: 'echo';
|
|
317
|
+
scope: 'echo-window-lifecycle';
|
|
318
|
+
windowId: string;
|
|
319
|
+
reason: string;
|
|
320
|
+
nonce: string;
|
|
321
|
+
createdAt: string;
|
|
322
|
+
digest: string;
|
|
323
|
+
approvalCoordinates: {
|
|
324
|
+
topicId: number;
|
|
325
|
+
messageId: number;
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
export interface WindowDryRunResult {
|
|
329
|
+
passed: boolean;
|
|
330
|
+
command: string;
|
|
331
|
+
completedAt: string;
|
|
332
|
+
outputHash: string;
|
|
333
|
+
testInventory: string[];
|
|
334
|
+
}
|
|
335
|
+
export declare const WINDOW_DRY_RUN_INVENTORY: readonly ["tests/unit/window-lifecycle-obligation-ledger.test.ts", "tests/integration/window-lifecycle-ledger-store.test.ts", "tests/integration/window-lifecycle-native-adapter.test.ts", "tests/e2e/window-lifecycle-executor-incident.test.ts", "tests/e2e/window-lifecycle-production-wiring.test.ts"];
|
|
336
|
+
export declare function rollbackDigest(request: Omit<RollbackRequest, 'digest' | 'approvalCoordinates'>): string;
|
|
337
|
+
export declare function validateWaiver(waiver: Waiver, ledger: LedgerDocument, locallyBoundOperatorId: string, now?: string): string[];
|
|
338
|
+
export declare function createLedger(input: {
|
|
339
|
+
agentId: string;
|
|
340
|
+
scope: string;
|
|
341
|
+
windowId: string;
|
|
342
|
+
compiled: CompiledSources;
|
|
343
|
+
}): LedgerDocument;
|
|
344
|
+
export declare function transitionLedger(ledger: LedgerDocument, target: LifecycleState, closureAuthority?: ClosureAuthority): LedgerDocument;
|
|
345
|
+
export declare function applyWaiver(ledger: LedgerDocument, waiver: Waiver, locallyBoundOperatorId: string, now?: string): LedgerDocument;
|
|
346
|
+
export declare class EchoWindowLedgerStore {
|
|
347
|
+
private readonly file;
|
|
348
|
+
constructor(agentHome: string);
|
|
349
|
+
load(agentId: string, scope: string): LedgerDocument | null;
|
|
350
|
+
save(ledger: LedgerDocument): void;
|
|
351
|
+
appendNativeEvaluation(agentId: string, scope: string, record: NativeEvaluationRecord): LedgerDocument;
|
|
352
|
+
rollback(agentId: string, scope: string, request: RollbackRequest, operatorEvidence: EvidenceRecord, authority: WindowEvidenceAuthority, at?: string): LedgerDocument;
|
|
353
|
+
reenable(agentId: string, scope: string, faultFixedEvidencePath: string, dryRunRunner?: () => WindowDryRunResult, at?: string): LedgerDocument;
|
|
354
|
+
private validate;
|
|
355
|
+
}
|
|
356
|
+
export declare function runNativeAdmissionAdapter(input: {
|
|
357
|
+
agentId: string;
|
|
358
|
+
scope: string;
|
|
359
|
+
windowId: string;
|
|
360
|
+
stateDir: string;
|
|
361
|
+
package: unknown;
|
|
362
|
+
storePath?: string;
|
|
363
|
+
nonce: string;
|
|
364
|
+
installedContractVersion?: string;
|
|
365
|
+
evaluatedAt?: string;
|
|
366
|
+
}): NativeEvaluationRecord;
|
|
367
|
+
export declare function admissionSnapshotDigest(ledger: LedgerDocument): string;
|
|
368
|
+
export declare function sourceFreshnessIssues(ledger: LedgerDocument): string[];
|
|
369
|
+
export type LifecycleGuardAction = 'new-scope' | 'telegram-send' | 'completion-claim';
|
|
370
|
+
export declare function deriveFailureRemediation(obligation: Obligation): FailureRemediation;
|
|
371
|
+
export declare function evaluateLifecycleGuard(ledger: LedgerDocument, action: LifecycleGuardAction): {
|
|
372
|
+
allowed: boolean;
|
|
373
|
+
reasons: string[];
|
|
374
|
+
};
|
|
375
|
+
export declare function runWindowLifecyclePostLiveCheck(ledger: LedgerDocument): {
|
|
376
|
+
passed: boolean;
|
|
377
|
+
inputHash: string;
|
|
378
|
+
outputHash: string;
|
|
379
|
+
reasons: string[];
|
|
380
|
+
};
|
|
381
|
+
export {};
|
|
382
|
+
//# sourceMappingURL=WindowLifecycleObligationLedger.d.ts.map
|