@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
@@ -33,10 +33,10 @@ function normalizePathParams(
33
33
  // original name was renamed to another param's current name (e.g. badge
34
34
  // load: param 'group_id' has orig 'id', and another param has name 'id').
35
35
  const param = params.find((p: any) =>
36
- p.name === snaked || p.name === depluralized) ||
36
+ p.n === snaked || p.n === depluralized) ||
37
37
  params.find((p: any) =>
38
- p.orig === snaked || p.orig === depluralized)
39
- if (param) return '{' + param.name + '}'
38
+ p.or === snaked || p.or === depluralized)
39
+ if (param) return '{' + param.n + '}'
40
40
 
41
41
  if (rename) {
42
42
  for (const [origCamel, renamedTo] of Object.entries(rename)) {
@@ -44,10 +44,10 @@ function normalizePathParams(
44
44
  const origSnaked = snakify(origCamel)
45
45
  const origDepluralized = depluralize(origSnaked)
46
46
  const renamedParam = params.find(
47
- (p: any) => p.orig === origSnaked || p.name === origSnaked ||
48
- p.orig === origDepluralized || p.name === origDepluralized
47
+ (p: any) => p.or === origSnaked || p.n === origSnaked ||
48
+ p.or === origDepluralized || p.n === origDepluralized
49
49
  )
50
- if (renamedParam) return '{' + renamedParam.name + '}'
50
+ if (renamedParam) return '{' + renamedParam.n + '}'
51
51
  }
52
52
  }
53
53
  }
