@voxgig/sdkgen 4.21.0 → 4.22.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 (672) 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 +0 -80
  54. package/dist/cmp/ReadmeTop.js.map +1 -1
  55. package/dist/cmp/ReadmeUnions.js +0 -15
  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 +2 -1
  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.js +0 -12
  68. package/dist/helpers/buildIdNames.js.map +1 -1
  69. package/dist/helpers/canonSpec.js +0 -114
  70. package/dist/helpers/canonSpec.js.map +1 -1
  71. package/dist/helpers/canonType.js +0 -87
  72. package/dist/helpers/canonType.js.map +1 -1
  73. package/dist/helpers/collectDeps.js +0 -27
  74. package/dist/helpers/collectDeps.js.map +1 -1
  75. package/dist/helpers/definition.js +0 -29
  76. package/dist/helpers/definition.js.map +1 -1
  77. package/dist/helpers/dryrun.js +0 -8
  78. package/dist/helpers/dryrun.js.map +1 -1
  79. package/dist/helpers/featureSource.js +0 -145
  80. package/dist/helpers/featureSource.js.map +1 -1
  81. package/dist/helpers/getMatchEntries.js +0 -4
  82. package/dist/helpers/getMatchEntries.js.map +1 -1
  83. package/dist/helpers/junk.js +9 -85
  84. package/dist/helpers/junk.js.map +1 -1
  85. package/dist/helpers/manifest.js +0 -138
  86. package/dist/helpers/manifest.js.map +1 -1
  87. package/dist/helpers/modelNames.js +0 -78
  88. package/dist/helpers/modelNames.js.map +1 -1
  89. package/dist/helpers/modelcheck.js +0 -106
  90. package/dist/helpers/modelcheck.js.map +1 -1
  91. package/dist/helpers/naming.d.ts +0 -1
  92. package/dist/helpers/naming.js +0 -303
  93. package/dist/helpers/naming.js.map +1 -1
  94. package/dist/helpers/opExample.js +0 -51
  95. package/dist/helpers/opExample.js.map +1 -1
  96. package/dist/helpers/opShape.js +0 -198
  97. package/dist/helpers/opShape.js.map +1 -1
  98. package/dist/helpers/optspec.js +0 -77
  99. package/dist/helpers/optspec.js.map +1 -1
  100. package/dist/helpers/packageMeta.js +1 -200
  101. package/dist/helpers/packageMeta.js.map +1 -1
  102. package/dist/helpers/pointPath.js +0 -55
  103. package/dist/helpers/pointPath.js.map +1 -1
  104. package/dist/helpers/resolved.d.ts +6 -0
  105. package/dist/helpers/resolved.js +49 -0
  106. package/dist/helpers/resolved.js.map +1 -0
  107. package/dist/helpers/semver.js +0 -61
  108. package/dist/helpers/semver.js.map +1 -1
  109. package/dist/helpers/serverVars.js +0 -44
  110. package/dist/helpers/serverVars.js.map +1 -1
  111. package/dist/helpers/shipped.js +0 -14
  112. package/dist/helpers/shipped.js.map +1 -1
  113. package/dist/helpers/station.js +0 -32
  114. package/dist/helpers/station.js.map +1 -1
  115. package/dist/helpers/stdrep.js +0 -26
  116. package/dist/helpers/stdrep.js.map +1 -1
  117. package/dist/helpers/testPolicy.js +0 -4
  118. package/dist/helpers/testPolicy.js.map +1 -1
  119. package/dist/sdkgen.d.ts +2 -1
  120. package/dist/sdkgen.js +13 -242
  121. package/dist/sdkgen.js.map +1 -1
  122. package/dist/testkit.js +6 -266
  123. package/dist/testkit.js.map +1 -1
  124. package/dist/tsconfig.tsbuildinfo +1 -1
  125. package/dist/utility.js +0 -243
  126. package/dist/utility.js.map +1 -1
  127. package/model/sdkgen.aon +12 -489
  128. package/package.json +4 -4
  129. package/project/.sdk/model/feature/audit.aon +0 -7
  130. package/project/.sdk/model/feature/cache.aon +0 -7
  131. package/project/.sdk/model/feature/clienttrack.aon +0 -7
  132. package/project/.sdk/model/feature/cost.aon +0 -13
  133. package/project/.sdk/model/feature/debug.aon +0 -7
  134. package/project/.sdk/model/feature/idempotency.aon +0 -7
  135. package/project/.sdk/model/feature/log.aon +0 -7
  136. package/project/.sdk/model/feature/metrics.aon +0 -7
  137. package/project/.sdk/model/feature/netsim.aon +0 -10
  138. package/project/.sdk/model/feature/paging.aon +0 -7
  139. package/project/.sdk/model/feature/proxy.aon +0 -7
  140. package/project/.sdk/model/feature/ratelimit.aon +0 -7
  141. package/project/.sdk/model/feature/retry.aon +0 -7
  142. package/project/.sdk/model/feature/secrets.aon +0 -482
  143. package/project/.sdk/model/feature/streaming.aon +0 -7
  144. package/project/.sdk/model/feature/telemetry.aon +0 -7
  145. package/project/.sdk/model/feature/test.aon +1 -8
  146. package/project/.sdk/model/feature/timeout.aon +0 -7
  147. package/project/.sdk/model/feature/validate.aon +0 -32
  148. package/project/.sdk/model/target/c.aon +0 -41
  149. package/project/.sdk/model/target/clojure.aon +0 -36
  150. package/project/.sdk/model/target/cpp.aon +0 -42
  151. package/project/.sdk/model/target/csharp.aon +0 -26
  152. package/project/.sdk/model/target/elixir.aon +0 -22
  153. package/project/.sdk/model/target/go-cli.aon +0 -30
  154. package/project/.sdk/model/target/go-mcp.aon +0 -21
  155. package/project/.sdk/model/target/go.aon +0 -9
  156. package/project/.sdk/model/target/java.aon +0 -29
  157. package/project/.sdk/model/target/js.aon +2 -21
  158. package/project/.sdk/model/target/kotlin.aon +0 -31
  159. package/project/.sdk/model/target/lua.aon +0 -32
  160. package/project/.sdk/model/target/ocaml.aon +0 -64
  161. package/project/.sdk/model/target/perl.aon +0 -20
  162. package/project/.sdk/model/target/php.aon +0 -17
  163. package/project/.sdk/model/target/py-data.aon +0 -33
  164. package/project/.sdk/model/target/py.aon +0 -17
  165. package/project/.sdk/model/target/rb.aon +0 -17
  166. package/project/.sdk/model/target/rust.aon +0 -25
  167. package/project/.sdk/model/target/scala.aon +0 -74
  168. package/project/.sdk/model/target/swift.aon +0 -41
  169. package/project/.sdk/model/target/ts.aon +3 -25
  170. package/project/.sdk/model/target/zig.aon +0 -50
  171. package/project/.sdk/src/cmp/c/Config_c.ts +0 -100
  172. package/project/.sdk/src/cmp/c/EntityTypes_c.ts +0 -36
  173. package/project/.sdk/src/cmp/c/Main_c.ts +0 -44
  174. package/project/.sdk/src/cmp/c/Package_c.ts +0 -14
  175. package/project/.sdk/src/cmp/c/PrepareAuth_c.ts +0 -85
  176. package/project/.sdk/src/cmp/c/ReadmeExamplesTest_c.ts +0 -20
  177. package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +2 -5
  178. package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +0 -2
  179. package/project/.sdk/src/cmp/c/Schema_c.ts +0 -19
  180. package/project/.sdk/src/cmp/c/utility_c.ts +0 -47
  181. package/project/.sdk/src/cmp/clojure/Config_clojure.ts +0 -63
  182. package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +0 -1
  183. package/project/.sdk/src/cmp/clojure/Main_clojure.ts +0 -41
  184. package/project/.sdk/src/cmp/clojure/Package_clojure.ts +0 -20
  185. package/project/.sdk/src/cmp/clojure/PrepareAuth_clojure.ts +0 -130
  186. package/project/.sdk/src/cmp/clojure/ReadmeExamplesTest_clojure.ts +0 -16
  187. package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +2 -5
  188. package/project/.sdk/src/cmp/clojure/Schema_clojure.ts +0 -20
  189. package/project/.sdk/src/cmp/clojure/TestDirect_clojure.ts +0 -6
  190. package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +0 -10
  191. package/project/.sdk/src/cmp/clojure/Test_clojure.ts +0 -8
  192. package/project/.sdk/src/cmp/clojure/featureextra_clojure.ts +0 -34
  193. package/project/.sdk/src/cmp/clojure/utility_clojure.ts +0 -47
  194. package/project/.sdk/src/cmp/cpp/Config_cpp.ts +0 -109
  195. package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +0 -36
  196. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +0 -47
  197. package/project/.sdk/src/cmp/cpp/Package_cpp.ts +0 -14
  198. package/project/.sdk/src/cmp/cpp/PrepareAuth_cpp.ts +0 -125
  199. package/project/.sdk/src/cmp/cpp/ReadmeExamplesTest_cpp.ts +0 -19
  200. package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +0 -7
  201. package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +2 -5
  202. package/project/.sdk/src/cmp/cpp/Schema_cpp.ts +0 -21
  203. package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +0 -3
  204. package/project/.sdk/src/cmp/cpp/Test_cpp.ts +0 -3
  205. package/project/.sdk/src/cmp/cpp/utility_cpp.ts +0 -28
  206. package/project/.sdk/src/cmp/csharp/Config_csharp.ts +0 -79
  207. package/project/.sdk/src/cmp/csharp/EntityOperation_csharp.ts +0 -3
  208. package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +0 -50
  209. package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +0 -1
  210. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +0 -24
  211. package/project/.sdk/src/cmp/csharp/Package_csharp.ts +0 -20
  212. package/project/.sdk/src/cmp/csharp/PrepareAuth_csharp.ts +0 -81
  213. package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +0 -1
  214. package/project/.sdk/src/cmp/csharp/ReadmeExamplesTest_csharp.ts +0 -23
  215. package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +2 -5
  216. package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +0 -2
  217. package/project/.sdk/src/cmp/csharp/Schema_csharp.ts +0 -18
  218. package/project/.sdk/src/cmp/csharp/TestEntity_csharp.ts +0 -4
  219. package/project/.sdk/src/cmp/csharp/utility_csharp.ts +0 -72
  220. package/project/.sdk/src/cmp/elixir/Config_elixir.ts +0 -78
  221. package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +0 -38
  222. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +0 -40
  223. package/project/.sdk/src/cmp/elixir/Package_elixir.ts +0 -13
  224. package/project/.sdk/src/cmp/elixir/PrepareAuth_elixir.ts +0 -123
  225. package/project/.sdk/src/cmp/elixir/ReadmeExamplesTest_elixir.ts +0 -19
  226. package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +2 -5
  227. package/project/.sdk/src/cmp/elixir/Schema_elixir.ts +0 -24
  228. package/project/.sdk/src/cmp/elixir/utility_elixir.ts +0 -34
  229. package/project/.sdk/src/cmp/go/Config_go.ts +0 -41
  230. package/project/.sdk/src/cmp/go/EntityTypes_go.ts +0 -71
  231. package/project/.sdk/src/cmp/go/Entity_go.ts +0 -5
  232. package/project/.sdk/src/cmp/go/Main_go.ts +0 -28
  233. package/project/.sdk/src/cmp/go/Package_go.ts +0 -7
  234. package/project/.sdk/src/cmp/go/PrepareAuth_go.ts +0 -64
  235. package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +0 -5
  236. package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +0 -30
  237. package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +0 -3
  238. package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +0 -7
  239. package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +0 -11
  240. package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +0 -21
  241. package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +2 -14
  242. package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +0 -9
  243. package/project/.sdk/src/cmp/go/Schema_go.ts +0 -21
  244. package/project/.sdk/src/cmp/go/TestDirect_go.ts +0 -23
  245. package/project/.sdk/src/cmp/go/TestEntity_go.ts +0 -8
  246. package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +0 -21
  247. package/project/.sdk/src/cmp/go/fragment/Main.fragment.go +0 -12
  248. package/project/.sdk/src/cmp/go/utility_go.ts +0 -70
  249. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +0 -49
  250. package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +0 -12
  251. package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +0 -36
  252. package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +0 -20
  253. package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +0 -3
  254. package/project/.sdk/src/cmp/java/Config_java.ts +0 -63
  255. package/project/.sdk/src/cmp/java/EntityTypes_java.ts +0 -50
  256. package/project/.sdk/src/cmp/java/Entity_java.ts +0 -6
  257. package/project/.sdk/src/cmp/java/Main_java.ts +0 -24
  258. package/project/.sdk/src/cmp/java/PrepareAuth_java.ts +0 -55
  259. package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +0 -1
  260. package/project/.sdk/src/cmp/java/ReadmeExamplesTest_java.ts +0 -20
  261. package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +0 -4
  262. package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +2 -5
  263. package/project/.sdk/src/cmp/java/ReadmeTopQuick_java.ts +0 -7
  264. package/project/.sdk/src/cmp/java/Schema_java.ts +0 -19
  265. package/project/.sdk/src/cmp/java/TestDirect_java.ts +0 -7
  266. package/project/.sdk/src/cmp/java/TestEntity_java.ts +0 -4
  267. package/project/.sdk/src/cmp/java/Test_java.ts +0 -6
  268. package/project/.sdk/src/cmp/java/utility_java.ts +0 -33
  269. package/project/.sdk/src/cmp/js/Config_js.ts +0 -46
  270. package/project/.sdk/src/cmp/js/EntityTypes_js.ts +0 -33
  271. package/project/.sdk/src/cmp/js/Main_js.ts +0 -33
  272. package/project/.sdk/src/cmp/js/Package_js.ts +2 -7
  273. package/project/.sdk/src/cmp/js/PrepareAuth_js.ts +0 -57
  274. package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +0 -9
  275. package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +0 -2
  276. package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +0 -15
  277. package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +2 -7
  278. package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +0 -7
  279. package/project/.sdk/src/cmp/js/Schema_js.ts +0 -21
  280. package/project/.sdk/src/cmp/js/TestDirect_js.ts +2 -16
  281. package/project/.sdk/src/cmp/js/TestEntity_js.ts +3 -13
  282. package/project/.sdk/src/cmp/js/TestLive_js.ts +10 -3
  283. package/project/.sdk/src/cmp/js/utility_js.ts +0 -58
  284. package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +0 -46
  285. package/project/.sdk/src/cmp/kotlin/EntityOperation_kotlin.ts +0 -2
  286. package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +0 -53
  287. package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +0 -4
  288. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +0 -46
  289. package/project/.sdk/src/cmp/kotlin/PrepareAuth_kotlin.ts +0 -113
  290. package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +0 -1
  291. package/project/.sdk/src/cmp/kotlin/ReadmeExamplesTest_kotlin.ts +0 -20
  292. package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +2 -5
  293. package/project/.sdk/src/cmp/kotlin/ReadmeTopQuick_kotlin.ts +0 -5
  294. package/project/.sdk/src/cmp/kotlin/Schema_kotlin.ts +0 -19
  295. package/project/.sdk/src/cmp/kotlin/TestEntity_kotlin.ts +0 -4
  296. package/project/.sdk/src/cmp/kotlin/Test_kotlin.ts +0 -6
  297. package/project/.sdk/src/cmp/kotlin/utility_kotlin.ts +0 -33
  298. package/project/.sdk/src/cmp/lua/Config_lua.ts +0 -56
  299. package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +0 -30
  300. package/project/.sdk/src/cmp/lua/Entity_lua.ts +0 -7
  301. package/project/.sdk/src/cmp/lua/Main_lua.ts +0 -58
  302. package/project/.sdk/src/cmp/lua/Package_lua.ts +0 -20
  303. package/project/.sdk/src/cmp/lua/PrepareAuth_lua.ts +0 -61
  304. package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +0 -8
  305. package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +0 -24
  306. package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +0 -10
  307. package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +0 -21
  308. package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +2 -12
  309. package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +0 -3
  310. package/project/.sdk/src/cmp/lua/Schema_lua.ts +0 -16
  311. package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +0 -2
  312. package/project/.sdk/src/cmp/lua/utility_lua.ts +0 -30
  313. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +0 -98
  314. package/project/.sdk/src/cmp/ocaml/EntityOperation_ocaml.ts +0 -6
  315. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +0 -78
  316. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +0 -13
  317. package/project/.sdk/src/cmp/ocaml/PrepareAuth_ocaml.ts +0 -145
  318. package/project/.sdk/src/cmp/ocaml/ReadmeExamplesTest_ocaml.ts +0 -17
  319. package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +2 -5
  320. package/project/.sdk/src/cmp/ocaml/Schema_ocaml.ts +0 -23
  321. package/project/.sdk/src/cmp/ocaml/SdkError_ocaml.ts +0 -4
  322. package/project/.sdk/src/cmp/ocaml/TestEntity_ocaml.ts +0 -5
  323. package/project/.sdk/src/cmp/ocaml/utility_ocaml.ts +0 -27
  324. package/project/.sdk/src/cmp/perl/Config_perl.ts +0 -52
  325. package/project/.sdk/src/cmp/perl/Entity_perl.ts +0 -3
  326. package/project/.sdk/src/cmp/perl/Main_perl.ts +0 -33
  327. package/project/.sdk/src/cmp/perl/Package_perl.ts +0 -8
  328. package/project/.sdk/src/cmp/perl/PrepareAuth_perl.ts +0 -84
  329. package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +0 -3
  330. package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +0 -27
  331. package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +2 -5
  332. package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +0 -2
  333. package/project/.sdk/src/cmp/perl/Schema_perl.ts +0 -18
  334. package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +0 -2
  335. package/project/.sdk/src/cmp/perl/utility_perl.ts +0 -26
  336. package/project/.sdk/src/cmp/php/Config_php.ts +0 -76
  337. package/project/.sdk/src/cmp/php/EntityTypes_php.ts +0 -51
  338. package/project/.sdk/src/cmp/php/MainEntity_php.ts +0 -6
  339. package/project/.sdk/src/cmp/php/Main_php.ts +0 -15
  340. package/project/.sdk/src/cmp/php/PrepareAuth_php.ts +0 -73
  341. package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +0 -4
  342. package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +0 -33
  343. package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +0 -1
  344. package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +0 -19
  345. package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +2 -7
  346. package/project/.sdk/src/cmp/php/Schema_php.ts +0 -15
  347. package/project/.sdk/src/cmp/php/TestEntity_php.ts +0 -9
  348. package/project/.sdk/src/cmp/php/utility_php.ts +0 -22
  349. package/project/.sdk/src/cmp/py/Config_py.ts +0 -53
  350. package/project/.sdk/src/cmp/py/EntityTypes_py.ts +0 -55
  351. package/project/.sdk/src/cmp/py/Entity_py.ts +0 -16
  352. package/project/.sdk/src/cmp/py/Main_py.ts +1 -61
  353. package/project/.sdk/src/cmp/py/Package_py.ts +0 -3
  354. package/project/.sdk/src/cmp/py/PrepareAuth_py.ts +0 -69
  355. package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +0 -13
  356. package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +0 -31
  357. package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +0 -3
  358. package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +0 -28
  359. package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +2 -16
  360. package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +0 -14
  361. package/project/.sdk/src/cmp/py/Schema_py.ts +0 -19
  362. package/project/.sdk/src/cmp/py/TestDirect_py.ts +0 -2
  363. package/project/.sdk/src/cmp/py/utility_py.ts +0 -22
  364. package/project/.sdk/src/cmp/py-data/Main_py-data.ts +9 -43
  365. package/project/.sdk/src/cmp/rb/Config_rb.ts +0 -56
  366. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +0 -58
  367. package/project/.sdk/src/cmp/rb/Entity_rb.ts +0 -3
  368. package/project/.sdk/src/cmp/rb/Main_rb.ts +0 -10
  369. package/project/.sdk/src/cmp/rb/Package_rb.ts +0 -5
  370. package/project/.sdk/src/cmp/rb/PrepareAuth_rb.ts +0 -81
  371. package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +0 -7
  372. package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +0 -32
  373. package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +0 -9
  374. package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +0 -23
  375. package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +2 -10
  376. package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +0 -5
  377. package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +0 -3
  378. package/project/.sdk/src/cmp/rb/Schema_rb.ts +0 -15
  379. package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +0 -2
  380. package/project/.sdk/src/cmp/rb/utility_rb.ts +0 -22
  381. package/project/.sdk/src/cmp/rust/Config_rust.ts +0 -35
  382. package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +0 -34
  383. package/project/.sdk/src/cmp/rust/Entity_rust.ts +0 -9
  384. package/project/.sdk/src/cmp/rust/Main_rust.ts +0 -58
  385. package/project/.sdk/src/cmp/rust/Package_rust.ts +0 -30
  386. package/project/.sdk/src/cmp/rust/PrepareAuth_rust.ts +0 -84
  387. package/project/.sdk/src/cmp/rust/ReadmeExamplesTest_rust.ts +0 -16
  388. package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +2 -5
  389. package/project/.sdk/src/cmp/rust/Schema_rust.ts +0 -18
  390. package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +0 -7
  391. package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +0 -9
  392. package/project/.sdk/src/cmp/rust/fragment/Entity.fragment.rs +0 -14
  393. package/project/.sdk/src/cmp/rust/fragment/EntityRemoveOp.fragment.rs +0 -4
  394. package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +0 -20
  395. package/project/.sdk/src/cmp/rust/fragment/SdkError.fragment.rs +0 -6
  396. package/project/.sdk/src/cmp/rust/utility_rust.ts +0 -47
  397. package/project/.sdk/src/cmp/scala/Config_scala.ts +0 -31
  398. package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +0 -51
  399. package/project/.sdk/src/cmp/scala/Main_scala.ts +0 -78
  400. package/project/.sdk/src/cmp/scala/PrepareAuth_scala.ts +0 -102
  401. package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +0 -1
  402. package/project/.sdk/src/cmp/scala/ReadmeExamplesTest_scala.ts +0 -23
  403. package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +2 -5
  404. package/project/.sdk/src/cmp/scala/ReadmeTopQuick_scala.ts +0 -5
  405. package/project/.sdk/src/cmp/scala/Schema_scala.ts +0 -19
  406. package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +0 -8
  407. package/project/.sdk/src/cmp/scala/Test_scala.ts +0 -3
  408. package/project/.sdk/src/cmp/scala/utility_scala.ts +0 -31
  409. package/project/.sdk/src/cmp/swift/Config_swift.ts +0 -62
  410. package/project/.sdk/src/cmp/swift/EntityOperation_swift.ts +0 -3
  411. package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +0 -39
  412. package/project/.sdk/src/cmp/swift/Main_swift.ts +0 -42
  413. package/project/.sdk/src/cmp/swift/Package_swift.ts +0 -69
  414. package/project/.sdk/src/cmp/swift/PrepareAuth_swift.ts +0 -134
  415. package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +0 -2
  416. package/project/.sdk/src/cmp/swift/ReadmeExamplesTest_swift.ts +0 -22
  417. package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +2 -5
  418. package/project/.sdk/src/cmp/swift/Schema_swift.ts +0 -18
  419. package/project/.sdk/src/cmp/swift/TestEntity_swift.ts +0 -4
  420. package/project/.sdk/src/cmp/swift/utility_swift.ts +0 -51
  421. package/project/.sdk/src/cmp/ts/Config_ts.ts +0 -46
  422. package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +0 -34
  423. package/project/.sdk/src/cmp/ts/Entity_ts.ts +0 -6
  424. package/project/.sdk/src/cmp/ts/Main_ts.ts +0 -28
  425. package/project/.sdk/src/cmp/ts/Package_ts.ts +2 -26
  426. package/project/.sdk/src/cmp/ts/PrepareAuth_ts.ts +0 -55
  427. package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +0 -9
  428. package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +0 -6
  429. package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +0 -25
  430. package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +4 -9
  431. package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +0 -7
  432. package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +0 -3
  433. package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +0 -43
  434. package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +2 -20
  435. package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +0 -11
  436. package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +6 -9
  437. package/project/.sdk/src/cmp/ts/Schema_ts.ts +0 -21
  438. package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +2 -53
  439. package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +3 -31
  440. package/project/.sdk/src/cmp/ts/TestLive_ts.ts +10 -4
  441. package/project/.sdk/src/cmp/ts/Test_ts.ts +0 -4
  442. package/project/.sdk/src/cmp/ts/fragment/Config.data.fragment.ts +0 -27
  443. package/project/.sdk/src/cmp/ts/fragment/Config.fragment.ts +0 -7
  444. package/project/.sdk/src/cmp/ts/fragment/Direct.test.fragment.ts +0 -7
  445. package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +0 -1
  446. package/project/.sdk/src/cmp/ts/fragment/Entity.test.fragment.ts +0 -4
  447. package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +0 -20
  448. package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +0 -6
  449. package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +0 -6
  450. package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +0 -15
  451. package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +0 -6
  452. package/project/.sdk/src/cmp/ts/fragment/Main.fragment.ts +0 -15
  453. package/project/.sdk/src/cmp/ts/fragment/MainStation.fragment.ts +0 -12
  454. package/project/.sdk/src/cmp/ts/fragment/SdkError.fragment.ts +0 -9
  455. package/project/.sdk/src/cmp/ts/utility_ts.ts +0 -59
  456. package/project/.sdk/src/cmp/zig/Config_zig.ts +0 -70
  457. package/project/.sdk/src/cmp/zig/Entity_zig.ts +0 -3
  458. package/project/.sdk/src/cmp/zig/Main_zig.ts +0 -83
  459. package/project/.sdk/src/cmp/zig/Package_zig.ts +0 -22
  460. package/project/.sdk/src/cmp/zig/PrepareAuth_zig.ts +0 -136
  461. package/project/.sdk/src/cmp/zig/ReadmeExamplesTest_zig.ts +0 -18
  462. package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +0 -3
  463. package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +2 -5
  464. package/project/.sdk/src/cmp/zig/Schema_zig.ts +0 -23
  465. package/project/.sdk/src/cmp/zig/TestDirect_zig.ts +0 -11
  466. package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +0 -8
  467. package/project/.sdk/src/cmp/zig/Test_zig.ts +0 -11
  468. package/project/.sdk/src/cmp/zig/utility_zig.ts +0 -47
  469. package/project/.sdk/tm/csharp/feature/FeatureOptions.cs +18 -5
  470. package/project/.sdk/tm/go/core/context.go +0 -9
  471. package/project/.sdk/tm/go/core/types.go +0 -3
  472. package/project/.sdk/tm/go/feature/audit_feature.go +0 -9
  473. package/project/.sdk/tm/go/feature/cache_feature.go +0 -8
  474. package/project/.sdk/tm/go/feature/clienttrack_feature.go +0 -7
  475. package/project/.sdk/tm/go/feature/cost_feature.go +0 -51
  476. package/project/.sdk/tm/go/feature/debug_feature.go +0 -6
  477. package/project/.sdk/tm/go/feature/feature_options.go +108 -21
  478. package/project/.sdk/tm/go/feature/idempotency_feature.go +0 -6
  479. package/project/.sdk/tm/go/feature/metrics_feature.go +0 -6
  480. package/project/.sdk/tm/go/feature/netsim_feature.go +0 -8
  481. package/project/.sdk/tm/go/feature/paging_feature.go +0 -9
  482. package/project/.sdk/tm/go/feature/proxy_feature.go +0 -7
  483. package/project/.sdk/tm/go/feature/ratelimit_feature.go +0 -6
  484. package/project/.sdk/tm/go/feature/rbac_feature.go +0 -10
  485. package/project/.sdk/tm/go/feature/retry_feature.go +0 -6
  486. package/project/.sdk/tm/go/feature/secrets_feature.go +0 -173
  487. package/project/.sdk/tm/go/feature/streaming_feature.go +0 -7
  488. package/project/.sdk/tm/go/feature/telemetry_feature.go +0 -8
  489. package/project/.sdk/tm/go/feature/test_feature.go +0 -23
  490. package/project/.sdk/tm/go/feature/validate_feature.go +0 -66
  491. package/project/.sdk/tm/go/test/custom_utility_test.go +0 -29
  492. package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +0 -100
  493. package/project/.sdk/tm/go/test/feature_corpus_test.go +1 -60
  494. package/project/.sdk/tm/go/test/feature_harness_test.go +0 -10
  495. package/project/.sdk/tm/go/test/feature_test.go +107 -9
  496. package/project/.sdk/tm/go/test/omniresolver_test.go +0 -74
  497. package/project/.sdk/tm/go/test/omnismoke_test.go +0 -4
  498. package/project/.sdk/tm/go/test/pipeline_test.go +0 -10
  499. package/project/.sdk/tm/go/test/primary_utility_test.go +0 -32
  500. package/project/.sdk/tm/go/test/struct_utility_test.go +0 -38
  501. package/project/.sdk/tm/go/test/testsupport_test.go +0 -25
  502. package/project/.sdk/tm/go/utility/feature_add.go +0 -6
  503. package/project/.sdk/tm/go/utility/fetcher.go +0 -6
  504. package/project/.sdk/tm/go/utility/graphql.go +1 -31
  505. package/project/.sdk/tm/go/utility/make_options.go +38 -49
  506. package/project/.sdk/tm/go/utility/make_point.go +0 -11
  507. package/project/.sdk/tm/go/utility/make_spec.go +0 -15
  508. package/project/.sdk/tm/go/utility/register.go +0 -28
  509. package/project/.sdk/tm/go/utility/transform_request.go +0 -20
  510. package/project/.sdk/tm/go/utility/transform_response.go +0 -8
  511. package/project/.sdk/tm/js/src/feature/test/TestFeature.js +12 -4
  512. package/project/.sdk/tm/rust/core/context.rs +0 -5
  513. package/project/.sdk/tm/rust/core/control.rs +0 -1
  514. package/project/.sdk/tm/rust/core/helpers.rs +0 -15
  515. package/project/.sdk/tm/rust/core/operation.rs +0 -1
  516. package/project/.sdk/tm/rust/core/point.rs +0 -3
  517. package/project/.sdk/tm/rust/core/response.rs +0 -2
  518. package/project/.sdk/tm/rust/core/result.rs +0 -1
  519. package/project/.sdk/tm/rust/core/spec.rs +0 -1
  520. package/project/.sdk/tm/rust/core/types.rs +0 -20
  521. package/project/.sdk/tm/rust/core/utility_type.rs +0 -5
  522. package/project/.sdk/tm/rust/feature/audit.rs +0 -9
  523. package/project/.sdk/tm/rust/feature/base.rs +0 -3
  524. package/project/.sdk/tm/rust/feature/cache.rs +0 -9
  525. package/project/.sdk/tm/rust/feature/clienttrack.rs +0 -7
  526. package/project/.sdk/tm/rust/feature/cost.rs +0 -48
  527. package/project/.sdk/tm/rust/feature/debug.rs +0 -7
  528. package/project/.sdk/tm/rust/feature/idempotency.rs +0 -7
  529. package/project/.sdk/tm/rust/feature/log.rs +0 -3
  530. package/project/.sdk/tm/rust/feature/metrics.rs +0 -7
  531. package/project/.sdk/tm/rust/feature/netsim.rs +0 -9
  532. package/project/.sdk/tm/rust/feature/paging.rs +0 -10
  533. package/project/.sdk/tm/rust/feature/proxy.rs +0 -8
  534. package/project/.sdk/tm/rust/feature/ratelimit.rs +0 -6
  535. package/project/.sdk/tm/rust/feature/rbac.rs +0 -10
  536. package/project/.sdk/tm/rust/feature/retry.rs +0 -6
  537. package/project/.sdk/tm/rust/feature/secrets.rs +1 -187
  538. package/project/.sdk/tm/rust/feature/streaming.rs +0 -7
  539. package/project/.sdk/tm/rust/feature/support.rs +0 -6
  540. package/project/.sdk/tm/rust/feature/telemetry.rs +0 -9
  541. package/project/.sdk/tm/rust/feature/test.rs +0 -19
  542. package/project/.sdk/tm/rust/feature/timeout.rs +0 -7
  543. package/project/.sdk/tm/rust/feature/validate.rs +0 -81
  544. package/project/.sdk/tm/rust/tests/common/mod.rs +0 -35
  545. package/project/.sdk/tm/rust/tests/custom_utility_test.rs +0 -2
  546. package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +0 -95
  547. package/project/.sdk/tm/rust/tests/feature_test.rs +0 -16
  548. package/project/.sdk/tm/rust/tests/netsim_test.rs +0 -6
  549. package/project/.sdk/tm/rust/tests/omni_resolver/mod.rs +0 -135
  550. package/project/.sdk/tm/rust/tests/omni_smoke_test.rs +0 -15
  551. package/project/.sdk/tm/rust/tests/pipeline_test.rs +0 -6
  552. package/project/.sdk/tm/rust/tests/primary_utility_test.rs +0 -22
  553. package/project/.sdk/tm/rust/tests/struct_utility_test.rs +0 -25
  554. package/project/.sdk/tm/rust/utility/fetcher.rs +0 -5
  555. package/project/.sdk/tm/rust/utility/graphql.rs +1 -30
  556. package/project/.sdk/tm/rust/utility/make_error.rs +0 -2
  557. package/project/.sdk/tm/rust/utility/make_options.rs +0 -46
  558. package/project/.sdk/tm/rust/utility/make_point.rs +0 -12
  559. package/project/.sdk/tm/rust/utility/make_spec.rs +0 -4
  560. package/project/.sdk/tm/rust/utility/voxgigstruct/consts.rs +14 -20
  561. package/project/.sdk/tm/rust/utility/voxgigstruct/major.rs +0 -13
  562. package/project/.sdk/tm/rust/utility/voxgigstruct/mini.rs +0 -14
  563. package/project/.sdk/tm/rust/utility/voxgigstruct/mod.rs +0 -2
  564. package/project/.sdk/tm/rust/utility/voxgigstruct/ordered_map.rs +0 -18
  565. package/project/.sdk/tm/rust/utility/voxgigstruct/re.rs +0 -11
  566. package/project/.sdk/tm/rust/utility/voxgigstruct/value.rs +0 -3
  567. package/project/.sdk/tm/ts/src/Context.ts +0 -5
  568. package/project/.sdk/tm/ts/src/feature/audit/AuditFeature.ts +0 -7
  569. package/project/.sdk/tm/ts/src/feature/cache/CacheFeature.ts +0 -8
  570. package/project/.sdk/tm/ts/src/feature/clienttrack/ClienttrackFeature.ts +0 -7
  571. package/project/.sdk/tm/ts/src/feature/cost/CostFeature.ts +0 -52
  572. package/project/.sdk/tm/ts/src/feature/debug/DebugFeature.ts +0 -6
  573. package/project/.sdk/tm/ts/src/feature/metrics/MetricsFeature.ts +0 -6
  574. package/project/.sdk/tm/ts/src/feature/netsim/NetsimFeature.ts +0 -8
  575. package/project/.sdk/tm/ts/src/feature/paging/PagingFeature.ts +0 -13
  576. package/project/.sdk/tm/ts/src/feature/proxy/ProxyFeature.ts +0 -8
  577. package/project/.sdk/tm/ts/src/feature/ratelimit/RatelimitFeature.ts +0 -6
  578. package/project/.sdk/tm/ts/src/feature/rbac/RbacFeature.ts +0 -9
  579. package/project/.sdk/tm/ts/src/feature/retry/RetryFeature.ts +0 -6
  580. package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +0 -136
  581. package/project/.sdk/tm/ts/src/feature/streaming/StreamingFeature.ts +0 -7
  582. package/project/.sdk/tm/ts/src/feature/telemetry/TelemetryFeature.ts +0 -7
  583. package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +13 -88
  584. package/project/.sdk/tm/ts/src/feature/validate/ValidateFeature.ts +0 -87
  585. package/project/.sdk/tm/ts/src/utility/CleanUtility.ts +0 -12
  586. package/project/.sdk/tm/ts/src/utility/FeatureAddUtility.ts +0 -1
  587. package/project/.sdk/tm/ts/src/utility/GraphqlUtility.ts +2 -30
  588. package/project/.sdk/tm/ts/src/utility/MakeErrorUtility.ts +0 -4
  589. package/project/.sdk/tm/ts/src/utility/MakeOptionsUtility.ts +0 -46
  590. package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +0 -34
  591. package/project/.sdk/tm/ts/src/utility/MakeRequestUtility.ts +0 -1
  592. package/project/.sdk/tm/ts/src/utility/MakeSpecUtility.ts +0 -5
  593. package/project/.sdk/tm/ts/src/utility/MakeUrlUtility.ts +0 -1
  594. package/project/.sdk/tm/ts/src/utility/ParamUtility.ts +0 -8
  595. package/project/.sdk/tm/ts/src/utility/PrepareBodyUtility.ts +0 -3
  596. package/project/.sdk/tm/ts/src/utility/PrepareParamsUtility.ts +0 -6
  597. package/project/.sdk/tm/ts/src/utility/ResultBasicUtility.ts +0 -1
  598. package/project/.sdk/tm/ts/src/utility/TransformRequestUtility.ts +0 -20
  599. package/project/.sdk/tm/ts/src/utility/TransformResponseUtility.ts +0 -4
  600. package/project/.sdk/tm/ts/test/exists.test.ts +0 -10
  601. package/project/.sdk/tm/ts/test/feature/Corpus.test.ts +0 -56
  602. package/project/.sdk/tm/ts/test/feature/harness.ts +0 -9
  603. package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +0 -106
  604. package/project/.sdk/tm/ts/test/live-contract.ts +0 -2
  605. package/project/.sdk/tm/ts/test/omni.ts +0 -32
  606. package/project/.sdk/tm/ts/test/pipeline.test.ts +45 -28
  607. package/project/.sdk/tm/ts/test/utility/Corpus.test.ts +0 -13
  608. package/project/.sdk/tm/ts/test/utility/PrimaryUtility.test.ts +56 -29
  609. package/project/.sdk/tm/ts/test/utility/StructUtility.test.ts +0 -7
  610. package/project/.sdk/tm/ts/test/utility.ts +0 -55
  611. package/project/sdkgen-package.json +1 -1
  612. package/src/action/action.ts +0 -65
  613. package/src/action/check.ts +0 -88
  614. package/src/action/dispatch.ts +0 -27
  615. package/src/action/doctor.ts +69 -329
  616. package/src/action/edition.ts +1 -87
  617. package/src/action/feature.ts +1 -49
  618. package/src/action/kind.ts +0 -149
  619. package/src/action/package.ts +0 -228
  620. package/src/action/resolve.ts +0 -148
  621. package/src/action/target.ts +0 -177
  622. package/src/cmp/AgentGuide.ts +0 -7
  623. package/src/cmp/AgentGuideContent.ts +0 -24
  624. package/src/cmp/AgentGuideTop.ts +0 -7
  625. package/src/cmp/Changelog.ts +0 -14
  626. package/src/cmp/Deploy.ts +1 -31
  627. package/src/cmp/Entity.ts +0 -4
  628. package/src/cmp/ExternalTarget.ts +0 -36
  629. package/src/cmp/Feature.ts +0 -14
  630. package/src/cmp/FeatureDocs.ts +0 -37
  631. package/src/cmp/PublishWorkflow.ts +0 -60
  632. package/src/cmp/ReadmeErrors.ts +0 -17
  633. package/src/cmp/ReadmeExplanation.ts +2 -11
  634. package/src/cmp/ReadmeFeatures.ts +0 -10
  635. package/src/cmp/ReadmeRefFeatures.ts +0 -19
  636. package/src/cmp/ReadmeStation.ts +0 -19
  637. package/src/cmp/ReadmeTop.ts +0 -80
  638. package/src/cmp/ReadmeUnions.ts +0 -15
  639. package/src/cmp/Registered.ts +0 -30
  640. package/src/cmp/Security.ts +0 -2
  641. package/src/cmp/Test.ts +3 -1
  642. package/src/cmp/TestControl.ts +0 -25
  643. package/src/helpers/applicability.ts +0 -60
  644. package/src/helpers/buildIdNames.ts +0 -12
  645. package/src/helpers/canonSpec.ts +0 -114
  646. package/src/helpers/canonType.ts +0 -87
  647. package/src/helpers/collectDeps.ts +0 -27
  648. package/src/helpers/definition.ts +0 -29
  649. package/src/helpers/dryrun.ts +0 -8
  650. package/src/helpers/featureSource.ts +0 -152
  651. package/src/helpers/getMatchEntries.ts +0 -4
  652. package/src/helpers/junk.ts +13 -89
  653. package/src/helpers/manifest.ts +0 -169
  654. package/src/helpers/modelNames.ts +0 -81
  655. package/src/helpers/modelcheck.ts +0 -106
  656. package/src/helpers/naming.ts +0 -303
  657. package/src/helpers/opExample.ts +0 -56
  658. package/src/helpers/opShape.ts +0 -200
  659. package/src/helpers/optspec.ts +0 -77
  660. package/src/helpers/packageMeta.ts +1 -200
  661. package/src/helpers/pointPath.ts +0 -55
  662. package/src/helpers/resolved.ts +50 -0
  663. package/src/helpers/semver.ts +0 -61
  664. package/src/helpers/serverVars.ts +0 -44
  665. package/src/helpers/shipped.ts +0 -14
  666. package/src/helpers/station.ts +0 -32
  667. package/src/helpers/stdrep.ts +0 -52
  668. package/src/helpers/testPolicy.ts +0 -4
  669. package/src/sdkgen.ts +15 -263
  670. package/src/testkit.ts +6 -312
  671. package/src/types.ts +1 -30
  672. package/src/utility.ts +0 -243
