bonescript-compiler 0.5.2 → 0.5.4

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 (187) hide show
  1. package/LICENSE +21 -21
  2. package/dist/algorithm_catalog.js +166 -166
  3. package/dist/cli.d.ts +1 -2
  4. package/dist/cli.js +543 -75
  5. package/dist/cli.js.map +1 -1
  6. package/dist/emit_capability.d.ts +0 -13
  7. package/dist/emit_capability.js +128 -292
  8. package/dist/emit_capability.js.map +1 -1
  9. package/dist/emit_composition.js +3 -37
  10. package/dist/emit_composition.js.map +1 -1
  11. package/dist/emit_deploy.js +162 -162
  12. package/dist/emit_events.d.ts +0 -1
  13. package/dist/emit_events.js +275 -342
  14. package/dist/emit_events.js.map +1 -1
  15. package/dist/emit_full.js +106 -268
  16. package/dist/emit_full.js.map +1 -1
  17. package/dist/emit_maintenance.js +249 -249
  18. package/dist/emit_runtime.d.ts +11 -17
  19. package/dist/emit_runtime.js +688 -29
  20. package/dist/emit_runtime.js.map +1 -1
  21. package/dist/emit_sourcemap.js +66 -66
  22. package/dist/emit_tests.js +0 -37
  23. package/dist/emit_tests.js.map +1 -1
  24. package/dist/emitter.js +16 -82
  25. package/dist/emitter.js.map +1 -1
  26. package/dist/extension_manager.d.ts +2 -2
  27. package/dist/extension_manager.js +3 -6
  28. package/dist/extension_manager.js.map +1 -1
  29. package/dist/ir.d.ts +0 -4
  30. package/dist/lowering.d.ts +14 -5
  31. package/dist/lowering.js +417 -66
  32. package/dist/lowering.js.map +1 -1
  33. package/dist/module_loader.d.ts +2 -2
  34. package/dist/module_loader.js +23 -20
  35. package/dist/module_loader.js.map +1 -1
  36. package/dist/optimizer.js +1 -1
  37. package/dist/optimizer.js.map +1 -1
  38. package/dist/scaffold.d.ts +2 -2
  39. package/dist/scaffold.js +319 -315
  40. package/dist/scaffold.js.map +1 -1
  41. package/dist/source_map.js.map +1 -0
  42. package/dist/test.js.map +1 -0
  43. package/dist/test_typechecker.d.ts +5 -0
  44. package/dist/test_typechecker.js +126 -0
  45. package/dist/test_typechecker.js.map +1 -0
  46. package/dist/typechecker.d.ts +0 -5
  47. package/dist/typechecker.js +13 -68
  48. package/dist/typechecker.js.map +1 -1
  49. package/dist/verifier.d.ts +1 -5
  50. package/dist/verifier.js +35 -140
  51. package/dist/verifier.js.map +1 -1
  52. package/package.json +52 -62
  53. package/src/algorithm_catalog.ts +345 -345
  54. package/src/ast.d.ts +244 -0
  55. package/src/ast.ts +334 -334
  56. package/src/cli.ts +624 -98
  57. package/src/emit_batch.ts +140 -140
  58. package/src/emit_capability.ts +436 -617
  59. package/src/emit_composition.ts +196 -229
  60. package/src/emit_deploy.ts +190 -190
  61. package/src/emit_events.ts +307 -377
  62. package/src/emit_extras.ts +240 -240
  63. package/src/emit_full.ts +309 -475
  64. package/src/emit_maintenance.ts +459 -459
  65. package/src/emit_runtime.ts +730 -17
  66. package/src/emit_sourcemap.ts +140 -140
  67. package/src/emit_tests.ts +205 -246
  68. package/src/emit_websocket.ts +229 -229
  69. package/src/emitter.ts +578 -642
  70. package/src/extension_manager.ts +187 -189
  71. package/src/formatter.ts +297 -297
  72. package/src/index.ts +88 -88
  73. package/src/ir.ts +215 -216
  74. package/src/lexer.d.ts +195 -0
  75. package/src/lexer.ts +630 -630
  76. package/src/lowering.ts +556 -168
  77. package/src/module_loader.ts +114 -112
  78. package/src/optimizer.ts +196 -196
  79. package/src/parse_decls.d.ts +13 -0
  80. package/src/parse_decls.ts +409 -409
  81. package/src/parse_decls2.d.ts +13 -0
  82. package/src/parse_decls2.ts +244 -244
  83. package/src/parse_expr.d.ts +7 -0
  84. package/src/parse_expr.ts +197 -197
  85. package/src/parse_types.d.ts +6 -0
  86. package/src/parse_types.ts +54 -54
  87. package/src/parser.d.ts +10 -0
  88. package/src/parser.ts +1 -1
  89. package/src/parser_base.d.ts +19 -0
  90. package/src/parser_base.ts +57 -57
  91. package/src/parser_recovery.ts +153 -153
  92. package/src/scaffold.ts +375 -371
  93. package/src/solver.ts +330 -330
  94. package/src/typechecker.d.ts +52 -0
  95. package/src/typechecker.ts +591 -657
  96. package/src/types.d.ts +38 -0
  97. package/src/types.ts +122 -122
  98. package/src/verifier.ts +46 -152
  99. package/README.md +0 -382
  100. package/dist/commands/check.d.ts +0 -5
  101. package/dist/commands/check.js +0 -34
  102. package/dist/commands/check.js.map +0 -1
  103. package/dist/commands/compile.d.ts +0 -5
  104. package/dist/commands/compile.js +0 -215
  105. package/dist/commands/compile.js.map +0 -1
  106. package/dist/commands/debug.d.ts +0 -5
  107. package/dist/commands/debug.js +0 -59
  108. package/dist/commands/debug.js.map +0 -1
  109. package/dist/commands/diff.d.ts +0 -5
  110. package/dist/commands/diff.js +0 -125
  111. package/dist/commands/diff.js.map +0 -1
  112. package/dist/commands/fmt.d.ts +0 -5
  113. package/dist/commands/fmt.js +0 -49
  114. package/dist/commands/fmt.js.map +0 -1
  115. package/dist/commands/init.d.ts +0 -5
  116. package/dist/commands/init.js +0 -96
  117. package/dist/commands/init.js.map +0 -1
  118. package/dist/commands/ir.d.ts +0 -5
  119. package/dist/commands/ir.js +0 -27
  120. package/dist/commands/ir.js.map +0 -1
  121. package/dist/commands/lex.d.ts +0 -5
  122. package/dist/commands/lex.js +0 -21
  123. package/dist/commands/lex.js.map +0 -1
  124. package/dist/commands/parse.d.ts +0 -5
  125. package/dist/commands/parse.js +0 -30
  126. package/dist/commands/parse.js.map +0 -1
  127. package/dist/commands/test.d.ts +0 -5
  128. package/dist/commands/test.js +0 -61
  129. package/dist/commands/test.js.map +0 -1
  130. package/dist/commands/verify_determinism.d.ts +0 -5
  131. package/dist/commands/verify_determinism.js +0 -64
  132. package/dist/commands/verify_determinism.js.map +0 -1
  133. package/dist/commands/watch.d.ts +0 -5
  134. package/dist/commands/watch.js +0 -50
  135. package/dist/commands/watch.js.map +0 -1
  136. package/dist/emit_auth.d.ts +0 -18
  137. package/dist/emit_auth.js +0 -507
  138. package/dist/emit_auth.js.map +0 -1
  139. package/dist/emit_database.d.ts +0 -7
  140. package/dist/emit_database.js +0 -74
  141. package/dist/emit_database.js.map +0 -1
  142. package/dist/emit_index.d.ts +0 -6
  143. package/dist/emit_index.js +0 -202
  144. package/dist/emit_index.js.map +0 -1
  145. package/dist/emit_models.d.ts +0 -12
  146. package/dist/emit_models.js +0 -171
  147. package/dist/emit_models.js.map +0 -1
  148. package/dist/emit_openapi.d.ts +0 -9
  149. package/dist/emit_openapi.js +0 -308
  150. package/dist/emit_openapi.js.map +0 -1
  151. package/dist/emit_package.d.ts +0 -7
  152. package/dist/emit_package.js +0 -70
  153. package/dist/emit_package.js.map +0 -1
  154. package/dist/emit_router.d.ts +0 -12
  155. package/dist/emit_router.js +0 -390
  156. package/dist/emit_router.js.map +0 -1
  157. package/dist/lowering_channels.d.ts +0 -11
  158. package/dist/lowering_channels.js +0 -103
  159. package/dist/lowering_channels.js.map +0 -1
  160. package/dist/lowering_entities.d.ts +0 -11
  161. package/dist/lowering_entities.js +0 -232
  162. package/dist/lowering_entities.js.map +0 -1
  163. package/dist/lowering_helpers.d.ts +0 -13
  164. package/dist/lowering_helpers.js +0 -76
  165. package/dist/lowering_helpers.js.map +0 -1
  166. package/src/commands/check.ts +0 -33
  167. package/src/commands/compile.ts +0 -191
  168. package/src/commands/debug.ts +0 -33
  169. package/src/commands/diff.ts +0 -108
  170. package/src/commands/fmt.ts +0 -22
  171. package/src/commands/init.ts +0 -72
  172. package/src/commands/ir.ts +0 -23
  173. package/src/commands/lex.ts +0 -17
  174. package/src/commands/parse.ts +0 -24
  175. package/src/commands/test.ts +0 -36
  176. package/src/commands/verify_determinism.ts +0 -66
  177. package/src/commands/watch.ts +0 -25
  178. package/src/emit_auth.ts +0 -513
  179. package/src/emit_database.ts +0 -75
  180. package/src/emit_index.ts +0 -210
  181. package/src/emit_models.ts +0 -176
  182. package/src/emit_openapi.ts +0 -318
  183. package/src/emit_package.ts +0 -69
  184. package/src/emit_router.ts +0 -409
  185. package/src/lowering_channels.ts +0 -108
  186. package/src/lowering_entities.ts +0 -258
  187. package/src/lowering_helpers.ts +0 -75
