hikoutei 0.5.2 → 0.5.3

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 (185) hide show
  1. package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmMappedTypedSheets.d.ts +1 -1
  2. package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmMappedTypedSheets.d.ts.map +1 -1
  3. package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarRuntime.js +1 -1
  4. package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarRuntime.js.map +1 -1
  5. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.d.ts +1 -1
  6. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.d.ts.map +1 -1
  7. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.js +2 -2
  8. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.js.map +1 -1
  9. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.d.ts +1 -1
  10. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.d.ts.map +1 -1
  11. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.js +1 -1
  12. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.js.map +1 -1
  13. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.d.ts +1 -1
  14. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.d.ts.map +1 -1
  15. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.js +1 -1
  16. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.js.map +1 -1
  17. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingPersistence.js +1 -1
  18. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingPersistence.js.map +1 -1
  19. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingSql.js +1 -1
  20. package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingSql.js.map +1 -1
  21. package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.d.ts +2 -2
  22. package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.d.ts.map +1 -1
  23. package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.js +1 -1
  24. package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.js.map +1 -1
  25. package/dist/adapter/sheets/providers/google-sheets-api/errors.js +1 -1
  26. package/dist/adapter/sheets/providers/google-sheets-api/errors.js.map +1 -1
  27. package/dist/adapter/sheets/providers/google-sheets-api/model/observation.d.ts +2 -2
  28. package/dist/adapter/sheets/providers/google-sheets-api/model/observation.d.ts.map +1 -1
  29. package/dist/adapter/sheets/providers/google-sheets-api/model/observation.js +1 -1
  30. package/dist/adapter/sheets/providers/google-sheets-api/model/observation.js.map +1 -1
  31. package/dist/adapter/sheets/providers/google-sheets-api/model/planner.d.ts +1 -1
  32. package/dist/adapter/sheets/providers/google-sheets-api/model/planner.d.ts.map +1 -1
  33. package/dist/adapter/sheets/providers/google-sheets-api/model/planner.js +1 -1
  34. package/dist/adapter/sheets/providers/google-sheets-api/model/planner.js.map +1 -1
  35. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerDeletion.d.ts +1 -1
  36. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerDeletion.d.ts.map +1 -1
  37. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerReceipt.d.ts +1 -1
  38. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerReceipt.d.ts.map +1 -1
  39. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerReceipt.js +1 -1
  40. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerReceipt.js.map +1 -1
  41. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerWorkingRow.d.ts +1 -1
  42. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerWorkingRow.d.ts.map +1 -1
  43. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerWorkingRow.js +1 -1
  44. package/dist/adapter/sheets/providers/google-sheets-api/model/plannerWorkingRow.js.map +1 -1
  45. package/dist/adapter/sheets/providers/google-sheets-api/model/postcondition.d.ts +1 -1
  46. package/dist/adapter/sheets/providers/google-sheets-api/model/postcondition.d.ts.map +1 -1
  47. package/dist/adapter/sheets/providers/google-sheets-api/model/tableRead.d.ts +1 -1
  48. package/dist/adapter/sheets/providers/google-sheets-api/model/tableRead.d.ts.map +1 -1
  49. package/dist/adapter/sheets/providers/google-sheets-api/operations/anchors.d.ts +1 -1
  50. package/dist/adapter/sheets/providers/google-sheets-api/operations/anchors.d.ts.map +1 -1
  51. package/dist/adapter/sheets/providers/google-sheets-api/operations/applyEffects.d.ts +1 -1
  52. package/dist/adapter/sheets/providers/google-sheets-api/operations/applyEffects.d.ts.map +1 -1
  53. package/dist/adapter/sheets/providers/google-sheets-api/operations/applyEffects.js +1 -1
  54. package/dist/adapter/sheets/providers/google-sheets-api/operations/applyEffects.js.map +1 -1
  55. package/dist/adapter/sheets/providers/google-sheets-api/operations/fastAppend.d.ts +1 -1
  56. package/dist/adapter/sheets/providers/google-sheets-api/operations/fastAppend.d.ts.map +1 -1
  57. package/dist/adapter/sheets/providers/google-sheets-api/operations/fastAppend.js +3 -3
  58. package/dist/adapter/sheets/providers/google-sheets-api/operations/fastAppend.js.map +1 -1
  59. package/dist/adapter/sheets/providers/google-sheets-api/operations/preflightOp.d.ts +2 -2
  60. package/dist/adapter/sheets/providers/google-sheets-api/operations/preflightOp.d.ts.map +1 -1
  61. package/dist/adapter/sheets/providers/google-sheets-api/operations/preflightOp.js +3 -3
  62. package/dist/adapter/sheets/providers/google-sheets-api/operations/preflightOp.js.map +1 -1
  63. package/dist/adapter/sheets/providers/google-sheets-api/operations/provisioning.d.ts +1 -1
  64. package/dist/adapter/sheets/providers/google-sheets-api/operations/provisioning.d.ts.map +1 -1
  65. package/dist/adapter/sheets/providers/google-sheets-api/operations/readRows.d.ts +2 -2
  66. package/dist/adapter/sheets/providers/google-sheets-api/operations/readRows.d.ts.map +1 -1
  67. package/dist/adapter/sheets/providers/google-sheets-api/operations/readRows.js +2 -2
  68. package/dist/adapter/sheets/providers/google-sheets-api/operations/readRows.js.map +1 -1
  69. package/dist/adapter/sheets/providers/google-sheets-api/operations/shared.d.ts +1 -1
  70. package/dist/adapter/sheets/providers/google-sheets-api/operations/shared.d.ts.map +1 -1
  71. package/dist/adapter/sheets/providers/google-sheets-api/operations/shared.js +2 -2
  72. package/dist/adapter/sheets/providers/google-sheets-api/operations/shared.js.map +1 -1
  73. package/dist/application/orm/mapping/contracts.d.ts +1 -1
  74. package/dist/application/orm/mapping/contracts.d.ts.map +1 -1
  75. package/dist/application/orm/mapping/definition.js +1 -1
  76. package/dist/application/orm/mapping/definition.js.map +1 -1
  77. package/dist/application/orm/mapping/projection.js +1 -1
  78. package/dist/application/orm/mapping/projection.js.map +1 -1
  79. package/dist/application/orm/persistence/flush/flushCoordinator.d.ts +1 -1
  80. package/dist/application/orm/persistence/flush/flushCoordinator.d.ts.map +1 -1
  81. package/dist/application/orm/persistence/projection/projectionEffects.js +2 -2
  82. package/dist/application/orm/persistence/projection/projectionEffects.js.map +1 -1
  83. package/dist/application/orm/persistence/support/contracts.d.ts +1 -1
  84. package/dist/application/orm/persistence/support/contracts.d.ts.map +1 -1
  85. package/dist/application/sync/inbound/autoSystemConflictResolution.js +3 -3
  86. package/dist/application/sync/inbound/autoSystemConflictResolution.js.map +1 -1
  87. package/dist/application/sync/inbound/polling/SimpleSheetPolling.d.ts +2 -2
  88. package/dist/application/sync/inbound/polling/SimpleSheetPolling.d.ts.map +1 -1
  89. package/dist/application/sync/outbound/SheetsEffectDispatcher.d.ts +1 -1
  90. package/dist/application/sync/outbound/SheetsEffectDispatcher.d.ts.map +1 -1
  91. package/dist/application/sync/outbound/SheetsEffectDispatcher.js +3 -3
  92. package/dist/application/sync/outbound/SheetsEffectDispatcher.js.map +1 -1
  93. package/dist/application/sync/outbound/projection/ProjectionEffectFactory.d.ts +2 -2
  94. package/dist/application/sync/outbound/projection/ProjectionEffectFactory.d.ts.map +1 -1
  95. package/dist/application/sync/outbound/projection/ProjectionEffectFactory.js +2 -2
  96. package/dist/application/sync/outbound/projection/ProjectionEffectFactory.js.map +1 -1
  97. package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.d.ts +7 -3
  98. package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.d.ts.map +1 -1
  99. package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.js +10 -413
  100. package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.js.map +1 -1
  101. package/dist/application/sync/outbound/reconciliation/diff.d.ts +35 -0
  102. package/dist/application/sync/outbound/reconciliation/diff.d.ts.map +1 -0
  103. package/dist/application/sync/outbound/reconciliation/diff.js +199 -0
  104. package/dist/application/sync/outbound/reconciliation/diff.js.map +1 -0
  105. package/dist/application/sync/outbound/reconciliation/repair.d.ts +30 -0
  106. package/dist/application/sync/outbound/reconciliation/repair.d.ts.map +1 -0
  107. package/dist/application/sync/outbound/reconciliation/repair.js +142 -0
  108. package/dist/application/sync/outbound/reconciliation/repair.js.map +1 -0
  109. package/dist/application/sync/outbound/reconciliation/shared.d.ts +69 -0
  110. package/dist/application/sync/outbound/reconciliation/shared.d.ts.map +1 -0
  111. package/dist/application/sync/outbound/reconciliation/shared.js +111 -0
  112. package/dist/application/sync/outbound/reconciliation/shared.js.map +1 -0
  113. package/dist/application/sync/service/SyncServiceBootstrap.d.ts +3 -3
  114. package/dist/application/sync/service/SyncServiceBootstrap.d.ts.map +1 -1
  115. package/dist/application/sync/service/SyncServiceBootstrap.js +3 -3
  116. package/dist/application/sync/service/SyncServiceBootstrap.js.map +1 -1
  117. package/dist/application/sync/service/syncAutoStart.js +2 -2
  118. package/dist/application/sync/service/syncAutoStart.js.map +1 -1
  119. package/dist/application/sync/sheetsContract/conflictProjection.d.ts.map +1 -0
  120. package/dist/application/sync/sheetsContract/conflictProjection.js.map +1 -0
  121. package/dist/application/sync/sheetsContract/conflictProjectionRegistration.d.ts.map +1 -0
  122. package/dist/application/sync/sheetsContract/conflictProjectionRegistration.js.map +1 -0
  123. package/dist/application/sync/sheetsContract/constants.d.ts.map +1 -0
  124. package/dist/application/sync/sheetsContract/constants.js.map +1 -0
  125. package/dist/application/sync/sheetsContract/errors.d.ts.map +1 -0
  126. package/dist/application/sync/sheetsContract/errors.js.map +1 -0
  127. package/dist/application/sync/sheetsContract/mutationCoordinator/CoordinatedSheetsProvider.d.ts.map +1 -0
  128. package/dist/application/sync/sheetsContract/mutationCoordinator/CoordinatedSheetsProvider.js.map +1 -0
  129. package/dist/application/sync/sheetsContract/mutationCoordinator/asyncMutex.d.ts.map +1 -0
  130. package/dist/application/sync/sheetsContract/mutationCoordinator/asyncMutex.js.map +1 -0
  131. package/dist/application/sync/sheetsContract/mutationCoordinator/laneTelemetry.d.ts.map +1 -0
  132. package/dist/application/sync/sheetsContract/mutationCoordinator/laneTelemetry.js.map +1 -0
  133. package/dist/application/sync/sheetsContract/sheetsProvisioning.d.ts.map +1 -0
  134. package/dist/application/sync/sheetsContract/sheetsProvisioning.js.map +1 -0
  135. package/dist/application/sync/sheetsContract/syncSheets.d.ts.map +1 -0
  136. package/dist/application/sync/sheetsContract/syncSheets.js.map +1 -0
  137. package/dist/application/sync/sheetsContract/transportOutcome.d.ts.map +1 -0
  138. package/dist/application/sync/sheetsContract/transportOutcome.js.map +1 -0
  139. package/dist/application/sync/sheetsContract/validation.d.ts.map +1 -0
  140. package/dist/application/sync/sheetsContract/validation.js.map +1 -0
  141. package/package.json +1 -1
  142. package/dist/application/sync/sheets/conflictProjection.d.ts.map +0 -1
  143. package/dist/application/sync/sheets/conflictProjection.js.map +0 -1
  144. package/dist/application/sync/sheets/conflictProjectionRegistration.d.ts.map +0 -1
  145. package/dist/application/sync/sheets/conflictProjectionRegistration.js.map +0 -1
  146. package/dist/application/sync/sheets/constants.d.ts.map +0 -1
  147. package/dist/application/sync/sheets/constants.js.map +0 -1
  148. package/dist/application/sync/sheets/errors.d.ts.map +0 -1
  149. package/dist/application/sync/sheets/errors.js.map +0 -1
  150. package/dist/application/sync/sheets/mutationCoordinator/CoordinatedSheetsProvider.d.ts.map +0 -1
  151. package/dist/application/sync/sheets/mutationCoordinator/CoordinatedSheetsProvider.js.map +0 -1
  152. package/dist/application/sync/sheets/mutationCoordinator/asyncMutex.d.ts.map +0 -1
  153. package/dist/application/sync/sheets/mutationCoordinator/asyncMutex.js.map +0 -1
  154. package/dist/application/sync/sheets/mutationCoordinator/laneTelemetry.d.ts.map +0 -1
  155. package/dist/application/sync/sheets/mutationCoordinator/laneTelemetry.js.map +0 -1
  156. package/dist/application/sync/sheets/sheetsProvisioning.d.ts.map +0 -1
  157. package/dist/application/sync/sheets/sheetsProvisioning.js.map +0 -1
  158. package/dist/application/sync/sheets/syncSheets.d.ts.map +0 -1
  159. package/dist/application/sync/sheets/syncSheets.js.map +0 -1
  160. package/dist/application/sync/sheets/transportOutcome.d.ts.map +0 -1
  161. package/dist/application/sync/sheets/transportOutcome.js.map +0 -1
  162. package/dist/application/sync/sheets/validation.d.ts.map +0 -1
  163. package/dist/application/sync/sheets/validation.js.map +0 -1
  164. /package/dist/application/sync/{sheets → sheetsContract}/conflictProjection.d.ts +0 -0
  165. /package/dist/application/sync/{sheets → sheetsContract}/conflictProjection.js +0 -0
  166. /package/dist/application/sync/{sheets → sheetsContract}/conflictProjectionRegistration.d.ts +0 -0
  167. /package/dist/application/sync/{sheets → sheetsContract}/conflictProjectionRegistration.js +0 -0
  168. /package/dist/application/sync/{sheets → sheetsContract}/constants.d.ts +0 -0
  169. /package/dist/application/sync/{sheets → sheetsContract}/constants.js +0 -0
  170. /package/dist/application/sync/{sheets → sheetsContract}/errors.d.ts +0 -0
  171. /package/dist/application/sync/{sheets → sheetsContract}/errors.js +0 -0
  172. /package/dist/application/sync/{sheets → sheetsContract}/mutationCoordinator/CoordinatedSheetsProvider.d.ts +0 -0
  173. /package/dist/application/sync/{sheets → sheetsContract}/mutationCoordinator/CoordinatedSheetsProvider.js +0 -0
  174. /package/dist/application/sync/{sheets → sheetsContract}/mutationCoordinator/asyncMutex.d.ts +0 -0
  175. /package/dist/application/sync/{sheets → sheetsContract}/mutationCoordinator/asyncMutex.js +0 -0
  176. /package/dist/application/sync/{sheets → sheetsContract}/mutationCoordinator/laneTelemetry.d.ts +0 -0
  177. /package/dist/application/sync/{sheets → sheetsContract}/mutationCoordinator/laneTelemetry.js +0 -0
  178. /package/dist/application/sync/{sheets → sheetsContract}/sheetsProvisioning.d.ts +0 -0
  179. /package/dist/application/sync/{sheets → sheetsContract}/sheetsProvisioning.js +0 -0
  180. /package/dist/application/sync/{sheets → sheetsContract}/syncSheets.d.ts +0 -0
  181. /package/dist/application/sync/{sheets → sheetsContract}/syncSheets.js +0 -0
  182. /package/dist/application/sync/{sheets → sheetsContract}/transportOutcome.d.ts +0 -0
  183. /package/dist/application/sync/{sheets → sheetsContract}/transportOutcome.js +0 -0
  184. /package/dist/application/sync/{sheets → sheetsContract}/validation.d.ts +0 -0
  185. /package/dist/application/sync/{sheets → sheetsContract}/validation.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectionEffectFactory.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/projection/ProjectionEffectFactory.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,iCAAiC,EACjC,6BAA6B,EAC7B,UAAU,GAKX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,eAAe,EACf,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,sBAAsB,EACtB,oCAAoC,GAGrC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,mBAAmB,EACnB,YAAY,GACb,MAAM,8CAA8C,CAAC;AAGtD,MAAM,uBAAuB,GAAG;IAC9B,iBAAiB,EAAE,mBAAmB;IACtC,mBAAmB,EAAE,qBAAqB;IAC1C,aAAa,EAAE,eAAe;IAC9B,qBAAqB,EAAE,uBAAuB;IAC9C,iBAAiB,EAAE,wBAAwB,CAAC,iBAAiB;IAC7D,iBAAiB,EAAE,wBAAwB,CAAC,iBAAiB;CACZ,CAAC;AAEpD,MAAM,uBAAuB,GAAG;IAC9B,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,gBAAgB;IAChC,QAAQ,EAAE,UAAU;CAC+B,CAAC;AAEtD,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAoD9B,kFAAkF;AAClF,MAAM,UAAU,sBAAsB,CAAC,KAA4B;IACjE,aAAa,CAAC,KAAK,CAAC,CAAC;IACrB,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAI,0BAA0B,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,iBAAiB,KAAK,KAAK,CAAC,mBAAmB,EAAE,CAAC;QACpG,gBAAgB,CAAC,4DAA4D,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,IAAI,kBAAkB,EAAE,CAAC;IAClF,MAAM,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,IAAI,kBAAkB,EAAE,CAAC;IAChF,MAAM,uBAAuB,GAAG,KAAK,CAAC,uBAAuB,IAAI,kBAAkB,EAAE,CAAC;IACtF,MAAM,uBAAuB,GAAG,KAAK,CAAC,uBAAuB,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjG,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,WAAW,EAAE,CAAC;IAC/D,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,IAAI,WAAW,EAAE,CAAC;IACrE,MAAM,WAAW,GAAG,oCAAoC,CAAC;QACvD,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,iBAAiB;QACjB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,qBAAqB;KACtB,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAChD,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;QACtD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,eAAe;QACf,kBAAkB;QAClB,WAAW;QACX,WAAW;QACX,eAAe,EAAE,UAAU,CAAC;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,uBAAuB,EAAE,wBAAwB,CAAC,uBAAuB,CAAC;YAC1E,WAAW;SACZ,CAAC;QACF,cAAc,EAAE,KAAK,CAAC,cAAc;KACrC,CAAC;AACJ,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,4BAA4B,CAC1C,KAAkC;IAElC,IAAI,KAAK,CAAC,UAAU,KAAK,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACvD,gBAAgB,CAAC,4CAA4C,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,sBAAsB,CAAC;QAC5B,GAAG,KAAK;QACR,UAAU,EAAE,uBAAuB,CAAC,iBAAiB;KACtD,CAAC,CAAC;AACL,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,8BAA8B,CAC5C,KAAoC;IAEpC,OAAO,sBAAsB,CAAC;QAC5B,GAAG,KAAK;QACR,UAAU,EAAE,gBAAgB,CAAC,UAAU;QACvC,UAAU,EAAE,uBAAuB,CAAC,mBAAmB;KACxD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAiC;IAEjC,OAAO,sBAAsB,CAAC;QAC5B,GAAG,KAAK;QACR,UAAU,EAAE,gBAAgB,CAAC,UAAU;QACvC,UAAU,EAAE,uBAAuB,CAAC,iBAAiB;KACtD,CAAC,CAAC;AACL,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,wBAAwB,CACtC,KAAgD;IAEhD,uBAAuB,CAAC,KAAK,CAAC,eAAe,EAAE,oDAAoD,CAAC,CAAC;IACrG,uBAAuB,CAAC,KAAK,CAAC,kBAAkB,EAAE,6CAA6C,CAAC,CAAC;IACjG,OAAO,sBAAsB,CAAC;QAC5B,GAAG,KAAK;QACR,UAAU,EAAE,uBAAuB,CAAC,aAAa;KAClD,CAAC,CAAC;AACL,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,gCAAgC,CAC9C,KAA4B;IAE5B,qBAAqB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,2DAA2D,CAAC,CAAC;IACrH,OAAO,sBAAsB,CAAC;QAC5B,GAAG,KAAK;QACR,UAAU,EAAE,gBAAgB,CAAC,cAAc;QAC3C,UAAU,EAAE,uBAAuB,CAAC,QAAQ;QAC5C,UAAU,EAAE,uBAAuB,CAAC,qBAAqB;KAC1D,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAA4B;IAE5B,qBAAqB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,yDAAyD,CAAC,CAAC;IACnH,OAAO,sBAAsB,CAAC;QAC5B,GAAG,KAAK;QACR,UAAU,EAAE,gBAAgB,CAAC,cAAc;QAC3C,UAAU,EAAE,uBAAuB,CAAC,QAAQ;QAC5C,UAAU,EAAE,uBAAuB,CAAC,iBAAiB;KACtD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,KAA4B;IACjD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI;QAC3B,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC7B,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC7B,CAAC,kBAAkB,EAAE,KAAK,CAAC,cAAc,CAAC;QAC1C,CAAC,mBAAmB,EAAE,KAAK,CAAC,eAAe,CAAC;QAC5C,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;QAC/B,CAAC,kBAAkB,EAAE,KAAK,CAAC,eAAe,CAAC;QAC3C,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC;QAC7B,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC;KAC7B,EAAE,CAAC;QACX,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IACD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC;QAC1C,KAAK,CAAC,aAAa,GAAG,6BAA6B;QACnD,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,uBAAuB,CAAC;QACpD,KAAK,CAAC,uBAAuB,GAAG,iCAAiC;QACjE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC;QAC3C,KAAK,CAAC,cAAc,GAAG,6BAA6B,EACpD,CAAC;QACD,gBAAgB,CAAC,+EAA+E,CAAC,CAAC;IACpG,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,IACE,KAAK,CAAC,uBAAuB,KAAK,iCAAiC;YACnE,KAAK,CAAC,mBAAmB,KAAK,kBAAkB,EAChD,CAAC;YACD,gBAAgB,CAAC,uDAAuD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;QACzE,gBAAgB,CAAC,8DAA8D,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,uBAAuB,EAAE,CAAC;QACjE,gBAAgB,CAAC,uCAAuC,CAAC,CAAC;IAC5D,CAAC;IACD,IACE,KAAK,CAAC,UAAU,KAAK,uBAAuB,CAAC,mBAAmB;QAChE,KAAK,CAAC,UAAU,KAAK,gBAAgB,CAAC,UAAU,EAChD,CAAC;QACD,gBAAgB,CAAC,4CAA4C,CAAC,CAAC;IACjE,CAAC;IACD,IACE,CAAC,KAAK,CAAC,UAAU,KAAK,uBAAuB,CAAC,qBAAqB;QACjE,KAAK,CAAC,UAAU,KAAK,uBAAuB,CAAC,iBAAiB,CAAC;QACjE,KAAK,CAAC,UAAU,KAAK,gBAAgB,CAAC,cAAc,EACpD,CAAC;QACD,gBAAgB,CAAC,kDAAkD,CAAC,CAAC;IACvE,CAAC;IACD,IACE,0BAA0B,CAAC,KAAK,CAAC,UAAU,CAAC;QAC5C,CAAC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,uBAAuB,GAAG,6BAA6B,CAAC,EACxF,CAAC;QACD,gBAAgB,CAAC,sDAAsD,CAAC,CAAC;IAC3E,CAAC;IACD,IACE,KAAK,CAAC,UAAU,KAAK,uBAAuB,CAAC,iBAAiB;QAC9D,CACE,KAAK,CAAC,UAAU,KAAK,gBAAgB,CAAC,UAAU;YAChD,KAAK,CAAC,UAAU,KAAK,uBAAuB,CAAC,cAAc,CAC5D,EACD,CAAC;QACD,gBAAgB,CAAC,+DAA+D,CAAC,CAAC;IACpF,CAAC;IACD,IACE,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,cAAc,CAAC,MAAM;QACjD,KAAK,CAAC,UAAU,KAAK,uBAAuB,CAAC,QAAQ,EACrD,CAAC;QACD,gBAAgB,CAAC,0DAA0D,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,KAAa;IACvD,IAAI,KAAK,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;QAC9C,gBAAgB,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAmC,EACnC,OAAe;IAEf,IAAI,KAAK,EAAE,IAAI,KAAK,cAAc,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,wBAAwB,EAAE,CAAC;QAC9F,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC;AACrB,CAAC;AAED,SAAS,qBAAqB,CAC5B,UAA4B,EAC5B,QAAgB,EAChB,OAAe;IAEf,MAAM,KAAK,GAAG,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC3D,IAAI,QAAQ,KAAK,KAAK;QAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAI,KAAuB;IAC1D,OAAO,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5E,CAAC;AAED,SAAS,0BAA0B,CAAC,UAA0B;IAC5D,OAAO,UAAU,KAAK,uBAAuB,CAAC,iBAAiB;QAC7D,UAAU,KAAK,uBAAuB,CAAC,iBAAiB,CAAC;AAC7D,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,IAAI,YAAY,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"ProjectionEffectFactory.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/projection/ProjectionEffectFactory.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,15 @@
