litedbmodel 2.0.2 → 2.2.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.
Files changed (193) hide show
  1. package/README.md +7 -0
  2. package/dist/DBConditions.d.ts.map +1 -1
  3. package/dist/DBConditions.js +16 -1
  4. package/dist/DBConditions.js.map +1 -1
  5. package/dist/DBHandler.d.ts.map +1 -1
  6. package/dist/DBHandler.js +6 -0
  7. package/dist/DBHandler.js.map +1 -1
  8. package/dist/DBModel.d.ts +84 -2
  9. package/dist/DBModel.d.ts.map +1 -1
  10. package/dist/DBModel.js +312 -29
  11. package/dist/DBModel.js.map +1 -1
  12. package/dist/decorators.d.ts +52 -0
  13. package/dist/decorators.d.ts.map +1 -1
  14. package/dist/decorators.js +127 -24
  15. package/dist/decorators.js.map +1 -1
  16. package/dist/drivers/mysql.d.ts.map +1 -1
  17. package/dist/drivers/mysql.js +12 -2
  18. package/dist/drivers/mysql.js.map +1 -1
  19. package/dist/drivers/postgres.d.ts.map +1 -1
  20. package/dist/drivers/postgres.js +13 -2
  21. package/dist/drivers/postgres.js.map +1 -1
  22. package/dist/drivers/sqlite.d.ts +2 -0
  23. package/dist/drivers/sqlite.d.ts.map +1 -1
  24. package/dist/drivers/sqlite.js +49 -4
  25. package/dist/drivers/sqlite.js.map +1 -1
  26. package/dist/index.cjs +10741 -0
  27. package/dist/index.d.cts +1 -0
  28. package/dist/scp/coltype.d.ts +108 -0
  29. package/dist/scp/coltype.d.ts.map +1 -1
  30. package/dist/scp/coltype.js +293 -6
  31. package/dist/scp/coltype.js.map +1 -1
  32. package/dist/scp/connection-routing.d.ts +312 -0
  33. package/dist/scp/connection-routing.d.ts.map +1 -0
  34. package/dist/scp/connection-routing.js +394 -0
  35. package/dist/scp/connection-routing.js.map +1 -0
  36. package/dist/scp/dbmodel-runtime.d.ts +101 -0
  37. package/dist/scp/dbmodel-runtime.d.ts.map +1 -0
  38. package/dist/scp/dbmodel-runtime.js +174 -0
  39. package/dist/scp/dbmodel-runtime.js.map +1 -0
  40. package/dist/scp/decorator-adapter.d.ts +196 -0
  41. package/dist/scp/decorator-adapter.d.ts.map +1 -0
  42. package/dist/scp/decorator-adapter.js +286 -0
  43. package/dist/scp/decorator-adapter.js.map +1 -0
  44. package/dist/scp/emit/emitter.d.ts +108 -0
  45. package/dist/scp/emit/emitter.d.ts.map +1 -0
  46. package/dist/scp/emit/emitter.js +782 -0
  47. package/dist/scp/emit/emitter.js.map +1 -0
  48. package/dist/scp/emit/endpoint.d.ts +248 -0
  49. package/dist/scp/emit/endpoint.d.ts.map +1 -0
  50. package/dist/scp/emit/endpoint.js +20 -0
  51. package/dist/scp/emit/endpoint.js.map +1 -0
  52. package/dist/scp/emit/index.d.ts +11 -0
  53. package/dist/scp/emit/index.d.ts.map +1 -0
  54. package/dist/scp/emit/index.js +13 -0
  55. package/dist/scp/emit/index.js.map +1 -0
  56. package/dist/scp/errors.d.ts +45 -1
  57. package/dist/scp/errors.d.ts.map +1 -1
  58. package/dist/scp/errors.js +47 -1
  59. package/dist/scp/errors.js.map +1 -1
  60. package/dist/scp/exec-context.d.ts +390 -0
  61. package/dist/scp/exec-context.d.ts.map +1 -0
  62. package/dist/scp/exec-context.js +540 -0
  63. package/dist/scp/exec-context.js.map +1 -0
  64. package/dist/scp/grouping.d.ts +32 -0
  65. package/dist/scp/grouping.d.ts.map +1 -0
  66. package/dist/scp/grouping.js +0 -0
  67. package/dist/scp/grouping.js.map +1 -0
  68. package/dist/scp/index.cjs +6432 -17579
  69. package/dist/scp/index.d.cts +1 -0
  70. package/dist/scp/index.d.mts +1 -0
  71. package/dist/scp/index.d.ts +51 -52
  72. package/dist/scp/index.d.ts.map +1 -1
  73. package/dist/scp/index.js +189 -152
  74. package/dist/scp/index.js.map +1 -1
  75. package/dist/scp/index.mjs +6067 -3659
  76. package/dist/scp/leaf-transport.d.ts +50 -0
  77. package/dist/scp/leaf-transport.d.ts.map +1 -0
  78. package/dist/scp/leaf-transport.js +92 -0
  79. package/dist/scp/leaf-transport.js.map +1 -0
  80. package/dist/scp/leaves.d.ts +174 -0
  81. package/dist/scp/leaves.d.ts.map +1 -0
  82. package/dist/scp/leaves.js +287 -0
  83. package/dist/scp/leaves.js.map +1 -0
  84. package/dist/scp/limit-config.d.ts +118 -0
  85. package/dist/scp/limit-config.d.ts.map +1 -0
  86. package/dist/scp/limit-config.js +126 -0
  87. package/dist/scp/limit-config.js.map +1 -0
  88. package/dist/scp/makesql/compile-relation.d.ts +49 -23
  89. package/dist/scp/makesql/compile-relation.d.ts.map +1 -1
  90. package/dist/scp/makesql/compile-relation.js +101 -76
  91. package/dist/scp/makesql/compile-relation.js.map +1 -1
  92. package/dist/scp/makesql/compile-select.d.ts +45 -10
  93. package/dist/scp/makesql/compile-select.d.ts.map +1 -1
  94. package/dist/scp/makesql/compile-select.js +50 -10
  95. package/dist/scp/makesql/compile-select.js.map +1 -1
  96. package/dist/scp/makesql/handler.d.ts +1 -1
  97. package/dist/scp/makesql/handler.d.ts.map +1 -1
  98. package/dist/scp/makesql/index.d.ts +7 -10
  99. package/dist/scp/makesql/index.d.ts.map +1 -1
  100. package/dist/scp/makesql/index.js +19 -30
  101. package/dist/scp/makesql/index.js.map +1 -1
  102. package/dist/scp/makesql/json-array.d.ts +65 -0
  103. package/dist/scp/makesql/json-array.d.ts.map +1 -1
  104. package/dist/scp/makesql/json-array.js +99 -10
  105. package/dist/scp/makesql/json-array.js.map +1 -1
  106. package/dist/scp/makesql/json-batch.d.ts.map +1 -1
  107. package/dist/scp/makesql/json-batch.js +21 -19
  108. package/dist/scp/makesql/json-batch.js.map +1 -1
  109. package/dist/scp/makesql/makesql.d.ts +1 -1
  110. package/dist/scp/makesql/makesql.d.ts.map +1 -1
  111. package/dist/scp/makesql/mysql-returning.d.ts +93 -0
  112. package/dist/scp/makesql/mysql-returning.d.ts.map +1 -0
  113. package/dist/scp/makesql/mysql-returning.js +215 -0
  114. package/dist/scp/makesql/mysql-returning.js.map +1 -0
  115. package/dist/scp/makesql/outtype.d.ts +75 -34
  116. package/dist/scp/makesql/outtype.d.ts.map +1 -1
  117. package/dist/scp/makesql/outtype.js +91 -118
  118. package/dist/scp/makesql/outtype.js.map +1 -1
  119. package/dist/scp/makesql/pool-executor.d.ts +135 -13
  120. package/dist/scp/makesql/pool-executor.d.ts.map +1 -1
  121. package/dist/scp/makesql/pool-executor.js +229 -21
  122. package/dist/scp/makesql/pool-executor.js.map +1 -1
  123. package/dist/scp/makesql/tx.d.ts +107 -22
  124. package/dist/scp/makesql/tx.d.ts.map +1 -1
  125. package/dist/scp/makesql/tx.js +451 -97
  126. package/dist/scp/makesql/tx.js.map +1 -1
  127. package/dist/scp/makesql/writeouttype.d.ts +7 -8
  128. package/dist/scp/makesql/writeouttype.d.ts.map +1 -1
  129. package/dist/scp/makesql/writeouttype.js +8 -7
  130. package/dist/scp/makesql/writeouttype.js.map +1 -1
  131. package/dist/scp/middleware.d.ts +287 -0
  132. package/dist/scp/middleware.d.ts.map +1 -0
  133. package/dist/scp/middleware.js +358 -0
  134. package/dist/scp/middleware.js.map +1 -0
  135. package/dist/scp/relation.d.ts +80 -9
  136. package/dist/scp/relation.d.ts.map +1 -1
  137. package/dist/scp/relation.js +198 -78
  138. package/dist/scp/relation.js.map +1 -1
  139. package/dist/scp/tx-options.d.ts +136 -0
  140. package/dist/scp/tx-options.d.ts.map +1 -0
  141. package/dist/scp/tx-options.js +184 -0
  142. package/dist/scp/tx-options.js.map +1 -0
  143. package/dist/scp/write-bundle.d.ts +131 -0
  144. package/dist/scp/write-bundle.d.ts.map +1 -0
  145. package/dist/scp/write-bundle.js +160 -0
  146. package/dist/scp/write-bundle.js.map +1 -0
  147. package/dist/types.d.ts +7 -0
  148. package/dist/types.d.ts.map +1 -1
  149. package/dist/types.js.map +1 -1
  150. package/docs/BENCHMARK.md +58 -56
  151. package/docs/benchmark-chart.svg +166 -166
  152. package/docs/design/phase-a-execution-context.md +139 -0
  153. package/package.json +16 -9
  154. package/dist/scp/authoring-sql.d.ts +0 -134
  155. package/dist/scp/authoring-sql.d.ts.map +0 -1
  156. package/dist/scp/authoring-sql.js +0 -191
  157. package/dist/scp/authoring-sql.js.map +0 -1
  158. package/dist/scp/authoring.d.ts +0 -155
  159. package/dist/scp/authoring.d.ts.map +0 -1
  160. package/dist/scp/authoring.js +0 -162
  161. package/dist/scp/authoring.js.map +0 -1
  162. package/dist/scp/catalog.d.ts +0 -94
  163. package/dist/scp/catalog.d.ts.map +0 -1
  164. package/dist/scp/catalog.js +0 -234
  165. package/dist/scp/catalog.js.map +0 -1
  166. package/dist/scp/codegen.d.ts +0 -189
  167. package/dist/scp/codegen.d.ts.map +0 -1
  168. package/dist/scp/codegen.js +0 -421
  169. package/dist/scp/codegen.js.map +0 -1
  170. package/dist/scp/find-filter-guard.d.ts +0 -68
  171. package/dist/scp/find-filter-guard.d.ts.map +0 -1
  172. package/dist/scp/find-filter-guard.js +0 -88
  173. package/dist/scp/find-filter-guard.js.map +0 -1
  174. package/dist/scp/guard.d.ts +0 -43
  175. package/dist/scp/guard.d.ts.map +0 -1
  176. package/dist/scp/guard.js +0 -134
  177. package/dist/scp/guard.js.map +0 -1
  178. package/dist/scp/makesql/authoring-compile.d.ts +0 -90
  179. package/dist/scp/makesql/authoring-compile.d.ts.map +0 -1
  180. package/dist/scp/makesql/authoring-compile.js +0 -494
  181. package/dist/scp/makesql/authoring-compile.js.map +0 -1
  182. package/dist/scp/makesql/ir.d.ts +0 -42
  183. package/dist/scp/makesql/ir.d.ts.map +0 -1
  184. package/dist/scp/makesql/ir.js +0 -66
  185. package/dist/scp/makesql/ir.js.map +0 -1
  186. package/dist/scp/makesql/static-bundle.d.ts +0 -187
  187. package/dist/scp/makesql/static-bundle.d.ts.map +0 -1
  188. package/dist/scp/makesql/static-bundle.js +0 -1113
  189. package/dist/scp/makesql/static-bundle.js.map +0 -1
  190. package/dist/scp/runtime.d.ts +0 -242
  191. package/dist/scp/runtime.d.ts.map +0 -1
  192. package/dist/scp/runtime.js +0 -400
  193. package/dist/scp/runtime.js.map +0 -1
