@machinemetrics/mm-erp-sdk 0.9.2-beta.0 → 0.9.2-beta.1

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 (26) hide show
  1. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.d.ts.map +1 -1
  2. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js +3 -1
  3. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js.map +1 -1
  4. package/dist/services/data-sync-service/jobs/from-erp.d.ts.map +1 -1
  5. package/dist/services/data-sync-service/jobs/from-erp.js +3 -1
  6. package/dist/services/data-sync-service/jobs/from-erp.js.map +1 -1
  7. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.d.ts.map +1 -1
  8. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js +7 -2
  9. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js.map +1 -1
  10. package/dist/services/data-sync-service/jobs/run-migrations.d.ts.map +1 -1
  11. package/dist/services/data-sync-service/jobs/run-migrations.js +7 -2
  12. package/dist/services/data-sync-service/jobs/run-migrations.js.map +1 -1
  13. package/dist/services/data-sync-service/jobs/to-erp.d.ts.map +1 -1
  14. package/dist/services/data-sync-service/jobs/to-erp.js +3 -1
  15. package/dist/services/data-sync-service/jobs/to-erp.js.map +1 -1
  16. package/dist/services/data-sync-service/utils/bree-worker-complete.d.ts +7 -0
  17. package/dist/services/data-sync-service/utils/bree-worker-complete.d.ts.map +1 -0
  18. package/dist/services/data-sync-service/utils/bree-worker-complete.js +12 -0
  19. package/dist/services/data-sync-service/utils/bree-worker-complete.js.map +1 -0
  20. package/package.json +1 -1
  21. package/src/services/data-sync-service/jobs/clean-up-expired-cache.ts +3 -1
  22. package/src/services/data-sync-service/jobs/from-erp.ts +3 -1
  23. package/src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts +8 -3
  24. package/src/services/data-sync-service/jobs/run-migrations.ts +9 -4
  25. package/src/services/data-sync-service/jobs/to-erp.ts +3 -1
  26. package/src/services/data-sync-service/utils/bree-worker-complete.ts +12 -0