13
13
  * protected and hidden, so the canonical state is always authoritative and a
14
14
  * drift is always a repair target. User_Input reconciliation remains the
15
15
  * responsibility of the candidate/conflict pipeline.
16
+ *
17
+ * This module owns the scan lifecycle and orchestration only. Drift detection
18
+ * lives in diff.ts, correction effect generation in repair.ts, and the shared
19
+ * contracts/SQL helpers in shared.ts.
16
20
  */
17
21
  import type { SqlStorageAdapter } from "../../../../adapter/persistence/contracts/sql.js";
18
- import { type SyncSheetsProvider } from "../../sheets/syncSheets.js";
19
- /** Builder used by the scanner to produce fresh effect/commit identifiers. */
20
- export type ReconciliationIdFactory = () => string;
22
+ import { type SyncSheetsProvider } from "../../sheetsContract/syncSheets.js";
23
+ import { type ReconciliationIdFactory } from "./shared.js";
24
+ export type { ReconciliationIdFactory } from "./shared.js";
21
25
  /** Construction options for a single reconciliation scan. */
22
26
  export interface RunReconciliationScanOptions {
23
27
  readonly storage: SqlStorageAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"ReconciliationScanner.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAyBH,OAAO,KAAK,EAAe,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AAWpC,8EAA8E;AAC9E,MAAM,MAAM,uBAAuB,GAAG,MAAM,MAAM,CAAC;AAEnD,6DAA6D;AAC7D,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,qEAAqE;IACrE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,uDAAuD;IACvD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IAC5C,sDAAsD;IACtD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAChE;AAED,qDAAqD;AACrD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC;AAoED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAkCnC;AA0nBD,eAAO,MAAM,uBAAuB;;;;CAI1B,CAAC"}