package/dist/scp/index.js CHANGED
@@ -1,36 +1,31 @@
1
1
  "use strict";
2
2
  /**
3
- * litedbmodel v2 SCP — public surface (WS1, #21).
3
+ * litedbmodel v2 SCP — public surface.
4
4
  *
5
- * The SQL-backend consumer layer over behavior-contracts (spec §1).
5
+ * The SQL-backend consumer layer over behavior-contracts (spec §1). litedbmodel supplies exactly four
6
+ * things and nothing else:
6
7
  *
7
- * ## CANONICAL bc integration (epic #43 / design #45): the `makeSQL` catalog leaf.
8
+ * 1. **The leaf transport declaration** — `Db` (`@leaf static executeSQL / pluck / group`), the ONE
9
+ * `@leaf` catalog every authored / emitted model imports (`./leaf-transport`). `bc generate --from`
10
+ * reads it; there is no second declaration anywhere in the repo.
11
+ * 2. **The leaf transport implementation** — `leafHandlers` / `leafHandlersAsync` (`./leaves`), the
12
+ * handler map a bc-generated TS module's `bind(handlers)` / `bindAsync(handlers)` consumes. This is
13
+ * the whole TS runtime seam: `bind(leafHandlers({ exec, dialect }))`.
14
+ * 3. **The tuned SQL** — the `./makesql` subtree (dialect SELECT / INSERT / UPDATE / DELETE / relation
15
+ * / batch builders, byte-true to the v1 builders) and the write bundles + gate-first transaction
16
+ * plans built on it.
17
+ * 4. **The language runtime** — the execution context (connection routing, middleware, transactions),
18
+ * the relation grouping core, the column-type de-box SoT, and the typed-object read surface.
8
19
  *
9
- * The LOCKED minimal model is ONE behavior-contracts catalog component
10
- * **`makeSQL(sql, params, skip?)`** (like graphddb's `GetItem`/`Query`) + its handler
11
- * (bind params → execute SQL) + the compile that emits tuned dialect SQL text (reusing
12
- * the original tuned builders — byte-for-byte). A query is a COMPOSITION of `makeSQL`
13
- * components; a subquery is a NESTED `makeSQL` in a param slot. `= ANY`, `CROSS JOIN
14
- * LATERAL`, `UNNEST`, cast, batch shapes are all TEXT inside `sql` — never modeled.
15
- * bc supplies composition / value-eval / envelope / plan. The whole `./makesql`
16
- * subtree (re-exported below) is the recommended integration surface.
17
- *
18
- * ## Superseded (legacy) reduced path.
19
- *
20
- * The earlier abstract path (`ir.ts` FragmentTree + `WHERE_SLOT`, `relation.ts`
21
- * `RelationOp`, `compile-sqlite.ts` reduced SELECT/INSERT/UPDATE forms, `render.ts`,
22
- * `dialect.ts` strategy table) reduced the tuned SQL to a closed expression/relation-op
23
- * vocabulary and regressed the byte-parity the library is built on (see
24
- * `docs/proposal/v2-sql-parity-checklist.md`). It is SUPERSEDED by `./makesql`: SQL
25
- * structure now lives as text inside `makeSQL`, not as IR "kinds". The legacy modules
26
- * remain exported (below) only for the historical WS test-suite; new code must use
27
- * `./makesql`.
20
+ * WIRING IS AUTOMATIC. A behavior is declared in TypeScript, bc compiles it, and the only per-language
21
+ * hand-wiring is the harness calling the generated module's method with the handler map above. There is
22
+ * no runtime IR, no programmatic compile, and no runtime behavior dispatch in this package.
28
23
  */
29
24
  Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.WRITE_CATALOG_NAMES = exports.CATALOG_NAMES = exports.catalogEntry = exports.LITEDBMODEL_CATALOG = exports.mysqlPoolExecutor = exports.pgPoolExecutor = exports.renderReadPrimary = exports.executeReadGraphAsync = exports.executeReadGraph = exports.compileReadGraph = exports.executeReadBehavior = exports.executeStaticWrite = exports.executeStaticBundle = exports.compileSelectNode = exports.compileStaticBundle = exports.compileRelationMap = exports.compileAuthoredNode = exports.compileAuthoredBehavior = exports.makeSqlInput = exports.makeSqlComponentIR = exports.compileCompositeKeyLimited = exports.compileCompositeKeyStaticUnlimited = exports.compileCompositeKeyUnlimited = exports.compileSingleKeyLimited = exports.compileSingleKeyUnlimited = exports.PG_ARRAY_CAST_TOKEN = exports.resolvePgArrayCast = exports.inferPgArrayType = exports.compileDeleteMakeSQL = exports.compileUpdateSingle = exports.compileUpdateMany = exports.compileInsertMakeSQL = exports.builderFor = exports.compileSelectMakeSQL = exports.noCastFormatter = exports.pgCastFormatter = exports.formatterFor = exports.andTrailing = exports.whereClause = exports.compileWhere = exports.makeSqlHandlerSync = exports.makeSqlHandler = exports.renderPorts = exports.renderPlaceholders = exports.composeMakeSQL = exports.assembleMakeSQL = exports.isMakeSQL = exports.LITEDBMODEL_MAKESQL_CATALOG = exports.makeSqlCatalogEntry = exports.MAKESQL = void 0;