@@ -1 +1 @@
1
- {"version":3,"file":"emit_capability.js","sourceRoot":"","sources":["../src/emit_capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emit_capability.js","sourceRoot":"","sources":["../src/emit_capability.ts"],"names":[],"mappings":"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"}
@@ -56,31 +56,7 @@ function emitPipelineBody(method, indent = " ") {
56
56
  lines.push(`${indent} // on_error: ignore — log only`);
57
57
  }
58
58
  else if (p.on_error.action === "retry") {
59
- // on_error: retry re-run the entire pipeline with exponential backoff.
60
- // Wraps the pipeline steps in a retry loop. The outer try/catch feeds __err here.
61
- lines.push(`${indent} // on_error: retry with exponential backoff`);
62
- lines.push(`${indent} const __maxAttempts = ${method.retry?.max_attempts ?? 3};`);
63
- lines.push(`${indent} const __backoffMs = ${method.retry?.interval_ms ?? 1000};`);
64
- lines.push(`${indent} let __lastErr = __err;`);
65
- lines.push(`${indent} for (let __attempt = 1; __attempt <= __maxAttempts; __attempt++) {`);
66
- lines.push(`${indent} await new Promise(r => setTimeout(r, __backoffMs * Math.pow(2, __attempt - 1)));`);
67
- lines.push(`${indent} try {`);
68
- // Re-emit all pipeline steps inside the retry loop
69
- for (const step of p.steps) {
70
- const callExpr = generateStepCall(step);
71
- if (step.bind_as) {
72
- lines.push(`${indent} __pipeline_results["${step.bind_as}"] = await ${callExpr};`);
73
- }
74
- else {
75
- lines.push(`${indent} await ${callExpr};`);
76
- }
77
- }
78
- lines.push(`${indent} return { ok: true, value: __pipeline_results } as any; // retry succeeded`);
79
- lines.push(`${indent} } catch (__retryErr: any) {`);
80
- lines.push(`${indent} __lastErr = __retryErr;`);
81
- lines.push(`${indent} }`);
82
- lines.push(`${indent} }`);
83
- lines.push(`${indent} return { ok: false, error: { code: "PIPELINE_RETRY_EXHAUSTED", message: __lastErr.message, attempts: __maxAttempts } } as any;`);
59
+ lines.push(`${indent} // on_error: retry not yet supported in inline emission`);
84
60
  }
85
61
  }
