hikoutei 0.9.16 → 0.9.18

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 (33) hide show
  1. package/dist/contracts/domain/errors/index.d.ts +2 -0
  2. package/dist/contracts/domain/errors/index.d.ts.map +1 -1
  3. package/dist/contracts/domain/errors/index.js +1 -0
  4. package/dist/contracts/domain/errors/index.js.map +1 -1
  5. package/dist/contracts/domain/errors/input.d.ts +22 -0
  6. package/dist/contracts/domain/errors/input.d.ts.map +1 -0
  7. package/dist/contracts/domain/errors/input.js +31 -0
  8. package/dist/contracts/domain/errors/input.js.map +1 -0
  9. package/dist/contracts/identity/types.d.ts.map +1 -1
  10. package/dist/contracts/identity/types.js +4 -3
  11. package/dist/contracts/identity/types.js.map +1 -1
  12. package/dist/contracts/storage/sql.d.ts.map +1 -1
  13. package/dist/contracts/storage/sql.js +2 -1
  14. package/dist/contracts/storage/sql.js.map +1 -1
  15. package/dist/sync-engine/shared/observability/logEvents.d.ts +2 -2
  16. package/dist/sync-engine/shared/observability/logEvents.d.ts.map +1 -1
  17. package/dist/sync-engine/shared/observability/logEvents.js +14 -0
  18. package/dist/sync-engine/shared/observability/logEvents.js.map +1 -1
  19. package/dist/sync-engine/sync/outbound/dispatcherSupport.d.ts.map +1 -1
  20. package/dist/sync-engine/sync/outbound/dispatcherSupport.js +4 -3
  21. package/dist/sync-engine/sync/outbound/dispatcherSupport.js.map +1 -1
  22. package/dist/sync-engine/sync/outbound/errors.d.ts +24 -0
  23. package/dist/sync-engine/sync/outbound/errors.d.ts.map +1 -0
  24. package/dist/sync-engine/sync/outbound/errors.js +33 -0
  25. package/dist/sync-engine/sync/outbound/errors.js.map +1 -0
  26. package/dist/sync-engine/sync/service/SyncPollingSupervisor.d.ts.map +1 -1
  27. package/dist/sync-engine/sync/service/SyncPollingSupervisor.js +3 -2
  28. package/dist/sync-engine/sync/service/SyncPollingSupervisor.js.map +1 -1
  29. package/dist/sync-engine/sync/service/errors.d.ts +14 -0
  30. package/dist/sync-engine/sync/service/errors.d.ts.map +1 -1
  31. package/dist/sync-engine/sync/service/errors.js +23 -0
  32. package/dist/sync-engine/sync/service/errors.js.map +1 -1
  33. package/package.json +1 -1
@@ -4,4 +4,6 @@ export { DuplicateChangedFieldError } from "./identity.js";
4
4
  export { EVALUATION_ERROR_CODES, EvaluationContractError, } from "./evaluation.js";
5
5
  export type { EvaluationErrorCode } from "./evaluation.js";
6
6
  export { StableEncodingError } from "./stableEncoding.js";
7
+ export { CONTRACTS_INPUT_ERROR_CODES, ContractsInputError, } from "./input.js";
8
+ export type { ContractsInputErrorCode } from "./input.js";
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC"}
@@ -2,4 +2,5 @@ export { CoreErrorException } from "./types.js";
2
2
  export { DuplicateChangedFieldError } from "./identity.js";
3
3
  export { EVALUATION_ERROR_CODES, EvaluationContractError, } from "./evaluation.js";
4
4
  export { StableEncodingError } from "./stableEncoding.js";