31
- exports.lifecycleFor = exports.edgeWrites = exports.entityWrites = exports.executeBehaviorAsync = exports.executeBundleAsync = exports.readBundle = exports.read = exports.executeBundle = exports.compileBundle = exports.executeBehavior = exports.schemaColumnTypeResolver = exports.parseSchemaColumnTypes = exports.sqlTypeToBcScalar = exports.FindFilterLeakError = exports.findFilterKeys = exports.assertFindFilterFolded = exports.SqlFailure = exports.mapSqliteError = exports.whereExists = exports.whereInSubquery = exports.whereTupleIn = exports.whereImmediate = exports.whereDynamic = exports.whereCast = exports.whereILike = exports.whereLike = exports.whereBetween = exports.inColumn = exports.whereIn = exports.whereIsNull = exports.whereGe = exports.whereGt = exports.whereLe = exports.whereLt = exports.whereNe = exports.whereEq = exports.compileEager = exports.publishBehaviors = exports.components = exports.assertComponentGraphPortable = exports.assertComponentPortable = exports.assertExprPortable = exports.MYSQL = exports.POSTGRES = exports.SQLITE = exports.toDollarPlaceholders = exports.dialectFor = exports.deriveContractEffect = exports.assertComponentsInCatalog = exports.WRITE_PORT_FAMILIES = void 0;
32
- exports.gt = exports.le = exports.lt = exports.ne = exports.eq = exports.neg = exports.mod = exports.div = exports.mul = exports.sub = exports.add = exports.concat = exports.when = exports.behavior = exports.SemanticBehavior = exports.RELATION_CONTEXT = exports.RelationContext = exports.readRelationContext = exports.buildResultSet = exports.RELATION_KEYS_HEAD = exports.distributeToParent = exports.runRelationOp = exports.compileRelationOp = exports.TypedNativeCoverageError = exports.codegenExecuteBundleForTest = exports.typedEmitterFor = exports.codegenEmitterFor = exports.lowerReadGraphForTypedNative = exports.bundleToPortableIR = exports.generateCodegenArtifact = exports.CODEGEN_EMITTER = exports.CODEGEN_LANGUAGES = exports.compileDeleteMany = exports.compileDeleteManyBundle = exports.compileUpdateManyBundle = exports.compileCreateManyBundle = exports.executeCompositeCommand = exports.compileCompositeWriteBundle = exports.executeTransactionBundle = exports.executeCommand = exports.compileWriteBundle = exports.stripMysqlPkHint = exports.mysqlPkHint = exports.compileWriteNode = exports.renderTxStatement = exports.countingDriver = exports.executeTransaction = exports.deriveTransactionPlan = exports.ENTITY_ROOT = exports.parseEffectPath = void 0;
33
- exports.opt = exports.len = exports.coalesce = exports.not = exports.or = exports.and = exports.ge = void 0;
25
+ exports.toDollarPlaceholders = exports.dialectFor = exports.emitBehaviorModule = exports.assembleDynamicWhere = exports.spliceWhere = exports.prepareSql = exports.LEAF_TRANSPORT_SYMBOLS = exports.leafHandlersAsync = exports.leafHandlers = exports.group = exports.pluck = exports.executeSQLAsync = exports.executeSQL = exports.Db = exports.mysqlPoolFactory = exports.pgPoolFactory = exports.mysqlConnectionPool = exports.pgConnectionPool = exports.mysqlDeboxPoolOptions = exports.configurePgDeboxTypeParsers = exports.compileCompositeKeyLimited = exports.compileCompositeKeyStaticUnlimited = exports.compileCompositeKeyUnlimited = exports.compileSingleKeyLimited = exports.compileSingleKeyUnlimited = exports.PG_ARRAY_CAST_TOKEN = exports.resolvePgArrayCast = exports.inferPgArrayType = exports.compileDeleteMakeSQL = exports.compileUpdateSingle = exports.compileUpdateMany = exports.compileInsertMakeSQL = exports.builderFor = exports.compileSelectMakeSQL = exports.noCastFormatter = exports.pgCastFormatter = exports.formatterFor = exports.andTrailing = exports.whereClause = exports.compileWhere = exports.makeSqlHandlerSync = exports.makeSqlHandler = exports.renderPorts = exports.renderPlaceholders = exports.composeMakeSQL = exports.assembleMakeSQL = exports.isMakeSQL = exports.LITEDBMODEL_MAKESQL_CATALOG = exports.makeSqlCatalogEntry = exports.MAKESQL = void 0;
26
+ exports.rawQueryAsync = exports.rawQuery = exports.rawExecuteAsync = exports.rawExecute = exports.Logger = exports.runMethod = exports.createMiddleware = exports.use = exports.register = exports.activeSqlMiddlewares = exports.withMiddlewareScope = exports.currentRegistry = exports.Registry = exports.currentPinnedAsyncConnection = exports.runWithPinnedAsyncConnection = exports.transaction = exports.withTransactionAsync = exports.PooledAsyncContext = exports.MiddlewareChain = exports.connectionForDriver = exports.contextForConnection = exports.contextForDriver = exports.runGuardedAsync = exports.runGuarded = exports.runAsync = exports.executeAsync = exports.run = exports.executeSafe = exports.execute = exports.columnTypeResolverFromColumnMap = exports.failClosedMaterializeResolverFromColumnMap = exports.materializeResolverFromColumnMap = exports.schemaColumnTypeResolver = exports.parseSchemaColumnTypes = exports.materializeClassOrUndefined = exports.materializeCell = exports.sqlTypeToMaterializeClass = exports.sqlTypeToBcScalar = exports.assertFindHardLimit = exports.resolveHasManyHardLimit = exports.resolveFindHardLimit = exports.resetLimitConfig = exports.getLimitConfig = exports.setLimitConfig = exports.LimitExceededError = exports.SqlFailure = exports.mapSqliteError = exports.MYSQL = exports.POSTGRES = exports.SQLITE = void 0;
27
+ exports.dbCastIn = exports.dbCast = exports.compileInsertMany = exports.compileDeleteMany = exports.compileDeleteManyBundle = exports.compileUpdateManyBundle = exports.compileCreateManyBundle = exports.compileCompositeWriteBundle = exports.executeTransactionBundle = exports.compileWriteBundle = exports.stripMysqlPkHint = exports.mysqlPkHint = exports.compileWriteNode = exports.renderTxStatement = exports.countingDriver = exports.executeTransactionAsync = exports.executeTransaction = exports.deriveTransactionPlan = exports.ENTITY_ROOT = exports.parseEffectPath = exports.lifecycleFor = exports.edgeWrites = exports.entityWrites = exports.WriteInReadOnlyContextError = exports.WriteOutsideTransactionError = exports.checkWriteAllowed = exports.isReadOnly = exports.isInTransaction = exports.withReadOnly = exports.runInTransactionScope = exports.sleep = exports.isRetryableTxError = exports.resolveTxOptions = exports.beginStatements = exports.isolationPhrase = exports.buildRoutingConfig = exports.readerWriterPair = exports.singlePoolPair = exports.configuredPool = exports.sessionResetStatements = exports.sessionStatements = exports.resolveConnectionConfig = exports.resolvePool = exports.inWriterScope = exports.withWriter = exports.DEFAULT_CONNECTION = exports.WriterStickyClock = exports.ConnectionRegistryBuilder = exports.ConnectionRegistry = exports.clearMiddlewares = void 0;
28
+ exports.AuthoringFailure = exports.refsConnection = exports.opt = exports.leaf = exports.behavior = exports.compileRelationOps = exports.relationDeclOf = exports.deriveRelationDecls = exports.relationKeyTypeResolver = exports.modelColumnResolver = exports.compileDeleteBundle = exports.compileUpdateBundle = exports.compileCreateBundle = exports.DEFAULT_UNCAST_SQL_TYPE = exports.COLUMN_FAMILY_SQL_TYPE = exports.tableNameOf = exports.columnSqlType = exports.deriveModelColumns = exports.RELATION_CONTEXT = exports.RelationContext = exports.readRelationContext = exports.buildResultSet = exports.RELATION_KEYS_HEAD = exports.distributeToParent = exports.runRelationOp = exports.compileRelationOp = void 0;
34
29
  // ── CANONICAL: the LOCKED `makeSQL` bc integration (epic #43 / design #45). ──────────
35
30
  var makesql_1 = require("./makesql");
