hikoutei 0.3.4 → 0.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ja.md +44 -21
- package/README.ko.md +43 -23
- package/README.md +49 -33
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmMappedTypedSheets.d.ts +3 -3
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmMappedTypedSheets.d.ts.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmMappedTypedSheets.js +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarEntityRuntime.d.ts +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarEntityRuntime.js +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarRuntime.js +3 -3
- package/dist/adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarRuntime.js.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.d.ts +3 -3
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.d.ts.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.js +15 -15
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPolling.js.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.d.ts +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.d.ts.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.js +3 -3
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingFastPath.js.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.d.ts +5 -5
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.d.ts.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.js +5 -5
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingInspection.js.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingPersistence.d.ts +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingPersistence.js +5 -5
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingPersistence.js.map +1 -1
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingSql.js +3 -3
- package/dist/adapter/persistence/providers/mikro-orm/observation/MikroOrmUserInputPollingSql.js.map +1 -1
- package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.d.ts +156 -0
- package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.js +1112 -0
- package/dist/adapter/sheets/providers/google-sheets-api/GoogleSheetsApiSyncProvider.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/constants.d.ts +87 -0
- package/dist/adapter/sheets/providers/google-sheets-api/constants.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/constants.js +97 -0
- package/dist/adapter/sheets/providers/google-sheets-api/constants.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/errors.d.ts +53 -0
- package/dist/adapter/sheets/providers/google-sheets-api/errors.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/errors.js +61 -0
- package/dist/adapter/sheets/providers/google-sheets-api/errors.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/index.d.ts +16 -0
- package/dist/adapter/sheets/providers/google-sheets-api/index.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/index.js +13 -0
- package/dist/adapter/sheets/providers/google-sheets-api/index.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/batchBuilder.d.ts +83 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/batchBuilder.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/batchBuilder.js +413 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/batchBuilder.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/observation.d.ts +86 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/observation.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/observation.js +439 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/observation.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/planner.d.ts +115 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/planner.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/planner.js +522 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/planner.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/postcondition.d.ts +17 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/postcondition.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/postcondition.js +99 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/postcondition.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/preflight.d.ts +242 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/preflight.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/preflight.js +707 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/preflight.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/sheetIdAllocator.d.ts +16 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/sheetIdAllocator.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/sheetIdAllocator.js +29 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/sheetIdAllocator.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/tableRead.d.ts +26 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/tableRead.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/tableRead.js +57 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/tableRead.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/valueNormalization.d.ts +102 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/valueNormalization.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/valueNormalization.js +375 -0
- package/dist/adapter/sheets/providers/google-sheets-api/model/valueNormalization.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/googleSheetsApiTransport.d.ts +168 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/googleSheetsApiTransport.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/googleSheetsApiTransport.js +247 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/googleSheetsApiTransport.js.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/rateLimiter.d.ts +47 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/rateLimiter.d.ts.map +1 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/rateLimiter.js +60 -0
- package/dist/adapter/sheets/providers/google-sheets-api/transport/rateLimiter.js.map +1 -0
- package/dist/api/Hikoutei.d.ts +1 -1
- package/dist/api/Hikoutei.js +1 -1
- package/dist/api/index.d.ts +2 -2
- package/dist/api/index.js +2 -2
- package/dist/application/orm/mapping/contracts.d.ts +2 -2
- package/dist/application/orm/mapping/contracts.d.ts.map +1 -1
- package/dist/application/orm/mapping/definition.js +5 -5
- package/dist/application/orm/mapping/definition.js.map +1 -1
- package/dist/application/orm/mapping/projection.js +7 -7
- package/dist/application/orm/mapping/projection.js.map +1 -1
- package/dist/application/orm/persistence/flush/flushCoordinator.d.ts +3 -3
- package/dist/application/orm/persistence/flush/flushCoordinator.d.ts.map +1 -1
- package/dist/application/orm/persistence/flush/flushCoordinator.js +2 -2
- package/dist/application/orm/persistence/flush/flushCoordinator.js.map +1 -1
- package/dist/application/orm/persistence/projection/projectionEffects.d.ts +1 -1
- package/dist/application/orm/persistence/projection/projectionEffects.js +6 -6
- package/dist/application/orm/persistence/projection/projectionEffects.js.map +1 -1
- package/dist/application/orm/persistence/support/contracts.d.ts +2 -2
- package/dist/application/orm/persistence/support/contracts.d.ts.map +1 -1
- package/dist/application/sync/inbound/autoSystemConflictResolution.js +7 -7
- package/dist/application/sync/inbound/autoSystemConflictResolution.js.map +1 -1
- package/dist/application/sync/inbound/polling/SimpleSheetPolling.d.ts +3 -3
- package/dist/application/sync/inbound/polling/SimpleSheetPolling.d.ts.map +1 -1
- package/dist/application/sync/inbound/polling/SimpleSheetPolling.js +1 -1
- package/dist/application/sync/inbound/polling/SimpleSheetPolling.js.map +1 -1
- package/dist/application/sync/outbound/effects/AdaptiveEffectBatchController.d.ts +17 -1
- package/dist/application/sync/outbound/effects/AdaptiveEffectBatchController.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/AdaptiveEffectBatchController.js +27 -1
- package/dist/application/sync/outbound/effects/AdaptiveEffectBatchController.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectSupervisor.d.ts +2 -2
- package/dist/application/sync/outbound/effects/SyncEffectSupervisor.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectSupervisor.js +26 -6
- package/dist/application/sync/outbound/effects/SyncEffectSupervisor.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorker.d.ts +24 -9
- package/dist/application/sync/outbound/effects/SyncEffectWorker.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorker.js +128 -81
- package/dist/application/sync/outbound/effects/SyncEffectWorker.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerConstants.d.ts +31 -14
- package/dist/application/sync/outbound/effects/SyncEffectWorkerConstants.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerConstants.js +32 -15
- package/dist/application/sync/outbound/effects/SyncEffectWorkerConstants.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerDispatch.d.ts +13 -9
- package/dist/application/sync/outbound/effects/SyncEffectWorkerDispatch.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerDispatch.js +53 -37
- package/dist/application/sync/outbound/effects/SyncEffectWorkerDispatch.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerHelpers.js +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerHelpers.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerRouting.d.ts +29 -19
- package/dist/application/sync/outbound/effects/SyncEffectWorkerRouting.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerRouting.js +59 -41
- package/dist/application/sync/outbound/effects/SyncEffectWorkerRouting.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTiming.d.ts +4 -4
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTiming.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTiming.js +3 -3
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTiming.js.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTransitions.d.ts +3 -3
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTransitions.d.ts.map +1 -1
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTransitions.js +42 -46
- package/dist/application/sync/outbound/effects/SyncEffectWorkerTransitions.js.map +1 -1
- package/dist/application/sync/outbound/projection/ProjectionEffectFactory.d.ts +8 -8
- package/dist/application/sync/outbound/projection/ProjectionEffectFactory.d.ts.map +1 -1
- package/dist/application/sync/outbound/projection/ProjectionEffectFactory.js +15 -15
- package/dist/application/sync/outbound/projection/ProjectionEffectFactory.js.map +1 -1
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.d.ts +3 -3
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.d.ts.map +1 -1
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.js +10 -10
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.js.map +1 -1
- package/dist/application/sync/service/SyncPollingSupervisor.d.ts +1 -1
- package/dist/application/sync/service/SyncPollingSupervisor.js +1 -1
- package/dist/application/sync/service/SyncServiceBootstrap.d.ts +29 -19
- package/dist/application/sync/service/SyncServiceBootstrap.d.ts.map +1 -1
- package/dist/application/sync/service/SyncServiceBootstrap.js +103 -78
- package/dist/application/sync/service/SyncServiceBootstrap.js.map +1 -1
- package/dist/application/sync/service/errors.d.ts +1 -1
- package/dist/application/sync/service/errors.js +1 -1
- package/dist/application/sync/service/errors.js.map +1 -1
- package/dist/application/sync/sheets/conflictProjection.d.ts.map +1 -0
- package/dist/application/sync/sheets/conflictProjection.js.map +1 -0
- package/dist/application/sync/{gateway → sheets}/conflictProjectionRegistration.d.ts +1 -1
- package/dist/application/sync/sheets/conflictProjectionRegistration.d.ts.map +1 -0
- package/dist/application/sync/{gateway → sheets}/conflictProjectionRegistration.js +3 -3
- package/dist/application/sync/sheets/conflictProjectionRegistration.js.map +1 -0
- package/dist/application/sync/sheets/constants.d.ts +66 -0
- package/dist/application/sync/sheets/constants.d.ts.map +1 -0
- package/dist/application/sync/{gateway → sheets}/constants.js +15 -15
- package/dist/application/sync/sheets/constants.js.map +1 -0
- package/dist/application/sync/sheets/errors.d.ts +15 -0
- package/dist/application/sync/sheets/errors.d.ts.map +1 -0
- package/dist/application/sync/sheets/errors.js +16 -0
- package/dist/application/sync/sheets/errors.js.map +1 -0
- package/dist/application/sync/{gateway/coordinator/CoordinatedSyncGateway.d.ts → sheets/mutationCoordinator/CoordinatedSheetsProvider.d.ts} +29 -28
- package/dist/application/sync/sheets/mutationCoordinator/CoordinatedSheetsProvider.d.ts.map +1 -0
- package/dist/application/sync/{gateway/coordinator/CoordinatedSyncGateway.js → sheets/mutationCoordinator/CoordinatedSheetsProvider.js} +27 -26
- package/dist/application/sync/sheets/mutationCoordinator/CoordinatedSheetsProvider.js.map +1 -0
- package/dist/application/sync/{gateway/coordinator → sheets/mutationCoordinator}/asyncMutex.d.ts +2 -3
- package/dist/application/sync/sheets/mutationCoordinator/asyncMutex.d.ts.map +1 -0
- package/dist/application/sync/sheets/mutationCoordinator/asyncMutex.js.map +1 -0
- package/dist/application/sync/{gateway/coordinator/coordinatorTelemetry.d.ts → sheets/mutationCoordinator/laneTelemetry.d.ts} +4 -4
- package/dist/application/sync/sheets/mutationCoordinator/laneTelemetry.d.ts.map +1 -0
- package/dist/application/sync/{gateway/coordinator/coordinatorTelemetry.js → sheets/mutationCoordinator/laneTelemetry.js} +5 -5
- package/dist/application/sync/sheets/mutationCoordinator/laneTelemetry.js.map +1 -0
- package/dist/application/sync/{gateway/SyncGatewayBootstrap.d.ts → sheets/sheetsProvisioning.d.ts} +14 -14
- package/dist/application/sync/sheets/sheetsProvisioning.d.ts.map +1 -0
- package/dist/application/sync/sheets/sheetsProvisioning.js +95 -0
- package/dist/application/sync/sheets/sheetsProvisioning.js.map +1 -0
- package/dist/application/sync/{gateway/syncGateway.d.ts → sheets/syncSheets.d.ts} +61 -117
- package/dist/application/sync/sheets/syncSheets.d.ts.map +1 -0
- package/dist/application/sync/sheets/syncSheets.js +144 -0
- package/dist/application/sync/sheets/syncSheets.js.map +1 -0
- package/dist/application/sync/{gateway/transportClassification.d.ts → sheets/transportOutcome.d.ts} +23 -22
- package/dist/application/sync/sheets/transportOutcome.d.ts.map +1 -0
- package/dist/application/sync/sheets/transportOutcome.js +97 -0
- package/dist/application/sync/sheets/transportOutcome.js.map +1 -0
- package/dist/application/sync/sheets/validation.d.ts +22 -0
- package/dist/application/sync/sheets/validation.d.ts.map +1 -0
- package/dist/application/sync/sheets/validation.js +79 -0
- package/dist/application/sync/sheets/validation.js.map +1 -0
- package/dist/application/sync/telemetry/syncTiming.d.ts +7 -7
- package/dist/application/sync/telemetry/syncTiming.d.ts.map +1 -1
- package/dist/application/sync/telemetry/syncTiming.js +2 -2
- package/dist/application/sync/telemetry/syncTiming.js.map +1 -1
- package/dist/domain/evaluate/contracts.d.ts +1 -1
- package/dist/domain/evaluate/contracts.js +1 -1
- package/dist/domain/model/constants.d.ts +1 -1
- package/dist/domain/model/constants.d.ts.map +1 -1
- package/dist/domain/model/types.d.ts +1 -1
- package/dist/domain/model/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/storage/index.d.ts +1 -1
- package/dist/infrastructure/storage/index.d.ts.map +1 -1
- package/dist/infrastructure/storage/index.js +1 -1
- package/dist/infrastructure/storage/index.js.map +1 -1
- package/dist/infrastructure/storage/state/observation/observationAudit.d.ts +1 -1
- package/dist/infrastructure/storage/state/observation/observationAudit.js +1 -1
- package/dist/infrastructure/storage/state/observation/observationTypes.d.ts +3 -3
- package/dist/infrastructure/storage/state/observation/observationTypes.d.ts.map +1 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutbox.d.ts +13 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutbox.d.ts.map +1 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutbox.js +23 -2
- package/dist/infrastructure/storage/sync/outbound/effectOutbox.js.map +1 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutboxContracts.d.ts +9 -3
- package/dist/infrastructure/storage/sync/outbound/effectOutboxContracts.d.ts.map +1 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutboxContracts.js +7 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutboxContracts.js.map +1 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutboxSql.d.ts +11 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutboxSql.d.ts.map +1 -1
- package/dist/infrastructure/storage/sync/outbound/effectOutboxSql.js +44 -3
- package/dist/infrastructure/storage/sync/outbound/effectOutboxSql.js.map +1 -1
- package/dist/infrastructure/storage/sync/shared/syncRegistry.d.ts +4 -4
- package/dist/infrastructure/storage/sync/shared/syncRegistry.d.ts.map +1 -1
- package/dist/infrastructure/storage/sync/shared/syncRegistry.js +4 -4
- package/dist/infrastructure/storage/sync/shared/syncRegistry.js.map +1 -1
- package/dist/shared/encoding/types.d.ts +1 -1
- package/docs/architecture.md +52 -23
- package/docs/ci.md +31 -23
- package/docs/code-guidelines.md +10 -18
- package/docs/development.md +37 -11
- package/docs/gateway-removal-inventory.md +147 -0
- package/docs/quick-start.md +36 -26
- package/docs/sync-bulk-write-benchmark.md +561 -0
- package/docs/sync-observability.md +38 -45
- package/docs/write-and-synchronization-flow.md +56 -39
- package/package.json +5 -4
- package/apps-script/gateway/Code.gs +0 -447
- package/dist/adapter/sheets/providers/apps-script-gateway/errors.d.ts +0 -43
- package/dist/adapter/sheets/providers/apps-script-gateway/errors.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/errors.js +0 -52
- package/dist/adapter/sheets/providers/apps-script-gateway/errors.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/index.d.ts +0 -24
- package/dist/adapter/sheets/providers/apps-script-gateway/index.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/index.js +0 -13
- package/dist/adapter/sheets/providers/apps-script-gateway/index.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperation.d.ts +0 -44
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperation.js +0 -181
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperation.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperationScript.d.ts +0 -3
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperationScript.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperationScript.js +0 -810
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/effect/effectOperationScript.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/observation/observationOperation.d.ts +0 -31
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/observation/observationOperation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/observation/observationOperation.js +0 -560
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/observation/observationOperation.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/read/tableReadOperation.d.ts +0 -12
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/read/tableReadOperation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/read/tableReadOperation.js +0 -166
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/read/tableReadOperation.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/shared/appsScriptStableCodecSource.d.ts +0 -8
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/shared/appsScriptStableCodecSource.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/shared/appsScriptStableCodecSource.js +0 -122
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/shared/appsScriptStableCodecSource.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/batchAppendOperation.d.ts +0 -31
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/batchAppendOperation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/batchAppendOperation.js +0 -567
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/batchAppendOperation.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/fastAppendOperation.d.ts +0 -19
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/fastAppendOperation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/fastAppendOperation.js +0 -37
- package/dist/adapter/sheets/providers/apps-script-gateway/operations/write/fastAppendOperation.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/codeGsProtocol.d.ts +0 -51
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/codeGsProtocol.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/codeGsProtocol.js +0 -60
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/codeGsProtocol.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/constants.d.ts +0 -44
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/constants.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/constants.js +0 -40
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/constants.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/syncProtocol.d.ts +0 -12
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/syncProtocol.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/syncProtocol.js +0 -41
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/syncProtocol.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/timing.d.ts +0 -5
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/timing.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/timing.js +0 -53
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/timing.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/types.d.ts +0 -4
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/types.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/types.js +0 -2
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/types.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/validation.d.ts +0 -11
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/validation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/validation.js +0 -36
- package/dist/adapter/sheets/providers/apps-script-gateway/protocol/validation.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationClient.d.ts +0 -68
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationClient.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationClient.js +0 -273
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationClient.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationSyncGateway.d.ts +0 -73
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationSyncGateway.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationSyncGateway.js +0 -363
- package/dist/adapter/sheets/providers/apps-script-gateway/transport/operationSyncGateway.js.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/validation.d.ts +0 -3
- package/dist/adapter/sheets/providers/apps-script-gateway/validation.d.ts.map +0 -1
- package/dist/adapter/sheets/providers/apps-script-gateway/validation.js +0 -10
- package/dist/adapter/sheets/providers/apps-script-gateway/validation.js.map +0 -1
- package/dist/application/sync/gateway/SyncGatewayBootstrap.d.ts.map +0 -1
- package/dist/application/sync/gateway/SyncGatewayBootstrap.js +0 -95
- package/dist/application/sync/gateway/SyncGatewayBootstrap.js.map +0 -1
- package/dist/application/sync/gateway/conflictProjection.d.ts.map +0 -1
- package/dist/application/sync/gateway/conflictProjection.js.map +0 -1
- package/dist/application/sync/gateway/conflictProjectionRegistration.d.ts.map +0 -1
- package/dist/application/sync/gateway/conflictProjectionRegistration.js.map +0 -1
- package/dist/application/sync/gateway/constants.d.ts +0 -66
- package/dist/application/sync/gateway/constants.d.ts.map +0 -1
- package/dist/application/sync/gateway/constants.js.map +0 -1
- package/dist/application/sync/gateway/coordinator/CoordinatedSyncGateway.d.ts.map +0 -1
- package/dist/application/sync/gateway/coordinator/CoordinatedSyncGateway.js.map +0 -1
- package/dist/application/sync/gateway/coordinator/asyncMutex.d.ts.map +0 -1
- package/dist/application/sync/gateway/coordinator/asyncMutex.js.map +0 -1
- package/dist/application/sync/gateway/coordinator/coordinatorTelemetry.d.ts.map +0 -1
- package/dist/application/sync/gateway/coordinator/coordinatorTelemetry.js.map +0 -1
- package/dist/application/sync/gateway/errors.d.ts +0 -15
- package/dist/application/sync/gateway/errors.d.ts.map +0 -1
- package/dist/application/sync/gateway/errors.js +0 -16
- package/dist/application/sync/gateway/errors.js.map +0 -1
- package/dist/application/sync/gateway/syncGateway.d.ts.map +0 -1
- package/dist/application/sync/gateway/syncGateway.js +0 -191
- package/dist/application/sync/gateway/syncGateway.js.map +0 -1
- package/dist/application/sync/gateway/transportClassification.d.ts.map +0 -1
- package/dist/application/sync/gateway/transportClassification.js +0 -133
- package/dist/application/sync/gateway/transportClassification.js.map +0 -1
- package/dist/application/sync/gateway/validation.d.ts +0 -22
- package/dist/application/sync/gateway/validation.d.ts.map +0 -1
- package/dist/application/sync/gateway/validation.js +0 -79
- package/dist/application/sync/gateway/validation.js.map +0 -1
- /package/dist/application/sync/{gateway → sheets}/conflictProjection.d.ts +0 -0
- /package/dist/application/sync/{gateway → sheets}/conflictProjection.js +0 -0
- /package/dist/application/sync/{gateway/coordinator → sheets/mutationCoordinator}/asyncMutex.js +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* SQLite registry/allowlist operations for the sync
|
|
2
|
+
* SQLite registry/allowlist operations for the sync provider.
|
|
3
3
|
*
|
|
4
|
-
* The local registry is the source of truth used to choose a
|
|
4
|
+
* The local registry is the source of truth used to choose a provider range.
|
|
5
5
|
* A caller cannot turn an arbitrary tab name into a sync target by merely
|
|
6
|
-
* passing it to the
|
|
6
|
+
* passing it to the provider client.
|
|
7
7
|
*/
|
|
8
8
|
import { type RegisteredProjectionKind } from "../../../../domain/model/constants.js";
|
|
9
9
|
import type { SqlExecutor, SqlStorageAdapter } from "../../../../adapter/persistence/contracts/sql.js";
|
|
@@ -25,7 +25,7 @@ export interface RegisterSyncSheetInput {
|
|
|
25
25
|
/** Compatibility with the pre-foundation developer-metadata fixture path. */
|
|
26
26
|
readonly anchorMode?: "business_key" | "developer_metadata";
|
|
27
27
|
}
|
|
28
|
-
/** Registry row used for all
|
|
28
|
+
/** Registry row used for all provider requests. */
|
|
29
29
|
export interface RegisteredSyncSheet {
|
|
30
30
|
readonly logicalSheetId: string;
|
|
31
31
|
readonly physicalSheetId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncRegistry.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/storage/sync/shared/syncRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAsC1B,sEAAsE;AACtE,MAAM,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AAE5D,4EAA4E;AAC5E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,4FAA4F;IAC5F,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG,oBAAoB,CAAC;CAC7D;AAED,
|
|
1
|
+
{"version":3,"file":"syncRegistry.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/storage/sync/shared/syncRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,uCAAuC,CAAC;AAE/C,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAsC1B,sEAAsE;AACtE,MAAM,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AAE5D,4EAA4E;AAC5E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,4FAA4F;IAC5F,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG,oBAAoB,CAAC;CAC7D;AAED,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,oBAAoB,CAAC;CAC5D;AAED,gFAAgF;AAChF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,GACpE;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AAEpC;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CA+DlC;AAED,yEAAyE;AACzE,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CAElC;AAED,qFAAqF;AACrF,wBAAsB,iCAAiC,CACrD,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAS9B;AAED,sFAAsF;AACtF,wBAAsB,qCAAqC,CACzD,OAAO,EAAE,iBAAiB,EAC1B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAE9B"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* SQLite registry/allowlist operations for the sync
|
|
2
|
+
* SQLite registry/allowlist operations for the sync provider.
|
|
3
3
|
*
|
|
4
|
-
* The local registry is the source of truth used to choose a
|
|
4
|
+
* The local registry is the source of truth used to choose a provider range.
|
|
5
5
|
* A caller cannot turn an arbitrary tab name into a sync target by merely
|
|
6
|
-
* passing it to the
|
|
6
|
+
* passing it to the provider client.
|
|
7
7
|
*/
|
|
8
8
|
import { STORAGE_ERROR_CODES, StorageError } from "../../errors.js";
|
|
9
9
|
import { REGISTERED_PROJECTION_KINDS, } from "../../../../domain/model/constants.js";
|
|
@@ -197,7 +197,7 @@ function isRegisteredProjection(value) {
|
|
|
197
197
|
value === REGISTERED_PROJECTION_KINDS.SYSTEM_STATE ||
|
|
198
198
|
value === REGISTERED_PROJECTION_KINDS.SYNC_CONFLICTS;
|
|
199
199
|
}
|
|
200
|
-
/** Normalizes the v1 whole-column
|
|
200
|
+
/** Normalizes the v1 whole-column provider boundary to the form accepted by the Sheets provider. */
|
|
201
201
|
function normalizeRegisteredRange(value, errorCode) {
|
|
202
202
|
const normalized = value.trim().toUpperCase();
|
|
203
203
|
const match = /^([A-Z]+):([A-Z]+)$/.exec(normalized);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncRegistry.js","sourceRoot":"","sources":["../../../../../src/infrastructure/storage/sync/shared/syncRegistry.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"syncRegistry.js","sourceRoot":"","sources":["../../../../../src/infrastructure/storage/sync/shared/syncRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAyB,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EACL,2BAA2B,GAE5B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EACL,qBAAqB,GAEtB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,mCAAmC,GAAG;;;;CAI3C,CAAC;AAEF,MAAM,qCAAqC,GAAG;;;;CAI7C,CAAC;AAEF,MAAM,oCAAoC,GAAG;;;;;CAK5C,CAAC;AAEF,MAAM,sCAAsC,GAAG;;;;;CAK9C,CAAC;AAEF,MAAM,8BAA8B,GAAG;;;;;;;;CAQtC,CAAC;AAyCF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,GAAgB,EAChB,KAAqB,EACrB,KAA6B;IAE7B,MAAM,eAAe,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAC1D,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACtC,IAAI,CAAC,CAAC,MAAM,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAE9E,OAAO,gBAAgB,CAAC,GAAG,EAAE,qBAAqB,EAAE,KAAK,IAAI,EAAE;QAC7D,IAAI,CAAC,CAAC,MAAM,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;QAC9E,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAa,mCAAmC,EAAE;YAC7E,eAAe,CAAC,cAAc;SAC/B,CAAC,CAAC;QACH,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,qCAAqC,EAAE;gBACpE,eAAe,CAAC,cAAc;gBAC9B,eAAe,CAAC,aAAa;gBAC7B,eAAe,CAAC,qBAAqB;gBACrC,eAAe,CAAC,gBAAgB;gBAChC,eAAe,CAAC,UAAU,IAAI,cAAc;aAC7C,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,8BAA8B,EAClD,kCAAkC,CACnC,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,0BAA0B,EAC9C,uEAAuE,CACxE,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAAc,oCAAoC,EAAE;YAChF,eAAe,CAAC,eAAe;SAChC,CAAC,CAAC;QACH,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,sCAAsC,EAAE;gBACrE,eAAe,CAAC,eAAe;gBAC/B,eAAe,CAAC,cAAc;gBAC9B,eAAe,CAAC,aAAa;gBAC7B,eAAe,CAAC,OAAO;gBACvB,eAAe,CAAC,eAAe;gBAC/B,eAAe,CAAC,UAAU;gBAC1B,eAAe,CAAC,aAAa;gBAC7B,eAAe,CAAC,UAAU,IAAI,cAAc;aAC7C,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,8BAA8B,EAClD,mCAAmC,CACpC,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,eAAe,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,0BAA0B,EAC9C,wEAAwE,CACzE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,MAAM,iCAAiC,CAAC,GAAG,EAAE,eAAe,CAAC,eAAe,CAAC;SACrF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,yEAAyE;AACzE,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAA0B,EAC1B,KAAqB,EACrB,KAA6B;IAE7B,OAAO,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,wBAAwB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,GAAgB,EAChB,eAAuB;IAEvB,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,yBAAyB,EAC7C,+BAA+B,CAChC,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,CAAgB,8BAA8B,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAC5F,OAAO,0BAA0B,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,qCAAqC,CACzD,OAA0B,EAC1B,eAAuB;IAEvB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,iCAAiC,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;AAC5F,CAAC;AAoCD,SAAS,oBAAoB,CAAC,KAA6B;IACzD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI;QAC3B,CAAC,kBAAkB,EAAE,KAAK,CAAC,cAAc,CAAC;QAC1C,CAAC,mBAAmB,EAAE,KAAK,CAAC,eAAe,CAAC;QAC5C,CAAC,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC;QACvC,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;QAC3B,CAAC,kBAAkB,EAAE,KAAK,CAAC,eAAe,CAAC;QAC3C,CAAC,oBAAoB,EAAE,KAAK,CAAC,qBAAqB,CAAC;QACnD,CAAC,oBAAoB,EAAE,KAAK,CAAC,gBAAgB,CAAC;KACtC,EAAE,CAAC;QACX,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,yBAAyB,EAC7C,KAAK,GAAG,cAAc,CACvB,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,yBAAyB,EAC7C,gDAAgD,CACjD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,yBAAyB,EAC7C,6BAA6B,CAC9B,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,cAAc,EAAE,CAAC;QAC1E,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,yBAAyB,EAC7C,kDAAkD,CACnD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,yBAAyB,EAC7C,uCAAuC,CACxC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CAAC,KAA6B;IAC/D,OAAO;QACL,GAAG,KAAK;QACR,eAAe,EAAE,wBAAwB,CACvC,KAAK,CAAC,eAAe,EACrB,mBAAmB,CAAC,yBAAyB,CAC9C;KACF,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAoB,EAAE,KAA6B;IAClF,OAAO,QAAQ,CAAC,cAAc,KAAK,KAAK,CAAC,aAAa;QACpD,QAAQ,CAAC,uBAAuB,KAAK,KAAK,CAAC,qBAAqB;QAChE,QAAQ,CAAC,kBAAkB,KAAK,KAAK,CAAC,gBAAgB;QACtD,QAAQ,CAAC,WAAW,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC;QAC7D,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAqB,EAAE,KAA6B;IACpF,OAAO,QAAQ,CAAC,gBAAgB,KAAK,KAAK,CAAC,cAAc;QACvD,QAAQ,CAAC,cAAc,KAAK,KAAK,CAAC,aAAa;QAC/C,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,OAAO;QACnC,QAAQ,CAAC,gBAAgB,KAAK,KAAK,CAAC,eAAe;QACnD,QAAQ,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU;QACxC,QAAQ,CAAC,cAAc,KAAK,KAAK,CAAC,aAAa;QAC/C,QAAQ,CAAC,WAAW,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC;QAC7D,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,0BAA0B,CAAC,GAA8B;IAChE,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,GAAG,CAAC,eAAe,KAAK,CAAC,EAAE,CAAC;QACjF,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,gCAAgC,EACpD,uDAAuD,CACxD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,WAAW,KAAK,cAAc,EAAE,CAAC;QAClF,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,gCAAgC,EACpD,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,wBAAwB,CAC9C,GAAG,CAAC,gBAAgB,EACpB,mBAAmB,CAAC,gCAAgC,CACrD,CAAC;IACF,IAAI,eAAe,KAAK,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,IAAI,YAAY,CACpB,mBAAmB,CAAC,gCAAgC,EACpD,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,OAAO;QACL,cAAc,EAAE,GAAG,CAAC,gBAAgB;QACpC,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,OAAO,EAAE,GAAG,CAAC,QAAQ;QACrB,eAAe;QACf,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,qBAAqB,EAAE,GAAG,CAAC,uBAAuB;QAClD,gBAAgB,EAAE,GAAG,CAAC,kBAAkB;QACxC,UAAU,EAAE,cAAc;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,OAAO,KAAK,KAAK,2BAA2B,CAAC,UAAU;QACrD,KAAK,KAAK,2BAA2B,CAAC,YAAY;QAClD,KAAK,KAAK,2BAA2B,CAAC,cAAc,CAAC;AACzD,CAAC;AAED,oGAAoG;AACpG,SAAS,wBAAwB,CAAC,KAAa,EAAE,SAA2B;IAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,IAAI,YAAY,CAAC,SAAS,EAAE,2DAA2D,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;QACpF,MAAM,IAAI,YAAY,CAAC,SAAS,EAAE,2DAA2D,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,SAA2B;IACrE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,YAAY,CAAC,SAAS,EAAE,yCAAyC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -27,7 +27,7 @@ export type NormalizedCell = null | {
|
|
|
27
27
|
readonly value: boolean;
|
|
28
28
|
} | DateValue;
|
|
29
29
|
/**
|
|
30
|
-
* Physical Sheet metadata retained by the internal observation/
|
|
30
|
+
* Physical Sheet metadata retained by the internal observation/provider path.
|
|
31
31
|
* This compatibility type is intentionally not part of the public root API.
|
|
32
32
|
*/
|
|
33
33
|
export interface CellObservation {
|
package/docs/architecture.md
CHANGED
|
@@ -5,7 +5,7 @@ asynchronous human-facing projection. SQLite is the authority; Sheets is an
|
|
|
5
5
|
internal service-side projection and human input surface.
|
|
6
6
|
|
|
7
7
|
> The root package API is ORM-only. Sheet synchronization is implemented inside
|
|
8
|
-
> `src`, but its bootstrap,
|
|
8
|
+
> `src`, but its bootstrap, worker, and storage contracts are not root
|
|
9
9
|
> exports.
|
|
10
10
|
|
|
11
11
|
## System shape
|
|
@@ -20,7 +20,7 @@ Application code
|
|
|
20
20
|
├─ durable Sheet effect outbox
|
|
21
21
|
├─ outbound effect worker
|
|
22
22
|
├─ User_Input polling
|
|
23
|
-
└─
|
|
23
|
+
└─ sync provider (googleSheetsApi)
|
|
24
24
|
└─ Google Sheets projections
|
|
25
25
|
```
|
|
26
26
|
|
|
@@ -35,15 +35,14 @@ src/domain/ pure normalization/evaluation/conflict rules
|
|
|
35
35
|
src/application/orm/ public ORM facade and mapped flush planning
|
|
36
36
|
src/application/sync/ internal sync engine and service bootstrap
|
|
37
37
|
src/adapter/persistence/ SQLite/MikroORM implementation
|
|
38
|
-
src/adapter/sheets/
|
|
38
|
+
src/adapter/sheets/ Google Sheets API provider (sync provider contracts + implementation)
|
|
39
39
|
src/infrastructure/storage/ canonical, observation, resolution, outbox state
|
|
40
40
|
src/api/ root-facing entity and EntityManager facade
|
|
41
41
|
src/index.ts root public barrel only
|
|
42
|
-
apps-script/gateway/ deployable Apps Script code
|
|
43
42
|
```
|
|
44
43
|
|
|
45
44
|
`src` does not mean public. The only application-facing package entrypoint is
|
|
46
|
-
`src/index.ts`; package subpaths for providers,
|
|
45
|
+
`src/index.ts`; package subpaths for providers, sync operations, polling,
|
|
47
46
|
and sync state are not part of the contract.
|
|
48
47
|
|
|
49
48
|
## Root public API
|
|
@@ -76,7 +75,7 @@ await em.flush();
|
|
|
76
75
|
The public surface contains entity definition, runtime creation, and the
|
|
77
76
|
request-local `EntityManager` lifecycle: `fork()`, `create()`, `find()`,
|
|
78
77
|
`findOne()`, `persist()`, `remove()`, `flush()`, and `transactional()`.
|
|
79
|
-
MikroORM, raw SQL,
|
|
78
|
+
MikroORM, raw SQL, provider clients, Sheet routes, provisioning, polling, and
|
|
80
79
|
outbox controls are internal.
|
|
81
80
|
|
|
82
81
|
## SQLite authority
|
|
@@ -104,23 +103,53 @@ fixed headers are missing or drifted.
|
|
|
104
103
|
## Google Sheets projection
|
|
105
104
|
|
|
106
105
|
The internal service provisions and validates registered projection tabs before
|
|
107
|
-
starting delivery. It owns the
|
|
108
|
-
response-loss recovery, reconciliation, and
|
|
106
|
+
starting delivery. It owns the sync provider (service-account Google Sheets API
|
|
107
|
+
by default), effect worker, response-loss recovery, reconciliation, and
|
|
108
|
+
User_Input polling.
|
|
109
109
|
|
|
110
110
|
The application does not call Sheet operations. A successful public `flush()`
|
|
111
111
|
means that the local SQLite transaction committed. It does not mean that a
|
|
112
112
|
remote Sheet write has completed.
|
|
113
113
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
114
|
+
### Full direct provider (service account, preferred)
|
|
115
|
+
|
|
116
|
+
The preferred production path uses the internal `googleSheetsApi` service
|
|
117
|
+
option: ONE Google Sheets API provider under
|
|
118
|
+
`src/adapter/sheets/providers/google-sheets-api/` implements every provider
|
|
119
|
+
capability the runtime needs — provisioning, outbound effects (fast append,
|
|
120
|
+
guarded update/delete, receipts, response-loss recovery), values-only table
|
|
121
|
+
reads, row-anchor assignment, and full metadata snapshots. It authenticates
|
|
122
|
+
with Application Default Credentials (`GOOGLE_APPLICATION_CREDENTIALS` service
|
|
123
|
+
account shared on the spreadsheet), disables SDK auto-retry (retries are the
|
|
124
|
+
durable worker's job), enforces request-start intervals of 1,100 ms per
|
|
125
|
+
request class (reads and writes separately), and batches every applicable
|
|
126
|
+
target mutation plus its receipt writes into one atomic
|
|
127
|
+
`spreadsheets.batchUpdate`. The provider paces and reports every transport
|
|
128
|
+
call individually; a serialized batch over ~2 MB is trimmed to an
|
|
129
|
+
order-preserving prefix with `hasMore`. Transport failures are classified by
|
|
130
|
+
the shared `classifyTransportOutcome` boundary: proven pre-mutation 4xx
|
|
131
|
+
rejections are explicit remote failures, while timeouts, network errors,
|
|
132
|
+
408/429/5xx, and malformed 2xx replies stay delivery-uncertain and are
|
|
133
|
+
recovered through the shared postcondition probe path. Telemetry carries only
|
|
134
|
+
operation names, counts, durations, and stable codes — never credentials,
|
|
135
|
+
spreadsheet IDs, URLs, or payloads.
|
|
136
|
+
|
|
137
|
+
Provisioning creates missing tabs and initializes header rows in one atomic
|
|
138
|
+
batch and fails closed on any header drift; snapshot wire shapes (merged,
|
|
139
|
+
error, formula, literal/blank cells plus stableHash evidence) are stable
|
|
140
|
+
across providers, so reconciliation evidence is provider-independent. No Apps
|
|
141
|
+
Script deployment is required.
|
|
142
|
+
|
|
143
|
+
### Removed: Apps Script gateway
|
|
144
|
+
|
|
145
|
+
The signed Apps Script gateway and the `appsScript`/`googleApiWorker` options
|
|
146
|
+
were removed in this cleanup. The service-account `googleSheetsApi` provider
|
|
147
|
+
above is the only sync path; existing deployments should switch to it. The
|
|
148
|
+
provider reads and writes the same tabs, receipt sheet, and anchor metadata,
|
|
149
|
+
so existing spreadsheets keep working without re-provisioning. Sheet
|
|
150
|
+
consistency does not rely on cross-request Sheet transactions; it comes from
|
|
151
|
+
the hidden effect-receipt tab, effect-id/payload-hash dedupe, the SQLite
|
|
152
|
+
durable outbox, fencing, and postcondition recovery.
|
|
124
153
|
|
|
125
154
|
`System_State` is materialized from canonical SQLite state. `User_Input` is
|
|
126
155
|
observed by the internal polling loop, evaluated with ownership and field-level
|
|
@@ -153,7 +182,7 @@ internal outbound effect supervisor
|
|
|
153
182
|
└─ reconcile remote drift
|
|
154
183
|
│
|
|
155
184
|
▼
|
|
156
|
-
|
|
185
|
+
sync provider (googleSheetsApi) ──▶ Google Sheets
|
|
157
186
|
|
|
158
187
|
internal User_Input polling
|
|
159
188
|
├─ adaptive values-only preflight over registered projections
|
|
@@ -171,15 +200,15 @@ a missing expected entity, or a type-invalid cell), or when the periodic safety
|
|
|
171
200
|
full scan falls due. The safety scan (default one minute, configurable) keeps
|
|
172
201
|
formula, merged, and error cell fidelity because the values-only read drops that
|
|
173
202
|
metadata; the scan's overdue lag is recorded for diagnostics. Outbound effects
|
|
174
|
-
are split into bounded sub-batches per physical route so one
|
|
203
|
+
are split into bounded sub-batches per physical route so one provider call returns
|
|
175
204
|
a complete result set, and a pass that only requeued uncertain work backs off with
|
|
176
205
|
a bounded delay instead of retrying a struggling remote in a tight loop.
|
|
177
206
|
|
|
178
207
|
The service bootstrap starts provisioning, outbound delivery, and inbound polling
|
|
179
208
|
as one internal runtime. Outbound dispatch keeps the SQLite outbox as its only
|
|
180
209
|
durable buffer, coalesces only a short in-process burst, and adapts each route's
|
|
181
|
-
|
|
182
|
-
signals. The effect lease is longer than the configured
|
|
210
|
+
provider batch between five and twenty effects from latency and response-loss
|
|
211
|
+
signals. The effect lease is longer than the configured provider timeout so a
|
|
183
212
|
slow but valid request is recovered only after its remote result is checked.
|
|
184
213
|
Ambiguous delivery is stored as `delivery_uncertain` with `uncertain_since`,
|
|
185
214
|
`next_probe_at`, and `dispatch_id`; only a due probe may return it to processing.
|
|
@@ -192,4 +221,4 @@ supervisor, and only then closes SQLite.
|
|
|
192
221
|
Hikoutei targets one local SQLite writer process and low-traffic MVP or internal
|
|
193
222
|
workflows. It is not a distributed transaction coordinator, a general-purpose
|
|
194
223
|
database, or a Google Sheets API replacement. Live Google integration remains
|
|
195
|
-
opt-in; normal tests use fake
|
|
224
|
+
opt-in; normal tests use fake providers and SQLite fixtures.
|
package/docs/ci.md
CHANGED
|
@@ -5,8 +5,8 @@ package. Each is built as an installed consumer: after `npm pack` it imports
|
|
|
5
5
|
from the packed tarball rather than from `src/**` or the source-only test
|
|
6
6
|
fake, and neither is allowed to import those.
|
|
7
7
|
|
|
8
|
-
1. **Internal sync
|
|
9
|
-
internal typed-sheets sync pipeline — projection registration,
|
|
8
|
+
1. **Internal sync E2E** (`scripts/ci/run-api-scenario.mjs`) drives the
|
|
9
|
+
internal typed-sheets sync pipeline — projection registration, sheet
|
|
10
10
|
provisioning, the bounded effect worker, polling, and the MikroORM-backed
|
|
11
11
|
storage/CAS/hash machinery — and loads implementation modules directly from
|
|
12
12
|
the packed `dist/` tree.
|
|
@@ -25,7 +25,7 @@ while the lifecycle itself imports only the root `hikoutei` entrypoint. This
|
|
|
25
25
|
guards the boundary directly in an installed consumer in addition to the
|
|
26
26
|
source-level tests.
|
|
27
27
|
|
|
28
|
-
## Internal sync
|
|
28
|
+
## Internal sync E2E
|
|
29
29
|
|
|
30
30
|
The scenario is built as an installed consumer: after `npm pack` it imports the
|
|
31
31
|
package entrypoints from the packed tarball rather than from `src/**` or the
|
|
@@ -60,7 +60,7 @@ contacts Google Sheets, never needs credentials, and never provisions remote
|
|
|
60
60
|
tabs, so it runs as a packed consumer only in the normal CI, develop, and stable
|
|
61
61
|
verify jobs and has no live counterpart. It is local-only — an in-memory SQLite
|
|
62
62
|
authority with no backend concept — not a fake-backend scenario like the
|
|
63
|
-
internal sync
|
|
63
|
+
internal sync E2E. Its entity lifecycle imports only the
|
|
64
64
|
root `hikoutei` package; the `hikoutei/orm` and `hikoutei/mikro-orm` dynamic
|
|
65
65
|
imports it performs are negative boundary assertions that must be rejected,
|
|
66
66
|
not part of the lifecycle.
|
|
@@ -68,7 +68,7 @@ not part of the lifecycle.
|
|
|
68
68
|
## Backends and triggers
|
|
69
69
|
|
|
70
70
|
The normal CI, develop, and stable verification jobs run **both** installed-consumer
|
|
71
|
-
scenarios — the internal sync
|
|
71
|
+
scenarios — the internal sync E2E and the installed root API smoke. The
|
|
72
72
|
internal E2E uses the **fake** backend (no Google Sheets contact, no
|
|
73
73
|
credentials); the root API smoke is local-only, an in-memory SQLite authority
|
|
74
74
|
(`:memory:`) with no backend concept. The workflows are:
|
|
@@ -84,32 +84,39 @@ credentials); the root API smoke is local-only, an in-memory SQLite authority
|
|
|
84
84
|
- `.github/workflows/stable-publish.yml` verifies and publishes that tag with
|
|
85
85
|
the `latest` dist-tag too.
|
|
86
86
|
|
|
87
|
-
Only the internal sync
|
|
87
|
+
Only the internal sync E2E has a live variant, in the separate
|
|
88
88
|
`.github/workflows/live-integration.yml` workflow. It is opt-in via
|
|
89
89
|
`workflow_dispatch` — a maintainer with write access dispatches it explicitly;
|
|
90
90
|
it never runs automatically on pull requests or pushes — and exercises
|
|
91
|
-
that single scenario against real Google Sheets with `--backend=live
|
|
91
|
+
that single scenario against real Google Sheets with `--backend=live
|
|
92
|
+
--outbound=direct`. The installed root API smoke has no live
|
|
92
93
|
counterpart: it is a local-only lifecycle smoke against an in-memory SQLite
|
|
93
94
|
authority, so it never runs there.
|
|
94
95
|
|
|
95
96
|
Because live is opt-in via `workflow_dispatch`, it is triggered manually by a
|
|
96
97
|
maintainer with write access rather than automatically on pull requests, so
|
|
97
|
-
there is no forked-PR secret-exposure path. The
|
|
98
|
-
|
|
98
|
+
there is no forked-PR secret-exposure path. The live path is
|
|
99
|
+
service-account-only: the workflow materializes the service-account key in
|
|
100
|
+
`$RUNNER_TEMP` and scopes the credential/spreadsheet environment to the live
|
|
101
|
+
execution and cleanup steps only, not the whole job, so
|
|
99
102
|
checkout/setup/install/build never see them. The live run uses a dedicated test
|
|
100
|
-
spreadsheet and the following GitHub Actions
|
|
103
|
+
spreadsheet shared with the service account and the following GitHub Actions
|
|
104
|
+
secrets:
|
|
101
105
|
|
|
102
|
-
- `
|
|
103
|
-
- `
|
|
104
|
-
|
|
106
|
+
- `GOOGLE_SERVICE_ACCOUNT_CREDENTIALS_JSON` (the service-account key JSON)
|
|
107
|
+
- `GOOGLE_SHEETS_TEST_SPREADSHEET_ID`
|
|
108
|
+
|
|
109
|
+
No gateway is deployed or invoked — the live path is service-account-only, so
|
|
110
|
+
the workflow needs only those two secrets.
|
|
105
111
|
|
|
106
112
|
## Cleanup
|
|
107
113
|
|
|
108
114
|
Each live run generates unique tab names from the workflow run ID. The runner
|
|
109
115
|
writes a manifest before provisioning, cleans those tabs in a `finally` path,
|
|
110
116
|
and the workflow repeats cleanup with `if: always()` so a failed assertion does
|
|
111
|
-
not leave the fixture behind.
|
|
112
|
-
|
|
117
|
+
not leave the fixture behind. Cleanup uses the same service account
|
|
118
|
+
(`deleteSheet` requests through the direct provider's transport) and removes
|
|
119
|
+
the shared receipt tab too. Do not point the live secrets at a production
|
|
113
120
|
spreadsheet; cleanup is intentionally scoped to the dedicated CI spreadsheet.
|
|
114
121
|
|
|
115
122
|
## Kohkai dependency
|
|
@@ -134,10 +141,11 @@ publishing Hikoutei. The first integration release therefore requires:
|
|
|
134
141
|
2. merge the Hikoutei dependency integration;
|
|
135
142
|
3. let the next develop release produce `0.3.2` from the current `0.3.1` baseline.
|
|
136
143
|
|
|
137
|
-
Existing Hikoutei releases remain unchanged.
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
144
|
+
Existing Hikoutei releases remain unchanged. The root
|
|
145
|
+
`test/kohkai-compatibility.test.ts` pins the Hikoutei shared stable encoding to
|
|
146
|
+
the Kohkai compatibility vectors and proves the local codec is byte-compatible
|
|
147
|
+
with the generic `@hikoutei/kohkai` codec; the Apps Script codec mirror was
|
|
148
|
+
removed with the gateway.
|
|
141
149
|
|
|
142
150
|
## Develop publication
|
|
143
151
|
|
|
@@ -148,7 +156,7 @@ an annotated tag such as `develop-v0.3.1`. The generated commit is guarded from
|
|
|
148
156
|
being processed as another release.
|
|
149
157
|
|
|
150
158
|
The tag triggers `.github/workflows/develop-publish.yml`. It repeats the
|
|
151
|
-
unit/type/build/package checks, the installed-package internal sync
|
|
159
|
+
unit/type/build/package checks, the installed-package internal sync
|
|
152
160
|
E2E, and the installed root API smoke before publishing the numeric package
|
|
153
161
|
version with the npm `latest` dist-tag. The version has no `-beta` suffix, and
|
|
154
162
|
a plain `npm install hikoutei` resolves this channel:
|
|
@@ -226,8 +234,8 @@ npm install hikoutei
|
|
|
226
234
|
## Artifacts
|
|
227
235
|
|
|
228
236
|
The CI, develop, and stable jobs each emit a JSON report for **both**
|
|
229
|
-
scenarios (internal sync
|
|
230
|
-
job emits a JSON report only for the internal sync
|
|
237
|
+
scenarios (internal sync E2E and installed root API smoke). The live
|
|
238
|
+
job emits a JSON report only for the internal sync E2E, the single
|
|
231
239
|
scenario it runs. Both runner scripts (`run-api-scenario.mjs` and
|
|
232
240
|
`run-root-api-scenario.mjs`) default their `--summary` option to
|
|
233
241
|
`GITHUB_STEP_SUMMARY`, so in GitHub Actions every CI/develop/stable invocation
|
|
@@ -239,7 +247,7 @@ installed-consumer scenario reports as a dedicated reports artifact
|
|
|
239
247
|
(`if: always()`), separate from the package artifact (`if: success()`) that the
|
|
240
248
|
publish job consumes. Setup time and steady-state time are reported separately
|
|
241
249
|
for the internal E2E so spreadsheet creation and header provisioning do not
|
|
242
|
-
distort the internal sync
|
|
250
|
+
distort the internal sync measurements.
|
|
243
251
|
|
|
244
252
|
The develop and stable package artifacts are each a single directory that
|
|
245
253
|
holds the npm tarball and its `sha256` checksum together under
|
package/docs/code-guidelines.md
CHANGED
|
@@ -13,7 +13,7 @@ The core value is safety around common Google Sheets-as-data-store failure modes
|
|
|
13
13
|
- invalid row parsing
|
|
14
14
|
- duplicate or missing key columns
|
|
15
15
|
- API quota pressure
|
|
16
|
-
-
|
|
16
|
+
- paced write serialization through the direct provider
|
|
17
17
|
|
|
18
18
|
## Positioning
|
|
19
19
|
|
|
@@ -60,8 +60,6 @@ MVP exclusions:
|
|
|
60
60
|
- migration engine
|
|
61
61
|
- lazy loading
|
|
62
62
|
- multi-row atomic transactions
|
|
63
|
-
- Apps Script automatic installation
|
|
64
|
-
- Apps Script Web App gateway
|
|
65
63
|
- caching
|
|
66
64
|
- request collapse
|
|
67
65
|
- retry/backoff
|
|
@@ -81,20 +79,15 @@ src/
|
|
|
81
79
|
shared/ # 도메인 간 공유 상수·인코딩·상태 계약
|
|
82
80
|
application/
|
|
83
81
|
orm/ # 공개 ORM facade, mapping, flush 계획
|
|
84
|
-
sync/ # worker, reconciliation,
|
|
82
|
+
sync/ # worker, reconciliation, Sheets 조정, telemetry
|
|
85
83
|
adapter/
|
|
86
84
|
persistence/
|
|
87
85
|
contracts/ # 저장소 공통 계약
|
|
88
86
|
providers/mikro-orm/ # 현재 MikroORM + SQLite 구현
|
|
89
87
|
sheets/
|
|
90
|
-
providers/
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
operations/
|
|
94
|
-
read/ # 테이블 읽기
|
|
95
|
-
write/ # fast append
|
|
96
|
-
observation/ # snapshot·anchor 관측
|
|
97
|
-
effect/ # update/delete effect
|
|
88
|
+
providers/google-sheets-api/
|
|
89
|
+
transport/ # paced REST transport client
|
|
90
|
+
model/ # preflight·planner·observation·batch 모델
|
|
98
91
|
infrastructure/
|
|
99
92
|
storage/ # SQLite canonical state와 outbox
|
|
100
93
|
index.ts
|
|
@@ -135,15 +128,16 @@ If a production source issue blocks the requested work, describe the blocker and
|
|
|
135
128
|
## Adapter Boundary
|
|
136
129
|
|
|
137
130
|
Adapters are split by capability and provider. A provider is a concrete
|
|
138
|
-
implementation such as MikroORM or
|
|
139
|
-
boundary that core, ORM, storage, or runtime code consumes.
|
|
131
|
+
implementation such as MikroORM or the Google Sheets REST provider; a contract
|
|
132
|
+
is the stable boundary that core, ORM, storage, or runtime code consumes.
|
|
140
133
|
|
|
141
134
|
- `adapter/persistence/contracts/`: SQL and persistence contracts independent of
|
|
142
135
|
MikroORM, Prisma, or another future implementation
|
|
143
136
|
- `adapter/persistence/providers/mikro-orm/`: the current MikroORM-backed
|
|
144
137
|
entity engine and SQLite storage bridge
|
|
145
|
-
- `adapter/sheets/providers/
|
|
146
|
-
provider, separated into
|
|
138
|
+
- `adapter/sheets/providers/google-sheets-api/`: the current direct Google
|
|
139
|
+
Sheets REST provider, separated into transport and model; the single sync
|
|
140
|
+
provider
|
|
147
141
|
|
|
148
142
|
The adapter should expose sheet-level operations in terms the core needs, not Google-specific concepts.
|
|
149
143
|
|
|
@@ -210,8 +204,6 @@ After the MVP is stable, possible extensions are:
|
|
|
210
204
|
- retry/backoff for 429 and transient 5xx
|
|
211
205
|
- Google Sheet template generator
|
|
212
206
|
- schema drift report
|
|
213
|
-
- Apps Script installer CLI
|
|
214
|
-
- Apps Script `LockService` write gateway
|
|
215
207
|
- audit log sheet
|
|
216
208
|
- `_createdAt` and `_updatedAt` system columns
|
|
217
209
|
- GitHub Action for schema verification
|
package/docs/development.md
CHANGED
|
@@ -13,14 +13,33 @@ npm run build
|
|
|
13
13
|
npm pack --dry-run
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
The default test suite uses fake
|
|
17
|
-
not require live Google credentials.
|
|
16
|
+
The default test suite uses a fake Sheets provider and SQLite/MikroORM fixtures.
|
|
17
|
+
It does not require live Google credentials.
|
|
18
18
|
|
|
19
19
|
## Google integration tests
|
|
20
20
|
|
|
21
|
-
Live Google Sheets tests are opt-in.
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
Live Google Sheets tests are opt-in. The tracked live path is
|
|
22
|
+
service-account-only: it requires a service-account key, a shared
|
|
23
|
+
spreadsheet, and consumes external quota. Keep secrets in an untracked
|
|
24
|
+
environment file and never commit them.
|
|
25
|
+
|
|
26
|
+
The internal end-to-end scenario runs against the fake backend by default
|
|
27
|
+
and against the live backend in full-direct mode:
|
|
28
|
+
|
|
29
|
+
```sh
|
|
30
|
+
node scripts/ci/run-api-scenario.mjs --backend fake
|
|
31
|
+
node scripts/ci/run-api-scenario.mjs --backend live --outbound direct
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
The live backend is the service-account-only direct provider, used for
|
|
35
|
+
provisioning, outbound effects, observation, `mutateRow`, and cleanup. It
|
|
36
|
+
requires `GOOGLE_APPLICATION_CREDENTIALS` and
|
|
37
|
+
`GOOGLE_SHEETS_TEST_SPREADSHEET_ID` — and nothing else. The report
|
|
38
|
+
records only `sheetMatched: true` for the direct mode and never prints
|
|
39
|
+
spreadsheet IDs.
|
|
40
|
+
|
|
41
|
+
`--backend live` always runs the direct provider; the removed gateway mode no
|
|
42
|
+
longer exists, so any `--outbound` value other than `direct` is rejected.
|
|
24
43
|
|
|
25
44
|
## Benchmarks
|
|
26
45
|
|
|
@@ -28,13 +47,17 @@ Performance measurements should be recorded in
|
|
|
28
47
|
[`sync-bulk-write-benchmark.md`](sync-bulk-write-benchmark.md). Separate:
|
|
29
48
|
|
|
30
49
|
- one-time setup from steady-state work
|
|
31
|
-
- raw
|
|
50
|
+
- raw transport writes from full worker drain
|
|
32
51
|
- reconciliation from the normal append path
|
|
33
|
-
- local SQLite/ORM time from HTTP and
|
|
52
|
+
- local SQLite/ORM time from HTTP and provider time
|
|
34
53
|
|
|
35
54
|
The benchmark history is not a universal Sheets performance guarantee. Network
|
|
36
|
-
latency,
|
|
37
|
-
change the result.
|
|
55
|
+
latency, Sheets API behavior, quotas, and spreadsheet state can
|
|
56
|
+
change the result. The full direct provider (`googleSheetsApi`) is not a
|
|
57
|
+
performance claim either: the raw-transport benchmarks under `scripts/bench/`
|
|
58
|
+
measure the unguarded API path (no receipts, no compare-and-set), while the
|
|
59
|
+
provider adds fail-closed guarantees (receipts and compare-and-set), so its
|
|
60
|
+
throughput is unverified until measured through the full worker.
|
|
38
61
|
|
|
39
62
|
## Package preview
|
|
40
63
|
|
|
@@ -44,5 +67,8 @@ Before publishing, inspect the tarball contents:
|
|
|
44
67
|
npm pack --dry-run
|
|
45
68
|
```
|
|
46
69
|
|
|
47
|
-
The package should include the built `dist/` output
|
|
48
|
-
|
|
70
|
+
The package should include the built `dist/` output and the public
|
|
71
|
+
documentation only — no Apps Script deployment. The sync provider calls the
|
|
72
|
+
Google Sheets REST API (`spreadsheets.get` / `spreadsheets.batchUpdate`)
|
|
73
|
+
through a service account, so the tarball contains no gateway sources or
|
|
74
|
+
manifest; the service account needs only the Spreadsheets scope.
|