@bluelibs/runner-dev 5.1.0 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/AI.md +58 -6
  2. package/README.md +65 -6
  3. package/dist/generated/resolvers-types.d.ts +201 -0
  4. package/dist/index.d.ts +4 -0
  5. package/dist/resources/docs.generator.resource.d.ts +1 -0
  6. package/dist/resources/graphql-accumulator.resource.js +1 -0
  7. package/dist/resources/graphql-accumulator.resource.js.map +1 -1
  8. package/dist/resources/graphql.query.task.d.ts +2 -0
  9. package/dist/resources/introspector.cli.resource.js +27 -1
  10. package/dist/resources/introspector.cli.resource.js.map +1 -1
  11. package/dist/resources/introspector.resource.d.ts +1 -0
  12. package/dist/resources/introspector.resource.js +3 -2
  13. package/dist/resources/introspector.resource.js.map +1 -1
  14. package/dist/resources/live.resource.d.ts +3 -0
  15. package/dist/resources/live.resource.js +26 -0
  16. package/dist/resources/live.resource.js.map +1 -1
  17. package/dist/resources/models/Introspector.d.ts +33 -3
  18. package/dist/resources/models/Introspector.js +159 -2
  19. package/dist/resources/models/Introspector.js.map +1 -1
  20. package/dist/resources/models/durable.runtime.d.ts +1 -1
  21. package/dist/resources/models/durable.runtime.js +27 -2
  22. package/dist/resources/models/durable.runtime.js.map +1 -1
  23. package/dist/resources/models/initializeFromStore.js +75 -1
  24. package/dist/resources/models/initializeFromStore.js.map +1 -1
  25. package/dist/resources/models/initializeFromStore.utils.d.ts +5 -1
  26. package/dist/resources/models/initializeFromStore.utils.js +20 -1
  27. package/dist/resources/models/initializeFromStore.utils.js.map +1 -1
  28. package/dist/resources/routeHandlers/createLiveStreamHandler.d.ts +16 -0
  29. package/dist/resources/routeHandlers/createLiveStreamHandler.js +127 -0
  30. package/dist/resources/routeHandlers/createLiveStreamHandler.js.map +1 -0
  31. package/dist/resources/routeHandlers/registerHttpRoutes.hook.d.ts +2 -0
  32. package/dist/resources/routeHandlers/requestCorrelation.d.ts +11 -0
  33. package/dist/resources/routeHandlers/requestCorrelation.js +29 -0
  34. package/dist/resources/routeHandlers/requestCorrelation.js.map +1 -0
  35. package/dist/resources/server.resource.d.ts +2 -0
  36. package/dist/resources/server.resource.js +13 -1
  37. package/dist/resources/server.resource.js.map +1 -1
  38. package/dist/resources/swap.resource.d.ts +1 -0
  39. package/dist/schema/index.js +4 -0
  40. package/dist/schema/index.js.map +1 -1
  41. package/dist/schema/model.d.ts +23 -0
  42. package/dist/schema/model.js.map +1 -1
  43. package/dist/schema/query.js +23 -0
  44. package/dist/schema/query.js.map +1 -1
  45. package/dist/schema/types/AllType.js +8 -0
  46. package/dist/schema/types/AllType.js.map +1 -1
  47. package/dist/schema/types/BaseElementCommon.js +10 -0
  48. package/dist/schema/types/BaseElementCommon.js.map +1 -1
  49. package/dist/schema/types/InterceptorOwnersType.d.ts +2 -0
  50. package/dist/schema/types/InterceptorOwnersType.js +63 -0
  51. package/dist/schema/types/InterceptorOwnersType.js.map +1 -0
  52. package/dist/schema/types/LiveType.js +14 -76
  53. package/dist/schema/types/LiveType.js.map +1 -1
  54. package/dist/schema/types/ResourceType.js +5 -0
  55. package/dist/schema/types/ResourceType.js.map +1 -1
  56. package/dist/schema/types/RunOptionsType.d.ts +2 -0
  57. package/dist/schema/types/RunOptionsType.js +71 -0
  58. package/dist/schema/types/RunOptionsType.js.map +1 -0
  59. package/dist/schema/types/TaskType.js +15 -0
  60. package/dist/schema/types/TaskType.js.map +1 -1
  61. package/dist/schema/types/index.d.ts +2 -0
  62. package/dist/schema/types/index.js +5 -1
  63. package/dist/schema/types/index.js.map +1 -1
  64. package/dist/ui/.vite/manifest.json +2 -2
  65. package/dist/ui/assets/docs-BhRuaJ5l.css +1 -0
  66. package/dist/ui/assets/docs-H4oDZj7p.js +302 -0
  67. package/dist/ui/assets/docs-H4oDZj7p.js.map +1 -0
  68. package/dist/utils/healthCollectors.d.ts +37 -0
  69. package/dist/utils/healthCollectors.js +147 -0
  70. package/dist/utils/healthCollectors.js.map +1 -0
  71. package/dist/version.d.ts +1 -1
  72. package/dist/version.js +1 -1
  73. package/package.json +2 -4
  74. package/dist/ui/assets/docs-B_-zFz4-.css +0 -1
  75. package/dist/ui/assets/docs-Be-GHfZi.js +0 -353
  76. package/dist/ui/assets/docs-Be-GHfZi.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -12,6 +12,7 @@ export declare const resources: {
12
12
  logger: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Logger>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
13
13
  introspector: import("@bluelibs/runner").IResource<void, Promise<import("./resources/models/Introspector").Introspector>, {
14
14
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
15
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
15
16
  }, any, {
16
17
  title: string;
17
18
  description: string;
@@ -39,6 +40,7 @@ export declare const resources: {
39
40
  taskRunner: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").TaskRunner>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
40
41
  introspector: import("@bluelibs/runner").IResource<void, Promise<import("./resources/models/Introspector").Introspector>, {
41
42
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
43
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
42
44
  }, any, {
43
45
  title: string;
44
46
  description: string;
@@ -66,6 +68,7 @@ export declare const resources: {
66
68
  }, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
67
69
  introspector: import("@bluelibs/runner").IResource<void, Promise<import("./resources/models/Introspector").Introspector>, {
68
70
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
71
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
69
72
  }, any, {
70
73
  title: string;
71
74
  description: string;
@@ -97,6 +100,7 @@ export declare const resources: {
97
100
  taskRunner: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").TaskRunner>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
98
101
  introspector: import("@bluelibs/runner").IResource<void, Promise<import("./resources/models/Introspector").Introspector>, {
99
102
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
103
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
100
104
  }, any, {
101
105
  title: string;
102
106
  description: string;
@@ -13,6 +13,7 @@ export declare class DocsGenerator {
13
13
  export declare const docsGenerator: import("@bluelibs/runner").IResource<void, Promise<DocsGenerator>, {
14
14
  introspector: import("@bluelibs/runner").IResource<void, Promise<Introspector>, {
15
15
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
16
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
16
17
  }, any, {
17
18
  title: string;
18
19
  description: string;
@@ -30,6 +30,7 @@ exports.graphqlAccumulator = (0, runner_1.resource)({
30
30
  types_1.DiagnosticType,
31
31
  types_1.SwapResultType,
32
32
  types_1.SwappedTaskType,
33
+ types_1.InterceptorOwnersSnapshotType,
33
34
  ];
34
35
  return new graphql_1.GraphQLSchema({
35
36
  query,
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-accumulator.resource.js","sourceRoot":"","sources":["../../src/resources/graphql-accumulator.resource.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,qCAA2D;AAC3D,2CAA4C;AAC5C,iDAAkD;AAClD,2CAcyB;AAEZ,QAAA,kBAAkB,GAAG,IAAA,iBAAQ,EAAC;IACzC,EAAE,EAAE,8BAA8B;IAClC,IAAI,EAAE;QACJ,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EACT,yGAAyG;KAC5G;IACD,KAAK,CAAC,IAAI,CAAC,OAAO;QAChB,MAAM,SAAS,GAAG,GAAkB,EAAE;YACpC,MAAM,KAAK,GAAG,IAAI,2BAAiB,CAAC,iBAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1D,MAAM,QAAQ,GAAG,IAAI,2BAAiB,CAAC,uBAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEhE,MAAM,SAAS,GAAG;gBAChB,eAAO;gBACP,4BAAoB;gBACpB,iBAAS;gBACT,gBAAQ;gBACR,4BAAoB;gBACpB,sBAAc;gBACd,gBAAQ;gBACR,oBAAY;gBACZ,gBAAQ;gBACR,gBAAQ;gBACR,sBAAc;gBACd,sBAAc;gBACd,uBAAe;aAChB,CAAC;YAEF,OAAO,IAAI,uBAAa,CAAC;gBACvB,KAAK;gBACL,QAAQ;gBACR,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC;aACtB,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;CACF,CAAC,CAAC;AAEH,+DAA+D;AAClD,QAAA,OAAO,GAAG,0BAAkB,CAAC"}
1
+ {"version":3,"file":"graphql-accumulator.resource.js","sourceRoot":"","sources":["../../src/resources/graphql-accumulator.resource.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,qCAA2D;AAC3D,2CAA4C;AAC5C,iDAAkD;AAClD,2CAeyB;AAEZ,QAAA,kBAAkB,GAAG,IAAA,iBAAQ,EAAC;IACzC,EAAE,EAAE,8BAA8B;IAClC,IAAI,EAAE;QACJ,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EACT,yGAAyG;KAC5G;IACD,KAAK,CAAC,IAAI,CAAC,OAAO;QAChB,MAAM,SAAS,GAAG,GAAkB,EAAE;YACpC,MAAM,KAAK,GAAG,IAAI,2BAAiB,CAAC,iBAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1D,MAAM,QAAQ,GAAG,IAAI,2BAAiB,CAAC,uBAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEhE,MAAM,SAAS,GAAG;gBAChB,eAAO;gBACP,4BAAoB;gBACpB,iBAAS;gBACT,gBAAQ;gBACR,4BAAoB;gBACpB,sBAAc;gBACd,gBAAQ;gBACR,oBAAY;gBACZ,gBAAQ;gBACR,gBAAQ;gBACR,sBAAc;gBACd,sBAAc;gBACd,uBAAe;gBACf,qCAA6B;aAC9B,CAAC;YAEF,OAAO,IAAI,uBAAa,CAAC;gBACvB,KAAK;gBACL,QAAQ;gBACR,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC;aACtB,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,CAAC;IACvB,CAAC;CACF,CAAC,CAAC;AAEH,+DAA+D;AAClD,QAAA,OAAO,GAAG,0BAAkB,CAAC"}
@@ -12,6 +12,7 @@ export declare const graphqlQueryTask: import("@bluelibs/runner").ITask<{
12
12
  logger: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Logger>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
13
13
  introspector: import("@bluelibs/runner").IResource<void, Promise<import("..").Introspector>, {
14
14
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
15
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
15
16
  }, any, {
16
17
  title: string;
17
18
  description: string;
@@ -39,6 +40,7 @@ export declare const graphqlQueryTask: import("@bluelibs/runner").ITask<{
39
40
  taskRunner: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").TaskRunner>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
40
41
  introspector: import("@bluelibs/runner").IResource<void, Promise<import("..").Introspector>, {
41
42
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
43
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
42
44
  }, any, {
43
45
  title: string;
44
46
  description: string;
@@ -13,7 +13,33 @@ exports.introspectorCli = (0, runner_1.resource)({
13
13
  },
14
14
  dependencies: { cli: cli_config_resource_1.cliConfig },
15
15
  async init(_config, { cli }) {
16
- const i = new Introspector_1.Introspector({ store: cli.store });
16
+ const i = new Introspector_1.Introspector({
17
+ store: cli.store,
18
+ runtime: cli.runtime,
19
+ runOptions: process.env.RUNNER_DEV_DRY_RUN === "1"
20
+ ? {
21
+ mode: cli.store.mode ?? "dev",
22
+ debug: !!cli.store.resources?.has?.("globals.resources.debug"),
23
+ debugMode: cli.store.resources?.has?.("globals.resources.debug")
24
+ ? "normal"
25
+ : "disabled",
26
+ logsEnabled: true,
27
+ logsPrintThreshold: null,
28
+ logsPrintStrategy: "pretty",
29
+ logsBuffer: false,
30
+ errorBoundary: null,
31
+ shutdownHooks: null,
32
+ dryRun: true,
33
+ lazy: false,
34
+ initMode: "sequential",
35
+ runtimeEventCycleDetection: null,
36
+ hasOnUnhandledError: true,
37
+ rootId: cli.store.root?.resource?.id != null
38
+ ? String(cli.store.root.resource.id)
39
+ : "",
40
+ }
41
+ : null,
42
+ });
17
43
  (0, initializeFromStore_1.initializeFromStore)(i, cli.store);
18
44
  return i;
19
45
  },
@@ -1 +1 @@
1
- {"version":3,"file":"introspector.cli.resource.js","sourceRoot":"","sources":["../../src/resources/introspector.cli.resource.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,wDAAqD;AACrD,sEAAmE;AACnE,+DAAkD;AAErC,QAAA,eAAe,GAAG,IAAA,iBAAQ,EAAC;IACtC,EAAE,EAAE,uCAAuC;IAC3C,IAAI,EAAE;QACJ,KAAK,EAAE,8BAA8B;QACrC,WAAW,EACT,6GAA6G;KAChH;IACD,YAAY,EAAE,EAAE,GAAG,EAAE,+BAAS,EAAE;IAChC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE;QACzB,MAAM,CAAC,GAAG,IAAI,2BAAY,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QACjD,IAAA,yCAAmB,EAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"introspector.cli.resource.js","sourceRoot":"","sources":["../../src/resources/introspector.cli.resource.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,wDAAqD;AACrD,sEAAmE;AACnE,+DAAkD;AAErC,QAAA,eAAe,GAAG,IAAA,iBAAQ,EAAC;IACtC,EAAE,EAAE,uCAAuC;IAC3C,IAAI,EAAE;QACJ,KAAK,EAAE,8BAA8B;QACrC,WAAW,EACT,6GAA6G;KAChH;IACD,YAAY,EAAE,EAAE,GAAG,EAAE,+BAAS,EAAE;IAChC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE;QACzB,MAAM,CAAC,GAAG,IAAI,2BAAY,CAAC;YACzB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,OAAO,EAAG,GAAW,CAAC,OAAO;YAC7B,UAAU,EACR,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,GAAG;gBACpC,CAAC,CAAC;oBACE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK;oBAC7B,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,yBAAyB,CAAC;oBAC9D,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,yBAAyB,CAAC;wBAC9D,CAAC,CAAC,QAAQ;wBACV,CAAC,CAAC,UAAU;oBACd,WAAW,EAAE,IAAI;oBACjB,kBAAkB,EAAE,IAAI;oBACxB,iBAAiB,EAAE,QAAQ;oBAC3B,UAAU,EAAE,KAAK;oBACjB,aAAa,EAAE,IAAI;oBACnB,aAAa,EAAE,IAAI;oBACnB,MAAM,EAAE,IAAI;oBACZ,IAAI,EAAE,KAAK;oBACX,QAAQ,EAAE,YAAY;oBACtB,0BAA0B,EAAE,IAAI;oBAChC,mBAAmB,EAAE,IAAI;oBACzB,MAAM,EACJ,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,IAAI;wBAClC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACpC,CAAC,CAAC,EAAE;iBACT;gBACH,CAAC,CAAC,IAAI;SACX,CAAC,CAAC;QACH,IAAA,yCAAmB,EAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Introspector } from "./models/Introspector";
2
2
  export declare const introspector: import("@bluelibs/runner").IResource<void, Promise<Introspector>, {
3
3
  store: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").Store>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
4
+ runtime: import("@bluelibs/runner").IResource<void, Promise<import("@bluelibs/runner").RunResult<unknown>>, {}, any, any, import("@bluelibs/runner").TagType[], import("@bluelibs/runner").ResourceMiddlewareAttachmentType[]>;
4
5
  }, any, {
5
6
  title: string;
6
7
  description: string;
@@ -12,9 +12,10 @@ exports.introspector = (0, runner_1.resource)({
12
12
  },
13
13
  dependencies: {
14
14
  store: runner_1.globals.resources.store,
15
+ runtime: runner_1.globals.resources.runtime,
15
16
  },
16
- async init(_, { store }) {
17
- const i = new Introspector_1.Introspector({ store });
17
+ async init(_, { store, runtime }) {
18
+ const i = new Introspector_1.Introspector({ store, runtime });
18
19
  (0, initializeFromStore_1.initializeFromStore)(i, store);
19
20
  i.populateTunnelInfo();
20
21
  return i;
@@ -1 +1 @@
1
- {"version":3,"file":"introspector.resource.js","sourceRoot":"","sources":["../../src/resources/introspector.resource.ts"],"names":[],"mappings":";;;AAAA,6CAAqD;AACrD,wDAAqD;AACrD,sEAAmE;AAEtD,QAAA,YAAY,GAAG,IAAA,iBAAQ,EAAC;IACnC,EAAE,EAAE,mCAAmC;IACvC,IAAI,EAAE;QACJ,KAAK,EAAE,0BAA0B;QACjC,WAAW,EACT,0GAA0G;KAC7G;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,gBAAO,CAAC,SAAS,CAAC,KAAK;KAC/B;IACD,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE;QACrB,MAAM,CAAC,GAAG,IAAI,2BAAY,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACtC,IAAA,yCAAmB,EAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACvB,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"introspector.resource.js","sourceRoot":"","sources":["../../src/resources/introspector.resource.ts"],"names":[],"mappings":";;;AAAA,6CAAqD;AACrD,wDAAqD;AACrD,sEAAmE;AAEtD,QAAA,YAAY,GAAG,IAAA,iBAAQ,EAAC;IACnC,EAAE,EAAE,mCAAmC;IACvC,IAAI,EAAE;QACJ,KAAK,EAAE,0BAA0B;QACjC,WAAW,EACT,0GAA0G;KAC7G;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,gBAAO,CAAC,SAAS,CAAC,KAAK;QAC9B,OAAO,EAAE,gBAAO,CAAC,SAAS,CAAC,OAAO;KACnC;IACD,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC9B,MAAM,CAAC,GAAG,IAAI,2BAAY,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/C,IAAA,yCAAmB,EAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACvB,OAAO,CAAC,CAAC;IACX,CAAC;CACF,CAAC,CAAC"}
@@ -67,12 +67,15 @@ export interface Live {
67
67
  ok?: boolean;
68
68
  parentIds?: string[];
69
69
  rootIds?: string[];
70
+ correlationIds?: string[];
70
71
  }): RunRecord[];
71
72
  recordLog(level: LogLevel, message: string, data?: unknown, correlationId?: string | null, sourceId?: string | null): void;
72
73
  recordEmission(eventId: string, payload?: unknown, emitterId?: string | null): void;
73
74
  recordError(sourceId: string, sourceKind: "TASK" | "HOOK" | "RESOURCE" | "MIDDLEWARE" | "INTERNAL", error: unknown, data?: unknown): void;
74
75
  recordRun(nodeId: string, nodeKind: "TASK" | "HOOK", durationMs: number, ok: boolean, error?: unknown, parentId?: string | null, rootId?: string | null): void;
75
76
  describeFlow(taskId: string): Promise<DurableFlowShape | null>;
77
+ /** Register a listener that fires whenever a record* method is called. Returns an unsubscribe function. */
78
+ onRecord(callback: (kind: "log" | "emission" | "error" | "run") => void): () => void;
76
79
  }
77
80
  export declare const live: import("@bluelibs/runner").IResource<{
78
81
  maxEntries?: number;
@@ -19,6 +19,17 @@ const liveService = (0, runner_1.resource)({
19
19
  const emissions = [];
20
20
  const errors = [];
21
21
  const runs = [];
22
+ const recordListeners = new Set();
23
+ const notifyRecordListeners = (kind) => {
24
+ for (const listener of recordListeners) {
25
+ try {
26
+ listener(kind);
27
+ }
28
+ catch {
29
+ // Never let a listener error break telemetry recording
30
+ }
31
+ }
32
+ };
22
33
  const trim = (arr) => {
23
34
  const overflow = arr.length - maxEntries;
24
35
  if (overflow > 0)
@@ -60,6 +71,7 @@ const liveService = (0, runner_1.resource)({
60
71
  correlationId: correlationId ?? (0, telemetry_chain_1.getCorrelationId)() ?? null,
61
72
  });
62
73
  trim(logs);
74
+ notifyRecordListeners("log");
63
75
  },
64
76
  getLogs(input) {
65
77
  const options = toOptions(input);
@@ -89,6 +101,7 @@ const liveService = (0, runner_1.resource)({
89
101
  correlationId: (0, telemetry_chain_1.getCorrelationId)(),
90
102
  });
91
103
  trim(emissions);
104
+ notifyRecordListeners("emission");
92
105
  },
93
106
  getEmissions(input) {
94
107
  const options = toOptions(input);
@@ -119,8 +132,10 @@ const liveService = (0, runner_1.resource)({
119
132
  message,
120
133
  stack,
121
134
  data,
135
+ correlationId: (0, telemetry_chain_1.getCorrelationId)() ?? null,
122
136
  });
123
137
  trim(errors);
138
+ notifyRecordListeners("error");
124
139
  },
125
140
  getErrors(input) {
126
141
  const options = toOptions(input);
@@ -172,6 +187,7 @@ const liveService = (0, runner_1.resource)({
172
187
  correlationId: (0, telemetry_chain_1.getCorrelationId)(),
173
188
  });
174
189
  trim(runs);
190
+ notifyRecordListeners("run");
175
191
  },
176
192
  getRuns(input) {
177
193
  const options = toOptions(input);
@@ -198,11 +214,21 @@ const liveService = (0, runner_1.resource)({
198
214
  const allowed = new Set(options.rootIds.map(String));
199
215
  result = result.filter((r) => allowed.has(String(r.rootId)));
200
216
  }
217
+ if (options.correlationIds && options.correlationIds.length > 0) {
218
+ const allowed = new Set(options.correlationIds.map(String));
219
+ result = result.filter((r) => allowed.has(String(r.correlationId)));
220
+ }
201
221
  return sliceLast(result, options.last);
202
222
  },
203
223
  async describeFlow(taskId) {
204
224
  return (0, durable_runtime_1.describeDurableTaskFromStore)(store, taskId);
205
225
  },
226
+ onRecord(callback) {
227
+ recordListeners.add(callback);
228
+ return () => {
229
+ recordListeners.delete(callback);
230
+ };
231
+ },
206
232
  };
207
233
  },
208
234
  tags: [runner_1.globals.tags.excludeFromGlobalHooks],
@@ -1 +1 @@
1
- {"version":3,"file":"live.resource.js","sourceRoot":"","sources":["../../src/resources/live.resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"live.resource.js","sourceRoot":"","sources":["../../src/resources/live.resource.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,16 @@
1
- import type { Resource, Event, Task, Hook, Middleware, Tag, Error as ErrorModel, AsyncContext as AsyncContextModel } from "../../schema";
1
+ import type { Resource, Event, Task, Hook, Middleware, Tag, Error as ErrorModel, AsyncContext as AsyncContextModel, RunOptions } from "../../schema";
2
2
  import type { Store } from "@bluelibs/runner";
3
3
  import type { DiagnosticItem } from "../../schema";
4
+ export type MiddlewareInterceptorOwnerSnapshot = {
5
+ globalTaskInterceptorOwnerIds: string[];
6
+ globalResourceInterceptorOwnerIds: string[];
7
+ perTaskMiddlewareInterceptorOwnerIds: Record<string, string[]>;
8
+ perResourceMiddlewareInterceptorOwnerIds: Record<string, string[]>;
9
+ };
10
+ export type InterceptorOwnersSnapshot = {
11
+ tasksById: Record<string, string[]>;
12
+ middleware: MiddlewareInterceptorOwnerSnapshot;
13
+ };
4
14
  export type SerializedIntrospector = {
5
15
  tasks: Task[];
6
16
  hooks: Hook[];
@@ -37,6 +47,8 @@ export type SerializedIntrospector = {
37
47
  by: string;
38
48
  }>;
39
49
  rootId?: string | null;
50
+ runOptions?: RunOptions | null;
51
+ interceptorOwners?: InterceptorOwnersSnapshot | null;
40
52
  };
41
53
  export declare class Introspector {
42
54
  tasks: Task[];
@@ -49,8 +61,11 @@ export declare class Introspector {
49
61
  tags: Tag[];
50
62
  errors: ErrorModel[];
51
63
  asyncContexts: AsyncContextModel[];
52
- store: Pick<Store, "tasks" | "resources" | "root"> | null;
64
+ store: Store | null;
65
+ runtime: any | null;
53
66
  rootId: string | null;
67
+ runOptions: RunOptions | null;
68
+ interceptorOwners: InterceptorOwnersSnapshot;
54
69
  taskMap: Map<string, Task>;
55
70
  hookMap: Map<string, Hook>;
56
71
  resourceMap: Map<string, Resource>;
@@ -60,13 +75,22 @@ export declare class Introspector {
60
75
  errorMap: Map<string, ErrorModel>;
61
76
  asyncContextMap: Map<string, AsyncContextModel>;
62
77
  constructor(input: {
63
- store: Pick<Store, "tasks" | "resources" | "root">;
78
+ store: Store;
79
+ runtime?: any;
80
+ runOptions?: RunOptions | null;
64
81
  } | {
65
82
  data: SerializedIntrospector;
66
83
  });
67
84
  private initializeFromData;
68
85
  private buildRunsOptions;
69
86
  getRoot(): Resource;
87
+ /**
88
+ * Returns the effective run options that were used when the application was started.
89
+ * When a live store is available, options are derived from it; otherwise
90
+ * the previously serialized snapshot is used.
91
+ */
92
+ private normalizeRunOptions;
93
+ getRunOptions(): RunOptions;
70
94
  getAll(): (Task | Hook | Resource | Event | Middleware | ErrorModel | AsyncContextModel)[];
71
95
  private populateErrorThrownBy;
72
96
  getEvents(): Event[];
@@ -244,6 +268,12 @@ export declare class Introspector {
244
268
  * Returns the durable resource a task depends on, if any.
245
269
  */
246
270
  getDurableResourceForTask(taskId: string): Resource | null;
271
+ getInterceptorOwnersSnapshot(): InterceptorOwnersSnapshot;
272
+ getTaskInterceptorOwnerIds(taskId: string): string[];
273
+ getTaskInterceptorCount(taskId: string): number;
274
+ hasTaskInterceptors(taskId: string): boolean;
275
+ getMiddlewareInterceptorOwnerIds(middlewareId: string): string[];
276
+ private getTaskInterceptorsFromLiveStore;
247
277
  serialize(): SerializedIntrospector;
248
278
  static deserialize(data: SerializedIntrospector): Introspector;
249
279
  }
@@ -17,7 +17,18 @@ class Introspector {
17
17
  errors = [];
18
18
  asyncContexts = [];
19
19
  store = null;
20
+ runtime = null;
20
21
  rootId = null;
22
+ runOptions = null;
23
+ interceptorOwners = {
24
+ tasksById: {},
25
+ middleware: {
26
+ globalTaskInterceptorOwnerIds: [],
27
+ globalResourceInterceptorOwnerIds: [],
28
+ perTaskMiddlewareInterceptorOwnerIds: {},
29
+ perResourceMiddlewareInterceptorOwnerIds: {},
30
+ },
31
+ };
21
32
  taskMap = new Map();
22
33
  hookMap = new Map();
23
34
  resourceMap = new Map();
@@ -28,11 +39,13 @@ class Introspector {
28
39
  asyncContextMap = new Map();
29
40
  constructor(input) {
30
41
  if ("store" in input) {
31
- // this.store = input.store;
32
- // this.initializeFromStore();
42
+ this.store = input.store;
43
+ this.runtime = input.runtime ?? null;
44
+ this.runOptions = input.runOptions ?? null;
33
45
  }
34
46
  else {
35
47
  this.store = null;
48
+ this.runtime = null;
36
49
  this.initializeFromData(input.data);
37
50
  }
38
51
  }
@@ -49,6 +62,10 @@ class Introspector {
49
62
  ? data.asyncContexts
50
63
  : [];
51
64
  this.rootId = data.rootId ?? null;
65
+ this.runOptions = data.runOptions
66
+ ? this.normalizeRunOptions(data.runOptions)
67
+ : null;
68
+ this.interceptorOwners = data.interceptorOwners ?? this.interceptorOwners;
52
69
  // Maps
53
70
  this.taskMap = (0, introspector_tools_1.buildIdMap)(this.tasks);
54
71
  this.hookMap = (0, introspector_tools_1.buildIdMap)(this.hooks);
@@ -101,6 +118,105 @@ class Introspector {
101
118
  const id = idFromStore ?? this.rootId ?? this.resources[0]?.id;
102
119
  return (0, introspector_tools_1.stampElementKind)(this.resourceMap.get(String(id)), "RESOURCE");
103
120
  }
121
+ /**
122
+ * Returns the effective run options that were used when the application was started.
123
+ * When a live store is available, options are derived from it; otherwise
124
+ * the previously serialized snapshot is used.
125
+ */
126
+ normalizeRunOptions(runOptions) {
127
+ const mode = runOptions.mode ?? "dev";
128
+ const debug = Boolean(runOptions.debug);
129
+ const rootId = runOptions.rootId ?? this.rootId ?? "";
130
+ const logsPrintThreshold = runOptions.logsPrintThreshold !== undefined
131
+ ? runOptions.logsPrintThreshold
132
+ : "info";
133
+ return {
134
+ mode,
135
+ debug,
136
+ debugMode: runOptions.debugMode ?? (debug ? "normal" : "disabled"),
137
+ logsEnabled: typeof runOptions.logsEnabled === "boolean"
138
+ ? runOptions.logsEnabled
139
+ : logsPrintThreshold !== null,
140
+ logsPrintThreshold,
141
+ logsPrintStrategy: runOptions.logsPrintStrategy !== undefined
142
+ ? runOptions.logsPrintStrategy
143
+ : "pretty",
144
+ logsBuffer: Boolean(runOptions.logsBuffer),
145
+ errorBoundary: runOptions.errorBoundary !== undefined
146
+ ? runOptions.errorBoundary
147
+ : null,
148
+ shutdownHooks: runOptions.shutdownHooks !== undefined
149
+ ? runOptions.shutdownHooks
150
+ : null,
151
+ dryRun: Boolean(runOptions.dryRun),
152
+ lazy: Boolean(runOptions.lazy),
153
+ initMode: runOptions.initMode === "parallel" ? "parallel" : "sequential",
154
+ runtimeEventCycleDetection: runOptions.runtimeEventCycleDetection !== undefined
155
+ ? runOptions.runtimeEventCycleDetection
156
+ : null,
157
+ hasOnUnhandledError: Boolean(runOptions.hasOnUnhandledError),
158
+ rootId,
159
+ };
160
+ }
161
+ getRunOptions() {
162
+ if (this.store) {
163
+ const sAny = this.store;
164
+ const rootId = sAny.root?.resource?.id != null
165
+ ? String(sAny.root.resource.id)
166
+ : this.rootId ?? "";
167
+ const hasDebug = !!sAny.resources?.has?.("globals.resources.debug");
168
+ const debugResource = sAny.resources?.get?.("globals.resources.debug");
169
+ const debugConfig = debugResource?.config;
170
+ const debugMode = !hasDebug
171
+ ? "disabled"
172
+ : debugConfig === true
173
+ ? "normal"
174
+ : typeof debugConfig === "string"
175
+ ? debugConfig
176
+ : debugConfig && typeof debugConfig === "object"
177
+ ? "custom"
178
+ : "normal";
179
+ const loggerResource = sAny.resources?.get?.("globals.resources.logger");
180
+ const logger = loggerResource?.value;
181
+ const logsPrintThresholdRaw = logger?.printThreshold;
182
+ const logsPrintStrategyRaw = logger?.printStrategy;
183
+ const logsBufferRaw = logger?.bufferLogs;
184
+ const logsPrintThreshold = logsPrintThresholdRaw == null ? null : String(logsPrintThresholdRaw);
185
+ const logsPrintStrategy = logsPrintStrategyRaw == null ? null : String(logsPrintStrategyRaw);
186
+ const logsBuffer = Boolean(logsBufferRaw);
187
+ const initMode = sAny.preferInitOrderDisposal ? "sequential" : "parallel";
188
+ const runtimeAny = this.runtime;
189
+ const lazy = Boolean(runtimeAny?.lazyOptions?.lazyMode);
190
+ const runtimeEventCycleDetection = runtimeAny?.eventManager?.runtimeEventCycleDetection;
191
+ return {
192
+ mode: sAny.mode ?? "dev",
193
+ debug: hasDebug,
194
+ debugMode,
195
+ logsEnabled: logsPrintThreshold !== null,
196
+ logsPrintThreshold,
197
+ logsPrintStrategy,
198
+ logsBuffer,
199
+ errorBoundary: null,
200
+ shutdownHooks: null,
201
+ dryRun: Boolean(this.runOptions?.dryRun),
202
+ lazy,
203
+ initMode,
204
+ runtimeEventCycleDetection: typeof runtimeEventCycleDetection === "boolean"
205
+ ? runtimeEventCycleDetection
206
+ : null,
207
+ hasOnUnhandledError: typeof sAny.onUnhandledError === "function",
208
+ rootId,
209
+ };
210
+ }
211
+ // Fallback to serialized data
212
+ if (this.runOptions)
213
+ return this.normalizeRunOptions(this.runOptions);
214
+ return this.normalizeRunOptions({
215
+ mode: "dev",
216
+ debug: false,
217
+ rootId: this.rootId ?? "",
218
+ });
219
+ }
104
220
  getAll() {
105
221
  return [
106
222
  ...this.tasks,
@@ -564,6 +680,45 @@ class Introspector {
564
680
  return durableDepId ? this.getResource(durableDepId) : null;
565
681
  }
566
682
  // Serialization API
683
+ getInterceptorOwnersSnapshot() {
684
+ return this.interceptorOwners;
685
+ }
686
+ getTaskInterceptorOwnerIds(taskId) {
687
+ const taskInterceptors = this.getTaskInterceptorsFromLiveStore(taskId);
688
+ if (taskInterceptors != null) {
689
+ return Array.from(new Set(taskInterceptors
690
+ .map((record) => record.ownerResourceId)
691
+ .filter((value) => Boolean(value))));
692
+ }
693
+ return this.interceptorOwners.tasksById[taskId] ?? [];
694
+ }
695
+ getTaskInterceptorCount(taskId) {
696
+ const taskInterceptors = this.getTaskInterceptorsFromLiveStore(taskId);
697
+ if (taskInterceptors != null) {
698
+ return taskInterceptors.length;
699
+ }
700
+ const task = this.taskMap.get(taskId);
701
+ if (typeof task?.interceptorCount === "number") {
702
+ return task.interceptorCount;
703
+ }
704
+ return (this.interceptorOwners.tasksById[taskId] ?? []).length;
705
+ }
706
+ hasTaskInterceptors(taskId) {
707
+ return this.getTaskInterceptorCount(taskId) > 0;
708
+ }
709
+ getMiddlewareInterceptorOwnerIds(middlewareId) {
710
+ const taskOwners = this.interceptorOwners.middleware.perTaskMiddlewareInterceptorOwnerIds[middlewareId] ?? [];
711
+ const resourceOwners = this.interceptorOwners.middleware
712
+ .perResourceMiddlewareInterceptorOwnerIds[middlewareId] ?? [];
713
+ return Array.from(new Set([...taskOwners, ...resourceOwners]));
714
+ }
715
+ getTaskInterceptorsFromLiveStore(taskId) {
716
+ const taskStoreEntry = this.store?.tasks.get(taskId);
717
+ if (!taskStoreEntry || !Array.isArray(taskStoreEntry.interceptors)) {
718
+ return null;
719
+ }
720
+ return taskStoreEntry.interceptors;
721
+ }
567
722
  serialize() {
568
723
  return {
569
724
  tasks: this.tasks,
@@ -584,6 +739,8 @@ class Introspector {
584
739
  rootId: this.store?.root?.resource?.id != null
585
740
  ? String(this.store.root.resource.id)
586
741
  : this.rootId,
742
+ runOptions: this.getRunOptions(),
743
+ interceptorOwners: this.getInterceptorOwnersSnapshot(),
587
744
  };
588
745
  }
589
746
  static deserialize(data) {