@lunora/do 1.0.0-alpha.46 → 1.0.0-alpha.47

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/index.d.mts CHANGED
@@ -2610,6 +2610,13 @@ interface ContextMetrics {
2610
2610
  /** The trace a ctx's spans hang off: the shared id, and the span they parent to. */
2611
2611
  interface TraceAnchor {
2612
2612
  rootSpanId: string;
2613
+ /**
2614
+ * The W3C `sampled` verdict for this trace, inherited from the inbound
2615
+ * `traceparent` when there was one. Carried on the anchor rather than
2616
+ * re-derived per outbound call so every `ctx.fetch` of one dispatch
2617
+ * propagates the same answer.
2618
+ */
2619
+ sampled?: boolean;
2613
2620
  traceId: string;
2614
2621
  }
2615
2622
  /**
package/dist/index.d.ts CHANGED
@@ -2610,6 +2610,13 @@ interface ContextMetrics {
2610
2610
  /** The trace a ctx's spans hang off: the shared id, and the span they parent to. */
2611
2611
  interface TraceAnchor {
2612
2612
  rootSpanId: string;
2613
+ /**
2614
+ * The W3C `sampled` verdict for this trace, inherited from the inbound
2615
+ * `traceparent` when there was one. Carried on the anchor rather than
2616
+ * re-derived per outbound call so every `ctx.fetch` of one dispatch
2617
+ * propagates the same answer.
2618
+ */
2619
+ sampled?: boolean;
2613
2620
  traceId: string;
2614
2621
  }
2615
2622
  /**
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{exportShardRows as o,exportShardTable as t,importShardRows as a,parseExportShardArgs as n,parseImportShardArgs as i,selectExportTables as s,validateImportRow as l}from"./packem_shared/exportShardRows-kt42wijd.mjs";import{AGGREGATE_SQL_FUNCTION as T,aggregateSqlFunction as d,matchesStaticWhere as p,normalizeCountArgument as E,throwingScheduler as S}from"./packem_shared/AGGREGATE_SQL_FUNCTION-QYaiuty4.mjs";import{aggregateTableName as _,coerceAggregateNumber as u,encodeAggregateKey as x,foldAggregateTally as f,readAggregateValue as I}from"./packem_shared/aggregateTableName-G-eXyjcz.mjs";import{CountRlsUnsupportedError as A,mergeWhere as N,planAggregateLookup as g,selectIndexForAggregate as C,selectIndexForCount as M,selectIndexForGroupBy as h}from"./packem_shared/CountRlsUnsupportedError-Cl8XpYDL.mjs";import{AUTH_METRICS_BUCKETS_TABLE as F,AUTH_METRICS_BUCKET_MS as D,AUTH_METRICS_BUCKET_RETENTION as L,AUTH_METRICS_TABLE as U,ensureAuthMetricsTables as B,readAuthMetrics as b,recordAuthEvent as y}from"./packem_shared/AUTH_METRICS_BUCKETS_TABLE-D0wNaez7.mjs";import{c as K,a as G,d as P}from"./packem_shared/context-telemetry-O3OwE5Zu.mjs";import{NotUniqueError as v,assertValidClientId as H,createShardCtxDb as w,normalizeIdStructurally as q}from"./packem_shared/NotUniqueError-BcP6GOem.mjs";import{DATA_MIGRATION_STATE_TABLE as X,readMigrationStatus as Y,runDataMigration as V}from"./packem_shared/DATA_MIGRATION_STATE_TABLE-CaO6L0Ee.mjs";import{SCAN_DEP as Z,createDependencyTracker as j,depKey as J}from"./packem_shared/SCAN_DEP-D_yR9EeV.mjs";import{renderSql as ee}from"./packem_shared/renderSql-B5lF5Jd9.mjs";import{diffExternalSource as oe}from"./packem_shared/diffExternalSource-DMpkJta1.mjs";import{materializeExternalRows as ae,materializeExternalRowsIncremental as ne,readExternalSourceBaseline as ie,runExternalSourceTick as se}from"./packem_shared/materializeExternalRows-BFmT9gsw.mjs";import{isSoftDeleted as ce,isSourceDue as Te,liftSourceId as de,pullExternalSourceIncrementalTick as pe,pullExternalSourceTick as Ee}from"./packem_shared/isSoftDeleted-BvhQov04.mjs";import{FUNCTION_METRICS_BUCKETS_TABLE as me,FUNCTION_METRICS_BUCKET_MS as _e,FUNCTION_METRICS_BUCKET_RETENTION as ue,FUNCTION_METRICS_INDEX_TABLE as xe,FUNCTION_METRICS_TABLE as fe,ensureFunctionMetricsTables as Ie,readFunctionMetricBuckets as Re,readFunctionMetricIndexHits as Ae,readFunctionMetrics as Ne,readFunctionMetricsTotals as ge,recordFunctionMetric as Ce}from"./packem_shared/FUNCTION_METRICS_BUCKETS_TABLE-BPPeqM11.mjs";import{GEO_DEFAULT_PRECISION as he,boundingBoxGeohashes as Oe,coveringGeohashes as Fe,encodeGeohash as De,haversineMeters as Le,pointInBoundingBox as Ue}from"./packem_shared/GEO_DEFAULT_PRECISION-CWAm_oYY.mjs";import{ADMIN_FUNCTIONS as be,ADMIN_FUNCTION_PREFIX as ye,FLAGS_FUNCTION_PREFIX as ke,RELATION_FUNCTION_PREFIX as Ke,facetColumn as Ge,listTables as Pe,readTablePage as We,selectMatchingIds as ve}from"./packem_shared/ADMIN_FUNCTIONS-PxZ8Lr9e.mjs";import{LogBuffer as we}from"./packem_shared/LogBuffer-bIvCelI-.mjs";import{MAIL_RETENTION as ze,MAIL_TABLE as Xe,clearCapturedMail as Ye,ensureMailTable as Ve,readCapturedMail as Qe,recordCapturedMail as Ze}from"./packem_shared/MAIL_RETENTION-KmozO2NQ.mjs";import{default as Je}from"./packem_shared/NotFoundError-J3tjf4Uo.mjs";import{armRestore as er,readBookmark as rr}from"./packem_shared/armRestore-BNzdvQ_o.mjs";import{applySelect as tr,buildSeekWhere as ar,decodeCursor as nr,encodeCursor as ir,normalizeOrderKeys as sr,softDeleteScope as lr}from"./packem_shared/applySelect-Bq2KOrkL.mjs";import{RANK_TIEBREAK as Tr,encodePartitionKey as dr,matchesRankStaticWhere as pr,rankTableName as Er,resolveRankPartition as Sr,sortColumnName as mr}from"./packem_shared/RANK_TIEBREAK-DtX8zQyc.mjs";import{ReactiveCache as ur,reactiveCacheKey as xr}from"./packem_shared/ReactiveCache-1_9Rs7J_.mjs";import{serveRelationFanout as Ir}from"./packem_shared/serveRelationFanout-Ct5D2Tbk.mjs";import{DEFAULT_MAX_RELATION_KEYS as Ar,assertFlatPredicate as Nr,assertShapeShardable as gr,containsRelationPredicate as Cr,isRelationPredicate as Mr,resolveRelationPredicates as hr}from"./packem_shared/DEFAULT_MAX_RELATION_KEYS-BRdmX7WW.mjs";import{applyOnDelete as Fr,fanOutScalarCounts as Dr,resolveWith as Lr,runRowValidators as Ur}from"./packem_shared/applyOnDelete-BvQN7pDL.mjs";import{RLS_UNWRAP_SYMBOL as br,RlsRequiredError as yr,guardWriter as kr}from"./packem_shared/RLS_UNWRAP_SYMBOL-C6_WX3dG.mjs";import{buildFtsMatch as Gr,ftsTableName as Pr,scoreDocument as Wr,stringifySearchText as vr,tokenizeSearch as Hr}from"./packem_shared/buildFtsMatch-CV0Z7PWv.mjs";import{o as qr,c as zr,_ as Xr}from"./packem_shared/security-audit-BKUOgE0x.mjs";import{SESSION_DO_TTL_DEFAULT as Vr,SessionDO as Qr}from"./packem_shared/SESSION_DO_TTL_DEFAULT-GvBy_DBz.mjs";import{ROOT_DO_SIZE_WARN_BYTES as jr,ROOT_SHARD_NAME as Jr,ShardDO as $r}from"./packem_shared/ROOT_DO_SIZE_WARN_BYTES-n4ds54Xa.mjs";import{SHARD_REGISTRY_DO_NAME as ro,ShardRegistryDO as oo}from"./packem_shared/SHARD_REGISTRY_DO_NAME-Caa0fR4N.mjs";import{MAX_SQL_ROWS as ao,assertReadonly as no,runReadonlySql as io}from"./packem_shared/MAX_SQL_ROWS-Bdu25ASB.mjs";import{createSystemReader as lo}from"./packem_shared/createSystemReader-DcDcrtM3.mjs";import{ConflictError as To}from"./packem_shared/ConflictError-C8GtJmjS.mjs";import{hasTrigger as Eo,runTriggers as So}from"./packem_shared/hasTrigger-_rexbWMO.mjs";import{selectExpiredIds as _o}from"./packem_shared/selectExpiredIds-BGVP3d8-.mjs";import{compileWhereSql as xo}from"./packem_shared/compileWhereSql-BLcfs4QW.mjs";import{CDC_LOG_TABLE as Io,applyCdcChanges as Ro,readCdcChanges as Ao,trimCdcChanges as No}from"./packem_shared/CDC_LOG_TABLE-E_J5LPoK.mjs";import{backfillAggregateIndexes as Co,backfillRankIndexes as Mo}from"./packem_shared/backfillAggregateIndexes-BAQ3Fwwh.mjs";import{runShardMigrations as Oo}from"./packem_shared/runShardMigrations-bxOHpfID.mjs";import{stableStringify as Do}from"./packem_shared/stableStringify-BjLh4gvA.mjs";import{stableWireKey as Uo}from"./packem_shared/stableWireKey-YEHLaX6X.mjs";import{subscriptionListDeltas as bo}from"./packem_shared/subscriptionListDeltas-Bs69JbA8.mjs";export{be as ADMIN_FUNCTIONS,ye as ADMIN_FUNCTION_PREFIX,T as AGGREGATE_SQL_FUNCTION,F as AUTH_METRICS_BUCKETS_TABLE,D as AUTH_METRICS_BUCKET_MS,L as AUTH_METRICS_BUCKET_RETENTION,U as AUTH_METRICS_TABLE,Io as CDC_LOG_TABLE,To as ConflictError,A as CountRlsUnsupportedError,X as DATA_MIGRATION_STATE_TABLE,Ar as DEFAULT_MAX_RELATION_KEYS,ke as FLAGS_FUNCTION_PREFIX,me as FUNCTION_METRICS_BUCKETS_TABLE,_e as FUNCTION_METRICS_BUCKET_MS,ue as FUNCTION_METRICS_BUCKET_RETENTION,xe as FUNCTION_METRICS_INDEX_TABLE,fe as FUNCTION_METRICS_TABLE,he as GEO_DEFAULT_PRECISION,we as LogBuffer,ze as MAIL_RETENTION,Xe as MAIL_TABLE,ao as MAX_SQL_ROWS,qr as MIN_ADMIN_TOKEN_LENGTH,zr as MIN_AUTH_SECRET_LENGTH,Je as NotFoundError,v as NotUniqueError,Tr as RANK_TIEBREAK,Ke as RELATION_FUNCTION_PREFIX,br as RLS_UNWRAP_SYMBOL,jr as ROOT_DO_SIZE_WARN_BYTES,Jr as ROOT_SHARD_NAME,ur as ReactiveCache,yr as RlsRequiredError,Z as SCAN_DEP,Vr as SESSION_DO_TTL_DEFAULT,ro as SHARD_REGISTRY_DO_NAME,Qr as SessionDO,$r as ShardDO,oo as ShardRegistryDO,d as aggregateSqlFunction,_ as aggregateTableName,Ro as applyCdcChanges,Fr as applyOnDelete,tr as applySelect,er as armRestore,Nr as assertFlatPredicate,no as assertReadonly,gr as assertShapeShardable,H as assertValidClientId,Co as backfillAggregateIndexes,Mo as backfillRankIndexes,Oe as boundingBoxGeohashes,Gr as buildFtsMatch,Xr as buildSecurityAudit,ar as buildSeekWhere,Ye as clearCapturedMail,u as coerceAggregateNumber,xo as compileWhereSql,Cr as containsRelationPredicate,Fe as coveringGeohashes,j as createDependencyTracker,K as createMetrics,w as createShardCtxDb,lo as createSystemReader,G as createTracer,nr as decodeCursor,J as depKey,oe as diffExternalSource,P as dispatchRootSpan,x as encodeAggregateKey,ir as encodeCursor,De as encodeGeohash,dr as encodePartitionKey,B as ensureAuthMetricsTables,Ie as ensureFunctionMetricsTables,Ve as ensureMailTable,o as exportShardRows,t as exportShardTable,Ge as facetColumn,Dr as fanOutScalarCounts,f as foldAggregateTally,Pr as ftsTableName,kr as guardWriter,Eo as hasTrigger,Le as haversineMeters,a as importShardRows,Mr as isRelationPredicate,ce as isSoftDeleted,Te as isSourceDue,de as liftSourceId,Pe as listTables,pr as matchesRankStaticWhere,p as matchesStaticWhere,ae as materializeExternalRows,ne as materializeExternalRowsIncremental,N as mergeWhere,E as normalizeCountArgument,q as normalizeIdStructurally,sr as normalizeOrderKeys,n as parseExportShardArgs,i as parseImportShardArgs,g as planAggregateLookup,Ue as pointInBoundingBox,pe as pullExternalSourceIncrementalTick,Ee as pullExternalSourceTick,Er as rankTableName,xr as reactiveCacheKey,I as readAggregateValue,b as readAuthMetrics,rr as readBookmark,Qe as readCapturedMail,Ao as readCdcChanges,ie as readExternalSourceBaseline,Re as readFunctionMetricBuckets,Ae as readFunctionMetricIndexHits,Ne as readFunctionMetrics,ge as readFunctionMetricsTotals,Y as readMigrationStatus,We as readTablePage,y as recordAuthEvent,Ze as recordCapturedMail,Ce as recordFunctionMetric,ee as renderSql,Sr as resolveRankPartition,hr as resolveRelationPredicates,Lr as resolveWith,V as runDataMigration,se as runExternalSourceTick,io as runReadonlySql,Ur as runRowValidators,Oo as runShardMigrations,So as runTriggers,Wr as scoreDocument,_o as selectExpiredIds,s as selectExportTables,C as selectIndexForAggregate,M as selectIndexForCount,h as selectIndexForGroupBy,ve as selectMatchingIds,Ir as serveRelationFanout,lr as softDeleteScope,mr as sortColumnName,Do as stableStringify,Uo as stableWireKey,vr as stringifySearchText,bo as subscriptionListDeltas,S as throwingScheduler,Hr as tokenizeSearch,No as trimCdcChanges,l as validateImportRow};
1
+ import{exportShardRows as o,exportShardTable as t,importShardRows as a,parseExportShardArgs as n,parseImportShardArgs as i,selectExportTables as s,validateImportRow as l}from"./packem_shared/exportShardRows-kt42wijd.mjs";import{AGGREGATE_SQL_FUNCTION as T,aggregateSqlFunction as d,matchesStaticWhere as p,normalizeCountArgument as E,throwingScheduler as S}from"./packem_shared/AGGREGATE_SQL_FUNCTION-QYaiuty4.mjs";import{aggregateTableName as _,coerceAggregateNumber as u,encodeAggregateKey as x,foldAggregateTally as f,readAggregateValue as I}from"./packem_shared/aggregateTableName-G-eXyjcz.mjs";import{CountRlsUnsupportedError as A,mergeWhere as N,planAggregateLookup as g,selectIndexForAggregate as C,selectIndexForCount as M,selectIndexForGroupBy as h}from"./packem_shared/CountRlsUnsupportedError-Cl8XpYDL.mjs";import{AUTH_METRICS_BUCKETS_TABLE as F,AUTH_METRICS_BUCKET_MS as D,AUTH_METRICS_BUCKET_RETENTION as L,AUTH_METRICS_TABLE as U,ensureAuthMetricsTables as B,readAuthMetrics as b,recordAuthEvent as y}from"./packem_shared/AUTH_METRICS_BUCKETS_TABLE-D0wNaez7.mjs";import{c as K,a as G,d as P}from"./packem_shared/context-telemetry-DBcDCBl1.mjs";import{NotUniqueError as v,assertValidClientId as H,createShardCtxDb as w,normalizeIdStructurally as q}from"./packem_shared/NotUniqueError-BcP6GOem.mjs";import{DATA_MIGRATION_STATE_TABLE as X,readMigrationStatus as Y,runDataMigration as V}from"./packem_shared/DATA_MIGRATION_STATE_TABLE-CaO6L0Ee.mjs";import{SCAN_DEP as Z,createDependencyTracker as j,depKey as J}from"./packem_shared/SCAN_DEP-D_yR9EeV.mjs";import{renderSql as ee}from"./packem_shared/renderSql-B5lF5Jd9.mjs";import{diffExternalSource as oe}from"./packem_shared/diffExternalSource-DMpkJta1.mjs";import{materializeExternalRows as ae,materializeExternalRowsIncremental as ne,readExternalSourceBaseline as ie,runExternalSourceTick as se}from"./packem_shared/materializeExternalRows-BFmT9gsw.mjs";import{isSoftDeleted as ce,isSourceDue as Te,liftSourceId as de,pullExternalSourceIncrementalTick as pe,pullExternalSourceTick as Ee}from"./packem_shared/isSoftDeleted-BvhQov04.mjs";import{FUNCTION_METRICS_BUCKETS_TABLE as me,FUNCTION_METRICS_BUCKET_MS as _e,FUNCTION_METRICS_BUCKET_RETENTION as ue,FUNCTION_METRICS_INDEX_TABLE as xe,FUNCTION_METRICS_TABLE as fe,ensureFunctionMetricsTables as Ie,readFunctionMetricBuckets as Re,readFunctionMetricIndexHits as Ae,readFunctionMetrics as Ne,readFunctionMetricsTotals as ge,recordFunctionMetric as Ce}from"./packem_shared/FUNCTION_METRICS_BUCKETS_TABLE-BPPeqM11.mjs";import{GEO_DEFAULT_PRECISION as he,boundingBoxGeohashes as Oe,coveringGeohashes as Fe,encodeGeohash as De,haversineMeters as Le,pointInBoundingBox as Ue}from"./packem_shared/GEO_DEFAULT_PRECISION-CWAm_oYY.mjs";import{ADMIN_FUNCTIONS as be,ADMIN_FUNCTION_PREFIX as ye,FLAGS_FUNCTION_PREFIX as ke,RELATION_FUNCTION_PREFIX as Ke,facetColumn as Ge,listTables as Pe,readTablePage as We,selectMatchingIds as ve}from"./packem_shared/ADMIN_FUNCTIONS-PxZ8Lr9e.mjs";import{LogBuffer as we}from"./packem_shared/LogBuffer-bIvCelI-.mjs";import{MAIL_RETENTION as ze,MAIL_TABLE as Xe,clearCapturedMail as Ye,ensureMailTable as Ve,readCapturedMail as Qe,recordCapturedMail as Ze}from"./packem_shared/MAIL_RETENTION-KmozO2NQ.mjs";import{default as Je}from"./packem_shared/NotFoundError-J3tjf4Uo.mjs";import{armRestore as er,readBookmark as rr}from"./packem_shared/armRestore-BNzdvQ_o.mjs";import{applySelect as tr,buildSeekWhere as ar,decodeCursor as nr,encodeCursor as ir,normalizeOrderKeys as sr,softDeleteScope as lr}from"./packem_shared/applySelect-Bq2KOrkL.mjs";import{RANK_TIEBREAK as Tr,encodePartitionKey as dr,matchesRankStaticWhere as pr,rankTableName as Er,resolveRankPartition as Sr,sortColumnName as mr}from"./packem_shared/RANK_TIEBREAK-DtX8zQyc.mjs";import{ReactiveCache as ur,reactiveCacheKey as xr}from"./packem_shared/ReactiveCache-1_9Rs7J_.mjs";import{serveRelationFanout as Ir}from"./packem_shared/serveRelationFanout-Ct5D2Tbk.mjs";import{DEFAULT_MAX_RELATION_KEYS as Ar,assertFlatPredicate as Nr,assertShapeShardable as gr,containsRelationPredicate as Cr,isRelationPredicate as Mr,resolveRelationPredicates as hr}from"./packem_shared/DEFAULT_MAX_RELATION_KEYS-BRdmX7WW.mjs";import{applyOnDelete as Fr,fanOutScalarCounts as Dr,resolveWith as Lr,runRowValidators as Ur}from"./packem_shared/applyOnDelete-BvQN7pDL.mjs";import{RLS_UNWRAP_SYMBOL as br,RlsRequiredError as yr,guardWriter as kr}from"./packem_shared/RLS_UNWRAP_SYMBOL-C6_WX3dG.mjs";import{buildFtsMatch as Gr,ftsTableName as Pr,scoreDocument as Wr,stringifySearchText as vr,tokenizeSearch as Hr}from"./packem_shared/buildFtsMatch-CV0Z7PWv.mjs";import{o as qr,c as zr,_ as Xr}from"./packem_shared/security-audit-BKUOgE0x.mjs";import{SESSION_DO_TTL_DEFAULT as Vr,SessionDO as Qr}from"./packem_shared/SESSION_DO_TTL_DEFAULT-GvBy_DBz.mjs";import{ROOT_DO_SIZE_WARN_BYTES as jr,ROOT_SHARD_NAME as Jr,ShardDO as $r}from"./packem_shared/ROOT_DO_SIZE_WARN_BYTES-DHW1qs0Z.mjs";import{SHARD_REGISTRY_DO_NAME as ro,ShardRegistryDO as oo}from"./packem_shared/SHARD_REGISTRY_DO_NAME-Caa0fR4N.mjs";import{MAX_SQL_ROWS as ao,assertReadonly as no,runReadonlySql as io}from"./packem_shared/MAX_SQL_ROWS-Bdu25ASB.mjs";import{createSystemReader as lo}from"./packem_shared/createSystemReader-DcDcrtM3.mjs";import{ConflictError as To}from"./packem_shared/ConflictError-C8GtJmjS.mjs";import{hasTrigger as Eo,runTriggers as So}from"./packem_shared/hasTrigger-_rexbWMO.mjs";import{selectExpiredIds as _o}from"./packem_shared/selectExpiredIds-BGVP3d8-.mjs";import{compileWhereSql as xo}from"./packem_shared/compileWhereSql-BLcfs4QW.mjs";import{CDC_LOG_TABLE as Io,applyCdcChanges as Ro,readCdcChanges as Ao,trimCdcChanges as No}from"./packem_shared/CDC_LOG_TABLE-E_J5LPoK.mjs";import{backfillAggregateIndexes as Co,backfillRankIndexes as Mo}from"./packem_shared/backfillAggregateIndexes-BAQ3Fwwh.mjs";import{runShardMigrations as Oo}from"./packem_shared/runShardMigrations-bxOHpfID.mjs";import{stableStringify as Do}from"./packem_shared/stableStringify-BjLh4gvA.mjs";import{stableWireKey as Uo}from"./packem_shared/stableWireKey-YEHLaX6X.mjs";import{subscriptionListDeltas as bo}from"./packem_shared/subscriptionListDeltas-Bs69JbA8.mjs";export{be as ADMIN_FUNCTIONS,ye as ADMIN_FUNCTION_PREFIX,T as AGGREGATE_SQL_FUNCTION,F as AUTH_METRICS_BUCKETS_TABLE,D as AUTH_METRICS_BUCKET_MS,L as AUTH_METRICS_BUCKET_RETENTION,U as AUTH_METRICS_TABLE,Io as CDC_LOG_TABLE,To as ConflictError,A as CountRlsUnsupportedError,X as DATA_MIGRATION_STATE_TABLE,Ar as DEFAULT_MAX_RELATION_KEYS,ke as FLAGS_FUNCTION_PREFIX,me as FUNCTION_METRICS_BUCKETS_TABLE,_e as FUNCTION_METRICS_BUCKET_MS,ue as FUNCTION_METRICS_BUCKET_RETENTION,xe as FUNCTION_METRICS_INDEX_TABLE,fe as FUNCTION_METRICS_TABLE,he as GEO_DEFAULT_PRECISION,we as LogBuffer,ze as MAIL_RETENTION,Xe as MAIL_TABLE,ao as MAX_SQL_ROWS,qr as MIN_ADMIN_TOKEN_LENGTH,zr as MIN_AUTH_SECRET_LENGTH,Je as NotFoundError,v as NotUniqueError,Tr as RANK_TIEBREAK,Ke as RELATION_FUNCTION_PREFIX,br as RLS_UNWRAP_SYMBOL,jr as ROOT_DO_SIZE_WARN_BYTES,Jr as ROOT_SHARD_NAME,ur as ReactiveCache,yr as RlsRequiredError,Z as SCAN_DEP,Vr as SESSION_DO_TTL_DEFAULT,ro as SHARD_REGISTRY_DO_NAME,Qr as SessionDO,$r as ShardDO,oo as ShardRegistryDO,d as aggregateSqlFunction,_ as aggregateTableName,Ro as applyCdcChanges,Fr as applyOnDelete,tr as applySelect,er as armRestore,Nr as assertFlatPredicate,no as assertReadonly,gr as assertShapeShardable,H as assertValidClientId,Co as backfillAggregateIndexes,Mo as backfillRankIndexes,Oe as boundingBoxGeohashes,Gr as buildFtsMatch,Xr as buildSecurityAudit,ar as buildSeekWhere,Ye as clearCapturedMail,u as coerceAggregateNumber,xo as compileWhereSql,Cr as containsRelationPredicate,Fe as coveringGeohashes,j as createDependencyTracker,K as createMetrics,w as createShardCtxDb,lo as createSystemReader,G as createTracer,nr as decodeCursor,J as depKey,oe as diffExternalSource,P as dispatchRootSpan,x as encodeAggregateKey,ir as encodeCursor,De as encodeGeohash,dr as encodePartitionKey,B as ensureAuthMetricsTables,Ie as ensureFunctionMetricsTables,Ve as ensureMailTable,o as exportShardRows,t as exportShardTable,Ge as facetColumn,Dr as fanOutScalarCounts,f as foldAggregateTally,Pr as ftsTableName,kr as guardWriter,Eo as hasTrigger,Le as haversineMeters,a as importShardRows,Mr as isRelationPredicate,ce as isSoftDeleted,Te as isSourceDue,de as liftSourceId,Pe as listTables,pr as matchesRankStaticWhere,p as matchesStaticWhere,ae as materializeExternalRows,ne as materializeExternalRowsIncremental,N as mergeWhere,E as normalizeCountArgument,q as normalizeIdStructurally,sr as normalizeOrderKeys,n as parseExportShardArgs,i as parseImportShardArgs,g as planAggregateLookup,Ue as pointInBoundingBox,pe as pullExternalSourceIncrementalTick,Ee as pullExternalSourceTick,Er as rankTableName,xr as reactiveCacheKey,I as readAggregateValue,b as readAuthMetrics,rr as readBookmark,Qe as readCapturedMail,Ao as readCdcChanges,ie as readExternalSourceBaseline,Re as readFunctionMetricBuckets,Ae as readFunctionMetricIndexHits,Ne as readFunctionMetrics,ge as readFunctionMetricsTotals,Y as readMigrationStatus,We as readTablePage,y as recordAuthEvent,Ze as recordCapturedMail,Ce as recordFunctionMetric,ee as renderSql,Sr as resolveRankPartition,hr as resolveRelationPredicates,Lr as resolveWith,V as runDataMigration,se as runExternalSourceTick,io as runReadonlySql,Ur as runRowValidators,Oo as runShardMigrations,So as runTriggers,Wr as scoreDocument,_o as selectExpiredIds,s as selectExportTables,C as selectIndexForAggregate,M as selectIndexForCount,h as selectIndexForGroupBy,ve as selectMatchingIds,Ir as serveRelationFanout,lr as softDeleteScope,mr as sortColumnName,Do as stableStringify,Uo as stableWireKey,vr as stringifySearchText,bo as subscriptionListDeltas,S as throwingScheduler,Hr as tokenizeSearch,No as trimCdcChanges,l as validateImportRow};
@@ -1,4 +1,4 @@
1
- import{LunoraError as f,toErrorBody as C}from"@lunora/errors";import{drizzle as yt}from"drizzle-orm/durable-sqlite";import{c as j}from"./constant-time-equal-BVG05Guz.mjs";import{j as y}from"./json-response-wrh9TBPw.mjs";import{O as gt,t as St,n as Ae,r as K,A as bt,a as Et,b as wt,c as Rt,d as Tt,e as vt}from"./context-telemetry-O3OwE5Zu.mjs";import{f as w,c as O}from"./wire-codec-Ctnni0h6.mjs";import{parseExportShardArgs as At,parseImportShardArgs as It}from"./exportShardRows-kt42wijd.mjs";import{recordAuthEvent as _t,readAuthMetrics as kt}from"./AUTH_METRICS_BUCKETS_TABLE-D0wNaez7.mjs";import{DATA_MIGRATION_STATE_TABLE as Mt,readMigrationStatus as Nt}from"./DATA_MIGRATION_STATE_TABLE-CaO6L0Ee.mjs";import{SCAN_DEP as Ie,createDependencyTracker as Ct,tableFromDepKey as Ot}from"./SCAN_DEP-D_yR9EeV.mjs";import{readFunctionMetricsTotals as Lt,readFunctionMetricIndexHits as xt,recordFunctionMetric as $t,mergeScanAttribution as Pt,readFunctionMetrics as qt,readFunctionMetricBuckets as Dt}from"./FUNCTION_METRICS_BUCKETS_TABLE-BPPeqM11.mjs";import{createFanoutCounters as _e,ADMIN_FUNCTION_PREFIX as k,RELATION_FUNCTION_PREFIX as Ut,selectMatchingIds as Bt,ADMIN_FUNCTIONS as h,findStorageReferences as Ft,listTables as Wt,summarizeSubscriptions as Kt,summarizeFanoutTopics as Ht,readTablePage as Qt,facetColumn as zt,FLAGS_FUNCTION_PREFIX as Gt,recordFanoutPass as se,MAX_PAGE_SIZE as jt}from"./ADMIN_FUNCTIONS-PxZ8Lr9e.mjs";import{LogBuffer as Jt}from"./LogBuffer-bIvCelI-.mjs";import{recordCapturedMail as ke,clearCapturedMail as Xt,readCapturedMail as Yt,MAIL_TABLE as Vt}from"./MAIL_RETENTION-KmozO2NQ.mjs";import{stableStringify as be}from"./stableStringify-BjLh4gvA.mjs";import{readBookmark as Zt,armRestore as es}from"./armRestore-BNzdvQ_o.mjs";import{ReactiveCache as ts,reactiveCacheKey as Me}from"./ReactiveCache-1_9Rs7J_.mjs";import{stableWireKey as $}from"./stableWireKey-YEHLaX6X.mjs";import{awaitWsDrain as M,trySendFrame as L,subscriptionListDeltas as ss,sendDeltaFrames as rs}from"./subscriptionListDeltas-Bs69JbA8.mjs";import{fingerprintError as as}from"@lunora/fingerprint";import{redact as ns,standardRules as is}from"@visulima/redact";import{R as Ne,E as os,_ as cs}from"./security-audit-BKUOgE0x.mjs";import{runReadonlySql as ds}from"./MAX_SQL_ROWS-Bdu25ASB.mjs";import{ConflictError as us}from"./ConflictError-C8GtJmjS.mjs";import{selectExpiredIds as ls}from"./selectExpiredIds-BGVP3d8-.mjs";import{p as hs,m as ps,T as fs,u as ms,b as re,_ as ys,o as gs,l as Ss,d as bs,S as Es}from"./ctx-db-idempotency-wiVoGnpQ.mjs";import{CDC_LOG_TABLE as Ce,readCdcChanges as ae,readCdcCursor as Oe,readCdcEpoch as Le,minCdcSeq as xe,bumpCdcEpoch as ws}from"./CDC_LOG_TABLE-E_J5LPoK.mjs";import{a as Rs,s as Ts}from"./ctx-db-shapes-DzX_H5q8.mjs";const $e=500,J=(a,e)=>{if(a.size<e)return;const t=a.keys().next().value;t!==void 0&&a.delete(t)},rt=new TextEncoder,vs=a=>{const e=a.replaceAll("-","+").replaceAll("_","/")+"===".slice((a.length+3)%4),t=atob(e),s=new Uint8Array(t.length);for(let r=0;r<t.length;r+=1)s[r]=t.codePointAt(r)??0;return s},As=64,ne=new Map,Is=async a=>{const e=ne.get(a);if(e)return e;J(ne,As);const t=crypto.subtle.importKey("raw",rt.encode(a),{hash:"SHA-256",name:"HMAC"},!1,["sign","verify"]);return ne.set(a,t),t},_s=async(a,e,t)=>{const s=await Is(a);return crypto.subtle.verify("HMAC",s,t,rt.encode(e))},ks="v1",Ms=async(a,e,t=Date.now())=>{if(a.length===0||e.length===0)return!1;const s=e.split(".");if(s.length!==3)return!1;const[r,n,i]=s;if(r!==ks||i.length===0)return!1;const o=Number(n);if(!Number.isFinite(o)||o<=t)return!1;let c;try{c=vs(i)}catch{return!1}return _s(a,`${r}.${n}`,c)},q="__lunora_audit__",X=(a,e,...t)=>a.exec.call(a,e,...t),Ee=a=>{X(a,`CREATE TABLE IF NOT EXISTS "${q}" (
1
+ import{LunoraError as f,toErrorBody as C}from"@lunora/errors";import{drizzle as yt}from"drizzle-orm/durable-sqlite";import{c as j}from"./constant-time-equal-BVG05Guz.mjs";import{j as y}from"./json-response-wrh9TBPw.mjs";import{O as gt,t as St,n as Ae,r as K,A as bt,a as Et,b as wt,c as Rt,d as Tt,e as vt}from"./context-telemetry-DBcDCBl1.mjs";import{f as w,c as O}from"./wire-codec-Ctnni0h6.mjs";import{parseExportShardArgs as At,parseImportShardArgs as It}from"./exportShardRows-kt42wijd.mjs";import{recordAuthEvent as _t,readAuthMetrics as kt}from"./AUTH_METRICS_BUCKETS_TABLE-D0wNaez7.mjs";import{DATA_MIGRATION_STATE_TABLE as Mt,readMigrationStatus as Nt}from"./DATA_MIGRATION_STATE_TABLE-CaO6L0Ee.mjs";import{SCAN_DEP as Ie,createDependencyTracker as Ct,tableFromDepKey as Ot}from"./SCAN_DEP-D_yR9EeV.mjs";import{readFunctionMetricsTotals as Lt,readFunctionMetricIndexHits as xt,recordFunctionMetric as $t,mergeScanAttribution as Pt,readFunctionMetrics as qt,readFunctionMetricBuckets as Dt}from"./FUNCTION_METRICS_BUCKETS_TABLE-BPPeqM11.mjs";import{createFanoutCounters as _e,ADMIN_FUNCTION_PREFIX as k,RELATION_FUNCTION_PREFIX as Ut,selectMatchingIds as Bt,ADMIN_FUNCTIONS as h,findStorageReferences as Ft,listTables as Wt,summarizeSubscriptions as Kt,summarizeFanoutTopics as Ht,readTablePage as Qt,facetColumn as zt,FLAGS_FUNCTION_PREFIX as Gt,recordFanoutPass as se,MAX_PAGE_SIZE as jt}from"./ADMIN_FUNCTIONS-PxZ8Lr9e.mjs";import{LogBuffer as Jt}from"./LogBuffer-bIvCelI-.mjs";import{recordCapturedMail as ke,clearCapturedMail as Xt,readCapturedMail as Yt,MAIL_TABLE as Vt}from"./MAIL_RETENTION-KmozO2NQ.mjs";import{stableStringify as be}from"./stableStringify-BjLh4gvA.mjs";import{readBookmark as Zt,armRestore as es}from"./armRestore-BNzdvQ_o.mjs";import{ReactiveCache as ts,reactiveCacheKey as Me}from"./ReactiveCache-1_9Rs7J_.mjs";import{stableWireKey as $}from"./stableWireKey-YEHLaX6X.mjs";import{awaitWsDrain as M,trySendFrame as L,subscriptionListDeltas as ss,sendDeltaFrames as rs}from"./subscriptionListDeltas-Bs69JbA8.mjs";import{fingerprintError as as}from"@lunora/fingerprint";import{redact as ns,standardRules as is}from"@visulima/redact";import{R as Ne,E as os,_ as cs}from"./security-audit-BKUOgE0x.mjs";import{runReadonlySql as ds}from"./MAX_SQL_ROWS-Bdu25ASB.mjs";import{ConflictError as us}from"./ConflictError-C8GtJmjS.mjs";import{selectExpiredIds as ls}from"./selectExpiredIds-BGVP3d8-.mjs";import{p as hs,m as ps,T as fs,u as ms,b as re,_ as ys,o as gs,l as Ss,d as bs,S as Es}from"./ctx-db-idempotency-wiVoGnpQ.mjs";import{CDC_LOG_TABLE as Ce,readCdcChanges as ae,readCdcCursor as Oe,readCdcEpoch as Le,minCdcSeq as xe,bumpCdcEpoch as ws}from"./CDC_LOG_TABLE-E_J5LPoK.mjs";import{a as Rs,s as Ts}from"./ctx-db-shapes-DzX_H5q8.mjs";const $e=500,J=(a,e)=>{if(a.size<e)return;const t=a.keys().next().value;t!==void 0&&a.delete(t)},rt=new TextEncoder,vs=a=>{const e=a.replaceAll("-","+").replaceAll("_","/")+"===".slice((a.length+3)%4),t=atob(e),s=new Uint8Array(t.length);for(let r=0;r<t.length;r+=1)s[r]=t.codePointAt(r)??0;return s},As=64,ne=new Map,Is=async a=>{const e=ne.get(a);if(e)return e;J(ne,As);const t=crypto.subtle.importKey("raw",rt.encode(a),{hash:"SHA-256",name:"HMAC"},!1,["sign","verify"]);return ne.set(a,t),t},_s=async(a,e,t)=>{const s=await Is(a);return crypto.subtle.verify("HMAC",s,t,rt.encode(e))},ks="v1",Ms=async(a,e,t=Date.now())=>{if(a.length===0||e.length===0)return!1;const s=e.split(".");if(s.length!==3)return!1;const[r,n,i]=s;if(r!==ks||i.length===0)return!1;const o=Number(n);if(!Number.isFinite(o)||o<=t)return!1;let c;try{c=vs(i)}catch{return!1}return _s(a,`${r}.${n}`,c)},q="__lunora_audit__",X=(a,e,...t)=>a.exec.call(a,e,...t),Ee=a=>{X(a,`CREATE TABLE IF NOT EXISTS "${q}" (
2
2
  seq INTEGER PRIMARY KEY AUTOINCREMENT,
3
3
  ts REAL NOT NULL,
4
4
  op TEXT NOT NULL,
@@ -0,0 +1 @@
1
+ import{isLunoraError as x}from"@lunora/errors";const L=t=>{if(typeof t=="string")return t;try{return JSON.stringify(t)??String(t)}catch{return String(t)}},E=t=>typeof t=="boolean"||typeof t=="number"||typeof t=="string"?t:L(t),g=(t,e)=>{if(t===void 0&&e===void 0)return;const n={};if(e!==void 0)for(const[r,a]of Object.entries(e))n[r]=E(a);if(t!==void 0)for(const[r,a]of Object.entries(t))n[r]=E(a);return Object.keys(n).length===0?void 0:n},w=t=>{const e=new Uint8Array(t);crypto.getRandomValues(e);let n="";for(const r of e)n+=r.toString(16).padStart(2,"0");return n},S=/^[0-9a-f]+$/,M=(t,e,n=!0)=>`00-${t}-${e}-${n?"01":"00"}`,C=t=>{if(t==null)return;const e=t.trim().toLowerCase().split("-"),[n,r,a,s]=e;if(!(e.length<4||n===void 0||n.length!==2||!S.test(n)||n==="ff"||n==="00"&&e.length!==4||r===void 0||a===void 0||s===void 0||s.length!==2||!S.test(s)||r.length!==32||a.length!==16||!S.test(r)||!S.test(a)||r==="00000000000000000000000000000000"||a==="0000000000000000"))return{parentSpanId:a,sampled:(Number.parseInt(s,16)&1)===1,traceId:r}},J=t=>{const e=C(t);return{rootSpanId:e?.parentSpanId??w(8),sampled:e?.sampled??!0,traceId:e?.traceId??w(16)}},A=t=>x(t)?t.code:t instanceof Error?t.constructor.name:"Error",D=t=>{const e=Object.keys(t);return e.length>0&&e.every(n=>n==="attributes"||n==="kind"||n==="links")},R=128,_=128,F=t=>{try{const e=new URL(t);return`${e.protocol}//${e.host}${e.pathname}`}catch{return t}},U=t=>{try{return new URL(t).host}catch{return t}},N=(t,e)=>{try{return t(new URL(e))}catch{return!1}},V=t=>t===void 0?{}:D(t)?t:{attributes:t},q=(t,e)=>{if(t.isTraced){t.setAttribute("lunora.function_path",e.functionPath),t.setAttribute("lunora.ok",e.ok),t.setAttribute("lunora.duration_ms",e.durationMs),e.shardKey!==void 0&&t.setAttribute("lunora.shard_key",e.shardKey),e.userId!==void 0&&t.setAttribute("lunora.user_id",e.userId),e.error!==void 0&&(t.setAttribute("lunora.error.type",e.error.type),t.setAttribute("lunora.error.message",e.error.message));for(const[n,r]of Object.entries(e.attributes))(typeof r=="boolean"||typeof r=="number"||typeof r=="string")&&t.setAttribute(`lunora.attr.${n}`,r)}},H=t=>{const e={attributes:{},events:[],links:[]},n={spanContext:()=>t,addEvent:(r,a)=>{if(e.events.length>=R)return;const s=g(a);e.events.push({...s===void 0?{}:{attributes:s},name:r,ts:Date.now()})},addLink:r=>{if(e.links.length>=_)return;const a=g(r.attributes);e.links.push({...a===void 0?{}:{attributes:a},spanId:r.spanId,traceId:r.traceId})},recordException:r=>{n.addEvent("exception",{"exception.message":r instanceof Error?r.message:String(r),...r instanceof Error&&typeof r.stack=="string"?{"exception.stacktrace":r.stack}:{},"exception.type":A(r)})},setAttribute:(r,a)=>{Object.assign(e.attributes,g({[r]:a}))},setAttributes:r=>{Object.assign(e.attributes,g(r))}};return{collected:e,handle:n}},B=t=>{const{anchor:e,fuseCloudflareSpans:n,functionPath:r,record:a,resolveCloudflareTracing:s,shardKey:i,userId:c}=t,p=d=>async(b,I,u)=>{const l=w(8),f=Date.now(),o=V(u),K=g(o.attributes),{collected:m,handle:j}=H({spanId:l,traceId:e.traceId}),$=async y=>{let v=!0,k;try{return await I(p(l),j)}catch(h){throw v=!1,k={message:h instanceof Error?h.message:String(h),type:A(h)},h}finally{const h=Date.now()-f,O=c(),T={...K,...m.attributes},P=[...o.links??[],...m.links];try{a({...Object.keys(T).length===0?{}:{attributes:T},durationMs:h,...m.events.length===0?{}:{events:m.events},...k===void 0?{}:{error:k},functionPath:r,...o.kind===void 0||o.kind==="internal"?{}:{kind:o.kind},...P.length===0?{}:{links:P},name:b,ok:v,parentSpanId:d,shardKey:i,spanId:l,startTs:f,traceId:e.traceId,userId:O})}catch{}if(y!==void 0)try{q(y,{attributes:T,durationMs:h,error:k,functionPath:r,ok:v,shardKey:i,userId:O})}catch{}}};if(n===!0&&s!==void 0){const y=await s();if(y!==void 0&&typeof y.enterSpan=="function")return await y.enterSpan(b,v=>$(v))}return await $()};return p(e.rootSpanId)},G=(t,e)=>{const{anchor:n,functionPath:r,propagate:a=!0,record:s,shardKey:i,userId:c}=t;return async(p,d)=>{const b=w(8),I=Date.now(),u=new Request(p,d);(typeof a=="function"?N(a,u.url):a)&&u.headers.set("traceparent",M(n.traceId,b,n.sampled??!0));let l,f;try{const o=await e(u);return f=o.status,o.ok||(l={message:`HTTP ${String(o.status)}`,type:`HTTP_${String(o.status)}`}),o}catch(o){throw l={message:o instanceof Error?o.message:String(o),type:A(o)},o}finally{try{s({attributes:{"http.request.method":u.method,...f===void 0?{}:{"http.response.status_code":f},"url.full":F(u.url)},durationMs:Date.now()-I,...l===void 0?{}:{error:l},functionPath:r,kind:"client",name:`${u.method} ${U(u.url)}`,ok:l===void 0,parentSpanId:n.rootSpanId,shardKey:i,spanId:b,startTs:I,traceId:n.traceId,userId:c()})}catch{}}}},Q=t=>{const{functionPath:e,record:n,shardKey:r}=t,a=(s,i,c,p)=>{if(!Number.isFinite(c))return;const d=g(p);try{n({...d===void 0?{}:{attributes:d},functionPath:e,kind:s,name:i,shardKey:r,ts:Date.now(),value:c})}catch{}};return{count:(s,i=1,c)=>{a("counter",s,i,c)},gauge:(s,i,c)=>{a("gauge",s,i,c)},record:(s,i,c)=>{a("histogram",s,i,c)}}},W=t=>{const{anchor:e,collected:n,durationMs:r,failure:a,functionPath:s,shardKey:i,startTs:c,userId:p}=t,d=n?.attributes??{};return{...Object.keys(d).length===0?{}:{attributes:d},dispatch:!0,durationMs:r,...n===void 0||n.events.length===0?{}:{events:n.events},...a===void 0?{}:{error:{message:a.thrown instanceof Error?a.thrown.message:String(a.thrown),type:A(a.thrown)}},functionPath:s,...n===void 0||n.links.length===0?{}:{links:n.links},name:s,ok:a===void 0,parentSpanId:"",shardKey:i,spanId:e.rootSpanId,startTs:c,traceId:e.traceId,userId:p}};export{C as A,w as O,B as a,G as b,Q as c,W as d,H as e,q as f,g as n,J as r,A as t};
@@ -1 +1 @@
1
- import{f as r,c as t,e as c,b as s,a as o,d as p}from"./context-telemetry-O3OwE5Zu.mjs";export{r as applyCloudflareSpanAttributes,t as createMetrics,c as createSpanCollector,s as createTracedFetch,o as createTracer,p as dispatchRootSpan};
1
+ import{f as r,c as t,e as c,b as s,a as o,d as p}from"./context-telemetry-DBcDCBl1.mjs";export{r as applyCloudflareSpanAttributes,t as createMetrics,c as createSpanCollector,s as createTracedFetch,o as createTracer,p as dispatchRootSpan};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lunora/do",
3
- "version": "1.0.0-alpha.46",
3
+ "version": "1.0.0-alpha.47",
4
4
  "description": "Lunora Durable Objects: ShardDO (SQLite, OCC, hibernated WebSocket subscriptions) and SessionDO",
5
5
  "keywords": [
6
6
  "cloudflare",
@@ -1 +0,0 @@
1
- import{isLunoraError as x}from"@lunora/errors";const L=t=>{if(typeof t=="string")return t;try{return JSON.stringify(t)??String(t)}catch{return String(t)}},E=t=>typeof t=="boolean"||typeof t=="number"||typeof t=="string"?t:L(t),g=(t,e)=>{if(t===void 0&&e===void 0)return;const n={};if(e!==void 0)for(const[r,a]of Object.entries(e))n[r]=E(a);if(t!==void 0)for(const[r,a]of Object.entries(t))n[r]=E(a);return Object.keys(n).length===0?void 0:n},w=t=>{const e=new Uint8Array(t);crypto.getRandomValues(e);let n="";for(const r of e)n+=r.toString(16).padStart(2,"0");return n},S=/^[0-9a-f]+$/,M=(t,e,n=!0)=>`00-${t}-${e}-${n?"01":"00"}`,C=t=>{if(t==null)return;const e=t.trim().toLowerCase().split("-"),[n,r,a,s]=e;if(!(e.length<4||n===void 0||n.length!==2||!S.test(n)||n==="ff"||n==="00"&&e.length!==4||r===void 0||a===void 0||s===void 0||s.length!==2||!S.test(s)||r.length!==32||a.length!==16||!S.test(r)||!S.test(a)||r==="00000000000000000000000000000000"||a==="0000000000000000"))return{parentSpanId:a,sampled:(Number.parseInt(s,16)&1)===1,traceId:r}},J=t=>{const e=C(t);return{rootSpanId:e?.parentSpanId??w(8),traceId:e?.traceId??w(16)}},A=t=>x(t)?t.code:t instanceof Error?t.constructor.name:"Error",D=t=>{const e=Object.keys(t);return e.length>0&&e.every(n=>n==="attributes"||n==="kind"||n==="links")},R=128,_=128,F=t=>{try{const e=new URL(t);return`${e.protocol}//${e.host}${e.pathname}`}catch{return t}},U=t=>{try{return new URL(t).host}catch{return t}},N=(t,e)=>{try{return t(new URL(e))}catch{return!1}},V=t=>t===void 0?{}:D(t)?t:{attributes:t},q=(t,e)=>{if(t.isTraced){t.setAttribute("lunora.function_path",e.functionPath),t.setAttribute("lunora.ok",e.ok),t.setAttribute("lunora.duration_ms",e.durationMs),e.shardKey!==void 0&&t.setAttribute("lunora.shard_key",e.shardKey),e.userId!==void 0&&t.setAttribute("lunora.user_id",e.userId),e.error!==void 0&&(t.setAttribute("lunora.error.type",e.error.type),t.setAttribute("lunora.error.message",e.error.message));for(const[n,r]of Object.entries(e.attributes))(typeof r=="boolean"||typeof r=="number"||typeof r=="string")&&t.setAttribute(`lunora.attr.${n}`,r)}},H=t=>{const e={attributes:{},events:[],links:[]},n={spanContext:()=>t,addEvent:(r,a)=>{if(e.events.length>=R)return;const s=g(a);e.events.push({...s===void 0?{}:{attributes:s},name:r,ts:Date.now()})},addLink:r=>{if(e.links.length>=_)return;const a=g(r.attributes);e.links.push({...a===void 0?{}:{attributes:a},spanId:r.spanId,traceId:r.traceId})},recordException:r=>{n.addEvent("exception",{"exception.message":r instanceof Error?r.message:String(r),...r instanceof Error&&typeof r.stack=="string"?{"exception.stacktrace":r.stack}:{},"exception.type":A(r)})},setAttribute:(r,a)=>{Object.assign(e.attributes,g({[r]:a}))},setAttributes:r=>{Object.assign(e.attributes,g(r))}};return{collected:e,handle:n}},B=t=>{const{anchor:e,fuseCloudflareSpans:n,functionPath:r,record:a,resolveCloudflareTracing:s,shardKey:i,userId:c}=t,h=u=>async(b,I,d)=>{const l=w(8),f=Date.now(),o=V(d),K=g(o.attributes),{collected:m,handle:j}=H({spanId:l,traceId:e.traceId}),$=async y=>{let v=!0,k;try{return await I(h(l),j)}catch(p){throw v=!1,k={message:p instanceof Error?p.message:String(p),type:A(p)},p}finally{const p=Date.now()-f,O=c(),T={...K,...m.attributes},P=[...o.links??[],...m.links];try{a({...Object.keys(T).length===0?{}:{attributes:T},durationMs:p,...m.events.length===0?{}:{events:m.events},...k===void 0?{}:{error:k},functionPath:r,...o.kind===void 0||o.kind==="internal"?{}:{kind:o.kind},...P.length===0?{}:{links:P},name:b,ok:v,parentSpanId:u,shardKey:i,spanId:l,startTs:f,traceId:e.traceId,userId:O})}catch{}if(y!==void 0)try{q(y,{attributes:T,durationMs:p,error:k,functionPath:r,ok:v,shardKey:i,userId:O})}catch{}}};if(n===!0&&s!==void 0){const y=await s();if(y!==void 0&&typeof y.enterSpan=="function")return await y.enterSpan(b,v=>$(v))}return await $()};return h(e.rootSpanId)},G=(t,e)=>{const{anchor:n,functionPath:r,propagate:a=!0,record:s,shardKey:i,userId:c}=t;return async(h,u)=>{const b=w(8),I=Date.now(),d=new Request(h,u);(typeof a=="function"?N(a,d.url):a)&&d.headers.set("traceparent",M(n.traceId,b,!0));let l,f;try{const o=await e(d);return f=o.status,o.ok||(l={message:`HTTP ${String(o.status)}`,type:`HTTP_${String(o.status)}`}),o}catch(o){throw l={message:o instanceof Error?o.message:String(o),type:A(o)},o}finally{try{s({attributes:{"http.request.method":d.method,...f===void 0?{}:{"http.response.status_code":f},"url.full":F(d.url)},durationMs:Date.now()-I,...l===void 0?{}:{error:l},functionPath:r,kind:"client",name:`${d.method} ${U(d.url)}`,ok:l===void 0,parentSpanId:n.rootSpanId,shardKey:i,spanId:b,startTs:I,traceId:n.traceId,userId:c()})}catch{}}}},Q=t=>{const{functionPath:e,record:n,shardKey:r}=t,a=(s,i,c,h)=>{if(!Number.isFinite(c))return;const u=g(h);try{n({...u===void 0?{}:{attributes:u},functionPath:e,kind:s,name:i,shardKey:r,ts:Date.now(),value:c})}catch{}};return{count:(s,i=1,c)=>{a("counter",s,i,c)},gauge:(s,i,c)=>{a("gauge",s,i,c)},record:(s,i,c)=>{a("histogram",s,i,c)}}},W=t=>{const{anchor:e,collected:n,durationMs:r,failure:a,functionPath:s,shardKey:i,startTs:c,userId:h}=t,u=n?.attributes??{};return{...Object.keys(u).length===0?{}:{attributes:u},dispatch:!0,durationMs:r,...n===void 0||n.events.length===0?{}:{events:n.events},...a===void 0?{}:{error:{message:a.thrown instanceof Error?a.thrown.message:String(a.thrown),type:A(a.thrown)}},functionPath:s,...n===void 0||n.links.length===0?{}:{links:n.links},name:s,ok:a===void 0,parentSpanId:"",shardKey:i,spanId:e.rootSpanId,startTs:c,traceId:e.traceId,userId:h}};export{C as A,w as O,B as a,G as b,Q as c,W as d,H as e,q as f,g as n,J as r,A as t};