@gscdump/engine 3.5.0 → 3.6.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/README.md +28 -18
- package/dist/THIRD-PARTY-LICENSES.md +2 -2
- package/dist/adapters/duckdb-node.d.mts +4 -4
- package/dist/adapters/duckdb-node.mjs +103 -77
- package/dist/adapters/filesystem.d.mts +6 -7
- package/dist/adapters/filesystem.mjs +11 -6
- package/dist/adapters/hyparquet.d.mts +9 -10
- package/dist/adapters/hyparquet.mjs +84 -44
- package/dist/adapters/node-harness.d.mts +3 -4
- package/dist/adapters/parquet-attach.d.mts +4 -5
- package/dist/adapters/parquet-attach.mjs +7 -2
- package/dist/adapters/r2-manifest.d.mts +4 -5
- package/dist/adapters/r2.d.mts +2 -3
- package/dist/adapters/snapshot-attach.d.mts +7 -8
- package/dist/adapters/snapshot-attach.mjs +7 -2
- package/dist/analysis-range.d.mts +2 -3
- package/dist/analysis-types.d.mts +4 -5
- package/dist/analyzer/define.d.mts +6 -7
- package/dist/analyzer/dispatch.d.mts +2 -3
- package/dist/analyzer/registry.d.mts +4 -5
- package/dist/analyzer/types.d.mts +11 -12
- package/dist/arrow-utils.d.mts +4 -5
- package/dist/arrow-utils.mjs +10 -0
- package/dist/coerce.d.mts +1 -2
- package/dist/compaction.d.mts +2 -3
- package/dist/drizzle-schema.d.mts +14 -15
- package/dist/duckdb.d.mts +5 -6
- package/dist/duckdb.mjs +9 -5
- package/dist/engine.d.mts +1 -2
- package/dist/entities/empty-types.d.mts +4 -5
- package/dist/entities/indexing-metadata.d.mts +5 -6
- package/dist/entities/inspection.d.mts +9 -10
- package/dist/entities/query-dim.d.mts +7 -7
- package/dist/entities/sitemap-shared.d.mts +26 -27
- package/dist/entities/sitemap-write.d.mts +1 -2
- package/dist/entities/sitemap.d.mts +1 -2
- package/dist/entity-keys.d.mts +28 -29
- package/dist/errors.d.mts +5 -6
- package/dist/iceberg/append-sink.d.mts +2 -3
- package/dist/iceberg/catalog.d.mts +10 -10
- package/dist/iceberg/catalog.mjs +2 -2
- package/dist/iceberg/overwrite-writer.d.mts +17 -18
- package/dist/iceberg/schema.d.mts +16 -16
- package/dist/ingest-accumulator.d.mts +8 -9
- package/dist/ingest.d.mts +15 -12
- package/dist/ingest.mjs +22 -6
- package/dist/layout.d.mts +4 -5
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/datapage.mjs +1 -1
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/indexes.mjs +1 -1
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/metadata.mjs +1 -1
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/types.d.mts +2 -3
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/types/index.d.mts +2 -3
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/assemble.mjs +3 -144
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/bloom.mjs +3 -58
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/column.mjs +8 -129
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/convert.mjs +3 -118
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/datapage.mjs +6 -144
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/delta.mjs +2 -65
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/encoding.mjs +2 -76
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/filter.mjs +4 -212
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/geoparquet.mjs +1 -24
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/index.mjs +3 -3
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/indexes.mjs +5 -32
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/metadata.mjs +7 -241
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/node.mjs +1 -5
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/plain.mjs +1 -79
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/plan.mjs +6 -375
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/read.mjs +6 -77
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/rowgroup.mjs +7 -175
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/scan.mjs +5 -73
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/schema.mjs +1 -22
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/snappy.mjs +1 -68
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/thrift.mjs +1 -86
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/types.d.mts +2 -28
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/utils.mjs +1 -31
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/variant.mjs +3 -228
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/wkb.mjs +1 -94
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/index.d.mts +2 -52
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/node.d.mts +2 -2
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/assemble.mjs +144 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/bloom.mjs +124 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/column.mjs +129 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/constants.mjs +80 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/convert.mjs +118 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/datapage.mjs +144 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/delta.mjs +65 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/encoding.mjs +76 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/filter.mjs +212 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/geoparquet.mjs +24 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/index.mjs +8 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/indexes.mjs +32 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/metadata.mjs +241 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/node.mjs +7 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/plain.mjs +79 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/plan.mjs +375 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/query.mjs +3 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/read.mjs +81 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/rowgroup.mjs +175 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/scan.mjs +74 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/schema.mjs +75 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/snappy.mjs +68 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/thrift.mjs +86 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/types.d.mts +25 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/utils.mjs +32 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/variant.mjs +228 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/wkb.mjs +94 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/xxhash.mjs +68 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/index.d.mts +58 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/node.d.mts +3 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/scan.d.mts +1 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/utils.d.mts +1 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/index.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/read.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sql/icebergDataSource.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sql/icebergQuery.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/types.d.mts +17 -18
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/create.d.mts +1 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/index.d.mts +1 -1
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/manifest.d.mts +1 -0
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/metadata.d.mts +1 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/read.d.mts +1 -1
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/s3.d.mts +1 -0
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergDataSource.d.mts +2 -0
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergQuery.d.mts +2 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/write/write.d.mts +2 -3
- package/dist/node_modules/.pnpm/squirreling@0.16.4/node_modules/squirreling/src/ast.d.mts +1 -0
- package/dist/parquet-plan.d.mts +5 -6
- package/dist/period/index.d.mts +8 -8
- package/dist/profile.d.mts +3 -3
- package/dist/report/define.d.mts +1 -2
- package/dist/report/hash.d.mts +3 -4
- package/dist/report/registry.d.mts +3 -4
- package/dist/report/types.d.mts +22 -23
- package/dist/resolver/adapter.d.mts +2 -3
- package/dist/resolver/canonical-source.d.mts +1 -2
- package/dist/resolver/compile.d.mts +12 -8
- package/dist/resolver/compile.mjs +7 -3
- package/dist/resolver/datasets.d.mts +9 -9
- package/dist/resolver/extras-overlay.d.mts +2 -3
- package/dist/resolver/filter-utils.d.mts +7 -7
- package/dist/resolver/fragments.d.mts +3 -4
- package/dist/resolver/pg-adapter.d.mts +7 -8
- package/dist/resolver/run-query.d.mts +16 -17
- package/dist/resolver/run-query.mjs +16 -15
- package/dist/resolver/schema-drift.d.mts +2 -3
- package/dist/resolver/types.d.mts +8 -9
- package/dist/rollups/canonical.d.mts +4 -5
- package/dist/rollups/core.d.mts +12 -13
- package/dist/rollups/defaults.d.mts +2 -3
- package/dist/rollups/hourly.d.mts +3 -4
- package/dist/rollups/indexing.d.mts +5 -6
- package/dist/rollups/traffic.d.mts +5 -6
- package/dist/rollups/windows.d.mts +7 -8
- package/dist/schedule.d.mts +6 -7
- package/dist/schema.d.mts +9 -9
- package/dist/scope.d.mts +6 -7
- package/dist/sink.d.mts +9 -10
- package/dist/sinks/in-memory-sink.d.mts +3 -4
- package/dist/snapshot.d.mts +2 -3
- package/dist/source/attached-table.d.mts +4 -5
- package/dist/source/create-sql-query-source.d.mts +2 -3
- package/dist/source/index.d.mts +6 -6
- package/dist/source/source-types.d.mts +7 -8
- package/dist/sql-bind.d.mts +3 -4
- package/dist/sql-fragments.d.mts +5 -6
- package/dist/storage.d.mts +37 -37
- package/dist/sync-config.d.mts +20 -21
- package/dist/vendor/hysnappy-purejs.d.mts +2 -3
- package/dist/vendor/hysnappy-purejs.mjs +1 -1
- package/package.json +12 -10
- package/dist/node_modules/.pnpm/icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergDataSource.d.mts +0 -2
- package/dist/node_modules/.pnpm/icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergQuery.d.mts +0 -2
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/create.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/indexes.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird → hyparquet@1.30.0/node_modules/hyparquet}/types/metadata.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/manifest.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/query.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/s3.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/read.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3/node_modules/squirreling/src/ast.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/snappy.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/avro/avro.metadata.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/avro/avro.read.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/avro/avro.write.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/catalog/file.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/catalog/loadTable.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/catalog/rest.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/create.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/delete.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/fetch.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/json.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/manifest.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/metadata.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/prune.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/puffin/deletion-vector.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/puffin/puffin.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/puffin/roaring.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/s3.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/schema.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sigv4.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sql/whereFilter.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/utils.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/commit.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/conversions.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/delete-file.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/geospatial.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/manifest-list.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/manifest.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/parquet.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/partition.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/rewrite.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/serde.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/snapshot.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/sort.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stage-deletion-vector.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stage-position-delete.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stage.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stats.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/transform.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/write.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/catalog/file.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/catalog/rest.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/fetch.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/backend/batch.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/backend/batchAdapters.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/backend/dataSource.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/accumulator.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/aggregates.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/batchResults.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/batches.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/execute.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/fold.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/join.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/rowScope.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/scanColumn.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/sort.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/streamingAggregate.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/utils.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/window.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/yield.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/alias.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/batch.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/binary.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/date.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/evaluate.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/math.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/regexp.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/scalar.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/strings.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/index.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/index.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/expression.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/extractTables.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/functions.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/joins.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/parse.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/primary.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/state.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/tokenize.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/types.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/plan/columns.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/plan/plan.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/plan/types.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/bbox.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/equality.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/operations.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/pointRelations.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/primitives.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/segments.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/spatial.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/wkt.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/types.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/aggregates.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/executionErrors.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/functions.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/keywords.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/parseErrors.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/tables.mjs +0 -0
|
@@ -7,7 +7,7 @@ import { CanonicalDifferenceKind } from "gscdump";
|
|
|
7
7
|
* `searchconsole_v1.Schema$UrlInspectionResult` shape but as plain JSON
|
|
8
8
|
* so storage doesn't depend on the googleapis type tree.
|
|
9
9
|
*/
|
|
10
|
-
interface InspectionRecord {
|
|
10
|
+
export interface InspectionRecord {
|
|
11
11
|
url: string;
|
|
12
12
|
/** ISO-8601 timestamp of when we ran the inspection. */
|
|
13
13
|
inspectedAt: string;
|
|
@@ -43,7 +43,7 @@ interface InspectionRecord {
|
|
|
43
43
|
};
|
|
44
44
|
}
|
|
45
45
|
/** Wire shape persisted to disk/R2. */
|
|
46
|
-
interface InspectionIndex {
|
|
46
|
+
export interface InspectionIndex {
|
|
47
47
|
version: 1;
|
|
48
48
|
/** Map of urlHash → InspectionRecord (latest only). */
|
|
49
49
|
records: Record<string, InspectionRecord>;
|
|
@@ -53,7 +53,7 @@ interface InspectionIndex {
|
|
|
53
53
|
* Keyed by UUID under the month directory — retries write a new blob,
|
|
54
54
|
* never RMW an existing one. Idempotent under job retries.
|
|
55
55
|
*/
|
|
56
|
-
interface InspectionHistoryShard {
|
|
56
|
+
export interface InspectionHistoryShard {
|
|
57
57
|
version: 1;
|
|
58
58
|
/** Records persisted in this batch. */
|
|
59
59
|
records: InspectionRecord[];
|
|
@@ -70,7 +70,7 @@ interface InspectionHistoryShard {
|
|
|
70
70
|
* parquet sidecar exists for DuckDB JOIN seams; readers go through
|
|
71
71
|
* `parquetUri`.
|
|
72
72
|
*/
|
|
73
|
-
interface InspectionParquetRow {
|
|
73
|
+
export interface InspectionParquetRow {
|
|
74
74
|
[column: string]: string | number | null;
|
|
75
75
|
urlHash: string;
|
|
76
76
|
url: string;
|
|
@@ -103,7 +103,7 @@ interface InspectionParquetRow {
|
|
|
103
103
|
* `firstSeenAt` preservation); every other column is taken from the
|
|
104
104
|
* newest-by-`inspectedAt` event.
|
|
105
105
|
*/
|
|
106
|
-
interface InspectionEventRow extends InspectionParquetRow {
|
|
106
|
+
export interface InspectionEventRow extends InspectionParquetRow {
|
|
107
107
|
/** Declared-vs-selected canonical classification, computed at inspection ingest. */
|
|
108
108
|
canonicalMismatchKind: CanonicalDifferenceKind;
|
|
109
109
|
crawlingUserAgent: string | null;
|
|
@@ -136,8 +136,8 @@ interface InspectionEventRow extends InspectionParquetRow {
|
|
|
136
136
|
* batch encodes to ~10 KB so the cap is purely defensive against future
|
|
137
137
|
* batch-size bumps.
|
|
138
138
|
*/
|
|
139
|
-
declare const INSPECTION_HISTORY_MAX_BYTES: number;
|
|
140
|
-
interface InspectionStore {
|
|
139
|
+
export declare const INSPECTION_HISTORY_MAX_BYTES: number;
|
|
140
|
+
export interface InspectionStore {
|
|
141
141
|
/**
|
|
142
142
|
* Append a batch of fresh inspection results as an immutable per-batch
|
|
143
143
|
* shard under `history/<YYYY-MM>/<batchId>.json`. Idempotent under job
|
|
@@ -233,8 +233,7 @@ interface InspectionStore {
|
|
|
233
233
|
*/
|
|
234
234
|
parquetUri: (ctx: TenantCtx) => string | undefined;
|
|
235
235
|
}
|
|
236
|
-
interface CreateInspectionStoreOptions {
|
|
236
|
+
export interface CreateInspectionStoreOptions {
|
|
237
237
|
dataSource: DataSource;
|
|
238
238
|
}
|
|
239
|
-
declare function createInspectionStore(opts: CreateInspectionStoreOptions): InspectionStore;
|
|
240
|
-
export { CreateInspectionStoreOptions, INSPECTION_HISTORY_MAX_BYTES, InspectionEventRow, InspectionHistoryShard, InspectionIndex, InspectionParquetRow, InspectionRecord, InspectionStore, createInspectionStore };
|
|
239
|
+
export declare function createInspectionStore(opts: CreateInspectionStoreOptions): InspectionStore;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DataSource } from "../storage.mjs";
|
|
2
2
|
import { queryDimMetaKey, queryDimParquetKey } from "../entity-keys.mjs";
|
|
3
3
|
import { TenantCtx } from "@gscdump/contracts";
|
|
4
|
-
interface QueryDimRecord {
|
|
4
|
+
export interface QueryDimRecord {
|
|
5
5
|
query: string;
|
|
6
6
|
/** Lexical canonical, never empty: NULL/'' folds to the raw query. */
|
|
7
7
|
query_canonical: string;
|
|
@@ -11,7 +11,7 @@ interface QueryDimRecord {
|
|
|
11
11
|
intent_version: number;
|
|
12
12
|
}
|
|
13
13
|
/** JSON sidecar: versions + freshness, readable without decoding the parquet. */
|
|
14
|
-
interface QueryDimMeta {
|
|
14
|
+
export interface QueryDimMeta {
|
|
15
15
|
version: 1;
|
|
16
16
|
builtAt: number;
|
|
17
17
|
rowCount: number;
|
|
@@ -23,7 +23,7 @@ interface QueryDimMeta {
|
|
|
23
23
|
* passes `normalizeQuery` / `classifyIntentCode` (e.g. `encodeIntent ∘
|
|
24
24
|
* classifyQueryIntent`) plus their version constants.
|
|
25
25
|
*/
|
|
26
|
-
interface QueryDimDeps {
|
|
26
|
+
export interface QueryDimDeps {
|
|
27
27
|
normalizeQuery: (query: string) => string;
|
|
28
28
|
normalizerVersion: number;
|
|
29
29
|
/** Returns the packed intent code for a raw query. */
|
|
@@ -35,8 +35,8 @@ interface QueryDimDeps {
|
|
|
35
35
|
* folds an empty/whitespace canonical back to the raw query so the dimension
|
|
36
36
|
* is total for read-time joins.
|
|
37
37
|
*/
|
|
38
|
-
declare function buildQueryDimRecords(queries: Iterable<string>, deps: QueryDimDeps): QueryDimRecord[];
|
|
39
|
-
interface QueryDimStore {
|
|
38
|
+
export declare function buildQueryDimRecords(queries: Iterable<string>, deps: QueryDimDeps): QueryDimRecord[];
|
|
39
|
+
export interface QueryDimStore {
|
|
40
40
|
parquetKey: (ctx: TenantCtx) => string;
|
|
41
41
|
/** Write the parquet + JSON sidecar. Last-write-wins; no history. */
|
|
42
42
|
write: (ctx: TenantCtx, records: readonly QueryDimRecord[], builtAt: number) => Promise<{
|
|
@@ -48,7 +48,7 @@ interface QueryDimStore {
|
|
|
48
48
|
/** Decode the dimension rows (test/inspection; reads JOIN the parquet by key). */
|
|
49
49
|
loadRecords: (ctx: TenantCtx) => Promise<QueryDimRecord[]>;
|
|
50
50
|
}
|
|
51
|
-
declare function createQueryDimStore({ dataSource }: {
|
|
51
|
+
export declare function createQueryDimStore({ dataSource }: {
|
|
52
52
|
dataSource: DataSource;
|
|
53
53
|
}): QueryDimStore;
|
|
54
|
-
export {
|
|
54
|
+
export { queryDimMetaKey, queryDimParquetKey };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { DataSource } from "../storage.mjs";
|
|
2
2
|
import { Row, TenantCtx } from "@gscdump/contracts";
|
|
3
|
-
interface ParsedUrl {
|
|
3
|
+
export interface ParsedUrl {
|
|
4
4
|
loc: string;
|
|
5
5
|
lastmod?: string;
|
|
6
6
|
}
|
|
7
|
-
interface SitemapUrlRecord {
|
|
7
|
+
export interface SitemapUrlRecord {
|
|
8
8
|
feedpath: string;
|
|
9
9
|
feedpathHash: string;
|
|
10
10
|
urlHash: string;
|
|
@@ -14,7 +14,7 @@ interface SitemapUrlRecord {
|
|
|
14
14
|
lastSeenAt: number;
|
|
15
15
|
removedAt?: number;
|
|
16
16
|
}
|
|
17
|
-
interface SitemapGenerationFeedManifest {
|
|
17
|
+
export interface SitemapGenerationFeedManifest {
|
|
18
18
|
feedpath: string;
|
|
19
19
|
feedpathHash: string;
|
|
20
20
|
baseKey: string;
|
|
@@ -24,7 +24,7 @@ interface SitemapGenerationFeedManifest {
|
|
|
24
24
|
urlCount: number;
|
|
25
25
|
observedAt: number;
|
|
26
26
|
}
|
|
27
|
-
type SitemapLegacyImportEvidence = {
|
|
27
|
+
export type SitemapLegacyImportEvidence = {
|
|
28
28
|
_tag: 'none';
|
|
29
29
|
} | {
|
|
30
30
|
_tag: 'metadata_only';
|
|
@@ -32,7 +32,7 @@ type SitemapLegacyImportEvidence = {
|
|
|
32
32
|
recordCount: number;
|
|
33
33
|
source: 'gsc_sitemaps';
|
|
34
34
|
};
|
|
35
|
-
interface SitemapSiteGenerationManifest {
|
|
35
|
+
export interface SitemapSiteGenerationManifest {
|
|
36
36
|
version: 1;
|
|
37
37
|
generationId: string;
|
|
38
38
|
observedAt: number;
|
|
@@ -47,13 +47,13 @@ interface SitemapSiteGenerationManifest {
|
|
|
47
47
|
eventKeys: string[];
|
|
48
48
|
feeds: Record<string, SitemapGenerationFeedManifest>;
|
|
49
49
|
}
|
|
50
|
-
interface SitemapStagedFeed {
|
|
50
|
+
export interface SitemapStagedFeed {
|
|
51
51
|
version: 1;
|
|
52
52
|
generationId: string;
|
|
53
53
|
observedAt: number;
|
|
54
54
|
feed: SitemapGenerationFeedManifest;
|
|
55
55
|
}
|
|
56
|
-
type StageSitemapGenerationFeedResult = {
|
|
56
|
+
export type StageSitemapGenerationFeedResult = {
|
|
57
57
|
_tag: 'staged';
|
|
58
58
|
generationId: string;
|
|
59
59
|
feedpath: string;
|
|
@@ -72,11 +72,11 @@ type StageSitemapGenerationFeedResult = {
|
|
|
72
72
|
_tag: 'conflict';
|
|
73
73
|
reason: 'stale_generation' | 'generation_reused';
|
|
74
74
|
};
|
|
75
|
-
interface CompleteSitemapTraversal {
|
|
75
|
+
export interface CompleteSitemapTraversal {
|
|
76
76
|
_tag: 'complete';
|
|
77
77
|
expectedFeedpaths: readonly string[];
|
|
78
78
|
}
|
|
79
|
-
type FinalizeSitemapGenerationResult = {
|
|
79
|
+
export type FinalizeSitemapGenerationResult = {
|
|
80
80
|
_tag: 'published';
|
|
81
81
|
generationId: string;
|
|
82
82
|
observedAt: number;
|
|
@@ -97,18 +97,18 @@ type FinalizeSitemapGenerationResult = {
|
|
|
97
97
|
_tag: 'invalid_generation';
|
|
98
98
|
reason: 'empty_id' | 'invalid_observed_at';
|
|
99
99
|
};
|
|
100
|
-
type SitemapGenerationReadResult = {
|
|
100
|
+
export type SitemapGenerationReadResult = {
|
|
101
101
|
_tag: 'available';
|
|
102
102
|
manifest: SitemapSiteGenerationManifest;
|
|
103
103
|
} | {
|
|
104
104
|
_tag: 'unavailable';
|
|
105
105
|
reason: 'no_generation' | 'generation_not_found';
|
|
106
106
|
};
|
|
107
|
-
interface IterateSitemapGenerationUrlsOptions {
|
|
107
|
+
export interface IterateSitemapGenerationUrlsOptions {
|
|
108
108
|
generationId?: string;
|
|
109
109
|
feedpath?: string;
|
|
110
110
|
}
|
|
111
|
-
type IterateSitemapGenerationUrlsResult = {
|
|
111
|
+
export type IterateSitemapGenerationUrlsResult = {
|
|
112
112
|
_tag: 'iterator';
|
|
113
113
|
generationId: string;
|
|
114
114
|
observedAt: number;
|
|
@@ -124,13 +124,13 @@ type IterateSitemapGenerationUrlsResult = {
|
|
|
124
124
|
_tag: 'unavailable';
|
|
125
125
|
reason: 'no_generation' | 'generation_not_found';
|
|
126
126
|
};
|
|
127
|
-
interface ListSitemapGenerationUrlsOptions {
|
|
127
|
+
export interface ListSitemapGenerationUrlsOptions {
|
|
128
128
|
generationId?: string;
|
|
129
129
|
feedpath?: string;
|
|
130
130
|
cursor?: string;
|
|
131
131
|
limit?: number;
|
|
132
132
|
}
|
|
133
|
-
type ListSitemapGenerationUrlsResult = {
|
|
133
|
+
export type ListSitemapGenerationUrlsResult = {
|
|
134
134
|
_tag: 'page';
|
|
135
135
|
generationId: string;
|
|
136
136
|
observedAt: number;
|
|
@@ -147,7 +147,7 @@ type ListSitemapGenerationUrlsResult = {
|
|
|
147
147
|
_tag: 'unavailable';
|
|
148
148
|
reason: 'no_generation' | 'generation_not_found';
|
|
149
149
|
};
|
|
150
|
-
type SitemapMembershipEvidence = {
|
|
150
|
+
export type SitemapMembershipEvidence = {
|
|
151
151
|
_tag: 'present';
|
|
152
152
|
url: string;
|
|
153
153
|
feedpath: string;
|
|
@@ -163,7 +163,7 @@ type SitemapMembershipEvidence = {
|
|
|
163
163
|
url: string;
|
|
164
164
|
reason: 'no_generation' | 'generation_not_found';
|
|
165
165
|
};
|
|
166
|
-
type QuerySitemapGenerationMembershipResult = {
|
|
166
|
+
export type QuerySitemapGenerationMembershipResult = {
|
|
167
167
|
_tag: 'result';
|
|
168
168
|
generationId: string;
|
|
169
169
|
observedAt: number;
|
|
@@ -176,7 +176,7 @@ type QuerySitemapGenerationMembershipResult = {
|
|
|
176
176
|
_tag: 'unavailable';
|
|
177
177
|
reason: 'no_generation' | 'generation_not_found';
|
|
178
178
|
};
|
|
179
|
-
type RecordSitemapLegacyImportResult = {
|
|
179
|
+
export type RecordSitemapLegacyImportResult = {
|
|
180
180
|
_tag: 'recorded';
|
|
181
181
|
evidence: Extract<SitemapLegacyImportEvidence, {
|
|
182
182
|
_tag: 'metadata_only';
|
|
@@ -190,12 +190,12 @@ type RecordSitemapLegacyImportResult = {
|
|
|
190
190
|
_tag: 'invalid';
|
|
191
191
|
reason: 'invalid_imported_at' | 'invalid_record_count';
|
|
192
192
|
};
|
|
193
|
-
interface CompleteSitemapGeneration {
|
|
193
|
+
export interface CompleteSitemapGeneration {
|
|
194
194
|
_tag: 'complete';
|
|
195
195
|
id: string;
|
|
196
196
|
observedAt: number;
|
|
197
197
|
}
|
|
198
|
-
interface SitemapMembershipEvent {
|
|
198
|
+
export interface SitemapMembershipEvent {
|
|
199
199
|
feedpath: string;
|
|
200
200
|
feedpathHash: string;
|
|
201
201
|
urlHash: string;
|
|
@@ -208,11 +208,11 @@ interface SitemapMembershipEvent {
|
|
|
208
208
|
sequence: number;
|
|
209
209
|
projectsState: boolean;
|
|
210
210
|
}
|
|
211
|
-
interface DateRange {
|
|
211
|
+
export interface DateRange {
|
|
212
212
|
from?: string;
|
|
213
213
|
to?: string;
|
|
214
214
|
}
|
|
215
|
-
interface SitemapReadStore {
|
|
215
|
+
export interface SitemapReadStore {
|
|
216
216
|
loadEvents: (ctx: TenantCtx, dateRange?: DateRange) => AsyncIterable<SitemapMembershipEvent>;
|
|
217
217
|
getSitemapGeneration: (ctx: TenantCtx, generationId?: string) => Promise<SitemapGenerationReadResult>;
|
|
218
218
|
iterateSitemapGenerationUrls: (ctx: TenantCtx, opts?: IterateSitemapGenerationUrlsOptions) => Promise<IterateSitemapGenerationUrlsResult>;
|
|
@@ -222,7 +222,7 @@ interface SitemapReadStore {
|
|
|
222
222
|
urls: readonly string[];
|
|
223
223
|
}) => Promise<QuerySitemapGenerationMembershipResult>;
|
|
224
224
|
}
|
|
225
|
-
interface SitemapStore extends SitemapReadStore {
|
|
225
|
+
export interface SitemapStore extends SitemapReadStore {
|
|
226
226
|
stageSitemapGenerationFeed: (ctx: TenantCtx, generation: CompleteSitemapGeneration, feedpath: string, urls: readonly ParsedUrl[]) => Promise<StageSitemapGenerationFeedResult>;
|
|
227
227
|
finalizeSitemapGeneration: (ctx: TenantCtx, generation: CompleteSitemapGeneration, traversal: CompleteSitemapTraversal) => Promise<FinalizeSitemapGenerationResult>;
|
|
228
228
|
abortSitemapGeneration: (ctx: TenantCtx, generation: CompleteSitemapGeneration) => Promise<void>;
|
|
@@ -231,12 +231,11 @@ interface SitemapStore extends SitemapReadStore {
|
|
|
231
231
|
recordCount: number;
|
|
232
232
|
}) => Promise<RecordSitemapLegacyImportResult>;
|
|
233
233
|
}
|
|
234
|
-
interface CreateSitemapReadStoreOptions {
|
|
234
|
+
export interface CreateSitemapReadStoreOptions {
|
|
235
235
|
dataSource: DataSource;
|
|
236
236
|
}
|
|
237
|
-
type SitemapMutation = <T>(ctx: TenantCtx, effect: () => Promise<T>) => Promise<T>;
|
|
238
|
-
interface CreateSitemapStoreOptions extends CreateSitemapReadStoreOptions {
|
|
237
|
+
export type SitemapMutation = <T>(ctx: TenantCtx, effect: () => Promise<T>) => Promise<T>;
|
|
238
|
+
export interface CreateSitemapStoreOptions extends CreateSitemapReadStoreOptions {
|
|
239
239
|
withMutation: SitemapMutation;
|
|
240
240
|
now?: () => number;
|
|
241
|
-
}
|
|
242
|
-
export { CompleteSitemapGeneration, CompleteSitemapTraversal, CreateSitemapReadStoreOptions, CreateSitemapStoreOptions, DateRange, FinalizeSitemapGenerationResult, IterateSitemapGenerationUrlsOptions, IterateSitemapGenerationUrlsResult, ListSitemapGenerationUrlsOptions, ListSitemapGenerationUrlsResult, ParsedUrl, QuerySitemapGenerationMembershipResult, RecordSitemapLegacyImportResult, SitemapGenerationFeedManifest, SitemapGenerationReadResult, SitemapLegacyImportEvidence, SitemapMembershipEvent, SitemapMembershipEvidence, SitemapMutation, SitemapReadStore, SitemapSiteGenerationManifest, SitemapStagedFeed, SitemapStore, SitemapUrlRecord, StageSitemapGenerationFeedResult };
|
|
241
|
+
}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import { CreateSitemapStoreOptions, SitemapStore } from "./sitemap-shared.mjs";
|
|
2
|
-
declare function createSitemapStore(opts: CreateSitemapStoreOptions): SitemapStore;
|
|
3
|
-
export { createSitemapStore };
|
|
2
|
+
export declare function createSitemapStore(opts: CreateSitemapStoreOptions): SitemapStore;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import { CreateSitemapReadStoreOptions, SitemapReadStore } from "./sitemap-shared.mjs";
|
|
2
|
-
declare function createSitemapReadStore(opts: CreateSitemapReadStoreOptions): SitemapReadStore;
|
|
3
|
-
export { createSitemapReadStore };
|
|
2
|
+
export declare function createSitemapReadStore(opts: CreateSitemapReadStoreOptions): SitemapReadStore;
|
package/dist/entity-keys.d.mts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { TenantCtx } from "@gscdump/contracts";
|
|
2
|
-
declare function inspectionIndexKey(ctx: TenantCtx): string;
|
|
3
|
-
declare function emptyTypesKey(ctx: TenantCtx): string;
|
|
4
|
-
declare function inspectionParquetKey(ctx: TenantCtx): string;
|
|
5
|
-
declare function inspectionEventsPrefix(ctx: TenantCtx): string;
|
|
6
|
-
declare function inspectionEventKey(ctx: TenantCtx, yearMonth: string, batchId: string): string;
|
|
7
|
-
declare function inspectionBaseKey(ctx: TenantCtx): string;
|
|
2
|
+
export declare function inspectionIndexKey(ctx: TenantCtx): string;
|
|
3
|
+
export declare function emptyTypesKey(ctx: TenantCtx): string;
|
|
4
|
+
export declare function inspectionParquetKey(ctx: TenantCtx): string;
|
|
5
|
+
export declare function inspectionEventsPrefix(ctx: TenantCtx): string;
|
|
6
|
+
export declare function inspectionEventKey(ctx: TenantCtx, yearMonth: string, batchId: string): string;
|
|
7
|
+
export declare function inspectionBaseKey(ctx: TenantCtx): string;
|
|
8
8
|
/**
|
|
9
9
|
* Append-only record of URL-inspection STATE CHANGES, partitioned by month.
|
|
10
10
|
*
|
|
@@ -13,42 +13,41 @@ declare function inspectionBaseKey(ctx: TenantCtx): string;
|
|
|
13
13
|
* the moment the event file folds — this is the only durable record that a URL
|
|
14
14
|
* ever left (or entered) the index.
|
|
15
15
|
*/
|
|
16
|
-
declare function inspectionTransitionsPrefix(ctx: TenantCtx): string;
|
|
16
|
+
export declare function inspectionTransitionsPrefix(ctx: TenantCtx): string;
|
|
17
17
|
/** One file per calendar month (`YYYY-MM`), rewritten in place as it fills. */
|
|
18
|
-
declare function inspectionTransitionsMonthKey(ctx: TenantCtx, yearMonth: string): string;
|
|
19
|
-
declare function inspectionHistoryPrefix(ctx: TenantCtx, yearMonth: string): string;
|
|
20
|
-
declare function inspectionHistoryShardKey(ctx: TenantCtx, yearMonth: string, batchId: string): string;
|
|
18
|
+
export declare function inspectionTransitionsMonthKey(ctx: TenantCtx, yearMonth: string): string;
|
|
19
|
+
export declare function inspectionHistoryPrefix(ctx: TenantCtx, yearMonth: string): string;
|
|
20
|
+
export declare function inspectionHistoryShardKey(ctx: TenantCtx, yearMonth: string, batchId: string): string;
|
|
21
21
|
/** Stable, URL-safe FNV-1a hash used for entity keys. */
|
|
22
|
-
declare function hashUrl(url: string): string;
|
|
23
|
-
declare function sitemapUrlsPrefix(ctx: TenantCtx): string;
|
|
24
|
-
interface SitemapGenerationKey {
|
|
22
|
+
export declare function hashUrl(url: string): string;
|
|
23
|
+
export declare function sitemapUrlsPrefix(ctx: TenantCtx): string;
|
|
24
|
+
export interface SitemapGenerationKey {
|
|
25
25
|
id: string;
|
|
26
26
|
observedAt: number;
|
|
27
27
|
}
|
|
28
|
-
declare function sitemapUrlsEventsPrefix(ctx: TenantCtx): string;
|
|
29
|
-
declare function sitemapUrlsEventKey(ctx: TenantCtx, feedpathHash: string, generation: SitemapGenerationKey): string;
|
|
30
|
-
declare function sitemapSiteManifestKey(ctx: TenantCtx): string;
|
|
31
|
-
declare function sitemapSiteManifestsPrefix(ctx: TenantCtx): string;
|
|
32
|
-
declare function sitemapSiteGenerationManifestKey(ctx: TenantCtx, generation: SitemapGenerationKey): string;
|
|
33
|
-
declare function sitemapStagedGenerationPrefix(ctx: TenantCtx, generation: SitemapGenerationKey): string;
|
|
34
|
-
declare function sitemapStagedFeedKey(ctx: TenantCtx, generation: SitemapGenerationKey, feedpathHash: string): string;
|
|
35
|
-
declare function sitemapImmutableBaseKey(ctx: TenantCtx, generation: SitemapGenerationKey, feedpathHash: string): string;
|
|
36
|
-
declare function sitemapLegacyImportKey(ctx: TenantCtx): string;
|
|
28
|
+
export declare function sitemapUrlsEventsPrefix(ctx: TenantCtx): string;
|
|
29
|
+
export declare function sitemapUrlsEventKey(ctx: TenantCtx, feedpathHash: string, generation: SitemapGenerationKey): string;
|
|
30
|
+
export declare function sitemapSiteManifestKey(ctx: TenantCtx): string;
|
|
31
|
+
export declare function sitemapSiteManifestsPrefix(ctx: TenantCtx): string;
|
|
32
|
+
export declare function sitemapSiteGenerationManifestKey(ctx: TenantCtx, generation: SitemapGenerationKey): string;
|
|
33
|
+
export declare function sitemapStagedGenerationPrefix(ctx: TenantCtx, generation: SitemapGenerationKey): string;
|
|
34
|
+
export declare function sitemapStagedFeedKey(ctx: TenantCtx, generation: SitemapGenerationKey, feedpathHash: string): string;
|
|
35
|
+
export declare function sitemapImmutableBaseKey(ctx: TenantCtx, generation: SitemapGenerationKey, feedpathHash: string): string;
|
|
36
|
+
export declare function sitemapLegacyImportKey(ctx: TenantCtx): string;
|
|
37
37
|
/** WHATWG-serialized HTTP(S) feed identity with the fragment removed. */
|
|
38
|
-
type SitemapFeedIdentityResult = {
|
|
38
|
+
export type SitemapFeedIdentityResult = {
|
|
39
39
|
_tag: 'ok';
|
|
40
40
|
url: string;
|
|
41
41
|
} | {
|
|
42
42
|
_tag: 'invalid';
|
|
43
43
|
reason: 'credentials' | 'empty' | 'invalid_url' | 'unsupported_protocol';
|
|
44
44
|
};
|
|
45
|
-
declare function parseSitemapFeedIdentity(input: string): SitemapFeedIdentityResult;
|
|
45
|
+
export declare function parseSitemapFeedIdentity(input: string): SitemapFeedIdentityResult;
|
|
46
46
|
/** Versioned exact payload hash. Lastmod-only changes are intentionally visible. */
|
|
47
|
-
declare function sitemapPayloadHashV1(urls: readonly {
|
|
47
|
+
export declare function sitemapPayloadHashV1(urls: readonly {
|
|
48
48
|
loc: string;
|
|
49
49
|
lastmod?: string;
|
|
50
50
|
}[]): string;
|
|
51
|
-
declare function indexingMetadataIndexKey(ctx: TenantCtx): string;
|
|
52
|
-
declare function queryDimParquetKey(ctx: TenantCtx): string;
|
|
53
|
-
declare function queryDimMetaKey(ctx: TenantCtx): string;
|
|
54
|
-
export { SitemapFeedIdentityResult, SitemapGenerationKey, emptyTypesKey, hashUrl, indexingMetadataIndexKey, inspectionBaseKey, inspectionEventKey, inspectionEventsPrefix, inspectionHistoryPrefix, inspectionHistoryShardKey, inspectionIndexKey, inspectionParquetKey, inspectionTransitionsMonthKey, inspectionTransitionsPrefix, parseSitemapFeedIdentity, queryDimMetaKey, queryDimParquetKey, sitemapImmutableBaseKey, sitemapLegacyImportKey, sitemapPayloadHashV1, sitemapSiteGenerationManifestKey, sitemapSiteManifestKey, sitemapSiteManifestsPrefix, sitemapStagedFeedKey, sitemapStagedGenerationPrefix, sitemapUrlsEventKey, sitemapUrlsEventsPrefix, sitemapUrlsPrefix };
|
|
51
|
+
export declare function indexingMetadataIndexKey(ctx: TenantCtx): string;
|
|
52
|
+
export declare function queryDimParquetKey(ctx: TenantCtx): string;
|
|
53
|
+
export declare function queryDimMetaKey(ctx: TenantCtx): string;
|
package/dist/errors.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
type EngineErrorKind = 'analyzer-not-found' | 'analyzer-capability-missing' | 'invalid-sql-literal' | 'placeholder-arity-mismatch' | 'invalid-search-types' | 'attached-table-missing' | 'manifest-cas-exhausted' | 'invalid-snapshot-filename' | 'unsupported-snapshot-index-version' | 'invalid-schema-identifier' | 'invalid-year-month' | 'missing-attach-url' | 'manifest-cas-round-lost' | 'iceberg-table-op-failed' | 'sink-table-flush-failed' | 'rollup-build-failed' | 'lock-acquire-timeout';
|
|
2
|
-
type EngineError = {
|
|
1
|
+
export type EngineErrorKind = 'analyzer-not-found' | 'analyzer-capability-missing' | 'invalid-sql-literal' | 'placeholder-arity-mismatch' | 'invalid-search-types' | 'attached-table-missing' | 'manifest-cas-exhausted' | 'invalid-snapshot-filename' | 'unsupported-snapshot-index-version' | 'invalid-schema-identifier' | 'invalid-year-month' | 'missing-attach-url' | 'manifest-cas-round-lost' | 'iceberg-table-op-failed' | 'sink-table-flush-failed' | 'rollup-build-failed' | 'lock-acquire-timeout';
|
|
2
|
+
export type EngineError = {
|
|
3
3
|
kind: 'analyzer-not-found';
|
|
4
4
|
tool: string;
|
|
5
5
|
message: string;
|
|
@@ -76,7 +76,7 @@ type EngineError = {
|
|
|
76
76
|
scope: string;
|
|
77
77
|
timeoutMs: number;
|
|
78
78
|
};
|
|
79
|
-
declare const engineErrors: {
|
|
79
|
+
export declare const engineErrors: {
|
|
80
80
|
readonly analyzerNotFound: (tool: string) => EngineError;
|
|
81
81
|
readonly analyzerCapabilityMissing: (tool: string, missing: readonly string[]) => EngineError;
|
|
82
82
|
readonly nonFiniteNumberLiteral: (value: number) => EngineError;
|
|
@@ -102,7 +102,7 @@ declare const engineErrors: {
|
|
|
102
102
|
readonly rollupBuildFailed: (id: string, cause: unknown) => EngineError;
|
|
103
103
|
readonly lockAcquireTimeout: (scope: string, timeoutMs: number) => EngineError;
|
|
104
104
|
};
|
|
105
|
-
declare function isEngineError(value: unknown): value is EngineError;
|
|
105
|
+
export declare function isEngineError(value: unknown): value is EngineError;
|
|
106
106
|
/**
|
|
107
107
|
* Re-raises an `EngineError` value as a generic `Error`, stashing the union under
|
|
108
108
|
* `.engineError` for stack-walking. Used by the throwing wrappers over the
|
|
@@ -111,5 +111,4 @@ declare function isEngineError(value: unknown): value is EngineError;
|
|
|
111
111
|
* (`AnalyzerCapabilityError`, `AttachedTableMissingError`) provide their own
|
|
112
112
|
* mapper so the class identity callers match on is preserved.
|
|
113
113
|
*/
|
|
114
|
-
declare function engineErrorToException(error: EngineError): Error;
|
|
115
|
-
export { EngineError, EngineErrorKind, engineErrorToException, engineErrors, isEngineError };
|
|
114
|
+
export declare function engineErrorToException(error: EngineError): Error;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IcebergAppendSinkOptions, Sink } from "../sink.mjs";
|
|
2
|
-
type IcebergAppendSink = Sink;
|
|
2
|
+
export type IcebergAppendSink = Sink;
|
|
3
3
|
/**
|
|
4
4
|
* Create an `IcebergAppendSink` over the R2 Data Catalog.
|
|
5
5
|
*
|
|
@@ -10,5 +10,4 @@ type IcebergAppendSink = Sink;
|
|
|
10
10
|
* Worker callers can share the `/v1/config` context through a durable cache;
|
|
11
11
|
* without it every fresh sink/isolate must probe the catalog again.
|
|
12
12
|
*/
|
|
13
|
-
declare function createIcebergAppendSink(options: IcebergAppendSinkOptions): IcebergAppendSink;
|
|
14
|
-
export { IcebergAppendSink, createIcebergAppendSink };
|
|
13
|
+
export declare function createIcebergAppendSink(options: IcebergAppendSinkOptions): IcebergAppendSink;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EngineError } from "../errors.mjs";
|
|
2
2
|
import { IcebergTableName, PartitionKeyEncoding } from "./schema.mjs";
|
|
3
|
-
import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.
|
|
4
|
-
import "../node_modules/.pnpm/icebird@0.8.
|
|
3
|
+
import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/write/write.mjs";
|
|
4
|
+
import "../node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/index.mjs";
|
|
5
5
|
import { Result } from "gscdump/result";
|
|
6
6
|
import { CommitRetryOptions, ConnectIcebergOptions, IcebergCatalogConfig, IcebergConnection, IcebergListedDataFile, QueryProfiler } from "@gscdump/lakehouse";
|
|
7
7
|
type IcebirdCreateTableOptions = Parameters<typeof icebergCreateTable>[0];
|
|
@@ -13,24 +13,24 @@ type IcebirdSortOrder = NonNullable<IcebirdCreateTableOptions['sortOrder']>;
|
|
|
13
13
|
* `ICEBERG_SCHEMAS` contract. Field ids are advisory — R2 Data Catalog
|
|
14
14
|
* re-assigns them on `createTable`.
|
|
15
15
|
*/
|
|
16
|
-
declare function icebergSchemaFor(table: IcebergTableName, encoding?: PartitionKeyEncoding): IcebirdSchema;
|
|
16
|
+
export declare function icebergSchemaFor(table: IcebergTableName, encoding?: PartitionKeyEncoding): IcebirdSchema;
|
|
17
17
|
/**
|
|
18
18
|
* Build the icebird `PartitionSpec` for one of the 9 fact tables: the locked
|
|
19
19
|
* spec `identity(site_id) + identity(search_type) + month(date)`.
|
|
20
20
|
*/
|
|
21
|
-
declare function icebergPartitionSpecFor(table: IcebergTableName, encoding?: PartitionKeyEncoding): IcebirdPartitionSpec;
|
|
21
|
+
export declare function icebergPartitionSpecFor(table: IcebergTableName, encoding?: PartitionKeyEncoding): IcebirdPartitionSpec;
|
|
22
22
|
/**
|
|
23
23
|
* Build the icebird `SortOrder` for a fact table from its `clusterKey`
|
|
24
24
|
* (dimension-first, then `date`).
|
|
25
25
|
*/
|
|
26
|
-
declare function icebergSortOrderFor(table: IcebergTableName, encoding?: PartitionKeyEncoding): IcebirdSortOrder;
|
|
26
|
+
export declare function icebergSortOrderFor(table: IcebergTableName, encoding?: PartitionKeyEncoding): IcebirdSortOrder;
|
|
27
27
|
/**
|
|
28
28
|
* Outcome of a single table create/drop: the table name plus a `Result` —
|
|
29
29
|
* `Ok(void)` on success, `Err(iceberg-table-op-failed)` carrying the failure
|
|
30
30
|
* message when the catalog rejects the op. Per-table so a partial
|
|
31
31
|
* provisioning run is fully observable.
|
|
32
32
|
*/
|
|
33
|
-
interface IcebergTableOpResult {
|
|
33
|
+
export interface IcebergTableOpResult {
|
|
34
34
|
table: string;
|
|
35
35
|
outcome: Result<void, EngineError>;
|
|
36
36
|
}
|
|
@@ -39,7 +39,7 @@ interface IcebergTableOpResult {
|
|
|
39
39
|
* the schema derived from {@link ICEBERG_SCHEMAS}. Per-table errors are
|
|
40
40
|
* captured rather than thrown so a partial run is observable.
|
|
41
41
|
*/
|
|
42
|
-
declare function createIcebergTables(conn: IcebergConnection, tables?: readonly IcebergTableName[], encoding?: PartitionKeyEncoding): Promise<IcebergTableOpResult[]>;
|
|
42
|
+
export declare function createIcebergTables(conn: IcebergConnection, tables?: readonly IcebergTableName[], encoding?: PartitionKeyEncoding): Promise<IcebergTableOpResult[]>;
|
|
43
43
|
/**
|
|
44
44
|
* Drop tables from the catalog namespace, purging their data objects.
|
|
45
45
|
* Defaults to every table currently in the namespace. Delegates the walk to
|
|
@@ -48,7 +48,7 @@ declare function createIcebergTables(conn: IcebergConnection, tables?: readonly
|
|
|
48
48
|
* {@link IcebergTableOpResult} contract.
|
|
49
49
|
*/
|
|
50
50
|
declare function dropIcebergTables$1(conn: IcebergConnection, tables?: readonly string[]): Promise<IcebergTableOpResult[]>;
|
|
51
|
-
interface ListIcebergDataFilesOptions {
|
|
51
|
+
export interface ListIcebergDataFilesOptions {
|
|
52
52
|
table: IcebergTableName;
|
|
53
53
|
/** Partition identity column. `number` for `'int'`-encoded catalogs. */
|
|
54
54
|
siteId: string | number;
|
|
@@ -67,5 +67,5 @@ interface ListIcebergDataFilesOptions {
|
|
|
67
67
|
* List the parquet data files in the current snapshot of `table`, filtered to
|
|
68
68
|
* a single partition slice `(siteId, searchType, month(date) ∈ range)`.
|
|
69
69
|
*/
|
|
70
|
-
declare function listIcebergDataFiles(conn: IcebergConnection, opts: ListIcebergDataFilesOptions): Promise<IcebergListedDataFile[]>;
|
|
71
|
-
export { type CommitRetryOptions, type ConnectIcebergOptions, type IcebergCatalogConfig,
|
|
70
|
+
export declare function listIcebergDataFiles(conn: IcebergConnection, opts: ListIcebergDataFilesOptions): Promise<IcebergListedDataFile[]>;
|
|
71
|
+
export { type CommitRetryOptions, type ConnectIcebergOptions, type IcebergCatalogConfig, dropIcebergTables$1 as dropIcebergTables };
|
package/dist/iceberg/catalog.mjs
CHANGED
|
@@ -2,8 +2,8 @@ import { engineErrors } from "../errors.mjs";
|
|
|
2
2
|
import { TABLE_METADATA } from "../drizzle-schema.mjs";
|
|
3
3
|
import "../schema.mjs";
|
|
4
4
|
import { DEFAULT_PARTITION_KEY_ENCODING, ICEBERG_PARTITION_SPEC, ICEBERG_TABLES, icebergSchemasFor } from "./schema.mjs";
|
|
5
|
-
import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.
|
|
6
|
-
import "../node_modules/.pnpm/icebird@0.8.
|
|
5
|
+
import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/src/write/write.mjs";
|
|
6
|
+
import "../node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/src/index.mjs";
|
|
7
7
|
import { err, ok } from "gscdump/result";
|
|
8
8
|
import { ICEBERG_TYPE_MAP, connectIcebergCatalog, dropIcebergTables, resolveIcebergDataFiles } from "@gscdump/lakehouse";
|
|
9
9
|
import { icebergAppendRetrying } from "@gscdump/lakehouse/unsafe-raw";
|
|
@@ -2,7 +2,7 @@ import { Row } from "../storage.mjs";
|
|
|
2
2
|
import { IcebergS3Config } from "./schema.mjs";
|
|
3
3
|
import { Sink, SinkCloseResult, SliceOverwriteWriter } from "../sink.mjs";
|
|
4
4
|
/** Connection details for the Iceberg REST catalog the writer targets. */
|
|
5
|
-
interface OverwriteWriterCatalogConfig {
|
|
5
|
+
export interface OverwriteWriterCatalogConfig {
|
|
6
6
|
/**
|
|
7
7
|
* Iceberg REST catalog endpoint, e.g. `http://localhost:8181` (POC) or the
|
|
8
8
|
* R2 Data Catalog endpoint (prod).
|
|
@@ -21,7 +21,7 @@ interface OverwriteWriterCatalogConfig {
|
|
|
21
21
|
* The JSON job wire-format shared with `scripts/iceberg-writer.py`.
|
|
22
22
|
* `op` is always `overwrite` here.
|
|
23
23
|
*/
|
|
24
|
-
interface OverwriteJob {
|
|
24
|
+
export interface OverwriteJob {
|
|
25
25
|
op: 'overwrite';
|
|
26
26
|
catalogUri: string;
|
|
27
27
|
namespace: string;
|
|
@@ -42,7 +42,7 @@ interface OverwriteJob {
|
|
|
42
42
|
* re-backfill, without touching sibling sites. Carries no rows. `siteId` is a
|
|
43
43
|
* `number` for an INT-encoded shard, a `string` for STRING encoding.
|
|
44
44
|
*/
|
|
45
|
-
interface DeleteJob {
|
|
45
|
+
export interface DeleteJob {
|
|
46
46
|
op: 'delete';
|
|
47
47
|
catalogUri: string;
|
|
48
48
|
namespace: string;
|
|
@@ -54,9 +54,9 @@ interface DeleteJob {
|
|
|
54
54
|
siteId: string | number;
|
|
55
55
|
}
|
|
56
56
|
/** Any job the shared PyIceberg backend can execute. */
|
|
57
|
-
type PyIcebergJob = OverwriteJob | DeleteJob;
|
|
57
|
+
export type PyIcebergJob = OverwriteJob | DeleteJob;
|
|
58
58
|
/** Result wire-format from the PyIceberg backend. */
|
|
59
|
-
interface OverwriteJobResult {
|
|
59
|
+
export interface OverwriteJobResult {
|
|
60
60
|
/** Rows written (emit/overwrite) or removed (delete). */
|
|
61
61
|
rowCount?: number;
|
|
62
62
|
error?: string;
|
|
@@ -68,8 +68,8 @@ interface OverwriteJobResult {
|
|
|
68
68
|
* backend value is still assignable where the narrower `OverwriteBackend` is
|
|
69
69
|
* expected (a wider-param function accepts the narrower call).
|
|
70
70
|
*/
|
|
71
|
-
type OverwriteBackend = (job: PyIcebergJob) => Promise<OverwriteJobResult>;
|
|
72
|
-
interface IcebergOverwriteWriterOptions {
|
|
71
|
+
export type OverwriteBackend = (job: PyIcebergJob) => Promise<OverwriteJobResult>;
|
|
72
|
+
export interface IcebergOverwriteWriterOptions {
|
|
73
73
|
catalog: OverwriteWriterCatalogConfig;
|
|
74
74
|
/** The transport that runs the PyIceberg job. */
|
|
75
75
|
backend: OverwriteBackend;
|
|
@@ -79,7 +79,7 @@ interface IcebergOverwriteWriterOptions {
|
|
|
79
79
|
* `SliceOverwriteWriter` contract; `overwriteSlice` builds one PyIceberg
|
|
80
80
|
* overwrite job per call and runs it through the configured backend.
|
|
81
81
|
*/
|
|
82
|
-
interface IcebergOverwriteWriter extends SliceOverwriteWriter {
|
|
82
|
+
export interface IcebergOverwriteWriter extends SliceOverwriteWriter {
|
|
83
83
|
/** Release any backend resources. Idempotent. */
|
|
84
84
|
close: () => Promise<SinkCloseResult>;
|
|
85
85
|
}
|
|
@@ -87,9 +87,9 @@ interface IcebergOverwriteWriter extends SliceOverwriteWriter {
|
|
|
87
87
|
* Build a trailing-window Iceberg overwrite writer over the given backend.
|
|
88
88
|
* Pure — all I/O is the backend's; the writer only shapes the job.
|
|
89
89
|
*/
|
|
90
|
-
declare function createIcebergOverwriteWriter(opts: IcebergOverwriteWriterOptions): IcebergOverwriteWriter;
|
|
90
|
+
export declare function createIcebergOverwriteWriter(opts: IcebergOverwriteWriterOptions): IcebergOverwriteWriter;
|
|
91
91
|
/** Options for the PyIceberg subprocess backend. */
|
|
92
|
-
interface SubprocessBackendOptions {
|
|
92
|
+
export interface SubprocessBackendOptions {
|
|
93
93
|
/** Python interpreter. Defaults to `$GSCDUMP_ICEBERG_PYTHON` then `python3`. */
|
|
94
94
|
python?: string;
|
|
95
95
|
/**
|
|
@@ -104,9 +104,9 @@ interface SubprocessBackendOptions {
|
|
|
104
104
|
* tests and a Node-side scheduled job box. The script reads the job JSON on
|
|
105
105
|
* stdin and writes `{rowCount}` / `{error}` on stdout.
|
|
106
106
|
*/
|
|
107
|
-
declare function subprocessBackend(opts?: SubprocessBackendOptions): OverwriteBackend;
|
|
107
|
+
export declare function subprocessBackend(opts?: SubprocessBackendOptions): OverwriteBackend;
|
|
108
108
|
/** Options for the PyIceberg HTTP backend (the Cloudflare Container in prod). */
|
|
109
|
-
interface HttpBackendOptions {
|
|
109
|
+
export interface HttpBackendOptions {
|
|
110
110
|
/**
|
|
111
111
|
* URL of the PyIceberg overwrite service — a POST endpoint accepting the
|
|
112
112
|
* `OverwriteJob` JSON and returning `OverwriteJobResult`.
|
|
@@ -123,16 +123,16 @@ interface HttpBackendOptions {
|
|
|
123
123
|
* is the prod transport: the request-path Worker holds no Python and never
|
|
124
124
|
* does an Iceberg metadata commit itself.
|
|
125
125
|
*/
|
|
126
|
-
declare function httpBackend(opts: HttpBackendOptions): OverwriteBackend;
|
|
126
|
+
export declare function httpBackend(opts: HttpBackendOptions): OverwriteBackend;
|
|
127
127
|
/**
|
|
128
128
|
* Adapt an `IcebergOverwriteWriter` into a full `Sink` whose `emit` is also a
|
|
129
129
|
* partition-overwrite — convenient for tests so a single Iceberg writer backs
|
|
130
130
|
* both append and revision paths against the local stack. Prod keeps `emit`
|
|
131
131
|
* on the Pipeline; only `overwriteSlice` delegates here.
|
|
132
132
|
*/
|
|
133
|
-
declare function overwriteWriterAsSink(writer: IcebergOverwriteWriter): Sink & SliceOverwriteWriter;
|
|
133
|
+
export declare function overwriteWriterAsSink(writer: IcebergOverwriteWriter): Sink & SliceOverwriteWriter;
|
|
134
134
|
/** Per-table outcome of a {@link deleteSiteFromShard} run. */
|
|
135
|
-
interface DeleteSiteResult {
|
|
135
|
+
export interface DeleteSiteResult {
|
|
136
136
|
table: string;
|
|
137
137
|
/** Rows removed, when the backend reported a count. */
|
|
138
138
|
rowCount?: number;
|
|
@@ -152,10 +152,9 @@ interface DeleteSiteResult {
|
|
|
152
152
|
* failure is visible and re-runnable (delete is idempotent: re-deleting an
|
|
153
153
|
* already-empty site is a no-op).
|
|
154
154
|
*/
|
|
155
|
-
declare function deleteSiteFromShard(args: {
|
|
155
|
+
export declare function deleteSiteFromShard(args: {
|
|
156
156
|
catalog: OverwriteWriterCatalogConfig;
|
|
157
157
|
backend: OverwriteBackend;
|
|
158
158
|
siteId: string | number;
|
|
159
159
|
tables: readonly string[];
|
|
160
|
-
}): Promise<DeleteSiteResult[]>;
|
|
161
|
-
export { DeleteJob, DeleteSiteResult, HttpBackendOptions, IcebergOverwriteWriter, IcebergOverwriteWriterOptions, OverwriteBackend, OverwriteJob, OverwriteJobResult, OverwriteWriterCatalogConfig, PyIcebergJob, SubprocessBackendOptions, createIcebergOverwriteWriter, deleteSiteFromShard, httpBackend, overwriteWriterAsSink, subprocessBackend };
|
|
160
|
+
}): Promise<DeleteSiteResult[]>;
|