5
+ export { CONTRACTS_INPUT_ERROR_CODES, ContractsInputError, } from "./input.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Structured input validation errors for the contracts leaf.
3
+ *
4
+ * These mirror the kernel's `KernelInputError` pattern: a `TypeError`
5
+ * subclass carrying a stable error code and a label parameterised message.
6
+ * The contracts leaf and the kernel each own their own class so neither
7
+ * package depends on the other; message text is byte-identical by convention.
8
+ */
9
+ /** Stable error codes for contracts-leaf input validation. */
10
+ export declare const CONTRACTS_INPUT_ERROR_CODES: {
11
+ readonly NON_EMPTY_STRING_REQUIRED: "contracts_non_empty_string_required";
12
+ readonly NON_NEGATIVE_INTEGER_REQUIRED: "contracts_non_negative_integer_required";
13
+ readonly SHA256_HASH_REQUIRED: "contracts_sha256_hex_required";
14
+ readonly OBJECT_REQUIRED: "contracts_object_required";
15
+ };
16
+ export type ContractsInputErrorCode = (typeof CONTRACTS_INPUT_ERROR_CODES)[keyof typeof CONTRACTS_INPUT_ERROR_CODES];
17
+ /** Typed error for contracts-leaf input validation failures (identity, SQL row decoding). */
18
+ export declare class ContractsInputError extends TypeError {
19
+ readonly code: ContractsInputErrorCode;
20
+ constructor(code: ContractsInputErrorCode, label: string);
21
+ }
22
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/domain/errors/input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,8DAA8D;AAC9D,eAAO,MAAM,2BAA2B;;;;;CAK9B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,OAAO,2BAA2B,CAAC,CAAC;AAajF,6FAA6F;AAC7F,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;gBAE3B,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM;CAKzD"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Structured input validation errors for the contracts leaf.
3
+ *
4
+ * These mirror the kernel's `KernelInputError` pattern: a `TypeError`
5
+ * subclass carrying a stable error code and a label parameterised message.
6
+ * The contracts leaf and the kernel each own their own class so neither
7
+ * package depends on the other; message text is byte-identical by convention.
8
+ */
9
+ /** Stable error codes for contracts-leaf input validation. */
10
+ export const CONTRACTS_INPUT_ERROR_CODES = {
11
+ NON_EMPTY_STRING_REQUIRED: "contracts_non_empty_string_required",
12
+ NON_NEGATIVE_INTEGER_REQUIRED: "contracts_non_negative_integer_required",
13
+ SHA256_HASH_REQUIRED: "contracts_sha256_hex_required",
14
+ OBJECT_REQUIRED: "contracts_object_required",
15
+ };
16
+ const contractsInputMessages = {
17
+ [CONTRACTS_INPUT_ERROR_CODES.NON_EMPTY_STRING_REQUIRED]: (label) => `${label} must be a non-empty string`,
18
+ [CONTRACTS_INPUT_ERROR_CODES.NON_NEGATIVE_INTEGER_REQUIRED]: (label) => `${label} must be a non-negative safe integer`,
19
+ [CONTRACTS_INPUT_ERROR_CODES.SHA256_HASH_REQUIRED]: (label) => `${label} must be a SHA-256 hexadecimal hash`,
20
+ [CONTRACTS_INPUT_ERROR_CODES.OBJECT_REQUIRED]: (label) => `${label} must be an object`,
21
+ };
22
+ /** Typed error for contracts-leaf input validation failures (identity, SQL row decoding). */
23
+ export class ContractsInputError extends TypeError {
24
+ code;
25
+ constructor(code, label) {
26
+ super(contractsInputMessages[code](label));
27
+ this.name = "ContractsInputError";
28
+ this.code = code;
29
+ }
30
+ }
31
+ //# sourceMappingURL=input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/domain/errors/input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,yBAAyB,EAAE,qCAAqC;IAChE,6BAA6B,EAAE,yCAAyC;IACxE,oBAAoB,EAAE,+BAA+B;IACrD,eAAe,EAAE,2BAA2B;CACpC,CAAC;AAKX,MAAM,sBAAsB,GAA+D;IACzF,CAAC,2BAA2B,CAAC,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CACjE,GAAG,KAAK,6BAA6B;IACvC,CAAC,2BAA2B,CAAC,6BAA6B,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CACrE,GAAG,KAAK,sCAAsC;IAChD,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAC5D,GAAG,KAAK,qCAAqC;IAC/C,CAAC,2BAA2B,CAAC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CACvD,GAAG,KAAK,oBAAoB;CAC/B,CAAC;AAEF,6FAA6F;AAC7F,MAAM,OAAO,mBAAoB,SAAQ,SAAS;IACvC,IAAI,CAA0B;IAEvC,YAAY,IAA6B,EAAE,KAAa;QACtD,KAAK,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,CAAC,MAAM,mBAAmB,EAAE,OAAO,MAAM,CAAC;AACjD,OAAO,CAAC,MAAM,mBAAmB,EAAE,OAAO,MAAM,CAAC;AAEjD,uDAAuD;AACvD,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,MAAM,IAAI,MAAM,GAAG;IAC1D,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC;CACvC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,UAAU,IAAI,MAAM,GAAG;IACzE,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAC3D,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,qBAAqB,CAAC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;AACpE,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAC3D,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAC/D,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AACjE,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AACjE,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;AAC7D,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAC/D,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAEhD,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,KAAK,SAAS,MAAM,EACxD,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,GACZ,cAAc,CAAC,KAAK,CAAC,CAKvB;AAED,yEAAyE;AACzE,wBAAgB,uBAAuB,CAAC,KAAK,SAAS,MAAM,GAAG,UAAU,EACvE,KAAK,EAAE,OAAO,EACd,KAAK,SAAa,GACjB,gBAAgB,CAAC,KAAK,CAAC,CAKzB;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAE5E;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,KAAK,SAAS,MAAM,EAC9C,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,GACZ,cAAc,CAAC,KAAK,CAAC,CAKvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,OAAO,CAAC,MAAM,mBAAmB,EAAE,OAAO,MAAM,CAAC;AACjD,OAAO,CAAC,MAAM,mBAAmB,EAAE,OAAO,MAAM,CAAC;AAEjD,uDAAuD;AACvD,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,MAAM,IAAI,MAAM,GAAG;IAC1D,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC;CACvC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,UAAU,IAAI,MAAM,GAAG;IACzE,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAC3D,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,qBAAqB,CAAC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;AACpE,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAC3D,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAC/D,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AACjE,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AACjE,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;AAC7D,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAC/D,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAEhD,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,KAAK,SAAS,MAAM,EACxD,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,GACZ,cAAc,CAAC,KAAK,CAAC,CAKvB;AAED,yEAAyE;AACzE,wBAAgB,uBAAuB,CAAC,KAAK,SAAS,MAAM,GAAG,UAAU,EACvE,KAAK,EAAE,OAAO,EACd,KAAK,SAAa,GACjB,gBAAgB,CAAC,KAAK,CAAC,CAKzB;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAE5E;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,KAAK,SAAS,MAAM,EAC9C,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,GACZ,cAAc,CAAC,KAAK,CAAC,CAKvB"}
@@ -6,17 +6,18 @@
6
6
  * boundaries. They are intentionally not exported from the public root API.
7
7
  */
8
8
  import { isNonEmptyString, isNonNegativeSafeInteger, } from "../validation.js";
9
+ import { CONTRACTS_INPUT_ERROR_CODES, ContractsInputError, } from "../domain/errors/input.js";
9
10
  /** Promotes a validated non-empty string to one semantic string type. */
10
11
  export function requireSemanticString(value, label) {
11
12
  if (!isNonEmptyString(value)) {
12
- throw new TypeError(`${label} must be a non-empty string`);
13
+ throw new ContractsInputError(CONTRACTS_INPUT_ERROR_CODES.NON_EMPTY_STRING_REQUIRED, label);
13
14
  }
14
15
  return value;
15
16
  }
16
17
  /** Promotes a validated non-negative safe integer to a revision type. */
17
18
  export function requireSemanticRevision(value, label = "revision") {
18
19
  if (!isNonNegativeSafeInteger(value)) {
19
- throw new TypeError(`${label} must be a non-negative safe integer`);
20
+ throw new ContractsInputError(CONTRACTS_INPUT_ERROR_CODES.NON_NEGATIVE_INTEGER_REQUIRED, label);
20
21
  }
21
22
  return value;
22
23
  }
