@opendatalabs/personal-server-ts-core 1.34.1 → 1.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/additions/durable.d.ts +32 -2
- package/dist/additions/durable.d.ts.map +1 -1
- package/dist/additions/durable.js +237 -88
- package/dist/additions/durable.js.map +1 -1
- package/dist/additions/version-inventory.d.ts +4 -0
- package/dist/additions/version-inventory.d.ts.map +1 -1
- package/dist/additions/version-inventory.js +11 -1
- package/dist/additions/version-inventory.js.map +1 -1
- package/dist/api/index.d.ts +19 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +185 -13
- package/dist/api/index.js.map +1 -1
- package/dist/api/oura-collection-requirements.d.ts +16 -0
- package/dist/api/oura-collection-requirements.d.ts.map +1 -0
- package/dist/api/oura-collection-requirements.js +70 -0
- package/dist/api/oura-collection-requirements.js.map +1 -0
- package/dist/api/scope-upload-batches.d.ts +18 -0
- package/dist/api/scope-upload-batches.d.ts.map +1 -0
- package/dist/api/scope-upload-batches.js +71 -0
- package/dist/api/scope-upload-batches.js.map +1 -0
- package/dist/api/scope-uploads.d.ts +112 -0
- package/dist/api/scope-uploads.d.ts.map +1 -0
- package/dist/api/scope-uploads.js +369 -0
- package/dist/api/scope-uploads.js.map +1 -0
- package/dist/client.d.ts +70 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +1 -0
- package/dist/client.js.map +1 -1
- package/dist/contracts/data.d.ts +8 -0
- package/dist/contracts/data.d.ts.map +1 -1
- package/dist/contracts/data.js +31 -1
- package/dist/contracts/data.js.map +1 -1
- package/dist/contracts/grants.d.ts.map +1 -1
- package/dist/contracts/grants.js +3 -0
- package/dist/contracts/grants.js.map +1 -1
- package/dist/contracts/index.d.ts +3 -1
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +3 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/oura-collection-requirements.d.ts +17 -0
- package/dist/contracts/oura-collection-requirements.d.ts.map +1 -0
- package/dist/contracts/oura-collection-requirements.js +49 -0
- package/dist/contracts/oura-collection-requirements.js.map +1 -0
- package/dist/legacy-projection/bindings.d.ts +1 -7
- package/dist/legacy-projection/bindings.d.ts.map +1 -1
- package/dist/legacy-projection/bindings.js +162 -28
- package/dist/legacy-projection/bindings.js.map +1 -1
- package/dist/legacy-projection/index.d.ts +6 -5
- package/dist/legacy-projection/index.d.ts.map +1 -1
- package/dist/legacy-projection/index.js +9 -21
- package/dist/legacy-projection/index.js.map +1 -1
- package/dist/legacy-projection/oura-browser-bindings.d.ts +2 -0
- package/dist/legacy-projection/oura-browser-bindings.d.ts.map +1 -1
- package/dist/legacy-projection/oura-browser-bindings.js +2 -0
- package/dist/legacy-projection/oura-browser-bindings.js.map +1 -1
- package/dist/legacy-projection/strava-browser-bindings.d.ts +3 -0
- package/dist/legacy-projection/strava-browser-bindings.d.ts.map +1 -0
- package/dist/legacy-projection/strava-browser-bindings.js +32 -0
- package/dist/legacy-projection/strava-browser-bindings.js.map +1 -0
- package/dist/legacy-projection/types.d.ts +44 -12
- package/dist/legacy-projection/types.d.ts.map +1 -1
- package/dist/mcp/connection-api.d.ts +11 -1
- package/dist/mcp/connection-api.d.ts.map +1 -1
- package/dist/mcp/connection-api.js +94 -9
- package/dist/mcp/connection-api.js.map +1 -1
- package/dist/mcp/index.d.ts +1 -0
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/server.d.ts +9 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +19 -6
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/store.d.ts +10 -1
- package/dist/mcp/store.d.ts.map +1 -1
- package/dist/mcp/store.js +51 -0
- package/dist/mcp/store.js.map +1 -1
- package/dist/mcp/tools.d.ts +52 -2
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +395 -11
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/types.d.ts +36 -2
- package/dist/mcp/types.d.ts.map +1 -1
- package/dist/mcp/types.js +12 -0
- package/dist/mcp/types.js.map +1 -1
- package/dist/mcp/write-client.d.ts +81 -0
- package/dist/mcp/write-client.d.ts.map +1 -0
- package/dist/mcp/write-client.js +140 -0
- package/dist/mcp/write-client.js.map +1 -0
- package/dist/oura/history-policy.d.ts +12 -0
- package/dist/oura/history-policy.d.ts.map +1 -0
- package/dist/oura/history-policy.js +54 -0
- package/dist/oura/history-policy.js.map +1 -0
- package/dist/oura/index.d.ts +51 -0
- package/dist/oura/index.d.ts.map +1 -0
- package/dist/oura/index.js +315 -0
- package/dist/oura/index.js.map +1 -0
- package/dist/pdpp/approval.d.ts +1 -1
- package/dist/pdpp/approval.d.ts.map +1 -1
- package/dist/pdpp/approval.js +29 -10
- package/dist/pdpp/approval.js.map +1 -1
- package/dist/pdpp/declaration-limits.d.ts +7 -0
- package/dist/pdpp/declaration-limits.d.ts.map +1 -0
- package/dist/pdpp/declaration-limits.js +7 -0
- package/dist/pdpp/declaration-limits.js.map +1 -0
- package/dist/pdpp/declaration.d.ts +2 -1
- package/dist/pdpp/declaration.d.ts.map +1 -1
- package/dist/pdpp/declaration.js +2 -1
- package/dist/pdpp/declaration.js.map +1 -1
- package/dist/pdpp/index.d.ts +3 -2
- package/dist/pdpp/index.d.ts.map +1 -1
- package/dist/pdpp/index.js +3 -2
- package/dist/pdpp/index.js.map +1 -1
- package/dist/pdpp/issuance.d.ts.map +1 -1
- package/dist/pdpp/issuance.js +6 -2
- package/dist/pdpp/issuance.js.map +1 -1
- package/dist/pdpp/resolve.d.ts +12 -1
- package/dist/pdpp/resolve.d.ts.map +1 -1
- package/dist/pdpp/resolve.js +156 -58
- package/dist/pdpp/resolve.js.map +1 -1
- package/dist/pdpp/selection.d.ts +30 -1
- package/dist/pdpp/selection.d.ts.map +1 -1
- package/dist/pdpp/selection.js +77 -26
- package/dist/pdpp/selection.js.map +1 -1
- package/dist/pdpp/time.d.ts +39 -0
- package/dist/pdpp/time.d.ts.map +1 -0
- package/dist/pdpp/time.js +173 -0
- package/dist/pdpp/time.js.map +1 -0
- package/dist/pdpp/tokens.d.ts.map +1 -1
- package/dist/pdpp/tokens.js +4 -2
- package/dist/pdpp/tokens.js.map +1 -1
- package/dist/pdpp/types.d.ts +18 -2
- package/dist/pdpp/types.d.ts.map +1 -1
- package/dist/pdpp/types.js +7 -0
- package/dist/pdpp/types.js.map +1 -1
- package/dist/policy/reserved-scopes.d.ts +7 -0
- package/dist/policy/reserved-scopes.d.ts.map +1 -1
- package/dist/policy/reserved-scopes.js +12 -1
- package/dist/policy/reserved-scopes.js.map +1 -1
- package/dist/ports/index.d.ts +89 -1
- package/dist/ports/index.d.ts.map +1 -1
- package/dist/ports/index.js.map +1 -1
- package/dist/ports/pdpp-auth.d.ts +17 -27
- package/dist/ports/pdpp-auth.d.ts.map +1 -1
- package/dist/ports/pdpp-auth.js +14 -28
- package/dist/ports/pdpp-auth.js.map +1 -1
- package/dist/publication/publish.d.ts +96 -0
- package/dist/publication/publish.d.ts.map +1 -0
- package/dist/publication/publish.js +261 -0
- package/dist/publication/publish.js.map +1 -0
- package/dist/replication/completion.d.ts +20 -0
- package/dist/replication/completion.d.ts.map +1 -0
- package/dist/replication/completion.js +73 -0
- package/dist/replication/completion.js.map +1 -0
- package/dist/replication/coordinator-state.d.ts +29 -0
- package/dist/replication/coordinator-state.d.ts.map +1 -0
- package/dist/replication/coordinator-state.js +88 -0
- package/dist/replication/coordinator-state.js.map +1 -0
- package/dist/replication/coordinator-state.test-utils.d.ts +32 -0
- package/dist/replication/coordinator-state.test-utils.d.ts.map +1 -0
- package/dist/replication/coordinator-state.test-utils.js +113 -0
- package/dist/replication/coordinator-state.test-utils.js.map +1 -0
- package/dist/replication/coordinator.d.ts +264 -0
- package/dist/replication/coordinator.d.ts.map +1 -0
- package/dist/replication/coordinator.js +499 -0
- package/dist/replication/coordinator.js.map +1 -0
- package/dist/replication/copies.d.ts +126 -0
- package/dist/replication/copies.d.ts.map +1 -0
- package/dist/replication/copies.js +437 -0
- package/dist/replication/copies.js.map +1 -0
- package/dist/replication/copy-promotion.d.ts +132 -0
- package/dist/replication/copy-promotion.d.ts.map +1 -0
- package/dist/replication/copy-promotion.js +126 -0
- package/dist/replication/copy-promotion.js.map +1 -0
- package/dist/replication/door.d.ts +33 -0
- package/dist/replication/door.d.ts.map +1 -0
- package/dist/replication/door.js +10 -0
- package/dist/replication/door.js.map +1 -0
- package/dist/replication/dpv2.d.ts +141 -0
- package/dist/replication/dpv2.d.ts.map +1 -0
- package/dist/replication/dpv2.js +320 -0
- package/dist/replication/dpv2.js.map +1 -0
- package/dist/replication/effects.d.ts +68 -0
- package/dist/replication/effects.d.ts.map +1 -0
- package/dist/replication/effects.js +89 -0
- package/dist/replication/effects.js.map +1 -0
- package/dist/replication/engine.d.ts +378 -0
- package/dist/replication/engine.d.ts.map +1 -0
- package/dist/replication/engine.js +3197 -0
- package/dist/replication/engine.js.map +1 -0
- package/dist/replication/envelope.d.ts +481 -0
- package/dist/replication/envelope.d.ts.map +1 -0
- package/dist/replication/envelope.js +192 -0
- package/dist/replication/envelope.js.map +1 -0
- package/dist/replication/evidence.d.ts +118 -0
- package/dist/replication/evidence.d.ts.map +1 -0
- package/dist/replication/evidence.js +198 -0
- package/dist/replication/evidence.js.map +1 -0
- package/dist/replication/finality.d.ts +16 -0
- package/dist/replication/finality.d.ts.map +1 -0
- package/dist/replication/finality.js +11 -0
- package/dist/replication/finality.js.map +1 -0
- package/dist/replication/fixtures.d.ts +16 -0
- package/dist/replication/fixtures.d.ts.map +1 -0
- package/dist/replication/fixtures.js +47 -0
- package/dist/replication/fixtures.js.map +1 -0
- package/dist/replication/host-config.d.ts +52 -0
- package/dist/replication/host-config.d.ts.map +1 -0
- package/dist/replication/host-config.js +111 -0
- package/dist/replication/host-config.js.map +1 -0
- package/dist/replication/host-driver.d.ts +95 -0
- package/dist/replication/host-driver.d.ts.map +1 -0
- package/dist/replication/host-driver.js +202 -0
- package/dist/replication/host-driver.js.map +1 -0
- package/dist/replication/host-ports.d.ts +48 -0
- package/dist/replication/host-ports.d.ts.map +1 -0
- package/dist/replication/host-ports.js +69 -0
- package/dist/replication/host-ports.js.map +1 -0
- package/dist/replication/identity.d.ts +13 -0
- package/dist/replication/identity.d.ts.map +1 -0
- package/dist/replication/identity.js +22 -0
- package/dist/replication/identity.js.map +1 -0
- package/dist/replication/limits.d.ts +124 -0
- package/dist/replication/limits.d.ts.map +1 -0
- package/dist/replication/limits.js +182 -0
- package/dist/replication/limits.js.map +1 -0
- package/dist/replication/merge-plan.d.ts +92 -0
- package/dist/replication/merge-plan.d.ts.map +1 -0
- package/dist/replication/merge-plan.js +229 -0
- package/dist/replication/merge-plan.js.map +1 -0
- package/dist/replication/namespace.d.ts +4 -0
- package/dist/replication/namespace.d.ts.map +1 -0
- package/dist/replication/namespace.js +7 -0
- package/dist/replication/namespace.js.map +1 -0
- package/dist/replication/outcome.d.ts +178 -0
- package/dist/replication/outcome.d.ts.map +1 -0
- package/dist/replication/outcome.js +83 -0
- package/dist/replication/outcome.js.map +1 -0
- package/dist/replication/payload.d.ts +39 -0
- package/dist/replication/payload.d.ts.map +1 -0
- package/dist/replication/payload.js +137 -0
- package/dist/replication/payload.js.map +1 -0
- package/dist/replication/preparation.d.ts +42 -0
- package/dist/replication/preparation.d.ts.map +1 -0
- package/dist/replication/preparation.js +118 -0
- package/dist/replication/preparation.js.map +1 -0
- package/dist/replication/rebaseline.d.ts +33 -0
- package/dist/replication/rebaseline.d.ts.map +1 -0
- package/dist/replication/rebaseline.js +40 -0
- package/dist/replication/rebaseline.js.map +1 -0
- package/dist/replication/rebinding.d.ts +43 -0
- package/dist/replication/rebinding.d.ts.map +1 -0
- package/dist/replication/rebinding.js +52 -0
- package/dist/replication/rebinding.js.map +1 -0
- package/dist/replication/receive.d.ts +57 -0
- package/dist/replication/receive.d.ts.map +1 -0
- package/dist/replication/receive.js +114 -0
- package/dist/replication/receive.js.map +1 -0
- package/dist/replication/record-reducer.d.ts +16 -0
- package/dist/replication/record-reducer.d.ts.map +1 -0
- package/dist/replication/record-reducer.js +52 -0
- package/dist/replication/record-reducer.js.map +1 -0
- package/dist/replication/revision.d.ts +24 -0
- package/dist/replication/revision.d.ts.map +1 -0
- package/dist/replication/revision.js +35 -0
- package/dist/replication/revision.js.map +1 -0
- package/dist/replication/roster.d.ts +53 -0
- package/dist/replication/roster.d.ts.map +1 -0
- package/dist/replication/roster.js +115 -0
- package/dist/replication/roster.js.map +1 -0
- package/dist/replication/schedule.d.ts +73 -0
- package/dist/replication/schedule.d.ts.map +1 -0
- package/dist/replication/schedule.js +182 -0
- package/dist/replication/schedule.js.map +1 -0
- package/dist/replication/stream.d.ts +73 -0
- package/dist/replication/stream.d.ts.map +1 -0
- package/dist/replication/stream.js +542 -0
- package/dist/replication/stream.js.map +1 -0
- package/dist/replication/transport.d.ts +236 -0
- package/dist/replication/transport.d.ts.map +1 -0
- package/dist/replication/transport.js +440 -0
- package/dist/replication/transport.js.map +1 -0
- package/dist/replication/visibility-engine.d.ts +337 -0
- package/dist/replication/visibility-engine.d.ts.map +1 -0
- package/dist/replication/visibility-engine.js +602 -0
- package/dist/replication/visibility-engine.js.map +1 -0
- package/dist/replication/visibility-policy.d.ts +26 -0
- package/dist/replication/visibility-policy.d.ts.map +1 -0
- package/dist/replication/visibility-policy.js +33 -0
- package/dist/replication/visibility-policy.js.map +1 -0
- package/dist/replication/writer-identity-store.d.ts +100 -0
- package/dist/replication/writer-identity-store.d.ts.map +1 -0
- package/dist/replication/writer-identity-store.js +218 -0
- package/dist/replication/writer-identity-store.js.map +1 -0
- package/dist/replication/writer-identity.d.ts +252 -0
- package/dist/replication/writer-identity.d.ts.map +1 -0
- package/dist/replication/writer-identity.js +281 -0
- package/dist/replication/writer-identity.js.map +1 -0
- package/dist/replication/writer-identity.test-utils.d.ts +24 -0
- package/dist/replication/writer-identity.test-utils.d.ts.map +1 -0
- package/dist/replication/writer-identity.test-utils.js +86 -0
- package/dist/replication/writer-identity.test-utils.js.map +1 -0
- package/dist/schemas/server-config.d.ts +13 -0
- package/dist/schemas/server-config.d.ts.map +1 -1
- package/dist/schemas/server-config.js +24 -0
- package/dist/schemas/server-config.js.map +1 -1
- package/dist/storage/adapters/index.d.ts +3 -1
- package/dist/storage/adapters/index.d.ts.map +1 -1
- package/dist/storage/adapters/index.js +2 -0
- package/dist/storage/adapters/index.js.map +1 -1
- package/dist/storage/adapters/interface.d.ts +18 -1
- package/dist/storage/adapters/interface.d.ts.map +1 -1
- package/dist/storage/adapters/interface.js +13 -1
- package/dist/storage/adapters/interface.js.map +1 -1
- package/dist/storage/adapters/sdk.d.ts +2 -1
- package/dist/storage/adapters/sdk.d.ts.map +1 -1
- package/dist/storage/adapters/sdk.js +21 -3
- package/dist/storage/adapters/sdk.js.map +1 -1
- package/dist/storage/adapters/vana-audience.d.ts +17 -5
- package/dist/storage/adapters/vana-audience.d.ts.map +1 -1
- package/dist/storage/adapters/vana-audience.js +24 -9
- package/dist/storage/adapters/vana-audience.js.map +1 -1
- package/dist/storage/adapters/vana.d.ts +2 -2
- package/dist/storage/adapters/vana.d.ts.map +1 -1
- package/dist/storage/adapters/vana.js +30 -22
- package/dist/storage/adapters/vana.js.map +1 -1
- package/dist/storage/canonical-legacy-projection.d.ts +1 -1
- package/dist/storage/canonical-legacy-projection.d.ts.map +1 -1
- package/dist/storage/canonical-legacy-projection.js +13 -15
- package/dist/storage/canonical-legacy-projection.js.map +1 -1
- package/dist/storage/legacy-projection.d.ts.map +1 -1
- package/dist/storage/legacy-projection.js +17 -9
- package/dist/storage/legacy-projection.js.map +1 -1
- package/dist/storage/legacy-scope-coverage-exceptions.d.ts +5 -0
- package/dist/storage/legacy-scope-coverage-exceptions.d.ts.map +1 -1
- package/dist/storage/legacy-scope-coverage-exceptions.js +4 -0
- package/dist/storage/legacy-scope-coverage-exceptions.js.map +1 -1
- package/dist/storage/legacy-scope-coverage.d.ts.map +1 -1
- package/dist/storage/legacy-scope-coverage.js +14 -1
- package/dist/storage/legacy-scope-coverage.js.map +1 -1
- package/dist/storage/legacy-scope-entity-keys.d.ts +14 -1
- package/dist/storage/legacy-scope-entity-keys.d.ts.map +1 -1
- package/dist/storage/legacy-scope-entity-keys.js +18 -1
- package/dist/storage/legacy-scope-entity-keys.js.map +1 -1
- package/dist/storage/legacy-scope-view.d.ts +57 -5
- package/dist/storage/legacy-scope-view.d.ts.map +1 -1
- package/dist/storage/legacy-scope-view.js +644 -318
- package/dist/storage/legacy-scope-view.js.map +1 -1
- package/dist/storage/pdpp-records/cursor.d.ts +47 -2
- package/dist/storage/pdpp-records/cursor.d.ts.map +1 -1
- package/dist/storage/pdpp-records/cursor.js +7 -0
- package/dist/storage/pdpp-records/cursor.js.map +1 -1
- package/dist/storage/pdpp-records/enforcement.d.ts +3 -16
- package/dist/storage/pdpp-records/enforcement.d.ts.map +1 -1
- package/dist/storage/pdpp-records/enforcement.js +40 -13
- package/dist/storage/pdpp-records/enforcement.js.map +1 -1
- package/dist/storage/pdpp-records/index.d.ts +2 -0
- package/dist/storage/pdpp-records/index.d.ts.map +1 -1
- package/dist/storage/pdpp-records/index.js +1 -0
- package/dist/storage/pdpp-records/index.js.map +1 -1
- package/dist/storage/pdpp-records/interface.d.ts +8 -1
- package/dist/storage/pdpp-records/interface.d.ts.map +1 -1
- package/dist/storage/pdpp-records/list-page.d.ts +35 -0
- package/dist/storage/pdpp-records/list-page.d.ts.map +1 -0
- package/dist/storage/pdpp-records/list-page.js +106 -0
- package/dist/storage/pdpp-records/list-page.js.map +1 -0
- package/dist/storage/pdpp-records/memory-store.d.ts.map +1 -1
- package/dist/storage/pdpp-records/memory-store.js +95 -99
- package/dist/storage/pdpp-records/memory-store.js.map +1 -1
- package/dist/storage/pdpp-records/portable.d.ts +3 -0
- package/dist/storage/pdpp-records/portable.d.ts.map +1 -1
- package/dist/storage/pdpp-records/portable.js +3 -0
- package/dist/storage/pdpp-records/portable.js.map +1 -1
- package/dist/storage/pdpp-records/replication-journal.d.ts +20 -0
- package/dist/storage/pdpp-records/replication-journal.d.ts.map +1 -0
- package/dist/storage/pdpp-records/replication-journal.js +2 -0
- package/dist/storage/pdpp-records/replication-journal.js.map +1 -0
- package/dist/storage/pdpp-records/stream-declaration.d.ts +0 -2
- package/dist/storage/pdpp-records/stream-declaration.d.ts.map +1 -1
- package/dist/storage/pdpp-records/stream-declaration.js +0 -9
- package/dist/storage/pdpp-records/stream-declaration.js.map +1 -1
- package/dist/storage/pdpp-records/sync-selection.d.ts +4 -0
- package/dist/storage/pdpp-records/sync-selection.d.ts.map +1 -0
- package/dist/storage/pdpp-records/sync-selection.js +37 -0
- package/dist/storage/pdpp-records/sync-selection.js.map +1 -0
- package/dist/storage/pdpp-records/types.d.ts +64 -0
- package/dist/storage/pdpp-records/types.d.ts.map +1 -1
- package/dist/storage/pdpp-records/types.js.map +1 -1
- package/dist/sync/data-point-feed.d.ts.map +1 -1
- package/dist/sync/data-point-feed.js +4 -1
- package/dist/sync/data-point-feed.js.map +1 -1
- package/dist/sync/delete-data-port.d.ts +15 -0
- package/dist/sync/delete-data-port.d.ts.map +1 -1
- package/dist/sync/delete-data-port.js +19 -7
- package/dist/sync/delete-data-port.js.map +1 -1
- package/dist/sync/index.d.ts +2 -1
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +2 -1
- package/dist/sync/index.js.map +1 -1
- package/dist/sync/pending-blob-deletions.d.ts +18 -2
- package/dist/sync/pending-blob-deletions.d.ts.map +1 -1
- package/dist/sync/pending-blob-deletions.js +69 -23
- package/dist/sync/pending-blob-deletions.js.map +1 -1
- package/dist/sync/scope-deletions.d.ts +2 -0
- package/dist/sync/scope-deletions.d.ts.map +1 -1
- package/dist/sync/scope-deletions.js +60 -19
- package/dist/sync/scope-deletions.js.map +1 -1
- package/dist/sync/workers/delete.d.ts.map +1 -1
- package/dist/sync/workers/delete.js +316 -142
- package/dist/sync/workers/delete.js.map +1 -1
- package/dist/sync/workers/download.d.ts.map +1 -1
- package/dist/sync/workers/download.js +53 -5
- package/dist/sync/workers/download.js.map +1 -1
- package/dist/sync/workers/upload.d.ts +24 -5
- package/dist/sync/workers/upload.d.ts.map +1 -1
- package/dist/sync/workers/upload.js +160 -275
- package/dist/sync/workers/upload.js.map +1 -1
- package/dist/test-utils/memory-storage.d.ts.map +1 -1
- package/dist/test-utils/memory-storage.js +17 -2
- package/dist/test-utils/memory-storage.js.map +1 -1
- package/package.json +24 -2
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { isMemoryScope } from "../../policy/reserved-scopes.js";
|
|
2
|
+
import { isReplicaScope } from "../../replication/namespace.js";
|
|
3
|
+
import { publishVersion, } from "../../publication/publish.js";
|
|
4
|
+
export { parseGatewayNextVersion } from "../../publication/publish.js";
|
|
3
5
|
import { computeDataPointId } from "../data-point-id.js";
|
|
4
6
|
import { deletionTimestamp, isEntryCoveredByTombstone, tombstoneVersion, } from "../scope-deletions.js";
|
|
5
|
-
import { readStoredLineage } from "../../lineage/lineage.js";
|
|
6
7
|
export { computeDataPointId } from "../data-point-id.js";
|
|
7
8
|
export { isEntryCoveredByTombstone } from "../scope-deletions.js";
|
|
8
9
|
/**
|
|
@@ -34,35 +35,13 @@ export class DeletedScopeEntryError extends Error {
|
|
|
34
35
|
* self-heal. Returns without effect when the entry was ingested with
|
|
35
36
|
* knowledge of the tombstone (`afterTombstoneVersion`): a legitimate re-add.
|
|
36
37
|
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
* is deleted too, so abandoning the entry never leaves owner-decryptable
|
|
40
|
-
* deleted data in storage. If the delete fails the scope is queued for the
|
|
41
|
-
* exact-key cleanup the sync cycle retries.
|
|
38
|
+
* Remote cleanup belongs to the deletion pipeline. Registry refusal does
|
|
39
|
+
* not grant this publisher authority to delete a potentially committed blob.
|
|
42
40
|
*/
|
|
43
|
-
async function dropIfCoveredByDeletion(deps, entry, tombstone, deletedAt
|
|
41
|
+
async function dropIfCoveredByDeletion(deps, entry, tombstone, deletedAt) {
|
|
44
42
|
const version = tombstoneVersion(tombstone);
|
|
45
43
|
if (!isEntryCoveredByTombstone(entry, { version }))
|
|
46
44
|
return;
|
|
47
|
-
if (uploaded) {
|
|
48
|
-
try {
|
|
49
|
-
await deps.storageAdapter.delete(uploaded.url);
|
|
50
|
-
}
|
|
51
|
-
catch (err) {
|
|
52
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
53
|
-
if (deps.pendingBlobDeletions) {
|
|
54
|
-
await deps.pendingBlobDeletions.add([
|
|
55
|
-
{ scope: entry.scope, version: String(entry.version) },
|
|
56
|
-
]);
|
|
57
|
-
}
|
|
58
|
-
deps.logger.warn({
|
|
59
|
-
scope: entry.scope,
|
|
60
|
-
url: uploaded.url,
|
|
61
|
-
error: message,
|
|
62
|
-
queuedForCleanup: Boolean(deps.pendingBlobDeletions),
|
|
63
|
-
}, "Could not delete the ciphertext uploaded for an entry the tombstone covers");
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
45
|
await deps.storage.deleteVersion(entry.scope, entry.collectedAt);
|
|
67
46
|
deps.logger.warn({
|
|
68
47
|
path: entry.path,
|
|
@@ -96,6 +75,8 @@ function isMissingPayloadError(err) {
|
|
|
96
75
|
* 7. Persist the gateway-assigned dataPointId (marks the entry synced)
|
|
97
76
|
*/
|
|
98
77
|
export async function uploadOne(deps, entry) {
|
|
78
|
+
if (isReplicaScope(entry.scope))
|
|
79
|
+
throw new Error("replica scopes require immutable transport");
|
|
99
80
|
const { storage, storageAdapter, gateway, signer, masterKey, serverOwner, logger, } = deps;
|
|
100
81
|
// 1. Read local data file
|
|
101
82
|
let envelope;
|
|
@@ -118,228 +99,51 @@ export async function uploadOne(deps, entry) {
|
|
|
118
99
|
}
|
|
119
100
|
throw err;
|
|
120
101
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
// owner deleted it (possibly on another replica) and registering it again
|
|
124
|
-
// would resurrect the scope. An entry ingested after the deletion is a
|
|
125
|
-
// real re-add and goes up at a version strictly after the tombstone.
|
|
126
|
-
let registerVersion = BigInt(entry.version);
|
|
127
|
-
if (!entry.dataPointId && deps.dataPointFeed) {
|
|
128
|
-
const remote = await deps.dataPointFeed.getDataPoint({
|
|
102
|
+
const readHead = async () => deps.dataPointFeed
|
|
103
|
+
? deps.dataPointFeed.getDataPoint({
|
|
129
104
|
ownerAddress: serverOwner,
|
|
130
105
|
scope: entry.scope,
|
|
131
|
-
})
|
|
132
|
-
|
|
133
|
-
|
|
106
|
+
})
|
|
107
|
+
: gateway.getDataPoint(computeDataPointId(serverOwner, entry.scope));
|
|
108
|
+
const checkHead = async (remote) => {
|
|
109
|
+
const deletedAt = remote?.deletedAt ??
|
|
110
|
+
(remote?.addedAt
|
|
111
|
+
? deletionTimestamp({ ...remote, addedAt: remote.addedAt })
|
|
112
|
+
: null);
|
|
113
|
+
if (remote && deletedAt !== null)
|
|
134
114
|
await dropIfCoveredByDeletion(deps, entry, remote, deletedAt);
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
115
|
+
};
|
|
116
|
+
const initialHead = !entry.dataPointId && deps.dataPointFeed ? await readHead() : undefined;
|
|
117
|
+
await checkHead(initialHead ?? null);
|
|
118
|
+
const proof = entry.dataPointId
|
|
119
|
+
? {
|
|
120
|
+
dataPointId: entry.dataPointId,
|
|
121
|
+
url: storageAdapter.urlForKey(`${entry.scope}/${entry.version}`),
|
|
122
|
+
version: BigInt(entry.version),
|
|
123
|
+
sizeBytes: entry.sizeBytes,
|
|
138
124
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
const metadataHash = keccak256(stringToHex(JSON.stringify({
|
|
161
|
-
scope: entry.scope,
|
|
162
|
-
collectedAt: entry.collectedAt,
|
|
163
|
-
sizeBytes: encrypted.byteLength,
|
|
164
|
-
})));
|
|
165
|
-
// 5. Upload ciphertext to storage backend FIRST, version-keyed so the
|
|
166
|
-
// download worker can reconstruct the URL from a DataPointRecord's
|
|
167
|
-
// (scope, expectedVersion) — DataPointRecords carry no URL. We upload
|
|
168
|
-
// before registering so the on-chain data point (the synced marker) is
|
|
169
|
-
// never stamped ahead of a blob that failed to land.
|
|
170
|
-
const storageKey = `${entry.scope}/${registerVersion}`;
|
|
171
|
-
let url = await storageAdapter.upload(storageKey, encrypted);
|
|
172
|
-
// 6. DPv2 data-point registration (idempotent — skipped when a prior run
|
|
173
|
-
// already persisted a dataPointId on this entry). registerDataPoint stamps
|
|
174
|
-
// the synced marker that excludes this entry from findUnsynced next time.
|
|
175
|
-
let dataPointId;
|
|
176
|
-
if (entry.dataPointId) {
|
|
177
|
-
dataPointId = entry.dataPointId;
|
|
178
|
-
}
|
|
179
|
-
else {
|
|
180
|
-
const registerAt = async (version) => {
|
|
181
|
-
const addDataSignature = await signer.signAddData({
|
|
182
|
-
ownerAddress: serverOwner,
|
|
183
|
-
scope: entry.scope,
|
|
184
|
-
dataHash,
|
|
185
|
-
metadataHash,
|
|
186
|
-
expectedVersion: version,
|
|
187
|
-
});
|
|
188
|
-
const registration = {
|
|
189
|
-
ownerAddress: serverOwner,
|
|
190
|
-
scope: entry.scope,
|
|
191
|
-
dataHash,
|
|
192
|
-
metadataHash,
|
|
193
|
-
expectedVersion: String(version),
|
|
194
|
-
signature: addDataSignature,
|
|
195
|
-
};
|
|
196
|
-
// A derivative carries its validated `$lineage` inside the envelope;
|
|
197
|
-
// the gateway stores the same sources next to this (dataPointId,
|
|
198
|
-
// version) so lineage can be walked without the plaintext. The
|
|
199
|
-
// AddData signature is unchanged (dataHash already commits to the
|
|
200
|
-
// plaintext, `$lineage` included); the plaintext list the gateway
|
|
201
|
-
// keeps is covered by a separate LineageAttestation signature bound
|
|
202
|
-
// to this version and dataHash, so a replayed registration cannot
|
|
203
|
-
// swap it (see lineage/attestation.ts).
|
|
204
|
-
const lineage = readStoredLineage(envelope.data);
|
|
205
|
-
// An empty `$lineage` is an explicit root statement and is registered
|
|
206
|
-
// as such (attested empty list); only an ABSENT `$lineage` makes no
|
|
207
|
-
// statement and goes through the plain client.
|
|
208
|
-
let dataPointResult;
|
|
209
|
-
if (lineage) {
|
|
210
|
-
if (!deps.lineageGateway) {
|
|
211
|
-
throw new Error(`Cannot register derivative ${entry.path} (scope=${entry.scope}): lineage registration needs a gateway URL (lineageGateway is not configured)`);
|
|
212
|
-
}
|
|
213
|
-
const lineageSignature = await signer.signLineageAttestation({
|
|
214
|
-
ownerAddress: serverOwner,
|
|
215
|
-
scope: entry.scope,
|
|
216
|
-
expectedVersion: version,
|
|
217
|
-
dataHash,
|
|
218
|
-
sources: lineage.sources,
|
|
219
|
-
});
|
|
220
|
-
dataPointResult = await deps.lineageGateway.registerDataPoint({
|
|
221
|
-
...registration,
|
|
222
|
-
lineage: lineage.sources,
|
|
223
|
-
lineageSignature,
|
|
224
|
-
});
|
|
225
|
-
}
|
|
226
|
-
else {
|
|
227
|
-
dataPointResult = await gateway.registerDataPoint(registration);
|
|
228
|
-
}
|
|
229
|
-
const id = dataPointResult.dataPointId ?? null;
|
|
230
|
-
if (!id) {
|
|
231
|
-
throw new Error(`Gateway registerDataPoint did not return a dataPointId for ${entry.path} (scope=${entry.scope}, version=${version})`);
|
|
232
|
-
}
|
|
233
|
-
return id;
|
|
234
|
-
};
|
|
235
|
-
try {
|
|
236
|
-
dataPointId = await registerAt(registerVersion);
|
|
237
|
-
if (registerVersion !== BigInt(entry.version)) {
|
|
238
|
-
// Re-add after a deletion: the row must follow the registered
|
|
239
|
-
// version (the blob key embeds it).
|
|
240
|
-
await storage.updateEntryVersion(entry.path, Number(registerVersion));
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
catch (err) {
|
|
244
|
-
if (!isStaleVersionConflict(err))
|
|
245
|
-
throw err;
|
|
246
|
-
// The registry's version for this (owner, scope) is ahead of the local
|
|
247
|
-
// index: pre-DPv2 rows were backfilled to version 1, and other replicas
|
|
248
|
-
// (PS Lite in the browser) advance the same per-scope sequence. The
|
|
249
|
-
// gateway 409s precisely so the client can re-sign against the live
|
|
250
|
-
// version — retrying the same version every cycle head-blocks the
|
|
251
|
-
// scope's whole upload queue.
|
|
252
|
-
// Prefer the deletion-aware feed: the SDK client throws on a 410 for
|
|
253
|
-
// a tombstoned point, which would wedge this entry forever.
|
|
254
|
-
const record = deps.dataPointFeed
|
|
255
|
-
? await deps.dataPointFeed.getDataPoint({
|
|
256
|
-
ownerAddress: serverOwner,
|
|
257
|
-
scope: entry.scope,
|
|
258
|
-
})
|
|
259
|
-
: await gateway.getDataPoint(computeDataPointId(serverOwner, entry.scope));
|
|
260
|
-
// The 409 may be a tombstone that landed after the deletion guard in
|
|
261
|
-
// step 1b ran (a delete on another replica racing this upload). Apply
|
|
262
|
-
// the same rule again before rebasing: a covered entry is dropped, a
|
|
263
|
-
// genuine re-add rebases past the tombstone below.
|
|
264
|
-
const conflictDeletedAt = record ? deletionTimestamp(record) : null;
|
|
265
|
-
if (record && conflictDeletedAt !== null) {
|
|
266
|
-
await dropIfCoveredByDeletion(deps, entry, record, conflictDeletedAt, {
|
|
267
|
-
url,
|
|
268
|
-
});
|
|
269
|
-
}
|
|
270
|
-
if (record && record.dataHash.toLowerCase() === dataHash.toLowerCase()) {
|
|
271
|
-
// Identical content is already registered (this entry, or a replica's
|
|
272
|
-
// copy of it) — adopt the registered data point rather than minting a
|
|
273
|
-
// new version of the same bytes.
|
|
274
|
-
dataPointId = record.id;
|
|
275
|
-
// Align the local row with the adopted registry version — downstream
|
|
276
|
-
// consumers sign from the row's version (e.g. x402 RecordDataAccess),
|
|
277
|
-
// so a stale local version would emit records the registry rejects.
|
|
278
|
-
const adoptedVersion = Number(record.expectedVersion);
|
|
279
|
-
if (adoptedVersion !== entry.version) {
|
|
280
|
-
// Cross-replica adopt: "the registrant already uploaded the blob
|
|
281
|
-
// under the registered version key" is an assumption, not a fact —
|
|
282
|
-
// a replica that crashed between register and upload leaves a
|
|
283
|
-
// registry row whose bytes 404 for every consumer (readers
|
|
284
|
-
// reconstruct the URL from the record's (scope, expectedVersion);
|
|
285
|
-
// records carry no URL). Verify, and heal from our identical
|
|
286
|
-
// plaintext (dataHash matched, so our ciphertext decrypts to the
|
|
287
|
-
// registered content).
|
|
288
|
-
const adoptedKey = `${entry.scope}/${adoptedVersion}`;
|
|
289
|
-
const adoptedBlobExists = await storageAdapter.exists(storageAdapter.urlForKey(adoptedKey));
|
|
290
|
-
if (!adoptedBlobExists) {
|
|
291
|
-
logger.warn({ scope: entry.scope, version: adoptedVersion, dataPointId }, "Adopted registry version has no blob in storage; re-uploading from local content");
|
|
292
|
-
url = await storageAdapter.upload(adoptedKey, encrypted);
|
|
293
|
-
}
|
|
294
|
-
await storage.updateEntryVersion(entry.path, adoptedVersion);
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
else {
|
|
298
|
-
// Rebase onto the gateway's live next-valid version. Two independent
|
|
299
|
-
// signals for what that is:
|
|
300
|
-
// • the registry row — a replica racing AHEAD advances it past the
|
|
301
|
-
// version this error was raised against;
|
|
302
|
-
// • the 409 message itself — authoritative when the registry
|
|
303
|
-
// regressed BEHIND the local index (a moksha/DataRegistry reset,
|
|
304
|
-
// or duplicate re-snapshots pushing the local counter ahead), and
|
|
305
|
-
// the only signal at all when the reset left no row for
|
|
306
|
-
// getDataPoint to return (BUI-715).
|
|
307
|
-
// Take the max so the scope converges from either direction; when
|
|
308
|
-
// neither signal is available there is nothing to rebase onto, so
|
|
309
|
-
// surface the conflict rather than guess.
|
|
310
|
-
const recordNext = record ? Number(record.expectedVersion) + 1 : 0;
|
|
311
|
-
const errorNext = parseGatewayNextVersion(err.message) ?? 0;
|
|
312
|
-
const target = Math.max(recordNext, errorNext);
|
|
313
|
-
if (target <= 0)
|
|
314
|
-
throw err;
|
|
315
|
-
const rebased = BigInt(target);
|
|
316
|
-
// Known limitation (BUI-715 follow-up): when the registry regressed
|
|
317
|
-
// BELOW the local index, `target` can land on a version this scope
|
|
318
|
-
// already has an (older, now-defunct) synced row for. We realign only
|
|
319
|
-
// this entry, so the scope's other stale rows stay bound to gateway
|
|
320
|
-
// versions the reset dropped until their next sync cycle re-registers
|
|
321
|
-
// them. That is transient and fail-safe — readers resolve blobs from
|
|
322
|
-
// the gateway record (consistent with what we just re-registered), and
|
|
323
|
-
// x402 signed from a stale local version is rejected by the gateway
|
|
324
|
-
// rather than serving wrong bytes. A full scope reconcile (clear +
|
|
325
|
-
// renumber every row for the scope from the gateway's version) is
|
|
326
|
-
// tracked separately; head-block recovery is the fix that matters here.
|
|
327
|
-
// The blob key embeds the version (replicas reconstruct URLs from the
|
|
328
|
-
// registry record), so the rebased version needs its own blob; the one
|
|
329
|
-
// written under the stale key above is orphaned, which storage
|
|
330
|
-
// tolerates.
|
|
331
|
-
url = await storageAdapter.upload(`${entry.scope}/${rebased}`, encrypted);
|
|
332
|
-
// A concurrent replica can still win the race to `rebased`; the next
|
|
333
|
-
// sync cycle re-reads the registry and rebases again, so this stays
|
|
334
|
-
// convergent without looping here.
|
|
335
|
-
dataPointId = await registerAt(rebased);
|
|
336
|
-
await storage.updateEntryVersion(entry.path, Number(rebased));
|
|
337
|
-
}
|
|
338
|
-
}
|
|
339
|
-
// 7. Stamp the dataPointId on the local index entry — marks it synced.
|
|
125
|
+
: await publishVersion({
|
|
126
|
+
ownerAddress: serverOwner,
|
|
127
|
+
envelope,
|
|
128
|
+
preferredVersion: BigInt(entry.version),
|
|
129
|
+
masterKey,
|
|
130
|
+
storageAdapter,
|
|
131
|
+
gateway,
|
|
132
|
+
signer,
|
|
133
|
+
lineageGateway: deps.lineageGateway,
|
|
134
|
+
fencedPublication: deps.fencedPublication,
|
|
135
|
+
head: initialHead,
|
|
136
|
+
readHead,
|
|
137
|
+
checkHead,
|
|
138
|
+
acknowledgedDeletionVersion: entry.afterTombstoneVersion == null
|
|
139
|
+
? undefined
|
|
140
|
+
: BigInt(entry.afterTombstoneVersion),
|
|
141
|
+
});
|
|
142
|
+
const { dataPointId, url, sizeBytes } = proof;
|
|
143
|
+
if (!entry.dataPointId) {
|
|
144
|
+
if (proof.version !== BigInt(entry.version))
|
|
145
|
+
await storage.updateEntryVersion(entry.path, Number(proof.version));
|
|
340
146
|
await storage.updateDataPointId(entry.path, dataPointId);
|
|
341
|
-
// The registry now holds a live row for the scope (fresh registration or
|
|
342
|
-
// an adopted one): reads must stop treating it as deleted.
|
|
343
147
|
deps.scopeDeletions?.markLive(entry.scope);
|
|
344
148
|
}
|
|
345
149
|
if (deps.additions) {
|
|
@@ -347,7 +151,7 @@ export async function uploadOne(deps, entry) {
|
|
|
347
151
|
scope: entry.scope,
|
|
348
152
|
collectedAt: envelope.collectedAt,
|
|
349
153
|
data: envelope.data,
|
|
350
|
-
}, { envelope, encryptedSize:
|
|
154
|
+
}, { envelope, encryptedSize: sizeBytes });
|
|
351
155
|
}
|
|
352
156
|
logger.info({
|
|
353
157
|
path: entry.path,
|
|
@@ -358,19 +162,128 @@ export async function uploadOne(deps, entry) {
|
|
|
358
162
|
}, "Uploaded and registered DPv2 data point");
|
|
359
163
|
return { path: entry.path, url, dataPointId };
|
|
360
164
|
}
|
|
165
|
+
/**
|
|
166
|
+
* Agent-memory scopes (see `isMemoryScope`): every save stores a full snapshot,
|
|
167
|
+
* so publishing each intermediate one would cost a registration per save.
|
|
168
|
+
*/
|
|
169
|
+
export function isCoalescedScope(scope) {
|
|
170
|
+
return isMemoryScope(scope);
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* A coalesced scope is published once its newest snapshot has been quiet this
|
|
174
|
+
* long (saves have stopped) ...
|
|
175
|
+
*/
|
|
176
|
+
export const COALESCE_QUIET_MS = 2 * 60_000;
|
|
177
|
+
/** ... or once its oldest unpublished snapshot has waited this long. */
|
|
178
|
+
export const COALESCE_MAX_WAIT_MS = 10 * 60_000;
|
|
179
|
+
const at = (entry) => Date.parse(entry.collectedAt);
|
|
180
|
+
const VERSION_PAGE = 200;
|
|
181
|
+
/**
|
|
182
|
+
* One plan per coalesced scope in the batch. The head is the scope's latest
|
|
183
|
+
* local version (`findEntry`), not the batch's latest. Only the head is ever
|
|
184
|
+
* published: readers serve the latest version, which is a full state, so an
|
|
185
|
+
* older unpublished snapshot is never what anyone sees and publishing it would
|
|
186
|
+
* roll the scope back.
|
|
187
|
+
*/
|
|
188
|
+
function coalescePlan(deps, entries, nowMs) {
|
|
189
|
+
const byScope = new Map();
|
|
190
|
+
for (const entry of entries) {
|
|
191
|
+
if (!isCoalescedScope(entry.scope))
|
|
192
|
+
continue;
|
|
193
|
+
byScope.set(entry.scope, [...(byScope.get(entry.scope) ?? []), entry]);
|
|
194
|
+
}
|
|
195
|
+
const plans = new Map();
|
|
196
|
+
for (const [scope, inBatch] of byScope) {
|
|
197
|
+
const batchHead = inBatch.reduce((a, b) => (at(b) > at(a) ? b : a));
|
|
198
|
+
const latest = deps.storage.findEntry?.({ scope });
|
|
199
|
+
const head = latest && at(latest) >= at(batchHead) ? latest : batchHead;
|
|
200
|
+
const oldest = Math.min(...inBatch.map(at), at(head));
|
|
201
|
+
const deferred = head.dataPointId === null &&
|
|
202
|
+
nowMs - at(head) < COALESCE_QUIET_MS &&
|
|
203
|
+
nowMs - oldest < COALESCE_MAX_WAIT_MS;
|
|
204
|
+
plans.set(scope, { head, deferred });
|
|
205
|
+
}
|
|
206
|
+
return plans;
|
|
207
|
+
}
|
|
208
|
+
/** Every unpublished version of `head`'s scope older than `head`. */
|
|
209
|
+
function olderUnsynced(deps, head) {
|
|
210
|
+
const older = [];
|
|
211
|
+
for (let offset = 0;; offset += VERSION_PAGE) {
|
|
212
|
+
const page = deps.storage.listVersions(head.scope, {
|
|
213
|
+
limit: VERSION_PAGE,
|
|
214
|
+
offset,
|
|
215
|
+
});
|
|
216
|
+
for (const entry of page) {
|
|
217
|
+
if (entry.id !== head.id &&
|
|
218
|
+
entry.dataPointId === null &&
|
|
219
|
+
at(entry) < at(head)) {
|
|
220
|
+
older.push(entry);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
if (page.length < VERSION_PAGE)
|
|
224
|
+
return older;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Erase the older unsynced snapshots of a coalesced scope once its newest
|
|
229
|
+
* snapshot is published. Fenced to the exact rows selected, so a row that
|
|
230
|
+
* changed since is left alone. A failed erase is logged; the row stays and is
|
|
231
|
+
* superseded again on the next pass.
|
|
232
|
+
*/
|
|
233
|
+
async function eraseSuperseded(deps, entries) {
|
|
234
|
+
for (const entry of entries) {
|
|
235
|
+
try {
|
|
236
|
+
await deps.storage.deleteVersion(entry.scope, entry.collectedAt, {
|
|
237
|
+
id: entry.id,
|
|
238
|
+
path: entry.path,
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
catch (err) {
|
|
242
|
+
deps.logger.warn({
|
|
243
|
+
path: entry.path,
|
|
244
|
+
scope: entry.scope,
|
|
245
|
+
error: err instanceof Error ? err.message : String(err),
|
|
246
|
+
}, "Failed to erase a superseded memory snapshot");
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
361
250
|
/**
|
|
362
251
|
* Process all unsynced entries (dataPointId === null).
|
|
363
252
|
* Processes sequentially to avoid overwhelming storage backend.
|
|
364
253
|
* Returns array of results (skips failures, logs errors).
|
|
254
|
+
*
|
|
255
|
+
* Coalesced scopes (see `isCoalescedScope`) publish only their newest
|
|
256
|
+
* unsynced snapshot in the batch, after a quiet window; the older ones are
|
|
257
|
+
* erased after it lands.
|
|
365
258
|
*/
|
|
366
259
|
export async function uploadAll(deps, options) {
|
|
367
260
|
const batchSize = options?.batchSize ?? 50;
|
|
368
261
|
const entries = deps.storage.findUnsynced({ limit: batchSize });
|
|
262
|
+
const nowMs = (options?.now ?? (() => new Date()))().getTime();
|
|
263
|
+
const plans = coalescePlan(deps, entries, nowMs);
|
|
264
|
+
const handled = new Set();
|
|
369
265
|
const results = [];
|
|
370
266
|
for (const entry of entries) {
|
|
267
|
+
const plan = plans.get(entry.scope);
|
|
268
|
+
if (plan) {
|
|
269
|
+
if (handled.has(entry.scope))
|
|
270
|
+
continue;
|
|
271
|
+
handled.add(entry.scope);
|
|
272
|
+
if (plan.deferred)
|
|
273
|
+
continue;
|
|
274
|
+
if (plan.head.dataPointId !== null) {
|
|
275
|
+
// The latest version is already published: older unpublished
|
|
276
|
+
// snapshots are superseded, never published.
|
|
277
|
+
await eraseSuperseded(deps, olderUnsynced(deps, plan.head));
|
|
278
|
+
continue;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
const target = plan ? plan.head : entry;
|
|
371
282
|
try {
|
|
372
|
-
const result = await uploadOne(deps,
|
|
283
|
+
const result = await uploadOne(deps, target);
|
|
373
284
|
results.push(result);
|
|
285
|
+
if (plan)
|
|
286
|
+
await eraseSuperseded(deps, olderUnsynced(deps, plan.head));
|
|
374
287
|
}
|
|
375
288
|
catch (err) {
|
|
376
289
|
// A dropped orphan is a self-heal, not a failure: the row is already
|
|
@@ -388,32 +301,4 @@ export async function uploadAll(deps, options) {
|
|
|
388
301
|
}
|
|
389
302
|
return results;
|
|
390
303
|
}
|
|
391
|
-
function uint8ToHex(bytes) {
|
|
392
|
-
return Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join("");
|
|
393
|
-
}
|
|
394
|
-
// The gateway rejects a registration whose expectedVersion is not strictly
|
|
395
|
-
// greater than its stored value with a 409; the SDK client surfaces it as
|
|
396
|
-
// `Gateway error: 409 <detail>`. Anything else is not a version conflict.
|
|
397
|
-
function isStaleVersionConflict(err) {
|
|
398
|
-
return err instanceof Error && /Gateway error: 409\b/.test(err.message);
|
|
399
|
-
}
|
|
400
|
-
// Extract the gateway's authoritative next-valid version from a 409 body so a
|
|
401
|
-
// rebase can target it directly instead of only inferring from a registry row
|
|
402
|
-
// (which is absent after a reset that dropped the scope's row entirely).
|
|
403
|
-
// Handles the current "Gap in version sequence … next valid version is N"
|
|
404
|
-
// phrasing (and its "effective max (M" form) as well as the older "Stale
|
|
405
|
-
// expectedVersion … must be strictly greater than the stored value N" one.
|
|
406
|
-
// Returns null when no version can be parsed.
|
|
407
|
-
export function parseGatewayNextVersion(message) {
|
|
408
|
-
const nextValid = message.match(/next valid version is (\d+)/i);
|
|
409
|
-
if (nextValid)
|
|
410
|
-
return Number(nextValid[1]);
|
|
411
|
-
const effectiveMax = message.match(/effective max \((\d+)/i);
|
|
412
|
-
if (effectiveMax)
|
|
413
|
-
return Number(effectiveMax[1]) + 1;
|
|
414
|
-
const storedValue = message.match(/strictly greater than the stored value (\d+)/i);
|
|
415
|
-
if (storedValue)
|
|
416
|
-
return Number(storedValue[1]) + 1;
|
|
417
|
-
return null;
|
|
418
|
-
}
|
|
419
304
|
//# sourceMappingURL=upload.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../src/sync/workers/upload.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../src/sync/workers/upload.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-storage.d.ts","sourceRoot":"","sources":["../../src/test-utils/memory-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;CAChC;AAED,wBAAgB,uBAAuB,IAAI,iBAAiB,
|
|
1
|
+
{"version":3,"file":"memory-storage.d.ts","sourceRoot":"","sources":["../../src/test-utils/memory-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;CAChC;AAED,wBAAgB,uBAAuB,IAAI,iBAAiB,CAiO3D"}
|
|
@@ -172,9 +172,24 @@ export function createMemoryDataStorage() {
|
|
|
172
172
|
return removed;
|
|
173
173
|
});
|
|
174
174
|
},
|
|
175
|
-
async deleteVersion(scope, collectedAt) {
|
|
175
|
+
async deleteVersion(scope, collectedAt, fence) {
|
|
176
176
|
return withScopeLock(scope, async () => {
|
|
177
|
-
const removed = remove((entry) => entry.scope === scope &&
|
|
177
|
+
const removed = remove((entry) => entry.scope === scope &&
|
|
178
|
+
entry.collectedAt === collectedAt &&
|
|
179
|
+
(fence === undefined ||
|
|
180
|
+
(entry.id === fence.id && entry.path === fence.path))) > 0;
|
|
181
|
+
dropEmptyLedger(scope);
|
|
182
|
+
return removed;
|
|
183
|
+
});
|
|
184
|
+
},
|
|
185
|
+
async deleteVersionIfEnvelopeMissing(scope, collectedAt, fence) {
|
|
186
|
+
return withScopeLock(scope, async () => {
|
|
187
|
+
if (envelopes.has(key(scope, collectedAt)))
|
|
188
|
+
return false;
|
|
189
|
+
const removed = remove((entry) => entry.scope === scope &&
|
|
190
|
+
entry.collectedAt === collectedAt &&
|
|
191
|
+
entry.id === fence.id &&
|
|
192
|
+
entry.path === fence.path) > 0;
|
|
178
193
|
dropEmptyLedger(scope);
|
|
179
194
|
return removed;
|
|
180
195
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-storage.js","sourceRoot":"","sources":["../../src/test-utils/memory-storage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"memory-storage.js","sourceRoot":"","sources":["../../src/test-utils/memory-storage.ts"],"names":[],"mappings":"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"}
|