86
62
  else {
@@ -118,19 +94,9 @@ function emitParallelPipeline(method, indent) {
118
94
  return lines.join("\n");
119
95
  }
120
96
  function generateStepCall(step) {
121
- // Substitute any arg that references a previous step's bind_as result
122
- // e.g. if a prior step bound its result as "payment", an arg of "payment"
123
- // becomes __pipeline_results["payment"]
97
+ // Replace any args that reference previous bindings with __pipeline_results
124
98
  const args = step.call_args.map(arg => {
125
- // Simple identifier that looks like a binding reference
126
- if (/^\w+$/.test(arg.trim())) {
127
- return `(__pipeline_results["${arg.trim()}"] ?? ${arg.trim()})`;
128
- }
129
- // Dotted path like "payment.id" — resolve the root from pipeline results
130
- const dotMatch = arg.trim().match(/^(\w+)(\..+)$/);
131
- if (dotMatch) {
132
- return `(__pipeline_results["${dotMatch[1]}"] as any)${dotMatch[2]} ?? undefined`;
133
- }
99
+ // If arg looks like an identifier path, check if it might be a binding ref
134
100
  return arg;
135
101
  });
136
102
  return `${step.call_name}(${args.join(", ")})`;
@@ -1 +1 @@
1
- {"version":3,"file":"emit_composition.js","sourceRoot":"","sources":["../src/emit_composition.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,2DAAsD;AAEtD,kLAAkL;AAElL;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,MAAmB,EAAE,SAAiB,MAAM;IAC3E,IAAI,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE1B,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC,KAAK,CAAC,MAAM,sBAAsB,CAAC,CAAC;IAC1E,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,8FAA8F,CAAC,CAAC;IACpH,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yDAAyD,CAAC,CAAC;IAC/E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC;IAE7B,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yBAAyB,IAAI,CAAC,OAAO,cAAc,QAAQ,GAAG,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,WAAW,QAAQ,GAAG,CAAC,CAAC;QAC9C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,wCAAwC,IAAI,CAAC,SAAS,uBAAuB,CAAC,CAAC;QACnG,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,mDAAmD,MAAM,CAAC,IAAI,aAAa,IAAI,CAAC,SAAS,OAAO,CAAC,CAAC;IACxH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,0DAA0D,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,wBAAwB,CAAC,CAAC;IAE9C,gBAAgB;IAChB,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,0DAA0D,CAAC,CAAC;YAChF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,0DAA0D,CAAC,CAAC;YAChF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yDAAyD,CAAC,CAAC;YAC/E,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,YAAY,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YACtE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,oCAAoC,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,WAAW,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,oBAAoB,CAAC,CAAC;QACnF,CAAC;aAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,oCAAoC,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACzC,yEAAyE;YACzE,kFAAkF;YAClF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,+CAA+C,CAAC,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,2BAA2B,MAAM,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,GAAG,CAAC,CAAC;YACnF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yBAAyB,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI,GAAG,CAAC,CAAC;YACnF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,0BAA0B,CAAC,CAAC;YAChD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,sEAAsE,CAAC,CAAC;YAC5F,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,sFAAsF,CAAC,CAAC;YAC5G,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,WAAW,CAAC,CAAC;YACjC,mDAAmD;YACnD,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,6BAA6B,IAAI,CAAC,OAAO,cAAc,QAAQ,GAAG,CAAC,CAAC;gBAC1F,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,eAAe,QAAQ,GAAG,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,iFAAiF,CAAC,CAAC;YACvG,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,iCAAiC,CAAC,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,+BAA+B,CAAC,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,kIAAkI,CAAC,CAAC;QAC1J,CAAC;IACH,CAAC;SAAM,CAAC;QACN,6BAA6B;QAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yDAAyD,CAAC,CAAC;QAC/E,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,0DAA0D,CAAC,CAAC;QAChF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yDAAyD,CAAC,CAAC;QAC/E,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,2CAA2C,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC;IACnF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,+CAA+C,MAAM,CAAC,IAAI,2CAA2C,CAAC,CAAC;IAC3H,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,4FAA4F,CAAC,CAAC;IAClH,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAnFD,4CAmFC;AAED,SAAS,oBAAoB,CAAC,MAAmB,EAAE,MAAc;IAC/D,IAAI,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE1B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC,KAAK,CAAC,MAAM,oBAAoB,CAAC,CAAC;IACxE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,yCAAyC,CAAC,CAAC;IAE/D,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,uDAAuD,MAAM,CAAC,IAAI,cAAc,CAAC,CAAC,KAAK,CAAC,MAAM,OAAO,CAAC,CAAC;IAC3H,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,iDAAiD,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,wBAAwB,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,wDAAwD,MAAM,CAAC,IAAI,2CAA2C,CAAC,CAAC;IACpI,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,4FAA4F,CAAC,CAAC;IAClH,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAuB;IAC/C,sEAAsE;IACtE,0EAA0E;IAC1E,wCAAwC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACpC,wDAAwD;QACxD,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC7B,OAAO,wBAAwB,GAAG,CAAC,IAAI,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC;QAClE,CAAC;QACD,yEAAyE;QACzE,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,wBAAwB,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC;QACpF,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACjD,CAAC;AAED,gLAAgL;AAEhL;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,MAAmB,EAAE,SAAiB,MAAM;IAC5E,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAEjC,MAAM,IAAI,GAAG,IAAA,mCAAe,EAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,GAAG,MAAM,gFAAgF,MAAM,CAAC,SAAS,CAAC,YAAY,+BAA+B,CAAC;IAC/J,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,iBAAiB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC;IAE7B,+CAA+C;IAC/C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,iCAAiC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,sBAAsB,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7E,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,gDAAgD,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC;IACtF,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,gDAAgD,CAAC,CAAC;IACtE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,wBAAwB,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,gDAAgD,IAAI,CAAC,IAAI,2CAA2C,CAAC,CAAC;IAC1H,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,6FAA6F,CAAC,CAAC;IACnH,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAnCD,8CAmCC;AAED,SAAS,QAAQ,CAAC,CAAS;IACzB,OAAO,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,sLAAsL;AAEtL;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,cAA2B;IAC5D,IAAI,cAAc,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IACpE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAA,mCAAe,EAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,UAAU,mBAAmB,CAAC,CAAC;QAC/F,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAlBD,gDAkBC;AAED,wLAAwL;AAExL,SAAgB,qBAAqB,CAAC,MAAmB;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACjC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACnC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,MAAM,CAAC,SAAS;oBAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAVD,sDAUC"}
1
+ {"version":3,"file":"emit_composition.js","sourceRoot":"","sources":["../src/emit_composition.ts"],"names":[],"mappings":"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"}
@@ -9,182 +9,182 @@ function toSnakeCase(s) {
9
9
  return s.replace(/([a-z])([A-Z])/g, "$1_$2").toLowerCase();
10
10
  }
11
11
  function emitDockerfile(system) {
12
- return `# Generated by BoneScript compiler.
13
- FROM node:20-alpine AS builder
14
- WORKDIR /app
15
- COPY package*.json ./
16
- RUN npm ci --only=production
17
- COPY . .
18
- RUN npm run build
19
-
20
- FROM node:20-alpine AS runtime
21
- WORKDIR /app
22
- ENV NODE_ENV=production
23
- COPY --from=builder /app/dist ./dist
24
- COPY --from=builder /app/node_modules ./node_modules
25
- COPY --from=builder /app/package.json ./
26
-
27
- # Health check
28
- HEALTHCHECK --interval=10s --timeout=5s --start-period=30s --retries=3 \\
29
- CMD wget -qO- http://localhost:3000/health/live || exit 1
30
-
31
- EXPOSE 3000
32
- USER node
33
- CMD ["node", "dist/index.js"]
12
+ return `# Generated by BoneScript compiler.
13
+ FROM node:20-alpine AS builder
14
+ WORKDIR /app
15
+ COPY package*.json ./
16
+ RUN npm ci --only=production
17
+ COPY . .
18
+ RUN npm run build
19
+
20
+ FROM node:20-alpine AS runtime
21
+ WORKDIR /app
22
+ ENV NODE_ENV=production
23
+ COPY --from=builder /app/dist ./dist
24
+ COPY --from=builder /app/node_modules ./node_modules
25
+ COPY --from=builder /app/package.json ./
26
+
27
+ # Health check
28
+ HEALTHCHECK --interval=10s --timeout=5s --start-period=30s --retries=3 \\
29
+ CMD wget -qO- http://localhost:3000/health/live || exit 1
30
+
31
+ EXPOSE 3000
32
+ USER node
33
+ CMD ["node", "dist/index.js"]
34
34
  `;
35
35
  }
36
36
  exports.emitDockerfile = emitDockerfile;
37
37
  function emitDockerignore() {
38
- return `node_modules
39
- dist
40
- .env
41
- *.log
42
- .git
43
- *.bone
44
- *.bone.map
38
+ return `node_modules
39
+ dist
40
+ .env
41
+ *.log
42
+ .git
43
+ *.bone
44
+ *.bone.map
45
45
  `;
46
46
  }
47
47
  exports.emitDockerignore = emitDockerignore;
48
48
  function emitK8sDeployment(system) {
49
49
  const name = toSnakeCase(system.name).replace(/_/g, "-");
50
- return `# Generated by BoneScript compiler.
51
- apiVersion: apps/v1
52
- kind: Deployment
53
- metadata:
54
- name: ${name}
55
- labels:
56
- app: ${name}
57
- version: "${system.version}"
58
- spec:
59
- replicas: 2
60
- selector:
61
- matchLabels:
62
- app: ${name}
63
- template:
64
- metadata:
65
- labels:
66
- app: ${name}
67
- spec:
68
- containers:
69
- - name: ${name}
70
- image: ${name}:${system.version}
71
- ports:
72
- - containerPort: 3000
73
- env:
74
- - name: NODE_ENV
75
- value: production
76
- - name: PORT
77
- value: "3000"
78
- - name: DATABASE_URL
79
- valueFrom:
80
- secretKeyRef:
81
- name: ${name}-secrets
82
- key: database-url
83
- - name: JWT_SECRET
84
- valueFrom:
85
- secretKeyRef:
86
- name: ${name}-secrets
87
- key: jwt-secret
88
- - name: REDIS_URL
89
- valueFrom:
90
- secretKeyRef:
91
- name: ${name}-secrets
92
- key: redis-url
93
- optional: true
94
- livenessProbe:
95
- httpGet:
96
- path: /health/live
97
- port: 3000
98
- initialDelaySeconds: 10
99
- periodSeconds: 10
100
- readinessProbe:
101
- httpGet:
102
- path: /health/ready
103
- port: 3000
104
- initialDelaySeconds: 5
105
- periodSeconds: 5
106
- resources:
107
- requests:
108
- memory: "128Mi"
109
- cpu: "100m"
110
- limits:
111
- memory: "512Mi"
112
- cpu: "500m"
113
- ---
114
- apiVersion: v1
115
- kind: Service
116
- metadata:
117
- name: ${name}
118
- spec:
119
- selector:
120
- app: ${name}
121
- ports:
122
- - port: 80
123
- targetPort: 3000
124
- type: ClusterIP
50
+ return `# Generated by BoneScript compiler.
51
+ apiVersion: apps/v1
52
+ kind: Deployment
53
+ metadata:
54
+ name: ${name}
55
+ labels:
56
+ app: ${name}
57
+ version: "${system.version}"
58
+ spec:
59
+ replicas: 2
60
+ selector:
61
+ matchLabels:
62
+ app: ${name}
63
+ template:
64
+ metadata:
65
+ labels:
66
+ app: ${name}
67
+ spec:
68
+ containers:
69
+ - name: ${name}
70
+ image: ${name}:${system.version}
71
+ ports:
72
+ - containerPort: 3000
73
+ env:
74
+ - name: NODE_ENV
75
+ value: production
76
+ - name: PORT
77
+ value: "3000"
78
+ - name: DATABASE_URL
79
+ valueFrom:
80
+ secretKeyRef:
81
+ name: ${name}-secrets
82
+ key: database-url
83
+ - name: JWT_SECRET
84
+ valueFrom:
85
+ secretKeyRef:
86
+ name: ${name}-secrets
87
+ key: jwt-secret
88
+ - name: REDIS_URL
89
+ valueFrom:
90
+ secretKeyRef:
91
+ name: ${name}-secrets
92
+ key: redis-url
93
+ optional: true
94
+ livenessProbe:
95
+ httpGet:
96
+ path: /health/live
97
+ port: 3000
98
+ initialDelaySeconds: 10
99
+ periodSeconds: 10
100
+ readinessProbe:
101
+ httpGet:
102
+ path: /health/ready
103
+ port: 3000
104
+ initialDelaySeconds: 5
105
+ periodSeconds: 5
106
+ resources:
107
+ requests:
108
+ memory: "128Mi"
109
+ cpu: "100m"
110
+ limits:
111
+ memory: "512Mi"
112
+ cpu: "500m"
113
+ ---
114
+ apiVersion: v1
115
+ kind: Service
116
+ metadata:
117
+ name: ${name}
118
+ spec:
119
+ selector:
120
+ app: ${name}
121
+ ports:
122
+ - port: 80
123
+ targetPort: 3000
124
+ type: ClusterIP
125
125
  `;
126
126
  }
127
127
  exports.emitK8sDeployment = emitK8sDeployment;
128
128
  function emitGithubActions(system) {
129
129
  const name = toSnakeCase(system.name).replace(/_/g, "-");
130
- return `# Generated by BoneScript compiler.
131
- name: CI/CD
132
-
133
- on:
134
- push:
135
- branches: [main]
136
- pull_request:
137
- branches: [main]
138
-
139
- jobs:
140
- test:
141
- runs-on: ubuntu-latest
142
- services:
143
- postgres:
144
- image: postgres:16
145
- env:
146
- POSTGRES_DB: ${toSnakeCase(system.name)}_test
147
- POSTGRES_USER: postgres
148
- POSTGRES_PASSWORD: postgres
149
- ports:
150
- - 5432:5432
151
- options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
152
-
153
- steps:
154
- - uses: actions/checkout@v4
155
- - uses: actions/setup-node@v4
156
- with:
157
- node-version: 20
158
- cache: npm
159
-
160
- - name: Install dependencies
161
- run: npm ci
162
-
163
- - name: Type check
164
- run: npx tsc --noEmit
165
-
166
- - name: Run migrations
167
- run: npm run migrate
168
- env:
169
- DATABASE_URL: postgresql://postgres:postgres@localhost:5432/${toSnakeCase(system.name)}_test
170
-
171
- - name: Run tests
172
- run: npx ts-node src/tests.ts
173
- env:
174
- DATABASE_URL: postgresql://postgres:postgres@localhost:5432/${toSnakeCase(system.name)}_test
175
- JWT_SECRET: test-secret
176
- TEST_BASE_URL: http://localhost:3000
177
-
178
- build:
179
- needs: test
180
- runs-on: ubuntu-latest
181
- if: github.ref == 'refs/heads/main'
182
- steps:
183
- - uses: actions/checkout@v4
184
- - name: Build Docker image
185
- run: docker build -t ${name}:\${{ github.sha }} .
186
- - name: Tag as latest
187
- run: docker tag ${name}:\${{ github.sha }} ${name}:latest
130
+ return `# Generated by BoneScript compiler.
131
+ name: CI/CD
132
+
133
+ on:
134
+ push:
135
+ branches: [main]
136
+ pull_request:
137
+ branches: [main]
138
+
139
+ jobs:
140
+ test:
141
+ runs-on: ubuntu-latest
142
+ services:
143
+ postgres:
144
+ image: postgres:16
145
+ env:
146
+ POSTGRES_DB: ${toSnakeCase(system.name)}_test
147
+ POSTGRES_USER: postgres
148
+ POSTGRES_PASSWORD: postgres
149
+ ports:
150
+ - 5432:5432
151
+ options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
152
+
153
+ steps:
154
+ - uses: actions/checkout@v4
155
+ - uses: actions/setup-node@v4
156
+ with:
157
+ node-version: 20
158
+ cache: npm
159
+
160
+ - name: Install dependencies
161
+ run: npm ci
162
+
163
+ - name: Type check
164
+ run: npx tsc --noEmit
165
+
166
+ - name: Run migrations
167
+ run: npm run migrate
168
+ env:
169
+ DATABASE_URL: postgresql://postgres:postgres@localhost:5432/${toSnakeCase(system.name)}_test
170
+
171
+ - name: Run tests
172
+ run: npx ts-node src/tests.ts
173
+ env:
174
+ DATABASE_URL: postgresql://postgres:postgres@localhost:5432/${toSnakeCase(system.name)}_test
175
+ JWT_SECRET: test-secret
176
+ TEST_BASE_URL: http://localhost:3000
177
+
178
+ build:
179
+ needs: test
180
+ runs-on: ubuntu-latest
181
+ if: github.ref == 'refs/heads/main'
182
+ steps:
183
+ - uses: actions/checkout@v4
184
+ - name: Build Docker image
185
+ run: docker build -t ${name}:\${{ github.sha }} .
186
+ - name: Tag as latest
187
+ run: docker tag ${name}:\${{ github.sha }} ${name}:latest
188
188
  `;
189
189
  }
190
190
  exports.emitGithubActions = emitGithubActions;
@@ -12,4 +12,3 @@
12
12
  import * as IR from "./ir";
13
13
  export declare function emitOutboxSchema(): string;
14
14
  export declare function emitDurableEventBus(system: IR.IRSystem): string;
15
- export declare function emitTypedEventPublishers(system: IR.IRSystem): string;