36
31
  Object.defineProperty(exports, "MAKESQL", { enumerable: true, get: function () { return makesql_1.MAKESQL; } });
@@ -63,31 +58,33 @@ Object.defineProperty(exports, "compileSingleKeyLimited", { enumerable: true, ge
63
58
  Object.defineProperty(exports, "compileCompositeKeyUnlimited", { enumerable: true, get: function () { return makesql_1.compileCompositeKeyUnlimited; } });
64
59
  Object.defineProperty(exports, "compileCompositeKeyStaticUnlimited", { enumerable: true, get: function () { return makesql_1.compileCompositeKeyStaticUnlimited; } });
65
60
  Object.defineProperty(exports, "compileCompositeKeyLimited", { enumerable: true, get: function () { return makesql_1.compileCompositeKeyLimited; } });
66
- Object.defineProperty(exports, "makeSqlComponentIR", { enumerable: true, get: function () { return makesql_1.makeSqlComponentIR; } });
67
- Object.defineProperty(exports, "makeSqlInput", { enumerable: true, get: function () { return makesql_1.makeSqlInput; } });
68
- Object.defineProperty(exports, "compileAuthoredBehavior", { enumerable: true, get: function () { return makesql_1.compileAuthoredBehavior; } });
69
- Object.defineProperty(exports, "compileAuthoredNode", { enumerable: true, get: function () { return makesql_1.compileAuthoredNode; } });
70
- Object.defineProperty(exports, "compileRelationMap", { enumerable: true, get: function () { return makesql_1.compileRelationMap; } });
71
- Object.defineProperty(exports, "compileStaticBundle", { enumerable: true, get: function () { return makesql_1.compileStaticBundle; } });
72
- Object.defineProperty(exports, "compileSelectNode", { enumerable: true, get: function () { return makesql_1.compileSelectNode; } });
73
- Object.defineProperty(exports, "executeStaticBundle", { enumerable: true, get: function () { return makesql_1.executeStaticBundle; } });
74
- Object.defineProperty(exports, "executeStaticWrite", { enumerable: true, get: function () { return makesql_1.executeStaticWrite; } });
75
- Object.defineProperty(exports, "executeReadBehavior", { enumerable: true, get: function () { return makesql_1.executeReadBehavior; } });
76
- Object.defineProperty(exports, "compileReadGraph", { enumerable: true, get: function () { return makesql_1.compileReadGraph; } });
77
- Object.defineProperty(exports, "executeReadGraph", { enumerable: true, get: function () { return makesql_1.executeReadGraph; } });
78
- Object.defineProperty(exports, "executeReadGraphAsync", { enumerable: true, get: function () { return makesql_1.executeReadGraphAsync; } });
79
- Object.defineProperty(exports, "renderReadPrimary", { enumerable: true, get: function () { return makesql_1.renderReadPrimary; } });
80
- Object.defineProperty(exports, "pgPoolExecutor", { enumerable: true, get: function () { return makesql_1.pgPoolExecutor; } });
81
- Object.defineProperty(exports, "mysqlPoolExecutor", { enumerable: true, get: function () { return makesql_1.mysqlPoolExecutor; } });
82
- // Catalog (spec §11 item 1)
83
- var catalog_1 = require("./catalog");
84
- Object.defineProperty(exports, "LITEDBMODEL_CATALOG", { enumerable: true, get: function () { return catalog_1.LITEDBMODEL_CATALOG; } });
85
- Object.defineProperty(exports, "catalogEntry", { enumerable: true, get: function () { return catalog_1.catalogEntry; } });
86
- Object.defineProperty(exports, "CATALOG_NAMES", { enumerable: true, get: function () { return catalog_1.CATALOG_NAMES; } });
87
- Object.defineProperty(exports, "WRITE_CATALOG_NAMES", { enumerable: true, get: function () { return catalog_1.WRITE_CATALOG_NAMES; } });
88
- Object.defineProperty(exports, "WRITE_PORT_FAMILIES", { enumerable: true, get: function () { return catalog_1.WRITE_PORT_FAMILIES; } });
89
- Object.defineProperty(exports, "assertComponentsInCatalog", { enumerable: true, get: function () { return catalog_1.assertComponentsInCatalog; } });
90
- Object.defineProperty(exports, "deriveContractEffect", { enumerable: true, get: function () { return catalog_1.deriveContractEffect; } });
61
+ Object.defineProperty(exports, "configurePgDeboxTypeParsers", { enumerable: true, get: function () { return makesql_1.configurePgDeboxTypeParsers; } });
62
+ Object.defineProperty(exports, "mysqlDeboxPoolOptions", { enumerable: true, get: function () { return makesql_1.mysqlDeboxPoolOptions; } });
63
+ Object.defineProperty(exports, "pgConnectionPool", { enumerable: true, get: function () { return makesql_1.pgConnectionPool; } });
64
+ Object.defineProperty(exports, "mysqlConnectionPool", { enumerable: true, get: function () { return makesql_1.mysqlConnectionPool; } });
65
+ Object.defineProperty(exports, "pgPoolFactory", { enumerable: true, get: function () { return makesql_1.pgPoolFactory; } });
66
+ Object.defineProperty(exports, "mysqlPoolFactory", { enumerable: true, get: function () { return makesql_1.mysqlPoolFactory; } });
67
+ // The op-INDEPENDENT leaf transport. `Db` is the `@leaf static` DECLARATION every authored / emitted
68
+ // model imports (the single catalog `bc generate --from` reads); `leafHandlers`/`leafHandlersAsync` are
69
+ // its executable bodies, injected into a generated module's `bind`/`bindAsync`.
70
+ var leaf_transport_1 = require("./leaf-transport");
71
+ Object.defineProperty(exports, "Db", { enumerable: true, get: function () { return leaf_transport_1.Db; } });
72
+ var leaves_1 = require("./leaves");
73
+ Object.defineProperty(exports, "executeSQL", { enumerable: true, get: function () { return leaves_1.executeSQL; } });
74
+ Object.defineProperty(exports, "executeSQLAsync", { enumerable: true, get: function () { return leaves_1.executeSQLAsync; } });
75
+ Object.defineProperty(exports, "pluck", { enumerable: true, get: function () { return leaves_1.pluck; } });
76
+ Object.defineProperty(exports, "group", { enumerable: true, get: function () { return leaves_1.group; } });
77
+ Object.defineProperty(exports, "leafHandlers", { enumerable: true, get: function () { return leaves_1.leafHandlers; } });
78
+ Object.defineProperty(exports, "leafHandlersAsync", { enumerable: true, get: function () { return leaves_1.leafHandlersAsync; } });
79
+ Object.defineProperty(exports, "LEAF_TRANSPORT_SYMBOLS", { enumerable: true, get: function () { return leaves_1.LEAF_TRANSPORT_SYMBOLS; } });
80
+ Object.defineProperty(exports, "prepareSql", { enumerable: true, get: function () { return leaves_1.prepareSql; } });
81
+ Object.defineProperty(exports, "spliceWhere", { enumerable: true, get: function () { return leaves_1.spliceWhere; } });
82
+ Object.defineProperty(exports, "assembleDynamicWhere", { enumerable: true, get: function () { return leaves_1.assembleDynamicWhere; } });
83
+ // ── The decorator → SCP LOWERING (CLAUDE.md §1): declared endpoints + `@column`/`@hasMany` metadata
84
+ // → the SCP-restricted TS `bc generate --from` reads. The emitter builds no SQL of its own — it renders
85
+ // what `makesql` / `compileRelationOp` / `deriveReadRow` produce.
86
+ var emit_1 = require("./emit");
87
+ Object.defineProperty(exports, "emitBehaviorModule", { enumerable: true, get: function () { return emit_1.emitBehaviorModule; } });
91
88
  // Dialect strategy table (WS6, #26 — the SSoT for PG/MySQL/SQLite SQL divergences + `?`→`$N`).
92
89
  var dialect_1 = require("./dialect");
93
90
  Object.defineProperty(exports, "dialectFor", { enumerable: true, get: function () { return dialect_1.dialectFor; } });
@@ -95,69 +92,116 @@ Object.defineProperty(exports, "toDollarPlaceholders", { enumerable: true, get:
95
92
  Object.defineProperty(exports, "SQLITE", { enumerable: true, get: function () { return dialect_1.SQLITE; } });
96
93
  Object.defineProperty(exports, "POSTGRES", { enumerable: true, get: function () { return dialect_1.POSTGRES; } });
97
94
  Object.defineProperty(exports, "MYSQL", { enumerable: true, get: function () { return dialect_1.MYSQL; } });
98
- // Portability guard (closed Expression IR set only)
99
- var guard_1 = require("./guard");
100
- Object.defineProperty(exports, "assertExprPortable", { enumerable: true, get: function () { return guard_1.assertExprPortable; } });
101
- Object.defineProperty(exports, "assertComponentPortable", { enumerable: true, get: function () { return guard_1.assertComponentPortable; } });
102
- Object.defineProperty(exports, "assertComponentGraphPortable", { enumerable: true, get: function () { return guard_1.assertComponentGraphPortable; } });
103
- // Authoring Parse (spec §2.4 / §7 / §9) — SemanticBehavior declaration + eager public-API
104
- // path → one internal Component-graph IR.
105
- var authoring_1 = require("./authoring");
106
- Object.defineProperty(exports, "components", { enumerable: true, get: function () { return authoring_1.components; } });
107
- Object.defineProperty(exports, "publishBehaviors", { enumerable: true, get: function () { return authoring_1.publishBehaviors; } });
108
- Object.defineProperty(exports, "compileEager", { enumerable: true, get: function () { return authoring_1.compileEager; } });
109
- // SQL WHERE authoring helpers (closed-set encodings the bridge decodes).
110
- var authoring_sql_1 = require("./authoring-sql");
111
- Object.defineProperty(exports, "whereEq", { enumerable: true, get: function () { return authoring_sql_1.whereEq; } });
112
- Object.defineProperty(exports, "whereNe", { enumerable: true, get: function () { return authoring_sql_1.whereNe; } });
113
- Object.defineProperty(exports, "whereLt", { enumerable: true, get: function () { return authoring_sql_1.whereLt; } });
114
- Object.defineProperty(exports, "whereLe", { enumerable: true, get: function () { return authoring_sql_1.whereLe; } });
115
- Object.defineProperty(exports, "whereGt", { enumerable: true, get: function () { return authoring_sql_1.whereGt; } });
116
- Object.defineProperty(exports, "whereGe", { enumerable: true, get: function () { return authoring_sql_1.whereGe; } });
117
- Object.defineProperty(exports, "whereIsNull", { enumerable: true, get: function () { return authoring_sql_1.whereIsNull; } });
118
- Object.defineProperty(exports, "whereIn", { enumerable: true, get: function () { return authoring_sql_1.whereIn; } });
119
- Object.defineProperty(exports, "inColumn", { enumerable: true, get: function () { return authoring_sql_1.inColumn; } });
120
- // Additive where-primitives (V0 R2/R3): live-reachable, v1-sourced SQL.
121
- Object.defineProperty(exports, "whereBetween", { enumerable: true, get: function () { return authoring_sql_1.whereBetween; } });
122
- Object.defineProperty(exports, "whereLike", { enumerable: true, get: function () { return authoring_sql_1.whereLike; } });
123
- Object.defineProperty(exports, "whereILike", { enumerable: true, get: function () { return authoring_sql_1.whereILike; } });
124
- Object.defineProperty(exports, "whereCast", { enumerable: true, get: function () { return authoring_sql_1.whereCast; } });
125
- Object.defineProperty(exports, "whereDynamic", { enumerable: true, get: function () { return authoring_sql_1.whereDynamic; } });
126
- Object.defineProperty(exports, "whereImmediate", { enumerable: true, get: function () { return authoring_sql_1.whereImmediate; } });
127
- Object.defineProperty(exports, "whereTupleIn", { enumerable: true, get: function () { return authoring_sql_1.whereTupleIn; } });
128
- Object.defineProperty(exports, "whereInSubquery", { enumerable: true, get: function () { return authoring_sql_1.whereInSubquery; } });
129
- Object.defineProperty(exports, "whereExists", { enumerable: true, get: function () { return authoring_sql_1.whereExists; } });
130
95
  // Error Mapping (spec §11 item 5): driver error → SCP Failure + Policy Kind.
131
96
  var errors_1 = require("./errors");
132
97
  Object.defineProperty(exports, "mapSqliteError", { enumerable: true, get: function () { return errors_1.mapSqliteError; } });
133
98
  Object.defineProperty(exports, "SqlFailure", { enumerable: true, get: function () { return errors_1.SqlFailure; } });
134
- // FIND_FILTER fail-closed authoring guard (#47 Finding B / plan R8): a model declaring an
135
- // implicit per-model scope predicate cannot be SCP-compiled without folding it into the
136
- // authored WHERE (fail-closed; the SCP compile has no model context to auto-apply it).
137
- var find_filter_guard_1 = require("./find-filter-guard");
138
- Object.defineProperty(exports, "assertFindFilterFolded", { enumerable: true, get: function () { return find_filter_guard_1.assertFindFilterFolded; } });
139
- Object.defineProperty(exports, "findFilterKeys", { enumerable: true, get: function () { return find_filter_guard_1.findFilterKeys; } });
140
- Object.defineProperty(exports, "FindFilterLeakError", { enumerable: true, get: function () { return find_filter_guard_1.FindFilterLeakError; } });
99
+ Object.defineProperty(exports, "LimitExceededError", { enumerable: true, get: function () { return errors_1.LimitExceededError; } });
100
+ // Hard-limit runaway prevention (Phase E-2, epic #74; v1 `setLimitConfig`/`LimitExceededError`
101
+ // parity): the global find/hasMany hard-limit config. Read at COMPILE time to bake the effective
102
+ // caps onto the portable artifacts (the ReadGraph `findGuard` + each RelationOp `hardLimit`); the
103
+ // TS runtime + the native ports throw `LimitExceededError` post-fetch when a read / relation batch
104
+ // exceeds its cap. `null` disables; a per-relation `hardLimit` override wins; a relation with an
105
+ // intrinsic per-parent `limit` window skips the batch-total check.
106
+ var limit_config_1 = require("./limit-config");
107
+ Object.defineProperty(exports, "setLimitConfig", { enumerable: true, get: function () { return limit_config_1.setLimitConfig; } });
108
+ Object.defineProperty(exports, "getLimitConfig", { enumerable: true, get: function () { return limit_config_1.getLimitConfig; } });
109
+ Object.defineProperty(exports, "resetLimitConfig", { enumerable: true, get: function () { return limit_config_1.resetLimitConfig; } });
110
+ Object.defineProperty(exports, "resolveFindHardLimit", { enumerable: true, get: function () { return limit_config_1.resolveFindHardLimit; } });
111
+ Object.defineProperty(exports, "resolveHasManyHardLimit", { enumerable: true, get: function () { return limit_config_1.resolveHasManyHardLimit; } });
112
+ Object.defineProperty(exports, "assertFindHardLimit", { enumerable: true, get: function () { return limit_config_1.assertFindHardLimit; } });
141
113
  // Column type system (spec §4.1; #58): SQL type → bc outType scalar, and the schema/DDL SoT
142
114
  // resolver that types a SELECT projection for typed (de-boxed) codegen. Fail-closed throughout.
143
115
  var coltype_1 = require("./coltype");
144
116
  Object.defineProperty(exports, "sqlTypeToBcScalar", { enumerable: true, get: function () { return coltype_1.sqlTypeToBcScalar; } });
117
+ Object.defineProperty(exports, "sqlTypeToMaterializeClass", { enumerable: true, get: function () { return coltype_1.sqlTypeToMaterializeClass; } });
118
+ Object.defineProperty(exports, "materializeCell", { enumerable: true, get: function () { return coltype_1.materializeCell; } });
119
+ Object.defineProperty(exports, "materializeClassOrUndefined", { enumerable: true, get: function () { return coltype_1.materializeClassOrUndefined; } });
145
120
  Object.defineProperty(exports, "parseSchemaColumnTypes", { enumerable: true, get: function () { return coltype_1.parseSchemaColumnTypes; } });
146
121
  Object.defineProperty(exports, "schemaColumnTypeResolver", { enumerable: true, get: function () { return coltype_1.schemaColumnTypeResolver; } });
147
- // Thin TS runtime (spec §3 / §10 / §11): validate → SKIP → expand → eval → bind → execute → assembly.
148
- // `compileBundle` emits the §8 published artifact (Backend-Compiled once, TS-side);
149
- // `executeBundle` runs that artifact via bc runtime-core alone (the multi-language target).
150
- var runtime_1 = require("./runtime");
151
- Object.defineProperty(exports, "executeBehavior", { enumerable: true, get: function () { return runtime_1.executeBehavior; } });
152
- Object.defineProperty(exports, "compileBundle", { enumerable: true, get: function () { return runtime_1.compileBundle; } });
153
- Object.defineProperty(exports, "executeBundle", { enumerable: true, get: function () { return runtime_1.executeBundle; } });
154
- Object.defineProperty(exports, "read", { enumerable: true, get: function () { return runtime_1.read; } });
155
- Object.defineProperty(exports, "readBundle", { enumerable: true, get: function () { return runtime_1.readBundle; } });
156
- // The ASYNC PG / MySQL production read execution model (#40): bc `runBehaviorAsync` fans out
157
- // independent sibling read nodes in bounded parallel against a pooled async executor.
158
- var runtime_2 = require("./runtime");
159
- Object.defineProperty(exports, "executeBundleAsync", { enumerable: true, get: function () { return runtime_2.executeBundleAsync; } });
160
- Object.defineProperty(exports, "executeBehaviorAsync", { enumerable: true, get: function () { return runtime_2.executeBehaviorAsync; } });
122
+ Object.defineProperty(exports, "materializeResolverFromColumnMap", { enumerable: true, get: function () { return coltype_1.materializeResolverFromColumnMap; } });
123
+ Object.defineProperty(exports, "failClosedMaterializeResolverFromColumnMap", { enumerable: true, get: function () { return coltype_1.failClosedMaterializeResolverFromColumnMap; } });
124
+ Object.defineProperty(exports, "columnTypeResolverFromColumnMap", { enumerable: true, get: function () { return coltype_1.columnTypeResolverFromColumnMap; } });
125
+ // ── Phase A (#75): the ExecutionContext + central execute/run seam + per-execution connection
126
+ // ownership. The CONTRACT-DEFINING artifact the native ports (#76-79) follow. All runtime SQL
127
+ // (read/write/tx/relation) funnels through `execute`/`run`; `contextForDriver` is the backward-
128
+ // compat wrapper (raw driver ⇒ single-DB, empty-middleware ctx) keeping conformance byte-identical.
129
+ var exec_context_1 = require("./exec-context");
130
+ Object.defineProperty(exports, "execute", { enumerable: true, get: function () { return exec_context_1.execute; } });
131
+ Object.defineProperty(exports, "executeSafe", { enumerable: true, get: function () { return exec_context_1.executeSafe; } });
132
+ Object.defineProperty(exports, "run", { enumerable: true, get: function () { return exec_context_1.run; } });
133
+ Object.defineProperty(exports, "executeAsync", { enumerable: true, get: function () { return exec_context_1.executeAsync; } });
134
+ Object.defineProperty(exports, "runAsync", { enumerable: true, get: function () { return exec_context_1.runAsync; } });
135
+ Object.defineProperty(exports, "runGuarded", { enumerable: true, get: function () { return exec_context_1.runGuarded; } });
136
+ Object.defineProperty(exports, "runGuardedAsync", { enumerable: true, get: function () { return exec_context_1.runGuardedAsync; } });
137
+ Object.defineProperty(exports, "contextForDriver", { enumerable: true, get: function () { return exec_context_1.contextForDriver; } });
138
+ Object.defineProperty(exports, "contextForConnection", { enumerable: true, get: function () { return exec_context_1.contextForConnection; } });
139
+ Object.defineProperty(exports, "connectionForDriver", { enumerable: true, get: function () { return exec_context_1.connectionForDriver; } });
140
+ Object.defineProperty(exports, "MiddlewareChain", { enumerable: true, get: function () { return exec_context_1.MiddlewareChain; } });
141
+ Object.defineProperty(exports, "PooledAsyncContext", { enumerable: true, get: function () { return exec_context_1.PooledAsyncContext; } });
142
+ Object.defineProperty(exports, "withTransactionAsync", { enumerable: true, get: function () { return exec_context_1.withTransactionAsync; } });
143
+ Object.defineProperty(exports, "transaction", { enumerable: true, get: function () { return exec_context_1.transaction; } });
144
+ Object.defineProperty(exports, "runWithPinnedAsyncConnection", { enumerable: true, get: function () { return exec_context_1.runWithPinnedAsyncConnection; } });
145
+ Object.defineProperty(exports, "currentPinnedAsyncConnection", { enumerable: true, get: function () { return exec_context_1.currentPinnedAsyncConnection; } });
146
+ // ── Phase D (#92): the MIDDLEWARE layer on the Phase A seam. The API REFERENCE the native ports
147
+ // (#93-96) mirror: registration (`use`/`createMiddleware`), the SQL-level `execute(next, sql, params)`
148
+ // chain contract + applied order (first-registered = outermost), method-level hooks keyed by op kind
149
+ // (`runMethod`), per-execution-scope isolation (`withMiddlewareScope`, TS AsyncLocalStorage), the
150
+ // standard `Logger`, and the raw `execute`/`query` API that goes THROUGH the seam. An unregistered
151
+ // chain is a byte-identical passthrough (conformance/livedb register none ⇒ unchanged).
152
+ var middleware_1 = require("./middleware");
153
+ Object.defineProperty(exports, "Registry", { enumerable: true, get: function () { return middleware_1.Registry; } });
154
+ Object.defineProperty(exports, "currentRegistry", { enumerable: true, get: function () { return middleware_1.currentRegistry; } });
155
+ Object.defineProperty(exports, "withMiddlewareScope", { enumerable: true, get: function () { return middleware_1.withMiddlewareScope; } });
156
+ Object.defineProperty(exports, "activeSqlMiddlewares", { enumerable: true, get: function () { return middleware_1.activeSqlMiddlewares; } });
157
+ Object.defineProperty(exports, "register", { enumerable: true, get: function () { return middleware_1.register; } });
158
+ Object.defineProperty(exports, "use", { enumerable: true, get: function () { return middleware_1.use; } });
159
+ Object.defineProperty(exports, "createMiddleware", { enumerable: true, get: function () { return middleware_1.createMiddleware; } });
160
+ Object.defineProperty(exports, "runMethod", { enumerable: true, get: function () { return middleware_1.runMethod; } });
161
+ Object.defineProperty(exports, "Logger", { enumerable: true, get: function () { return middleware_1.Logger; } });
162
+ Object.defineProperty(exports, "rawExecute", { enumerable: true, get: function () { return middleware_1.rawExecute; } });
163
+ Object.defineProperty(exports, "rawExecuteAsync", { enumerable: true, get: function () { return middleware_1.rawExecuteAsync; } });
164
+ Object.defineProperty(exports, "rawQuery", { enumerable: true, get: function () { return middleware_1.rawQuery; } });
165
+ Object.defineProperty(exports, "rawQueryAsync", { enumerable: true, get: function () { return middleware_1.rawQueryAsync; } });
166
+ Object.defineProperty(exports, "clearMiddlewares", { enumerable: true, get: function () { return middleware_1.clearMiddlewares; } });
167
+ // ── Phase C (#87): connection routing + config. The API REFERENCE the native ports (#88-91) mirror.
168
+ // Completes `connectionFor(intent)`'s resolution (§3 steps 2-4): reader/writer separation + writer-
169
+ // sticky + `withWriter` (C1), a multi-DB name→pools registry + named routing (C2), and the setConfig
170
+ // surface (queryTimeout/keepAlive/pool sizing/searchPath/charset) + closeAllPools (C3). A single-pool
171
+ // `PooledAsyncContext` synthesizes a default-only registry (reader === writer, sticky off) ⇒ byte-
172
+ // identical to Phase A/B; a `buildRoutingConfig`-driven ctx gets the full routing.
173
+ var connection_routing_1 = require("./connection-routing");
174
+ Object.defineProperty(exports, "ConnectionRegistry", { enumerable: true, get: function () { return connection_routing_1.ConnectionRegistry; } });
175
+ Object.defineProperty(exports, "ConnectionRegistryBuilder", { enumerable: true, get: function () { return connection_routing_1.ConnectionRegistryBuilder; } });
176
+ Object.defineProperty(exports, "WriterStickyClock", { enumerable: true, get: function () { return connection_routing_1.WriterStickyClock; } });
177
+ Object.defineProperty(exports, "DEFAULT_CONNECTION", { enumerable: true, get: function () { return connection_routing_1.DEFAULT_CONNECTION; } });
178
+ Object.defineProperty(exports, "withWriter", { enumerable: true, get: function () { return connection_routing_1.withWriter; } });
179
+ Object.defineProperty(exports, "inWriterScope", { enumerable: true, get: function () { return connection_routing_1.inWriterScope; } });
180
+ Object.defineProperty(exports, "resolvePool", { enumerable: true, get: function () { return connection_routing_1.resolvePool; } });
181
+ Object.defineProperty(exports, "resolveConnectionConfig", { enumerable: true, get: function () { return connection_routing_1.resolveConnectionConfig; } });
182
+ Object.defineProperty(exports, "sessionStatements", { enumerable: true, get: function () { return connection_routing_1.sessionStatements; } });
183
+ Object.defineProperty(exports, "sessionResetStatements", { enumerable: true, get: function () { return connection_routing_1.sessionResetStatements; } });
184
+ Object.defineProperty(exports, "configuredPool", { enumerable: true, get: function () { return connection_routing_1.configuredPool; } });
185
+ Object.defineProperty(exports, "singlePoolPair", { enumerable: true, get: function () { return connection_routing_1.singlePoolPair; } });
186
+ Object.defineProperty(exports, "readerWriterPair", { enumerable: true, get: function () { return connection_routing_1.readerWriterPair; } });
187
+ Object.defineProperty(exports, "buildRoutingConfig", { enumerable: true, get: function () { return connection_routing_1.buildRoutingConfig; } });
188
+ // The tx-completeness contract (Phase B-1 / #81): TransactionOptions shape + defaults, the
189
+ // isolation-level enum + per-dialect BEGIN mapping, the retryable-error classifier, the write=tx
190
+ // guards (`checkWriteAllowed` + `withReadOnly` / `runInTransactionScope` scope markers). The API
191
+ // REFERENCE the 4 native ports (rust #82 / go #83 / py #84 / php #85) mirror.
192
+ var tx_options_1 = require("./tx-options");
193
+ Object.defineProperty(exports, "isolationPhrase", { enumerable: true, get: function () { return tx_options_1.isolationPhrase; } });
194
+ Object.defineProperty(exports, "beginStatements", { enumerable: true, get: function () { return tx_options_1.beginStatements; } });
195
+ Object.defineProperty(exports, "resolveTxOptions", { enumerable: true, get: function () { return tx_options_1.resolveTxOptions; } });
196
+ Object.defineProperty(exports, "isRetryableTxError", { enumerable: true, get: function () { return tx_options_1.isRetryableTxError; } });
197
+ Object.defineProperty(exports, "sleep", { enumerable: true, get: function () { return tx_options_1.sleep; } });
198
+ Object.defineProperty(exports, "runInTransactionScope", { enumerable: true, get: function () { return tx_options_1.runInTransactionScope; } });
199
+ Object.defineProperty(exports, "withReadOnly", { enumerable: true, get: function () { return tx_options_1.withReadOnly; } });
200
+ Object.defineProperty(exports, "isInTransaction", { enumerable: true, get: function () { return tx_options_1.isInTransaction; } });
201
+ Object.defineProperty(exports, "isReadOnly", { enumerable: true, get: function () { return tx_options_1.isReadOnly; } });
202
+ Object.defineProperty(exports, "checkWriteAllowed", { enumerable: true, get: function () { return tx_options_1.checkWriteAllowed; } });
203
+ Object.defineProperty(exports, "WriteOutsideTransactionError", { enumerable: true, get: function () { return tx_options_1.WriteOutsideTransactionError; } });
204
+ Object.defineProperty(exports, "WriteInReadOnlyContextError", { enumerable: true, get: function () { return tx_options_1.WriteInReadOnlyContextError; } });
161
205
  // Write-time relations (WS5, #25 — spec §6): entityWrites/edgeWrites declaration vocabulary,
162
206
  // the gate-first transaction-plan derivation, and the 1-tx real-SQLite runtime.
163
207
  var writes_1 = require("./writes");
@@ -169,44 +213,36 @@ Object.defineProperty(exports, "ENTITY_ROOT", { enumerable: true, get: function
169
213
  var makesql_2 = require("./makesql");
170
214
  Object.defineProperty(exports, "deriveTransactionPlan", { enumerable: true, get: function () { return makesql_2.deriveTransactionPlan; } });
171
215
  Object.defineProperty(exports, "executeTransaction", { enumerable: true, get: function () { return makesql_2.executeTransaction; } });
216
+ Object.defineProperty(exports, "executeTransactionAsync", { enumerable: true, get: function () { return makesql_2.executeTransactionAsync; } });
172
217
  Object.defineProperty(exports, "countingDriver", { enumerable: true, get: function () { return makesql_2.countingDriver; } });
173
218
  Object.defineProperty(exports, "renderTxStatement", { enumerable: true, get: function () { return makesql_2.renderTxStatement; } });
174
219
  Object.defineProperty(exports, "compileWriteNode", { enumerable: true, get: function () { return makesql_2.compileWriteNode; } });
175
220
  Object.defineProperty(exports, "mysqlPkHint", { enumerable: true, get: function () { return makesql_2.mysqlPkHint; } });
176
221
  Object.defineProperty(exports, "stripMysqlPkHint", { enumerable: true, get: function () { return makesql_2.stripMysqlPkHint; } });
177
222
  // The Command bundle + 1-tx execution surface (WS5 — the write path of §2.3 / §6).
178
- var runtime_3 = require("./runtime");
179
- Object.defineProperty(exports, "compileWriteBundle", { enumerable: true, get: function () { return runtime_3.compileWriteBundle; } });
180
- Object.defineProperty(exports, "executeCommand", { enumerable: true, get: function () { return runtime_3.executeCommand; } });
181
- Object.defineProperty(exports, "executeTransactionBundle", { enumerable: true, get: function () { return runtime_3.executeTransactionBundle; } });
223
+ var write_bundle_1 = require("./write-bundle");
224
+ Object.defineProperty(exports, "compileWriteBundle", { enumerable: true, get: function () { return write_bundle_1.compileWriteBundle; } });
225
+ Object.defineProperty(exports, "executeTransactionBundle", { enumerable: true, get: function () { return write_bundle_1.executeTransactionBundle; } });
182
226
  // Composite (multi-write) Command surface (WS8a, #28 — spec §6 nested write / §14 tx-DAG derivation):
183
227
  // several named base writes with data dependencies → ONE topologically-ordered gate-first tx plan.
184
- var runtime_4 = require("./runtime");
185
- Object.defineProperty(exports, "compileCompositeWriteBundle", { enumerable: true, get: function () { return runtime_4.compileCompositeWriteBundle; } });
186
- Object.defineProperty(exports, "executeCompositeCommand", { enumerable: true, get: function () { return runtime_4.executeCompositeCommand; } });
228
+ var write_bundle_2 = require("./write-bundle");
229
+ Object.defineProperty(exports, "compileCompositeWriteBundle", { enumerable: true, get: function () { return write_bundle_2.compileCompositeWriteBundle; } });
187
230
  // Batch writes (createMany / updateMany / deleteMany): ONE logical op → N grouped statements lowered
188
231
  // to a gate-free tx plan (executed by the SAME multi-statement tx loop in all 5 runtimes). The
189
232
  // batch SQL is byte-copied from the v1 builders (compileInsertMany/compileUpdateMany/compileDeleteMany).
190
- var runtime_5 = require("./runtime");
191
- Object.defineProperty(exports, "compileCreateManyBundle", { enumerable: true, get: function () { return runtime_5.compileCreateManyBundle; } });
192
- Object.defineProperty(exports, "compileUpdateManyBundle", { enumerable: true, get: function () { return runtime_5.compileUpdateManyBundle; } });
193
- Object.defineProperty(exports, "compileDeleteManyBundle", { enumerable: true, get: function () { return runtime_5.compileDeleteManyBundle; } });
233
+ var write_bundle_3 = require("./write-bundle");
234
+ Object.defineProperty(exports, "compileCreateManyBundle", { enumerable: true, get: function () { return write_bundle_3.compileCreateManyBundle; } });
235
+ Object.defineProperty(exports, "compileUpdateManyBundle", { enumerable: true, get: function () { return write_bundle_3.compileUpdateManyBundle; } });
236
+ Object.defineProperty(exports, "compileDeleteManyBundle", { enumerable: true, get: function () { return write_bundle_3.compileDeleteManyBundle; } });
194
237
  var makesql_3 = require("./makesql");
195
238
  Object.defineProperty(exports, "compileDeleteMany", { enumerable: true, get: function () { return makesql_3.compileDeleteMany; } });
196
- // Mode-3 codegen (WS7f, #35 — spec §9 exec-mode 3): supply the litedbmodel SQL catalog to bc's
197
- // shared generator; emit per-language STATIC straight-line source (de-interpreted, bc#75 — real
198
- // static code, NOT a baked-IR interpret path) + the SQL catalog companion. Generated code is
199
- // behavior-identical to the mode-2 thin-runtime (proven by the codegen conformance leg).
200
- var codegen_1 = require("./codegen");
201
- Object.defineProperty(exports, "CODEGEN_LANGUAGES", { enumerable: true, get: function () { return codegen_1.CODEGEN_LANGUAGES; } });
202
- Object.defineProperty(exports, "CODEGEN_EMITTER", { enumerable: true, get: function () { return codegen_1.CODEGEN_EMITTER; } });
203
- Object.defineProperty(exports, "generateCodegenArtifact", { enumerable: true, get: function () { return codegen_1.generateCodegenArtifact; } });
204
- Object.defineProperty(exports, "bundleToPortableIR", { enumerable: true, get: function () { return codegen_1.bundleToPortableIR; } });
205
- Object.defineProperty(exports, "lowerReadGraphForTypedNative", { enumerable: true, get: function () { return codegen_1.lowerReadGraphForTypedNative; } });
206
- Object.defineProperty(exports, "codegenEmitterFor", { enumerable: true, get: function () { return codegen_1.codegenEmitterFor; } });
207
- Object.defineProperty(exports, "typedEmitterFor", { enumerable: true, get: function () { return codegen_1.typedEmitterFor; } });
208
- Object.defineProperty(exports, "codegenExecuteBundleForTest", { enumerable: true, get: function () { return codegen_1.codegenExecuteBundleForTest; } });
209
- Object.defineProperty(exports, "TypedNativeCoverageError", { enumerable: true, get: function () { return codegen_1.TypedNativeCoverageError; } });
239
+ Object.defineProperty(exports, "compileInsertMany", { enumerable: true, get: function () { return makesql_3.compileInsertMany; } });
240
+ // dbCast: the column-type cast marker the makeSQL compilers thread into WHERE/SET (spec §4.1).
241
+ // Re-exported so a bundle consumer builds the SAME DBCast instance the inlined compilers recognise
242
+ // (a standalone dist/DBValues copy is a DIFFERENT class → the compiler would not honour the cast).
243
+ var DBValues_1 = require("../DBValues");
244
+ Object.defineProperty(exports, "dbCast", { enumerable: true, get: function () { return DBValues_1.dbCast; } });
245
+ Object.defineProperty(exports, "dbCastIn", { enumerable: true, get: function () { return DBValues_1.dbCastIn; } });
210
246
  // Read relations (WS4, #24): pre-compiled batch relation ops + staged batch resolution.
211
247
  // BOTH the declarative-select and the lazy surface resolve through the SAME compiled op.
212
248
  var relation_1 = require("./relation");
@@ -220,30 +256,31 @@ Object.defineProperty(exports, "buildResultSet", { enumerable: true, get: functi
220
256
  Object.defineProperty(exports, "readRelationContext", { enumerable: true, get: function () { return typed_object_1.readRelationContext; } });
221
257
  Object.defineProperty(exports, "RelationContext", { enumerable: true, get: function () { return typed_object_1.RelationContext; } });
222
258
  Object.defineProperty(exports, "RELATION_CONTEXT", { enumerable: true, get: function () { return typed_object_1.RELATION_CONTEXT; } });
223
- // Re-export bc's shared authoring vocabulary so authors import the whole surface from
224
- // litedbmodel (leaf vocabulary is the Catalog; expressions/structured control are bc's —
225
- // C2). There is NO litedbmodel-local authoring opcode beyond the Catalog.
259
+ // ── Phase F-1 (#104): the decorator → SCP authoring ADAPTER. Translates the `@model` / `@column` /
260
+ // `@hasMany` decorator metadata into the SCP authoring it lowers to (columns → `static columns`;
261
+ // find/count → eager Select/Count; create/update/delete → write bundles; relations → RelationDecl →
262
+ // RelationOp). Standalone + unit-proven byte-identical to the hand-written SCP behavior; does NOT yet
263
+ // rewire DBModel's methods (F2). TS-only, zero BC. Mirrors graphddb's collector→define→compile.
264
+ var decorator_adapter_1 = require("./decorator-adapter");
265
+ Object.defineProperty(exports, "deriveModelColumns", { enumerable: true, get: function () { return decorator_adapter_1.deriveModelColumns; } });
266
+ Object.defineProperty(exports, "columnSqlType", { enumerable: true, get: function () { return decorator_adapter_1.columnSqlType; } });
267
+ Object.defineProperty(exports, "tableNameOf", { enumerable: true, get: function () { return decorator_adapter_1.tableNameOf; } });
268
+ Object.defineProperty(exports, "COLUMN_FAMILY_SQL_TYPE", { enumerable: true, get: function () { return decorator_adapter_1.COLUMN_FAMILY_SQL_TYPE; } });
269
+ Object.defineProperty(exports, "DEFAULT_UNCAST_SQL_TYPE", { enumerable: true, get: function () { return decorator_adapter_1.DEFAULT_UNCAST_SQL_TYPE; } });
270
+ Object.defineProperty(exports, "compileCreateBundle", { enumerable: true, get: function () { return decorator_adapter_1.compileCreateBundle; } });
271
+ Object.defineProperty(exports, "compileUpdateBundle", { enumerable: true, get: function () { return decorator_adapter_1.compileUpdateBundle; } });
272
+ Object.defineProperty(exports, "compileDeleteBundle", { enumerable: true, get: function () { return decorator_adapter_1.compileDeleteBundle; } });
273
+ Object.defineProperty(exports, "modelColumnResolver", { enumerable: true, get: function () { return decorator_adapter_1.modelColumnResolver; } });
274
+ Object.defineProperty(exports, "relationKeyTypeResolver", { enumerable: true, get: function () { return decorator_adapter_1.relationKeyTypeResolver; } });
275
+ Object.defineProperty(exports, "deriveRelationDecls", { enumerable: true, get: function () { return decorator_adapter_1.deriveRelationDecls; } });
276
+ Object.defineProperty(exports, "relationDeclOf", { enumerable: true, get: function () { return decorator_adapter_1.relationDeclOf; } });
277
+ Object.defineProperty(exports, "compileRelationOps", { enumerable: true, get: function () { return decorator_adapter_1.compileRelationOps; } });
278
+ // The bc AUTHORING markers, re-exported so a consumer declares its endpoints from one import. The
279
+ // bodies are ordinary TypeScript; `bc generate --from <file> --behavior <Class>` reads the source.
226
280
  var behavior_contracts_1 = require("behavior-contracts");
227
- Object.defineProperty(exports, "SemanticBehavior", { enumerable: true, get: function () { return behavior_contracts_1.SemanticBehavior; } });
228
281
  Object.defineProperty(exports, "behavior", { enumerable: true, get: function () { return behavior_contracts_1.behavior; } });
229
- Object.defineProperty(exports, "when", { enumerable: true, get: function () { return behavior_contracts_1.when; } });
230
- Object.defineProperty(exports, "concat", { enumerable: true, get: function () { return behavior_contracts_1.concat; } });
231
- Object.defineProperty(exports, "add", { enumerable: true, get: function () { return behavior_contracts_1.add; } });
232
- Object.defineProperty(exports, "sub", { enumerable: true, get: function () { return behavior_contracts_1.sub; } });
233
- Object.defineProperty(exports, "mul", { enumerable: true, get: function () { return behavior_contracts_1.mul; } });
234
- Object.defineProperty(exports, "div", { enumerable: true, get: function () { return behavior_contracts_1.div; } });
235
- Object.defineProperty(exports, "mod", { enumerable: true, get: function () { return behavior_contracts_1.mod; } });
236
- Object.defineProperty(exports, "neg", { enumerable: true, get: function () { return behavior_contracts_1.neg; } });
237
- Object.defineProperty(exports, "eq", { enumerable: true, get: function () { return behavior_contracts_1.eq; } });
238
- Object.defineProperty(exports, "ne", { enumerable: true, get: function () { return behavior_contracts_1.ne; } });
239
- Object.defineProperty(exports, "lt", { enumerable: true, get: function () { return behavior_contracts_1.lt; } });
240
- Object.defineProperty(exports, "le", { enumerable: true, get: function () { return behavior_contracts_1.le; } });
241
- Object.defineProperty(exports, "gt", { enumerable: true, get: function () { return behavior_contracts_1.gt; } });
242
- Object.defineProperty(exports, "ge", { enumerable: true, get: function () { return behavior_contracts_1.ge; } });
243
- Object.defineProperty(exports, "and", { enumerable: true, get: function () { return behavior_contracts_1.and; } });
244
- Object.defineProperty(exports, "or", { enumerable: true, get: function () { return behavior_contracts_1.or; } });
245
- Object.defineProperty(exports, "not", { enumerable: true, get: function () { return behavior_contracts_1.not; } });
246
- Object.defineProperty(exports, "coalesce", { enumerable: true, get: function () { return behavior_contracts_1.coalesce; } });
247
- Object.defineProperty(exports, "len", { enumerable: true, get: function () { return behavior_contracts_1.len; } });
282
+ Object.defineProperty(exports, "leaf", { enumerable: true, get: function () { return behavior_contracts_1.leaf; } });
248
283
  Object.defineProperty(exports, "opt", { enumerable: true, get: function () { return behavior_contracts_1.opt; } });
284
+ Object.defineProperty(exports, "refsConnection", { enumerable: true, get: function () { return behavior_contracts_1.refsConnection; } });
285
+ Object.defineProperty(exports, "AuthoringFailure", { enumerable: true, get: function () { return behavior_contracts_1.AuthoringFailure; } });
249
286
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scp/index.ts"],"names":[],"mappings":"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"}