@@ -27,7 +28,7 @@ export function isSemanticRevision(value) {
27
28
  /** Promotes a stable hash after checking the representation used by storage. */
28
29
  export function requireHash(value, label) {
29
30
  if (typeof value !== "string" || !/^[0-9a-f]{64}$/i.test(value)) {
30
- throw new TypeError(`${label} must be a SHA-256 hexadecimal hash`);
31
+ throw new ContractsInputError(CONTRACTS_INPUT_ERROR_CODES.SHA256_HASH_REQUIRED, label);
31
32
  }
32
33
  return value;
33
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AA8B1B,yEAAyE;AACzE,MAAM,UAAU,qBAAqB,CACnC,KAAc,EACd,KAAa;IAEb,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,6BAA6B,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,KAA8B,CAAC;AACxC,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,uBAAuB,CACrC,KAAc,EACd,KAAK,GAAG,UAAU;IAElB,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,sCAAsC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,WAAW,CACzB,KAAc,EACd,KAAa;IAEb,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,qCAAqC,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,KAA8B,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AA8BnC,yEAAyE;AACzE,MAAM,UAAU,qBAAqB,CACnC,KAAc,EACd,KAAa;IAEb,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,mBAAmB,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,KAA8B,CAAC;AACxC,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,uBAAuB,CACrC,KAAc,EACd,KAAK,GAAG,UAAU;IAElB,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,mBAAmB,CAAC,2BAA2B,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,WAAW,CACzB,KAAc,EACd,KAAa;IAEb,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,mBAAmB,CAAC,2BAA2B,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,KAA8B,CAAC;AACxC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../src/storage/sql.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;AAElF,8EAA8E;AAC9E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtD,4EAA4E;AAC5E,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvD,6EAA6E;AAC7E,MAAM,MAAM,aAAa,CAAC,GAAG,SAAS,MAAM,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;AAErF,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,GAAG,SAAS,MAAM,EAC7C,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAC3B,KAAK,SAAY,GAChB,GAAG,CAKL;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,GAAG,SAAS,MAAM,EAC9C,MAAM,EAAE,SAAS,OAAO,EAAE,EAC1B,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAC3B,KAAK,SAAa,GACjB,SAAS,GAAG,EAAE,CAEhB;AAED,gFAAgF;AAChF,MAAM,WAAW,iBAAiB;IAChC,+CAA+C;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,GAAG,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC;IAEpG,0EAA0E;IAC1E,GAAG,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC;IAErG,+DAA+D;IAC/D,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACpF;AAED,sEAAsE;AACtE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3E,qFAAqF;IACrF,WAAW,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACnF"}
1
+ {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../src/storage/sql.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;AAElF,8EAA8E;AAC9E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtD,4EAA4E;AAC5E,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvD,6EAA6E;AAC7E,MAAM,MAAM,aAAa,CAAC,GAAG,SAAS,MAAM,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;AAErF,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,GAAG,SAAS,MAAM,EAC7C,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAC3B,KAAK,SAAY,GAChB,GAAG,CAKL;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,GAAG,SAAS,MAAM,EAC9C,MAAM,EAAE,SAAS,OAAO,EAAE,EAC1B,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAC3B,KAAK,SAAa,GACjB,SAAS,GAAG,EAAE,CAEhB;AAED,gFAAgF;AAChF,MAAM,WAAW,iBAAiB;IAChC,+CAA+C;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,GAAG,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC;IAEpG,0EAA0E;IAC1E,GAAG,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC;IAErG,+DAA+D;IAC/D,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACpF;AAED,sEAAsE;AACtE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3E,qFAAqF;IACrF,WAAW,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACnF"}
@@ -5,10 +5,11 @@
5
5
  * particular ORM. An adapter may implement them with MikroORM today and a
6
6
  * different persistence library later without changing sync semantics.
7
7
  */
8
+ import { CONTRACTS_INPUT_ERROR_CODES, ContractsInputError, } from "../domain/errors/input.js";
8
9
  /** Promotes a raw SQL result through an explicit row decoder. */
9
10
  export function decodeSqlRow(value, decoder, label = "SQL row") {
10
11
  if (value === null || typeof value !== "object" || Array.isArray(value)) {
11
- throw new TypeError(`${label} must be an object`);
12
+ throw new ContractsInputError(CONTRACTS_INPUT_ERROR_CODES.OBJECT_REQUIRED, label);
12
13
  }
13
14
  return decoder(value);
14
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/storage/sql.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAC1B,KAAc,EACd,OAA2B,EAC3B,KAAK,GAAG,SAAS;IAEjB,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,OAAO,CAAC,KAAe,CAAC,CAAC;AAClC,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAC3B,MAA0B,EAC1B,OAA2B,EAC3B,KAAK,GAAG,UAAU;IAElB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;AAC1F,CAAC"}
1
+ {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/storage/sql.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAcnC,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAC1B,KAAc,EACd,OAA2B,EAC3B,KAAK,GAAG,SAAS;IAEjB,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,mBAAmB,CAAC,2BAA2B,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,OAAO,CAAC,KAAe,CAAC,CAAC;AAClC,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAC3B,MAA0B,EAC1B,OAA2B,EAC3B,KAAK,GAAG,UAAU;IAElB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;AAC1F,CAAC"}
@@ -74,7 +74,7 @@ export declare const HIKOUTEI_LOG_COMPONENTS: {
74
74
  * to the log. A test asserts the registry stays in sync with every
75
75
  * `*_ERROR_CODES` constant in the repository.
76
76
  */
77
- export declare const HIKOUTEI_LOG_STABLE_CODES: readonly ["invalid_entity_descriptor", "duplicate_entity", "unregistered_entity", "entity_primary_key_unavailable", "entity_primary_key_mutation", "unmanaged_entity", "invalid_scalar_value", "invalid_query", "entity_not_found", "entity_identity_conflict", "sync_startup_failed", "sync_spreadsheet_url_invalid", "sync_credentials_file_missing", "sync_credentials_invalid_json", "sync_credentials_field_missing", "sync_auth_failed", "sync_spreadsheet_access_denied", "sync_spreadsheet_not_found", "sync_provisioning_failed", "invalid_sync_effect_payload", "invalid_sync_provisioning", "invalid_sync_client_options", "invalid_sync_provider_response", "invalid_fake_sync_provider_input", "google_sheets_api_timeout", "google_sheets_api_network_error", "google_sheets_api_http_error", "google_sheets_api_invalid_response", "google_sheets_api_request_start_refused", "invalid_sync_service_options", "invalid_sync_projection_config", "sync_provider_unavailable", "sync_service_startup_failed", "existing_sheet_adoption_dry_run_report", "existing_sheet_adoption_cell_kind_mismatch", "invalid_writer_lease_options", "invalid_sync_registration", "sync_registration_write_failed", "sync_registration_conflict", "sync_registry_target_unavailable", "invalid_observation_input", "observation_storage_inconsistent", "observation_audit_serialization_failed", "invalid_effect_options", "invalid_pending_effect", "effect_write_failed", "effect_replan_conflict", "invalid_effect_result", "invalid_projection_confirmation", "projection_confirmation_regression", "stale_writer_fence", "invalid_resolution_command", "resolution_command_identity_conflict", "resolution_storage_inconsistent", "resolution_effect_conflict", "resolution_target_unavailable", "invalid_stored_conflict", "schema_version_too_new", "schema_table_missing", "schema_index_missing", "schema_column_missing", "schema_version_invalid", "invalid_sql_script", "canonical_state_required", "canonical_field_required", "base_field_revision_required", "duplicate_changed_field", "invalid_entity_mapping", "duplicate_entity_mapping", "entity_mapping_not_found", "entity_primary_key_mismatch", "invalid_mapped_field_value", "writer_lease_unavailable", "row_binding_conflict", "canonical_commit_rejected", "projection_outbox_blocked", "observation_entity_mutation_failed", "unsupported_value_type", "non_finite_number", "invalid_date_format", "invalid_date_byte_length", "duplicate_object_key", "unpaired_high_surrogate", "unpaired_low_surrogate", "cyclic_value", "ERR_SQLITE_ERROR"];
77
+ export declare const HIKOUTEI_LOG_STABLE_CODES: readonly ["invalid_entity_descriptor", "duplicate_entity", "unregistered_entity", "entity_primary_key_unavailable", "entity_primary_key_mutation", "unmanaged_entity", "invalid_scalar_value", "invalid_query", "entity_not_found", "entity_identity_conflict", "sync_startup_failed", "sync_spreadsheet_url_invalid", "sync_credentials_file_missing", "sync_credentials_invalid_json", "sync_credentials_field_missing", "sync_auth_failed", "sync_spreadsheet_access_denied", "sync_spreadsheet_not_found", "sync_provisioning_failed", "invalid_sync_effect_payload", "invalid_sync_provisioning", "invalid_sync_client_options", "invalid_sync_provider_response", "invalid_fake_sync_provider_input", "google_sheets_api_timeout", "google_sheets_api_network_error", "google_sheets_api_http_error", "google_sheets_api_invalid_response", "google_sheets_api_request_start_refused", "invalid_sync_service_options", "invalid_sync_projection_config", "sync_provider_unavailable", "sync_service_startup_failed", "existing_sheet_adoption_dry_run_report", "existing_sheet_adoption_cell_kind_mismatch", "sync_polling_positive_integer_required", "sync_polling_backoff_order_invalid", "unsupported_sync_effect_kind", "unsupported_sync_projection", "unsupported_sync_effect_target_kind", "invalid_writer_lease_options", "invalid_sync_registration", "sync_registration_write_failed", "sync_registration_conflict", "sync_registry_target_unavailable", "invalid_observation_input", "observation_storage_inconsistent", "observation_audit_serialization_failed", "invalid_effect_options", "invalid_pending_effect", "effect_write_failed", "effect_replan_conflict", "invalid_effect_result", "invalid_projection_confirmation", "projection_confirmation_regression", "stale_writer_fence", "invalid_resolution_command", "resolution_command_identity_conflict", "resolution_storage_inconsistent", "resolution_effect_conflict", "resolution_target_unavailable", "invalid_stored_conflict", "schema_version_too_new", "schema_table_missing", "schema_index_missing", "schema_column_missing", "schema_version_invalid", "invalid_sql_script", "canonical_state_required", "canonical_field_required", "base_field_revision_required", "duplicate_changed_field", "invalid_entity_mapping", "duplicate_entity_mapping", "entity_mapping_not_found", "entity_primary_key_mismatch", "invalid_mapped_field_value", "writer_lease_unavailable", "row_binding_conflict", "canonical_commit_rejected", "projection_outbox_blocked", "observation_entity_mutation_failed", "unsupported_value_type", "non_finite_number", "invalid_date_format", "invalid_date_byte_length", "duplicate_object_key", "unpaired_high_surrogate", "unpaired_low_surrogate", "cyclic_value", "ERR_SQLITE_ERROR"];
78
78
  /**
79
79
  * Explicit registry of error class names the internal log may carry in its
80
80
  * `errorClass` field.
@@ -92,7 +92,7 @@ export declare const HIKOUTEI_LOG_STABLE_CODES: readonly ["invalid_entity_descri
92
92
  * `AsyncFenceLostError`) are caught and converted into result kinds before
93
93
  * any boundary, so they never surface as thrown classes.
94
94
  */
95
- export declare const HIKOUTEI_LOG_STABLE_CLASSES: readonly ["Error", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "EvalError", "URIError", "AggregateError", "HikouteiError", "TypedSheetsOrmError", "SyncSheetsContractError", "SyncServiceError", "StorageError", "EvaluationContractError", "StableEncodingError", "DuplicateChangedFieldError", "GoogleSheetsApiTransportError", "ValidationError", "CursorError", "OptimisticLockError", "MetadataError", "NotFoundError", "TransactionStateError", "DriverException", "ConnectionException", "ServerException", "ConstraintViolationException", "DatabaseObjectExistsException", "DatabaseObjectNotFoundException", "DeadlockException", "ForeignKeyConstraintViolationException", "CheckConstraintViolationException", "InvalidFieldNameException", "LockWaitTimeoutException", "NonUniqueFieldNameException", "NotNullConstraintViolationException", "ReadOnlyException", "SyntaxErrorException", "TableExistsException", "TableNotFoundException", "UniqueConstraintViolationException"];
95
+ export declare const HIKOUTEI_LOG_STABLE_CLASSES: readonly ["Error", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "EvalError", "URIError", "AggregateError", "HikouteiError", "TypedSheetsOrmError", "SyncSheetsContractError", "SyncServiceError", "PollingSupervisorOptionsError", "SyncEffectContractError", "StorageError", "EvaluationContractError", "StableEncodingError", "DuplicateChangedFieldError", "GoogleSheetsApiTransportError", "ValidationError", "CursorError", "OptimisticLockError", "MetadataError", "NotFoundError", "TransactionStateError", "DriverException", "ConnectionException", "ServerException", "ConstraintViolationException", "DatabaseObjectExistsException", "DatabaseObjectNotFoundException", "DeadlockException", "ForeignKeyConstraintViolationException", "CheckConstraintViolationException", "InvalidFieldNameException", "LockWaitTimeoutException", "NonUniqueFieldNameException", "NotNullConstraintViolationException", "ReadOnlyException", "SyntaxErrorException", "TableExistsException", "TableNotFoundException", "UniqueConstraintViolationException"];
96
96
  /**
97
97
  * Explicit allowlist of provider-operation tags the internal log may carry in
98
98
  * its `providerOperation` field.
@@ -1 +1 @@
1
- {"version":3,"file":"logEvents.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/observability/logEvents.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB;IAC9B,mDAAmD;;IAEnD,2EAA2E;;IAE3E,2DAA2D;;IAE3D,8DAA8D;;IAE9D,kEAAkE;;IAElE,uEAAuE;;IAEvE,qDAAqD;;IAErD,kEAAkE;;IAElE,4DAA4D;;IAE5D,6EAA6E;;IAE7E,qEAAqE;;IAErE,2EAA2E;;IAE3E,0DAA0D;;IAE1D,yEAAyE;;IAEzE,yDAAyD;;IAEzD,iFAAiF;;IAEjF,6EAA6E;;IAE7E,yEAAyE;;CAEjE,CAAC;AAEX,yDAAyD;AACzD,eAAO,MAAM,uBAAuB;;;;;;;;;CAS1B,CAAC;AAEX;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,yBAAyB,49EA+G3B,CAAC;AAEZ;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,2BAA2B,g9BA2C7B,CAAC;AAEZ;;;;;;;;GAQG;AACH,eAAO,MAAM,gCAAgC,iGAMlC,CAAC;AAEZ;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,wFAK/B,CAAC"}
1
+ {"version":3,"file":"logEvents.d.ts","sourceRoot":"","sources":["../../../../../../src/shared/observability/logEvents.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB;IAC9B,mDAAmD;;IAEnD,2EAA2E;;IAE3E,2DAA2D;;IAE3D,8DAA8D;;IAE9D,kEAAkE;;IAElE,uEAAuE;;IAEvE,qDAAqD;;IAErD,kEAAkE;;IAElE,4DAA4D;;IAE5D,6EAA6E;;IAE7E,qEAAqE;;IAErE,2EAA2E;;IAE3E,0DAA0D;;IAE1D,yEAAyE;;IAEzE,yDAAyD;;IAEzD,iFAAiF;;IAEjF,6EAA6E;;IAE7E,yEAAyE;;CAEjE,CAAC;AAEX,yDAAyD;AACzD,eAAO,MAAM,uBAAuB;;;;;;;;;CAS1B,CAAC;AAEX;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,yBAAyB,kpFA2H3B,CAAC;AAEZ;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,2BAA2B,4gCA6C7B,CAAC;AAEZ;;;;;;;;GAQG;AACH,eAAO,MAAM,gCAAgC,iGAMlC,CAAC;AAEZ;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,wFAK/B,CAAC"}
@@ -116,6 +116,18 @@ export const HIKOUTEI_LOG_STABLE_CODES = Object.freeze([
116
116
  "existing_sheet_adoption_dry_run_report",
117
117
  // Adoption seeding fail-closed cell validation (adopt/adoptionSeeding.ts).
118
118
  "existing_sheet_adoption_cell_kind_mismatch",
119
+ // SyncPollingSupervisor constructor option validation (sync/service/errors.ts).
120
+ // Flows through SYNC_SERVICE_START_FAILED (bootstrap catch) — validation
121
+ // runs in the constructor before the liveness loop is created.
122
+ "sync_polling_positive_integer_required",
123
+ "sync_polling_backoff_order_invalid",
124
+ // Persisted outbox-value contract violations (sync/outbound/errors.ts).
125
+ // Raised by toProviderEffect; caught by sheetsPayloadValidationError and
126
+ // surfaced to the worker as an invalid-payload presence. The kernel
127
+ // persists the effect as invalid_effect_payload (no outbox log event).
128
+ "unsupported_sync_effect_kind",
129
+ "unsupported_sync_projection",
130
+ "unsupported_sync_effect_target_kind",
119
131
  // Storage/schema/effect codes (@hikoutei/storage storage/errors.ts).
120
132
  "invalid_writer_lease_options",
121
133
  "invalid_sync_registration",
@@ -215,6 +227,8 @@ export const HIKOUTEI_LOG_STABLE_CLASSES = Object.freeze([
215
227
  "TypedSheetsOrmError",
216
228
  "SyncSheetsContractError",
217
229
  "SyncServiceError",
230
+ "PollingSupervisorOptionsError",
231
+ "SyncEffectContractError",
218
232
  "StorageError",
219
233
  "EvaluationContractError",
220
234
  "StableEncodingError",
@@ -1 +1 @@
1
- {"version":3,"file":"logEvents.js","sourceRoot":"","sources":["../../../../../../src/shared/observability/logEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logEvents.js","sourceRoot":"","sources":["../../../../../../src/shared/observability/logEvents.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcherSupport.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/outbound/dispatcherSupport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAAoC,KAAK,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAKvH;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB;IACnC,yEAAyE;;IAEzE,2EAA2E;;IAE3E,yEAAyE;;IAEzE,8EAA8E;;CAEtE,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAuBvE;AAsBD;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAEhE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAM/D;AAED,yEAAyE;AACzE,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAOpF;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAM1E;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAcxE;AAED,6EAA6E;AAC7E,qBAAa,qBAAsB,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM;CAInC;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,oBAAoB,CAyB5E;AAwBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE/D"}
1
+ {"version":3,"file":"dispatcherSupport.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/outbound/dispatcherSupport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAAoC,KAAK,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AASvH;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB;IACnC,yEAAyE;;IAEzE,2EAA2E;;IAE3E,yEAAyE;;IAEzE,8EAA8E;;CAEtE,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAuBvE;AAsBD;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAEhE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAM/D;AAED,yEAAyE;AACzE,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAOpF;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAM1E;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAcxE;AAED,6EAA6E;AAC7E,qBAAa,qBAAsB,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM;CAInC;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,oBAAoB,CAkC5E;AAwBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE/D"}
@@ -13,6 +13,7 @@ import { absentValue, presentValue, } from "../../../contracts/state/index.js";
13
13
  import { fromSqlNullable } from "../../../storage/sqlite/sqlState.js";
14
14
  import { parseSyncProjectionEffectPayload } from "../../../contracts/sheets/syncSheets.js";
15
15
  import { SYNC_PROJECTIONS, } from "../../../contracts/sheets/constants.js";
16
+ import { SYNC_EFFECT_CONTRACT_ERROR_CODES, SyncEffectContractError, } from "./errors.js";
16
17
  /**
17
18
  * Dispatch-priority classes for ready projection effects.
18
19
  *
@@ -150,13 +151,13 @@ export class PreparedDispatchError extends Error {
150
151
  /** Validates and converts one durable outbox row into a provider effect. */
151
152
  export function toProviderEffect(effect) {
152
153
  if (!isSyncEffectKind(effect.effect_kind)) {
153
- throw new Error("unsupported sync effect kind: " + effect.effect_kind);
154
+ throw new SyncEffectContractError(SYNC_EFFECT_CONTRACT_ERROR_CODES.UNSUPPORTED_SYNC_EFFECT_KIND, effect.effect_kind);
154
155
  }
155
156
  if (!isSyncProjection(effect.projection)) {
156
- throw new Error("unsupported sync projection: " + effect.projection);
157
+ throw new SyncEffectContractError(SYNC_EFFECT_CONTRACT_ERROR_CODES.UNSUPPORTED_SYNC_PROJECTION, effect.projection);
157
158
  }
158
159
  if (!isEffectTargetKind(effect.target_kind)) {
159
- throw new Error("unsupported sync effect target kind: " + effect.target_kind);
160
+ throw new SyncEffectContractError(SYNC_EFFECT_CONTRACT_ERROR_CODES.UNSUPPORTED_SYNC_EFFECT_TARGET_KIND, effect.target_kind);
160
161
  }
161
162
  return {
162
163
  effectId: effect.effect_id,
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcherSupport.js","sourceRoot":"","sources":["../../../../../../src/sync/outbound/dispatcherSupport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatcherSupport.js","sourceRoot":"","sources":["../../../../../../src/sync/outbound/dispatcherSupport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { CoreErrorException } from "../../../contracts/domain/errors/index.js";
2
+ /**
3
+ * Stable error codes for persisted outbox value contract violations.
4
+ *
5
+ * Raised inside `toProviderEffect` when a persisted `effect_kind`,
6
+ * `projection`, or `target_kind` does not match the closed union in
7
+ * `@hikoutei/contracts`. The message carries the persisted value verbatim
8
+ * for diagnostic traceability (it is never logged by the runtime).
9
+ */
10
+ export declare const SYNC_EFFECT_CONTRACT_ERROR_CODES: {
11
+ readonly UNSUPPORTED_SYNC_EFFECT_KIND: "unsupported_sync_effect_kind";
12
+ readonly UNSUPPORTED_SYNC_PROJECTION: "unsupported_sync_projection";
13
+ readonly UNSUPPORTED_SYNC_EFFECT_TARGET_KIND: "unsupported_sync_effect_target_kind";
14
+ };
15
+ export type SyncEffectContractErrorCode = (typeof SYNC_EFFECT_CONTRACT_ERROR_CODES)[keyof typeof SYNC_EFFECT_CONTRACT_ERROR_CODES];
16
+ /**
17
+ * Thrown when a persisted outbox value fails its contracts-level closed-union
18
+ * check. Carries `domain` and `code` for structured observation while keeping
19
+ * the message byte-identical to the original raw `Error`.
20
+ */
21
+ export declare class SyncEffectContractError extends CoreErrorException<"sync.outbound", SyncEffectContractErrorCode> {
22
+ constructor(code: SyncEffectContractErrorCode, persistedValue: string);
23
+ }
24
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/outbound/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAMhF;;;;;;;GAOG;AACH,eAAO,MAAM,gCAAgC;;;;CAInC,CAAC;AAEX,MAAM,MAAM,2BAA2B,GACrC,CAAC,OAAO,gCAAgC,CAAC,CAAC,MAAM,OAAO,gCAAgC,CAAC,CAAC;AAW3F;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,kBAAkB,CAC7D,eAAe,EACf,2BAA2B,CAC5B;gBACa,IAAI,EAAE,2BAA2B,EAAE,cAAc,EAAE,MAAM;CAGtE"}
@@ -0,0 +1,33 @@
1
+ import { CoreErrorException } from "../../../contracts/domain/errors/index.js";
2
+ // ---------------------------------------------------------------------------
3
+ // Persisted-value contract validation errors (dispatcherSupport)
4
+ // ---------------------------------------------------------------------------
5
+ /**
6
+ * Stable error codes for persisted outbox value contract violations.
7
+ *
8
+ * Raised inside `toProviderEffect` when a persisted `effect_kind`,
9
+ * `projection`, or `target_kind` does not match the closed union in
10
+ * `@hikoutei/contracts`. The message carries the persisted value verbatim
11
+ * for diagnostic traceability (it is never logged by the runtime).
12
+ */
13
+ export const SYNC_EFFECT_CONTRACT_ERROR_CODES = {
14
+ UNSUPPORTED_SYNC_EFFECT_KIND: "unsupported_sync_effect_kind",
15
+ UNSUPPORTED_SYNC_PROJECTION: "unsupported_sync_projection",
16
+ UNSUPPORTED_SYNC_EFFECT_TARGET_KIND: "unsupported_sync_effect_target_kind",
17
+ };
18
+ const effectContractMessages = {
19
+ [SYNC_EFFECT_CONTRACT_ERROR_CODES.UNSUPPORTED_SYNC_EFFECT_KIND]: (v) => "unsupported sync effect kind: " + v,
20
+ [SYNC_EFFECT_CONTRACT_ERROR_CODES.UNSUPPORTED_SYNC_PROJECTION]: (v) => "unsupported sync projection: " + v,
21
+ [SYNC_EFFECT_CONTRACT_ERROR_CODES.UNSUPPORTED_SYNC_EFFECT_TARGET_KIND]: (v) => "unsupported sync effect target kind: " + v,
22
+ };
23
+ /**
24
+ * Thrown when a persisted outbox value fails its contracts-level closed-union
25
+ * check. Carries `domain` and `code` for structured observation while keeping
26
+ * the message byte-identical to the original raw `Error`.
27
+ */
28
+ export class SyncEffectContractError extends CoreErrorException {
29
+ constructor(code, persistedValue) {
30
+ super("sync.outbound", code, effectContractMessages[code](persistedValue));
31
+ }
32
+ }
33
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../src/sync/outbound/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAEhF,8EAA8E;AAC9E,iEAAiE;AACjE,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,4BAA4B,EAAE,8BAA8B;IAC5D,2BAA2B,EAAE,6BAA6B;IAC1D,mCAAmC,EAAE,qCAAqC;CAClE,CAAC;AAKX,MAAM,sBAAsB,GAAmE;IAC7F,CAAC,gCAAgC,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CACrE,gCAAgC,GAAG,CAAC;IACtC,CAAC,gCAAgC,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CACpE,+BAA+B,GAAG,CAAC;IACrC,CAAC,gCAAgC,CAAC,mCAAmC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAC5E,uCAAuC,GAAG,CAAC;CAC9C,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,uBAAwB,SAAQ,kBAG5C;IACC,YAAY,IAAiC,EAAE,cAAsB;QACnE,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;IAC7E,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"SyncPollingSupervisor.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/service/SyncPollingSupervisor.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAOrD,KAAK,QAAQ,CAAC,MAAM,IAAI,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,WAAW,4BAA4B,CAAC,MAAM,GAAG,OAAO;IAC5D,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IAChC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED;;;GAGG;AACH,qBAAa,qBAAqB,CAAC,MAAM,GAAG,OAAO;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoC;IACrE,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyC;IAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyC;IACjE,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,UAAU,CAA2B;gBAE1B,OAAO,EAAE,4BAA4B,CAAC,MAAM,CAAC;IAqBhE,uDAAuD;IAChD,KAAK,IAAI,IAAI;IAWpB,0EAA0E;IACnE,UAAU,IAAI,OAAO;IAI5B,yDAAyD;IAClD,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAcjC,wEAAwE;IACjE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAed,OAAO;YA2BP,gBAAgB;IAoB9B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,WAAW;CAOpB"}
1
+ {"version":3,"file":"SyncPollingSupervisor.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/service/SyncPollingSupervisor.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAWrD,KAAK,QAAQ,CAAC,MAAM,IAAI,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,WAAW,4BAA4B,CAAC,MAAM,GAAG,OAAO;IAC5D,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IAChC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED;;;GAGG;AACH,qBAAa,qBAAqB,CAAC,MAAM,GAAG,OAAO;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoC;IACrE,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyC;IAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyC;IACjE,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,UAAU,CAA2B;gBAE1B,OAAO,EAAE,4BAA4B,CAAC,MAAM,CAAC;IAuBhE,uDAAuD;IAChD,KAAK,IAAI,IAAI;IAWpB,0EAA0E;IACnE,UAAU,IAAI,OAAO;IAI5B,yDAAyD;IAClD,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAcjC,wEAAwE;IACjE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAed,OAAO;YA2BP,gBAAgB;IAoB9B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,WAAW;CAOpB"}
@@ -1,5 +1,6 @@
1
1
  /** Internal liveness loop for User_Input polling. */
2
2
  import { SYNC_POLLING_INTERVAL_MS } from "./cadence.js";
3
+ import { SYNC_POLLING_ERROR_CODES, PollingSupervisorOptionsError, } from "./errors.js";
3
4
  const DEFAULT_ERROR_BACKOFF_INITIAL_MS = 1_000;
4
5
  const DEFAULT_ERROR_BACKOFF_MAX_MS = 30_000;
5
6
  /**
@@ -28,7 +29,7 @@ export class SyncPollingSupervisor {
28
29
  this.errorBackoffInitialMs = requirePositive(options.errorBackoffInitialMs ?? DEFAULT_ERROR_BACKOFF_INITIAL_MS, "poll error backoff");
29
30
  this.errorBackoffMaxMs = requirePositive(options.errorBackoffMaxMs ?? DEFAULT_ERROR_BACKOFF_MAX_MS, "poll maximum error backoff");
30
31
  if (this.errorBackoffMaxMs < this.errorBackoffInitialMs) {
31
- throw new RangeError("poll maximum error backoff must be at least the initial backoff");
32
+ throw new PollingSupervisorOptionsError(SYNC_POLLING_ERROR_CODES.BACKOFF_ORDER_INVALID);
32
33
  }
33
34
  this.wait = options.wait ?? defaultWait;
34
35
  this.waitForFirstPass = options.waitForFirstPass;
@@ -156,7 +157,7 @@ export class SyncPollingSupervisor {
156
157
  }
157
158
  function requirePositive(value, label) {
158
159
  if (!Number.isSafeInteger(value) || value < 1) {
159
- throw new RangeError(`${label} must be a positive safe integer`);
160
+ throw new PollingSupervisorOptionsError(SYNC_POLLING_ERROR_CODES.POSITIVE_INTEGER_REQUIRED, label);
160
161
  }
161
162
  return value;
162
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SyncPollingSupervisor.js","sourceRoot":"","sources":["../../../../../../src/sync/service/SyncPollingSupervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncPollingSupervisor.js","sourceRoot":"","sources":["../../../../../../src/sync/service/SyncPollingSupervisor.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AAErB,MAAM,gCAAgC,GAAG,KAAK,CAAC;AAC/C,MAAM,4BAA4B,GAAG,MAAM,CAAC;AA2B5C;;;GAGG;AACH,MAAM,OAAO,qBAAqB;IACf,OAAO,CAAmB;IAC1B,UAAU,CAAS;IACnB,qBAAqB,CAAS;IAC9B,iBAAiB,CAAS;IAC1B,IAAI,CAAkB;IACtB,gBAAgB,CAAoC;IAC7D,gBAAgB,GAAG,KAAK,CAAC;IAChB,QAAQ,CAAyC;IACjD,OAAO,CAAyC;IACzD,OAAO,GAAG,KAAK,CAAC;IAChB,eAAe,GAAG,IAAI,CAAC;IACvB,WAAW,CAA4B;IACvC,QAAQ,CAA8B;IACtC,WAAW,CAA4B;IACvC,UAAU,CAA2B;IAE7C,YAAmB,OAA6C;QAC9D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,IAAI,wBAAwB,EAAE,eAAe,CAAC,CAAC;QACnG,IAAI,CAAC,qBAAqB,GAAG,eAAe,CAC1C,OAAO,CAAC,qBAAqB,IAAI,gCAAgC,EACjE,oBAAoB,CACrB,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,eAAe,CACtC,OAAO,CAAC,iBAAiB,IAAI,4BAA4B,EACzD,4BAA4B,CAC7B,CAAC;QACF,IAAI,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACxD,MAAM,IAAI,6BAA6B,CACrC,wBAAwB,CAAC,qBAAqB,CAC/C,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;QACxC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED,uDAAuD;IAChD,KAAK;QACV,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,sEAAsE;QACtE,uEAAuE;QACvE,uEAAuE;QACvE,4BAA4B;QAC5B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC;QAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;IAED,0EAA0E;IACnE,UAAU;QACf,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAChD,CAAC;IAED,yDAAyD;IAClD,OAAO;QACZ,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,KAAK,IAAI,CAAC,IAAI,CACZ,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAC9B,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAC/B,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wEAAwE;IACjE,IAAI;QACT,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC5D,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC/B,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,OAAO;QACnB,IAAI,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC9C,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBACjE,+DAA+D;oBAC/D,+DAA+D;oBAC/D,iEAAiE;oBACjE,6DAA6D;oBAC7D,+DAA+D;oBAC/D,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC9B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBAC9B,IAAI,CAAC,IAAI,CAAC,OAAO;wBAAE,MAAM;gBAC3B,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBAC1B,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC;gBAC1C,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,OAAO;oBAAE,MAAM;gBACzB,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAC5E,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,UAAkB;QAC/C,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;oBAAE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;gBAC1D,OAAO,EAAE,CAAC;YACZ,CAAC,EAAE,UAAU,CAAC,CAAC;YACf,MAAM,IAAI,GAAG,GAAG,EAAE;gBAChB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;oBAAE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;gBAC1D,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,IAAqB;QACzC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;YAAE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IACxD,CAAC;IAEO,YAAY,CAAC,MAAc;QACjC,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,KAAc;QAChC,IAAI,CAAC;YACH,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;IACH,CAAC;CACF;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,KAAa;IACnD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,6BAA6B,CACrC,wBAAwB,CAAC,yBAAyB,EAClD,KAAK,CACN,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,UAAkB;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;AACnE,CAAC"}
@@ -1,4 +1,18 @@
1
1
  import { CoreErrorException } from "../../../contracts/domain/errors/index.js";
2
+ /** Stable error codes for SyncPollingSupervisor option validation. */
3
+ export declare const SYNC_POLLING_ERROR_CODES: {
4
+ /** A numeric option must be a positive (> 0) safe integer. */
5
+ readonly POSITIVE_INTEGER_REQUIRED: "sync_polling_positive_integer_required";
6
+ /** errorBackoffMaxMs must be >= errorBackoffInitialMs. */
7
+ readonly BACKOFF_ORDER_INVALID: "sync_polling_backoff_order_invalid";
8
+ };
9
+ export type SyncPollingErrorCode = (typeof SYNC_POLLING_ERROR_CODES)[keyof typeof SYNC_POLLING_ERROR_CODES];
10
+ /** Typed error for SyncPollingSupervisor option validation. */
11
+ export declare class PollingSupervisorOptionsError extends RangeError {
12
+ readonly code: SyncPollingErrorCode;
13
+ constructor(code: typeof SYNC_POLLING_ERROR_CODES.BACKOFF_ORDER_INVALID);
14
+ constructor(code: typeof SYNC_POLLING_ERROR_CODES.POSITIVE_INTEGER_REQUIRED, label: string);
15
+ }
2
16
  /** Stable failures raised while assembling or running the internal sync service. */
3
17
  export declare const SYNC_SERVICE_ERROR_CODES: {
4
18
  readonly INVALID_OPTIONS: "invalid_sync_service_options";
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/service/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAEhF,oFAAoF;AACpF,eAAO,MAAM,wBAAwB;;;;;IAKnC,oFAAoF;;IAEpF;;;;;OAKG;;CAEK,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E,0EAA0E;AAC1E,qBAAa,gBAAiB,SAAQ,kBAAkB,CACtD,0BAA0B,EAC1B,oBAAoB,CACrB;gBACoB,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM;CAG/D"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/service/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAMhF,sEAAsE;AACtE,eAAO,MAAM,wBAAwB;IACnC,8DAA8D;;IAE9D,0DAA0D;;CAElD,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAS3E,+DAA+D;AAC/D,qBAAa,6BAA8B,SAAQ,UAAU;IAC3D,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;gBAGxB,IAAI,EAAE,OAAO,wBAAwB,CAAC,qBAAqB;gBAGrE,IAAI,EAAE,OAAO,wBAAwB,CAAC,yBAAyB,EAC/D,KAAK,EAAE,MAAM;CAOhB;AAED,oFAAoF;AACpF,eAAO,MAAM,wBAAwB;;;;;IAKnC,oFAAoF;;IAEpF;;;;;OAKG;;CAEK,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E,0EAA0E;AAC1E,qBAAa,gBAAiB,SAAQ,kBAAkB,CACtD,0BAA0B,EAC1B,oBAAoB,CACrB;gBACoB,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM;CAG/D"}
@@ -1,4 +1,27 @@
1
1
  import { CoreErrorException } from "../../../contracts/domain/errors/index.js";
2
+ // ---------------------------------------------------------------------------
3
+ // SyncPollingSupervisor option validation
4
+ // ---------------------------------------------------------------------------
5
+ /** Stable error codes for SyncPollingSupervisor option validation. */
6
+ export const SYNC_POLLING_ERROR_CODES = {
7
+ /** A numeric option must be a positive (> 0) safe integer. */
8
+ POSITIVE_INTEGER_REQUIRED: "sync_polling_positive_integer_required",
9
+ /** errorBackoffMaxMs must be >= errorBackoffInitialMs. */
10
+ BACKOFF_ORDER_INVALID: "sync_polling_backoff_order_invalid",
11
+ };
12
+ const pollingMessages = {
13
+ [SYNC_POLLING_ERROR_CODES.POSITIVE_INTEGER_REQUIRED]: (label) => `${label} must be a positive safe integer`,
14
+ [SYNC_POLLING_ERROR_CODES.BACKOFF_ORDER_INVALID]: () => "poll maximum error backoff must be at least the initial backoff",
15
+ };
16
+ /** Typed error for SyncPollingSupervisor option validation. */
17
+ export class PollingSupervisorOptionsError extends RangeError {
18
+ code;
19
+ constructor(code, label) {
20
+ super(pollingMessages[code](label));
21
+ this.name = "PollingSupervisorOptionsError";
22
+ this.code = code;
23
+ }
24
+ }
2
25
  /** Stable failures raised while assembling or running the internal sync service. */
3
26
  export const SYNC_SERVICE_ERROR_CODES = {
4
27
  INVALID_OPTIONS: "invalid_sync_service_options",
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../src/sync/service/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAEhF,oFAAoF;AACpF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,eAAe,EAAE,8BAA8B;IAC/C,yBAAyB,EAAE,gCAAgC;IAC3D,oBAAoB,EAAE,2BAA2B;IACjD,cAAc,EAAE,6BAA6B;IAC7C,oFAAoF;IACpF,uBAAuB,EAAE,wCAAwC;IACjE;;;;;OAKG;IACH,2BAA2B,EAAE,4CAA4C;CACjE,CAAC;AAKX,0EAA0E;AAC1E,MAAM,OAAO,gBAAiB,SAAQ,kBAGrC;IACC,YAAmB,IAA0B,EAAE,OAAe;QAC5D,KAAK,CAAC,0BAA0B,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../src/sync/service/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAEhF,8EAA8E;AAC9E,0CAA0C;AAC1C,8EAA8E;AAE9E,sEAAsE;AACtE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,8DAA8D;IAC9D,yBAAyB,EAAE,wCAAwC;IACnE,0DAA0D;IAC1D,qBAAqB,EAAE,oCAAoC;CACnD,CAAC;AAKX,MAAM,eAAe,GAA6D;IAChF,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9D,GAAG,KAAK,kCAAkC;IAC5C,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,EAAE,GAAG,EAAE,CACrD,iEAAiE;CACpE,CAAC;AAEF,+DAA+D;AAC/D,MAAM,OAAO,6BAA8B,SAAQ,UAAU;IAClD,IAAI,CAAuB;IASpC,YAAY,IAA0B,EAAE,KAAc;QACpD,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,oFAAoF;AACpF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,eAAe,EAAE,8BAA8B;IAC/C,yBAAyB,EAAE,gCAAgC;IAC3D,oBAAoB,EAAE,2BAA2B;IACjD,cAAc,EAAE,6BAA6B;IAC7C,oFAAoF;IACpF,uBAAuB,EAAE,wCAAwC;IACjE;;;;;OAKG;IACH,2BAA2B,EAAE,4CAA4C;CACjE,CAAC;AAKX,0EAA0E;AAC1E,MAAM,OAAO,gBAAiB,SAAQ,kBAGrC;IACC,YAAmB,IAA0B,EAAE,OAAe;QAC5D,KAAK,CAAC,0BAA0B,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hikoutei",
3
- "version": "0.9.16",
3
+ "version": "0.9.18",
4
4
  "description": "Typed repository and safe write layer for Google Sheets-backed MVPs. SQLite-authoritative entity lifecycle with asynchronous Google Sheets projection.",
5
5
  "repository": {
6
6
  "type": "git",