@@ -1 +1 @@
1
- {"version":3,"file":"clean-up-expired-cache.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/clean-up-expired-cache.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAUvB,QAAA,MAAM,IAAI,qBAuBT,CAAC;AAoBF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"clean-up-expired-cache.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/clean-up-expired-cache.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAWvB,QAAA,MAAM,IAAI,qBAuBT,CAAC;AAqBF,eAAe,IAAI,CAAC"}
@@ -4,6 +4,7 @@ import { SQLiteCoordinator } from "../../sqlite-service/index.js";
4
4
  import { sdkLogger as logger } from "../../../services/reporting-service/logger.js";
5
5
  import { getEnvString } from "../../../utils/env.js";
6
6
  import { summarizeError } from "../../../utils/error-utils.js";
7
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
7
8
  // Configure the logger with the correct log level
8
9
  logger.level = getEnvString("LOG_LEVEL", "info");
9
10
  const main = async () => {
@@ -38,9 +39,10 @@ if (isMainModule) {
38
39
  // This is called when Bree runs this file as a worker
39
40
  try {
40
41
  await main();
42
+ signalBreeJobComplete();
41
43
  }
42
44
  catch {
43
- process.exitCode = 1; // prefer exitCode so stdout/stderr can flush
45
+ process.exit(1);
44
46
  }
45
47
  }
46
48
  export default main;
@@ -1 +1 @@
1
- {"version":3,"file":"clean-up-expired-cache.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/clean-up-expired-cache.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CACT,+DAA+D,CAChE,CAAC;QAEF,MAAM,iBAAiB,CAAC,eAAe,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,YAAY,CAAC,oBAAoB,EAAE,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CACT,gEAAgE,CACjE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE;YACnE,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,CAAC,yCAAyC;IACxD,CAAC;YAAS,CAAC;QACT,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC,CAAC;AAEF,6DAA6D;AAC7D,kFAAkF;AAClF,qEAAqE;AACrE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,UAAU,eAAe,EAAE,CAAC,CAAC,CAAE,uCAAuC;IACtE,WAAW,eAAe,EAAE,CAAC,CAAE,gDAAgD;AACjF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,sDAAsD;IACtD,IAAI,CAAC;QACH,MAAM,IAAI,EAAE,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,6CAA6C;IACrE,CAAC;AACH,CAAC;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"clean-up-expired-cache.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/clean-up-expired-cache.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CACT,+DAA+D,CAChE,CAAC;QAEF,MAAM,iBAAiB,CAAC,eAAe,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,YAAY,CAAC,oBAAoB,EAAE,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CACT,gEAAgE,CACjE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE;YACnE,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,CAAC,yCAAyC;IACxD,CAAC;YAAS,CAAC;QACT,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC,CAAC;AAEF,6DAA6D;AAC7D,kFAAkF;AAClF,qEAAqE;AACrE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,UAAU,eAAe,EAAE,CAAC,CAAC,CAAE,uCAAuC;IACtE,WAAW,eAAe,EAAE,CAAC,CAAE,gDAAgD;AACjF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,sDAAsD;IACtD,IAAI,CAAC;QACH,MAAM,IAAI,EAAE,CAAC;QACb,qBAAqB,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"from-erp.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/from-erp.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AASvB,QAAA,MAAM,IAAI,qBA6BT,CAAC;AAoBF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"from-erp.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/from-erp.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAUvB,QAAA,MAAM,IAAI,qBA6BT,CAAC;AAqBF,eAAe,IAAI,CAAC"}
@@ -3,6 +3,7 @@ import { sdkLogger as logger } from "../../../services/reporting-service/logger.
3
3
  import { createConnectorFromPath } from "../../../utils/connector-factory.js";
4
4
  import { getEnvString } from "../../../utils/env.js";
5
5
  import { summarizeError } from "../../../utils/error-utils.js";
6
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
6
7
  // Configure the logger with the correct log level
7
8
  logger.level = getEnvString("LOG_LEVEL", "info");
8
9
  const main = async () => {
@@ -42,9 +43,10 @@ if (isMainModule) {
42
43
  // This is called when Bree runs this file as a worker
43
44
  try {
44
45
  await main();
46
+ signalBreeJobComplete();
45
47
  }
46
48
  catch {
47
- process.exitCode = 1; // prefer exitCode so stdout/stderr can flush
49
+ process.exit(1);
48
50
  }
49
51
  }
50
52
  export default main;
@@ -1 +1 @@
1
- {"version":3,"file":"from-erp.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/from-erp.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAE/D,uDAAuD;QACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAEjD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,+CAA+C;QAC/C,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAE/D,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;QAE9B,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IAClE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,kEAAkE;QAClE,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;YACrD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QAEH,MAAM,KAAK,CAAC,CAAC,yCAAyC;IACxD,CAAC;AACH,CAAC,CAAC;AAEF,6DAA6D;AAC7D,kFAAkF;AAClF,qEAAqE;AACrE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,UAAU,eAAe,EAAE,CAAC,CAAC,CAAE,uCAAuC;IACtE,WAAW,eAAe,EAAE,CAAC,CAAE,gDAAgD;AACjF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,sDAAsD;IACtD,IAAI,CAAC;QACH,MAAM,IAAI,EAAE,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,6CAA6C;IACrE,CAAC;AACH,CAAC;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"from-erp.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/from-erp.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAE/D,uDAAuD;QACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAEjD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,+CAA+C;QAC/C,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAE/D,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;QAE9B,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IAClE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,kEAAkE;QAClE,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;YACrD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QAEH,MAAM,KAAK,CAAC,CAAC,yCAAyC;IACxD,CAAC;AACH,CAAC,CAAC;AAEF,6DAA6D;AAC7D,kFAAkF;AAClF,qEAAqE;AACrE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,UAAU,eAAe,EAAE,CAAC,CAAC,CAAE,uCAAuC;IACtE,WAAW,eAAe,EAAE,CAAC,CAAE,gDAAgD;AACjF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,sDAAsD;IACtD,IAAI,CAAC;QACH,MAAM,IAAI,EAAE,CAAC;QACb,qBAAqB,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"retry-failed-labor-tickets.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAUvB,QAAA,MAAM,IAAI,qBA4BT,CAAC;AAkBF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"retry-failed-labor-tickets.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAWvB,QAAA,MAAM,IAAI,qBA4BT,CAAC;AAsBF,eAAe,IAAI,CAAC"}
@@ -3,6 +3,7 @@ import { sdkLogger as logger } from "../../../services/reporting-service/logger.
3
3
  import { getEnvString } from "../../../utils/env.js";
4
4
  import { createConnectorFromPath } from "../../../utils/connector-factory.js";
5
5
  import { summarizeError } from "../../../utils/error-utils.js";
6
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
6
7
  // Configure the logger with the correct log level
7
8
  logger.level = getEnvString("LOG_LEVEL", "info");
8
9
  const main = async () => {
@@ -36,8 +37,12 @@ const fileUrl = normalizedArgv1.startsWith('/') ?
36
37
  const isMainModule = import.meta.url === fileUrl;
37
38
  if (isMainModule) {
38
39
  // This is called when Bree runs this file as a worker
39
- main().catch(() => {
40
- process.exitCode = 1;
40
+ main()
41
+ .then(() => {
42
+ signalBreeJobComplete();
43
+ })
44
+ .catch(() => {
45
+ process.exit(1);
41
46
  });
42
47
  }
43
48
  export default main;
@@ -1 +1 @@
1
- {"version":3,"file":"retry-failed-labor-tickets.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CACT,mEAAmE,CACpE,CAAC;QAEF,uDAAuD;QACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAEjD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,+CAA+C;QAC/C,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAE/D,MAAM,SAAS,CAAC,uBAAuB,EAAE,CAAC;QAC1C,MAAM,SAAS,CAAC,gCAAgC,EAAE,CAAC;QAEnD,MAAM,CAAC,IAAI,CACT,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,0DAA0D,EAAE;YACvE,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,CAAC,yCAAyC;IACxD,CAAC;AACH,CAAC,CAAC;AAEF,6DAA6D;AAC7D,kFAAkF;AAClF,qEAAqE;AACrE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,UAAU,eAAe,EAAE,CAAC,CAAC,CAAE,uCAAuC;IACtE,WAAW,eAAe,EAAE,CAAC,CAAE,gDAAgD;AACjF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,sDAAsD;IACtD,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QAChB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"retry-failed-labor-tickets.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CACT,mEAAmE,CACpE,CAAC;QAEF,uDAAuD;QACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAEjD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,+CAA+C;QAC/C,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAE/D,MAAM,SAAS,CAAC,uBAAuB,EAAE,CAAC;QAC1C,MAAM,SAAS,CAAC,gCAAgC,EAAE,CAAC;QAEnD,MAAM,CAAC,IAAI,CACT,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,0DAA0D,EAAE;YACvE,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,CAAC,yCAAyC;IACxD,CAAC;AACH,CAAC,CAAC;AAEF,6DAA6D;AAC7D,kFAAkF;AAClF,qEAAqE;AACrE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,UAAU,eAAe,EAAE,CAAC,CAAC,CAAE,uCAAuC;IACtE,WAAW,eAAe,EAAE,CAAC,CAAE,gDAAgD;AACjF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,sDAAsD;IACtD,IAAI,EAAE;SACH,IAAI,CAAC,GAAG,EAAE;QACT,qBAAqB,EAAE,CAAC;IAC1B,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-migrations.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/run-migrations.ts"],"names":[],"mappings":"AAUA,wBAA8B,aAAa,kBAQ1C"}
1
+ {"version":3,"file":"run-migrations.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/run-migrations.ts"],"names":[],"mappings":"AAWA,wBAA8B,aAAa,kBAQ1C"}
@@ -2,6 +2,7 @@ import knex from "knex";
2
2
  import { sdkLogger as logger } from "../../reporting-service/logger.js";
3
3
  import config from "../../../knexfile.js";
4
4
  import { getEnvString } from "../../../utils/env.js";
5
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
5
6
  // Configure the logger with the correct log level
6
7
  logger.level = getEnvString("LOG_LEVEL", "info");
7
8
  const db = knex(config.local);
@@ -22,9 +23,13 @@ const fileUrl = normalizedArgv1.startsWith("/")
22
23
  : `file:///${normalizedArgv1}`;
23
24
  const isMainModule = import.meta.url === fileUrl;
24
25
  if (isMainModule) {
25
- runMigrations().catch((error) => {
26
+ runMigrations()
27
+ .then(() => {
28
+ signalBreeJobComplete();
29
+ })
30
+ .catch((error) => {
26
31
  logger.error("Error running migrations:", error);
27
- process.exitCode = 1;
32
+ process.exit(1);
28
33
  });
29
34
  }
30
35
  //# sourceMappingURL=run-migrations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-migrations.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/run-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,IAAc,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,EAAE,GAAS,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAEpC,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa;IACzC,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACtC,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;IAC7C,CAAC,CAAC,UAAU,eAAe,EAAE;IAC7B,CAAC,CAAC,WAAW,eAAe,EAAE,CAAC;AACjC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"run-migrations.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/run-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,IAAc,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,kDAAkD;AAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,EAAE,GAAS,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAEpC,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,aAAa;IACzC,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACtC,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;IAC7C,CAAC,CAAC,UAAU,eAAe,EAAE;IAC7B,CAAC,CAAC,WAAW,eAAe,EAAE,CAAC;AACjC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,aAAa,EAAE;SACZ,IAAI,CAAC,GAAG,EAAE;QACT,qBAAqB,EAAE,CAAC;IAC1B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"to-erp.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/to-erp.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAsBvB,QAAA,MAAM,IAAI,qBAqCT,CAAC;AAoBF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"to-erp.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/to-erp.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAuBvB,QAAA,MAAM,IAAI,qBAqCT,CAAC;AAqBF,eAAe,IAAI,CAAC"}
@@ -6,6 +6,7 @@ import { summarizeError } from "../../../utils/error-utils.js";
6
6
  import knex from "knex";
7
7
  import config from "../../../knexfile.js";
8
8
  import { SQLiteCoordinator } from "../../sqlite-service/index.js";
9
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
9
10
  // Configure the logger with the correct log level
10
11
  logger.level = getEnvString("LOG_LEVEL", "info");
11
12
  const ensureLocalDbMigrated = async () => {
@@ -61,9 +62,10 @@ if (isMainModule) {
61
62
  // This is called when Bree runs this file as a worker
62
63
  try {
63
64
  await main();
65
+ signalBreeJobComplete();
64
66
  }
65
67
  catch {
66
- process.exitCode = 1; // prefer exitCode so stdout/stderr can flush
68
+ process.exit(1);
67
69
  }
68
70
  }
69
71
  export default main;
@@ -1 +1 @@
1
- {"version":3,"file":"to-erp.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/to-erp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"to-erp.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/jobs/to-erp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Tell Bree the worker finished successfully so it removes the job from its
3
+ * internal workers map. Without this (or process.exit), open handles can keep
4
+ * the worker thread alive and block the next scheduled run ("already running").
5
+ */
6
+ export declare function signalBreeJobComplete(): void;
7
+ //# sourceMappingURL=bree-worker-complete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bree-worker-complete.d.ts","sourceRoot":"","sources":["../../../../src/services/data-sync-service/utils/bree-worker-complete.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAI5C"}
@@ -0,0 +1,12 @@
1
+ import { parentPort } from "node:worker_threads";
2
+ /**
3
+ * Tell Bree the worker finished successfully so it removes the job from its
4
+ * internal workers map. Without this (or process.exit), open handles can keep
5
+ * the worker thread alive and block the next scheduled run ("already running").
6
+ */
7
+ export function signalBreeJobComplete() {
8
+ if (parentPort) {
9
+ parentPort.postMessage("done");
10
+ }
11
+ }
12
+ //# sourceMappingURL=bree-worker-complete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bree-worker-complete.js","sourceRoot":"","sources":["../../../../src/services/data-sync-service/utils/bree-worker-complete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,IAAI,UAAU,EAAE,CAAC;QACf,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@machinemetrics/mm-erp-sdk",
3
3
  "description": "A library for syncing data between MachineMetrics and ERP systems",
4
- "version": "0.9.2-beta.0",
4
+ "version": "0.9.2-beta.1",
5
5
  "license": "MIT",
6
6
  "author": "machinemetrics",
7
7
  "main": "dist/index.js",
@@ -4,6 +4,7 @@ import { SQLiteCoordinator } from "../../sqlite-service/index.js";
4
4
  import { sdkLogger as logger } from "../../../services/reporting-service/logger.js";
5
5
  import { getEnvString } from "../../../utils/env.js";
6
6
  import { summarizeError } from "../../../utils/error-utils.js";
7
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
7
8
 
8
9
  // Configure the logger with the correct log level
9
10
  logger.level = getEnvString("LOG_LEVEL", "info");
@@ -46,8 +47,9 @@ if (isMainModule) {
46
47
  // This is called when Bree runs this file as a worker
47
48
  try {
48
49
  await main();
50
+ signalBreeJobComplete();
49
51
  } catch {
50
- process.exitCode = 1; // prefer exitCode so stdout/stderr can flush
52
+ process.exit(1);
51
53
  }
52
54
  }
53
55
 
@@ -3,6 +3,7 @@ import { sdkLogger as logger } from "../../../services/reporting-service/logger.
3
3
  import { createConnectorFromPath } from "../../../utils/connector-factory.js";
4
4
  import { getEnvString } from "../../../utils/env.js";
5
5
  import { summarizeError } from "../../../utils/error-utils.js";
6
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
6
7
 
7
8
  // Configure the logger with the correct log level
8
9
  logger.level = getEnvString("LOG_LEVEL", "info");
@@ -51,8 +52,9 @@ if (isMainModule) {
51
52
  // This is called when Bree runs this file as a worker
52
53
  try {
53
54
  await main();
55
+ signalBreeJobComplete();
54
56
  } catch {
55
- process.exitCode = 1; // prefer exitCode so stdout/stderr can flush
57
+ process.exit(1);
56
58
  }
57
59
  }
58
60
 
@@ -4,6 +4,7 @@ import { sdkLogger as logger } from "../../../services/reporting-service/logger.
4
4
  import { getEnvString } from "../../../utils/env.js";
5
5
  import { createConnectorFromPath } from "../../../utils/connector-factory.js";
6
6
  import { summarizeError } from "../../../utils/error-utils.js";
7
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
7
8
 
8
9
  // Configure the logger with the correct log level
9
10
  logger.level = getEnvString("LOG_LEVEL", "info");
@@ -49,9 +50,13 @@ const isMainModule = import.meta.url === fileUrl;
49
50
 
50
51
  if (isMainModule) {
51
52
  // This is called when Bree runs this file as a worker
52
- main().catch(() => {
53
- process.exitCode = 1;
54
- });
53
+ main()
54
+ .then(() => {
55
+ signalBreeJobComplete();
56
+ })
57
+ .catch(() => {
58
+ process.exit(1);
59
+ });
55
60
  }
56
61
 
57
62
  export default main;
@@ -2,6 +2,7 @@ import knex, { Knex } from "knex";
2
2
  import { sdkLogger as logger } from "../../reporting-service/logger.js";
3
3
  import config from "../../../knexfile.js";
4
4
  import { getEnvString } from "../../../utils/env.js";
5
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
5
6
 
6
7
  // Configure the logger with the correct log level
7
8
  logger.level = getEnvString("LOG_LEVEL", "info");
@@ -26,8 +27,12 @@ const fileUrl = normalizedArgv1.startsWith("/")
26
27
  const isMainModule = import.meta.url === fileUrl;
27
28
 
28
29
  if (isMainModule) {
29
- runMigrations().catch((error) => {
30
- logger.error("Error running migrations:", error);
31
- process.exitCode = 1;
32
- });
30
+ runMigrations()
31
+ .then(() => {
32
+ signalBreeJobComplete();
33
+ })
34
+ .catch((error) => {
35
+ logger.error("Error running migrations:", error);
36
+ process.exit(1);
37
+ });
33
38
  }
@@ -7,6 +7,7 @@ import { summarizeError } from "../../../utils/error-utils.js";
7
7
  import knex from "knex";
8
8
  import config from "../../../knexfile.js";
9
9
  import { SQLiteCoordinator } from "../../sqlite-service/index.js";
10
+ import { signalBreeJobComplete } from "../utils/bree-worker-complete.js";
10
11
 
11
12
  // Configure the logger with the correct log level
12
13
  logger.level = getEnvString("LOG_LEVEL", "info");
@@ -72,8 +73,9 @@ if (isMainModule) {
72
73
  // This is called when Bree runs this file as a worker
73
74
  try {
74
75
  await main();
76
+ signalBreeJobComplete();
75
77
  } catch {
76
- process.exitCode = 1; // prefer exitCode so stdout/stderr can flush
78
+ process.exit(1);
77
79
  }
78
80
  }
79
81
 
@@ -0,0 +1,12 @@
1
+ import { parentPort } from "node:worker_threads";
2
+
3
+ /**
4
+ * Tell Bree the worker finished successfully so it removes the job from its
5
+ * internal workers map. Without this (or process.exit), open handles can keep
6
+ * the worker thread alive and block the next scheduled run ("already running").
7
+ */
8
+ export function signalBreeJobComplete(): void {
9
+ if (parentPort) {
10
+ parentPort.postMessage("done");
11
+ }
12
+ }