@powerhousedao/reactor-api 6.0.0-dev.3 → 6.0.0-dev.30
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/src/graphql/auth/subgraph.js +1 -1
- package/dist/src/graphql/auth/subgraph.js.map +1 -1
- package/dist/src/graphql/document-model-subgraph.d.ts +37 -43
- package/dist/src/graphql/document-model-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/document-model-subgraph.js +218 -85
- package/dist/src/graphql/document-model-subgraph.js.map +1 -1
- package/dist/src/graphql/drive-subgraph.js +1 -0
- package/dist/src/graphql/drive-subgraph.js.map +1 -1
- package/dist/src/graphql/graphql-manager.d.ts +3 -1
- package/dist/src/graphql/graphql-manager.d.ts.map +1 -1
- package/dist/src/graphql/graphql-manager.js +34 -21
- package/dist/src/graphql/graphql-manager.js.map +1 -1
- package/dist/src/graphql/reactor/adapters.d.ts +10 -2
- package/dist/src/graphql/reactor/adapters.d.ts.map +1 -1
- package/dist/src/graphql/reactor/adapters.js +35 -1
- package/dist/src/graphql/reactor/adapters.js.map +1 -1
- package/dist/src/graphql/reactor/factory.d.ts.map +1 -1
- package/dist/src/graphql/reactor/gen/graphql.d.ts +36 -4
- package/dist/src/graphql/reactor/gen/graphql.d.ts.map +1 -1
- package/dist/src/graphql/reactor/gen/graphql.js.map +1 -1
- package/dist/src/graphql/reactor/resolvers.d.ts +17 -1
- package/dist/src/graphql/reactor/resolvers.d.ts.map +1 -1
- package/dist/src/graphql/reactor/resolvers.js +64 -31
- package/dist/src/graphql/reactor/resolvers.js.map +1 -1
- package/dist/src/graphql/reactor/schema.graphql +33 -30
- package/dist/src/graphql/reactor/subgraph.d.ts.map +1 -1
- package/dist/src/graphql/reactor/subgraph.js +21 -0
- package/dist/src/graphql/reactor/subgraph.js.map +1 -1
- package/dist/src/graphql/system/system-subgraph.js +2 -2
- package/dist/src/graphql/system/system-subgraph.js.map +1 -1
- package/dist/src/packages/import-loader.d.ts +3 -1
- package/dist/src/packages/import-loader.d.ts.map +1 -1
- package/dist/src/packages/import-loader.js +19 -10
- package/dist/src/packages/import-loader.js.map +1 -1
- package/dist/src/packages/types.d.ts +4 -0
- package/dist/src/packages/types.d.ts.map +1 -1
- package/dist/src/packages/util.d.ts +2 -1
- package/dist/src/packages/util.d.ts.map +1 -1
- package/dist/src/packages/util.js +1 -1
- package/dist/src/packages/util.js.map +1 -1
- package/dist/src/packages/vite-loader.d.ts +4 -3
- package/dist/src/packages/vite-loader.d.ts.map +1 -1
- package/dist/src/packages/vite-loader.js +21 -8
- package/dist/src/packages/vite-loader.js.map +1 -1
- package/dist/src/server.d.ts +9 -6
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +113 -49
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/auth.service.d.ts.map +1 -1
- package/dist/src/services/auth.service.js +11 -20
- package/dist/src/services/auth.service.js.map +1 -1
- package/dist/src/tracing.js +1 -1
- package/dist/src/tracing.js.map +1 -1
- package/dist/src/types.d.ts +1 -1
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/create-schema.d.ts.map +1 -1
- package/dist/src/utils/create-schema.js +57 -8
- package/dist/src/utils/create-schema.js.map +1 -1
- package/dist/src/utils/drive-url.d.ts +2 -0
- package/dist/src/utils/drive-url.d.ts.map +1 -0
- package/dist/src/utils/drive-url.js +3 -0
- package/dist/src/utils/drive-url.js.map +1 -0
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -0
- package/dist/src/utils/index.js.map +1 -1
- package/dist/test/document-model-subgraph-legacy-permissions.test.d.ts +2 -0
- package/dist/test/document-model-subgraph-legacy-permissions.test.d.ts.map +1 -0
- package/dist/test/document-model-subgraph-legacy-permissions.test.js +518 -0
- package/dist/test/document-model-subgraph-legacy-permissions.test.js.map +1 -0
- package/dist/test/document-model-subgraph.test.d.ts +2 -0
- package/dist/test/document-model-subgraph.test.d.ts.map +1 -0
- package/dist/test/document-model-subgraph.test.js +441 -0
- package/dist/test/document-model-subgraph.test.js.map +1 -0
- package/dist/test/permissions-integration.test.js +4 -4
- package/dist/test/permissions-integration.test.js.map +1 -1
- package/dist/test/reactor-resolvers.test.js +4 -8
- package/dist/test/reactor-resolvers.test.js.map +1 -1
- package/dist/test/reactor-subgraph-permissions.test.js +4 -7
- package/dist/test/reactor-subgraph-permissions.test.js.map +1 -1
- package/dist/test/two-reactor-gql-catchup-duplicate.test.d.ts +2 -0
- package/dist/test/two-reactor-gql-catchup-duplicate.test.d.ts.map +1 -0
- package/dist/test/two-reactor-gql-catchup-duplicate.test.js +264 -0
- package/dist/test/two-reactor-gql-catchup-duplicate.test.js.map +1 -0
- package/dist/test/two-reactor-gql-sync.test.js +6 -87
- package/dist/test/two-reactor-gql-sync.test.js.map +1 -1
- package/dist/test/utils/gql-resolver-bridge.d.ts.map +1 -1
- package/dist/test/utils/gql-resolver-bridge.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -10
- package/dist/test/three-reactor-gql-sync.test.d.ts +0 -2
- package/dist/test/three-reactor-gql-sync.test.d.ts.map +0 -1
- package/dist/test/three-reactor-gql-sync.test.js +0 -368
- package/dist/test/three-reactor-gql-sync.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor-resolvers.test.js","sourceRoot":"","sources":["../../test/reactor-resolvers.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reactor-resolvers.test.js","sourceRoot":"","sources":["../../test/reactor-resolvers.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,oBAAoB,GAErB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EACL,gCAAgC,GAGjC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,KAAK,SAAS,MAAM,qCAAqC,CAAC;AAEjE,MAAM,kBAAkB,GAAG,GAAe,EAAE;IAC1C,OAAO,gCAAgC,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;AACjE,CAAC,CAAC;AAEF,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,IAAI,MAA2B,CAAC;IAEhC,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC,kBAAkB,CAAC;YAC7D,wBAA0D;YAC1D,gCAAkE;SACnE,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,oBAAoB,EAAE;aACtC,kBAAkB,CAAC,cAAc,CAAC;aAClC,WAAW,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;aACpC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,SAAS,EAAE,YAAY;gBACvB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;YACrC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEpC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;gBACrD,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;aAC9B,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACvE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;YACpD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;YAEnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC7D,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE;gBAClC,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;YAEnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC5D,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;gBAChC,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;YACrC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEpC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC1D,MAAM,EAAE;oBACN,IAAI,EAAE,2BAA2B;oBACjC,QAAQ,EAAE,IAAI;iBACf;gBACD,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,MAAM,CACV,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC,CACrE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,IAAI,MAA2B,CAAC;IAEhC,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC,kBAAkB,CAAC;YAC7D,wBAA0D;YAC1D,gCAAkE;SACnE,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,oBAAoB,EAAE;aACtC,kBAAkB,CAAC,cAAc,CAAC;aAClC,WAAW,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,aAAa,GAAG,kBAAkB,EAAE,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,QAAQ,EAAE,aAAa;gBACvB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,MAAM,CACV,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBACtC,QAAQ,EAAE,IAAI;gBACd,gBAAgB,EAAE,IAAI;aACvB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,MAAM,CACV,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBACtC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBACvB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE;gBAChE,YAAY,EAAE,2BAA2B;gBACzC,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;YACrC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEpC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;gBACrC,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;YAEnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAElC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE;gBACxD,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE;gBAClC,mBAAmB,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;YAEnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE;gBAClC,mBAAmB,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;YACrC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEpC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC7B,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;YAElC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC5D,WAAW,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;YACrC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEpC,MAAM,OAAO,GAAG;gBACd,gCAAgC,CAAC,OAAO,CAAC,YAAY,CAAC;oBACpD,IAAI,EAAE,gBAAgB;iBACvB,CAAC;aACH,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC3D,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;gBACrC,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;aACvC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,MAAM,CACV,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBACtC,kBAAkB,EAAE,iBAAiB;gBACrC,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,IAAI;aACb,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,MAAM,CACV,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE;gBACtC,UAAU,EAAE,iBAAiB;gBAC7B,SAAS,EAAE,IAAI;aAChB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -49,9 +49,9 @@ describe("ReactorSubgraph Permission Checks", () => {
|
|
|
49
49
|
canWrite: vi.fn().mockResolvedValue(false),
|
|
50
50
|
};
|
|
51
51
|
// Create mock ReactorClient
|
|
52
|
-
// Note: get() returns
|
|
52
|
+
// Note: get() returns PHDocument directly
|
|
53
53
|
mockReactorClient = {
|
|
54
|
-
get: vi.fn().mockResolvedValue(
|
|
54
|
+
get: vi.fn().mockResolvedValue(mockDocument),
|
|
55
55
|
getChildren: vi.fn().mockResolvedValue({
|
|
56
56
|
results: [],
|
|
57
57
|
options: { limit: 10, cursor: "" },
|
|
@@ -379,12 +379,9 @@ describe("ReactorSubgraph Permission Checks", () => {
|
|
|
379
379
|
await expect(query(null, { identifier: "non-existent" }, ctx)).rejects.toThrow();
|
|
380
380
|
});
|
|
381
381
|
it("should throw error when document is null in result", async () => {
|
|
382
|
-
// When get() returns
|
|
382
|
+
// When get() returns null, resolver throws
|
|
383
383
|
// because it tries to access document.header
|
|
384
|
-
vi.mocked(mockReactorClient.get).mockResolvedValue(
|
|
385
|
-
document: null,
|
|
386
|
-
childIds: [],
|
|
387
|
-
});
|
|
384
|
+
vi.mocked(mockReactorClient.get).mockResolvedValue(null);
|
|
388
385
|
const ctx = createContext({ isAdmin: true, userAddress: "0xadmin" });
|
|
389
386
|
const query = reactorSubgraph.resolvers.Query?.document;
|
|
390
387
|
// The resolver throws when trying to convert null document to GraphQL
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor-subgraph-permissions.test.js","sourceRoot":"","sources":["../../test/reactor-subgraph-permissions.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reactor-subgraph-permissions.test.js","sourceRoot":"","sources":["../../test/reactor-subgraph-permissions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"two-reactor-gql-catchup-duplicate.test.d.ts","sourceRoot":"","sources":["../../test/two-reactor-gql-catchup-duplicate.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import { CompositeChannelFactory, ConsoleLogger, driveCollectionId, JobStatus, ReactorEventTypes, ReactorBuilder, SyncBuilder, } from "@powerhousedao/reactor";
|
|
2
|
+
import { driveDocumentModelModule } from "document-drive";
|
|
3
|
+
import { documentModelDocumentModelModule, } from "document-model";
|
|
4
|
+
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
|
5
|
+
import { createResolverBridge } from "./utils/gql-resolver-bridge.js";
|
|
6
|
+
async function waitForJobCompletion(reactor, jobId, timeoutMs = 5000) {
|
|
7
|
+
const startTime = Date.now();
|
|
8
|
+
while (Date.now() - startTime < timeoutMs) {
|
|
9
|
+
const status = await reactor.getJobStatus(jobId);
|
|
10
|
+
if (status.status === JobStatus.READ_READY) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
if (status.status === JobStatus.FAILED) {
|
|
14
|
+
throw new Error(`Job failed: ${status.error?.message || "Unknown"}`);
|
|
15
|
+
}
|
|
16
|
+
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
17
|
+
}
|
|
18
|
+
throw new Error(`Job did not complete within ${timeoutMs}ms`);
|
|
19
|
+
}
|
|
20
|
+
async function waitForOperationsReady(eventBus, documentId, timeoutMs = 5000) {
|
|
21
|
+
return new Promise((resolve, reject) => {
|
|
22
|
+
const timeout = setTimeout(() => {
|
|
23
|
+
unsubscribe();
|
|
24
|
+
reject(new Error(`OPERATIONS_READY event for document ${documentId} not received within ${timeoutMs}ms`));
|
|
25
|
+
}, timeoutMs);
|
|
26
|
+
const unsubscribe = eventBus.subscribe(ReactorEventTypes.JOB_READ_READY, (type, event) => {
|
|
27
|
+
const hasDocument = event.operations.some((op) => op.context.documentId === documentId);
|
|
28
|
+
if (hasDocument) {
|
|
29
|
+
clearTimeout(timeout);
|
|
30
|
+
unsubscribe();
|
|
31
|
+
resolve();
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Creates a unique key for an operation using id + index + skip.
|
|
38
|
+
* Per deriveOperationId, the same operation ID can appear with different index values.
|
|
39
|
+
* A true duplicate is identified by the combination of id + index + skip.
|
|
40
|
+
*/
|
|
41
|
+
function createOperationKey(op) {
|
|
42
|
+
return `${op.operation.id}:${op.operation.index}:${op.operation.skip}`;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Creates a collector that subscribes to OPERATIONS_READY events and tracks
|
|
46
|
+
* operations for a specific document, detecting duplicates.
|
|
47
|
+
*/
|
|
48
|
+
function collectOperationsReady(eventBus, documentId, timeoutMs = 10000) {
|
|
49
|
+
const operationKeys = new Set();
|
|
50
|
+
const allOperations = [];
|
|
51
|
+
const duplicates = [];
|
|
52
|
+
let waitResolve = null;
|
|
53
|
+
let waitCount = 0;
|
|
54
|
+
const unsubscribe = eventBus.subscribe(ReactorEventTypes.JOB_READ_READY, (type, event) => {
|
|
55
|
+
for (const op of event.operations) {
|
|
56
|
+
if (op.context.documentId !== documentId) {
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
const key = createOperationKey(op);
|
|
60
|
+
allOperations.push(op);
|
|
61
|
+
if (operationKeys.has(key)) {
|
|
62
|
+
duplicates.push(op);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
operationKeys.add(key);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (waitResolve && allOperations.length >= waitCount) {
|
|
69
|
+
waitResolve();
|
|
70
|
+
waitResolve = null;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
return {
|
|
74
|
+
operationKeys,
|
|
75
|
+
allOperations,
|
|
76
|
+
duplicates,
|
|
77
|
+
waitForCount: (count) => {
|
|
78
|
+
if (allOperations.length >= count) {
|
|
79
|
+
return Promise.resolve();
|
|
80
|
+
}
|
|
81
|
+
waitCount = count;
|
|
82
|
+
return new Promise((resolve, reject) => {
|
|
83
|
+
waitResolve = resolve;
|
|
84
|
+
setTimeout(() => {
|
|
85
|
+
if (waitResolve) {
|
|
86
|
+
waitResolve = null;
|
|
87
|
+
reject(new Error(`Expected ${count} operations but received ${allOperations.length} within ${timeoutMs}ms`));
|
|
88
|
+
}
|
|
89
|
+
}, timeoutMs);
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
stop: () => {
|
|
93
|
+
unsubscribe();
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Creates a collector that subscribes to JOB_FAILED events and tracks failures
|
|
99
|
+
* that indicate duplicate operations (document already exists errors).
|
|
100
|
+
*/
|
|
101
|
+
function collectDuplicateFailures(eventBus) {
|
|
102
|
+
const failures = [];
|
|
103
|
+
const unsubscribe = eventBus.subscribe(ReactorEventTypes.JOB_FAILED, (type, event) => {
|
|
104
|
+
if (event.error.message.includes("already exists")) {
|
|
105
|
+
failures.push(event);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
return {
|
|
109
|
+
failures,
|
|
110
|
+
stop: () => {
|
|
111
|
+
unsubscribe();
|
|
112
|
+
},
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
async function setupTwoReactors() {
|
|
116
|
+
const syncManagerRegistry = new Map();
|
|
117
|
+
const resolverBridge = createResolverBridge(syncManagerRegistry);
|
|
118
|
+
const logger = new ConsoleLogger(["test"]);
|
|
119
|
+
const channelFactoryA = new CompositeChannelFactory(logger);
|
|
120
|
+
const channelFactoryB = new CompositeChannelFactory(logger);
|
|
121
|
+
const models = [
|
|
122
|
+
driveDocumentModelModule,
|
|
123
|
+
documentModelDocumentModelModule,
|
|
124
|
+
];
|
|
125
|
+
const reactorAModule = await new ReactorBuilder()
|
|
126
|
+
.withDocumentModels(models)
|
|
127
|
+
.withSync(new SyncBuilder().withChannelFactory(channelFactoryA))
|
|
128
|
+
.buildModule();
|
|
129
|
+
const reactorA = reactorAModule.reactor;
|
|
130
|
+
const eventBusA = reactorAModule.eventBus;
|
|
131
|
+
const syncManagerA = reactorAModule.syncModule.syncManager;
|
|
132
|
+
const reactorBModule = await new ReactorBuilder()
|
|
133
|
+
.withDocumentModels(models)
|
|
134
|
+
.withSync(new SyncBuilder().withChannelFactory(channelFactoryB))
|
|
135
|
+
.buildModule();
|
|
136
|
+
const reactorB = reactorBModule.reactor;
|
|
137
|
+
const eventBusB = reactorBModule.eventBus;
|
|
138
|
+
const syncManagerB = reactorBModule.syncModule.syncManager;
|
|
139
|
+
syncManagerRegistry.set("reactora", syncManagerA);
|
|
140
|
+
syncManagerRegistry.set("reactorb", syncManagerB);
|
|
141
|
+
return {
|
|
142
|
+
reactorA,
|
|
143
|
+
reactorB,
|
|
144
|
+
eventBusA,
|
|
145
|
+
eventBusB,
|
|
146
|
+
syncManagerA,
|
|
147
|
+
syncManagerB,
|
|
148
|
+
resolverBridge,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
describe("Two-Reactor GQL Catchup Duplicate Operations Bug", () => {
|
|
152
|
+
let reactorA;
|
|
153
|
+
let reactorB;
|
|
154
|
+
let eventBusA;
|
|
155
|
+
let eventBusB;
|
|
156
|
+
let syncManagerA;
|
|
157
|
+
let resolverBridge;
|
|
158
|
+
beforeEach(async () => {
|
|
159
|
+
const setup = await setupTwoReactors();
|
|
160
|
+
reactorA = setup.reactorA;
|
|
161
|
+
reactorB = setup.reactorB;
|
|
162
|
+
eventBusA = setup.eventBusA;
|
|
163
|
+
eventBusB = setup.eventBusB;
|
|
164
|
+
syncManagerA = setup.syncManagerA;
|
|
165
|
+
resolverBridge = setup.resolverBridge;
|
|
166
|
+
});
|
|
167
|
+
afterEach(() => {
|
|
168
|
+
reactorA.kill();
|
|
169
|
+
reactorB.kill();
|
|
170
|
+
});
|
|
171
|
+
it("should not produce duplicate operations when remote is removed and re-added", async () => {
|
|
172
|
+
const driveDocument = driveDocumentModelModule.utils.createDocument();
|
|
173
|
+
const collectionId = driveCollectionId("main", driveDocument.header.id);
|
|
174
|
+
const jobInfo = await reactorA.create(driveDocument);
|
|
175
|
+
await waitForJobCompletion(reactorA, jobInfo.id);
|
|
176
|
+
const gqlParamsToB = {
|
|
177
|
+
url: "http://reactorB/graphql",
|
|
178
|
+
pollIntervalMs: 100,
|
|
179
|
+
maxFailures: 10,
|
|
180
|
+
retryBaseDelayMs: 50,
|
|
181
|
+
fetchFn: resolverBridge,
|
|
182
|
+
};
|
|
183
|
+
const filter = {
|
|
184
|
+
documentId: [],
|
|
185
|
+
scope: [],
|
|
186
|
+
branch: "main",
|
|
187
|
+
};
|
|
188
|
+
const readyPromiseB = waitForOperationsReady(eventBusB, driveDocument.header.id);
|
|
189
|
+
await syncManagerA.add("remoteB", collectionId, { type: "gql", parameters: gqlParamsToB }, filter);
|
|
190
|
+
await readyPromiseB;
|
|
191
|
+
const resultA = await reactorA.getOperations(driveDocument.header.id, {
|
|
192
|
+
branch: "main",
|
|
193
|
+
});
|
|
194
|
+
const opsA = Object.values(resultA).flatMap((scope) => scope.results);
|
|
195
|
+
expect(opsA.length).toBeGreaterThan(0);
|
|
196
|
+
const resultB = await reactorB.getOperations(driveDocument.header.id, {
|
|
197
|
+
branch: "main",
|
|
198
|
+
});
|
|
199
|
+
const opsB = Object.values(resultB).flatMap((scope) => scope.results);
|
|
200
|
+
expect(opsB.length).toBe(opsA.length);
|
|
201
|
+
const operationCollector = collectOperationsReady(eventBusA, driveDocument.header.id, 15000);
|
|
202
|
+
const failureCollector = collectDuplicateFailures(eventBusA);
|
|
203
|
+
try {
|
|
204
|
+
await syncManagerA.remove("remoteB");
|
|
205
|
+
await new Promise((resolve) => setTimeout(resolve, 200));
|
|
206
|
+
await syncManagerA.add("remoteB", collectionId, { type: "gql", parameters: gqlParamsToB }, filter);
|
|
207
|
+
await new Promise((resolve) => setTimeout(resolve, 2000));
|
|
208
|
+
expect(operationCollector.duplicates.length, "Duplicate operations were received via OPERATIONS_READY events").toBe(0);
|
|
209
|
+
expect(failureCollector.failures.length, "Duplicate operations caused 'document already exists' failures - this indicates the catchup backfill bug").toBe(0);
|
|
210
|
+
}
|
|
211
|
+
finally {
|
|
212
|
+
operationCollector.stop();
|
|
213
|
+
failureCollector.stop();
|
|
214
|
+
}
|
|
215
|
+
}, 20000);
|
|
216
|
+
it("should not produce duplicate operations after multiple remove/re-add cycles", async () => {
|
|
217
|
+
const driveDocument = driveDocumentModelModule.utils.createDocument();
|
|
218
|
+
const collectionId = driveCollectionId("main", driveDocument.header.id);
|
|
219
|
+
const jobInfo = await reactorA.create(driveDocument);
|
|
220
|
+
await waitForJobCompletion(reactorA, jobInfo.id);
|
|
221
|
+
await reactorA.execute(driveDocument.header.id, "main", [
|
|
222
|
+
driveDocumentModelModule.actions.setDriveName({ name: "Test Drive" }),
|
|
223
|
+
driveDocumentModelModule.actions.addFolder({
|
|
224
|
+
id: "folder-1",
|
|
225
|
+
name: "Folder 1",
|
|
226
|
+
parentFolder: null,
|
|
227
|
+
}),
|
|
228
|
+
]);
|
|
229
|
+
const gqlParamsToB = {
|
|
230
|
+
url: "http://reactorB/graphql",
|
|
231
|
+
pollIntervalMs: 100,
|
|
232
|
+
maxFailures: 10,
|
|
233
|
+
retryBaseDelayMs: 50,
|
|
234
|
+
fetchFn: resolverBridge,
|
|
235
|
+
};
|
|
236
|
+
const filter = {
|
|
237
|
+
documentId: [],
|
|
238
|
+
scope: [],
|
|
239
|
+
branch: "main",
|
|
240
|
+
};
|
|
241
|
+
const readyPromiseB = waitForOperationsReady(eventBusB, driveDocument.header.id);
|
|
242
|
+
await syncManagerA.add("remoteB", collectionId, { type: "gql", parameters: gqlParamsToB }, filter);
|
|
243
|
+
await readyPromiseB;
|
|
244
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
245
|
+
const operationCollector = collectOperationsReady(eventBusA, driveDocument.header.id, 30000);
|
|
246
|
+
const failureCollector = collectDuplicateFailures(eventBusA);
|
|
247
|
+
try {
|
|
248
|
+
for (let cycle = 0; cycle < 3; cycle++) {
|
|
249
|
+
await syncManagerA.remove("remoteB");
|
|
250
|
+
await new Promise((resolve) => setTimeout(resolve, 200));
|
|
251
|
+
await syncManagerA.add("remoteB", collectionId, { type: "gql", parameters: gqlParamsToB }, filter);
|
|
252
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
253
|
+
}
|
|
254
|
+
await new Promise((resolve) => setTimeout(resolve, 2000));
|
|
255
|
+
expect(operationCollector.duplicates.length, "Duplicate operations were received via OPERATIONS_READY events").toBe(0);
|
|
256
|
+
expect(failureCollector.failures.length, "Duplicate operations caused 'document already exists' failures after 3 remove/re-add cycles - this indicates the catchup backfill bug").toBe(0);
|
|
257
|
+
}
|
|
258
|
+
finally {
|
|
259
|
+
operationCollector.stop();
|
|
260
|
+
failureCollector.stop();
|
|
261
|
+
}
|
|
262
|
+
}, 45000);
|
|
263
|
+
});
|
|
264
|
+
//# sourceMappingURL=two-reactor-gql-catchup-duplicate.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"two-reactor-gql-catchup-duplicate.test.js","sourceRoot":"","sources":["../../test/two-reactor-gql-catchup-duplicate.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CompositeChannelFactory, ConsoleLogger, JobStatus,
|
|
1
|
+
import { CompositeChannelFactory, ConsoleLogger, JobStatus, ReactorBuilder, ReactorEventTypes, SyncBuilder, } from "@powerhousedao/reactor";
|
|
2
2
|
import { driveDocumentModelModule } from "document-drive";
|
|
3
3
|
import { documentModelDocumentModelModule, } from "document-model";
|
|
4
4
|
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
|
@@ -7,7 +7,7 @@ async function waitForJobCompletion(reactor, jobId, timeoutMs = 5000) {
|
|
|
7
7
|
const startTime = Date.now();
|
|
8
8
|
while (Date.now() - startTime < timeoutMs) {
|
|
9
9
|
const status = await reactor.getJobStatus(jobId);
|
|
10
|
-
if (status.status === JobStatus.
|
|
10
|
+
if (status.status === JobStatus.READ_READY) {
|
|
11
11
|
return;
|
|
12
12
|
}
|
|
13
13
|
if (status.status === JobStatus.FAILED) {
|
|
@@ -23,7 +23,7 @@ async function waitForOperationsReady(eventBus, documentId, timeoutMs = 5000) {
|
|
|
23
23
|
unsubscribe();
|
|
24
24
|
reject(new Error(`OPERATIONS_READY event for document ${documentId} not received within ${timeoutMs}ms`));
|
|
25
25
|
}, timeoutMs);
|
|
26
|
-
const unsubscribe = eventBus.subscribe(
|
|
26
|
+
const unsubscribe = eventBus.subscribe(ReactorEventTypes.JOB_READ_READY, (type, event) => {
|
|
27
27
|
const hasDocument = event.operations.some((op) => op.context.documentId === documentId);
|
|
28
28
|
if (hasDocument) {
|
|
29
29
|
clearTimeout(timeout);
|
|
@@ -33,23 +33,6 @@ async function waitForOperationsReady(eventBus, documentId, timeoutMs = 5000) {
|
|
|
33
33
|
});
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
|
-
async function waitForMultipleOperationsReady(eventBus, expectedCount, timeoutMs = 10000) {
|
|
37
|
-
return new Promise((resolve, reject) => {
|
|
38
|
-
let count = 0;
|
|
39
|
-
const timeout = setTimeout(() => {
|
|
40
|
-
unsubscribe();
|
|
41
|
-
reject(new Error(`Expected ${expectedCount} OPERATIONS_READY events but received ${count} within ${timeoutMs}ms`));
|
|
42
|
-
}, timeoutMs);
|
|
43
|
-
const unsubscribe = eventBus.subscribe(OperationEventTypes.OPERATIONS_READY, () => {
|
|
44
|
-
count++;
|
|
45
|
-
if (count >= expectedCount) {
|
|
46
|
-
clearTimeout(timeout);
|
|
47
|
-
unsubscribe();
|
|
48
|
-
resolve();
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
36
|
async function setupTwoReactorsWithGqlChannel() {
|
|
54
37
|
const syncManagerRegistry = new Map();
|
|
55
38
|
const resolverBridge = createResolverBridge(syncManagerRegistry);
|
|
@@ -130,7 +113,7 @@ describe("Two-Reactor Sync with GqlChannel", () => {
|
|
|
130
113
|
}
|
|
131
114
|
const docA = await reactorA.get(document.header.id, { branch: "main" });
|
|
132
115
|
const docB = await reactorB.get(document.header.id, { branch: "main" });
|
|
133
|
-
expect(docA
|
|
116
|
+
expect(docA).toEqual(docB);
|
|
134
117
|
});
|
|
135
118
|
it("should sync operation from ReactorB to ReactorA via GqlChannel", async () => {
|
|
136
119
|
const document = driveDocumentModelModule.utils.createDocument();
|
|
@@ -153,7 +136,7 @@ describe("Two-Reactor Sync with GqlChannel", () => {
|
|
|
153
136
|
}
|
|
154
137
|
const docA = await reactorA.get(document.header.id, { branch: "main" });
|
|
155
138
|
const docB = await reactorB.get(document.header.id, { branch: "main" });
|
|
156
|
-
expect(docA
|
|
139
|
+
expect(docA).toEqual(docB);
|
|
157
140
|
});
|
|
158
141
|
it("should sync multiple documents with concurrent operations from both reactors", async () => {
|
|
159
142
|
// Create 4 documents (2 for each reactor)
|
|
@@ -277,72 +260,8 @@ describe("Two-Reactor Sync with GqlChannel", () => {
|
|
|
277
260
|
for (const docId of allDocIds) {
|
|
278
261
|
const docFromA = await reactorA.get(docId, { branch: "main" });
|
|
279
262
|
const docFromB = await reactorB.get(docId, { branch: "main" });
|
|
280
|
-
expect(docFromA
|
|
263
|
+
expect(docFromA).toEqual(docFromB);
|
|
281
264
|
}
|
|
282
265
|
}, 30000);
|
|
283
|
-
it("should handle concurrent modifications to the same document from both reactors", async () => {
|
|
284
|
-
const doc = driveDocumentModelModule.utils.createDocument();
|
|
285
|
-
const readyPromise = waitForOperationsReady(eventBusB, doc.header.id);
|
|
286
|
-
const createJob = await reactorA.create(doc);
|
|
287
|
-
await waitForJobCompletion(reactorA, createJob.id);
|
|
288
|
-
await readyPromise;
|
|
289
|
-
const docOnB = await reactorB.get(doc.header.id, { branch: "main" });
|
|
290
|
-
expect(docOnB.document).toBeDefined();
|
|
291
|
-
void reactorA.execute(doc.header.id, "main", [
|
|
292
|
-
driveDocumentModelModule.actions.setDriveName({ name: "Name from A" }),
|
|
293
|
-
]);
|
|
294
|
-
void reactorB.execute(doc.header.id, "main", [
|
|
295
|
-
driveDocumentModelModule.actions.setDriveName({ name: "Name from B" }),
|
|
296
|
-
]);
|
|
297
|
-
void reactorA.execute(doc.header.id, "main", [
|
|
298
|
-
driveDocumentModelModule.actions.addFolder({
|
|
299
|
-
id: "folder-a",
|
|
300
|
-
name: "Folder from A",
|
|
301
|
-
parentFolder: null,
|
|
302
|
-
}),
|
|
303
|
-
]);
|
|
304
|
-
void reactorB.execute(doc.header.id, "main", [
|
|
305
|
-
driveDocumentModelModule.actions.addFolder({
|
|
306
|
-
id: "folder-b",
|
|
307
|
-
name: "Folder from B",
|
|
308
|
-
parentFolder: null,
|
|
309
|
-
}),
|
|
310
|
-
]);
|
|
311
|
-
const startTime = Date.now();
|
|
312
|
-
const timeout = 15000;
|
|
313
|
-
let synced = false;
|
|
314
|
-
while (Date.now() - startTime < timeout) {
|
|
315
|
-
const resultA = await reactorA.getOperations(doc.header.id, {
|
|
316
|
-
branch: "main",
|
|
317
|
-
});
|
|
318
|
-
const opsA = Object.values(resultA).flatMap((scope) => scope.results);
|
|
319
|
-
const resultB = await reactorB.getOperations(doc.header.id, {
|
|
320
|
-
branch: "main",
|
|
321
|
-
});
|
|
322
|
-
const opsB = Object.values(resultB).flatMap((scope) => scope.results);
|
|
323
|
-
if (opsA.length > 1 && opsB.length > 1 && opsA.length === opsB.length) {
|
|
324
|
-
synced = true;
|
|
325
|
-
break;
|
|
326
|
-
}
|
|
327
|
-
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
328
|
-
}
|
|
329
|
-
expect(synced).toBe(true);
|
|
330
|
-
const resultA = await reactorA.getOperations(doc.header.id, {
|
|
331
|
-
branch: "main",
|
|
332
|
-
});
|
|
333
|
-
const opsA = Object.values(resultA).flatMap((scope) => scope.results);
|
|
334
|
-
const resultB = await reactorB.getOperations(doc.header.id, {
|
|
335
|
-
branch: "main",
|
|
336
|
-
});
|
|
337
|
-
const opsB = Object.values(resultB).flatMap((scope) => scope.results);
|
|
338
|
-
expect(opsA.length).toBeGreaterThan(0);
|
|
339
|
-
expect(opsB.length).toBe(opsA.length);
|
|
340
|
-
for (let i = 0; i < opsA.length; i++) {
|
|
341
|
-
expect(opsB[i]).toEqual(opsA[i]);
|
|
342
|
-
}
|
|
343
|
-
const docFromA = await reactorA.get(doc.header.id, { branch: "main" });
|
|
344
|
-
const docFromB = await reactorB.get(doc.header.id, { branch: "main" });
|
|
345
|
-
expect(docFromA.document).toEqual(docFromB.document);
|
|
346
|
-
}, 20000);
|
|
347
266
|
});
|
|
348
267
|
//# sourceMappingURL=two-reactor-gql-sync.test.js.map
|