@voxgig/sdkgen 4.21.0 → 4.23.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 (724) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/dist/action/action.js +0 -65
  3. package/dist/action/action.js.map +1 -1
  4. package/dist/action/check.js +0 -88
  5. package/dist/action/check.js.map +1 -1
  6. package/dist/action/dispatch.js +0 -27
  7. package/dist/action/dispatch.js.map +1 -1
  8. package/dist/action/doctor.d.ts +1 -0
  9. package/dist/action/doctor.js +55 -321
  10. package/dist/action/doctor.js.map +1 -1
  11. package/dist/action/edition.js +1 -87
  12. package/dist/action/edition.js.map +1 -1
  13. package/dist/action/feature.js +0 -48
  14. package/dist/action/feature.js.map +1 -1
  15. package/dist/action/kind.js +0 -132
  16. package/dist/action/kind.js.map +1 -1
  17. package/dist/action/package.js +0 -221
  18. package/dist/action/package.js.map +1 -1
  19. package/dist/action/resolve.js +0 -145
  20. package/dist/action/resolve.js.map +1 -1
  21. package/dist/action/target.js +0 -177
  22. package/dist/action/target.js.map +1 -1
  23. package/dist/cmp/AgentGuide.js +0 -7
  24. package/dist/cmp/AgentGuide.js.map +1 -1
  25. package/dist/cmp/AgentGuideContent.js +0 -24
  26. package/dist/cmp/AgentGuideContent.js.map +1 -1
  27. package/dist/cmp/AgentGuideTop.js +0 -7
  28. package/dist/cmp/AgentGuideTop.js.map +1 -1
  29. package/dist/cmp/Changelog.js +0 -14
  30. package/dist/cmp/Changelog.js.map +1 -1
  31. package/dist/cmp/Deploy.js +1 -31
  32. package/dist/cmp/Deploy.js.map +1 -1
  33. package/dist/cmp/Entity.js +0 -4
  34. package/dist/cmp/Entity.js.map +1 -1
  35. package/dist/cmp/ExternalTarget.js +0 -36
  36. package/dist/cmp/ExternalTarget.js.map +1 -1
  37. package/dist/cmp/Feature.js +0 -14
  38. package/dist/cmp/Feature.js.map +1 -1
  39. package/dist/cmp/FeatureDocs.js +0 -25
  40. package/dist/cmp/FeatureDocs.js.map +1 -1
  41. package/dist/cmp/PublishWorkflow.js +0 -60
  42. package/dist/cmp/PublishWorkflow.js.map +1 -1
  43. package/dist/cmp/ReadmeErrors.js +0 -2
  44. package/dist/cmp/ReadmeErrors.js.map +1 -1
  45. package/dist/cmp/ReadmeExplanation.js +0 -5
  46. package/dist/cmp/ReadmeExplanation.js.map +1 -1
  47. package/dist/cmp/ReadmeFeatures.js +0 -10
  48. package/dist/cmp/ReadmeFeatures.js.map +1 -1
  49. package/dist/cmp/ReadmeRefFeatures.js +0 -19
  50. package/dist/cmp/ReadmeRefFeatures.js.map +1 -1
  51. package/dist/cmp/ReadmeStation.js +0 -19
  52. package/dist/cmp/ReadmeStation.js.map +1 -1
  53. package/dist/cmp/ReadmeTop.js +1 -81
  54. package/dist/cmp/ReadmeTop.js.map +1 -1
  55. package/dist/cmp/ReadmeUnions.js +1 -16
  56. package/dist/cmp/ReadmeUnions.js.map +1 -1
  57. package/dist/cmp/Registered.js +0 -30
  58. package/dist/cmp/Registered.js.map +1 -1
  59. package/dist/cmp/Security.js +0 -2
  60. package/dist/cmp/Security.js.map +1 -1
  61. package/dist/cmp/Test.js +3 -2
  62. package/dist/cmp/Test.js.map +1 -1
  63. package/dist/cmp/TestControl.js +0 -25
  64. package/dist/cmp/TestControl.js.map +1 -1
  65. package/dist/helpers/applicability.js +0 -60
  66. package/dist/helpers/applicability.js.map +1 -1
  67. package/dist/helpers/buildIdNames.d.ts +3 -1
  68. package/dist/helpers/buildIdNames.js +15 -19
  69. package/dist/helpers/buildIdNames.js.map +1 -1
  70. package/dist/helpers/canonSpec.js +2 -116
  71. package/dist/helpers/canonSpec.js.map +1 -1
  72. package/dist/helpers/canonType.js +0 -87
  73. package/dist/helpers/canonType.js.map +1 -1
  74. package/dist/helpers/collectDeps.js +0 -27
  75. package/dist/helpers/collectDeps.js.map +1 -1
  76. package/dist/helpers/definition.js +0 -29
  77. package/dist/helpers/definition.js.map +1 -1
  78. package/dist/helpers/dryrun.js +0 -8
  79. package/dist/helpers/dryrun.js.map +1 -1
  80. package/dist/helpers/featureSource.js +0 -145
  81. package/dist/helpers/featureSource.js.map +1 -1
  82. package/dist/helpers/getMatchEntries.js +2 -6
  83. package/dist/helpers/getMatchEntries.js.map +1 -1
  84. package/dist/helpers/junk.js +9 -85
  85. package/dist/helpers/junk.js.map +1 -1
  86. package/dist/helpers/manifest.js +0 -138
  87. package/dist/helpers/manifest.js.map +1 -1
  88. package/dist/helpers/modelNames.js +5 -79
  89. package/dist/helpers/modelNames.js.map +1 -1
  90. package/dist/helpers/modelcheck.js +0 -106
  91. package/dist/helpers/modelcheck.js.map +1 -1
  92. package/dist/helpers/naming.d.ts +0 -1
  93. package/dist/helpers/naming.js +0 -303
  94. package/dist/helpers/naming.js.map +1 -1
  95. package/dist/helpers/opExample.js +0 -51
  96. package/dist/helpers/opExample.js.map +1 -1
  97. package/dist/helpers/opShape.js +33 -231
  98. package/dist/helpers/opShape.js.map +1 -1
  99. package/dist/helpers/optspec.js +0 -77
  100. package/dist/helpers/optspec.js.map +1 -1
  101. package/dist/helpers/packageMeta.js +1 -200
  102. package/dist/helpers/packageMeta.js.map +1 -1
  103. package/dist/helpers/pointPath.js +5 -65
  104. package/dist/helpers/pointPath.js.map +1 -1
  105. package/dist/helpers/resolved.d.ts +6 -0
  106. package/dist/helpers/resolved.js +22 -0
  107. package/dist/helpers/resolved.js.map +1 -0
  108. package/dist/helpers/semver.js +0 -61
  109. package/dist/helpers/semver.js.map +1 -1
  110. package/dist/helpers/serverVars.js +0 -44
  111. package/dist/helpers/serverVars.js.map +1 -1
  112. package/dist/helpers/shipped.js +0 -14
  113. package/dist/helpers/shipped.js.map +1 -1
  114. package/dist/helpers/station.js +0 -32
  115. package/dist/helpers/station.js.map +1 -1
  116. package/dist/helpers/stdrep.js +0 -26
  117. package/dist/helpers/stdrep.js.map +1 -1
  118. package/dist/helpers/testPolicy.js +0 -4
  119. package/dist/helpers/testPolicy.js.map +1 -1
  120. package/dist/sdkgen.d.ts +3 -2
  121. package/dist/sdkgen.js +15 -242
  122. package/dist/sdkgen.js.map +1 -1
  123. package/dist/testkit.js +6 -266
  124. package/dist/testkit.js.map +1 -1
  125. package/dist/tsconfig.tsbuildinfo +1 -1
  126. package/dist/utility.js +15 -250
  127. package/dist/utility.js.map +1 -1
  128. package/model/sdkgen.aon +12 -489
  129. package/package.json +4 -4
  130. package/project/.sdk/model/feature/audit.aon +0 -7
  131. package/project/.sdk/model/feature/cache.aon +0 -7
  132. package/project/.sdk/model/feature/clienttrack.aon +0 -7
  133. package/project/.sdk/model/feature/cost.aon +0 -13
  134. package/project/.sdk/model/feature/debug.aon +0 -7
  135. package/project/.sdk/model/feature/idempotency.aon +0 -7
  136. package/project/.sdk/model/feature/log.aon +0 -7
  137. package/project/.sdk/model/feature/metrics.aon +0 -7
  138. package/project/.sdk/model/feature/netsim.aon +0 -10
  139. package/project/.sdk/model/feature/paging.aon +0 -7
  140. package/project/.sdk/model/feature/proxy.aon +0 -7
  141. package/project/.sdk/model/feature/ratelimit.aon +0 -7
  142. package/project/.sdk/model/feature/retry.aon +0 -7
  143. package/project/.sdk/model/feature/secrets.aon +0 -482
  144. package/project/.sdk/model/feature/streaming.aon +0 -7
  145. package/project/.sdk/model/feature/telemetry.aon +0 -7
  146. package/project/.sdk/model/feature/test.aon +1 -8
  147. package/project/.sdk/model/feature/timeout.aon +0 -7
  148. package/project/.sdk/model/feature/validate.aon +0 -32
  149. package/project/.sdk/model/target/c.aon +0 -41
  150. package/project/.sdk/model/target/clojure.aon +0 -36
  151. package/project/.sdk/model/target/cpp.aon +0 -42
  152. package/project/.sdk/model/target/csharp.aon +0 -26
  153. package/project/.sdk/model/target/elixir.aon +0 -22
  154. package/project/.sdk/model/target/go-cli.aon +0 -30
  155. package/project/.sdk/model/target/go-mcp.aon +0 -21
  156. package/project/.sdk/model/target/go.aon +0 -9
  157. package/project/.sdk/model/target/java.aon +0 -29
  158. package/project/.sdk/model/target/js.aon +2 -21
  159. package/project/.sdk/model/target/kotlin.aon +0 -31
  160. package/project/.sdk/model/target/lua.aon +0 -32
  161. package/project/.sdk/model/target/ocaml.aon +0 -64
  162. package/project/.sdk/model/target/perl.aon +0 -20
  163. package/project/.sdk/model/target/php.aon +0 -17
  164. package/project/.sdk/model/target/py-data.aon +0 -33
  165. package/project/.sdk/model/target/py.aon +0 -17
  166. package/project/.sdk/model/target/rb.aon +0 -17
  167. package/project/.sdk/model/target/rust.aon +0 -25
  168. package/project/.sdk/model/target/scala.aon +0 -74
  169. package/project/.sdk/model/target/swift.aon +0 -41
  170. package/project/.sdk/model/target/ts.aon +3 -25
  171. package/project/.sdk/model/target/zig.aon +0 -50
  172. package/project/.sdk/src/cmp/c/Config_c.ts +0 -100
  173. package/project/.sdk/src/cmp/c/EntityTypes_c.ts +4 -40
  174. package/project/.sdk/src/cmp/c/Main_c.ts +0 -44
  175. package/project/.sdk/src/cmp/c/Package_c.ts +0 -14
  176. package/project/.sdk/src/cmp/c/PrepareAuth_c.ts +0 -85
  177. package/project/.sdk/src/cmp/c/ReadmeEntity_c.ts +3 -3
  178. package/project/.sdk/src/cmp/c/ReadmeExamplesTest_c.ts +0 -20
  179. package/project/.sdk/src/cmp/c/ReadmeModel_c.ts +3 -3
  180. package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +7 -10
  181. package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +0 -2
  182. package/project/.sdk/src/cmp/c/Schema_c.ts +1 -20
  183. package/project/.sdk/src/cmp/c/TestDirect_c.ts +12 -12
  184. package/project/.sdk/src/cmp/c/utility_c.ts +0 -47
  185. package/project/.sdk/src/cmp/clojure/Config_clojure.ts +0 -63
  186. package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +0 -1
  187. package/project/.sdk/src/cmp/clojure/Main_clojure.ts +0 -41
  188. package/project/.sdk/src/cmp/clojure/Package_clojure.ts +0 -20
  189. package/project/.sdk/src/cmp/clojure/PrepareAuth_clojure.ts +0 -130
  190. package/project/.sdk/src/cmp/clojure/ReadmeEntity_clojure.ts +3 -3
  191. package/project/.sdk/src/cmp/clojure/ReadmeExamplesTest_clojure.ts +0 -16
  192. package/project/.sdk/src/cmp/clojure/ReadmeModel_clojure.ts +3 -3
  193. package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +7 -10
  194. package/project/.sdk/src/cmp/clojure/Schema_clojure.ts +1 -21
  195. package/project/.sdk/src/cmp/clojure/TestDirect_clojure.ts +0 -6
  196. package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +0 -10
  197. package/project/.sdk/src/cmp/clojure/Test_clojure.ts +0 -8
  198. package/project/.sdk/src/cmp/clojure/featureextra_clojure.ts +0 -34
  199. package/project/.sdk/src/cmp/clojure/utility_clojure.ts +0 -47
  200. package/project/.sdk/src/cmp/cpp/Config_cpp.ts +0 -109
  201. package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +3 -39
  202. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +0 -47
  203. package/project/.sdk/src/cmp/cpp/Package_cpp.ts +0 -14
  204. package/project/.sdk/src/cmp/cpp/PrepareAuth_cpp.ts +0 -125
  205. package/project/.sdk/src/cmp/cpp/ReadmeEntity_cpp.ts +3 -3
  206. package/project/.sdk/src/cmp/cpp/ReadmeExamplesTest_cpp.ts +0 -19
  207. package/project/.sdk/src/cmp/cpp/ReadmeModel_cpp.ts +3 -3
  208. package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +0 -7
  209. package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +7 -10
  210. package/project/.sdk/src/cmp/cpp/Schema_cpp.ts +1 -22
  211. package/project/.sdk/src/cmp/cpp/TestDirect_cpp.ts +14 -14
  212. package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +51 -53
  213. package/project/.sdk/src/cmp/cpp/Test_cpp.ts +0 -3
  214. package/project/.sdk/src/cmp/cpp/utility_cpp.ts +0 -28
  215. package/project/.sdk/src/cmp/csharp/Config_csharp.ts +0 -79
  216. package/project/.sdk/src/cmp/csharp/EntityOperation_csharp.ts +0 -3
  217. package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +4 -54
  218. package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +0 -1
  219. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +0 -24
  220. package/project/.sdk/src/cmp/csharp/Package_csharp.ts +0 -20
  221. package/project/.sdk/src/cmp/csharp/PrepareAuth_csharp.ts +0 -81
  222. package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +3 -4
  223. package/project/.sdk/src/cmp/csharp/ReadmeExamplesTest_csharp.ts +0 -23
  224. package/project/.sdk/src/cmp/csharp/ReadmeModel_csharp.ts +3 -3
  225. package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +7 -10
  226. package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +0 -2
  227. package/project/.sdk/src/cmp/csharp/Schema_csharp.ts +1 -19
  228. package/project/.sdk/src/cmp/csharp/TestDirect_csharp.ts +30 -30
  229. package/project/.sdk/src/cmp/csharp/TestEntity_csharp.ts +66 -69
  230. package/project/.sdk/src/cmp/csharp/utility_csharp.ts +0 -72
  231. package/project/.sdk/src/cmp/elixir/Config_elixir.ts +0 -78
  232. package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +4 -42
  233. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +0 -40
  234. package/project/.sdk/src/cmp/elixir/Package_elixir.ts +0 -13
  235. package/project/.sdk/src/cmp/elixir/PrepareAuth_elixir.ts +0 -123
  236. package/project/.sdk/src/cmp/elixir/ReadmeEntity_elixir.ts +3 -3
  237. package/project/.sdk/src/cmp/elixir/ReadmeExamplesTest_elixir.ts +0 -19
  238. package/project/.sdk/src/cmp/elixir/ReadmeModel_elixir.ts +3 -3
  239. package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +6 -9
  240. package/project/.sdk/src/cmp/elixir/Schema_elixir.ts +1 -25
  241. package/project/.sdk/src/cmp/elixir/utility_elixir.ts +0 -34
  242. package/project/.sdk/src/cmp/go/Config_go.ts +0 -41
  243. package/project/.sdk/src/cmp/go/EntityTypes_go.ts +4 -75
  244. package/project/.sdk/src/cmp/go/Entity_go.ts +0 -5
  245. package/project/.sdk/src/cmp/go/Main_go.ts +0 -28
  246. package/project/.sdk/src/cmp/go/Package_go.ts +0 -7
  247. package/project/.sdk/src/cmp/go/PrepareAuth_go.ts +0 -64
  248. package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +3 -8
  249. package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +0 -30
  250. package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +0 -3
  251. package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +0 -7
  252. package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +3 -14
  253. package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +0 -21
  254. package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +7 -19
  255. package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +0 -9
  256. package/project/.sdk/src/cmp/go/Schema_go.ts +1 -22
  257. package/project/.sdk/src/cmp/go/TestDirect_go.ts +38 -61
  258. package/project/.sdk/src/cmp/go/TestEntity_go.ts +75 -82
  259. package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +0 -21
  260. package/project/.sdk/src/cmp/go/fragment/Main.fragment.go +0 -12
  261. package/project/.sdk/src/cmp/go/utility_go.ts +5 -75
  262. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +0 -49
  263. package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +0 -12
  264. package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +0 -36
  265. package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +0 -20
  266. package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +0 -3
  267. package/project/.sdk/src/cmp/java/Config_java.ts +0 -63
  268. package/project/.sdk/src/cmp/java/EntityTypes_java.ts +4 -54
  269. package/project/.sdk/src/cmp/java/Entity_java.ts +0 -6
  270. package/project/.sdk/src/cmp/java/Main_java.ts +0 -24
  271. package/project/.sdk/src/cmp/java/PrepareAuth_java.ts +0 -55
  272. package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +3 -4
  273. package/project/.sdk/src/cmp/java/ReadmeExamplesTest_java.ts +0 -20
  274. package/project/.sdk/src/cmp/java/ReadmeModel_java.ts +3 -3
  275. package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +0 -4
  276. package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +7 -10
  277. package/project/.sdk/src/cmp/java/ReadmeTopQuick_java.ts +0 -7
  278. package/project/.sdk/src/cmp/java/Schema_java.ts +1 -20
  279. package/project/.sdk/src/cmp/java/TestDirect_java.ts +30 -37
  280. package/project/.sdk/src/cmp/java/TestEntity_java.ts +69 -72
  281. package/project/.sdk/src/cmp/java/Test_java.ts +0 -6
  282. package/project/.sdk/src/cmp/java/utility_java.ts +0 -33
  283. package/project/.sdk/src/cmp/js/Config_js.ts +0 -46
  284. package/project/.sdk/src/cmp/js/EntityTypes_js.ts +5 -38
  285. package/project/.sdk/src/cmp/js/Main_js.ts +0 -33
  286. package/project/.sdk/src/cmp/js/Package_js.ts +2 -7
  287. package/project/.sdk/src/cmp/js/PrepareAuth_js.ts +0 -57
  288. package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +3 -12
  289. package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +0 -2
  290. package/project/.sdk/src/cmp/js/ReadmeModel_js.ts +3 -3
  291. package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +0 -15
  292. package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +7 -12
  293. package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +0 -7
  294. package/project/.sdk/src/cmp/js/Schema_js.ts +1 -22
  295. package/project/.sdk/src/cmp/js/TestDirect_js.ts +29 -43
  296. package/project/.sdk/src/cmp/js/TestEntity_js.ts +69 -82
  297. package/project/.sdk/src/cmp/js/TestLive_js.ts +12 -5
  298. package/project/.sdk/src/cmp/js/utility_js.ts +5 -63
  299. package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +0 -46
  300. package/project/.sdk/src/cmp/kotlin/EntityOperation_kotlin.ts +0 -2
  301. package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +4 -57
  302. package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +0 -4
  303. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +0 -46
  304. package/project/.sdk/src/cmp/kotlin/PrepareAuth_kotlin.ts +0 -113
  305. package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +3 -4
  306. package/project/.sdk/src/cmp/kotlin/ReadmeExamplesTest_kotlin.ts +0 -20
  307. package/project/.sdk/src/cmp/kotlin/ReadmeModel_kotlin.ts +3 -3
  308. package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +7 -10
  309. package/project/.sdk/src/cmp/kotlin/ReadmeTopQuick_kotlin.ts +0 -5
  310. package/project/.sdk/src/cmp/kotlin/Schema_kotlin.ts +1 -20
  311. package/project/.sdk/src/cmp/kotlin/TestDirect_kotlin.ts +30 -30
  312. package/project/.sdk/src/cmp/kotlin/TestEntity_kotlin.ts +67 -70
  313. package/project/.sdk/src/cmp/kotlin/Test_kotlin.ts +0 -6
  314. package/project/.sdk/src/cmp/kotlin/utility_kotlin.ts +0 -33
  315. package/project/.sdk/src/cmp/lua/Config_lua.ts +0 -56
  316. package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +5 -35
  317. package/project/.sdk/src/cmp/lua/Entity_lua.ts +0 -7
  318. package/project/.sdk/src/cmp/lua/Main_lua.ts +0 -58
  319. package/project/.sdk/src/cmp/lua/Package_lua.ts +0 -20
  320. package/project/.sdk/src/cmp/lua/PrepareAuth_lua.ts +0 -61
  321. package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +3 -11
  322. package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +0 -24
  323. package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +3 -13
  324. package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +4 -25
  325. package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +7 -17
  326. package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +0 -3
  327. package/project/.sdk/src/cmp/lua/Schema_lua.ts +1 -17
  328. package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +25 -27
  329. package/project/.sdk/src/cmp/lua/TestEntity_lua.ts +66 -65
  330. package/project/.sdk/src/cmp/lua/utility_lua.ts +0 -30
  331. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +0 -98
  332. package/project/.sdk/src/cmp/ocaml/EntityOperation_ocaml.ts +0 -6
  333. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +0 -78
  334. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +0 -13
  335. package/project/.sdk/src/cmp/ocaml/PrepareAuth_ocaml.ts +0 -145
  336. package/project/.sdk/src/cmp/ocaml/ReadmeEntity_ocaml.ts +3 -3
  337. package/project/.sdk/src/cmp/ocaml/ReadmeExamplesTest_ocaml.ts +0 -17
  338. package/project/.sdk/src/cmp/ocaml/ReadmeModel_ocaml.ts +3 -3
  339. package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +7 -10
  340. package/project/.sdk/src/cmp/ocaml/Schema_ocaml.ts +1 -24
  341. package/project/.sdk/src/cmp/ocaml/SdkError_ocaml.ts +0 -4
  342. package/project/.sdk/src/cmp/ocaml/TestEntity_ocaml.ts +0 -5
  343. package/project/.sdk/src/cmp/ocaml/utility_ocaml.ts +0 -27
  344. package/project/.sdk/src/cmp/perl/Config_perl.ts +0 -52
  345. package/project/.sdk/src/cmp/perl/Entity_perl.ts +0 -3
  346. package/project/.sdk/src/cmp/perl/Main_perl.ts +0 -33
  347. package/project/.sdk/src/cmp/perl/Package_perl.ts +0 -8
  348. package/project/.sdk/src/cmp/perl/PrepareAuth_perl.ts +0 -84
  349. package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +3 -6
  350. package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +0 -27
  351. package/project/.sdk/src/cmp/perl/ReadmeModel_perl.ts +3 -3
  352. package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +7 -10
  353. package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +0 -2
  354. package/project/.sdk/src/cmp/perl/Schema_perl.ts +1 -19
  355. package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +25 -27
  356. package/project/.sdk/src/cmp/perl/TestEntity_perl.ts +60 -59
  357. package/project/.sdk/src/cmp/perl/utility_perl.ts +0 -26
  358. package/project/.sdk/src/cmp/php/Config_php.ts +0 -76
  359. package/project/.sdk/src/cmp/php/EntityTypes_php.ts +5 -56
  360. package/project/.sdk/src/cmp/php/MainEntity_php.ts +0 -6
  361. package/project/.sdk/src/cmp/php/Main_php.ts +0 -15
  362. package/project/.sdk/src/cmp/php/PrepareAuth_php.ts +0 -73
  363. package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +3 -7
  364. package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +0 -33
  365. package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +0 -1
  366. package/project/.sdk/src/cmp/php/ReadmeModel_php.ts +3 -3
  367. package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +4 -23
  368. package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +7 -12
  369. package/project/.sdk/src/cmp/php/Schema_php.ts +1 -16
  370. package/project/.sdk/src/cmp/php/TestDirect_php.ts +25 -25
  371. package/project/.sdk/src/cmp/php/TestEntity_php.ts +66 -74
  372. package/project/.sdk/src/cmp/php/utility_php.ts +0 -22
  373. package/project/.sdk/src/cmp/py/Config_py.ts +0 -53
  374. package/project/.sdk/src/cmp/py/EntityTypes_py.ts +4 -59
  375. package/project/.sdk/src/cmp/py/Entity_py.ts +0 -16
  376. package/project/.sdk/src/cmp/py/Main_py.ts +1 -61
  377. package/project/.sdk/src/cmp/py/Package_py.ts +0 -3
  378. package/project/.sdk/src/cmp/py/PrepareAuth_py.ts +0 -69
  379. package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +3 -16
  380. package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +0 -31
  381. package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +0 -3
  382. package/project/.sdk/src/cmp/py/ReadmeModel_py.ts +3 -3
  383. package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +0 -28
  384. package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +7 -21
  385. package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +0 -14
  386. package/project/.sdk/src/cmp/py/Schema_py.ts +1 -20
  387. package/project/.sdk/src/cmp/py/TestDirect_py.ts +25 -27
  388. package/project/.sdk/src/cmp/py/TestEntity_py.ts +66 -65
  389. package/project/.sdk/src/cmp/py/utility_py.ts +0 -22
  390. package/project/.sdk/src/cmp/py-data/Main_py-data.ts +13 -47
  391. package/project/.sdk/src/cmp/rb/Config_rb.ts +0 -56
  392. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +4 -62
  393. package/project/.sdk/src/cmp/rb/Entity_rb.ts +0 -3
  394. package/project/.sdk/src/cmp/rb/Main_rb.ts +0 -10
  395. package/project/.sdk/src/cmp/rb/Package_rb.ts +0 -5
  396. package/project/.sdk/src/cmp/rb/PrepareAuth_rb.ts +0 -81
  397. package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +3 -10
  398. package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +0 -32
  399. package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +0 -9
  400. package/project/.sdk/src/cmp/rb/ReadmeModel_rb.ts +3 -3
  401. package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +4 -27
  402. package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +7 -15
  403. package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +0 -5
  404. package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +0 -3
  405. package/project/.sdk/src/cmp/rb/Schema_rb.ts +1 -16
  406. package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +25 -27
  407. package/project/.sdk/src/cmp/rb/TestEntity_rb.ts +66 -65
  408. package/project/.sdk/src/cmp/rb/utility_rb.ts +0 -22
  409. package/project/.sdk/src/cmp/rust/Config_rust.ts +0 -35
  410. package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +4 -38
  411. package/project/.sdk/src/cmp/rust/Entity_rust.ts +0 -9
  412. package/project/.sdk/src/cmp/rust/Main_rust.ts +0 -58
  413. package/project/.sdk/src/cmp/rust/Package_rust.ts +0 -30
  414. package/project/.sdk/src/cmp/rust/PrepareAuth_rust.ts +0 -84
  415. package/project/.sdk/src/cmp/rust/ReadmeEntity_rust.ts +3 -3
  416. package/project/.sdk/src/cmp/rust/ReadmeExamplesTest_rust.ts +0 -16
  417. package/project/.sdk/src/cmp/rust/ReadmeModel_rust.ts +3 -3
  418. package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +7 -10
  419. package/project/.sdk/src/cmp/rust/Schema_rust.ts +1 -19
  420. package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +18 -25
  421. package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +63 -71
  422. package/project/.sdk/src/cmp/rust/fragment/Entity.fragment.rs +0 -14
  423. package/project/.sdk/src/cmp/rust/fragment/EntityRemoveOp.fragment.rs +0 -4
  424. package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +0 -20
  425. package/project/.sdk/src/cmp/rust/fragment/SdkError.fragment.rs +0 -6
  426. package/project/.sdk/src/cmp/rust/utility_rust.ts +0 -47
  427. package/project/.sdk/src/cmp/scala/Config_scala.ts +0 -31
  428. package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +4 -55
  429. package/project/.sdk/src/cmp/scala/Main_scala.ts +0 -78
  430. package/project/.sdk/src/cmp/scala/PrepareAuth_scala.ts +0 -102
  431. package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +3 -4
  432. package/project/.sdk/src/cmp/scala/ReadmeExamplesTest_scala.ts +0 -23
  433. package/project/.sdk/src/cmp/scala/ReadmeModel_scala.ts +3 -3
  434. package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +7 -10
  435. package/project/.sdk/src/cmp/scala/ReadmeTopQuick_scala.ts +0 -5
  436. package/project/.sdk/src/cmp/scala/Schema_scala.ts +1 -20
  437. package/project/.sdk/src/cmp/scala/TestDirect_scala.ts +14 -14
  438. package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +60 -67
  439. package/project/.sdk/src/cmp/scala/Test_scala.ts +0 -3
  440. package/project/.sdk/src/cmp/scala/utility_scala.ts +0 -31
  441. package/project/.sdk/src/cmp/swift/Config_swift.ts +0 -62
  442. package/project/.sdk/src/cmp/swift/EntityOperation_swift.ts +0 -3
  443. package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +5 -44
  444. package/project/.sdk/src/cmp/swift/Main_swift.ts +0 -42
  445. package/project/.sdk/src/cmp/swift/Package_swift.ts +0 -69
  446. package/project/.sdk/src/cmp/swift/PrepareAuth_swift.ts +0 -134
  447. package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +3 -5
  448. package/project/.sdk/src/cmp/swift/ReadmeExamplesTest_swift.ts +0 -22
  449. package/project/.sdk/src/cmp/swift/ReadmeModel_swift.ts +3 -3
  450. package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +7 -10
  451. package/project/.sdk/src/cmp/swift/Schema_swift.ts +1 -19
  452. package/project/.sdk/src/cmp/swift/TestEntity_swift.ts +0 -4
  453. package/project/.sdk/src/cmp/swift/utility_swift.ts +0 -51
  454. package/project/.sdk/src/cmp/ts/Config_ts.ts +0 -46
  455. package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +5 -39
  456. package/project/.sdk/src/cmp/ts/Entity_ts.ts +0 -6
  457. package/project/.sdk/src/cmp/ts/Main_ts.ts +0 -28
  458. package/project/.sdk/src/cmp/ts/Package_ts.ts +2 -26
  459. package/project/.sdk/src/cmp/ts/PrepareAuth_ts.ts +0 -55
  460. package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +3 -12
  461. package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +0 -6
  462. package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +0 -25
  463. package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +4 -9
  464. package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +0 -7
  465. package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +3 -6
  466. package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +1 -44
  467. package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +7 -25
  468. package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +0 -11
  469. package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +6 -9
  470. package/project/.sdk/src/cmp/ts/Schema_ts.ts +1 -22
  471. package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +42 -93
  472. package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +76 -107
  473. package/project/.sdk/src/cmp/ts/TestLive_ts.ts +12 -6
  474. package/project/.sdk/src/cmp/ts/Test_ts.ts +0 -4
  475. package/project/.sdk/src/cmp/ts/fragment/Config.data.fragment.ts +0 -27
  476. package/project/.sdk/src/cmp/ts/fragment/Config.fragment.ts +0 -7
  477. package/project/.sdk/src/cmp/ts/fragment/Direct.test.fragment.ts +0 -7
  478. package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +0 -1
  479. package/project/.sdk/src/cmp/ts/fragment/Entity.test.fragment.ts +0 -4
  480. package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +0 -20
  481. package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +0 -6
  482. package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +0 -6
  483. package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +0 -15
  484. package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +0 -6
  485. package/project/.sdk/src/cmp/ts/fragment/Main.fragment.ts +0 -15
  486. package/project/.sdk/src/cmp/ts/fragment/MainStation.fragment.ts +0 -12
  487. package/project/.sdk/src/cmp/ts/fragment/SdkError.fragment.ts +0 -9
  488. package/project/.sdk/src/cmp/ts/utility_ts.ts +5 -64
  489. package/project/.sdk/src/cmp/zig/Config_zig.ts +0 -70
  490. package/project/.sdk/src/cmp/zig/Entity_zig.ts +0 -3
  491. package/project/.sdk/src/cmp/zig/Main_zig.ts +0 -83
  492. package/project/.sdk/src/cmp/zig/Package_zig.ts +0 -22
  493. package/project/.sdk/src/cmp/zig/PrepareAuth_zig.ts +0 -136
  494. package/project/.sdk/src/cmp/zig/ReadmeEntity_zig.ts +3 -3
  495. package/project/.sdk/src/cmp/zig/ReadmeExamplesTest_zig.ts +0 -18
  496. package/project/.sdk/src/cmp/zig/ReadmeModel_zig.ts +3 -3
  497. package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +0 -3
  498. package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +7 -10
  499. package/project/.sdk/src/cmp/zig/Schema_zig.ts +1 -24
  500. package/project/.sdk/src/cmp/zig/TestDirect_zig.ts +0 -11
  501. package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +0 -8
  502. package/project/.sdk/src/cmp/zig/Test_zig.ts +0 -11
  503. package/project/.sdk/src/cmp/zig/utility_zig.ts +0 -47
  504. package/project/.sdk/tm/c/feature/test.c +20 -4
  505. package/project/.sdk/tm/clojure/src/sdk/features.clj +6 -4
  506. package/project/.sdk/tm/cpp/feature/test.hpp +17 -6
  507. package/project/.sdk/tm/csharp/feature/FeatureOptions.cs +18 -5
  508. package/project/.sdk/tm/csharp/feature/TestFeature.cs +10 -4
  509. package/project/.sdk/tm/elixir/lib/projectname/feature/test.ex +11 -5
  510. package/project/.sdk/tm/go/core/context.go +0 -9
  511. package/project/.sdk/tm/go/core/types.go +0 -3
  512. package/project/.sdk/tm/go/feature/audit_feature.go +0 -9
  513. package/project/.sdk/tm/go/feature/cache_feature.go +0 -8
  514. package/project/.sdk/tm/go/feature/clienttrack_feature.go +0 -7
  515. package/project/.sdk/tm/go/feature/cost_feature.go +0 -51
  516. package/project/.sdk/tm/go/feature/debug_feature.go +0 -6
  517. package/project/.sdk/tm/go/feature/feature_options.go +108 -21
  518. package/project/.sdk/tm/go/feature/idempotency_feature.go +0 -6
  519. package/project/.sdk/tm/go/feature/metrics_feature.go +0 -6
  520. package/project/.sdk/tm/go/feature/netsim_feature.go +0 -8
  521. package/project/.sdk/tm/go/feature/paging_feature.go +0 -9
  522. package/project/.sdk/tm/go/feature/proxy_feature.go +0 -7
  523. package/project/.sdk/tm/go/feature/ratelimit_feature.go +0 -6
  524. package/project/.sdk/tm/go/feature/rbac_feature.go +0 -10
  525. package/project/.sdk/tm/go/feature/retry_feature.go +0 -6
  526. package/project/.sdk/tm/go/feature/secrets_feature.go +0 -173
  527. package/project/.sdk/tm/go/feature/streaming_feature.go +0 -7
  528. package/project/.sdk/tm/go/feature/telemetry_feature.go +0 -8
  529. package/project/.sdk/tm/go/feature/test_feature.go +0 -23
  530. package/project/.sdk/tm/go/feature/validate_feature.go +0 -66
  531. package/project/.sdk/tm/go/test/custom_utility_test.go +0 -29
  532. package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +0 -100
  533. package/project/.sdk/tm/go/test/feature_corpus_test.go +1 -60
  534. package/project/.sdk/tm/go/test/feature_harness_test.go +0 -10
  535. package/project/.sdk/tm/go/test/feature_test.go +107 -9
  536. package/project/.sdk/tm/go/test/omniresolver_test.go +0 -74
  537. package/project/.sdk/tm/go/test/omnismoke_test.go +0 -4
  538. package/project/.sdk/tm/go/test/pipeline_test.go +0 -10
  539. package/project/.sdk/tm/go/test/primary_utility_test.go +0 -32
  540. package/project/.sdk/tm/go/test/struct_utility_test.go +0 -38
  541. package/project/.sdk/tm/go/test/testsupport_test.go +0 -25
  542. package/project/.sdk/tm/go/utility/feature_add.go +0 -6
  543. package/project/.sdk/tm/go/utility/fetcher.go +0 -6
  544. package/project/.sdk/tm/go/utility/graphql.go +1 -31
  545. package/project/.sdk/tm/go/utility/make_options.go +38 -49
  546. package/project/.sdk/tm/go/utility/make_point.go +0 -11
  547. package/project/.sdk/tm/go/utility/make_spec.go +0 -15
  548. package/project/.sdk/tm/go/utility/register.go +0 -28
  549. package/project/.sdk/tm/go/utility/transform_request.go +0 -20
  550. package/project/.sdk/tm/go/utility/transform_response.go +0 -8
  551. package/project/.sdk/tm/java/feature/TestFeature.java +11 -6
  552. package/project/.sdk/tm/js/src/feature/test/TestFeature.js +12 -4
  553. package/project/.sdk/tm/js/test/live-entity.js +29 -29
  554. package/project/.sdk/tm/js/test/live-scenarios.js +4 -4
  555. package/project/.sdk/tm/kotlin/feature/TestFeature.kt +8 -4
  556. package/project/.sdk/tm/ocaml/sdk_features.ml +6 -4
  557. package/project/.sdk/tm/perl/feature/test_feature.pm +6 -4
  558. package/project/.sdk/tm/rb/feature/test_feature.rb +6 -4
  559. package/project/.sdk/tm/rust/core/context.rs +0 -5
  560. package/project/.sdk/tm/rust/core/control.rs +0 -1
  561. package/project/.sdk/tm/rust/core/helpers.rs +0 -15
  562. package/project/.sdk/tm/rust/core/operation.rs +0 -1
  563. package/project/.sdk/tm/rust/core/point.rs +0 -3
  564. package/project/.sdk/tm/rust/core/response.rs +0 -2
  565. package/project/.sdk/tm/rust/core/result.rs +0 -1
  566. package/project/.sdk/tm/rust/core/spec.rs +0 -1
  567. package/project/.sdk/tm/rust/core/types.rs +0 -20
  568. package/project/.sdk/tm/rust/core/utility_type.rs +0 -5
  569. package/project/.sdk/tm/rust/feature/audit.rs +0 -9
  570. package/project/.sdk/tm/rust/feature/base.rs +0 -3
  571. package/project/.sdk/tm/rust/feature/cache.rs +0 -9
  572. package/project/.sdk/tm/rust/feature/clienttrack.rs +0 -7
  573. package/project/.sdk/tm/rust/feature/cost.rs +0 -48
  574. package/project/.sdk/tm/rust/feature/debug.rs +0 -7
  575. package/project/.sdk/tm/rust/feature/idempotency.rs +0 -7
  576. package/project/.sdk/tm/rust/feature/log.rs +0 -3
  577. package/project/.sdk/tm/rust/feature/metrics.rs +0 -7
  578. package/project/.sdk/tm/rust/feature/netsim.rs +0 -9
  579. package/project/.sdk/tm/rust/feature/paging.rs +0 -10
  580. package/project/.sdk/tm/rust/feature/proxy.rs +0 -8
  581. package/project/.sdk/tm/rust/feature/ratelimit.rs +0 -6
  582. package/project/.sdk/tm/rust/feature/rbac.rs +0 -10
  583. package/project/.sdk/tm/rust/feature/retry.rs +0 -6
  584. package/project/.sdk/tm/rust/feature/secrets.rs +1 -187
  585. package/project/.sdk/tm/rust/feature/streaming.rs +0 -7
  586. package/project/.sdk/tm/rust/feature/support.rs +0 -6
  587. package/project/.sdk/tm/rust/feature/telemetry.rs +0 -9
  588. package/project/.sdk/tm/rust/feature/test.rs +8 -23
  589. package/project/.sdk/tm/rust/feature/timeout.rs +0 -7
  590. package/project/.sdk/tm/rust/feature/validate.rs +0 -81
  591. package/project/.sdk/tm/rust/tests/common/mod.rs +0 -35
  592. package/project/.sdk/tm/rust/tests/custom_utility_test.rs +0 -2
  593. package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +0 -95
  594. package/project/.sdk/tm/rust/tests/feature_test.rs +0 -16
  595. package/project/.sdk/tm/rust/tests/netsim_test.rs +0 -6
  596. package/project/.sdk/tm/rust/tests/omni_resolver/mod.rs +0 -135
  597. package/project/.sdk/tm/rust/tests/omni_smoke_test.rs +0 -15
  598. package/project/.sdk/tm/rust/tests/pipeline_test.rs +0 -6
  599. package/project/.sdk/tm/rust/tests/primary_utility_test.rs +0 -22
  600. package/project/.sdk/tm/rust/tests/struct_utility_test.rs +0 -25
  601. package/project/.sdk/tm/rust/utility/fetcher.rs +0 -5
  602. package/project/.sdk/tm/rust/utility/graphql.rs +1 -30
  603. package/project/.sdk/tm/rust/utility/make_error.rs +0 -2
  604. package/project/.sdk/tm/rust/utility/make_options.rs +0 -46
  605. package/project/.sdk/tm/rust/utility/make_point.rs +0 -12
  606. package/project/.sdk/tm/rust/utility/make_spec.rs +0 -4
  607. package/project/.sdk/tm/rust/utility/voxgigstruct/consts.rs +14 -20
  608. package/project/.sdk/tm/rust/utility/voxgigstruct/major.rs +0 -13
  609. package/project/.sdk/tm/rust/utility/voxgigstruct/mini.rs +0 -14
  610. package/project/.sdk/tm/rust/utility/voxgigstruct/mod.rs +0 -2
  611. package/project/.sdk/tm/rust/utility/voxgigstruct/ordered_map.rs +0 -18
  612. package/project/.sdk/tm/rust/utility/voxgigstruct/re.rs +0 -11
  613. package/project/.sdk/tm/rust/utility/voxgigstruct/value.rs +0 -3
  614. package/project/.sdk/tm/scala/feature/TestFeature.scala +10 -6
  615. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/TestFeature.swift +10 -6
  616. package/project/.sdk/tm/ts/src/Context.ts +0 -5
  617. package/project/.sdk/tm/ts/src/feature/audit/AuditFeature.ts +0 -7
  618. package/project/.sdk/tm/ts/src/feature/cache/CacheFeature.ts +0 -8
  619. package/project/.sdk/tm/ts/src/feature/clienttrack/ClienttrackFeature.ts +0 -7
  620. package/project/.sdk/tm/ts/src/feature/cost/CostFeature.ts +0 -52
  621. package/project/.sdk/tm/ts/src/feature/debug/DebugFeature.ts +0 -6
  622. package/project/.sdk/tm/ts/src/feature/metrics/MetricsFeature.ts +0 -6
  623. package/project/.sdk/tm/ts/src/feature/netsim/NetsimFeature.ts +0 -8
  624. package/project/.sdk/tm/ts/src/feature/paging/PagingFeature.ts +0 -13
  625. package/project/.sdk/tm/ts/src/feature/proxy/ProxyFeature.ts +0 -8
  626. package/project/.sdk/tm/ts/src/feature/ratelimit/RatelimitFeature.ts +0 -6
  627. package/project/.sdk/tm/ts/src/feature/rbac/RbacFeature.ts +0 -9
  628. package/project/.sdk/tm/ts/src/feature/retry/RetryFeature.ts +0 -6
  629. package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +0 -136
  630. package/project/.sdk/tm/ts/src/feature/streaming/StreamingFeature.ts +0 -7
  631. package/project/.sdk/tm/ts/src/feature/telemetry/TelemetryFeature.ts +0 -7
  632. package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +13 -88
  633. package/project/.sdk/tm/ts/src/feature/validate/ValidateFeature.ts +0 -87
  634. package/project/.sdk/tm/ts/src/utility/CleanUtility.ts +0 -12
  635. package/project/.sdk/tm/ts/src/utility/FeatureAddUtility.ts +0 -1
  636. package/project/.sdk/tm/ts/src/utility/GraphqlUtility.ts +2 -30
  637. package/project/.sdk/tm/ts/src/utility/MakeErrorUtility.ts +0 -4
  638. package/project/.sdk/tm/ts/src/utility/MakeOptionsUtility.ts +0 -46
  639. package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +0 -34
  640. package/project/.sdk/tm/ts/src/utility/MakeRequestUtility.ts +0 -1
  641. package/project/.sdk/tm/ts/src/utility/MakeSpecUtility.ts +0 -5
  642. package/project/.sdk/tm/ts/src/utility/MakeUrlUtility.ts +0 -1
  643. package/project/.sdk/tm/ts/src/utility/ParamUtility.ts +0 -8
  644. package/project/.sdk/tm/ts/src/utility/PrepareBodyUtility.ts +0 -3
  645. package/project/.sdk/tm/ts/src/utility/PrepareParamsUtility.ts +0 -6
  646. package/project/.sdk/tm/ts/src/utility/ResultBasicUtility.ts +0 -1
  647. package/project/.sdk/tm/ts/src/utility/TransformRequestUtility.ts +0 -20
  648. package/project/.sdk/tm/ts/src/utility/TransformResponseUtility.ts +0 -4
  649. package/project/.sdk/tm/ts/test/exists.test.ts +0 -10
  650. package/project/.sdk/tm/ts/test/feature/Corpus.test.ts +0 -56
  651. package/project/.sdk/tm/ts/test/feature/harness.ts +0 -9
  652. package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +0 -106
  653. package/project/.sdk/tm/ts/test/live-contract.ts +0 -2
  654. package/project/.sdk/tm/ts/test/live-entity.ts +26 -26
  655. package/project/.sdk/tm/ts/test/live-scenarios.ts +3 -3
  656. package/project/.sdk/tm/ts/test/omni.ts +0 -32
  657. package/project/.sdk/tm/ts/test/pipeline.test.ts +45 -28
  658. package/project/.sdk/tm/ts/test/utility/Corpus.test.ts +0 -13
  659. package/project/.sdk/tm/ts/test/utility/PrimaryUtility.test.ts +56 -29
  660. package/project/.sdk/tm/ts/test/utility/StructUtility.test.ts +0 -7
  661. package/project/.sdk/tm/ts/test/utility.ts +0 -55
  662. package/project/.sdk/tm/zig/feature/test.zig +11 -4
  663. package/project/sdkgen-package.json +1 -1
  664. package/src/action/action.ts +0 -65
  665. package/src/action/check.ts +0 -88
  666. package/src/action/dispatch.ts +0 -27
  667. package/src/action/doctor.ts +69 -329
  668. package/src/action/edition.ts +1 -87
  669. package/src/action/feature.ts +1 -49
  670. package/src/action/kind.ts +0 -149
  671. package/src/action/package.ts +0 -228
  672. package/src/action/resolve.ts +0 -148
  673. package/src/action/target.ts +0 -177
  674. package/src/cmp/AgentGuide.ts +0 -7
  675. package/src/cmp/AgentGuideContent.ts +0 -24
  676. package/src/cmp/AgentGuideTop.ts +0 -7
  677. package/src/cmp/Changelog.ts +0 -14
  678. package/src/cmp/Deploy.ts +1 -31
  679. package/src/cmp/Entity.ts +0 -4
  680. package/src/cmp/ExternalTarget.ts +0 -36
  681. package/src/cmp/Feature.ts +0 -14
  682. package/src/cmp/FeatureDocs.ts +0 -37
  683. package/src/cmp/PublishWorkflow.ts +0 -60
  684. package/src/cmp/ReadmeErrors.ts +0 -17
  685. package/src/cmp/ReadmeExplanation.ts +2 -11
  686. package/src/cmp/ReadmeFeatures.ts +0 -10
  687. package/src/cmp/ReadmeRefFeatures.ts +0 -19
  688. package/src/cmp/ReadmeStation.ts +0 -19
  689. package/src/cmp/ReadmeTop.ts +1 -81
  690. package/src/cmp/ReadmeUnions.ts +1 -16
  691. package/src/cmp/Registered.ts +0 -30
  692. package/src/cmp/Security.ts +0 -2
  693. package/src/cmp/Test.ts +4 -2
  694. package/src/cmp/TestControl.ts +0 -25
  695. package/src/helpers/applicability.ts +0 -60
  696. package/src/helpers/buildIdNames.ts +17 -19
  697. package/src/helpers/canonSpec.ts +2 -116
  698. package/src/helpers/canonType.ts +0 -87
  699. package/src/helpers/collectDeps.ts +0 -27
  700. package/src/helpers/definition.ts +0 -29
  701. package/src/helpers/dryrun.ts +0 -8
  702. package/src/helpers/featureSource.ts +0 -152
  703. package/src/helpers/getMatchEntries.ts +2 -6
  704. package/src/helpers/junk.ts +13 -89
  705. package/src/helpers/manifest.ts +0 -169
  706. package/src/helpers/modelNames.ts +6 -82
  707. package/src/helpers/modelcheck.ts +0 -106
  708. package/src/helpers/naming.ts +0 -303
  709. package/src/helpers/opExample.ts +0 -56
  710. package/src/helpers/opShape.ts +33 -233
  711. package/src/helpers/optspec.ts +0 -77
  712. package/src/helpers/packageMeta.ts +1 -200
  713. package/src/helpers/pointPath.ts +5 -65
  714. package/src/helpers/resolved.ts +39 -0
  715. package/src/helpers/semver.ts +0 -61
  716. package/src/helpers/serverVars.ts +0 -44
  717. package/src/helpers/shipped.ts +0 -14
  718. package/src/helpers/station.ts +0 -32
  719. package/src/helpers/stdrep.ts +0 -52
  720. package/src/helpers/testPolicy.ts +0 -4
  721. package/src/sdkgen.ts +18 -264
  722. package/src/testkit.ts +6 -312
  723. package/src/types.ts +1 -30
  724. package/src/utility.ts +16 -250