1
+ {"version":3,"file":"ReconciliationScanner.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAYH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAK5C,OAAO,EAML,KAAK,uBAAuB,EAE7B,MAAM,aAAa,CAAC;AAQrB,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,6DAA6D;AAC7D,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,qEAAqE;IACrE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,uDAAuD;IACvD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IAC5C,sDAAsD;IACtD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAChE;AAED,qDAAqD;AACrD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAkCnC;AAwLD,eAAO,MAAM,uBAAuB;;;;CAI1B,CAAC"}
@@ -13,52 +13,20 @@
13
13
  * protected and hidden, so the canonical state is always authoritative and a
14
14
  * drift is always a repair target. User_Input reconciliation remains the
15
15
  * responsibility of the candidate/conflict pipeline.
16
+ *
17
+ * This module owns the scan lifecycle and orchestration only. Drift detection
18
+ * lives in diff.ts, correction effect generation in repair.ts, and the shared
19
+ * contracts/SQL helpers in shared.ts.
16
20
  */
17
21
  import { randomUUID } from "node:crypto";
18
- import { EMPTY_STRING_LENGTH_ZERO, POSITIVE_SAFE_INTEGER_MINIMUM, stableHash, } from "../../../../domain/index.js";
19
- import { APPLICABILITY_KINDS, PRESENCE_KINDS, } from "../../../../shared/state/index.js";
20
- import { NORMALIZED_CELL_KINDS } from "../../../../shared/encoding/constants.js";
21
- import { isNormalizedCell } from "../../../../shared/encoding/normalizedCell.js";
22
- import { isRecord } from "../../../../shared/encoding/typeGuards.js";
22
+ import { POSITIVE_SAFE_INTEGER_MINIMUM } from "../../../../domain/index.js";
23
23
  import { appendPendingEffectsWithAdapter, claimWriterLeaseWithAdapter, requireRegisteredSyncSheetWithAdapter, WRITER_LEASE_CLAIM_RESULT_KINDS, } from "../../../../infrastructure/storage/index.js";
