@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,39 +1,3 @@
1
- // THE PACKAGE MANIFEST: `sdkgen-package.json`, beside the package's `.sdk`.
2
- //
3
- // See docs/design/sdkgen-packages.md §2.
4
- //
5
- // <package-root>/
6
- // ├── sdkgen-package.json <- this
7
- // └── .sdk/ <- shaped exactly like ts/project/.sdk
8
- //
9
- // WHY JSON RATHER THAN AONTU
10
- //
11
- // Consumer models compile under `@voxgig/model`'s strictly-configured parser,
12
- // which accepts `#` comments only — a `//` line is a parse error, and seven
13
- // shipped targets once broke on exactly that (ts/test/model-compile.test.ts
14
- // exists because of it). The manifest is read by the CLI and never unified
15
- // into the model, so JSON keeps it outside that trap entirely.
16
- //
17
- // WHAT IT IS FOR
18
- //
19
- // A package's CLAIM about what it provides, so that:
20
- //
21
- // - `package add <pkg>` knows what to install without guessing from
22
- // directory listings;
23
- // - a typo'd ref fails naming what the package actually provides, rather
24
- // than resolving to a folder that exists and failing later on a missing
25
- // file;
26
- // - an item records WHICH PACKAGE supplied it (`package:` provenance), so a
27
- // project can be resynced against a newer version of that package.
28
- //
29
- // A claim is worth nothing unless it is checked, so `validateManifest`
30
- // compares it against the trees actually on disk, in both directions: a
31
- // manifest that lies is an error, on-disk extras are a warning.
32
- //
33
- // THE MANIFEST IS OPTIONAL FOR A DIRECT REF. `target add ../pkg/iot-go`
34
- // against a bare `.sdk`-shaped folder keeps working exactly as it does today
35
- // — that is what every existing consumer fixture is — and simply records no
36
- // `package` provenance. Requiring one is `package add`'s business.
37
1
 
38
2
  import Path from 'node:path'
39
3
 
@@ -54,58 +18,26 @@ type Manifest = {
54
18
  name: string
55
19
  version?: string
56
20
 
57
- // DECLARATIVE ONLY, so far. Nothing reads this range yet: the engine gate
58
- // belongs with `package add` (design §9), which is the next phase, and
59
- // there is no semver implementation here to compare with — this package has
60
- // no runtime dependencies. Until then a package declaring an incompatible
61
- // range installs anyway. Stated here rather than left to be discovered,
62
- // because a field that looks enforced and is not is worse than an absent
63
- // one.
64
21
  engines?: { sdkgen?: string }
65
22
 
66
- // Keyed BY KIND, so a new kind (docs, …) needs no schema change.
67
23
  provides: Record<string, string[]>
68
24
 
69
25
  // Optional: which targets a feature ships source for, so a missing overlay
70
26
  // is reported as out-of-declared-coverage rather than broken.
71
27
  targetsSupported?: Record<string, string[]>
72
28
 
73
- // Optional: the author's declared parity tier per target, in
74
- // ts/test/parity.test.ts's vocabulary plus CONSUMER — see PARITY below.
75
29
  parity?: Record<string, string>
76
30
  }
77
31
 
78
32
 
79
- // THE CLOSED PARITY VOCABULARY.
80
- //
81
- // The first three are `ts/test/parity.test.ts`'s tiers, which grade a
82
- // language target against the shared `.aontu` corpus. `CONSUMER` is the
83
- // fourth and grades nothing: a consumer target wraps another target's SDK and
84
- // has no primary-utility surface to measure, so `parity.test.ts` keeps the
85
- // bundled ones in NON_SDK_TARGETS rather than in a tier. A package holding
86
- // one needs a way to say the same thing, and saying nothing is not it — an
87
- // absent field cannot be told apart from an author who did not know the field
88
- // existed, which is the silently-absent shape every other guard in this repo
89
- // exists to prevent.
90
- //
91
- // Closed, and checked, because a declaration nothing checks is the failure
92
- // `engines.sdkgen` documents about itself two fields up: a typo would
93
- // otherwise be indistinguishable from a considered choice.
94
33
  const PARITY = ['FULL', 'MIRRORED', 'UNCOVERED', 'CONSUMER']