@@ -1,3 +1,4 @@
1
+ import { flowSteps } from '@voxgig/sdkgen'
1
2
 
2
3
  import {
3
4
  KIT,
@@ -85,17 +86,17 @@ const TestEntity = cmp(function TestEntity(props: any) {
85
86
  const idnamesStr = idnames.map(n => `"${n}"`).join(', ')
86
87
 
87
88
  // Get all update data entries for alias generation
88
- const allSteps = Object.values(basicflow.step) as any[]
89
- const updateStep = allSteps.find((s: any) => s.op === 'update')
90
- const updateData = updateStep?.data
91
- ? Object.entries(updateStep.data).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
89
+ const allSteps = Object.values(flowSteps(basicflow)) as any[]
90
+ const updateStep = allSteps.find((s: any) => s.o === 'update')
91
+ const updateData = updateStep?.d
92
+ ? Object.entries(updateStep.d).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
92
93
  : []
93
94
  const aliases = updateData.map(([k, v]: any) => [k, v])
94
95
 
95
96
  const genCtx: GenCtx = { model, entity, flow: basicflow, PROJUPPER }
96
97
 
97
98
  const opNames = Array.from(new Set(
98
- (allSteps as any[]).map((s: any) => s.op).filter(Boolean)))
99
+ (allSteps as any[]).map((s: any) => s.o).filter(Boolean)))
99
100
  const opsList = opNames.map(o => `"${o}"`).join(', ')
100
101
 
101
102
  // An entity whose basic flow has no ops must not emit the per-op skip
@@ -152,7 +153,7 @@ ${skipBlock} // The basic flow consumes synthetic IDs from the fixture. I
152
153
  ${allSteps.length > 0 ? ' var client = setup.Client;\n\n' : ''}`)
153
154
 
154
155
  // Check if the flow has a create step; if not, bootstrap entity data
155
- const flowHasCreate = allSteps.some((s: any) => s.op === 'create')
156
+ const flowHasCreate = allSteps.some((s: any) => s.o === 'create')
156
157
  if (!flowHasCreate) {
157
158
  const preambleRef = entity.name + '_ref01'
158
159
  const preambleVar = csVar(preambleRef)
@@ -167,8 +168,8 @@ ${allSteps.length > 0 ? ' var client = setup.Client;\n\n' : ''}`)
167
168
  }