@@ -110,8 +110,8 @@ const TestDirect = cmp(function TestDirect(props: any) {
110
110
  const listOp = entity.op?.list
111
111
 
112
112
  const loadPoint = loadOp?.points?.[0]
113
- const loadPath = loadPoint ? normalizePathParams(pointParts(loadPoint), loadPoint?.args?.params || [], loadPoint?.rename?.param) : ''
114
- const allLoadParams = loadPoint?.args?.params || []
113
+ const loadPath = loadPoint ? normalizePathParams(pointParts(loadPoint), loadPoint?.g?.params || [], loadPoint?.r?.param) : ''
114
+ const allLoadParams = loadPoint?.g?.params || []
115
115
  // Only path params that actually appear in the URL template drive direct-
116
116
  // test path-param setup and URL-substitution asserts (see TestDirect_rb).
117
117
  const _pathPlaceholders = new Set<string>()
@@ -120,7 +120,7 @@ const TestDirect = cmp(function TestDirect(props: any) {
120
120
  _pathPlaceholders.add(part.slice(1, -1))
121
121
  }
122
122
  }
123
- const _renameMap = (loadPoint?.rename?.param || {}) as Record<string, string>
123
+ const _renameMap = (loadPoint?.r?.param || {}) as Record<string, string>
124
124
  const _renamedPlaceholders = new Set<string>()
125
125
  for (const ph of _pathPlaceholders) {
126
126
  _renamedPlaceholders.add(ph)
@@ -129,25 +129,25 @@ const TestDirect = cmp(function TestDirect(props: any) {
129
129
  }
130
130
  }
131
131
  const loadParams = allLoadParams.filter((p: any) =>
132
- _renamedPlaceholders.has(p.name) || _renamedPlaceholders.has(p.orig))
132
+ _renamedPlaceholders.has(p.n) || _renamedPlaceholders.has(p.or))
133
133
 
134
134
  const listPoint = listOp?.points?.[0]
135
- const listPath = listPoint ? normalizePathParams(pointParts(listPoint), listPoint?.args?.params || [], listPoint?.rename?.param) : ''
136
- const listParams = listPoint?.args?.params || []
135
+ const listPath = listPoint ? normalizePathParams(pointParts(listPoint), listPoint?.g?.params || [], listPoint?.r?.param) : ''
136
+ const listParams = listPoint?.g?.params || []
137
137
 
138
138
  // Required query params with spec-provided examples - needed in live mode.
139
- const loadQuery = loadPoint?.args?.query || []
139
+ const loadQuery = loadPoint?.g?.query || []
140
140
  const loadLiveQueryEntries = loadQuery
141
- .filter((q: any) => q.reqd && undefined !== q.example && null !== q.example)
141
+ .filter((q: any) => q.r && undefined !== q.ex && null !== q.ex)
142
142
  const loadLiveQueryLines = loadLiveQueryEntries
143
- .map((q: any) => ` $query->{'${q.name}'} = ${perlScalar(q.example)};`)
143
+ .map((q: any) => ` $query->{'${q.n}'} = ${perlScalar(q.ex)};`)
144
144
  .join('\n')
145
145
 
146
146
  const loadAllHaveExamples =
147
147
  loadParams.length > 0 &&
148
- loadParams.every((p: any) => undefined !== p.example && null !== p.example)
148
+ loadParams.every((p: any) => undefined !== p.ex && null !== p.ex)
149
149
  const loadExampleLines = loadAllHaveExamples
150
- ? loadParams.map((p: any) => ` $params->{'${p.name}'} = ${perlScalar(p.example)};`).join('\n')
150
+ ? loadParams.map((p: any) => ` $params->{'${p.n}'} = ${perlScalar(p.ex)};`).join('\n')
151
151
  : ''
152
152
 
153
153
  const entidEnvVar = `${PROJECTNAME}_TEST_${envToken(entity.name)}_ENTID`
@@ -171,9 +171,9 @@ require(Cwd::abs_path("$FindBin::Bin/runner.pm"));
171
171
 
172
172
  if (hasList && listPoint) {
173
173
  const listLiveIdKeys: string[] = listParams.map((lp: any) => {
174
- return lp.name === 'id'
174
+ return lp.n === 'id'
175
175
  ? entity.name + '01'
176
- : lp.name.replace(/_id$/, '') + '01'
176
+ : lp.n.replace(/_id$/, '') + '01'
177
177
  })
178
178
  const listSkipBlock = listLiveIdKeys.length > 0
179
179
  ? ` if ($setup->{live}) {
@@ -207,14 +207,14 @@ ${listSkipBlock} my $client = $setup->{client};
207
207
  Content(` my $params = {};
208
208
  `)
209
209
  for (const lp of listParams) {
210
- const key = lp.name === 'id'
210
+ const key = lp.n === 'id'
211
211
  ? entity.name + '01'
212
- : lp.name.replace(/_id$/, '') + '01'
212
+ : lp.n.replace(/_id$/, '') + '01'
213
213
  Content(` if ($setup->{live}) {
214
- $params->{'${lp.name}'} = $setup->{idmap}{'${key}'};
214
+ $params->{'${lp.n}'} = $setup->{idmap}{'${key}'};
215
215
  }
216
216
  else {
217
- $params->{'${lp.name}'} = 'direct01';
217
+ $params->{'${lp.n}'} = 'direct01';
218
218
  }
219
219
  `)
220
220
  }
@@ -270,8 +270,6 @@ ${listSkipBlock} my $client = $setup->{client};
270
270
  }
271
271
 
272
272
  if (hasLoad && loadPoint) {
273
- // Skip live direct-load only when we can't fill path params:
274
- // no spec examples and no list-bootstrap. Spec examples win first.
275
273
  const loadSkipBlock = (loadParams.length > 0 && !loadAllHaveExamples)
276
274
  ? ` if ($setup->{live}) {
277
275
  note('live direct-load needs real ID - set *_ENTID env var with real IDs to run');
@@ -307,7 +305,7 @@ ${loadSkipBlock} my $client = $setup->{client};
307
305
  else {
308
306
  `)
309
307
  for (let i = 0; i < loadParams.length; i++) {
310
- Content(` $params->{'${loadParams[i].name}'} = 'direct0${i + 1}';
308
+ Content(` $params->{'${loadParams[i].n}'} = 'direct0${i + 1}';
311
309
  `)
312
310
  }
313
311
  Content(` }
@@ -322,7 +320,7 @@ ${loadLiveQueryLines}
322
320
  Content(` unless ($setup->{live}) {
323
321
  `)
324
322
  for (let i = 0; i < loadParams.length; i++) {
325
- Content(` $params->{'${loadParams[i].name}'} = 'direct0${i + 1}';
323
+ Content(` $params->{'${loadParams[i].n}'} = 'direct0${i + 1}';
326
324
  `)
327
325
  }
328
326
  Content(` }
@@ -1,3 +1,4 @@
1
+ import { flowSteps } from '@voxgig/sdkgen'
1
2
 
2
3
  import {
3
4
  KIT,
@@ -80,10 +81,10 @@ const TestEntity = cmp(function TestEntity(props: any) {
80
81
  const idnames = buildIdNames(entity, basicflow)
81
82
  const idnamesStr = idnames.map(n => `'${n}'`).join(', ')
82
83
 
83
- const allSteps = Object.values(basicflow.step) as any[]
84
- const updateStep = allSteps.find((s: any) => s.op === 'update')
85
- const updateData = updateStep?.data
86
- ? Object.entries(updateStep.data).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
84
+ const allSteps = Object.values(flowSteps(basicflow)) as any[]
85
+ const updateStep = allSteps.find((s: any) => s.o === 'update')
86
+ const updateData = updateStep?.d
87
+ ? Object.entries(updateStep.d).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
87
88
  : []
88
89
  const aliases = updateData.map(([k, v]: any) => [k, v])
89
90
 
@@ -93,7 +94,7 @@ const TestEntity = cmp(function TestEntity(props: any) {
93
94
  // below therefore wraps this in a second pair of parens, which is a no-op
94
95
  // for a non-empty list because Perl flattens it.
95
96
  const opsList = Array.from(new Set(
96
- (allSteps as any[]).map((s: any) => s.op).filter(Boolean)))
97
+ (allSteps as any[]).map((s: any) => s.o).filter(Boolean)))
97
98
  .map(o => `'${o}'`).join(', ')
98
99
 
99
100
  const genCtx: GenCtx = { model, entity, flow: basicflow, N, PROJUPPER }
@@ -145,7 +146,7 @@ BASIC_FLOW: {
145
146
  `)
146
147
 
147
148
  // Check if the flow has a create step
148
- const flowHasCreate = allSteps.some((s: any) => s.op === 'create')
149
+ const flowHasCreate = allSteps.some((s: any) => s.o === 'create')
149
150
  if (!flowHasCreate) {
150
151
  Content(` # Bootstrap entity data from existing test data.
151
152
  $V{${entity.name}_ref01_data_raw} = Voxgig::Struct::items(${N}Helpers::to_map(
@@ -159,8 +160,8 @@ BASIC_FLOW: {
159
160
  }
160
161
 
161
162
  // Model-driven step iteration
162
- each(basicflow.step, (step: any, index: any) => {
163
- const opgen: OpGen = GENERATE_OP[step.op]
163
+ each(flowSteps(basicflow), (step: any, index: any) => {
164
+ const opgen: OpGen = GENERATE_OP[step.o]
164
165
  if (opgen) {
165
166
  opgen(genCtx, step, index)
166
167
  Content('\n')
@@ -261,13 +262,13 @@ done_testing();
261
262
 
262
263
  const generateCreate: OpGen = (ctx, step, index) => {
263
264
  const { entity, flow, N } = ctx
264
- const ref = step.input.ref ?? entity.name + '_ref01'
265
- const entvar = step.input.entvar ?? ref + '_ent'
266
- const datavar = step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? ''))
265
+ const ref = step.i.ref ?? entity.name + '_ref01'
266
+ const entvar = step.i.entvar ?? ref + '_ent'
267
+ const datavar = step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? ''))
267
268
 
268
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
269
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
269
270
  const needsEnt = !priorSteps.some((s: any) =>
270
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
271
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
271
272
 
272
273
  Content(` # CREATE
273
274
  `)
@@ -299,14 +300,14 @@ const generateCreate: OpGen = (ctx, step, index) => {
299
300
 
300
301
  const generateList: OpGen = (ctx, step, index) => {
301
302
  const { entity, flow, N } = ctx
302
- const ref = step.input.ref ?? entity.name + '_ref01'
303
- const entvar = step.input.entvar ?? ref + '_ent'
304
- const matchvar = step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? ''))
305
- const listvar = step.input.listvar ?? (ref + '_list' + (step.input.suffix ?? ''))
303
+ const ref = step.i.ref ?? entity.name + '_ref01'
304
+ const entvar = step.i.entvar ?? ref + '_ent'
305
+ const matchvar = step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? ''))
306
+ const listvar = step.i.listvar ?? (ref + '_list' + (step.i.suffix ?? ''))
306
307
 
307
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
308
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
308
309
  const needsEnt = !priorSteps.some((s: any) =>
309
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
310
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
310
311
 
311
312
  Content(` # LIST
312
313
  `)
@@ -336,12 +337,12 @@ const generateList: OpGen = (ctx, step, index) => {
336
337
  `)
337
338
 
338
339
  // Handle validators
339
- const allSteps = Object.values(flow.step) as any[]
340
- if (step.valid) {
341
- for (const validator of step.valid) {
340
+ const allSteps = Object.values(flowSteps(flow)) as any[]
341
+ if (step.v) {
342
+ for (const validator of step.v) {
342
343
  const validRef = validator.def?.ref
343
- const hasRefData = validRef && allSteps.some((s: any) => 'create' === s.op &&
344
- ((s.input.ref ?? entity.name + '_ref01') === validRef))
344
+ const hasRefData = validRef && allSteps.some((s: any) => 'create' === s.o &&
345
+ ((s.i.ref ?? entity.name + '_ref01') === validRef))
345
346
 
346
347
  if ('ItemExists' === validator.apply && hasRefData) {
347
348
  const refDataVar = validRef + '_data'
@@ -367,16 +368,16 @@ const generateList: OpGen = (ctx, step, index) => {
367
368
 
368
369
  const generateUpdate: OpGen = (ctx, step, index) => {
369
370
  const { entity, flow, N } = ctx
370
- const ref = step.input.ref ?? entity.name + '_ref01'
371
- const entvar = step.input.entvar ?? ref + '_ent'
372
- const datavar = step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? ''))
373
- const resdatavar = step.input.resdatavar ?? (ref + '_resdata' + (step.input.suffix ?? ''))
374
- const markdefvar = step.input.markdefvar ?? (ref + '_markdef' + (step.input.suffix ?? ''))
375
- const srcdatavar = step.input.srcdatavar ?? (ref + '_data' + (step.input.suffix ?? ''))
376
-
377
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
371
+ const ref = step.i.ref ?? entity.name + '_ref01'
372
+ const entvar = step.i.entvar ?? ref + '_ent'
373
+ const datavar = step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? ''))
374
+ const resdatavar = step.i.resdatavar ?? (ref + '_resdata' + (step.i.suffix ?? ''))
375
+ const markdefvar = step.i.markdefvar ?? (ref + '_markdef' + (step.i.suffix ?? ''))
376
+ const srcdatavar = step.i.srcdatavar ?? (ref + '_data' + (step.i.suffix ?? ''))
377
+
378
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
378
379
  const needsEnt = !priorSteps.some((s: any) =>
379
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
380
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
380
381
 
381
382
  const hasEntIdU = null != entity.id
382
383
 
@@ -393,8 +394,8 @@ const generateUpdate: OpGen = (ctx, step, index) => {
393
394
  `)
394
395
  }
395
396
 
396
- if (step.data) {
397
- const dataEntries = Object.entries(step.data).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
397
+ if (step.d) {
398
+ const dataEntries = Object.entries(step.d).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
398
399
  for (const [key] of dataEntries) {
399
400
  Content(` '${key}' => $setup->{idmap}{'${key}'},
400
401
  `)
@@ -404,10 +405,10 @@ const generateUpdate: OpGen = (ctx, step, index) => {
404
405
  Content(` };
405
406
  `)
406
407
 
407
- if (step.spec) {
408
- for (const spec of step.spec) {
409
- if ('TextFieldMark' === spec.apply && null != step.input.textfield) {
410
- const fieldname = step.input.textfield
408
+ if (step.s) {
409
+ for (const spec of step.s) {
410
+ if ('TextFieldMark' === spec.apply && null != step.i.textfield) {
411
+ const fieldname = step.i.textfield
411
412
  const fieldvalue = spec.def?.mark ?? `Mark01-${ref}`
412
413
  Content(`
413
414
  $V{${markdefvar}_name} = '${fieldname}';
@@ -428,9 +429,9 @@ const generateUpdate: OpGen = (ctx, step, index) => {
428
429
  `)
429
430
  }
430
431
 
431
- if (step.spec) {
432
- for (const spec of step.spec) {
433
- if ('TextFieldMark' === spec.apply && null != step.input.textfield) {
432
+ if (step.s) {
433
+ for (const spec of step.s) {
434
+ if ('TextFieldMark' === spec.apply && null != step.i.textfield) {
434
435
  Content(` is($V{${resdatavar}}{ $V{${markdefvar}_name} }, $V{${markdefvar}_value}, '${entity.name} update: mark');
435
436
  `)
436
437
  }
@@ -441,23 +442,23 @@ const generateUpdate: OpGen = (ctx, step, index) => {
441
442
 
442
443
  const generateLoad: OpGen = (ctx, step, index) => {
443
444
  const { entity, flow, N } = ctx
444
- const ref = step.input.ref ?? entity.name + '_ref01'
445
- const entvar = step.input.entvar ?? ref + '_ent'
446
- const matchvar = step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? ''))
447
- const datavar = step.input.datavar ?? (ref + '_data' + (step.input.suffix ?? ''))
448
- const srcdatavar = step.input.srcdatavar ?? (ref + '_data' + (step.input.suffix ?? ''))
445
+ const ref = step.i.ref ?? entity.name + '_ref01'
446
+ const entvar = step.i.entvar ?? ref + '_ent'
447
+ const matchvar = step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? ''))
448
+ const datavar = step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? ''))
449
+ const srcdatavar = step.i.srcdatavar ?? (ref + '_data' + (step.i.suffix ?? ''))
449
450
 
450
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
451
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
451
452
  const hasEntVar = priorSteps.some((s: any) =>
452
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
453
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
453
454
 
454
- const flowHasCreate = Object.values(flow.step).some((s: any) => (s as any).op === 'create')
455
+ const flowHasCreate = Object.values(flowSteps(flow)).some((s: any) => (s as any).o === 'create')
455
456
  const preambleRef = entity.name + '_ref01'
456
457
  const hasSrcData = (!flowHasCreate && srcdatavar === (preambleRef + '_data')) ||
457
458
  priorSteps.some((s: any) => {
458
- if ('create' === s.op) {
459
- const priorRef = s.input.ref ?? entity.name + '_ref01'
460
- const priorDatvar = s.input.datavar ?? (priorRef + '_data' + (s.input.suffix ?? ''))
459
+ if ('create' === s.o) {
460
+ const priorRef = s.i.ref ?? entity.name + '_ref01'
461
+ const priorDatvar = s.i.datavar ?? (priorRef + '_data' + (s.i.suffix ?? ''))
461
462
  return priorDatvar === srcdatavar
462
463
  }
463
464
  return false
@@ -501,14 +502,14 @@ const generateLoad: OpGen = (ctx, step, index) => {
501
502
 
502
503
  const generateRemove: OpGen = (ctx, step, index) => {
503
504
  const { entity, flow, N } = ctx
504
- const ref = step.input.ref ?? entity.name + '_ref01'
505
- const entvar = step.input.entvar ?? ref + '_ent'
506
- const matchvar = step.input.matchvar ?? (ref + '_match' + (step.input.suffix ?? ''))
507
- const srcdatavar = step.input.srcdatavar ?? (ref + '_data')
505
+ const ref = step.i.ref ?? entity.name + '_ref01'
506
+ const entvar = step.i.entvar ?? ref + '_ent'
507
+ const matchvar = step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? ''))
508
+ const srcdatavar = step.i.srcdatavar ?? (ref + '_data')
508
509
 
509
- const priorSteps = Object.values(flow.step).slice(0, Number(index)) as any[]
510
+ const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
510
511
  const needsEnt = !priorSteps.some((s: any) =>
511
- ['create', 'list', 'load', 'update', 'remove'].includes(s.op))
512
+ ['create', 'list', 'load', 'update', 'remove'].includes(s.o))
512
513
 
513
514
  Content(` # REMOVE
514
515
  `)
@@ -12,34 +12,8 @@ function projectPath(suffix?: string): string {
12
12
  }
13
13
 
14
14
 
15
- // Strip model-internal keys (ending in `$`) so generated config JSON only
16
- // carries API-shaped data.
17
- // Emission-time normalisation of a model subtree (L0).
18
- //
19
- // Always drops jostraca's iteration metadata (`$`-suffixed keys: index$,
20
- // key$, val$). With `dropDefaults`, also drops keys whose value IS the
21
- // default the runtime already assumes when the key is absent, which is pure
22
- // payload — see CONFIG_DEFAULT.
23
- //
24
- // Rebuilds the tree rather than mutating during a walk. The previous
25
- // implementation walked a clone calling `delete p[k]`, but walk() assigns its
26
- // callback's result back over the child (`setprop(out, ckey, walk(...))`), so
27
- // the delete was undone on the way out and the helper silently did nothing.
28
- // Returning `undefined` from the callback does not fix it either: setprop
29
- // stores undefined rather than removing the key, which then emits as a null.
30
- //
31
- // `dropDefaults` is opt-in and must be passed ONLY for the entity subtree.
32
- // `active` means something different in feature config, where absent reads as
33
- // INACTIVE (see feature_init) — dropping `active: true` there would silently
34
- // disable the feature.
35
- // jostraca's iteration metadata, injected by each()/names() while it walks the
36
- // model. Listed explicitly rather than matched by trailing-dollar suffix: a
37
- // trailing dollar is not exclusive to jostraca -- Seneca uses entity$ as real
38
- // data -- so a blanket suffix match can silently drop a legitimate API field.
39
15
  const MODEL_META = ['index$', 'key$', 'val$']
40
16
 
41
- // Keys whose value IS the default the runtime already assumes when the key is
42
- // absent, so emitting them is pure payload.
43
17
  const CONFIG_DEFAULT: Record<string, any> = {
44
18
  active: true,
45
19
  req: false,
@@ -35,45 +35,11 @@ import {
35
35
  } from './utility_php'
36
36
 
37
37
 
38
- // PLUGIN DEFINITION REQUIRES AND THE feature_plugins ACCESSOR (the php peer
39
- // of cmp/rb/Config_rb.ts's rbPlugins and cmp/py/Config_py.ts's
40
- // pluginImports/pluginDefs).
41
- //
42
- // Upstream sekreto replaced its self-registration registry with
43
- // voxgig/plugin definitions: a provider kind the caller did not pass in via
44
- // `plugins: [...]` is unknown to that Sekreto. So config names each active
45
- // plugin's exported DEFINITION FUNCTION (the model's `def.php` map) and
46
- // hands the list to the feature.
47
- //
48
- // A METHOD rather than a constant, and this is php's own constraint: a
49
- // plugin definition holds CLOSURES (sekreto's Providers.php says so where
50
- // it declares `builtins()`), and php has no constant that can. The
51
- // `require_once` calls live INSIDE the method for the same reason upstream
52
- // puts them inside plugins.php's own accessors - a plugin file is read only
53
- // when a feature actually asks for its definitions.
54
- //
55
- // The `def` map is declared in the model rather than derived from filenames
56
- // because one file may export several definitions (sekreto's aws.php
57
- // exports awssecrets AND awsparams) - hence the de-duplication by path, so
58
- // a two-definition file yields ONE require_once. A def value is the file's
59
- // path under tm/php, which is this target's root and also config.php's own
60
- // directory, so the require is that path verbatim.
61
- //
62
- // GATED, like rb: the whole block is emitted only when an active feature
63
- // DECLARES a plugin catalogue for this target. An SDK that does not carry
64
- // the secrets feature must be byte-identical to what it was before the
65
- // feature existed, and an unread accessor is not a thing a simple SDK
66
- // should have to explain. The feature reads it through `method_exists`, so
67
- // its absence is not a load error.
68
38
  function phpPlugins(model: any, feature: any) {
69
39
  const defs: Record<string, { paths: string[], syms: string[] }> = {}
70
40
  let declared = false
71
41
 
72
42
  each(feature, (f: any) => {
73
- // `only_active: false`, and this is the whole subtlety: the feature
74
- // object a component is handed has ALREADY been filtered, so asking it
75
- // whether a catalogue EXISTS answers no as soon as every group is off.
76
- // (Same trap helpers/featureSource documents one level down.)
77
43
  const all = getModelPath(model, `main.${KIT}.feature.${f.name}.plugin`,
78
44
  { required: false, only_active: false }) || {}
79
45
 
@@ -85,10 +51,6 @@ function phpPlugins(model: any, feature: any) {
85
51
  const syms: string[] = []
86
52
 
87
53
  each(f.plugin, (plugin: any) => {
88
- // Filter on `active` HERE rather than trusting the feature object to
89
- // arrive filtered: getting it wrong in this direction emits a
90
- // require_once for a file the plugin trim just deleted - an SDK that
91
- // does not load, rather than one that merely carries too much.
92
54
  if (false === plugin.active || null == plugin.active) return
93
55
 
94
56
  for (const [sym, one] of Object.entries(plugin.def?.php || {})) {
@@ -113,15 +75,11 @@ const Config = cmp(async function Config(props: any) {
113
75
  const model: Model = ctx$.model
114
76
 
115
77
  const entity = getModelPath(model, `main.${KIT}.entity`)
116
- // Gated by the applicability tags, so this target never imports or
117
- // registers a feature it has no source for. One rule, one place:
118
- // helpers/applicability.
119
78
  const feature = targetFeatures(model, target)
120
79
 
121
80
  const headers = getModelPath(model, `main.${KIT}.config.headers`) || {}
122
81
 
123
82
  const authActive = isAuthActive(model)
124
- // config.auth.prefix override -> spec-derived info.security.prefix -> 'Bearer'
125
83
  const authPrefix = resolveAuthPrefix(model)
126
84
  // `in` and `name` travel with the prefix now. They were resolved by
127
85
  // apidef all along and dropped here, so an apiKey-in-query API got an
@@ -134,9 +92,6 @@ const Config = cmp(async function Config(props: any) {
134
92
  let baseUrl = ''
135
93
  try { baseUrl = getModelPath(model, `main.${KIT}.info.servers.0.url`) } catch (_e) { }
136
94
 
137
- // Templated server URL: emit the spec's server-variable defaults so the
138
- // runtime can substitute {name} placeholders in base (see MakeOptions).
139
- // `$` is escaped so a default can never open a PHP interpolation.
140
95
  const svars = serverVariables(model)
141
96
  const phps = (s: string) => JSON.stringify(s).replace(/\$/g, '\\$')
142
97
  const serverBlock = 0 === svars.length ? '' :
@@ -152,21 +107,12 @@ const Config = cmp(async function Config(props: any) {
152
107
  ],\n`
153
108
  : ''
154
109
 
155
- // The same config as an OBJECT, built by the shared helper so this target's
156
- // literal and the data that replaces it above the threshold are the same
157
- // config by construction. The JSON is what the threshold is measured on -
158
- // emitted source size varies by language, the model does not. Passing the
159
- // target name opts in to the main.slug/version/target identity fields -
160
- // both representations below carry them, keeping the reps interchangeable.
161
110
  const { def: configDef, json: configJson } = configDefinition(model, target.name)
162
111
  const asData = isConfigData(configJson, configReprSetting(model))
163
112
 
164
113
  const { defs: pluginDefs, declared: pluginDeclared } = phpPlugins(model, feature)
165
114
  const pluginFeatures = Object.keys(pluginDefs).sort()
166
115
 
167
- // Emitted whenever a catalogue is declared, even with every group off:
168
- // the feature asks for the list unconditionally, and an SDK whose chain
169
- // is all built-ins still has to be answered with an empty one.
170
116
  const featurePluginsBlock = !pluginDeclared ? '' : `
171
117
  /**
172
118
  * The sekreto plugin DEFINITIONS the model selected per feature, from
@@ -224,25 +170,6 @@ class ${model.const.Name}Config
224
170
 
225
171
  `)
226
172
 
227
- // ABOVE THE THRESHOLD: emit the model as DATA.
228
- //
229
- // An array literal is compiled opcode by opcode and held in the opcache
230
- // entry for this file; a string constant is one token, and `json_decode`
231
- // (C) builds the array far faster than the equivalent literal.
232
- //
233
- // PHP cannot tell an empty list from an empty map, so `{}` and `[]` decode
234
- // to the same value and the two representations have to AGREE about which
235
- // one the literal would have produced. `formatPhpArray` emits `[]` for
236
- // every empty map, and the literal branch hand-writes `(object)[]` in
237
- // exactly two places - `entity` and `options.entity`, and only when the
238
- // model declares no entities at all, because the SDK runtime validator
239
- // wants a map there. This reproduces that rule rather than improving on
240
- // it: an emission wart is not something the data path gets to fix
241
- // unilaterally, or the two branches stop being interchangeable.
242
- //
243
- // A SINGLE-quoted literal, so the JSON survives verbatim: a double-quoted
244
- // PHP string would interpolate any `$name` the model contains - and the
245
- // model is full of them (`$STRING`, `$action`).
246
173
  if (asData) {
247
174
  Content(` /**
248
175
  * THE API MODEL, EMBEDDED AS DATA (sdkgen rung L1).
@@ -323,9 +250,6 @@ class ${model.const.Name}Config
323
250
  `)
324
251
  })
325
252
 
326
- // PHP can't distinguish empty list from empty map; the SDK runtime
327
- // validator wants an object for `entity` and `feature.test.entity`. Use
328
- // `(object)[]` when the map is empty so the merge preserves map shape.
329
253
  const entityIsEmpty = Object.keys(entity || {}).length === 0
330
254
  if (entityIsEmpty) {
331
255
  Content(` ],
@@ -1,28 +1,5 @@
1
1
 
2
2
 
3
- // Typed-model generator (PHP target).
4
- //
5
- // Ported from the TypeScript reference EntityTypes_ts.ts. Reads
6
- // main.<KIT>.entity.<e>.fields[] and per-op params (op.<name>.points[].args.params[])
7
- // and emits one file, types/<Sdk>Types.php, containing a PHP 8 class with typed
8
- // properties per active entity plus a request/match class per active op. Field/param
9
- // sentinels ($STRING, $INTEGER, ...) are turned into real PHP types by the shared
10
- // sdkgen helper `canonToType` (source of truth: @voxgig/apidef VALID_CANON):
11
- // $STRING -> string, $INTEGER -> int, $NUMBER -> float, $BOOLEAN -> bool,
12
- // $OBJECT/$ARRAY -> array, unknown -> mixed.
13
- //
14
- // Type-name scheme (IDENTICAL to TS): data type = <Name>; per-op request
15
- // <Name>LoadMatch / <Name>ListMatch / <Name>RemoveMatch (query/id ops),
16
- // <Name>CreateData / <Name>UpdateData (body ops). An op WITH params -> a typed
17
- // class of those params (reqd:false -> nullable, defaulted null). An op WITHOUT
18
- // params -> a match class over the entity fields, all nullable/optional (the
19
- // PHP stand-in for TS `Partial<Name>`; callers may also pass a plain assoc-array).
20
- //
21
- // PHP has no generics and no structural typing, so these classes are documentation-
22
- // grade value objects: op signatures keep a permissive native type (assoc-array in,
23
- // mixed out at the item-5 boundary) and surface the class names via PHPDoc. The file
24
- // lands under types/ and is registered on composer's classmap autoload (see
25
- // Package_php.ts) so `new <Name>()` / type references resolve globally.
26
3
 
27
4
  import {
28
5
  cmp, each, names,
@@ -40,19 +17,11 @@ import {
40
17
  const LANG = 'php'
41
18
 
42
19
 
43
- // A valid PHP property/label name (identifiers only; the corpus never carries
44
- // exotic field names, but guard so a bad name can never emit invalid PHP).
45
20
  function validName(name: string): boolean {
46
21
  return /^[A-Za-z_\x80-\xff][A-Za-z0-9_\x80-\xff]*$/.test(name)
47
22
  }
48
23
 
49
24
 
50
- // Emit one typed PHP property line. `mixed` is already nullable in PHP and
51
- // rejects the `?` prefix, so it is special-cased; every other optional field
52
- // becomes `?type` with a `= null` default so the property is safely optional.
53
- // A `$NULL`-typed field maps to the 'null' type name, which is not usable as
54
- // a property type here (`?null` is a fatal, and standalone `null` needs
55
- // PHP >= 8.2), so it degrades to `mixed` too.
56
25
  function propLine(name: string, sentinel: unknown, optional: boolean): string {
57
26
  const type = canonToType(sentinel, LANG)
58
27
  if ('mixed' === type || 'null' === type) {
@@ -69,10 +38,6 @@ function propLine(name: string, sentinel: unknown, optional: boolean): string {
69
38
  const EntityTypes = cmp(function EntityTypes(props: any) {
70
39
  const { model, log } = props.ctx$
71
40
 
72
- // only_active:false — getModelPath DROPS active:false entries by default,
73
- // but the consumer scaffold (create-sdkgen Root.ts) iterates the RAW entity
74
- // collection, so inactive entities still get generated entity code that
75
- // references these typed names. The typed model must cover them too.
76
41
  const entity = getModelPath(model, `main.${KIT}.entity`, { only_active: false, required: false })
77
42
  // Emit for EVERY entity that gets generated entity code: the consumer
78
43
  // scaffold (create-sdkgen Root.ts) iterates entities WITHOUT an active
@@ -84,9 +49,6 @@ const EntityTypes = cmp(function EntityTypes(props: any) {
84
49
  // entity not yet named (e.g. a fieldless placeholder) would otherwise read
85
50
  // `Name = undefined` below. Parity with the go emitter's fix.
86
51
 
87
- // Surface duplicate generated type names (two entities with the same
88
- // PascalCase Name) — they would redeclare a type in statically-typed
89
- // targets. Detection only; renaming is a model-level decision.
90
52
  warnEntityTypeCollisions(entity, log, LANG)
91
53
 
92
54
  Folder({ name: 'types' }, () => {
@@ -98,8 +60,8 @@ declare(strict_types=1);
98
60
 
99
61
  // Typed models for the ${model.const.Name} SDK.
100
62
  //
101
- // GENERATED from the API model: main.${KIT}.entity.<e>.fields[] and per-op
102
- // params (op.<name>.points[].args.params[]). Field/param types come from the
63
+ // GENERATED from the API model: main.${KIT}.entity.<e>.fields{} and per-op
64
+ // params (op.<name>.points[].g.params[]). Field/param types come from the
103
65
  // canonical type sentinels via @voxgig/sdkgen canonToType (source of truth:
104
66
  // @voxgig/apidef VALID_CANON). Do not edit by hand.
105
67
  //
@@ -112,34 +74,21 @@ declare(strict_types=1);
112
74
  entityList.forEach((ent: any) => {
113
75
  const Name = ent.Name
114
76
  const fields = (ent.fields ? each(ent.fields) : [])
115
- .filter((f: any) => f.active !== false && validName(f.name))
116
-
117
- // PHP refuses a reserved word where a class name is expected, and the
118
- // check is CASE-INSENSITIVE — an entity named `Namespace` emitted
119
- // `class Namespace`, which does not parse, and took the whole types
120
- // file with it (issue #64). phpSafeTypeName appends `Type` on a real
121
- // collision and leaves every other name untouched.
122
- //
123
- // Only the bare data class needs it: the per-op names below already
124
- // carry a suffix no reserved word matches, and the entity accessor is
125
- // a method, which PHP resolves separately.
77
+ .filter((f: any) => f.a !== false && validName(f.n))
78
+
126
79
  const TypeName = phpSafeTypeName(Name)
127
80
 
128
- // Entity data model: one typed property per field (`req:false` -> nullable).
129
81
  Content(`/** ${Name} entity data model. */
130
82
  class ${TypeName}
131
83
  {
132
84
  `)
133
85
  fields.forEach((f: any) => {
134
- Content(propLine(f.name, f.type, false === f.req))
86
+ Content(propLine(f.n, f.t, false === f.r))
135
87
  })
136
88
  Content(`}
137
89
 
138
90
  `)
139
91
 
140
- // Per active op: a request/match class. Members and their optionality
141
- // come from the shared partiality policy (opRequestShape); this file
142
- // only renders them as a PHP value-object class.
143
92
  const ops = ent.op || {}
144
93
  ;['load', 'list', 'create', 'update', 'remove'].forEach((opname: string) => {
145
94
  if (null == ops[opname]) {