95
34
 
96
35
 
97
- // What `readManifest` found. THREE outcomes, deliberately distinct: a
98
- // manifest, no manifest, or a manifest that could not be read. Collapsing the
99
- // last two into "no manifest" is what would let a typo in a package's own
100
- // JSON silently downgrade `package add` into a no-op.
101
36
  type ManifestRead = {
102
- // Where it was looked for, always — the value an error message needs.
103
37
  file: string
104
38
 
105
- // Present only when one was found AND parsed.
106
39
  manifest?: Manifest
107
40
 
108
- // Present only when one was found and could NOT be parsed.
109
41
  err?: string
110
42
  }
111
43
 
@@ -226,12 +158,6 @@ function checkShape(manifest: Manifest, file: string): Finding[] {
226
158
  continue
227
159
  }
228
160
 
229
- // A NAME, not a path. `missingPaths` joins these onto the package root,
230
- // so `../../outside` would send every existence check out of the
231
- // package entirely and let a manifest validate clean against unrelated
232
- // files. `~` is excluded for a different reason: it is the alias
233
- // separator, so a name containing one could never be resolved back to
234
- // this item.
235
161
  for (const name of names as string[]) {
236
162
  if (!ITEM_NAME_RE.test(name)) {
237
163
  found.push({
@@ -263,31 +189,9 @@ function checkShape(manifest: Manifest, file: string): Finding[] {
263
189
  }
264
190
 
265
191
 
266
- // What may name a target, feature, or any other item.
267
- //
268
- // Deliberately narrow: these become directory names, aontu model keys,
269
- // generated config keys (`options.feature.<name>`) and component filename
270
- // suffixes, so the intersection of what all of those accept is the real
271
- // constraint. The shipped names — `go-cli`, `py-data`, `seneca-provider`,
272
- // `clienttrack` — all fit.
273
192
  const ITEM_NAME_RE = /^[A-Za-z0-9][A-Za-z0-9._-]*$/
274
193
 
275
194
 
276
- // Does the package's disk match its claim?
277
- //
278
- // BOTH DIRECTIONS, because they fail differently and neither implies the
279
- // other:
280
- //
281
- // claim without disk -> ERROR. `package add` would try to install it and
282
- // break partway through, having already written the
283
- // items listed before it.
284
- // disk without claim -> WARN. Everything works; the author has shipped
285
- // something nobody can discover, which is nearly
286
- // always a forgotten manifest edit.
287
- //
288
- // `kindRequires` is supplied by the caller rather than imported, because the
289
- // kind registry lives in `action/` and this is a helper — the dependency has
290
- // to point that way, not this way.
291
195
  function validateManifest(
292
196
  fs: any,
293
197
  sdkfolder: string,
@@ -319,16 +223,6 @@ function validateManifest(
319
223
  continue
320
224
  }
321
225
 
322
- // ONE ORACLE FOR BOTH DIRECTIONS. The unclaimed-extras loop below reads
323
- // the directory listing; if this loop asked the filesystem instead
324
- // (`existsSync`/`statSync`), the two would disagree on a case-insensitive
325
- // filesystem — APFS and NTFS by default, which is most package authors'
326
- // machines. A manifest claiming `IoTGo` beside a `model/target/iotgo.aon`
327
- // then validated CLEAN for the author and failed for every Linux consumer,
328
- // which is precisely the "validated package that cannot install" this
329
- // function exists to prevent. It also makes the duplicate check above
330
- // meaningful: `['retry','Retry']` are two names to a Set and one file to
331
- // the filesystem.
332
226
  const defined = new Set(definitionNames(fs, sdkfolder, kind))
333
227
 
334
228
  for (const name of names) {
@@ -351,30 +245,6 @@ function validateManifest(
351
245
  const targets = new Set(provides.target ?? [])
352
246
  const graded = new Set(Object.keys(manifest.parity ?? {}))
353
247
 
354
- // A PROVIDED TARGET THE MANIFEST GRADES NOTHING FOR, when it grades OTHERS.
355
- //
356
- // Checking only the values leaves the weaker half undone: a typo'd tier is
357
- // caught while an absent one passes, and absent is the failure mode the
358
- // closed sets in this repo exist for — indistinguishable from an author who
359
- // did not know the field was there.
360
- //
361
- // SCOPED TO A PARTIAL DECLARATION, and the scope is a real constraint
362
- // rather than timidity. An ENTIRELY absent `parity` is the BUNDLED
363
- // manifest's deliberate state: design §18.4a refused to duplicate
364
- // parity.test.ts's tier map into ts/project/sdkgen-package.json, because
365
- // the intended direction is the reverse — the manifest becomes the source
366
- // and the suite reads it. Warning on a wholly absent field would fire on
367
- // the shipped scaffold's 25 targets and demand that duplication now, which
368
- // is the decision §18.4a made, not one to reverse from inside a validator.
369
- //
370
- // What IS unambiguous is inconsistency: a manifest that grades some of its
371
- // targets and not others has no second reading. Nobody decides to grade two
372
- // of three.
373
- //
374
- // WARNING, not error, and the level is the argument. The package works — a
375
- // missing coverage declaration installs and generates correctly — so
376
- // refusing it would be a worse outcome than saying so, the same call
377
- // `manifest-item-unclaimed` makes for a tree nothing claims.
378
248
  for (const name of (0 === graded.size ? [] : [...targets].sort())) {
379
249
  if (!graded.has(name as string)) {
380
250
  found.push({
@@ -404,10 +274,6 @@ function validateManifest(
404
274
  }
405
275
  }
406
276
 
407
- // The other direction. Only for kinds the manifest MENTIONS plus the ones
408
- // this generator knows — a directory named after a kind nobody registered
409
- // is already reported above if claimed, and is not this check's business if
410
- // not.
411
277
  for (const kind of Object.keys(kinds)) {
412
278
  const claimed = new Set(provides[kind] ?? [])
413
279
 
@@ -427,22 +293,6 @@ function validateManifest(
427
293
  }
428
294
 
429
295
 
430
- // Every path an item of this kind needs, that is not there AS THE RIGHT KIND
431
- // OF THING.
432
- //
433
- // The definition file is implied for every kind; the kind's REQUIRED trees
434
- // add whatever else it needs (a target's component and template trees, a docs
435
- // item's components). An optional tree — a docs item's templates — is not
436
- // checked here, because a package that legitimately ships none must validate.
437
- //
438
- // FILE vs DIRECTORY is checked, not merely existence. A regular file at
439
- // `src/cmp/<t>` satisfies `existsSync` and satisfies nothing else: `target
440
- // add` walks both of those paths as trees, so a package validated on
441
- // existence alone could still be incapable of installing a usable target —
442
- // which is the one thing validation is supposed to rule out.
443
- //
444
- // Returned as package-relative strings, because that is what an error message
445
- // should say: the absolute path is this machine's business, not the author's.
446
296
  function missingPaths(
447
297
  fs: any,
448
298
  sdkfolder: string,
@@ -453,8 +303,6 @@ function missingPaths(
453
303
  ): string[] {
454
304
  const missing: string[] = []
455
305
 
456
- // The definition, by EXACT NAME from the directory listing — see the note
457
- // at the call site about the two directions needing one oracle.
458
306
  if (!defined.has(name)) {
459
307
  missing.push('model/' + kind + '/' + name + '.aon')
460
308
  }
@@ -473,9 +321,6 @@ function missingPaths(
473
321
  }
474
322
 
475
323
 
476
- // What is at a path: a file, a directory, or nothing. `statSync` FOLLOWS
477
- // symlinks, deliberately — a package may legitimately symlink a shared tree,
478
- // and what matters is what `target add` will find when it walks it.
479
324
  function entryKind(fs: any, path: string): 'file' | 'dir' | 'none' {
480
325
  try {
481
326
  const stat = fs.statSync(path)
@@ -487,20 +332,6 @@ function entryKind(fs: any, path: string): 'file' | 'dir' | 'none' {
487
332
  }
488
333
 
489
334
 
490
- // WHERE A PACKAGE ROOT IS, given a ref.
491
- //
492
- // The same probe chain `resolveSource` uses for an ITEM, one level up: an
493
- // installed npm package first, then a path relative to the project, then an
494
- // absolute path. A package root is the folder HOLDING `.sdk`, which is what
495
- // makes `<root>/<item>` the item ref — so the two resolvers agree by
496
- // construction about what a package is.
497
- //
498
- // It reports rather than throws, and it does not require a manifest, because
499
- // its two callers want different things from the same probe: `package add`
500
- // refuses a folder with no manifest (that is the verb's whole subject), while
501
- // `package check` reports the absence as its first finding and carries on
502
- // checking the `.sdk` — an author who has not written the manifest yet is
503
- // exactly who needs the rest of the battery.
504
335
  type PackageProbe = {
505
336
  ref: string
506
337
  root: string
@@ -1,45 +1,14 @@
1
1
  /* Copyright (c) 2024-2026 Voxgig Ltd, MIT License */
2
2
 
3
- // Normalise entity names in the model so every generated identifier is legal.
4
- //
5
- // An entity name is a MODEL KEY, and every target builds identifiers from it:
6
- // the PascalCase `Name` (class names, the SDK accessor, every generated type
7
- // name), the snake stem (python module names, test function names), the
8
- // object-literal key in the emitted config map. No target language permits an
9
- // identifier that starts with a digit, and ordinary resources produce one:
10
- // `/3ds-sessions` -> entity `3ds_session` -> `class 3dsSessionEntity`,
11
- // `import { 3dsSession }`, `3dsSession()`. That is not a degraded SDK, it is
12
- // no SDK — nothing compiles (issue #124).
13
- //
14
- // THE RENAME IS ON THE MODEL, NOT ON A DERIVED FORM, and that is the whole
15
- // design. Guarding `Name` where it is derived does not survive: a consumer's
16
- // scaffolded `Root.ts` — which lives in the consumer's repo, not here — runs
17
- // its own `names(entity, entity.name)` per entity per target, immediately
18
- // before emitting, and re-derives `Name` from the unguarded name. Only a
19
- // guarded `entity.name` makes that re-derivation come out right, and it fixes
20
- // the snake-stem and config-key positions at the same time.
21
- //
22
- // Applied before Root runs, so nothing has read a name yet.
23
- //
24
- // IT IS A NO-OP ON EVERY MODEL THAT EXISTS TODAY. apidef guards entity names
25
- // at the source, so a name reaching here with a leading digit means a
26
- // hand-authored `.sdk/model` or a pre-guard apidef. The rename is the same
27
- // rule, producing the same name, as apidef's own `prefixLeadingDigit` — so
28
- // the two layers agree rather than compete, and a model that went through
29
- // apidef is untouched.
30
- //
31
- // The WIRE is untouched. A request path comes from the point's `orig`, never
32
- // from the entity name, so renaming the entity cannot change what is called.
33
3
 
34
4
  import { each, names } from 'jostraca'
35
5
  import { KIT } from '@voxgig/apidef'
36
6
 
7
+ import { entityRelationName } from './buildIdNames'
8
+
37
9
  import { prefixLeadingDigit } from './naming'
38
10
 
39
11
 
40
- // `from`/`to` are the entity NAME. `key` is where the entity sits in the
41
- // collection after the rename — the new name when the map was keyed by it (the
42
- // normal shape), the untouched original key when it was not.
43
12
  type Rename = { from: string, to: string, key: string }
44
13
 
45
14
  // The internal form, which also remembers where the entity sat BEFORE the
@@ -48,21 +17,14 @@ type Rename = { from: string, to: string, key: string }
48
17
  type Plan = { from: string, to: string, origkey: string }
49
18
 
50
19
 
51
- // Rename every entity whose name would produce an illegal identifier, and
52
- // rewrite the model's own references to it. Returns the renames applied, so
53
- // the caller can report them; empty when the model is already clean.
54
20
  function guardModelNames(model: any, log?: any): Rename[] {
55
21
  const entity = model?.main?.[KIT]?.entity
56
- // An ARRAY is not a name-keyed collection: its keys are indices, and
57
- // "renaming" one would rewrite the model into nonsense. Models are maps, but
58
- // the check is cheap and the failure would be silent.
59
22
  if (null == entity || 'object' !== typeof entity || Array.isArray(entity)) {
60
23
  return []
61
24
  }
62
25
 
63
26
  const flow = flowMap(model)
64
27
 
65
- // Sorted keys: the rename set, and any collision report, is byte-stable.
66
28
  const keys = Object.keys(entity).sort()
67
29
  const taken = new Set(keys)
68
30
  keys.forEach((k) => {
@@ -79,9 +41,6 @@ function guardModelNames(model: any, log?: any): Rename[] {
79
41
  continue
80
42
  }
81
43
 
82
- // `name` is authoritative, not the key: it is the value every derived
83
- // form comes from. The key moves with it only when the two agree, which
84
- // is the normal shape.
85
44
  const from = 'string' === typeof ent.name ? ent.name : key
86
45
 
87
46
  const to = prefixLeadingDigit(from)
@@ -89,23 +48,11 @@ function guardModelNames(model: any, log?: any): Rename[] {
89
48
  continue
90
49
  }
91
50
 
92
- // The guarded name is already another entity's. Renaming onto it would
93
- // merge two unrelated entities — silently, since the model is a plain
94
- // map — so leave this one alone and say so. The generated SDK still will
95
- // not compile, but the reason is now in the log rather than in a syntax
96
- // error 20 files later.
97
51
  if (taken.has(to)) {
98
52
  blocked.push(from)
99
53
  continue
100
54
  }
101
55
 
102
- // The FLOW key would collide. `Basic<Name>Flow` is rebuilt from the
103
- // guarded Name by every Test component, so if the guarded key is already
104
- // occupied by a different flow, renaming would point all of them at that
105
- // one and strand this entity's own flow under its old key — generated
106
- // tests that exercise the wrong entity, silently. Refuse, exactly as for
107
- // an entity-name collision: an SDK that does not compile is a better
108
- // outcome than one whose tests lie.
109
56
  if (null != flow && flowCollides(flow, from, to)) {
110
57
  blocked.push(from)
111
58
  continue
@@ -135,18 +82,12 @@ function guardModelNames(model: any, log?: any): Rename[] {
135
82
  for (const { from, to, origkey } of plans) {
136
83
  const ent = entity[origkey]
137
84
  ent.name = to
138
- // jostraca's names() is memo-free but idempotent-by-absence: every derived
139
- // form has to go, or a stale `Name` from an earlier pass survives the
140
- // rename and the SDK is inconsistent with itself.
141
85
  delete ent.Name
142
86
  delete ent.NAME
143
87
  delete ent.name_
144
88
  delete ent['name-']
145
89
  delete ent.name__orig
146
90
 
147
- // The key moves only when it WAS the name. A key the model chose for some
148
- // other reason is left where it is; every derived identifier comes from
149
- // `name`, which is now guarded either way.
150
91
  if (origkey === from) {
151
92
  entity[to] = ent
152
93
  delete entity[origkey]
@@ -157,16 +98,6 @@ function guardModelNames(model: any, log?: any): Rename[] {
157
98
 
158
99
  renameReferences(model, renames)
159
100
 
160
- // WARN, not info, because it names work only the project owner can do.
161
- //
162
- // The generated flow test reads its fixture from
163
- // `.sdk/test/entity/<name>/<Name>TestData.json` and seeds the config under
164
- // `<name>` — both derived from the guarded name. sdkgen READS that path and
165
- // never writes it: the fixture is the project's own content under `.sdk/`,
166
- // not generated output, so the rename cannot carry it. A project that
167
- // already has one for a digit-named entity goes from an SDK that does not
168
- // compile at all to one that compiles with a flow test failing on a missing
169
- // fixture — better, but only if it says which file to move.
170
101
  if (log?.warn) {
171
102
  log.warn({
172
103
  point: 'entity-name-guard', renames,
@@ -185,7 +116,6 @@ function guardModelNames(model: any, log?: any): Rename[] {
185
116
  }
186
117
 
187
118
 
188
- // The flow collection, when the model has one shaped like a map.
189
119
  function flowMap(model: any): Record<string, any> | null {
190
120
  const flow = model?.main?.[KIT]?.flow
191
121
  return (null != flow && 'object' === typeof flow && !Array.isArray(flow))
@@ -206,17 +136,9 @@ function flowCollides(
206
136
  }
207
137
 
208
138
 
209
- // The model refers to an entity by name in two more places, and both have to
210
- // move with it or the reference dangles.
211
139
  function renameReferences(model: any, renames: Rename[]): void {
212
140
  const map = new Map(renames.map((r) => [r.from, r.to]))
213
141
 
214
- // 1. FLOWS. A flow names its entity, and the Test components look the flow
215
- // up by a key REBUILT from the entity's PascalCase Name
216
- // (`Basic${nom(entity, 'Name')}Flow`), so the key has to move too or the
217
- // entity silently generates no tests. Only a key that matches the
218
- // reconstructed old one is renamed; anything else the author chose is
219
- // left as it is, with just its `entity` field corrected.
220
142
  const flow = flowMap(model)
221
143
  if (null != flow) {
222
144
  for (const key of Object.keys(flow).sort()) {
@@ -244,7 +166,6 @@ function renameReferences(model: any, renames: Rename[]): void {
244
166
  }
245
167
  }
246
168
 
247
- // 2. ANCESTORS. A nested entity records its parents by name.
248
169
  const entity = model?.main?.[KIT]?.entity
249
170
  each(entity).forEach((ent: any) => {
250
171
  const ancestors = ent?.relations?.ancestors
@@ -253,7 +174,10 @@ function renameReferences(model: any, renames: Rename[]): void {
253
174
  }
254
175
  ent.relations.ancestors = ancestors.map((a: any) =>
255
176
  Array.isArray(a)
256
- ? a.map((n: any) => map.get(n) ?? n)
177
+ ? a.map((n: string) => {
178
+ const renamed = map.get(entityRelationName(n))
179
+ return renamed == null ? n : n.startsWith('$.') ? '$.main.kit.entity.' + renamed : renamed
180
+ })
257
181
  : (map.get(a) ?? a))
258
182
  })
259
183
  }
@@ -1,36 +1,3 @@
1
- // THE MODEL RULES A PACKAGE'S `.aon` FILES MUST SATISFY.
2
- //
3
- // See docs/design/sdkgen-packages.md §10 (the rules) and §14 (the battery).
4
- //
5
- // WHY THIS IS A MODULE AND NOT A TEST
6
- //
7
- // Every rule below was already enforced — on the BUNDLED scaffold only, and
8
- // from inside `ts/test/model-compile.test.ts`, where nothing else can call
9
- // it. `package check` has to apply the same rules to a package this
10
- // generator has never seen, and a rule written twice diverges: this
11
- // workstream has produced that exact defect five times (path refs, replace
12
- // maps, provenance reconstruction, the tilde parse, the installed-registry
13
- // call). So the rules move here and BOTH callers read them — the guard suite
14
- // over `ts/project`, which is itself an sdkgen package, and the verb.
15
- //
16
- // WHAT MAKES A MODEL FILE WRONG
17
- //
18
- // Three failure modes, and they surface at three different times, which is
19
- // why all three are checked:
20
- //
21
- // 1. It does not PARSE under the parser a consumer actually uses. Aontu
22
- // takes `#` comments; the npm engine's jsonic enables `//` and `/* */`
23
- // by default and `@voxgig/model` switches them back off, so a `//` line
24
- // compiles here and fails in the consumer's build. Seven shipped
25
- // targets went out broken that way.
26
- // 2. It parses but does not UNIFY with the base schema — a missing
27
- // non-defaulted key (`ext`, `comment.line`, `module.name`, a feature's
28
- // `title`). The file alone is fine, so nothing at add time notices; the
29
- // consumer's whole model compile is what fails.
30
- // 3. It unifies but PINS a key the project owns (`publish.version`,
31
- // `publish.registry.package`). Concrete-vs-concrete is a conflict in
32
- // aontu, so the project cannot override it — and the failure names the
33
- // project's own file, not the package's.
34
1
 
35
2
  import { Aontu } from 'aontu'
36
3
  import { createRequire } from 'node:module'
@@ -45,15 +12,6 @@ import { schemaFile } from './shipped'
45
12
  const ANCHOR = "base: 'BASE'"
46
13
 
47
14
 
48
- // Matched as a WHOLE LINE, never as a substring — the same rule doctor
49
- // learned the hard way (see AGENTS.md, "Provenance is matched by EXACT LINE").
50
- //
51
- // `database: 'BASE'` contains the anchor text, and so does a comment
52
- // mentioning it. Either would satisfy a substring test while leaving the
53
- // definition with no anchor of its own: the stamp then rewrites that
54
- // unrelated occurrence, the item records no usable `base`, and `doctor` and
55
- // `package update` can never locate its source — with `package check` having
56
- // reported the file as fine.
57
15
  const ANCHOR_RE = /^[ \t]*base: 'BASE'[ \t]*$/m
58
16
 
59
17
 
@@ -63,35 +21,21 @@ const ANCHOR_RE = /^[ \t]*base: 'BASE'[ \t]*$/m
63
21
  const BARE_KEY_RE = /^[A-Za-z_$][A-Za-z0-9_$]*$/
64
22
 
65
23
 
66
- // The key as it must be WRITTEN in a model file.
67
24
  function aontuKey(name: string): string {
68
25
  return BARE_KEY_RE.test(name) ? name : "'" + name + "'"
69
26
  }
70
27
 
71
28
 
72
- // Blank out quoted spans before looking for comment markers, so a `//` inside
73
- // a string — a url, or the `comment: line: '//'` every C-family target model
74
- // legitimately declares — is not mistaken for a comment.
75
29
  function unquoted(line: string): string {
76
30
  return line.replace(/'[^']*'|"[^"]*"|`[^`]*`/g, '')
77
31
  }
78
32
 
79
33
 
80
- // What the PARSER sees on this line: quoted spans blanked, then everything
81
- // from the first `#` dropped.
82
- //
83
- // Both steps, in that order. Without the second, a perfectly valid comment
84
- // that happens to mention the token — `# some languages use // comments` —
85
- // is reported as a parse error and the CLI exits non-zero on a correct
86
- // package. Without the first, a `#` inside a string would truncate the line
87
- // early and hide a real `//` after it.
88
34
  function code(line: string): string {
89
35
  return unquoted(line).split('#')[0]
90
36
  }
91
37
 
92
38
 
93
- // Every line carrying a slash comment, 1-based, as a consumer's parser would
94
- // see it.
95
39
  function slashComments(text: string): { line: number, text: string }[] {
96
40
  const found: { line: number, text: string }[] = []
97
41
 
@@ -105,15 +49,6 @@ function slashComments(text: string): { line: number, text: string }[] {
105
49
  }
106
50
 
107
51
 
108
- // An Aontu configured the way `@voxgig/model` configures it — which is what
109
- // actually compiles a consumer's models. A plain `new Aontu()` accepts `//`
110
- // and `/* */`; the Go engine has no such extension, so the npm build switches
111
- // them off to match, and this must too or the check is checking a parser
112
- // nobody runs.
113
- //
114
- // A FRESH INSTANCE each time: the option call mutates the instance's jsonic,
115
- // so a cached one would leak its configuration into the bare compile that is
116
- // deliberately paired with it.
117
52
  function strictAontu(options?: any): any {
118
53
  const aontu: any = new Aontu(options)
119
54
  aontu.lang.jsonic.options({ comment: { def: { slash: null, multi: null } } })
@@ -135,12 +70,6 @@ type CompileResult = {
135
70
  }
136
71
 
137
72
 
138
- // aontu reports a resolution problem through the `errs` collector and THROWS
139
- // a parse problem, so both routes have to be handled or the interesting
140
- // failure escapes as an opaque AontuError. Its message carries a source
141
- // excerpt with ANSI colouring and line numbers that refer to the text
142
- // COMPILED, which is not the file on disk once a schema include is prepended
143
- // — so the excerpt is cut and only the diagnosis is kept.
144
73
  function tidy(msg: string): string {
145
74
  const lines = String(msg)
146
75
  .replace(new RegExp(String.fromCharCode(27) + "\\[[0-9;]*m", 'g'), '')
@@ -155,43 +84,18 @@ function tidy(msg: string): string {
155
84
  }
156
85
 
157
86
 
158
- // Compile one model file's TEXT.
159
- //
160
- // strict: under the parser @voxgig/model configures (the consumer's
161
- // reality) rather than a bare Aontu().
162
- // schema: unified with the base schema, which is what makes a missing
163
- // non-defaulted key a failure instead of an absent key nobody
164
- // notices until the consumer compiles.
165
- //
166
- // `path` must be the file's real path even when the text is synthesised:
167
- // aontu resolves includes relative to it, and stats it.
168
87
  function compileModel(
169
88
  src: string,
170
89
  path: string,
171
90
  opts?: { strict?: boolean, schema?: boolean },
172
91
  ): CompileResult {
173
- // `errs`, NOT `err`. They are different options with opposite behaviour:
174
- //
175
- // errs — aontu THROWS on the first problem it cannot resolve.
176
- // err — aontu COLLECTS problems and returns no model, which sounds
177
- // better and is not: a PARSE problem is then swallowed entirely.
178
- // `// nope` under the strict parser yields a model and an EMPTY
179
- // collector, and a slash comment is the single most common thing
180
- // this check exists to catch.
181
- //
182
- // So the throw is the signal, and it is caught below. The collector is
183
- // still passed and still read: it costs nothing, and an aontu that one day
184
- // collects instead of throwing must not report "no errors" here.
185
92
  const errs: any[] = []
186
93
 
187
94
  const text = true === opts?.schema ?
188
95
  includeLine(schemaFile()) + '\n' + src : src
189
96
 
190
97
  try {
191
- // Resolve package includes from the model being checked, including native
192
- // package self-references. The SDK toolchain's dependencies are unrelated.
193
98
  const localRequire = Object.assign(createRequire(Path.resolve(path)), { main: require.main })
194
- // Aontu forwards this runtime resolver option to Lang; its public type omits it.
195
99
  const options: any = { require: localRequire }
196
100
  const aontu = false === opts?.strict ? new Aontu(options) : strictAontu(options)
197
101
  const model = aontu.generate(text, { path, errs })
@@ -208,16 +112,6 @@ function compileModel(
208
112
  }
209
113
 
210
114
 
211
- // Every key the schema DEFAULTS and a project therefore expects to set, with
212
- // TWO values to try setting it to. A target model that declares any of them
213
- // makes the project's own declaration a concrete-vs-concrete conflict — which
214
- // fails the consumer's entire model compile, naming the consumer's file.
215
- //
216
- // Two values because aontu unifies two EQUAL concrete scalars happily: a
217
- // target pinning `publish: tag: active: false` — which is one of only two
218
- // values that key can take — passed a single-sentinel probe while still
219
- // making `true` impossible for the consumer. One alternative value per key is
220
- // enough: a pin can equal one sentinel or the other, never both.
221
115
  const PUBLISH_OVERRIDES: [string, string, string][] = [
222
116
  ['publish: version', "'9.9.9'", "'8.8.8'"],
223
117
  ['publish: tag: active', 'false', 'true'],