168
169
 
169
170
  // Model-driven step iteration
170
- each(basicflow.step, (step: any, index: any) => {
171
- const opgen: OpGen = GENERATE_OP[step.op]
171
+ each(flowSteps(basicflow), (step: any, index: any) => {
172
+ const opgen: OpGen = GENERATE_OP[step.o]
172
173
  if (opgen) {
173
174
  opgen(genCtx, step, index)
174
175
  Content('\n')
@@ -179,11 +180,7 @@ ${allSteps.length > 0 ? ' var client = setup.Client;\n\n' : ''}`)
179
180
 
180
181
  `)
181
182
 
182
- // Stream test (PR #4): the entity `stream` method runs the op pipeline and
183
- // returns an async iterator. With the streaming feature active it yields
184
- // from the feature's incremental iterator; otherwise it falls back to the
185
- // materialised items. Only emitted for entities whose flow lists.
186
- const flowHasList = allSteps.some((s: any) => s.op === 'list')
183
+ const flowHasList = allSteps.some((s: any) => s.o === 'list')
187
184
  if (flowHasList) {
188
185
  Content(` [Fact]
189
186
  public async Task Stream()
@@ -343,18 +340,18 @@ ${allSteps.length > 0 ? ' var client = setup.Client;\n\n' : ''}`)
343
340
 
344
341
  const generateCreate: OpGen = (ctx, step, index) => {
345
342
  const { entity, flow } = ctx
346
- const ref = step.input.ref ?? entity.name + '_ref01'
347
- const entvar = csVar(step.input.entvar ?? ref + '_ent')
348
- const datavar = csVar(step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? '')))
343
+ const ref = step.i.ref ?? entity.name + '_ref01'
344
+ const entvar = csVar(step.i.entvar ?? ref + '_ent')
345
+ const datavar = csVar(step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? '')))
349
346
 
350
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
347
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
351
348
  const needsEnt = !priorSteps.some((s: any) =>
352
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
349
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
353
350
 
354
351
  const hasDatvar = priorSteps.some((s: any) => {
355
- if ('create' === s.op) {
356
- const priorRef = s.input.ref ?? entity.name + '_ref01'
357
- const priorDatvar = csVar(s.input.datavar ?? (priorRef + '_data' + (s.input.suffix ?? '')))
352
+ if ('create' === s.o) {
353
+ const priorRef = s.i.ref ?? entity.name + '_ref01'
354
+ const priorDatvar = csVar(s.i.datavar ?? (priorRef + '_data' + (s.i.suffix ?? '')))
358
355
  return priorDatvar === datavar
359
356
  }
360
357
  return false
@@ -394,14 +391,14 @@ const generateCreate: OpGen = (ctx, step, index) => {
394
391
 
395
392
  const generateList: OpGen = (ctx, step, index) => {
396
393
  const { entity, flow } = ctx
397
- const ref = step.input.ref ?? entity.name + '_ref01'
398
- const entvar = csVar(step.input.entvar ?? ref + '_ent')
399
- const matchvar = csVar(step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? '')))
400
- const listvar = csVar(step.input.listvar ?? (ref + '_list' + (step.input.suffix ?? '')))
394
+ const ref = step.i.ref ?? entity.name + '_ref01'
395
+ const entvar = csVar(step.i.entvar ?? ref + '_ent')
396
+ const matchvar = csVar(step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? '')))
397
+ const listvar = csVar(step.i.listvar ?? (ref + '_list' + (step.i.suffix ?? '')))
401
398
 
402
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
399
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
403
400
  const needsEnt = !priorSteps.some((s: any) =>
404
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
401
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
405
402
 
406
403
  Content(` // LIST
407
404
  `)
@@ -434,13 +431,13 @@ const generateList: OpGen = (ctx, step, index) => {
434
431
  $"expected list result to be a list, got {${listvar}Result?.GetType()}");
435
432
  `)
436
433
 
437
- // Handle validators from step.valid
438
- const allSteps = Object.values(flow.step) as any[]
439
- if (step.valid) {
440
- for (const validator of step.valid) {
434
+ // Handle validators from step.v
435
+ const allSteps = Object.values(flowSteps(flow)) as any[]
436
+ if (step.v) {
437
+ for (const validator of step.v) {
441
438
  const validRef = validator.def?.ref
442
- const hasRefData = validRef && allSteps.some((s: any) => 'create' === s.op &&
443
- ((s.input.ref ?? entity.name + '_ref01') === validRef))
439
+ const hasRefData = validRef && allSteps.some((s: any) => 'create' === s.o &&
440
+ ((s.i.ref ?? entity.name + '_ref01') === validRef))
444
441
 
445
442
  if ('ItemExists' === validator.apply && hasRefData) {
446
443
  const refDataVar = csVar(validRef + '_data')
@@ -468,16 +465,16 @@ const generateList: OpGen = (ctx, step, index) => {
468
465
 
469
466
  const generateUpdate: OpGen = (ctx, step, index) => {
470
467
  const { entity, flow } = ctx
471
- const ref = step.input.ref ?? entity.name + '_ref01'
472
- const entvar = csVar(step.input.entvar ?? ref + '_ent')
473
- const datavar = csVar(step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? '')))
474
- const resdatavar = csVar(step.input.resdatavar ?? (ref + '_resdata' + (step.input.suffix ?? '')))
475
- const markdefvar = csVar(step.input.markdefvar ?? (ref + '_markdef' + (step.input.suffix ?? '')))
476
- const srcdatavar = csVar(step.input.srcdatavar ?? (ref + '_data' + (step.input.suffix ?? '')))
477
-
478
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
468
+ const ref = step.i.ref ?? entity.name + '_ref01'
469
+ const entvar = csVar(step.i.entvar ?? ref + '_ent')
470
+ const datavar = csVar(step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? '')))
471
+ const resdatavar = csVar(step.i.resdatavar ?? (ref + '_resdata' + (step.i.suffix ?? '')))
472
+ const markdefvar = csVar(step.i.markdefvar ?? (ref + '_markdef' + (step.i.suffix ?? '')))
473
+ const srcdatavar = csVar(step.i.srcdatavar ?? (ref + '_data' + (step.i.suffix ?? '')))
474
+
475
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
479
476
  const needsEnt = !priorSteps.some((s: any) =>
480
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
477
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
481
478
 
482
479
  const hasEntIdU = null != entity.id
483
480
 
@@ -495,9 +492,9 @@ const generateUpdate: OpGen = (ctx, step, index) => {
495
492
  `)
496
493
  }
497
494
 
498
- // Add data entries from step.data
499
- if (step.data) {
500
- const dataEntries = Object.entries(step.data).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
495
+ // Add data entries from step.d
496
+ if (step.d) {
497
+ const dataEntries = Object.entries(step.d).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
501
498
  for (const [key] of dataEntries) {
502
499
  Content(` ["${key}"] = setup.Idmap["${key}"],
503
500
  `)
@@ -508,10 +505,10 @@ const generateUpdate: OpGen = (ctx, step, index) => {
508
505
  `)
509
506
 
510
507
  // Handle TextFieldMark spec
511
- if (step.spec) {
512
- for (const spec of step.spec) {
513
- if ('TextFieldMark' === spec.apply && null != step.input.textfield) {
514
- const fieldname = step.input.textfield
508
+ if (step.s) {
509
+ for (const spec of step.s) {
510
+ if ('TextFieldMark' === spec.apply && null != step.i.textfield) {
511
+ const fieldname = step.i.textfield
515
512
  const fieldvalue = spec.def?.mark ?? `Mark01-${ref}`
516
513
  Content(`
517
514
  var ${markdefvar}Name = "${fieldname}";
@@ -534,9 +531,9 @@ const generateUpdate: OpGen = (ctx, step, index) => {
534
531
  }
535
532
 
536
533
  // Assert TextFieldMark
537
- if (step.spec) {
538
- for (const spec of step.spec) {
539
- if ('TextFieldMark' === spec.apply && null != step.input.textfield) {
534
+ if (step.s) {
535
+ for (const spec of step.s) {
536
+ if ('TextFieldMark' === spec.apply && null != step.i.textfield) {
540
537
  Content(` Assert.True(Equals(${resdatavar}![${markdefvar}Name], ${markdefvar}Value),
541
538
  $"expected {${markdefvar}Name} to be updated, got {${resdatavar}[${markdefvar}Name]}");
542
539
  `)
@@ -548,24 +545,24 @@ const generateUpdate: OpGen = (ctx, step, index) => {
548
545
 
549
546
  const generateLoad: OpGen = (ctx, step, index) => {
550
547
  const { entity, flow } = ctx
551
- const ref = step.input.ref ?? entity.name + '_ref01'
552
- const entvar = csVar(step.input.entvar ?? ref + '_ent')
553
- const matchvar = csVar(step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? '')))
554
- const datavar = csVar(step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? '')))
555
- const srcdatavar = csVar(step.input.srcdatavar ?? (ref + '_data' + (step.input.suffix ?? '')))
548
+ const ref = step.i.ref ?? entity.name + '_ref01'
549
+ const entvar = csVar(step.i.entvar ?? ref + '_ent')
550
+ const matchvar = csVar(step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? '')))
551
+ const datavar = csVar(step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? '')))
552
+ const srcdatavar = csVar(step.i.srcdatavar ?? (ref + '_data' + (step.i.suffix ?? '')))
556
553
 
557
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
554
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
558
555
  const hasEntVar = priorSteps.some((s: any) =>
559
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
556
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
560
557
 
561
558
  // Check if srcdatavar was declared by a prior create step or preamble
562
- const flowHasCreate = Object.values(flow.step).some((s: any) => (s as any).op === 'create')
559
+ const flowHasCreate = Object.values(flowSteps(flow)).some((s: any) => (s as any).o === 'create')
563
560
  const preambleRef = entity.name + '_ref01'
564
561
  const hasSrcData = (!flowHasCreate && srcdatavar === csVar(preambleRef + '_data')) ||
565
562
  priorSteps.some((s: any) => {
566
- if ('create' === s.op) {
567
- const priorRef = s.input.ref ?? entity.name + '_ref01'
568
- const priorDatvar = csVar(s.input.datavar ?? (priorRef + '_data' + (s.input.suffix ?? '')))
563
+ if ('create' === s.o) {
564
+ const priorRef = s.i.ref ?? entity.name + '_ref01'
565
+ const priorDatvar = csVar(s.i.datavar ?? (priorRef + '_data' + (s.i.suffix ?? '')))
569
566
  return priorDatvar === srcdatavar
570
567
  }
571
568
  return false
@@ -610,14 +607,14 @@ const generateLoad: OpGen = (ctx, step, index) => {
610
607
 
611
608
  const generateRemove: OpGen = (ctx, step, index) => {
612
609
  const { entity, flow } = ctx
613
- const ref = step.input.ref ?? entity.name + '_ref01'
614
- const entvar = csVar(step.input.entvar ?? ref + '_ent')
615
- const matchvar = csVar(step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? '')))
616
- const srcdatavar = csVar(step.input.srcdatavar ?? (ref + '_data'))
610
+ const ref = step.i.ref ?? entity.name + '_ref01'
611
+ const entvar = csVar(step.i.entvar ?? ref + '_ent')
612
+ const matchvar = csVar(step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? '')))
613
+ const srcdatavar = csVar(step.i.srcdatavar ?? (ref + '_data'))
617
614
 
618
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
615
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
619
616
  const needsEnt = !priorSteps.some((s: any) =>
620
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
617
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
621
618
 
622
619
  Content(` // REMOVE
623
620
  `)
@@ -19,10 +19,6 @@ function projectPath(suffix?: string): string {
19
19
  }
20
20
 
21
21
 
22
- // A camelCase C# local-variable identifier for a snake_case model name
23
- // (`status_embed_config` -> `statusEmbedConfig`). C# contextual keywords
24
- // that are illegal as locals get the shared reserved-word guard (js set is
25
- // the closest match for C#'s expression keywords like `new`/`this`).
26
22
  function csVarName(name: string): string {
27
23
  const pascal = camelify(name)
28
24
  const lower = pascal.charAt(0).toLowerCase() + pascal.slice(1)
@@ -30,13 +26,11 @@ function csVarName(name: string): string {
30
26
  }
31
27
 
32
28
 
33
- // A PascalCase C# identifier for a snake_case model name.
34
29
  function csPascalName(name: string): string {
35
30
  return camelify(name)
36
31
  }
37
32
 
38
33
 
39
- // C# keywords - illegal as a plain local-variable binding.
40
34
  const CS_RESERVED = new Set<string>([
41
35
  'abstract', 'as', 'base', 'bool', 'break', 'byte', 'case', 'catch',
42
36
  'char', 'checked', 'class', 'const', 'continue', 'decimal', 'default',
@@ -86,20 +80,6 @@ function formatCsMap(obj: any, indent: number = 0): string {
86
80
  }
87
81
 
88
82
 
89
- // C# NEW-LINE CHARACTERS, which a regular quoted string literal may not
90
- // contain: U+000D, U+000A, U+0085 (NEL), U+2028 (LINE SEPARATOR) and U+2029
91
- // (PARAGRAPH SEPARATOR) - C# language spec, "Line terminators".
92
- //
93
- // The first two everyone escapes. The other three are the trap: they are
94
- // ordinary characters in JSON, in every other target language, and to the eye,
95
- // so a model string carrying one (an OpenAPI description, default or example
96
- // pasted from a word processor) emits a C# source file that fails to compile
97
- // with `error CS1010: Newline in constant`. Verified against .NET 8.
98
- //
99
- // Written as ESCAPES, not as the characters themselves: U+2028 and U+2029
100
- // are line terminators in JavaScript too, so a regex literal containing them
101
- // verbatim does not parse ("Invalid regular expression: missing /") and this
102
- // module fails to load. The same trap, one language up.
103
83
  const CS_NEWLINE = /[\u0085\u2028\u2029]/g
104
84
 
105
85
  function csEscapeNewlines(s: string): string {
@@ -128,36 +108,6 @@ function csStringLiteral(s: string): string {
128
108
  }
129
109
 
130
110
 
131
- // A number as a C# literal whose BOXED TYPE is predictable.
132
- //
133
- // C# gives an unsuffixed integer literal the first type of int/uint/long/ulong
134
- // that fits it, so `3000000000` boxes as uint while `5` boxes as int and
135
- // `5000000000` as long. Boxed numerics compare by exact type - (object)5L does
136
- // not Equals (object)5 - so the type a config number lands with is observable
137
- // to every consumer, and the L1 data branch has to be able to reproduce it.
138
- // Reproducing a uint band nothing else in the SDK ever produces is not worth
139
- // it, so the suffix is made explicit instead and the ladder is just int -> long
140
- // -> double, which SdkConfig.ConfigValue mirrors exactly.
141
- //
142
- // THE RANGE TEST IS ON THE EMITTED TEXT, not on the JS number.
143
- //
144
- // `String(val)` is exactly what JSON.stringify puts in the data branch, and it
145
- // prints a double as the SHORTEST decimal that round-trips - which for a value
146
- // near the 64-bit boundary is not the value's exact decimal expansion. The
147
- // clearest case is long.MinValue: `String(-9223372036854775808)` is
148
- // "-9223372036854776000", which is BELOW long.MinValue, so TryGetInt64 refuses
149
- // it and the data branch yields a double. Deciding from the JS value instead
150
- // emitted `long.MinValue` and the two branches disagreed at exactly that
151
- // boundary. Comparing the text as a BigInt makes both sides ask the same
152
- // question of the same digits.
153
- //
154
- // int.MinValue is written by name: `-2147483648` parses as unary minus applied
155
- // to a literal that does not itself fit in an int, and relying on the special
156
- // case for that is needless subtlety. There is deliberately no long.MinValue
157
- // twin - no JS number prints as that text, so it is unreachable.
158
- //
159
- // A non-finite value emits `null`, because that is what JSON.stringify does
160
- // with it - so the two representations still agree.
161
111
  const CS_INT_MIN = -2147483648n
162
112
  const CS_INT_MAX = 2147483647n
163
113
  const CS_LONG_MIN = -9223372036854775808n
@@ -209,28 +159,6 @@ function formatCsValue(val: any, indent: number = 0): string {
209
159
  }
210
160
 
211
161
 
212
- // Emission-time normalisation of a model subtree (L0).
213
- //
214
- // Always drops jostraca's iteration metadata (`$`-suffixed keys: index$,
215
- // key$, val$). With `dropDefaults`, also drops keys whose value IS the
216
- // default the runtime already assumes when the key is absent, which is pure
217
- // payload — see CONFIG_DEFAULT.
218
- //
219
- // Rebuilds the tree rather than mutating during a walk. The previous
220
- // implementation walked a clone calling `delete p[k]`, but walk() assigns its
221
- // callback's result back over the child (`setprop(out, ckey, walk(...))`), so
222
- // the delete was undone on the way out and the helper silently did nothing.
223
- // Returning `undefined` from the callback does not fix it either: setprop
224
- // stores undefined rather than removing the key, which then emits as a null.
225
- //
226
- // `dropDefaults` is opt-in and must be passed ONLY for the entity subtree.
227
- // `active` means something different in feature config, where absent reads as
228
- // INACTIVE (see feature_init) — dropping `active: true` there would silently
229
- // disable the feature.
230
- // jostraca's iteration metadata, injected by each()/names() while it walks the
231
- // model. Listed explicitly rather than matched by trailing-dollar suffix: a
232
- // trailing dollar is not exclusive to jostraca -- Seneca uses entity$ as real
233
- // data -- so a blanket suffix match can silently drop a legitimate API field.
234
162
  const MODEL_META = ['index$', 'key$', 'val$']
235
163
 
236
164
  // Keys whose value IS the default the runtime already assumes when the key is
@@ -37,21 +37,12 @@ const Config = cmp(async function Config(props: any) {
37
37
  const Name = model.const.Name
38
38
 
39
39
  const entity = getModelPath(model, `main.${KIT}.entity`)
40
- // Gated by the applicability tags, so this target never imports or
41
- // registers a feature it has no source for. One rule, one place:
42
- // helpers/applicability.
43
40
  const feature = targetFeatures(model, target)
44
41
 
45
42
  const headers = getModelPath(model, `main.${KIT}.config.headers`) || {}
46
43
 
47
44
  const authActive = isAuthActive(model)
48
45
  const authPrefix = resolveAuthPrefix(model)
49
- // `in` and `name` travel with the prefix now. apidef resolved both from
50
- // the spec's securityScheme all along (joplin's says `in: "query",
51
- // name: "token"`) and generation dropped them, so an apiKey-in-query API
52
- // got an Authorization header it does not read. Emitted below ONLY when
53
- // they differ from the header/Authorization defaults, so a header SDK's
54
- // config.ex is byte-identical to what it generated before.
55
46
  const authIn = resolveAuthIn(model)
56
47
  const authName = resolveAuthName(model)
57
48
 
@@ -62,34 +53,8 @@ const Config = cmp(async function Config(props: any) {
62
53
  ? ` "auth" => %{"prefix" => ${elixirString(authPrefix)}},\n`
63
54
  : ''
64
55
 
65
- // THE PLUGIN DEFINITIONS PER FEATURE (the elixir peer of Config_go's
66
- // FeaturePlugins and Config_ts's pluginDefs).
67
- //
68
- // Upstream sekreto replaced its self-registration registry with
69
- // voxgig/plugin definitions: a provider kind the caller did not pass in
70
- // via `plugins: [...]` is unknown to that Sekreto, so the model's choice
71
- // of plugin groups IS the SDK's provider vocabulary. Each active plugin's
72
- // `def` key is a fully-qualified elixir CALL (`Sekreto.Plugins.Hashicorp
73
- // .hashicorp`), emitted here as `...()` and handed to the feature.
74
- //
75
- // The smallest of the four emitters: Elixir resolves modules globally, by
76
- // their `defmodule`, so there is no import block to keep in step with the
77
- // trim - naming the call is the whole of it.
78
- //
79
- // Filter on `active` HERE rather than trusting the feature object to
80
- // arrive filtered (the trap Config_ts and Config_go both carry a warning
81
- // about): emitting a call into a module the plugin trim just deleted is
82
- // an `UndefinedFunctionError` at the first client construction.
83
56
  const featurePlugins: Record<string, string[]> = {}
84
57
 
85
- // DECLARED at all, active or not - the emit gate. An SDK that selects no
86
- // plugin-bearing feature gets no function, so config.ex is byte-identical
87
- // to what it was before this feature existed: inactive costs nothing.
88
- // (`only_active: false` for the same reason pluginExcludes needs it - the
89
- // feature object a component is handed has ALREADY been filtered, so its
90
- // `plugin` map holds only the ACTIVE groups and a project with the feature
91
- // on but every group off would read as "no plugins declared" and lose the
92
- // function the feature calls.)
93
58
  let declared = false
94
59
 
95
60
  each(feature, (f: any) => {
@@ -129,63 +94,20 @@ const Config = cmp(async function Config(props: any) {
129
94
  `
130
95
 
131
96
  Folder({ name: 'lib' }, () => {
132
- // The same config as an OBJECT, built by the shared helper so this
133
- // target's literal and the data that replaces it above the threshold are
134
- // the same config by construction. The JSON is what the threshold is
135
- // measured on - emitted source size varies by language, the model does not.
136
- // Passing target.name opts in to the main slug/version/target identity
137
- // fields (station descriptor input, mirrors Config_ts) - both reps below
138
- // render from this same def, so the data and literal branches pick the
139
- // fields up together.
140
97
  const { def: configDef } = configDefinition(model, target.name)
141
98
 
142
- // THE PLACEMENT, ONTO THE CANONICAL DEFINITION RATHER THAN INTO ONE
143
- // BRANCH. Both reps below render from `configDef` - the literal through
144
- // formatElixir, the data through JSON - so overlaying the fact here is
145
- // what keeps them the same config either side of the threshold. (Targets
146
- // whose literal is a hand-assembled fragment had to emit the block twice
147
- // and only did it once; elixir renders `options` whole, so it cannot
148
- // drift.)
149
- //
150
- // The optspec in utility.ex's make_options declares `in` and `name` for
151
- // exactly this reason: this port's validate REJECTS a key the spec does
152
- // not list, so a config carrying a placement the optspec has never heard
153
- // of does not degrade quietly - the client cannot be constructed at all
154
- // (`** (Voxgig.Struct.Error) Unexpected keys at field auth: in, name`,
155
- // measured by removing the optspec entry from a generated query SDK).
156
99
  if (authActive && null != configDef.options && null != configDef.options.auth) {
157
100
  if ('header' !== authIn) configDef.options.auth.in = authIn
158
101
  if ('Authorization' !== authName) configDef.options.auth.name = authName
159
102
  }
160
103
 
161
- // Re-stringified AFTER the overlay, so the size the threshold is measured
162
- // on is the size of the config actually emitted. For a header SDK the
163
- // overlay adds nothing and this is byte-identical to configDefinition's
164
- // own json.
165
104
  const configJson = JSON.stringify(configDef)
166
105
  const asData = isConfigData(configJson, configReprSetting(model))
167
106
 
168
- // configDefinition's `def.entity` verbatim, NOT rebuilt here. The reduce
169
- // this replaces was one of fourteen copies of that function's entityDefs
170
- // loop, and when configDefinition started reconstructing a point's
171
- // `parts` from apidef's segment vector (its ADR-003), only the copies
172
- // that read `configDef` got it — this target's literal config emitted
173
- // paths with no parts at all while its data config had them. One rule,
174
- // one place.
175
107
  const entityClean = configDef.entity
176
108
 
177
109
  File({ name: 'config.ex' }, () => {
178
110
 
179
- // ABOVE THE THRESHOLD: emit the model as DATA.
180
- //
181
- // The literal is one nested `%{}` the Elixir compiler expands and holds
182
- // in the module's constant pool; a binary is one token. `Json.parse`
183
- // builds the vendored struct's heap nodes DIRECTLY - the same nodes
184
- // `Helpers.deep/1` produces from a plain map - so make_config returns
185
- // exactly what it returned before.
186
- //
187
- // `ProjectName.Json` is already the SDK's response decoder (see
188
- // `safe_json` in utility.ex), so this adds no dependency.
189
111
  if (asData) {
190
112
  Content(`# ${Name} SDK configuration
191
113
  #
@@ -1,28 +1,5 @@
1
1
 
2
2
 
3
- // Typed-model generator (Elixir target). Port of EntityTypes_ts.ts / _rb.ts.
4
- //
5
- // Reads main.<KIT>.entity.<e>.fields[] and per-op params
6
- // (op.<name>.points[].args.params[]) and emits one module, lib/<app>_types.ex,
7
- // holding an `@type` alias per active entity plus a request/match type per
8
- // active op, each with a `@typedoc` documenting its concrete members.
9
- //
10
- // TYPE CHOICE: the SDK carries data as string-keyed struct value nodes, and
11
- // Elixir map typespecs cannot pin individual string keys (only
12
- // `optional(String.t()) => v`), so every alias resolves to an open string-keyed
13
- // map `%{optional(String.t()) => any()}`. The precise per-member shape is
14
- // documented in the accompanying @typedoc (the honest Elixir analogue of the
15
- // TS interface / rb Struct). Field/param sentinels ($STRING, $INTEGER, ...) are
16
- // turned into real Elixir typespec fragments (String.t(), integer(), ...) by
17
- // the shared sdkgen canonToType 'elixir' column (via the `elixirType`
18
- // delegate in utility_elixir).
19
- //
20
- // Op type-name scheme mirrors every other language — derived from the SHARED
21
- // OP_SUFFIX policy, snake_cased for Elixir:
22
- // <ename>, <ename>_load_match, <ename>_list_match, <ename>_create_data,
23
- // <ename>_update_data, <ename>_remove_match.
24
- // The generated entity modules reference these aliases from @spec annotations
25
- // on their op functions (see fragment/Entity*Op.fragment.ex).
26
3
 
27
4
  import {
28
5
  cmp, each, names,
@@ -39,16 +16,11 @@ import {
39
16
  import { elixirType } from './utility_elixir'
40
17
 
41
18
 
42
- // Snake_case op type name, derived from the SHARED OP_SUFFIX policy (the
43
- // PascalCase scheme <Name><Op><Match|Data> rendered Elixir-style):
44
- // <ename>_load_match, <ename>_create_data, ...
45
19
  function elixirOpTypeName(ename: string, opname: string): string {
46
20
  return ename + '_' + opname + '_' + (OP_SUFFIX[opname] || 'Match').toLowerCase()
47
21
  }
48
22
 
49
23
 
50
- // Emit one `@typedoc` + `@type` alias. The alias is always an open
51
- // string-keyed map; the members are documented in the doc block.
52
24
  function emitType(
53
25
  typeName: string,
54
26
  doc: string,
@@ -79,10 +51,6 @@ const EntityTypes = cmp(function EntityTypes(props: any) {
79
51
  const Name = model.const.Name
80
52
  const app = model.const.name.toLowerCase()
81
53
 
82
- // only_active:false — getModelPath DROPS active:false entries by default,
83
- // but the consumer scaffold (create-sdkgen Root.ts) iterates the RAW entity
84
- // collection, so inactive entities still get generated entity code that
85
- // references these typed names. The typed model must cover them too.
86
54
  const entity = getModelPath(model, `main.${KIT}.entity`, { only_active: false, required: false })
87
55
  // Emit for EVERY entity that gets an entity module: the consumer scaffold
88
56
  // (create-sdkgen Root.ts) iterates entities WITHOUT an active filter, and
@@ -93,9 +61,6 @@ const EntityTypes = cmp(function EntityTypes(props: any) {
93
61
  // Derive the PascalCase Name up-front — it is set LAZILY by names(), so an
94
62
  // entity not yet named would otherwise read `Name = undefined` below.
95
63
 
96
- // Surface duplicate generated type names (two entities with the same
97
- // PascalCase Name) — they would redeclare a type in statically-typed
98
- // targets. Detection only; renaming is a model-level decision.
99
64
  warnEntityTypeCollisions(entity, log, LANG)
100
65
 
101
66
  Folder({ name: 'lib' }, () => {
@@ -103,8 +68,8 @@ const EntityTypes = cmp(function EntityTypes(props: any) {
103
68
 
104
69
  Content(`# Typed models for the ${Name} SDK.
105
70
  #
106
- # GENERATED from the API model: main.${KIT}.entity.<e>.fields[] and per-op
107
- # params (op.<name>.points[].args.params[]). Member types come from the
71
+ # GENERATED from the API model: main.${KIT}.entity.<e>.fields{} and per-op
72
+ # params (op.<name>.points[].g.params[]). Member types come from the
108
73
  # canonical type sentinels. The SDK carries data as string-keyed struct value
109
74
  # nodes, so each alias is an open string-keyed map; the @typedoc member lists
110
75
  # document the concrete shapes. Do not edit by hand.
@@ -124,17 +89,14 @@ defmodule ${Name}.Types do
124
89
  const EName = ent.Name
125
90
  const ename = ent.name
126
91
  const fields = (ent.fields ? each(ent.fields) : [])
127
- .filter((f: any) => f.active !== false)
92
+ .filter((f: any) => f.a !== false)
128
93
 
129
- // Entity data model: one member per field (`req:false` -> optional).
130
94
  emitType(
131
95
  ename,
132
96
  `${EName} entity data model.`,
133
- fields.map((f: any) => ({ name: f.name, type: f.type, optional: false === f.req })),
97
+ fields.map((f: any) => ({ name: f.n, type: f.t, optional: false === f.r })),
134
98
  )
135
99
 
136
- // Per active op: a request/match type. Members and their optionality
137
- // come from the shared partiality policy (opRequestShape).
138
100
  const ops = ent.op || {}
139
101
  ;['load', 'list', 'create', 'update', 'remove'].forEach((opname: string) => {
140
102
  if (null == ops[opname]) {
@@ -24,9 +24,6 @@ import { MainEntity } from './MainEntity_elixir'
24
24
  import { EntityTypes } from './EntityTypes_elixir'
25
25
 
26
26
 
27
- // #`-comment hook marker key (gotcha #1: jostraca's built-in #Name-Tag
28
- // replacement only matches `//` comments, so an Elixir `# #<Name>-Hook`
29
- // line never matches and the pipeline hook would be silently dropped).
30
27
  const HOOK_KEY =
31
28
  '/(?<indent>[ \\t]*)#[ \\t]*#(?<name>[A-Za-z0-9]+)-Hook[ \\t]*\\n?/'
32
29
 
@@ -55,16 +52,6 @@ const Main = cmp(async function Main(props: any) {
55
52
  // Generate the documented typespec module (lib/<app>_types.ex).
56
53
  EntityTypes({ target })
57
54
 
58
- // Copy tm/elixir (with ProjectName/projectname substitution).
59
- //
60
- // THE RUNTIME DIRECTORY HAS TO CARRY THE APP NAME. Copy substitutes file
61
- // CONTENTS, never path components, so a blanket copy shipped the runtime as
62
- // lib/projectname/ in every generated SDK. Nothing broke — Elixir resolves
63
- // modules by their `defmodule`, not by path, and those were substituted
64
- // correctly — so it compiled, tested green, and published looking wrong.
65
- //
66
- // Copy's `to` prop names the destination, so lib/projectname is copied
67
- // explicitly under the app's own name and excluded from the blanket copy.
68
55
  Copy({
69
56
  from: 'tm/' + target.name,
70
57
  exclude: [/src\//, /lib\/projectname\//],
@@ -77,20 +64,6 @@ const Main = cmp(async function Main(props: any) {
77
64
  Copy({
78
65
  from: 'tm/' + target.name + '/lib/projectname',
79
66
  to: model.const.name,
80
- // pluginExcludes: the generate-time plugin trim (an INACTIVE plugin
81
- // group's vendored files, declared per-target in the feature model).
82
- // Rooted HERE, on lib/projectname, because that is this Copy's root
83
- // and jostraca matches a candidate against the path relative to it -
84
- // which is why the model's elixir plugin paths read
85
- // `feature/secrets/sekreto/plugins/<kind>.ex` and not the full
86
- // `lib/projectname/...`.
87
- //
88
- // AND THE TRIM IS INVISIBLE TO THE COMPILER HERE, unlike everywhere
89
- // else. mix compiles everything under lib/ and Elixir needs no
90
- // import, so a plugin file this exclude failed to remove compiles
91
- // silently and SHIPS - where go fails on an unused import, py on a
92
- // missing module and ts on an unresolved one. Only the parity and
93
- // vendored guards can catch a broken trim in this target.
94
67
  exclude: [...pluginExcludes(model)],
95
68
  replace: {
96
69
  ...stdrep,
@@ -118,7 +91,6 @@ const Main = cmp(async function Main(props: any) {
118
91
  )
119
92
  })
120
93
 
121
- // Operation pipeline (hook markers replaced here — gotcha #1).
122
94
  File({ name: 'pipeline.' + target.ext }, () => {
123
95
  Fragment({
124
96
  from: ff + 'Pipeline.fragment.ex',
@@ -158,18 +130,6 @@ end
158
130
  `)
159
131
  })
160
132
 
161
- // WHERE THE CREDENTIAL GOES IS GENERATED, NOT COPIED. prepare_auth was
162
- // the one pipeline utility whose answer is a fact about the API rather
163
- // than about the language, and tm/ can only hold one answer - so it is
164
- // extracted out of the copied utility.ex into its own module here. See
165
- // PrepareAuth_elixir for the extraction and for why the registration in
166
- // utility.ex still binds it.
167
- //
168
- // CALLED FROM INSIDE THIS `lib` FOLDER, and the component opens only
169
- // `<name>`, so the file lands at lib/<name>/prepare_auth.ex - beside the
170
- // utility.ex the Copy above puts at lib/<name>/utility.ex. Opening `lib`
171
- // in the component too would write lib/lib/<name>/, which mix would
172
- // compile anyway (it globs the whole tree) and no test could see.
173
133
  PrepareAuth({ target })
174
134
  })
175
135