24
24
  import { STORAGE_ERROR_CODES, StorageError } from "../../../../infrastructure/storage/errors.js";
25
- import { computeSyncVisibleHash, observeSyncSnapshot, } from "../../sheets/syncSheets.js";
26
- import { SYNC_PROJECTIONS, SYNC_SNAPSHOT_READ_MODES, } from "../../sheets/constants.js";
27
- import { createSystemProjectionEffect } from "../projection/ProjectionEffectFactory.js";
28
- const DEFAULT_RECONCILIATION_ROLE = "typed-sheets-reconciler";
29
- const DEFAULT_RECONCILIATION_LEASE_MS = 60_000;
30
- const DEFAULT_SYSTEM_TOMBSTONE_FIELD = "_deleted";
31
- const READ_DESIRED_SYSTEM_STATE_SQL = `
32
- SELECT
33
- entity.entity_id AS entity_id,
34
- binding.row_binding_id AS row_binding_id,
35
- binding.anchor_reference AS anchor_reference,
36
- entity.entity_revision AS entity_revision,
37
- field.field_name AS field_name,
38
- field.normalized_value AS normalized_value,
39
- field.ownership AS ownership
40
- FROM entity_state AS entity
41
- JOIN row_binding AS binding
42
- ON binding.entity_id = entity.entity_id
43
- AND binding.logical_sheet_id = ?
44
- AND binding.state = 'active'
45
- JOIN entity_field_state AS field
46
- ON field.entity_id = entity.entity_id
47
- WHERE entity.status = 'active'
48
- ORDER BY entity.entity_id, field.field_name
49
- `;
50
- const READ_LATEST_VISIBLE_STATE_SQL = `
51
- SELECT confirmed_visible_revision, confirmed_snapshot_hash
52
- FROM sheet_visible_state
53
- WHERE physical_sheet_id = ? AND projection = 'system_state' AND row_binding_id = ?
54
- `;
55
- const READ_LATEST_EFFECT_SQL = `
56
- SELECT stream_sequence, expected_visible_revision, expected_visible_hash, status, payload_json
57
- FROM sheet_effect_outbox
58
- WHERE logical_sheet_id = ? AND target_kind = 'entity' AND target_id = ?
59
- ORDER BY stream_sequence DESC
60
- LIMIT 1
61
- `;
25
+ import { observeSyncSnapshot, } from "../../sheetsContract/syncSheets.js";
26
+ import { SYNC_PROJECTIONS, SYNC_SNAPSHOT_READ_MODES, } from "../../sheetsContract/constants.js";
27
+ import { DEFAULT_RECONCILIATION_LEASE_MS, DEFAULT_RECONCILIATION_ROLE, DEFAULT_SYSTEM_TOMBSTONE_FIELD, readDesiredSystemState, } from "./shared.js";
28
+ import { computeDrifts, countExtraRows, countMatchedRows, } from "./diff.js";
29
+ import { buildCorrectionEffects } from "./repair.js";
62
30
  /**
63
31
  * Runs one reconciliation scan and enqueues correction effects for drift.
64
32
  *
@@ -172,278 +140,6 @@ async function scanAndEnqueue(context) {
172
140
  fenceClaimed: true,
173
141
  });
174
142
  }
175
- function computeDrifts(args) {
176
- const rowsByAnchor = new Map();
177
- const ambiguousAnchors = new Set();
178
- const rowsByIdentity = new Map();
179
- const ambiguousIdentities = new Set();
180
- for (const row of args.snapshot.rows) {
181
- if (row.physicalAnchor.kind === PRESENCE_KINDS.PRESENT) {
182
- // A duplicated physical anchor is an anomaly, never a row choice: drop
183
- // the anchor index entry instead of letting the last row win silently.
184
- if (ambiguousAnchors.has(row.physicalAnchor.value))
185
- continue;
186
- if (rowsByAnchor.has(row.physicalAnchor.value)) {
187
- rowsByAnchor.delete(row.physicalAnchor.value);
188
- ambiguousAnchors.add(row.physicalAnchor.value);
189
- }
190
- else {
191
- rowsByAnchor.set(row.physicalAnchor.value, row);
192
- }
193
- }
194
- const identity = snapshotIdentity(row, args.sheet.businessKeyField);
195
- if (identity === undefined || ambiguousIdentities.has(identity))
196
- continue;
197
- if (rowsByIdentity.has(identity)) {
198
- rowsByIdentity.delete(identity);
199
- ambiguousIdentities.add(identity);
200
- }
201
- else {
202
- rowsByIdentity.set(identity, row);
203
- }
204
- }
205
- const drifts = [];
206
- for (const desiredRow of args.desired) {
207
- const identity = desiredRowIdentity(desiredRow, args.sheet.businessKeyField);
208
- // The primary locator's ambiguity is fatal: when the desired anchor is
209
- // duplicated, identity fallback would silently pick one of the rows that
210
- // the corrupted anchor cannot distinguish, so the binding is unmatched.
211
- // The same quarantine applies to a desired identity that appears in the
212
- // snapshot's duplicate set: the duplicated business key cannot prove that
213
- // this binding owns even its unique anchor, so neither locator may match.
214
- const identityAmbiguous = identity !== undefined && ambiguousIdentities.has(identity);
215
- const observed = ambiguousAnchors.has(desiredRow.anchorReference) || identityAmbiguous
216
- ? undefined
217
- : rowsByAnchor.get(desiredRow.anchorReference) ??
218
- (identity === undefined ? undefined : rowsByIdentity.get(identity));
219
- if (observed === undefined) {
220
- drifts.push({ kind: "missing", desired: desiredRow });
221
- continue;
222
- }
223
- const observedHash = computeObservedHash(observed, args.systemFields);
224
- const desiredHash = computeSyncVisibleHash(desiredRow.fields);
225
- if (observedHash !== desiredHash) {
226
- drifts.push({ kind: "drifted", desired: desiredRow });
227
- }
228
- }
229
- return drifts;
230
- }
231
- /** Reads a business-key value from a snapshot row for unanchored fast appends. */
232
- function snapshotIdentity(row, identityField) {
233
- return normalizedCellIdentity(row.cells[identityField]?.normalizedCell);
234
- }
235
- /** Reads the same visible business-key value from canonical desired state. */
236
- function desiredRowIdentity(row, identityField) {
237
- return normalizedCellIdentity(row.fields[identityField]) ?? row.entityId;
238
- }
239
- function normalizedCellIdentity(cell) {
240
- if (cell === undefined || cell === null)
241
- return undefined;
242
- switch (cell.kind) {
243
- case NORMALIZED_CELL_KINDS.STRING:
244
- return cell.value.length === EMPTY_STRING_LENGTH_ZERO ? undefined : cell.value;
245
- case NORMALIZED_CELL_KINDS.NUMBER:
246
- return Number.isFinite(cell.value) ? String(cell.value) : undefined;
247
- case NORMALIZED_CELL_KINDS.BOOLEAN:
248
- return String(cell.value);
249
- case NORMALIZED_CELL_KINDS.DATE:
250
- return cell.value;
251
- }
252
- }
253
- function computeObservedHash(row, systemFields) {
254
- const values = {};
255
- for (const fieldName of systemFields) {
256
- const cell = row.cells[fieldName];
257
- values[fieldName] = cell === undefined ? null : cell.normalizedCell;
258
- }
259
- return computeSyncVisibleHash(values);
260
- }
261
- async function readDesiredSystemState(context) {
262
- return context.storage.read(({ sql }) => readDesiredSystemStateWithSql(sql, context));
263
- }
264
- async function readDesiredSystemStateWithSql(sql, context) {
265
- const rows = await sql.all(READ_DESIRED_SYSTEM_STATE_SQL, [
266
- context.logicalSheetId,
267
- ]);
268
- const byEntity = new Map();
269
- for (const row of rows) {
270
- const existing = byEntity.get(row.entity_id);
271
- const cell = decodeNormalizedCell(row.normalized_value);
272
- if (existing === undefined) {
273
- const fields = {};
274
- fields[row.field_name] = cell;
275
- byEntity.set(row.entity_id, {
276
- entityId: row.entity_id,
277
- rowBindingId: row.row_binding_id,
278
- anchorReference: row.anchor_reference,
279
- entityRevision: row.entity_revision,
280
- fields,
281
- fieldRevisionHash: "",
282
- });
283
- continue;
284
- }
285
- existing.fields[row.field_name] = cell;
286
- }
287
- const desired = [];
288
- for (const row of byEntity.values()) {
289
- ensureTombstoneField(row, context.tombstoneField);
290
- const hash = computeFieldRevisionHash(row.fields);
291
- desired.push({ ...row, fieldRevisionHash: hash });
292
- }
293
- return desired;
294
- }
295
- function ensureTombstoneField(row, tombstoneField) {
296
- if (tombstoneField === undefined)
297
- return;
298
- const fields = row.fields;
299
- if (fields[tombstoneField] === undefined) {
300
- fields[tombstoneField] = { kind: NORMALIZED_CELL_KINDS.BOOLEAN, value: false };
301
- }
302
- }
303
- function computeFieldRevisionHash(fields) {
304
- const entries = Object.entries(fields)
305
- .sort(([left], [right]) => (left < right ? -1 : left > right ? 1 : 0))
306
- .map(([fieldName, value]) => ({ fieldName, value }));
307
- return stableHash({ fields: entries });
308
- }
309
- function decodeNormalizedCell(value) {
310
- try {
311
- const parsed = JSON.parse(value);
312
- if (!isNormalizedCell(parsed)) {
313
- throw new StorageError(STORAGE_ERROR_CODES.OBSERVATION_STORAGE_INCONSISTENT, "entity_field_state.normalized_value is not a normalized cell");
314
- }
315
- return parsed;
316
- }
317
- catch (error) {
318
- if (error instanceof StorageError)
319
- throw error;
320
- throw new StorageError(STORAGE_ERROR_CODES.OBSERVATION_STORAGE_INCONSISTENT, "entity_field_state.normalized_value is not valid JSON");
321
- }
322
- }
323
- async function buildCorrectionEffects(context, sheet, drifts) {
324
- const effects = [];
325
- const commitId = "reconciliation:" + context.createId();
326
- for (const drift of drifts) {
327
- const baseline = await resolveCorrectionBaseline(context, drift.desired);
328
- if (baseline.skip)
329
- continue;
330
- const effect = createSystemProjectionEffect({
331
- effectId: "effect:" + context.createId(),
332
- commitId,
333
- logicalSheetId: context.logicalSheetId,
334
- physicalSheetId: context.physicalSheetId,
335
- sheetName: sheet.tabName,
336
- registeredRange: sheet.registeredRange,
337
- projection: SYNC_PROJECTIONS.SYSTEM_STATE,
338
- schemaVersion: context.schemaVersion,
339
- targetKind: "entity",
340
- targetId: drift.desired.entityId,
341
- rowBindingId: { kind: PRESENCE_KINDS.PRESENT, value: drift.desired.rowBindingId },
342
- conflictId: { kind: PRESENCE_KINDS.ABSENT },
343
- targetAnchor: drift.desired.anchorReference,
344
- fields: drift.desired.fields,
345
- createIfMissing: baseline.createIfMissing,
346
- expectedVisibleRevision: baseline.expectedVisibleRevision,
347
- expectedVisibleHash: baseline.expectedVisibleHash,
348
- targetEntityRevision: {
349
- kind: APPLICABILITY_KINDS.APPLICABLE,
350
- value: drift.desired.entityRevision,
351
- },
352
- targetFieldRevisionHash: {
353
- kind: APPLICABILITY_KINDS.APPLICABLE,
354
- value: drift.desired.fieldRevisionHash,
355
- },
356
- targetCanonicalCommitId: { kind: APPLICABILITY_KINDS.APPLICABLE, value: commitId },
357
- streamSequence: baseline.streamSequence,
358
- });
359
- effects.push(effect);
360
- }
361
- return effects;
362
- }
363
- async function resolveCorrectionBaseline(context, desired) {
364
- return context.storage.read(({ sql }) => resolveCorrectionBaselineWithSql(sql, context, desired));
365
- }
366
- async function resolveCorrectionBaselineWithSql(sql, context, desired) {
367
- const latestEffect = await sql.get(READ_LATEST_EFFECT_SQL, [
368
- context.logicalSheetId,
369
- desired.entityId,
370
- ]);
371
- if (latestEffect !== undefined && latestEffect.stream_sequence !== null) {
372
- const streamSequence = latestEffect.stream_sequence + 1;
373
- // delivery_uncertain counts as in-flight: the predecessor may still commit
374
- // remotely after a lost response, and the outbox claim ordering keeps any
375
- // successor pending until that effect is probe-settled. Planning a
376
- // correction against the uncertain target (rather than stale visible
377
- // state) is what makes the eventual guard match the committed write.
378
- if (latestEffect.status === "pending" ||
379
- latestEffect.status === "processing" ||
380
- latestEffect.status === "delivery_uncertain") {
381
- const payload = latestEffect.payload_json;
382
- const expectedHash = payload === null ? "" : extractTargetVisibleHash(payload);
383
- if (expectedHash === computeSyncVisibleHash(desired.fields)) {
384
- // A canonical write already has an equivalent correction in flight.
385
- // Do not append another stream item on every periodic scan while the
386
- // first item is waiting for the provider or its recovery read-back.
387
- return {
388
- skip: true,
389
- expectedVisibleRevision: (latestEffect.expected_visible_revision ?? 0) + 1,
390
- expectedVisibleHash: expectedHash,
391
- createIfMissing: false,
392
- streamSequence,
393
- };
394
- }
395
- return {
396
- skip: false,
397
- expectedVisibleRevision: (latestEffect.expected_visible_revision ?? 0) + 1,
398
- expectedVisibleHash: expectedHash,
399
- createIfMissing: false,
400
- streamSequence,
401
- };
402
- }
403
- const visible = await sql.get(READ_LATEST_VISIBLE_STATE_SQL, [
404
- context.physicalSheetId,
405
- desired.rowBindingId,
406
- ]);
407
- return baselineFromVisible(visible, streamSequence);
408
- }
409
- const visible = await sql.get(READ_LATEST_VISIBLE_STATE_SQL, [
410
- context.physicalSheetId,
411
- desired.rowBindingId,
412
- ]);
413
- return baselineFromVisible(visible, POSITIVE_SAFE_INTEGER_MINIMUM);
414
- }
415
- function baselineFromVisible(visible, streamSequence) {
416
- if (visible === undefined ||
417
- visible.confirmed_visible_revision === null ||
418
- visible.confirmed_snapshot_hash === null ||
419
- visible.confirmed_snapshot_hash.length === 0) {
420
- return {
421
- skip: false,
422
- expectedVisibleRevision: 0,
423
- expectedVisibleHash: "",
424
- createIfMissing: true,
425
- streamSequence,
426
- };
427
- }
428
- return {
429
- skip: false,
430
- expectedVisibleRevision: visible.confirmed_visible_revision,
431
- expectedVisibleHash: visible.confirmed_snapshot_hash,
432
- createIfMissing: false,
433
- streamSequence,
434
- };
435
- }
436
- function extractTargetVisibleHash(payloadJson) {
437
- try {
438
- const parsed = JSON.parse(payloadJson);
439
- if (!isRecord(parsed))
440
- return "";
441
- return typeof parsed.targetVisibleHash === "string" ? parsed.targetVisibleHash : "";
442
- }
443
- catch {
444
- return "";
445
- }
446
- }
447
143
  async function claimReconcilerFence(context) {
448
144
  const claim = await claimWriterLeaseWithAdapter(context.storage, {
449
145
  role: context.role,
@@ -461,105 +157,6 @@ async function claimReconcilerFence(context) {
461
157
  now: context.now(),
462
158
  };
463
159
  }
464
- function countMatchedRows(snapshot, desired, identityField) {
465
- const anchors = new Set();
466
- const ambiguousAnchors = new Set();
467
- const identities = new Set();
468
- const duplicateIdentities = new Set();
469
- for (const row of snapshot.rows) {
470
- if (row.physicalAnchor.kind === PRESENCE_KINDS.PRESENT) {
471
- if (ambiguousAnchors.has(row.physicalAnchor.value))
472
- continue;
473
- if (anchors.has(row.physicalAnchor.value)) {
474
- anchors.delete(row.physicalAnchor.value);
475
- ambiguousAnchors.add(row.physicalAnchor.value);
476
- }
477
- else {
478
- anchors.add(row.physicalAnchor.value);
479
- }
480
- }
481
- const identity = snapshotIdentity(row, identityField);
482
- if (identity === undefined || duplicateIdentities.has(identity))
483
- continue;
484
- if (identities.has(identity)) {
485
- identities.delete(identity);
486
- duplicateIdentities.add(identity);
487
- }
488
- else {
489
- identities.add(identity);
490
- }
491
- }
492
- let matched = 0;
493
- for (const row of desired) {
494
- const identity = desiredRowIdentity(row, identityField);
495
- const anchorAmbiguous = ambiguousAnchors.has(row.anchorReference);
496
- // A desired identity duplicated in the sheet quarantines the binding:
497
- // neither its unique anchor nor its identity may count as matched.
498
- const identityAmbiguous = identity !== undefined && duplicateIdentities.has(identity);
499
- if ((!anchorAmbiguous && !identityAmbiguous && anchors.has(row.anchorReference)) ||
500
- (!anchorAmbiguous && !identityAmbiguous && identity !== undefined && identities.has(identity))) {
501
- matched += 1;
502
- }
503
- }
504
- return matched;
505
- }
506
- function countExtraRows(snapshot, desired, identityField) {
507
- // Identities that appear more than once in the snapshot cannot prove
508
- // ownership. A desired row carrying one of these identities is quarantined:
509
- // its anchor never suppresses the extra count, and the duplicated identity
510
- // itself never suppresses it either.
511
- const duplicateIdentities = new Set();
512
- {
513
- const seen = new Set();
514
- for (const row of snapshot.rows) {
515
- const identity = snapshotIdentity(row, identityField);
516
- if (identity === undefined)
517
- continue;
518
- if (seen.has(identity))
519
- duplicateIdentities.add(identity);
520
- seen.add(identity);
521
- }
522
- }
523
- const desiredByAnchor = new Map();
524
- const desiredIdentities = new Set();
525
- for (const row of desired) {
526
- if (!desiredByAnchor.has(row.anchorReference))
527
- desiredByAnchor.set(row.anchorReference, row);
528
- const identity = desiredRowIdentity(row, identityField);
529
- if (identity !== undefined)
530
- desiredIdentities.add(identity);
531
- }
532
- const anchorCounts = new Map();
533
- for (const row of snapshot.rows) {
534
- if (row.physicalAnchor.kind !== PRESENCE_KINDS.PRESENT)
535
- continue;
536
- anchorCounts.set(row.physicalAnchor.value, (anchorCounts.get(row.physicalAnchor.value) ?? 0) + 1);
537
- }
538
- let extra = 0;
539
- for (const row of snapshot.rows) {
540
- // A duplicated anchor cannot prove which row the desired binding owns, so
541
- // it never suppresses the extra count; the business key decides instead.
542
- // A quarantined desired identity (duplicated in the sheet) blocks the
543
- // anchor suppression too, because the anchor cannot prove ownership of a
544
- // business key that appears elsewhere.
545
- if (row.physicalAnchor.kind === PRESENCE_KINDS.PRESENT &&
546
- (anchorCounts.get(row.physicalAnchor.value) ?? 0) === 1) {
547
- const desiredRow = desiredByAnchor.get(row.physicalAnchor.value);
548
- const desiredIdentity = desiredRow === undefined
549
- ? undefined
550
- : desiredRowIdentity(desiredRow, identityField);
551
- if (desiredRow !== undefined &&
552
- (desiredIdentity === undefined || !duplicateIdentities.has(desiredIdentity))) {
553
- continue;
554
- }
555
- }
556
- const identity = snapshotIdentity(row, identityField);
557
- if (identity !== undefined && !duplicateIdentities.has(identity) && desiredIdentities.has(identity))
558
- continue;
559
- extra += 1;
560
- }
561
- return extra;
562
- }
563
160
  function freezeReport(physicalSheetId, snapshot, desired, delta) {
564
161
  return {
565
162
  physicalSheetId,
@@ -1 +1 @@
1
- {"version":3,"file":"ReconciliationScanner.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReconciliationScanner.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Drift detection for the System_State reconciliation scan.
3
+ *
4
+ * Compares one provider snapshot against the durable desired state and
5
+ * classifies every desired row as matched, drifted, or missing. Anchor and
6
+ * identity duplicates quarantine the affected locators instead of letting the
7
+ * last row win silently, so a corrupted anchor or duplicated business key can
8
+ * never prove ownership of a row.
9
+ */
10
+ import { type NormalizedCell } from "../../../../domain/index.js";
11
+ import { type SyncSheetsSnapshot } from "../../sheetsContract/syncSheets.js";
12
+ import type { DesiredRow } from "./shared.js";
13
+ export type DriftKind = "drifted" | "missing";
14
+ export interface DriftTarget {
15
+ readonly kind: DriftKind;
16
+ readonly desired: DesiredRow;
17
+ }
18
+ export declare function computeDrifts(args: {
19
+ readonly snapshot: SyncSheetsSnapshot;
20
+ readonly desired: readonly DesiredRow[];
21
+ readonly systemFields: readonly string[];
22
+ readonly sheet: {
23
+ readonly registeredRange: string;
24
+ readonly businessKeyField: string;
25
+ };
26
+ }): readonly DriftTarget[];
27
+ /** Reads a business-key value from a snapshot row for unanchored fast appends. */
28
+ export declare function snapshotIdentity(row: SyncSheetsSnapshot["rows"][number], identityField: string): string | undefined;
29
+ /** Reads the same visible business-key value from canonical desired state. */
30
+ export declare function desiredRowIdentity(row: DesiredRow, identityField: string): string | undefined;
31
+ export declare function normalizedCellIdentity(cell: NormalizedCell | undefined): string | undefined;
32
+ export declare function computeObservedHash(row: SyncSheetsSnapshot["rows"][number], systemFields: readonly string[]): string;
33
+ export declare function countMatchedRows(snapshot: SyncSheetsSnapshot, desired: readonly DesiredRow[], identityField: string): number;
34
+ export declare function countExtraRows(snapshot: SyncSheetsSnapshot, desired: readonly DesiredRow[], identityField: string): number;
35
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;CAC9B;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAClC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE,CAAC;CACzF,GAAG,SAAS,WAAW,EAAE,CAoDzB;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACvC,aAAa,EAAE,MAAM,GACpB,MAAM,GAAG,SAAS,CAEpB;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7F;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAY3F;AAED,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACvC,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,MAAM,CAOR;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,aAAa,EAAE,MAAM,GACpB,MAAM,CAqCR;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,aAAa,EAAE,MAAM,GACpB,MAAM,CAkDR"}