@@ -1,34 +1,4 @@
1
1
  import { kindCollection } from '../helpers/kindCollection'
2
- // `voxgig-sdkgen doctor` — does this project's `.sdk/` still match the
3
- // scaffold?
4
- //
5
- // WHY THIS EXISTS
6
- //
7
- // Nothing told a project that its `.sdk/` had drifted. `target add`
8
- // OVERWRITES the vendored components, the template masters AND the per-target
9
- // model file, so any hand-edit there is silently reverted on the next run —
10
- // and any file the scaffold has since stopped shipping just stays, compiling
11
- // into the output forever. In voxgig-solardemo-sdk two such orphans broke the
12
- // Go build in a single session: `utility/make_target.go` (replaced upstream by
13
- // `make_point.go`, leaving a duplicate symbol) and `utility/struct/go.mod` (a
14
- // nested module that made `utility/struct` unimportable).
15
- //
16
- // Every divergence in that repo was found by hand-diffing. Without a check,
17
- // fixing it once guarantees nothing about next month.
18
- //
19
- // WHY A NAIVE `diff -r` DOES NOT WORK
20
- //
21
- // `target add` writes template masters with substitution PARTLY applied, and
22
- // inconsistently: `tm/go/core/error.go` arrives substituted (`SolardemoError`
23
- // where the scaffold says `ProjectNameError`), `tm/ts/test/utility.ts` arrives
24
- // raw (its placeholders are substituted later, at generate time), and
25
- // `tm/go/LICENSE` has the year filled in. A plain `diff -r` against the
26
- // scaffold reported 20 edited files in that repo; 19 were substitution
27
- // artefacts and exactly ONE was a real hand-edit.
28
- //
29
- // Only sdkgen knows which replacements it applied to which files, which is
30
- // why this check belongs here and cannot be scripted downstream. It re-runs
31
- // the same substitution before comparing, so what it reports is real.
32
2
 
33
3
  import Path from 'node:path'
34
4
 
@@ -53,9 +23,6 @@ import {
53
23
  aliasCmpName,
54
24
  } from './target'
55
25
 
56
- // `aliasModelText` is no longer named here: the model-file comparison asks
57
- // the registry for the kind's own `rename`, so a kind that renames
58
- // differently is handled without this file knowing how.
59
26
  import { recordedRef, KINDS, kindDef, kindTrees } from './kind'
60
27
  import type { TreeDef } from './kind'
61
28
 
@@ -69,13 +36,6 @@ import { findFeatureSources } from '../helpers/featureSource'
69
36
  import { isJunk } from '../helpers/junk'
70
37
 
71
38
 
72
- // jostraca's Copy walk skips these (IGNORED_RE in CopyOp) — editor backups and
73
- // deliberately-disabled templates never reach a project, so they are not drift.
74
- //
75
- // `isJunk` is the other half of the same statement: what the WRITER refuses to
76
- // copy, this reader must refuse to miss. A `__pycache__` in the scaffold would
77
- // otherwise be reported as missing from every project on earth, and one in a
78
- // project as an unexplained extra file. See helpers/junk.
79
39
  const IGNORED_RE = /(~|-jostraca-off)$/
80
40
 
81
41
  function ignoredEntry(name: string): boolean {
@@ -87,16 +47,6 @@ function ignoredEntry(name: string): boolean {
87
47
  const BINARY_RE = /\.(png|jpg|jpeg|gif|ico|pdf|zip|gz|woff2?|ttf|eot|wasm)$/i
88
48
 
89
49
 
90
- // Root-level components sdkgen provides, and what a project loses by not
91
- // wiring one in. A project's `Root.ts` / `Top.ts` come from create-sdkgen at
92
- // init and are then FROZEN — `target add` never touches them — so a
93
- // capability added to sdkgen afterwards is invisible to every existing
94
- // project. solardemo's `Top.ts`, written before `ReadmeTop` existed, kept
95
- // hand-rolling a 9-line stub root README with an empty mermaid diagram for
96
- // months, and no number of `target add` runs would ever have said so.
97
- //
98
- // Not wiring one in is a legitimate choice, so this is REPORTED, never a
99
- // failure.
100
50
  const ROOT_COMPONENTS: [string, string][] = [
101
51
  ['ReadmeTop', 'the assembled root README (quickstart, howto, test, package table)'],
102
52
  ['AgentGuideTop', 'the root AGENTS.md / CLAUDE.md agent guides'],
@@ -119,25 +69,20 @@ type DoctorReport = {
119
69
  // `target add` applies.
120
70
  edited: string[]
121
71
 
122
- // Present in the project, but `target add` would no longer write it. Stale
123
- // output — the category that broke the Go build twice.
124
72
  stale: string[]
125
73
 
126
- // `target add` would write it and the project does not have it.
127
74
  missing: string[]
128
75
 
129
- // Project-owned components the scaffold never shipped. NOT drift.
130
76
  additive: string[]
131
77
 
132
- // Generated files the model declares RETIRED (`target.superseded`) that
133
- // still sit in the target output directories — the old runner beside its
134
- // replacement. `doctor prune` deletes exactly these.
135
78
  superseded: string[]
136
79
 
137
80
  // Root-level components this sdkgen provides that the project's root
138
81
  // wiring never calls. Informational: opting out is legitimate.
139
82
  unwired: string[]
140
83
 
84
+ orphanModel: string[]
85
+
141
86
  // A copy that differs from the scaffold ONLY in its provenance lines —
142
87
  // written before `base`/`origname` were stamped, so the project changed
143
88
  // nothing and `target add` will bring it up to date. Informational: this
@@ -150,7 +95,6 @@ type DoctorReport = {
150
95
  // it is what an alias is FOR.
151
96
  aliasedDiff: string[]
152
97
 
153
- // True when nothing in the first four categories was found.
154
98
  ok: boolean
155
99
  }
156
100
 
@@ -180,10 +124,6 @@ async function cmd_doctor_check(_args: string[], actx: ActionContext): Promise<A
180
124
  }
181
125
 
182
126
 
183
- // `doctor prune` — the ONE write doctor performs, and only ever of files a
184
- // target's model DECLARES superseded (retired templates jostraca cannot
185
- // delete from a consumer: the old runner beside its replacement, a
186
- // pre-reshape vendored file). Everything else doctor does stays read-only.
187
127
  async function cmd_doctor_prune(_args: string[], actx: ActionContext): Promise<ActionResult> {
188
128
  const log = actx.log
189
129
  const fs = actx.fs()
@@ -207,10 +147,6 @@ async function cmd_doctor_prune(_args: string[], actx: ActionContext): Promise<A
207
147
  }
208
148
 
209
149
 
210
- // Generated files the model says this toolchain NO LONGER writes, that
211
- // still exist in the project's target output directories. Paths in the
212
- // model are relative to each target's output dir (a sibling of `.sdk/`,
213
- // named for the target).
214
150
  function supersededFiles(actx: ActionContext): string[] {
215
151
  const fs = actx.fs()
216
152
  const model = actx.model
@@ -239,8 +175,60 @@ function supersededFiles(actx: ActionContext): string[] {
239
175
  type DoctorScope = (kind: string, name: string) => boolean
240
176
 
241
177
 
242
- // Code API. Returns the report; the CLI turns a non-ok report into a
243
- // non-zero exit so this can gate CI.
178
+ function orphanModelFiles(actx: ActionContext): string[] {
179
+ const fs = actx.fs()
180
+ const modeldir = Path.join(actx.folder, 'model')
181
+
182
+ if (!fs.existsSync(modeldir)) {
183
+ return []
184
+ }
185
+
186
+ const all = walk(fs, modeldir)
187
+ .filter((rel) => rel.endsWith('.aon') || rel.endsWith('.aontu'))
188
+ .filter((rel) => !rel.includes('.jostraca/') && !rel.startsWith('guide/'))
189
+
190
+ const ENTRY = [
191
+ 'sdk.aon', 'sdk.aontu',
192
+ 'test/test.aon', 'test/test.aontu',
193
+ '.model-config/model-config.aon', '.model-config/model-config.aontu',
194
+ ]
195
+
196
+ const seen = new Set<string>()
197
+ const queue = ENTRY.filter((rel) => all.includes(rel))
198
+
199
+ while (0 < queue.length) {
200
+ const rel = queue.shift() as string
201
+ if (seen.has(rel)) {
202
+ continue
203
+ }
204
+ seen.add(rel)
205
+
206
+ let src = ''
207
+ try {
208
+ src = fs.readFileSync(Path.join(modeldir, rel), 'utf8')
209
+ }
210
+ catch (e) {
211
+ continue
212
+ }
213
+
214
+ for (const m of src.matchAll(/@"([^"]+)"/g)) {
215
+ const ref = m[1]
216
+ if (ref.startsWith('@')) {
217
+ continue
218
+ }
219
+ const from = Path.posix.dirname(rel)
220
+ const next = Path.posix.normalize(
221
+ Path.posix.join('.' === from ? '' : from, ref.replace(/^\.\//, '')))
222
+ if (all.includes(next) && !seen.has(next)) {
223
+ queue.push(next)
224
+ }
225
+ }
226
+ }
227
+
228
+ return all.filter((rel) => !seen.has(rel)).sort()
229
+ }
230
+
231
+
244
232
  async function doctor(
245
233
  actx: ActionContext, scope?: DoctorScope,
246
234
  ): Promise<ActionResult> {
@@ -251,28 +239,14 @@ async function doctor(
251
239
 
252
240
  const report: DoctorReport = {
253
241
  forked: [], edited: [], stale: [], missing: [], additive: [],
254
- superseded: [], unwired: [], resyncPending: [], aliasedDiff: [], ok: true,
242
+ superseded: [], unwired: [], orphanModel: [],
243
+ resyncPending: [], aliasedDiff: [], ok: true,
255
244
  }
256
245
 
257
- // Retired-output leftovers first: purely model-driven, and a finding —
258
- // two copies of the same machinery, one stale, is exactly the state the
259
- // migration guide had to clean up by hand three times.
260
246
  report.superseded = supersededFiles(actx)
261
247
 
262
- // EVERY KIND, not just targets.
263
- //
264
- // `add` writes a copied model file for each kind — `model/target/<t>.aon`
265
- // and `model/feature/<f>.aon` alike — and overwrites it on every resync.
266
- // Only the target one was ever compared, so a hand-edit to an installed
267
- // FEATURE definition read as perfectly in sync and was silently reverted by
268
- // the next `target add` (which re-runs `feature add` for every active
269
- // feature). That is exactly the failure `checkTargetModel` was added for,
270
- // left open for the other half of what add owns.
271
- //
272
- // Driven off the registry, so a kind added later is checked without
273
- // anything here changing. The per-kind EXTRAS — a target's `src/cmp` and
274
- // `tm` trees — stay in that kind's own check, because they are genuinely
275
- // different work rather than the same work with different strings.
248
+ report.orphanModel = orphanModelFiles(actx)
249
+
276
250
  const kinds = Object.keys(KINDS).sort()
277
251
 
278
252
  const counts: Record<string, number> = {}
@@ -282,16 +256,6 @@ async function doctor(
282
256
 
283
257
  log.info({ point: 'doctor-start', targets: counts.target ?? 0, ...counts })
284
258
 
285
- // Targets resolved ONCE, before the kind loop, because the feature checks
286
- // need them too: a feature's per-target source lives under the name the
287
- // target has in its own source, so finding it means knowing where each
288
- // target came from. Resolving per (feature, target) pair would re-read
289
- // every package manifest dozens of times and warn repeatedly about the
290
- // same unresolvable target.
291
- //
292
- // Resolved even when the run is SCOPED past them — a scoped check of one
293
- // feature still has to look in every target's tree for that feature's
294
- // files.
295
259
  const targets = new Map<string, Source>()
296
260
 
297
261
  for (const tname of
@@ -337,16 +301,18 @@ async function doctor(
337
301
  }
338
302
  }
339
303
 
340
- // Root-component wiring is a property of the PROJECT, not of any item, so a
341
- // scoped run has no business reporting on it — `package update` asking "is
342
- // this package's copy clean" should not also say the project never wired in
343
- // `ReadmeTop`.
344
304
  if (null == scope) {
345
305
  checkWiring(actx, report)
346
306
  }
347
307
 
308
+ // orphanModel counts, and `unwired` does not. Not skipping a root
309
+ // component is a legitimate project choice that doctor only mentions; a
310
+ // model file nothing reads is never a choice - it is either a file that
311
+ // should be included, or one that should be deleted, and it reads as
312
+ // authoritative either way.
348
313
  report.ok = 0 === report.forked.length + report.edited.length +
349
- report.stale.length + report.missing.length + report.superseded.length
314
+ report.stale.length + report.missing.length + report.superseded.length +
315
+ report.orphanModel.length
350
316
 
351
317
  for (const [kind, note] of [
352
318
  ['forked', 'FORKED (will be reverted by `target add`)'],
@@ -356,6 +322,7 @@ async function doctor(
356
322
  ['additive', 'additive (project-owned, not drift)'],
357
323
  ['superseded', 'SUPERSEDED generated output (run `doctor prune` to delete)'],
358
324
  ['unwired', 'NOT WIRED IN (root capability this project is missing)'],
325
+ ['orphanModel', 'ORPHAN MODEL FILE (on disk, included by nothing, read by nobody)'],
359
326
  ['resyncPending', 'RESYNC PENDING (predates provenance; `target add` updates it)'],
360
327
  ['aliasedDiff', 'aliased model differs from its origin (project-owned, not drift)'],
361
328
  ] as [keyof DoctorReport, string][]) {
@@ -374,6 +341,7 @@ async function doctor(
374
341
  additive: report.additive.length,
375
342
  superseded: report.superseded.length,
376
343
  unwired: report.unwired.length,
344
+ orphanModel: report.orphanModel.length,
377
345
  resyncPending: report.resyncPending.length,
378
346
  aliasedDiff: report.aliasedDiff.length,
379
347
  note: report.ok ?
@@ -418,19 +386,6 @@ function checkWiring(actx: ActionContext, report: DoctorReport) {
418
386
  }
419
387
 
420
388
 
421
- // Where one declared item came from, or undefined with the reason said out
422
- // loud.
423
- //
424
- // The model records `base` and `origname` (written by add), and `origname` is
425
- // what makes an ALIAS checkable: the ref used to be rebuilt as
426
- // `<base>/../<name>`, which names the INSTALLED item — so `target add ts~ts2`
427
- // sent doctor looking for a `ts2` scaffold that does not exist, both trees
428
- // walked empty, and every component read as `additive` while every template
429
- // read as `stale` (a FAILING category). Real edits were undetectable and
430
- // doctor went red on noise.
431
- //
432
- // A bare name falls back to the bundled scaffold, for a copy predating
433
- // provenance.
434
389
  function resolveDeclared(
435
390
  kind: string, name: string, actx: ActionContext,
436
391
  ): Source | undefined {
@@ -438,13 +393,6 @@ function resolveDeclared(
438
393
  const ref = recordedRef(declared, name) || name
439
394
 
440
395
  try {
441
- // WITH THE LOG. Resolution reads the source's package manifest, and an
442
- // unusable one is reported only through `ctx$.log`. Without it doctor
443
- // silently lost the package name — and then reported every item from that
444
- // package as FORKED, because the expected text no longer carries the
445
- // `package:` line the copy has, with nothing anywhere saying why. That is
446
- // accurate (the next add really would strip the line) but unactionable,
447
- // which is the same defect as being wrong.
448
396
  return resolveSource(
449
397
  ref, kind, { folder: actx.folder, fs: actx.fs, log: actx.log })
450
398
  }
@@ -469,18 +417,6 @@ function checkTarget(
469
417
  const model = actx.model
470
418
  const root = actx.folder
471
419
 
472
- // The two TREES `target add` owns, and the substitution it applies to each.
473
- // (It owns one FILE as well — see checkTargetModel, below.)
474
- //
475
- // src/cmp — copied verbatim, so a byte compare is the truth.
476
- // tm — copied through jostraca's template(), with ProjectName.
477
- // An ALIASED install renames every `<Cmp>_<origname>` component to
478
- // `<Cmp>_<alias>` and rewrites the origin name inside the file (sibling
479
- // imports, the __dirname-relative fragment path), because components are
480
- // dispatched by the convention `cmp/<t>/Main_<t>`. doctor has to apply the
481
- // same two transforms or it expects the ORIGIN names in the alias's folder
482
- // and reports the entire tree as missing — 25 files for `go~go2`, none of
483
- // them a real finding.
484
420
  const aliased = tname !== torigname
485
421
 
486
422
  const renameCmp = aliased ?
@@ -526,24 +462,12 @@ function checkTarget(
526
462
 
527
463
  compareTrees(actx, report, trees, {
528
464
  excludes,
529
- // Only a TARGET has foreign feature source landing in its tree.
530
465
  foreign: (kind: string) => 'edited' === kind ?
531
466
  foreignFeatureSource(actx, resolved) : [],
532
467
  })
533
468
  }
534
469
 
535
470
 
536
- // COMPARE A SET OF TREES against the sources they were copied from.
537
- //
538
- // Extracted from `checkTarget` unchanged, because the docs kind needs exactly
539
- // this and a second copy of it is the defect this workstream keeps producing.
540
- // What differs per kind stays in the caller: which trees, what the copy
541
- // substituted, whether a trim excludes part of the source, and whether
542
- // anything foreign is expected to land in the tree.
543
- //
544
- // This is the mechanism behind the rule in CLAUDE.md — anything an add
545
- // writes, doctor must compare, or the next add silently reverts a project's
546
- // edit. A kind that declares trees and is not walked here would break it.
547
471
  function compareTrees(
548
472
  actx: ActionContext,
549
473
  report: DoctorReport,
@@ -567,32 +491,12 @@ function compareTrees(
567
491
  walk(fs, tree.scaffold).filter((rel) => !excluded(rel, excludes)) :
568
492
  walk(fs, tree.scaffold)
569
493
 
570
- // Where each file the project should have COMES FROM: the name it lands
571
- // under, mapped to the absolute path of the file it was copied from.
572
- //
573
- // An absolute path rather than a tree-relative one, because not every
574
- // expected file comes from THIS tree — see the foreign-feature union
575
- // below.
576
494
  const landed = new Map<string, string>(scaffoldFiles.map(
577
495
  (rel: string) => [
578
496
  null == tree.rename ? rel : tree.rename(rel),
579
497
  Path.join(tree.scaffold, rel),
580
498
  ]))
581
499
 
582
- // FOREIGN FEATURE SOURCE.
583
- //
584
- // A feature supplied by a different package than the target ships its
585
- // per-target source in ITS OWN `tm/<target>/` overlay, and `feature add`
586
- // copies that into the project. Compared against the target's scaffold
587
- // alone, those files are present in the project and absent upstream — so
588
- // every one of them was reported STALE, a FAILING category. Any project
589
- // using an external feature had a red `doctor` and nothing wrong with it.
590
- //
591
- // They are not stale, they are expected — just expected from somewhere
592
- // else. Adding them here rather than suppressing them keeps them
593
- // CHECKED: a hand-edit to a foreign feature's source is still reported,
594
- // which is what `package update`'s gate needs in order to cover
595
- // everything the re-add writes.
596
500
  const foreign = new Set<string>()
597
501
 
598
502
  for (const [rel, from] of (opts?.foreign?.(tree.kind) ?? [])) {
@@ -650,17 +554,6 @@ function compareTrees(
650
554
  }
651
555
 
652
556
 
653
- // A DOCS item's trees.
654
- //
655
- // Simpler than a target's in every way that matters here: no trim (a docs
656
- // item has no per-feature source to leave out), and nothing foreign lands in
657
- // them (a feature package's overlay targets a TARGET's tree). What is the
658
- // same is the alias handling — docs components are dispatched by the same
659
- // `Main_<n>` convention — and the tree paths, which come from the registry
660
- // rather than being spelled a second time.
661
- //
662
- // The optional template tree is skipped when the SOURCE does not ship one:
663
- // `edition add` did not copy it, so the project is right not to have it.
664
557
  function checkEdition(
665
558
  actx: ActionContext, resolved: Source, report: DoctorReport,
666
559
  ) {
@@ -713,20 +606,6 @@ type TreeCompare = {
713
606
  }
714
607
 
715
608
 
716
- // Per-target source that a FEATURE package supplies for this target, as
717
- // `project-relative path -> the file it was copied from`.
718
- //
719
- // Only for features whose source folder is not the target's own: everything
720
- // the target ships for itself is already in the tree being walked, and
721
- // listing it twice would compare it against itself.
722
- //
723
- // Only for ACTIVE features, because that is what `feature add` copies. A
724
- // feature switched off later leaves its files behind, and those really are
725
- // stale — reporting them is the point.
726
- //
727
- // Discovered with `findFeatureSources`, the same function the fan-out and the
728
- // trim use, so doctor's idea of which files belong to a feature cannot drift
729
- // from the one that put them there.
730
609
  function foreignFeatureSource(
731
610
  actx: ActionContext, target: Source,
732
611
  ): Map<string, string> {
@@ -754,18 +633,6 @@ function foreignFeatureSource(
754
633
  }
755
634
 
756
635
 
757
- // One feature's per-target source, as `tm-relative path -> the file it was
758
- // copied from`, for source the FEATURE package supplies rather than the
759
- // target.
760
- //
761
- // ONE enumerator, used from both directions: the target walk needs these to
762
- // know they are expected, and the feature check needs them to compare. Two
763
- // enumerations would be two ideas of which files a feature owns, and the
764
- // pair would drift — which is the failure this codebase keeps producing.
765
- //
766
- // Empty when the feature's source IS the target's own tree: those files are
767
- // already in the tree being walked, and listing them would compare them
768
- // against themselves.
769
636
  function overlayFiles(
770
637
  actx: ActionContext, feature: Source, target: Source,
771
638
  ): Map<string, string> {
@@ -800,18 +667,6 @@ function overlayFiles(
800
667
  }
801
668
 
802
669
 
803
- // A FEATURE's per-target source, checked from the feature's side.
804
- //
805
- // This is where those files are COMPARED. The target walk only marks them
806
- // expected, so that each is compared exactly once — by the feature that owns
807
- // it, which is also the only scope in which `feature add` will rewrite it.
808
- //
809
- // Doing it the other way round — leaving the comparison in the target walk —
810
- // left the gate open in the case it was built for: `package update` on a
811
- // FEATURE package scopes doctor to that feature, no target is walked, and so
812
- // nothing compared the very overlay the feature package supplies. Verified
813
- // before fixing: the update succeeded without asking, and the local edit was
814
- // destroyed.
815
670
  function checkFeatureSource(
816
671
  actx: ActionContext,
817
672
  feature: Source,
@@ -842,24 +697,6 @@ function checkFeatureSource(
842
697
  }
843
698
 
844
699
 
845
- // The copied MODEL FILE — `model/<kind>/<name>.aon`, written by add with
846
- // the `'BASE'` replacement, and overwritten on every resync exactly as
847
- // `src/cmp` and `tm` are.
848
- //
849
- // It is not scaffolding trivia. A target's carries its dependency set, its
850
- // `phase` gates, `srcfeature`, `feature.trim` / `feature.fullset` and its
851
- // publish-registry identity; a feature's carries its version, `active`
852
- // default, `config` defaults and hook wiring. So a maintainer who fixes a dep
853
- // version there loses the fix on the next resync with nothing said (the SDK
854
- // regresses with nobody touching it, which is the failure the "a project
855
- // decision belongs in the MODEL" rule exists to prevent), and a project whose
856
- // copy predates a scaffold change carries the old declaration forever while
857
- // doctor reports it in sync.
858
- //
859
- // KIND-NEUTRAL, because the file is the same kind of thing for every kind:
860
- // one definition, copied, stamped with provenance, optionally renamed for an
861
- // alias. Only the alias rewrite is kind-specific, and the registry already
862
- // says which kinds can be aliased at all.
863
700
  function checkItemModel(
864
701
  actx: ActionContext, kind: string, source: Source, report: DoctorReport,
865
702
  ) {
@@ -870,28 +707,10 @@ function checkItemModel(
870
707
 
871
708
  const scaffold = definitionPath(source.folder, kind, origname)
872
709
 
873
- // Nothing to compare against — a source that no longer ships this item.
874
710
  if (!fs.existsSync(scaffold)) {
875
711
  return
876
712
  }
877
713
 
878
- // An ALIAS's model file is PROJECT-OWNED: `target add go~go2` creates it and
879
- // never overwrites it again, because differentiating it is the whole point
880
- // of an alias (a second Go module needs its own module name and deps), and
881
- // add-a-target tells the project to edit it. So a difference here is not a
882
- // fork — `target add` will not revert it — and must not fail the check.
883
- //
884
- // It is still worth REPORTING, which it never was before: the origin was
885
- // unrecoverable, so doctor skipped the file entirely and an alias that had
886
- // drifted far from a moved-on upstream said nothing. With `origname`
887
- // recorded the comparison is possible, so it runs, with the same key
888
- // rewrite the add applied — and anything left over is the project's own
889
- // differentiation, reported as informational.
890
- //
891
- // Only for a kind that CAN be aliased. A feature cannot, so for features
892
- // this is always false and the ownership argument never applies — the
893
- // registry says which, rather than this inferring it from the names
894
- // happening to match.
895
714
  const aliased = kindDef(kind).alias && name !== origname
896
715
 
897
716
  const project = definitionPath(actx.folder, kind, name)
@@ -902,24 +721,9 @@ function checkItemModel(
902
721
  return
903
722
  }
904
723
 
905
- // The substitution the add applied on the way in: jostraca's template()
906
- // against the model (so `module: name: '$$name$$'` arrives as the project
907
- // slug) plus the provenance block recording where the scaffold was.
908
- //
909
- // NOT templateReplacements() — that is the tm/ tree's map. The two writers
910
- // pass different maps, so doctor has to as well, or every project reads as
911
- // forked on the `base:` line alone. The map itself is shared with the
912
- // writer (helpers/stdrep) so the two cannot drift.
913
- //
914
- // `package` comes from the SOURCE's manifest, not from what the copy
915
- // records, for the same reason `base` does: what this compares is what the
916
- // add would write NOW. A package that renamed itself therefore reads as
917
- // forked, which is accurate — the next add would rewrite the line.
918
724
  const provenance = provenanceReplace(
919
725
  { base, origname, name, package: source.package })
920
726
 
921
- // For an alias, compare against what the origin WOULD produce under the new
922
- // name, so the rename itself is not the difference.
923
727
  const rename = kindDef(kind).rename
924
728
 
925
729
  const rewrite = (aliased && null != rename) ?
@@ -934,19 +738,6 @@ function checkItemModel(
934
738
  return
935
739
  }
936
740
 
937
- // A copy written before the toolchain stamped some provenance key differs
938
- // from the scaffold by exactly the lines carrying that key. That is not a
939
- // fork — the project changed nothing — and reporting it as one would turn
940
- // every existing consumer's CI red on upgrade.
941
- //
942
- // PER KEY, not all-or-nothing. The keys arrived in stages — `base` and
943
- // `origname` first, `package` with the manifest — so a project that
944
- // resynced between two of them holds a copy that IS stamped (it has `base`)
945
- // and is still missing a later key. An all-or-nothing "is it stamped at
946
- // all" test called every one of those a fork: on the released 3.4.8
947
- // scaffold only ts, csharp and swift carried the anchor, and `ts` is in
948
- // essentially every consumer SDK, so that was close to the whole installed
949
- // base going red on a file nobody touched.
950
741
  if (stampOnly(fs, scaffold, project, actx.model, provenance, rewrite)) {
951
742
  report.resyncPending.push(label)
952
743
  return
@@ -956,33 +747,6 @@ function checkItemModel(
956
747
  }
957
748
 
958
749
 
959
- // Is the ONLY difference a provenance line the copy has not been given yet?
960
- //
961
- // MATCHED AGAINST THE EXACT LINES THE STAMP PRODUCES, never against a pattern
962
- // for "a line that looks like provenance". `base`, `origname` and `package`
963
- // are not reserved words: `main: kit: target: <t>: module: package` (the Go
964
- // root package identifier) and `publish: registry: package` (the published
965
- // package name) are declared model slots that a target model may write in
966
- // block form, on their own line, looking exactly like a provenance line to
967
- // any regex. A generic pattern got BOTH directions wrong on such a model —
968
- // it read the copy's `module: package:` as proof the copy was already
969
- // stamped, so an untouched pre-manifest file was reported as forked; and it
970
- // stripped that same real line from the comparison, so DELETING it — an
971
- // actual fork, silently reverted by the next `target add` — was reported as
972
- // a pending resync and passed the check.
973
- //
974
- // Comparing against `provenanceReplace`'s own output has no such ambiguity,
975
- // and keeps the reader tied to the writer, which is the whole point of
976
- // helpers/stdrep.
977
- //
978
- // The rule, once the two are known to differ:
979
- //
980
- // - every line the EXPECTED has and the copy lacks must be a stamp line;
981
- // - the copy must have NO line the expected lacks.
982
- //
983
- // The second half is what keeps the tolerance narrow, as the previous
984
- // rollout's review required: a changed `package:` value leaves the old line
985
- // in the copy and unmatched, so it is a fork and is reported as one.
986
750
  function stampOnly(
987
751
  fs: any, scaffoldPath: string, projectPath: string, model: any,
988
752
  provenance: Record<string, string>,
@@ -1007,7 +771,6 @@ function stampOnly(
1007
771
  }
1008
772
 
1009
773
 
1010
- // Lines of `a` that `b` does not have, counting duplicates.
1011
774
  function lineDiff(a: string, b: string): string[] {
1012
775
  const pool = new Map<string, number>()
1013
776
 
@@ -1072,14 +835,6 @@ function excluded(rel: string, excludes: RegExp[]): boolean {
1072
835
  }
1073
836
 
1074
837
 
1075
- // Compare a scaffold file with a project file, applying the SAME substitution
1076
- // `target add` applied on the way in. Without this the comparison reports
1077
- // every substituted placeholder as an edit.
1078
- // `ignore` drops matching lines from BOTH sides before comparing, for a
1079
- // difference that is known not to be a fork (see the provenance rollout in
1080
- // checkTargetModel). It is deliberately a second, narrower question asked
1081
- // only after a plain comparison has already found a difference — so a file
1082
- // that matches exactly never depends on it.
1083
838
  function differs(
1084
839
  fs: any, scaffoldPath: string, projectPath: string, model: any, replace: any,
1085
840
  ignore?: (line: string) => boolean,
@@ -1103,20 +858,6 @@ function differs(
1103
858
  }
1104
859
 
1105
860
 
1106
- // What `target add` WOULD write, beside what the project actually has.
1107
- //
1108
- // One definition, shared by the byte comparison and the stamp-only tolerance,
1109
- // so the two can never disagree about what the expected text is.
1110
- //
1111
- // template() runs even when there is nothing to REPLACE, because jostraca's
1112
- // Copy always interpolates `$$ref$$` against the model as well — the replace
1113
- // map is an extra, not the whole substitution. Skipping it for the src/cmp
1114
- // tree (whose Copy passes no replace map) meant the three Config fragments
1115
- // that carry `$$const.Name$$` / `$$main.kit.info.servers.0.url$$` arrived
1116
- // substituted and compared as bytes: every project with ts, js or dart
1117
- // reported `src/cmp/<t>/fragment/Config.fragment.<ext>` as FORKED straight
1118
- // out of `target add`, which is precisely the noise this exists to remove.
1119
- // With no `$$` refs and no replace keys, template() is the identity.
1120
861
  function renderPair(
1121
862
  fs: any, scaffoldPath: string, projectPath: string, model: any, replace: any,
1122
863
  rewrite?: (src: string) => string,
@@ -1131,7 +872,6 @@ function renderPair(
1131
872
  }
1132
873
 
1133
874
 
1134
- // trimFeatures logs its decisions; doctor is a report, not a run.
1135
875
  function quietLog(log: any): any {
1136
876
  const noop = () => { }
1137
877
  const quiet: any = { info: noop, debug: noop, warn: log.warn.bind(log), error: noop, trace: noop, fatal: noop }